From 0b063f8a09dae4b6b1de400ff2d9aba9108647de Mon Sep 17 00:00:00 2001 From: Sebastian Markbage Date: Fri, 15 May 2015 18:35:22 -0700 Subject: [PATCH] Reorganize Src Files for Isomorphic React Package The new folder structure is organized around major packages that are expected to ship separately in some form. `/isomorphic` I moved classic/modern and children utils into a directory called "isomorphic" with the main export being ReactIsomorphic. This will eventually become the "react" package. This includes all the dependencies that you might need to create a component without dependencies on the renderer/reconciler. The rest moves into decoupled renderers. `/renderers/dom/client` - This is the main renderer for DOM. `/renderers/dom/server` - This is the server-side renderer for HTML strings. `/addons` and `/test` - Same as before for now. You're not supposed to take on a dependency inside another package. Shared code is organized into a "shared" directory which is intended to support all the packages in that subdirectory. Meaning that once we swap to CommonJS modules, the only time you should use `..` is to target `../shared/` or `../../shared`. E.g. `/shared/` is common utils that are used by everything. `/renderers/shared/` is code that is shared by all renderers, such as the main reconciliation algorithm. Shared code will likely be copied into each package rather than referenced. This allow us to have separate state and allow inlining and deadcode elimination. --- .eslintignore | 2 +- grunt/config/jsx.js | 2 +- grunt/tasks/version-check.js | 2 +- jest/preprocessor.js | 2 +- src/React.js | 28 ++++++++ src/{browser => addons}/ReactWithAddons.js | 0 src/isomorphic/ReactIsomorphic.js | 70 +++++++++++++++++++ .../children}/ReactChildren.js | 0 .../children}/__tests__/ReactChildren-test.js | 0 .../children}/__tests__/onlyChild-test.js | 0 .../children}/__tests__/sliceChildren-test.js | 0 .../children}/onlyChild.js | 0 .../children}/sliceChildren.js | 0 .../__tests__/ReactContextValidator-test.js | 0 .../classic/class/ReactClass.js | 0 .../classic/class/__tests__/ReactBind-test.js | 0 .../class/__tests__/ReactClass-test.js | 0 .../class/__tests__/ReactClassMixin-test.js | 0 .../classic/element}/ReactDOM.js | 0 .../classic/element/ReactElement.js | 0 .../classic/element/ReactElementValidator.js | 0 .../element/__tests__/ReactElement-test.js | 0 .../__tests__/ReactElementClone-test.js | 0 .../__tests__/ReactElementValidator-test.js | 0 .../types/ReactPropTypeLocationNames.js | 0 .../classic/types/ReactPropTypeLocations.js | 0 .../classic/types/ReactPropTypes.js | 0 .../types/__tests__/ReactPropTypes-test.js | 0 .../deprecated}/OrderedMap.js | 0 .../deprecated}/ReactPropTransferer.js | 0 .../__tests__/cloneWithProps-test.js | 0 .../deprecated}/__tests__/joinClasses-test.js | 0 .../deprecated}/cloneWithProps.js | 0 .../deprecated}/joinClasses.js | 0 src/{ => isomorphic}/modern/class/React.d.ts | 0 .../modern/class/ReactComponent.js | 0 .../__tests__/ReactClassEquivalence-test.js | 0 .../ReactCoffeeScriptClass-test.coffee | 0 .../class/__tests__/ReactES6Class-test.js | 0 .../__tests__/ReactTypeScriptClass-test.ts | 0 .../element/__tests__/ReactJSXElement-test.js | 0 .../ReactJSXElementValidator-test.js | 0 .../__tests__/ReactFlowPropTypes-test.js | 0 .../ReactTypeScriptPropTypes-test.js | 0 .../dom/ReactDOMClient.js} | 49 +------------ src/renderers/dom/ReactDOMServer.js | 24 +++++++ .../dom/client}/ClientReactRootIndex.js | 0 .../dom/client}/ReactBrowserEventEmitter.js | 0 .../dom/client}/ReactDOMIDOperations.js | 0 .../dom/client}/ReactDOMSelection.js | 0 .../dom/client}/ReactEventListener.js | 0 .../dom/client}/ReactInputSelection.js | 0 .../ui => renderers/dom/client}/ReactMount.js | 0 .../dom/client}/ReactReconcileTransaction.js | 0 .../ReactBrowserEventEmitter-test.js | 0 .../dom/client}/__tests__/ReactDOM-test.js | 0 .../__tests__/ReactDOMIDOperations-test.js | 0 .../dom/client}/__tests__/ReactDOMSVG-test.js | 0 .../__tests__/ReactEventListener-test.js | 0 .../dom/client}/__tests__/ReactMount-test.js | 0 .../__tests__/ReactMountDestruction-test.js | 0 .../__tests__/ReactRenderDocument-test.js | 0 .../client}/__tests__/ReactWebWorker-test.js | 0 .../dom/client}/__tests__/findDOMNode-test.js | 0 .../__tests__/validateDOMNesting-test.js | 0 .../AnalyticsEventPluginFactory.js | 0 .../eventPlugins/BeforeInputEventPlugin.js | 0 .../client}/eventPlugins/ChangeEventPlugin.js | 0 .../eventPlugins/DefaultEventPluginOrder.js | 0 .../eventPlugins/EnterLeaveEventPlugin.js | 0 .../eventPlugins/FallbackCompositionState.js | 0 .../client}/eventPlugins/SelectEventPlugin.js | 0 .../client}/eventPlugins/SimpleEventPlugin.js | 0 .../client}/eventPlugins/TapEventPlugin.js | 0 .../__tests__/AnalyticsEventPlugin-test.js | 0 .../__tests__/EnterLeaveEventPlugin-test.js | 0 .../FallbackCompositionState-test.js | 0 .../__tests__/SelectEventPlugin-test.js | 0 .../dom/client}/findDOMNode.js | 0 .../SyntheticClipboardEvent.js | 0 .../SyntheticCompositionEvent.js | 0 .../syntheticEvents/SyntheticDragEvent.js | 0 .../client}/syntheticEvents/SyntheticEvent.js | 0 .../syntheticEvents/SyntheticFocusEvent.js | 0 .../syntheticEvents/SyntheticInputEvent.js | 0 .../syntheticEvents/SyntheticKeyboardEvent.js | 0 .../syntheticEvents/SyntheticMouseEvent.js | 0 .../syntheticEvents/SyntheticTouchEvent.js | 0 .../syntheticEvents/SyntheticUIEvent.js | 0 .../syntheticEvents/SyntheticWheelEvent.js | 0 .../__tests__/SyntheticEvent-test.js | 0 .../__tests__/SyntheticWheelEvent-test.js | 0 .../client/utils}/DOMChildrenOperations.js | 0 .../dom/client/utils}/ViewportMetrics.js | 0 .../getNodeForCharacterOffset-test.js | 0 .../dom/client/utils}/getEventCharCode.js | 0 .../dom/client/utils}/getEventKey.js | 0 .../client/utils}/getEventModifierState.js | 0 .../dom/client/utils}/getEventTarget.js | 0 .../utils}/getNodeForCharacterOffset.js | 0 .../client/utils}/getTextContentAccessor.js | 0 .../dom/client/utils}/isEventSupported.js | 0 .../dom/client/utils}/setInnerHTML.js | 0 .../dom/client/utils}/setTextContent.js | 0 .../dom/client}/validateDOMNesting.js | 0 .../dom/client/wrappers}/AutoFocusMixin.js | 0 .../dom/client/wrappers}/LinkedValueUtils.js | 0 .../client/wrappers}/LocalEventTrapMixin.js | 0 .../dom/client/wrappers}/ReactDOMButton.js | 0 .../dom/client/wrappers}/ReactDOMForm.js | 0 .../dom/client/wrappers}/ReactDOMIframe.js | 0 .../dom/client/wrappers}/ReactDOMImg.js | 0 .../dom/client/wrappers}/ReactDOMInput.js | 0 .../dom/client/wrappers}/ReactDOMOption.js | 0 .../dom/client/wrappers}/ReactDOMSelect.js | 0 .../dom/client/wrappers}/ReactDOMTextarea.js | 0 .../__tests__/LocalEventTrapMixin-test.js | 0 .../__tests__/ReactDOMButton-test.js | 0 .../__tests__/ReactDOMIframe-test.js | 0 .../wrappers}/__tests__/ReactDOMInput-test.js | 0 .../__tests__/ReactDOMOption-test.js | 0 .../__tests__/ReactDOMSelect-test.js | 0 .../__tests__/ReactDOMTextarea-test.js | 0 .../wrappers}/createFullPageComponent.js | 0 .../dom}/server/ReactMarkupChecksum.js | 0 .../dom}/server/ReactServerRendering.js | 0 .../server/ReactServerRenderingTransaction.js | 0 .../dom}/server/ServerReactRootIndex.js | 0 .../__tests__/ReactServerRendering-test.js | 0 .../dom/shared}/CSSProperty.js | 0 .../dom/shared}/CSSPropertyOperations.js | 0 .../dom/shared}/DOMProperty.js | 0 .../dom/shared}/DOMPropertyOperations.js | 0 .../ui/dom => renderers/dom/shared}/Danger.js | 0 .../dom/shared}/HTMLDOMPropertyConfig.js | 0 .../dom/shared}/ReactBrowserComponentMixin.js | 0 .../ReactComponentBrowserEnvironment.js | 0 .../dom/shared}/ReactDOMComponent.js | 0 .../dom/shared}/ReactDOMTextComponent.js | 0 .../dom/shared}/ReactDefaultInjection.js | 10 +++ .../dom/shared}/ReactInjection.js | 0 .../dom/shared}/SVGDOMPropertyConfig.js | 0 .../dom/shared}/__tests__/CSSProperty-test.js | 0 .../__tests__/CSSPropertyOperations-test.js | 0 .../__tests__/DOMPropertyOperations-test.js | 0 .../dom/shared}/__tests__/Danger-test.js | 0 .../__tests__/ReactDOMComponent-test.js | 0 .../__tests__/ReactDOMTextComponent-test.js | 0 .../dom/shared}/dangerousStyleValue.js | 0 .../shared}/event/EventConstants.js | 0 .../shared}/event/EventPluginHub.js | 0 .../shared}/event/EventPluginRegistry.js | 0 .../shared}/event/EventPluginUtils.js | 0 .../shared}/event/EventPropagators.js | 0 .../event/__tests__/EventPluginHub-test.js | 0 .../__tests__/EventPluginRegistry-test.js | 0 .../eventPlugins/ResponderEventPlugin.js | 0 .../eventPlugins/ResponderSyntheticEvent.js | 0 .../ResponderTouchHistoryStore.js | 0 .../__tests__/ResponderEventPlugin-test.js | 0 .../reconciler}/ReactChildReconciler.js | 0 .../reconciler}/ReactComponentEnvironment.js | 0 .../reconciler}/ReactCompositeComponent.js | 0 .../shared/reconciler}/ReactContext.js | 0 .../shared/reconciler}/ReactCurrentOwner.js | 0 .../ReactDefaultBatchingStrategy.js | 0 .../shared/reconciler}/ReactEmptyComponent.js | 0 .../reconciler}/ReactEventEmitterMixin.js | 0 .../reconciler}/ReactInstanceHandles.js | 0 .../shared/reconciler}/ReactInstanceMap.js | 0 .../shared/reconciler}/ReactLifeCycle.js | 0 .../shared/reconciler}/ReactMultiChild.js | 0 .../reconciler}/ReactMultiChildUpdateTypes.js | 0 .../reconciler}/ReactNativeComponent.js | 0 .../shared/reconciler}/ReactOwner.js | 0 .../shared/reconciler}/ReactReconciler.js | 0 .../shared/reconciler}/ReactRef.js | 0 .../shared/reconciler}/ReactRootIndex.js | 0 .../shared/reconciler}/ReactStateSetters.js | 0 .../shared/reconciler}/ReactUpdateQueue.js | 0 .../shared/reconciler}/ReactUpdates.js | 0 .../__tests__/ReactComponent-test.js | 0 .../__tests__/ReactComponentLifeCycle-test.js | 0 .../__tests__/ReactCompositeComponent-test.js | 0 ...actCompositeComponentDOMMinimalism-test.js | 0 .../ReactCompositeComponentError-test.js | 0 ...ReactCompositeComponentNestedState-test.js | 0 .../ReactCompositeComponentState-test.js | 0 .../__tests__/ReactEmptyComponent-test.js | 0 .../__tests__/ReactIdentity-test.js | 0 .../__tests__/ReactInstanceHandles-test.js | 0 .../__tests__/ReactMockedComponent-test.js | 0 .../__tests__/ReactMultiChild-test.js | 0 .../ReactMultiChildReconcile-test.js | 0 .../__tests__/ReactMultiChildText-test.js | 0 .../__tests__/ReactStateSetters-test.js | 0 .../__tests__/ReactUpdates-test.js | 0 .../__tests__/refs-destruction-test.js | 0 .../shared/reconciler}/__tests__/refs-test.js | 0 .../reconciler}/instantiateReactComponent.js | 0 .../reconciler}/shouldUpdateReactComponent.js | 0 src/{ => shared}/stubs/Object.assign.js | 0 src/{ => shared}/utils/CallbackQueue.js | 0 src/{ => shared}/utils/PooledClass.js | 0 src/{ => shared}/utils/Transaction.js | 0 .../utils/__tests__/OrderedMap-test.js | 0 .../utils/__tests__/PooledClass-test.js | 0 .../utils/__tests__/Transaction-test.js | 0 .../utils/__tests__/accumulateInto-test.js | 0 .../escapeTextContentForBrowser-test.js | 0 .../utils/__tests__/memoizeStringOnly-test.js | 0 .../quoteAttributeValueForBrowser-test.js | 0 .../utils/__tests__/shallowEqual-test.js | 0 .../__tests__/traverseAllChildren-test.js | 0 src/{ => shared}/utils/accumulate.js | 0 src/{ => shared}/utils/accumulateInto.js | 0 src/{ => shared}/utils/adler32.js | 0 src/{ => shared}/utils/deprecated.js | 0 .../utils/escapeTextContentForBrowser.js | 0 src/{ => shared}/utils/flattenChildren.js | 0 src/{ => shared}/utils/forEachAccumulated.js | 0 src/{ => shared}/utils/getIteratorFn.js | 0 src/{ => shared}/utils/isTextInputElement.js | 0 src/{ => shared}/utils/memoizeStringOnly.js | 0 .../utils/quoteAttributeValueForBrowser.js | 0 src/{ => shared}/utils/shallowEqual.js | 0 src/{ => shared}/utils/traverseAllChildren.js | 0 src/{ => shared}/vendor/README.md | 0 src/{ => shared}/vendor/core/CSSCore.js | 0 .../vendor/core/ExecutionEnvironment.js | 0 .../vendor/core/TouchEventUtils.js | 0 src/{ => shared}/vendor/core/camelize.js | 0 .../vendor/core/camelizeStyleName.js | 0 .../vendor/core/createArrayFromMixed.js | 0 .../vendor/core/createNodesFromMarkup.js | 0 .../vendor/core/dom/containsNode.js | 0 src/{ => shared}/vendor/core/dom/focusNode.js | 0 .../vendor/core/dom/getActiveElement.js | 0 .../core/dom/getUnboundedScrollPosition.js | 0 src/{ => shared}/vendor/core/dom/isNode.js | 0 .../vendor/core/dom/isTextNode.js | 0 src/{ => shared}/vendor/core/emptyFunction.js | 0 src/{ => shared}/vendor/core/emptyObject.js | 0 src/{ => shared}/vendor/core/getMarkupWrap.js | 0 src/{ => shared}/vendor/core/hyphenate.js | 0 .../vendor/core/hyphenateStyleName.js | 0 src/{ => shared}/vendor/core/invariant.js | 0 src/{ => shared}/vendor/core/mapObject.js | 0 .../vendor/core/monitorCodeUse.js | 0 .../core/nativeRequestAnimationFrame.js | 0 .../vendor/core/requestAnimationFrame.js | 0 src/{ => shared}/vendor/core/toArray.js | 0 src/{ => shared}/vendor/core/warning.js | 0 .../key-mirror/__tests__/keyMirror-test.js | 0 .../vendor/key-mirror/keyMirror.js | 0 src/{ => shared}/vendor/key-mirror/keyOf.js | 0 .../vendor/performance/performance.js | 0 .../vendor/performance/performanceNow.js | 0 .../vendor/stubs/EventListener.js | 0 .../vendor/stubs/ReactErrorUtils.js | 0 .../vendor/third_party/webcomponents.js | 0 261 files changed, 138 insertions(+), 51 deletions(-) create mode 100644 src/React.js rename src/{browser => addons}/ReactWithAddons.js (100%) create mode 100644 src/isomorphic/ReactIsomorphic.js rename src/{utils => isomorphic/children}/ReactChildren.js (100%) rename src/{utils => isomorphic/children}/__tests__/ReactChildren-test.js (100%) rename src/{utils => isomorphic/children}/__tests__/onlyChild-test.js (100%) rename src/{utils => isomorphic/children}/__tests__/sliceChildren-test.js (100%) rename src/{utils => isomorphic/children}/onlyChild.js (100%) rename src/{utils => isomorphic/children}/sliceChildren.js (100%) rename src/{ => isomorphic}/classic/__tests__/ReactContextValidator-test.js (100%) rename src/{ => isomorphic}/classic/class/ReactClass.js (100%) rename src/{ => isomorphic}/classic/class/__tests__/ReactBind-test.js (100%) rename src/{ => isomorphic}/classic/class/__tests__/ReactClass-test.js (100%) rename src/{ => isomorphic}/classic/class/__tests__/ReactClassMixin-test.js (100%) rename src/{browser => isomorphic/classic/element}/ReactDOM.js (100%) rename src/{ => isomorphic}/classic/element/ReactElement.js (100%) rename src/{ => isomorphic}/classic/element/ReactElementValidator.js (100%) rename src/{ => isomorphic}/classic/element/__tests__/ReactElement-test.js (100%) rename src/{ => isomorphic}/classic/element/__tests__/ReactElementClone-test.js (100%) rename src/{ => isomorphic}/classic/element/__tests__/ReactElementValidator-test.js (100%) rename src/{ => isomorphic}/classic/types/ReactPropTypeLocationNames.js (100%) rename src/{ => isomorphic}/classic/types/ReactPropTypeLocations.js (100%) rename src/{ => isomorphic}/classic/types/ReactPropTypes.js (100%) rename src/{ => isomorphic}/classic/types/__tests__/ReactPropTypes-test.js (100%) rename src/{utils => isomorphic/deprecated}/OrderedMap.js (100%) rename src/{core => isomorphic/deprecated}/ReactPropTransferer.js (100%) rename src/{utils => isomorphic/deprecated}/__tests__/cloneWithProps-test.js (100%) rename src/{utils => isomorphic/deprecated}/__tests__/joinClasses-test.js (100%) rename src/{utils => isomorphic/deprecated}/cloneWithProps.js (100%) rename src/{utils => isomorphic/deprecated}/joinClasses.js (100%) rename src/{ => isomorphic}/modern/class/React.d.ts (100%) rename src/{ => isomorphic}/modern/class/ReactComponent.js (100%) rename src/{ => isomorphic}/modern/class/__tests__/ReactClassEquivalence-test.js (100%) rename src/{ => isomorphic}/modern/class/__tests__/ReactCoffeeScriptClass-test.coffee (100%) rename src/{ => isomorphic}/modern/class/__tests__/ReactES6Class-test.js (100%) rename src/{ => isomorphic}/modern/class/__tests__/ReactTypeScriptClass-test.ts (100%) rename src/{ => isomorphic}/modern/element/__tests__/ReactJSXElement-test.js (100%) rename src/{ => isomorphic}/modern/element/__tests__/ReactJSXElementValidator-test.js (100%) rename src/{ => isomorphic}/modern/types/__tests__/ReactFlowPropTypes-test.js (100%) rename src/{ => isomorphic}/modern/types/__tests__/ReactTypeScriptPropTypes-test.js (100%) rename src/{browser/ui/React.js => renderers/dom/ReactDOMClient.js} (67%) create mode 100644 src/renderers/dom/ReactDOMServer.js rename src/{browser => renderers/dom/client}/ClientReactRootIndex.js (100%) rename src/{browser => renderers/dom/client}/ReactBrowserEventEmitter.js (100%) rename src/{browser/ui => renderers/dom/client}/ReactDOMIDOperations.js (100%) rename src/{browser/ui => renderers/dom/client}/ReactDOMSelection.js (100%) rename src/{browser/ui => renderers/dom/client}/ReactEventListener.js (100%) rename src/{browser/ui => renderers/dom/client}/ReactInputSelection.js (100%) rename src/{browser/ui => renderers/dom/client}/ReactMount.js (100%) rename src/{browser => renderers/dom/client}/ReactReconcileTransaction.js (100%) rename src/{browser => renderers/dom/client}/__tests__/ReactBrowserEventEmitter-test.js (100%) rename src/{browser => renderers/dom/client}/__tests__/ReactDOM-test.js (100%) rename src/{browser/ui => renderers/dom/client}/__tests__/ReactDOMIDOperations-test.js (100%) rename src/{browser => renderers/dom/client}/__tests__/ReactDOMSVG-test.js (100%) rename src/{browser/ui => renderers/dom/client}/__tests__/ReactEventListener-test.js (100%) rename src/{browser/ui => renderers/dom/client}/__tests__/ReactMount-test.js (100%) rename src/{browser/ui => renderers/dom/client}/__tests__/ReactMountDestruction-test.js (100%) rename src/{browser/ui => renderers/dom/client}/__tests__/ReactRenderDocument-test.js (100%) rename src/{browser => renderers/dom/client}/__tests__/ReactWebWorker-test.js (100%) rename src/{browser => renderers/dom/client}/__tests__/findDOMNode-test.js (100%) rename src/{browser => renderers/dom/client}/__tests__/validateDOMNesting-test.js (100%) rename src/{browser => renderers/dom/client}/eventPlugins/AnalyticsEventPluginFactory.js (100%) rename src/{browser => renderers/dom/client}/eventPlugins/BeforeInputEventPlugin.js (100%) rename src/{browser => renderers/dom/client}/eventPlugins/ChangeEventPlugin.js (100%) rename src/{browser => renderers/dom/client}/eventPlugins/DefaultEventPluginOrder.js (100%) rename src/{browser => renderers/dom/client}/eventPlugins/EnterLeaveEventPlugin.js (100%) rename src/{browser => renderers/dom/client}/eventPlugins/FallbackCompositionState.js (100%) rename src/{browser => renderers/dom/client}/eventPlugins/SelectEventPlugin.js (100%) rename src/{browser => renderers/dom/client}/eventPlugins/SimpleEventPlugin.js (100%) rename src/{browser => renderers/dom/client}/eventPlugins/TapEventPlugin.js (100%) rename src/{browser => renderers/dom/client}/eventPlugins/__tests__/AnalyticsEventPlugin-test.js (100%) rename src/{browser => renderers/dom/client}/eventPlugins/__tests__/EnterLeaveEventPlugin-test.js (100%) rename src/{browser => renderers/dom/client}/eventPlugins/__tests__/FallbackCompositionState-test.js (100%) rename src/{browser => renderers/dom/client}/eventPlugins/__tests__/SelectEventPlugin-test.js (100%) rename src/{browser => renderers/dom/client}/findDOMNode.js (100%) rename src/{browser => renderers/dom/client}/syntheticEvents/SyntheticClipboardEvent.js (100%) rename src/{browser => renderers/dom/client}/syntheticEvents/SyntheticCompositionEvent.js (100%) rename src/{browser => renderers/dom/client}/syntheticEvents/SyntheticDragEvent.js (100%) rename src/{browser => renderers/dom/client}/syntheticEvents/SyntheticEvent.js (100%) rename src/{browser => renderers/dom/client}/syntheticEvents/SyntheticFocusEvent.js (100%) rename src/{browser => renderers/dom/client}/syntheticEvents/SyntheticInputEvent.js (100%) rename src/{browser => renderers/dom/client}/syntheticEvents/SyntheticKeyboardEvent.js (100%) rename src/{browser => renderers/dom/client}/syntheticEvents/SyntheticMouseEvent.js (100%) rename src/{browser => renderers/dom/client}/syntheticEvents/SyntheticTouchEvent.js (100%) rename src/{browser => renderers/dom/client}/syntheticEvents/SyntheticUIEvent.js (100%) rename src/{browser => renderers/dom/client}/syntheticEvents/SyntheticWheelEvent.js (100%) rename src/{browser => renderers/dom/client}/syntheticEvents/__tests__/SyntheticEvent-test.js (100%) rename src/{browser => renderers/dom/client}/syntheticEvents/__tests__/SyntheticWheelEvent-test.js (100%) rename src/{browser/ui/dom => renderers/dom/client/utils}/DOMChildrenOperations.js (100%) rename src/{browser/ui/dom => renderers/dom/client/utils}/ViewportMetrics.js (100%) rename src/{browser/ui/dom => renderers/dom/client/utils}/__tests__/getNodeForCharacterOffset-test.js (100%) rename src/{browser/ui/dom => renderers/dom/client/utils}/getEventCharCode.js (100%) rename src/{browser/ui/dom => renderers/dom/client/utils}/getEventKey.js (100%) rename src/{browser/ui/dom => renderers/dom/client/utils}/getEventModifierState.js (100%) rename src/{browser/ui/dom => renderers/dom/client/utils}/getEventTarget.js (100%) rename src/{browser/ui/dom => renderers/dom/client/utils}/getNodeForCharacterOffset.js (100%) rename src/{browser/ui/dom => renderers/dom/client/utils}/getTextContentAccessor.js (100%) rename src/{browser/ui/dom => renderers/dom/client/utils}/isEventSupported.js (100%) rename src/{browser/ui/dom => renderers/dom/client/utils}/setInnerHTML.js (100%) rename src/{browser/ui/dom => renderers/dom/client/utils}/setTextContent.js (100%) rename src/{browser => renderers/dom/client}/validateDOMNesting.js (100%) rename src/{browser/ui/dom/components => renderers/dom/client/wrappers}/AutoFocusMixin.js (100%) rename src/{browser/ui/dom/components => renderers/dom/client/wrappers}/LinkedValueUtils.js (100%) rename src/{browser/ui/dom/components => renderers/dom/client/wrappers}/LocalEventTrapMixin.js (100%) rename src/{browser/ui/dom/components => renderers/dom/client/wrappers}/ReactDOMButton.js (100%) rename src/{browser/ui/dom/components => renderers/dom/client/wrappers}/ReactDOMForm.js (100%) rename src/{browser/ui/dom/components => renderers/dom/client/wrappers}/ReactDOMIframe.js (100%) rename src/{browser/ui/dom/components => renderers/dom/client/wrappers}/ReactDOMImg.js (100%) rename src/{browser/ui/dom/components => renderers/dom/client/wrappers}/ReactDOMInput.js (100%) rename src/{browser/ui/dom/components => renderers/dom/client/wrappers}/ReactDOMOption.js (100%) rename src/{browser/ui/dom/components => renderers/dom/client/wrappers}/ReactDOMSelect.js (100%) rename src/{browser/ui/dom/components => renderers/dom/client/wrappers}/ReactDOMTextarea.js (100%) rename src/{browser/ui/dom/components => renderers/dom/client/wrappers}/__tests__/LocalEventTrapMixin-test.js (100%) rename src/{browser/ui/dom/components => renderers/dom/client/wrappers}/__tests__/ReactDOMButton-test.js (100%) rename src/{browser/ui/dom/components => renderers/dom/client/wrappers}/__tests__/ReactDOMIframe-test.js (100%) rename src/{browser/ui/dom/components => renderers/dom/client/wrappers}/__tests__/ReactDOMInput-test.js (100%) rename src/{browser/ui/dom/components => renderers/dom/client/wrappers}/__tests__/ReactDOMOption-test.js (100%) rename src/{browser/ui/dom/components => renderers/dom/client/wrappers}/__tests__/ReactDOMSelect-test.js (100%) rename src/{browser/ui/dom/components => renderers/dom/client/wrappers}/__tests__/ReactDOMTextarea-test.js (100%) rename src/{browser/ui/dom/components => renderers/dom/client/wrappers}/createFullPageComponent.js (100%) rename src/{browser => renderers/dom}/server/ReactMarkupChecksum.js (100%) rename src/{browser => renderers/dom}/server/ReactServerRendering.js (100%) rename src/{browser => renderers/dom}/server/ReactServerRenderingTransaction.js (100%) rename src/{browser => renderers/dom}/server/ServerReactRootIndex.js (100%) rename src/{browser => renderers/dom}/server/__tests__/ReactServerRendering-test.js (100%) rename src/{browser/ui/dom => renderers/dom/shared}/CSSProperty.js (100%) rename src/{browser/ui/dom => renderers/dom/shared}/CSSPropertyOperations.js (100%) rename src/{browser/ui/dom => renderers/dom/shared}/DOMProperty.js (100%) rename src/{browser/ui/dom => renderers/dom/shared}/DOMPropertyOperations.js (100%) rename src/{browser/ui/dom => renderers/dom/shared}/Danger.js (100%) rename src/{browser/ui/dom => renderers/dom/shared}/HTMLDOMPropertyConfig.js (100%) rename src/{browser/ui => renderers/dom/shared}/ReactBrowserComponentMixin.js (100%) rename src/{browser/ui => renderers/dom/shared}/ReactComponentBrowserEnvironment.js (100%) rename src/{browser/ui => renderers/dom/shared}/ReactDOMComponent.js (100%) rename src/{browser/ui => renderers/dom/shared}/ReactDOMTextComponent.js (100%) rename src/{browser/ui => renderers/dom/shared}/ReactDefaultInjection.js (94%) rename src/{browser/ui => renderers/dom/shared}/ReactInjection.js (100%) rename src/{browser/ui/dom => renderers/dom/shared}/SVGDOMPropertyConfig.js (100%) rename src/{browser/ui/dom => renderers/dom/shared}/__tests__/CSSProperty-test.js (100%) rename src/{browser/ui/dom => renderers/dom/shared}/__tests__/CSSPropertyOperations-test.js (100%) rename src/{browser/ui/dom => renderers/dom/shared}/__tests__/DOMPropertyOperations-test.js (100%) rename src/{browser/ui/dom => renderers/dom/shared}/__tests__/Danger-test.js (100%) rename src/{browser/ui => renderers/dom/shared}/__tests__/ReactDOMComponent-test.js (100%) rename src/{browser/ui => renderers/dom/shared}/__tests__/ReactDOMTextComponent-test.js (100%) rename src/{browser/ui/dom => renderers/dom/shared}/dangerousStyleValue.js (100%) rename src/{ => renderers/shared}/event/EventConstants.js (100%) rename src/{ => renderers/shared}/event/EventPluginHub.js (100%) rename src/{ => renderers/shared}/event/EventPluginRegistry.js (100%) rename src/{ => renderers/shared}/event/EventPluginUtils.js (100%) rename src/{ => renderers/shared}/event/EventPropagators.js (100%) rename src/{ => renderers/shared}/event/__tests__/EventPluginHub-test.js (100%) rename src/{ => renderers/shared}/event/__tests__/EventPluginRegistry-test.js (100%) rename src/{ => renderers/shared}/event/eventPlugins/ResponderEventPlugin.js (100%) rename src/{ => renderers/shared}/event/eventPlugins/ResponderSyntheticEvent.js (100%) rename src/{ => renderers/shared}/event/eventPlugins/ResponderTouchHistoryStore.js (100%) rename src/{ => renderers/shared}/event/eventPlugins/__tests__/ResponderEventPlugin-test.js (100%) rename src/{core => renderers/shared/reconciler}/ReactChildReconciler.js (100%) rename src/{core => renderers/shared/reconciler}/ReactComponentEnvironment.js (100%) rename src/{core => renderers/shared/reconciler}/ReactCompositeComponent.js (100%) rename src/{core => renderers/shared/reconciler}/ReactContext.js (100%) rename src/{core => renderers/shared/reconciler}/ReactCurrentOwner.js (100%) rename src/{core => renderers/shared/reconciler}/ReactDefaultBatchingStrategy.js (100%) rename src/{core => renderers/shared/reconciler}/ReactEmptyComponent.js (100%) rename src/{core => renderers/shared/reconciler}/ReactEventEmitterMixin.js (100%) rename src/{core => renderers/shared/reconciler}/ReactInstanceHandles.js (100%) rename src/{core => renderers/shared/reconciler}/ReactInstanceMap.js (100%) rename src/{core => renderers/shared/reconciler}/ReactLifeCycle.js (100%) rename src/{core => renderers/shared/reconciler}/ReactMultiChild.js (100%) rename src/{core => renderers/shared/reconciler}/ReactMultiChildUpdateTypes.js (100%) rename src/{core => renderers/shared/reconciler}/ReactNativeComponent.js (100%) rename src/{core => renderers/shared/reconciler}/ReactOwner.js (100%) rename src/{core => renderers/shared/reconciler}/ReactReconciler.js (100%) rename src/{core => renderers/shared/reconciler}/ReactRef.js (100%) rename src/{core => renderers/shared/reconciler}/ReactRootIndex.js (100%) rename src/{core => renderers/shared/reconciler}/ReactStateSetters.js (100%) rename src/{core => renderers/shared/reconciler}/ReactUpdateQueue.js (100%) rename src/{core => renderers/shared/reconciler}/ReactUpdates.js (100%) rename src/{core => renderers/shared/reconciler}/__tests__/ReactComponent-test.js (100%) rename src/{core => renderers/shared/reconciler}/__tests__/ReactComponentLifeCycle-test.js (100%) rename src/{core => renderers/shared/reconciler}/__tests__/ReactCompositeComponent-test.js (100%) rename src/{core => renderers/shared/reconciler}/__tests__/ReactCompositeComponentDOMMinimalism-test.js (100%) rename src/{core => renderers/shared/reconciler}/__tests__/ReactCompositeComponentError-test.js (100%) rename src/{core => renderers/shared/reconciler}/__tests__/ReactCompositeComponentNestedState-test.js (100%) rename src/{core => renderers/shared/reconciler}/__tests__/ReactCompositeComponentState-test.js (100%) rename src/{core => renderers/shared/reconciler}/__tests__/ReactEmptyComponent-test.js (100%) rename src/{core => renderers/shared/reconciler}/__tests__/ReactIdentity-test.js (100%) rename src/{core => renderers/shared/reconciler}/__tests__/ReactInstanceHandles-test.js (100%) rename src/{core => renderers/shared/reconciler}/__tests__/ReactMockedComponent-test.js (100%) rename src/{core => renderers/shared/reconciler}/__tests__/ReactMultiChild-test.js (100%) rename src/{core => renderers/shared/reconciler}/__tests__/ReactMultiChildReconcile-test.js (100%) rename src/{core => renderers/shared/reconciler}/__tests__/ReactMultiChildText-test.js (100%) rename src/{core => renderers/shared/reconciler}/__tests__/ReactStateSetters-test.js (100%) rename src/{core => renderers/shared/reconciler}/__tests__/ReactUpdates-test.js (100%) rename src/{core => renderers/shared/reconciler}/__tests__/refs-destruction-test.js (100%) rename src/{core => renderers/shared/reconciler}/__tests__/refs-test.js (100%) rename src/{core => renderers/shared/reconciler}/instantiateReactComponent.js (100%) rename src/{core => renderers/shared/reconciler}/shouldUpdateReactComponent.js (100%) rename src/{ => shared}/stubs/Object.assign.js (100%) rename src/{ => shared}/utils/CallbackQueue.js (100%) rename src/{ => shared}/utils/PooledClass.js (100%) rename src/{ => shared}/utils/Transaction.js (100%) rename src/{ => shared}/utils/__tests__/OrderedMap-test.js (100%) rename src/{ => shared}/utils/__tests__/PooledClass-test.js (100%) rename src/{ => shared}/utils/__tests__/Transaction-test.js (100%) rename src/{ => shared}/utils/__tests__/accumulateInto-test.js (100%) rename src/{ => shared}/utils/__tests__/escapeTextContentForBrowser-test.js (100%) rename src/{ => shared}/utils/__tests__/memoizeStringOnly-test.js (100%) rename src/{ => shared}/utils/__tests__/quoteAttributeValueForBrowser-test.js (100%) rename src/{ => shared}/utils/__tests__/shallowEqual-test.js (100%) rename src/{ => shared}/utils/__tests__/traverseAllChildren-test.js (100%) rename src/{ => shared}/utils/accumulate.js (100%) rename src/{ => shared}/utils/accumulateInto.js (100%) rename src/{ => shared}/utils/adler32.js (100%) rename src/{ => shared}/utils/deprecated.js (100%) rename src/{ => shared}/utils/escapeTextContentForBrowser.js (100%) rename src/{ => shared}/utils/flattenChildren.js (100%) rename src/{ => shared}/utils/forEachAccumulated.js (100%) rename src/{ => shared}/utils/getIteratorFn.js (100%) rename src/{ => shared}/utils/isTextInputElement.js (100%) rename src/{ => shared}/utils/memoizeStringOnly.js (100%) rename src/{ => shared}/utils/quoteAttributeValueForBrowser.js (100%) rename src/{ => shared}/utils/shallowEqual.js (100%) rename src/{ => shared}/utils/traverseAllChildren.js (100%) rename src/{ => shared}/vendor/README.md (100%) rename src/{ => shared}/vendor/core/CSSCore.js (100%) rename src/{ => shared}/vendor/core/ExecutionEnvironment.js (100%) rename src/{ => shared}/vendor/core/TouchEventUtils.js (100%) rename src/{ => shared}/vendor/core/camelize.js (100%) rename src/{ => shared}/vendor/core/camelizeStyleName.js (100%) rename src/{ => shared}/vendor/core/createArrayFromMixed.js (100%) rename src/{ => shared}/vendor/core/createNodesFromMarkup.js (100%) rename src/{ => shared}/vendor/core/dom/containsNode.js (100%) rename src/{ => shared}/vendor/core/dom/focusNode.js (100%) rename src/{ => shared}/vendor/core/dom/getActiveElement.js (100%) rename src/{ => shared}/vendor/core/dom/getUnboundedScrollPosition.js (100%) rename src/{ => shared}/vendor/core/dom/isNode.js (100%) rename src/{ => shared}/vendor/core/dom/isTextNode.js (100%) rename src/{ => shared}/vendor/core/emptyFunction.js (100%) rename src/{ => shared}/vendor/core/emptyObject.js (100%) rename src/{ => shared}/vendor/core/getMarkupWrap.js (100%) rename src/{ => shared}/vendor/core/hyphenate.js (100%) rename src/{ => shared}/vendor/core/hyphenateStyleName.js (100%) rename src/{ => shared}/vendor/core/invariant.js (100%) rename src/{ => shared}/vendor/core/mapObject.js (100%) rename src/{ => shared}/vendor/core/monitorCodeUse.js (100%) rename src/{ => shared}/vendor/core/nativeRequestAnimationFrame.js (100%) rename src/{ => shared}/vendor/core/requestAnimationFrame.js (100%) rename src/{ => shared}/vendor/core/toArray.js (100%) rename src/{ => shared}/vendor/core/warning.js (100%) rename src/{ => shared}/vendor/key-mirror/__tests__/keyMirror-test.js (100%) rename src/{ => shared}/vendor/key-mirror/keyMirror.js (100%) rename src/{ => shared}/vendor/key-mirror/keyOf.js (100%) rename src/{ => shared}/vendor/performance/performance.js (100%) rename src/{ => shared}/vendor/performance/performanceNow.js (100%) rename src/{ => shared}/vendor/stubs/EventListener.js (100%) rename src/{ => shared}/vendor/stubs/ReactErrorUtils.js (100%) rename src/{ => shared}/vendor/third_party/webcomponents.js (100%) diff --git a/.eslintignore b/.eslintignore index a74e51fcbb..31e4551dee 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1,5 +1,5 @@ # We can probably lint these later but not important at this point -src/vendor +src/shared/vendor # eslint uses JSX* node types to determine if using JSX. esprima-fb still uses # XJS* nodes. When we fix that (https://github.com/facebook/esprima/pull/85) we # can enable linting the tests and fix those errors. diff --git a/grunt/config/jsx.js b/grunt/config/jsx.js index 9c7dcf5079..520a941891 100644 --- a/grunt/config/jsx.js +++ b/grunt/config/jsx.js @@ -1,6 +1,6 @@ 'use strict'; -var assign = require('../../src/stubs/Object.assign'); +var assign = require('../../src/shared/stubs/Object.assign'); var grunt = require('grunt'); var rootIDs = [ diff --git a/grunt/tasks/version-check.js b/grunt/tasks/version-check.js index 08839a47c9..ced302e735 100644 --- a/grunt/tasks/version-check.js +++ b/grunt/tasks/version-check.js @@ -10,7 +10,7 @@ var reactVersionExp = /\bReact\.version\s*=\s*['"]([^'"]+)['"];/; module.exports = function() { var reactVersion = reactVersionExp.exec( - grunt.file.read('./src/browser/ui/React.js') + grunt.file.read('./src/React.js') )[1]; var npmReactVersion = grunt.file.readJSON('./npm-react/package.json').version; var reactToolsVersion = grunt.config.data.pkg.version; diff --git a/jest/preprocessor.js b/jest/preprocessor.js index 29fee899b0..2b1b314a7b 100644 --- a/jest/preprocessor.js +++ b/jest/preprocessor.js @@ -7,7 +7,7 @@ var tsPreprocessor = require('./ts-preprocessor'); var defaultLibraries = [ require.resolve('./jest.d.ts'), - require.resolve('../src/modern/class/React.d.ts') + require.resolve('../src/isomorphic/modern/class/React.d.ts') ]; var ts = tsPreprocessor(defaultLibraries); diff --git a/src/React.js b/src/React.js new file mode 100644 index 0000000000..aed45b3e0c --- /dev/null +++ b/src/React.js @@ -0,0 +1,28 @@ +/** + * Copyright 2013-2015, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under the BSD-style license found in the + * LICENSE file in the root directory of this source tree. An additional grant + * of patent rights can be found in the PATENTS file in the same directory. + * + * @providesModule React + */ + +'use strict'; + +var ReactDOMClient = require('ReactDOMClient'); +var ReactDOMServer = require('ReactDOMServer'); +var ReactIsomorphic = require('ReactIsomorphic'); + +var assign = require('Object.assign'); + +var React = {}; + +assign(React, ReactIsomorphic); +assign(React, ReactDOMClient); +assign(React, ReactDOMServer); + +React.version = '0.14.0-alpha1'; + +module.exports = React; diff --git a/src/browser/ReactWithAddons.js b/src/addons/ReactWithAddons.js similarity index 100% rename from src/browser/ReactWithAddons.js rename to src/addons/ReactWithAddons.js diff --git a/src/isomorphic/ReactIsomorphic.js b/src/isomorphic/ReactIsomorphic.js new file mode 100644 index 0000000000..dbbeedf07f --- /dev/null +++ b/src/isomorphic/ReactIsomorphic.js @@ -0,0 +1,70 @@ +/** + * Copyright 2013-2015, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under the BSD-style license found in the + * LICENSE file in the root directory of this source tree. An additional grant + * of patent rights can be found in the PATENTS file in the same directory. + * + * @providesModule ReactIsomorphic + */ + +'use strict'; + +var ReactChildren = require('ReactChildren'); +var ReactComponent = require('ReactComponent'); +var ReactClass = require('ReactClass'); +var ReactDOM = require('ReactDOM'); +var ReactElement = require('ReactElement'); +var ReactElementValidator = require('ReactElementValidator'); +var ReactPropTypes = require('ReactPropTypes'); + +var assign = require('Object.assign'); +var onlyChild = require('onlyChild'); + +var createElement = ReactElement.createElement; +var createFactory = ReactElement.createFactory; +var cloneElement = ReactElement.cloneElement; + +if (__DEV__) { + createElement = ReactElementValidator.createElement; + createFactory = ReactElementValidator.createFactory; + cloneElement = ReactElementValidator.cloneElement; +} + +var React = { + + // Modern + + Children: { + map: ReactChildren.map, + forEach: ReactChildren.forEach, + count: ReactChildren.count, + only: onlyChild + }, + + Component: ReactComponent, + + createElement: createElement, + cloneElement: cloneElement, + isValidElement: ReactElement.isValidElement, + + // Classic + + PropTypes: ReactPropTypes, + createClass: ReactClass.createClass, + createFactory: createFactory, + createMixin: function(mixin) { + // Currently a noop. Will be used to validate and trace mixins. + return mixin; + }, + + // This looks DOM specific but these are actually isomorphic helpers + // since they are just generating DOM strings. + DOM: ReactDOM, + + // Hook for JSX spread, don't use this for anything else. + __spread: assign +}; + +module.exports = React; diff --git a/src/utils/ReactChildren.js b/src/isomorphic/children/ReactChildren.js similarity index 100% rename from src/utils/ReactChildren.js rename to src/isomorphic/children/ReactChildren.js diff --git a/src/utils/__tests__/ReactChildren-test.js b/src/isomorphic/children/__tests__/ReactChildren-test.js similarity index 100% rename from src/utils/__tests__/ReactChildren-test.js rename to src/isomorphic/children/__tests__/ReactChildren-test.js diff --git a/src/utils/__tests__/onlyChild-test.js b/src/isomorphic/children/__tests__/onlyChild-test.js similarity index 100% rename from src/utils/__tests__/onlyChild-test.js rename to src/isomorphic/children/__tests__/onlyChild-test.js diff --git a/src/utils/__tests__/sliceChildren-test.js b/src/isomorphic/children/__tests__/sliceChildren-test.js similarity index 100% rename from src/utils/__tests__/sliceChildren-test.js rename to src/isomorphic/children/__tests__/sliceChildren-test.js diff --git a/src/utils/onlyChild.js b/src/isomorphic/children/onlyChild.js similarity index 100% rename from src/utils/onlyChild.js rename to src/isomorphic/children/onlyChild.js diff --git a/src/utils/sliceChildren.js b/src/isomorphic/children/sliceChildren.js similarity index 100% rename from src/utils/sliceChildren.js rename to src/isomorphic/children/sliceChildren.js diff --git a/src/classic/__tests__/ReactContextValidator-test.js b/src/isomorphic/classic/__tests__/ReactContextValidator-test.js similarity index 100% rename from src/classic/__tests__/ReactContextValidator-test.js rename to src/isomorphic/classic/__tests__/ReactContextValidator-test.js diff --git a/src/classic/class/ReactClass.js b/src/isomorphic/classic/class/ReactClass.js similarity index 100% rename from src/classic/class/ReactClass.js rename to src/isomorphic/classic/class/ReactClass.js diff --git a/src/classic/class/__tests__/ReactBind-test.js b/src/isomorphic/classic/class/__tests__/ReactBind-test.js similarity index 100% rename from src/classic/class/__tests__/ReactBind-test.js rename to src/isomorphic/classic/class/__tests__/ReactBind-test.js diff --git a/src/classic/class/__tests__/ReactClass-test.js b/src/isomorphic/classic/class/__tests__/ReactClass-test.js similarity index 100% rename from src/classic/class/__tests__/ReactClass-test.js rename to src/isomorphic/classic/class/__tests__/ReactClass-test.js diff --git a/src/classic/class/__tests__/ReactClassMixin-test.js b/src/isomorphic/classic/class/__tests__/ReactClassMixin-test.js similarity index 100% rename from src/classic/class/__tests__/ReactClassMixin-test.js rename to src/isomorphic/classic/class/__tests__/ReactClassMixin-test.js diff --git a/src/browser/ReactDOM.js b/src/isomorphic/classic/element/ReactDOM.js similarity index 100% rename from src/browser/ReactDOM.js rename to src/isomorphic/classic/element/ReactDOM.js diff --git a/src/classic/element/ReactElement.js b/src/isomorphic/classic/element/ReactElement.js similarity index 100% rename from src/classic/element/ReactElement.js rename to src/isomorphic/classic/element/ReactElement.js diff --git a/src/classic/element/ReactElementValidator.js b/src/isomorphic/classic/element/ReactElementValidator.js similarity index 100% rename from src/classic/element/ReactElementValidator.js rename to src/isomorphic/classic/element/ReactElementValidator.js diff --git a/src/classic/element/__tests__/ReactElement-test.js b/src/isomorphic/classic/element/__tests__/ReactElement-test.js similarity index 100% rename from src/classic/element/__tests__/ReactElement-test.js rename to src/isomorphic/classic/element/__tests__/ReactElement-test.js diff --git a/src/classic/element/__tests__/ReactElementClone-test.js b/src/isomorphic/classic/element/__tests__/ReactElementClone-test.js similarity index 100% rename from src/classic/element/__tests__/ReactElementClone-test.js rename to src/isomorphic/classic/element/__tests__/ReactElementClone-test.js diff --git a/src/classic/element/__tests__/ReactElementValidator-test.js b/src/isomorphic/classic/element/__tests__/ReactElementValidator-test.js similarity index 100% rename from src/classic/element/__tests__/ReactElementValidator-test.js rename to src/isomorphic/classic/element/__tests__/ReactElementValidator-test.js diff --git a/src/classic/types/ReactPropTypeLocationNames.js b/src/isomorphic/classic/types/ReactPropTypeLocationNames.js similarity index 100% rename from src/classic/types/ReactPropTypeLocationNames.js rename to src/isomorphic/classic/types/ReactPropTypeLocationNames.js diff --git a/src/classic/types/ReactPropTypeLocations.js b/src/isomorphic/classic/types/ReactPropTypeLocations.js similarity index 100% rename from src/classic/types/ReactPropTypeLocations.js rename to src/isomorphic/classic/types/ReactPropTypeLocations.js diff --git a/src/classic/types/ReactPropTypes.js b/src/isomorphic/classic/types/ReactPropTypes.js similarity index 100% rename from src/classic/types/ReactPropTypes.js rename to src/isomorphic/classic/types/ReactPropTypes.js diff --git a/src/classic/types/__tests__/ReactPropTypes-test.js b/src/isomorphic/classic/types/__tests__/ReactPropTypes-test.js similarity index 100% rename from src/classic/types/__tests__/ReactPropTypes-test.js rename to src/isomorphic/classic/types/__tests__/ReactPropTypes-test.js diff --git a/src/utils/OrderedMap.js b/src/isomorphic/deprecated/OrderedMap.js similarity index 100% rename from src/utils/OrderedMap.js rename to src/isomorphic/deprecated/OrderedMap.js diff --git a/src/core/ReactPropTransferer.js b/src/isomorphic/deprecated/ReactPropTransferer.js similarity index 100% rename from src/core/ReactPropTransferer.js rename to src/isomorphic/deprecated/ReactPropTransferer.js diff --git a/src/utils/__tests__/cloneWithProps-test.js b/src/isomorphic/deprecated/__tests__/cloneWithProps-test.js similarity index 100% rename from src/utils/__tests__/cloneWithProps-test.js rename to src/isomorphic/deprecated/__tests__/cloneWithProps-test.js diff --git a/src/utils/__tests__/joinClasses-test.js b/src/isomorphic/deprecated/__tests__/joinClasses-test.js similarity index 100% rename from src/utils/__tests__/joinClasses-test.js rename to src/isomorphic/deprecated/__tests__/joinClasses-test.js diff --git a/src/utils/cloneWithProps.js b/src/isomorphic/deprecated/cloneWithProps.js similarity index 100% rename from src/utils/cloneWithProps.js rename to src/isomorphic/deprecated/cloneWithProps.js diff --git a/src/utils/joinClasses.js b/src/isomorphic/deprecated/joinClasses.js similarity index 100% rename from src/utils/joinClasses.js rename to src/isomorphic/deprecated/joinClasses.js diff --git a/src/modern/class/React.d.ts b/src/isomorphic/modern/class/React.d.ts similarity index 100% rename from src/modern/class/React.d.ts rename to src/isomorphic/modern/class/React.d.ts diff --git a/src/modern/class/ReactComponent.js b/src/isomorphic/modern/class/ReactComponent.js similarity index 100% rename from src/modern/class/ReactComponent.js rename to src/isomorphic/modern/class/ReactComponent.js diff --git a/src/modern/class/__tests__/ReactClassEquivalence-test.js b/src/isomorphic/modern/class/__tests__/ReactClassEquivalence-test.js similarity index 100% rename from src/modern/class/__tests__/ReactClassEquivalence-test.js rename to src/isomorphic/modern/class/__tests__/ReactClassEquivalence-test.js diff --git a/src/modern/class/__tests__/ReactCoffeeScriptClass-test.coffee b/src/isomorphic/modern/class/__tests__/ReactCoffeeScriptClass-test.coffee similarity index 100% rename from src/modern/class/__tests__/ReactCoffeeScriptClass-test.coffee rename to src/isomorphic/modern/class/__tests__/ReactCoffeeScriptClass-test.coffee diff --git a/src/modern/class/__tests__/ReactES6Class-test.js b/src/isomorphic/modern/class/__tests__/ReactES6Class-test.js similarity index 100% rename from src/modern/class/__tests__/ReactES6Class-test.js rename to src/isomorphic/modern/class/__tests__/ReactES6Class-test.js diff --git a/src/modern/class/__tests__/ReactTypeScriptClass-test.ts b/src/isomorphic/modern/class/__tests__/ReactTypeScriptClass-test.ts similarity index 100% rename from src/modern/class/__tests__/ReactTypeScriptClass-test.ts rename to src/isomorphic/modern/class/__tests__/ReactTypeScriptClass-test.ts diff --git a/src/modern/element/__tests__/ReactJSXElement-test.js b/src/isomorphic/modern/element/__tests__/ReactJSXElement-test.js similarity index 100% rename from src/modern/element/__tests__/ReactJSXElement-test.js rename to src/isomorphic/modern/element/__tests__/ReactJSXElement-test.js diff --git a/src/modern/element/__tests__/ReactJSXElementValidator-test.js b/src/isomorphic/modern/element/__tests__/ReactJSXElementValidator-test.js similarity index 100% rename from src/modern/element/__tests__/ReactJSXElementValidator-test.js rename to src/isomorphic/modern/element/__tests__/ReactJSXElementValidator-test.js diff --git a/src/modern/types/__tests__/ReactFlowPropTypes-test.js b/src/isomorphic/modern/types/__tests__/ReactFlowPropTypes-test.js similarity index 100% rename from src/modern/types/__tests__/ReactFlowPropTypes-test.js rename to src/isomorphic/modern/types/__tests__/ReactFlowPropTypes-test.js diff --git a/src/modern/types/__tests__/ReactTypeScriptPropTypes-test.js b/src/isomorphic/modern/types/__tests__/ReactTypeScriptPropTypes-test.js similarity index 100% rename from src/modern/types/__tests__/ReactTypeScriptPropTypes-test.js rename to src/isomorphic/modern/types/__tests__/ReactTypeScriptPropTypes-test.js diff --git a/src/browser/ui/React.js b/src/renderers/dom/ReactDOMClient.js similarity index 67% rename from src/browser/ui/React.js rename to src/renderers/dom/ReactDOMClient.js index 7ba68cd8be..76cc83f450 100644 --- a/src/browser/ui/React.js +++ b/src/renderers/dom/ReactDOMClient.js @@ -6,77 +6,34 @@ * LICENSE file in the root directory of this source tree. An additional grant * of patent rights can be found in the PATENTS file in the same directory. * - * @providesModule React + * @providesModule ReactDOMClient */ /* globals __REACT_DEVTOOLS_GLOBAL_HOOK__*/ 'use strict'; -var ReactChildren = require('ReactChildren'); -var ReactComponent = require('ReactComponent'); -var ReactClass = require('ReactClass'); var ReactCurrentOwner = require('ReactCurrentOwner'); -var ReactElement = require('ReactElement'); -var ReactElementValidator = require('ReactElementValidator'); -var ReactDOM = require('ReactDOM'); var ReactDOMTextComponent = require('ReactDOMTextComponent'); var ReactDefaultInjection = require('ReactDefaultInjection'); var ReactInstanceHandles = require('ReactInstanceHandles'); var ReactMount = require('ReactMount'); var ReactPerf = require('ReactPerf'); -var ReactPropTypes = require('ReactPropTypes'); var ReactReconciler = require('ReactReconciler'); -var ReactServerRendering = require('ReactServerRendering'); -var assign = require('Object.assign'); var findDOMNode = require('findDOMNode'); -var onlyChild = require('onlyChild'); var warning = require('warning'); ReactDefaultInjection.inject(); -var createElement = ReactElement.createElement; -var createFactory = ReactElement.createFactory; -var cloneElement = ReactElement.cloneElement; - -if (__DEV__) { - createElement = ReactElementValidator.createElement; - createFactory = ReactElementValidator.createFactory; - cloneElement = ReactElementValidator.cloneElement; -} - var render = ReactPerf.measure('React', 'render', ReactMount.render); var React = { - Children: { - map: ReactChildren.map, - forEach: ReactChildren.forEach, - count: ReactChildren.count, - only: onlyChild - }, - Component: ReactComponent, - DOM: ReactDOM, - PropTypes: ReactPropTypes, - createClass: ReactClass.createClass, - createElement: createElement, - cloneElement: cloneElement, - createFactory: createFactory, - createMixin: function(mixin) { - // Currently a noop. Will be used to validate and trace mixins. - return mixin; - }, constructAndRenderComponent: ReactMount.constructAndRenderComponent, constructAndRenderComponentByID: ReactMount.constructAndRenderComponentByID, findDOMNode: findDOMNode, render: render, - renderToString: ReactServerRendering.renderToString, - renderToStaticMarkup: ReactServerRendering.renderToStaticMarkup, - unmountComponentAtNode: ReactMount.unmountComponentAtNode, - isValidElement: ReactElement.isValidElement, - - // Hook for JSX spread, don't use this for anything else. - __spread: assign + unmountComponentAtNode: ReactMount.unmountComponentAtNode }; // Inject the runtime into a devtools global hook regardless of browser. @@ -150,6 +107,4 @@ if (__DEV__) { } } -React.version = '0.14.0-alpha1'; - module.exports = React; diff --git a/src/renderers/dom/ReactDOMServer.js b/src/renderers/dom/ReactDOMServer.js new file mode 100644 index 0000000000..738d7532d7 --- /dev/null +++ b/src/renderers/dom/ReactDOMServer.js @@ -0,0 +1,24 @@ +/** + * Copyright 2013-2015, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under the BSD-style license found in the + * LICENSE file in the root directory of this source tree. An additional grant + * of patent rights can be found in the PATENTS file in the same directory. + * + * @providesModule ReactDOMServer + */ + +'use strict'; + +var ReactDefaultInjection = require('ReactDefaultInjection'); +var ReactServerRendering = require('ReactServerRendering'); + +ReactDefaultInjection.inject(); + +var ReactDOMServer = { + renderToString: ReactServerRendering.renderToString, + renderToStaticMarkup: ReactServerRendering.renderToStaticMarkup +}; + +module.exports = ReactDOMServer; diff --git a/src/browser/ClientReactRootIndex.js b/src/renderers/dom/client/ClientReactRootIndex.js similarity index 100% rename from src/browser/ClientReactRootIndex.js rename to src/renderers/dom/client/ClientReactRootIndex.js diff --git a/src/browser/ReactBrowserEventEmitter.js b/src/renderers/dom/client/ReactBrowserEventEmitter.js similarity index 100% rename from src/browser/ReactBrowserEventEmitter.js rename to src/renderers/dom/client/ReactBrowserEventEmitter.js diff --git a/src/browser/ui/ReactDOMIDOperations.js b/src/renderers/dom/client/ReactDOMIDOperations.js similarity index 100% rename from src/browser/ui/ReactDOMIDOperations.js rename to src/renderers/dom/client/ReactDOMIDOperations.js diff --git a/src/browser/ui/ReactDOMSelection.js b/src/renderers/dom/client/ReactDOMSelection.js similarity index 100% rename from src/browser/ui/ReactDOMSelection.js rename to src/renderers/dom/client/ReactDOMSelection.js diff --git a/src/browser/ui/ReactEventListener.js b/src/renderers/dom/client/ReactEventListener.js similarity index 100% rename from src/browser/ui/ReactEventListener.js rename to src/renderers/dom/client/ReactEventListener.js diff --git a/src/browser/ui/ReactInputSelection.js b/src/renderers/dom/client/ReactInputSelection.js similarity index 100% rename from src/browser/ui/ReactInputSelection.js rename to src/renderers/dom/client/ReactInputSelection.js diff --git a/src/browser/ui/ReactMount.js b/src/renderers/dom/client/ReactMount.js similarity index 100% rename from src/browser/ui/ReactMount.js rename to src/renderers/dom/client/ReactMount.js diff --git a/src/browser/ReactReconcileTransaction.js b/src/renderers/dom/client/ReactReconcileTransaction.js similarity index 100% rename from src/browser/ReactReconcileTransaction.js rename to src/renderers/dom/client/ReactReconcileTransaction.js diff --git a/src/browser/__tests__/ReactBrowserEventEmitter-test.js b/src/renderers/dom/client/__tests__/ReactBrowserEventEmitter-test.js similarity index 100% rename from src/browser/__tests__/ReactBrowserEventEmitter-test.js rename to src/renderers/dom/client/__tests__/ReactBrowserEventEmitter-test.js diff --git a/src/browser/__tests__/ReactDOM-test.js b/src/renderers/dom/client/__tests__/ReactDOM-test.js similarity index 100% rename from src/browser/__tests__/ReactDOM-test.js rename to src/renderers/dom/client/__tests__/ReactDOM-test.js diff --git a/src/browser/ui/__tests__/ReactDOMIDOperations-test.js b/src/renderers/dom/client/__tests__/ReactDOMIDOperations-test.js similarity index 100% rename from src/browser/ui/__tests__/ReactDOMIDOperations-test.js rename to src/renderers/dom/client/__tests__/ReactDOMIDOperations-test.js diff --git a/src/browser/__tests__/ReactDOMSVG-test.js b/src/renderers/dom/client/__tests__/ReactDOMSVG-test.js similarity index 100% rename from src/browser/__tests__/ReactDOMSVG-test.js rename to src/renderers/dom/client/__tests__/ReactDOMSVG-test.js diff --git a/src/browser/ui/__tests__/ReactEventListener-test.js b/src/renderers/dom/client/__tests__/ReactEventListener-test.js similarity index 100% rename from src/browser/ui/__tests__/ReactEventListener-test.js rename to src/renderers/dom/client/__tests__/ReactEventListener-test.js diff --git a/src/browser/ui/__tests__/ReactMount-test.js b/src/renderers/dom/client/__tests__/ReactMount-test.js similarity index 100% rename from src/browser/ui/__tests__/ReactMount-test.js rename to src/renderers/dom/client/__tests__/ReactMount-test.js diff --git a/src/browser/ui/__tests__/ReactMountDestruction-test.js b/src/renderers/dom/client/__tests__/ReactMountDestruction-test.js similarity index 100% rename from src/browser/ui/__tests__/ReactMountDestruction-test.js rename to src/renderers/dom/client/__tests__/ReactMountDestruction-test.js diff --git a/src/browser/ui/__tests__/ReactRenderDocument-test.js b/src/renderers/dom/client/__tests__/ReactRenderDocument-test.js similarity index 100% rename from src/browser/ui/__tests__/ReactRenderDocument-test.js rename to src/renderers/dom/client/__tests__/ReactRenderDocument-test.js diff --git a/src/browser/__tests__/ReactWebWorker-test.js b/src/renderers/dom/client/__tests__/ReactWebWorker-test.js similarity index 100% rename from src/browser/__tests__/ReactWebWorker-test.js rename to src/renderers/dom/client/__tests__/ReactWebWorker-test.js diff --git a/src/browser/__tests__/findDOMNode-test.js b/src/renderers/dom/client/__tests__/findDOMNode-test.js similarity index 100% rename from src/browser/__tests__/findDOMNode-test.js rename to src/renderers/dom/client/__tests__/findDOMNode-test.js diff --git a/src/browser/__tests__/validateDOMNesting-test.js b/src/renderers/dom/client/__tests__/validateDOMNesting-test.js similarity index 100% rename from src/browser/__tests__/validateDOMNesting-test.js rename to src/renderers/dom/client/__tests__/validateDOMNesting-test.js diff --git a/src/browser/eventPlugins/AnalyticsEventPluginFactory.js b/src/renderers/dom/client/eventPlugins/AnalyticsEventPluginFactory.js similarity index 100% rename from src/browser/eventPlugins/AnalyticsEventPluginFactory.js rename to src/renderers/dom/client/eventPlugins/AnalyticsEventPluginFactory.js diff --git a/src/browser/eventPlugins/BeforeInputEventPlugin.js b/src/renderers/dom/client/eventPlugins/BeforeInputEventPlugin.js similarity index 100% rename from src/browser/eventPlugins/BeforeInputEventPlugin.js rename to src/renderers/dom/client/eventPlugins/BeforeInputEventPlugin.js diff --git a/src/browser/eventPlugins/ChangeEventPlugin.js b/src/renderers/dom/client/eventPlugins/ChangeEventPlugin.js similarity index 100% rename from src/browser/eventPlugins/ChangeEventPlugin.js rename to src/renderers/dom/client/eventPlugins/ChangeEventPlugin.js diff --git a/src/browser/eventPlugins/DefaultEventPluginOrder.js b/src/renderers/dom/client/eventPlugins/DefaultEventPluginOrder.js similarity index 100% rename from src/browser/eventPlugins/DefaultEventPluginOrder.js rename to src/renderers/dom/client/eventPlugins/DefaultEventPluginOrder.js diff --git a/src/browser/eventPlugins/EnterLeaveEventPlugin.js b/src/renderers/dom/client/eventPlugins/EnterLeaveEventPlugin.js similarity index 100% rename from src/browser/eventPlugins/EnterLeaveEventPlugin.js rename to src/renderers/dom/client/eventPlugins/EnterLeaveEventPlugin.js diff --git a/src/browser/eventPlugins/FallbackCompositionState.js b/src/renderers/dom/client/eventPlugins/FallbackCompositionState.js similarity index 100% rename from src/browser/eventPlugins/FallbackCompositionState.js rename to src/renderers/dom/client/eventPlugins/FallbackCompositionState.js diff --git a/src/browser/eventPlugins/SelectEventPlugin.js b/src/renderers/dom/client/eventPlugins/SelectEventPlugin.js similarity index 100% rename from src/browser/eventPlugins/SelectEventPlugin.js rename to src/renderers/dom/client/eventPlugins/SelectEventPlugin.js diff --git a/src/browser/eventPlugins/SimpleEventPlugin.js b/src/renderers/dom/client/eventPlugins/SimpleEventPlugin.js similarity index 100% rename from src/browser/eventPlugins/SimpleEventPlugin.js rename to src/renderers/dom/client/eventPlugins/SimpleEventPlugin.js diff --git a/src/browser/eventPlugins/TapEventPlugin.js b/src/renderers/dom/client/eventPlugins/TapEventPlugin.js similarity index 100% rename from src/browser/eventPlugins/TapEventPlugin.js rename to src/renderers/dom/client/eventPlugins/TapEventPlugin.js diff --git a/src/browser/eventPlugins/__tests__/AnalyticsEventPlugin-test.js b/src/renderers/dom/client/eventPlugins/__tests__/AnalyticsEventPlugin-test.js similarity index 100% rename from src/browser/eventPlugins/__tests__/AnalyticsEventPlugin-test.js rename to src/renderers/dom/client/eventPlugins/__tests__/AnalyticsEventPlugin-test.js diff --git a/src/browser/eventPlugins/__tests__/EnterLeaveEventPlugin-test.js b/src/renderers/dom/client/eventPlugins/__tests__/EnterLeaveEventPlugin-test.js similarity index 100% rename from src/browser/eventPlugins/__tests__/EnterLeaveEventPlugin-test.js rename to src/renderers/dom/client/eventPlugins/__tests__/EnterLeaveEventPlugin-test.js diff --git a/src/browser/eventPlugins/__tests__/FallbackCompositionState-test.js b/src/renderers/dom/client/eventPlugins/__tests__/FallbackCompositionState-test.js similarity index 100% rename from src/browser/eventPlugins/__tests__/FallbackCompositionState-test.js rename to src/renderers/dom/client/eventPlugins/__tests__/FallbackCompositionState-test.js diff --git a/src/browser/eventPlugins/__tests__/SelectEventPlugin-test.js b/src/renderers/dom/client/eventPlugins/__tests__/SelectEventPlugin-test.js similarity index 100% rename from src/browser/eventPlugins/__tests__/SelectEventPlugin-test.js rename to src/renderers/dom/client/eventPlugins/__tests__/SelectEventPlugin-test.js diff --git a/src/browser/findDOMNode.js b/src/renderers/dom/client/findDOMNode.js similarity index 100% rename from src/browser/findDOMNode.js rename to src/renderers/dom/client/findDOMNode.js diff --git a/src/browser/syntheticEvents/SyntheticClipboardEvent.js b/src/renderers/dom/client/syntheticEvents/SyntheticClipboardEvent.js similarity index 100% rename from src/browser/syntheticEvents/SyntheticClipboardEvent.js rename to src/renderers/dom/client/syntheticEvents/SyntheticClipboardEvent.js diff --git a/src/browser/syntheticEvents/SyntheticCompositionEvent.js b/src/renderers/dom/client/syntheticEvents/SyntheticCompositionEvent.js similarity index 100% rename from src/browser/syntheticEvents/SyntheticCompositionEvent.js rename to src/renderers/dom/client/syntheticEvents/SyntheticCompositionEvent.js diff --git a/src/browser/syntheticEvents/SyntheticDragEvent.js b/src/renderers/dom/client/syntheticEvents/SyntheticDragEvent.js similarity index 100% rename from src/browser/syntheticEvents/SyntheticDragEvent.js rename to src/renderers/dom/client/syntheticEvents/SyntheticDragEvent.js diff --git a/src/browser/syntheticEvents/SyntheticEvent.js b/src/renderers/dom/client/syntheticEvents/SyntheticEvent.js similarity index 100% rename from src/browser/syntheticEvents/SyntheticEvent.js rename to src/renderers/dom/client/syntheticEvents/SyntheticEvent.js diff --git a/src/browser/syntheticEvents/SyntheticFocusEvent.js b/src/renderers/dom/client/syntheticEvents/SyntheticFocusEvent.js similarity index 100% rename from src/browser/syntheticEvents/SyntheticFocusEvent.js rename to src/renderers/dom/client/syntheticEvents/SyntheticFocusEvent.js diff --git a/src/browser/syntheticEvents/SyntheticInputEvent.js b/src/renderers/dom/client/syntheticEvents/SyntheticInputEvent.js similarity index 100% rename from src/browser/syntheticEvents/SyntheticInputEvent.js rename to src/renderers/dom/client/syntheticEvents/SyntheticInputEvent.js diff --git a/src/browser/syntheticEvents/SyntheticKeyboardEvent.js b/src/renderers/dom/client/syntheticEvents/SyntheticKeyboardEvent.js similarity index 100% rename from src/browser/syntheticEvents/SyntheticKeyboardEvent.js rename to src/renderers/dom/client/syntheticEvents/SyntheticKeyboardEvent.js diff --git a/src/browser/syntheticEvents/SyntheticMouseEvent.js b/src/renderers/dom/client/syntheticEvents/SyntheticMouseEvent.js similarity index 100% rename from src/browser/syntheticEvents/SyntheticMouseEvent.js rename to src/renderers/dom/client/syntheticEvents/SyntheticMouseEvent.js diff --git a/src/browser/syntheticEvents/SyntheticTouchEvent.js b/src/renderers/dom/client/syntheticEvents/SyntheticTouchEvent.js similarity index 100% rename from src/browser/syntheticEvents/SyntheticTouchEvent.js rename to src/renderers/dom/client/syntheticEvents/SyntheticTouchEvent.js diff --git a/src/browser/syntheticEvents/SyntheticUIEvent.js b/src/renderers/dom/client/syntheticEvents/SyntheticUIEvent.js similarity index 100% rename from src/browser/syntheticEvents/SyntheticUIEvent.js rename to src/renderers/dom/client/syntheticEvents/SyntheticUIEvent.js diff --git a/src/browser/syntheticEvents/SyntheticWheelEvent.js b/src/renderers/dom/client/syntheticEvents/SyntheticWheelEvent.js similarity index 100% rename from src/browser/syntheticEvents/SyntheticWheelEvent.js rename to src/renderers/dom/client/syntheticEvents/SyntheticWheelEvent.js diff --git a/src/browser/syntheticEvents/__tests__/SyntheticEvent-test.js b/src/renderers/dom/client/syntheticEvents/__tests__/SyntheticEvent-test.js similarity index 100% rename from src/browser/syntheticEvents/__tests__/SyntheticEvent-test.js rename to src/renderers/dom/client/syntheticEvents/__tests__/SyntheticEvent-test.js diff --git a/src/browser/syntheticEvents/__tests__/SyntheticWheelEvent-test.js b/src/renderers/dom/client/syntheticEvents/__tests__/SyntheticWheelEvent-test.js similarity index 100% rename from src/browser/syntheticEvents/__tests__/SyntheticWheelEvent-test.js rename to src/renderers/dom/client/syntheticEvents/__tests__/SyntheticWheelEvent-test.js diff --git a/src/browser/ui/dom/DOMChildrenOperations.js b/src/renderers/dom/client/utils/DOMChildrenOperations.js similarity index 100% rename from src/browser/ui/dom/DOMChildrenOperations.js rename to src/renderers/dom/client/utils/DOMChildrenOperations.js diff --git a/src/browser/ui/dom/ViewportMetrics.js b/src/renderers/dom/client/utils/ViewportMetrics.js similarity index 100% rename from src/browser/ui/dom/ViewportMetrics.js rename to src/renderers/dom/client/utils/ViewportMetrics.js diff --git a/src/browser/ui/dom/__tests__/getNodeForCharacterOffset-test.js b/src/renderers/dom/client/utils/__tests__/getNodeForCharacterOffset-test.js similarity index 100% rename from src/browser/ui/dom/__tests__/getNodeForCharacterOffset-test.js rename to src/renderers/dom/client/utils/__tests__/getNodeForCharacterOffset-test.js diff --git a/src/browser/ui/dom/getEventCharCode.js b/src/renderers/dom/client/utils/getEventCharCode.js similarity index 100% rename from src/browser/ui/dom/getEventCharCode.js rename to src/renderers/dom/client/utils/getEventCharCode.js diff --git a/src/browser/ui/dom/getEventKey.js b/src/renderers/dom/client/utils/getEventKey.js similarity index 100% rename from src/browser/ui/dom/getEventKey.js rename to src/renderers/dom/client/utils/getEventKey.js diff --git a/src/browser/ui/dom/getEventModifierState.js b/src/renderers/dom/client/utils/getEventModifierState.js similarity index 100% rename from src/browser/ui/dom/getEventModifierState.js rename to src/renderers/dom/client/utils/getEventModifierState.js diff --git a/src/browser/ui/dom/getEventTarget.js b/src/renderers/dom/client/utils/getEventTarget.js similarity index 100% rename from src/browser/ui/dom/getEventTarget.js rename to src/renderers/dom/client/utils/getEventTarget.js diff --git a/src/browser/ui/dom/getNodeForCharacterOffset.js b/src/renderers/dom/client/utils/getNodeForCharacterOffset.js similarity index 100% rename from src/browser/ui/dom/getNodeForCharacterOffset.js rename to src/renderers/dom/client/utils/getNodeForCharacterOffset.js diff --git a/src/browser/ui/dom/getTextContentAccessor.js b/src/renderers/dom/client/utils/getTextContentAccessor.js similarity index 100% rename from src/browser/ui/dom/getTextContentAccessor.js rename to src/renderers/dom/client/utils/getTextContentAccessor.js diff --git a/src/browser/ui/dom/isEventSupported.js b/src/renderers/dom/client/utils/isEventSupported.js similarity index 100% rename from src/browser/ui/dom/isEventSupported.js rename to src/renderers/dom/client/utils/isEventSupported.js diff --git a/src/browser/ui/dom/setInnerHTML.js b/src/renderers/dom/client/utils/setInnerHTML.js similarity index 100% rename from src/browser/ui/dom/setInnerHTML.js rename to src/renderers/dom/client/utils/setInnerHTML.js diff --git a/src/browser/ui/dom/setTextContent.js b/src/renderers/dom/client/utils/setTextContent.js similarity index 100% rename from src/browser/ui/dom/setTextContent.js rename to src/renderers/dom/client/utils/setTextContent.js diff --git a/src/browser/validateDOMNesting.js b/src/renderers/dom/client/validateDOMNesting.js similarity index 100% rename from src/browser/validateDOMNesting.js rename to src/renderers/dom/client/validateDOMNesting.js diff --git a/src/browser/ui/dom/components/AutoFocusMixin.js b/src/renderers/dom/client/wrappers/AutoFocusMixin.js similarity index 100% rename from src/browser/ui/dom/components/AutoFocusMixin.js rename to src/renderers/dom/client/wrappers/AutoFocusMixin.js diff --git a/src/browser/ui/dom/components/LinkedValueUtils.js b/src/renderers/dom/client/wrappers/LinkedValueUtils.js similarity index 100% rename from src/browser/ui/dom/components/LinkedValueUtils.js rename to src/renderers/dom/client/wrappers/LinkedValueUtils.js diff --git a/src/browser/ui/dom/components/LocalEventTrapMixin.js b/src/renderers/dom/client/wrappers/LocalEventTrapMixin.js similarity index 100% rename from src/browser/ui/dom/components/LocalEventTrapMixin.js rename to src/renderers/dom/client/wrappers/LocalEventTrapMixin.js diff --git a/src/browser/ui/dom/components/ReactDOMButton.js b/src/renderers/dom/client/wrappers/ReactDOMButton.js similarity index 100% rename from src/browser/ui/dom/components/ReactDOMButton.js rename to src/renderers/dom/client/wrappers/ReactDOMButton.js diff --git a/src/browser/ui/dom/components/ReactDOMForm.js b/src/renderers/dom/client/wrappers/ReactDOMForm.js similarity index 100% rename from src/browser/ui/dom/components/ReactDOMForm.js rename to src/renderers/dom/client/wrappers/ReactDOMForm.js diff --git a/src/browser/ui/dom/components/ReactDOMIframe.js b/src/renderers/dom/client/wrappers/ReactDOMIframe.js similarity index 100% rename from src/browser/ui/dom/components/ReactDOMIframe.js rename to src/renderers/dom/client/wrappers/ReactDOMIframe.js diff --git a/src/browser/ui/dom/components/ReactDOMImg.js b/src/renderers/dom/client/wrappers/ReactDOMImg.js similarity index 100% rename from src/browser/ui/dom/components/ReactDOMImg.js rename to src/renderers/dom/client/wrappers/ReactDOMImg.js diff --git a/src/browser/ui/dom/components/ReactDOMInput.js b/src/renderers/dom/client/wrappers/ReactDOMInput.js similarity index 100% rename from src/browser/ui/dom/components/ReactDOMInput.js rename to src/renderers/dom/client/wrappers/ReactDOMInput.js diff --git a/src/browser/ui/dom/components/ReactDOMOption.js b/src/renderers/dom/client/wrappers/ReactDOMOption.js similarity index 100% rename from src/browser/ui/dom/components/ReactDOMOption.js rename to src/renderers/dom/client/wrappers/ReactDOMOption.js diff --git a/src/browser/ui/dom/components/ReactDOMSelect.js b/src/renderers/dom/client/wrappers/ReactDOMSelect.js similarity index 100% rename from src/browser/ui/dom/components/ReactDOMSelect.js rename to src/renderers/dom/client/wrappers/ReactDOMSelect.js diff --git a/src/browser/ui/dom/components/ReactDOMTextarea.js b/src/renderers/dom/client/wrappers/ReactDOMTextarea.js similarity index 100% rename from src/browser/ui/dom/components/ReactDOMTextarea.js rename to src/renderers/dom/client/wrappers/ReactDOMTextarea.js diff --git a/src/browser/ui/dom/components/__tests__/LocalEventTrapMixin-test.js b/src/renderers/dom/client/wrappers/__tests__/LocalEventTrapMixin-test.js similarity index 100% rename from src/browser/ui/dom/components/__tests__/LocalEventTrapMixin-test.js rename to src/renderers/dom/client/wrappers/__tests__/LocalEventTrapMixin-test.js diff --git a/src/browser/ui/dom/components/__tests__/ReactDOMButton-test.js b/src/renderers/dom/client/wrappers/__tests__/ReactDOMButton-test.js similarity index 100% rename from src/browser/ui/dom/components/__tests__/ReactDOMButton-test.js rename to src/renderers/dom/client/wrappers/__tests__/ReactDOMButton-test.js diff --git a/src/browser/ui/dom/components/__tests__/ReactDOMIframe-test.js b/src/renderers/dom/client/wrappers/__tests__/ReactDOMIframe-test.js similarity index 100% rename from src/browser/ui/dom/components/__tests__/ReactDOMIframe-test.js rename to src/renderers/dom/client/wrappers/__tests__/ReactDOMIframe-test.js diff --git a/src/browser/ui/dom/components/__tests__/ReactDOMInput-test.js b/src/renderers/dom/client/wrappers/__tests__/ReactDOMInput-test.js similarity index 100% rename from src/browser/ui/dom/components/__tests__/ReactDOMInput-test.js rename to src/renderers/dom/client/wrappers/__tests__/ReactDOMInput-test.js diff --git a/src/browser/ui/dom/components/__tests__/ReactDOMOption-test.js b/src/renderers/dom/client/wrappers/__tests__/ReactDOMOption-test.js similarity index 100% rename from src/browser/ui/dom/components/__tests__/ReactDOMOption-test.js rename to src/renderers/dom/client/wrappers/__tests__/ReactDOMOption-test.js diff --git a/src/browser/ui/dom/components/__tests__/ReactDOMSelect-test.js b/src/renderers/dom/client/wrappers/__tests__/ReactDOMSelect-test.js similarity index 100% rename from src/browser/ui/dom/components/__tests__/ReactDOMSelect-test.js rename to src/renderers/dom/client/wrappers/__tests__/ReactDOMSelect-test.js diff --git a/src/browser/ui/dom/components/__tests__/ReactDOMTextarea-test.js b/src/renderers/dom/client/wrappers/__tests__/ReactDOMTextarea-test.js similarity index 100% rename from src/browser/ui/dom/components/__tests__/ReactDOMTextarea-test.js rename to src/renderers/dom/client/wrappers/__tests__/ReactDOMTextarea-test.js diff --git a/src/browser/ui/dom/components/createFullPageComponent.js b/src/renderers/dom/client/wrappers/createFullPageComponent.js similarity index 100% rename from src/browser/ui/dom/components/createFullPageComponent.js rename to src/renderers/dom/client/wrappers/createFullPageComponent.js diff --git a/src/browser/server/ReactMarkupChecksum.js b/src/renderers/dom/server/ReactMarkupChecksum.js similarity index 100% rename from src/browser/server/ReactMarkupChecksum.js rename to src/renderers/dom/server/ReactMarkupChecksum.js diff --git a/src/browser/server/ReactServerRendering.js b/src/renderers/dom/server/ReactServerRendering.js similarity index 100% rename from src/browser/server/ReactServerRendering.js rename to src/renderers/dom/server/ReactServerRendering.js diff --git a/src/browser/server/ReactServerRenderingTransaction.js b/src/renderers/dom/server/ReactServerRenderingTransaction.js similarity index 100% rename from src/browser/server/ReactServerRenderingTransaction.js rename to src/renderers/dom/server/ReactServerRenderingTransaction.js diff --git a/src/browser/server/ServerReactRootIndex.js b/src/renderers/dom/server/ServerReactRootIndex.js similarity index 100% rename from src/browser/server/ServerReactRootIndex.js rename to src/renderers/dom/server/ServerReactRootIndex.js diff --git a/src/browser/server/__tests__/ReactServerRendering-test.js b/src/renderers/dom/server/__tests__/ReactServerRendering-test.js similarity index 100% rename from src/browser/server/__tests__/ReactServerRendering-test.js rename to src/renderers/dom/server/__tests__/ReactServerRendering-test.js diff --git a/src/browser/ui/dom/CSSProperty.js b/src/renderers/dom/shared/CSSProperty.js similarity index 100% rename from src/browser/ui/dom/CSSProperty.js rename to src/renderers/dom/shared/CSSProperty.js diff --git a/src/browser/ui/dom/CSSPropertyOperations.js b/src/renderers/dom/shared/CSSPropertyOperations.js similarity index 100% rename from src/browser/ui/dom/CSSPropertyOperations.js rename to src/renderers/dom/shared/CSSPropertyOperations.js diff --git a/src/browser/ui/dom/DOMProperty.js b/src/renderers/dom/shared/DOMProperty.js similarity index 100% rename from src/browser/ui/dom/DOMProperty.js rename to src/renderers/dom/shared/DOMProperty.js diff --git a/src/browser/ui/dom/DOMPropertyOperations.js b/src/renderers/dom/shared/DOMPropertyOperations.js similarity index 100% rename from src/browser/ui/dom/DOMPropertyOperations.js rename to src/renderers/dom/shared/DOMPropertyOperations.js diff --git a/src/browser/ui/dom/Danger.js b/src/renderers/dom/shared/Danger.js similarity index 100% rename from src/browser/ui/dom/Danger.js rename to src/renderers/dom/shared/Danger.js diff --git a/src/browser/ui/dom/HTMLDOMPropertyConfig.js b/src/renderers/dom/shared/HTMLDOMPropertyConfig.js similarity index 100% rename from src/browser/ui/dom/HTMLDOMPropertyConfig.js rename to src/renderers/dom/shared/HTMLDOMPropertyConfig.js diff --git a/src/browser/ui/ReactBrowserComponentMixin.js b/src/renderers/dom/shared/ReactBrowserComponentMixin.js similarity index 100% rename from src/browser/ui/ReactBrowserComponentMixin.js rename to src/renderers/dom/shared/ReactBrowserComponentMixin.js diff --git a/src/browser/ui/ReactComponentBrowserEnvironment.js b/src/renderers/dom/shared/ReactComponentBrowserEnvironment.js similarity index 100% rename from src/browser/ui/ReactComponentBrowserEnvironment.js rename to src/renderers/dom/shared/ReactComponentBrowserEnvironment.js diff --git a/src/browser/ui/ReactDOMComponent.js b/src/renderers/dom/shared/ReactDOMComponent.js similarity index 100% rename from src/browser/ui/ReactDOMComponent.js rename to src/renderers/dom/shared/ReactDOMComponent.js diff --git a/src/browser/ui/ReactDOMTextComponent.js b/src/renderers/dom/shared/ReactDOMTextComponent.js similarity index 100% rename from src/browser/ui/ReactDOMTextComponent.js rename to src/renderers/dom/shared/ReactDOMTextComponent.js diff --git a/src/browser/ui/ReactDefaultInjection.js b/src/renderers/dom/shared/ReactDefaultInjection.js similarity index 94% rename from src/browser/ui/ReactDefaultInjection.js rename to src/renderers/dom/shared/ReactDefaultInjection.js index 9551c10f25..32f0cf99da 100644 --- a/src/browser/ui/ReactDefaultInjection.js +++ b/src/renderers/dom/shared/ReactDefaultInjection.js @@ -66,7 +66,17 @@ function autoGenerateWrapperClass(type) { }); } +var alreadyInjected = false; + function inject() { + if (alreadyInjected) { + // TODO: This is currently true because these injections are shared between + // the client and the server package. They should be built independently + // and not share any injection state. Then this problem will be solved. + return; + } + alreadyInjected = true; + ReactInjection.EventEmitter.injectReactEventListener( ReactEventListener ); diff --git a/src/browser/ui/ReactInjection.js b/src/renderers/dom/shared/ReactInjection.js similarity index 100% rename from src/browser/ui/ReactInjection.js rename to src/renderers/dom/shared/ReactInjection.js diff --git a/src/browser/ui/dom/SVGDOMPropertyConfig.js b/src/renderers/dom/shared/SVGDOMPropertyConfig.js similarity index 100% rename from src/browser/ui/dom/SVGDOMPropertyConfig.js rename to src/renderers/dom/shared/SVGDOMPropertyConfig.js diff --git a/src/browser/ui/dom/__tests__/CSSProperty-test.js b/src/renderers/dom/shared/__tests__/CSSProperty-test.js similarity index 100% rename from src/browser/ui/dom/__tests__/CSSProperty-test.js rename to src/renderers/dom/shared/__tests__/CSSProperty-test.js diff --git a/src/browser/ui/dom/__tests__/CSSPropertyOperations-test.js b/src/renderers/dom/shared/__tests__/CSSPropertyOperations-test.js similarity index 100% rename from src/browser/ui/dom/__tests__/CSSPropertyOperations-test.js rename to src/renderers/dom/shared/__tests__/CSSPropertyOperations-test.js diff --git a/src/browser/ui/dom/__tests__/DOMPropertyOperations-test.js b/src/renderers/dom/shared/__tests__/DOMPropertyOperations-test.js similarity index 100% rename from src/browser/ui/dom/__tests__/DOMPropertyOperations-test.js rename to src/renderers/dom/shared/__tests__/DOMPropertyOperations-test.js diff --git a/src/browser/ui/dom/__tests__/Danger-test.js b/src/renderers/dom/shared/__tests__/Danger-test.js similarity index 100% rename from src/browser/ui/dom/__tests__/Danger-test.js rename to src/renderers/dom/shared/__tests__/Danger-test.js diff --git a/src/browser/ui/__tests__/ReactDOMComponent-test.js b/src/renderers/dom/shared/__tests__/ReactDOMComponent-test.js similarity index 100% rename from src/browser/ui/__tests__/ReactDOMComponent-test.js rename to src/renderers/dom/shared/__tests__/ReactDOMComponent-test.js diff --git a/src/browser/ui/__tests__/ReactDOMTextComponent-test.js b/src/renderers/dom/shared/__tests__/ReactDOMTextComponent-test.js similarity index 100% rename from src/browser/ui/__tests__/ReactDOMTextComponent-test.js rename to src/renderers/dom/shared/__tests__/ReactDOMTextComponent-test.js diff --git a/src/browser/ui/dom/dangerousStyleValue.js b/src/renderers/dom/shared/dangerousStyleValue.js similarity index 100% rename from src/browser/ui/dom/dangerousStyleValue.js rename to src/renderers/dom/shared/dangerousStyleValue.js diff --git a/src/event/EventConstants.js b/src/renderers/shared/event/EventConstants.js similarity index 100% rename from src/event/EventConstants.js rename to src/renderers/shared/event/EventConstants.js diff --git a/src/event/EventPluginHub.js b/src/renderers/shared/event/EventPluginHub.js similarity index 100% rename from src/event/EventPluginHub.js rename to src/renderers/shared/event/EventPluginHub.js diff --git a/src/event/EventPluginRegistry.js b/src/renderers/shared/event/EventPluginRegistry.js similarity index 100% rename from src/event/EventPluginRegistry.js rename to src/renderers/shared/event/EventPluginRegistry.js diff --git a/src/event/EventPluginUtils.js b/src/renderers/shared/event/EventPluginUtils.js similarity index 100% rename from src/event/EventPluginUtils.js rename to src/renderers/shared/event/EventPluginUtils.js diff --git a/src/event/EventPropagators.js b/src/renderers/shared/event/EventPropagators.js similarity index 100% rename from src/event/EventPropagators.js rename to src/renderers/shared/event/EventPropagators.js diff --git a/src/event/__tests__/EventPluginHub-test.js b/src/renderers/shared/event/__tests__/EventPluginHub-test.js similarity index 100% rename from src/event/__tests__/EventPluginHub-test.js rename to src/renderers/shared/event/__tests__/EventPluginHub-test.js diff --git a/src/event/__tests__/EventPluginRegistry-test.js b/src/renderers/shared/event/__tests__/EventPluginRegistry-test.js similarity index 100% rename from src/event/__tests__/EventPluginRegistry-test.js rename to src/renderers/shared/event/__tests__/EventPluginRegistry-test.js diff --git a/src/event/eventPlugins/ResponderEventPlugin.js b/src/renderers/shared/event/eventPlugins/ResponderEventPlugin.js similarity index 100% rename from src/event/eventPlugins/ResponderEventPlugin.js rename to src/renderers/shared/event/eventPlugins/ResponderEventPlugin.js diff --git a/src/event/eventPlugins/ResponderSyntheticEvent.js b/src/renderers/shared/event/eventPlugins/ResponderSyntheticEvent.js similarity index 100% rename from src/event/eventPlugins/ResponderSyntheticEvent.js rename to src/renderers/shared/event/eventPlugins/ResponderSyntheticEvent.js diff --git a/src/event/eventPlugins/ResponderTouchHistoryStore.js b/src/renderers/shared/event/eventPlugins/ResponderTouchHistoryStore.js similarity index 100% rename from src/event/eventPlugins/ResponderTouchHistoryStore.js rename to src/renderers/shared/event/eventPlugins/ResponderTouchHistoryStore.js diff --git a/src/event/eventPlugins/__tests__/ResponderEventPlugin-test.js b/src/renderers/shared/event/eventPlugins/__tests__/ResponderEventPlugin-test.js similarity index 100% rename from src/event/eventPlugins/__tests__/ResponderEventPlugin-test.js rename to src/renderers/shared/event/eventPlugins/__tests__/ResponderEventPlugin-test.js diff --git a/src/core/ReactChildReconciler.js b/src/renderers/shared/reconciler/ReactChildReconciler.js similarity index 100% rename from src/core/ReactChildReconciler.js rename to src/renderers/shared/reconciler/ReactChildReconciler.js diff --git a/src/core/ReactComponentEnvironment.js b/src/renderers/shared/reconciler/ReactComponentEnvironment.js similarity index 100% rename from src/core/ReactComponentEnvironment.js rename to src/renderers/shared/reconciler/ReactComponentEnvironment.js diff --git a/src/core/ReactCompositeComponent.js b/src/renderers/shared/reconciler/ReactCompositeComponent.js similarity index 100% rename from src/core/ReactCompositeComponent.js rename to src/renderers/shared/reconciler/ReactCompositeComponent.js diff --git a/src/core/ReactContext.js b/src/renderers/shared/reconciler/ReactContext.js similarity index 100% rename from src/core/ReactContext.js rename to src/renderers/shared/reconciler/ReactContext.js diff --git a/src/core/ReactCurrentOwner.js b/src/renderers/shared/reconciler/ReactCurrentOwner.js similarity index 100% rename from src/core/ReactCurrentOwner.js rename to src/renderers/shared/reconciler/ReactCurrentOwner.js diff --git a/src/core/ReactDefaultBatchingStrategy.js b/src/renderers/shared/reconciler/ReactDefaultBatchingStrategy.js similarity index 100% rename from src/core/ReactDefaultBatchingStrategy.js rename to src/renderers/shared/reconciler/ReactDefaultBatchingStrategy.js diff --git a/src/core/ReactEmptyComponent.js b/src/renderers/shared/reconciler/ReactEmptyComponent.js similarity index 100% rename from src/core/ReactEmptyComponent.js rename to src/renderers/shared/reconciler/ReactEmptyComponent.js diff --git a/src/core/ReactEventEmitterMixin.js b/src/renderers/shared/reconciler/ReactEventEmitterMixin.js similarity index 100% rename from src/core/ReactEventEmitterMixin.js rename to src/renderers/shared/reconciler/ReactEventEmitterMixin.js diff --git a/src/core/ReactInstanceHandles.js b/src/renderers/shared/reconciler/ReactInstanceHandles.js similarity index 100% rename from src/core/ReactInstanceHandles.js rename to src/renderers/shared/reconciler/ReactInstanceHandles.js diff --git a/src/core/ReactInstanceMap.js b/src/renderers/shared/reconciler/ReactInstanceMap.js similarity index 100% rename from src/core/ReactInstanceMap.js rename to src/renderers/shared/reconciler/ReactInstanceMap.js diff --git a/src/core/ReactLifeCycle.js b/src/renderers/shared/reconciler/ReactLifeCycle.js similarity index 100% rename from src/core/ReactLifeCycle.js rename to src/renderers/shared/reconciler/ReactLifeCycle.js diff --git a/src/core/ReactMultiChild.js b/src/renderers/shared/reconciler/ReactMultiChild.js similarity index 100% rename from src/core/ReactMultiChild.js rename to src/renderers/shared/reconciler/ReactMultiChild.js diff --git a/src/core/ReactMultiChildUpdateTypes.js b/src/renderers/shared/reconciler/ReactMultiChildUpdateTypes.js similarity index 100% rename from src/core/ReactMultiChildUpdateTypes.js rename to src/renderers/shared/reconciler/ReactMultiChildUpdateTypes.js diff --git a/src/core/ReactNativeComponent.js b/src/renderers/shared/reconciler/ReactNativeComponent.js similarity index 100% rename from src/core/ReactNativeComponent.js rename to src/renderers/shared/reconciler/ReactNativeComponent.js diff --git a/src/core/ReactOwner.js b/src/renderers/shared/reconciler/ReactOwner.js similarity index 100% rename from src/core/ReactOwner.js rename to src/renderers/shared/reconciler/ReactOwner.js diff --git a/src/core/ReactReconciler.js b/src/renderers/shared/reconciler/ReactReconciler.js similarity index 100% rename from src/core/ReactReconciler.js rename to src/renderers/shared/reconciler/ReactReconciler.js diff --git a/src/core/ReactRef.js b/src/renderers/shared/reconciler/ReactRef.js similarity index 100% rename from src/core/ReactRef.js rename to src/renderers/shared/reconciler/ReactRef.js diff --git a/src/core/ReactRootIndex.js b/src/renderers/shared/reconciler/ReactRootIndex.js similarity index 100% rename from src/core/ReactRootIndex.js rename to src/renderers/shared/reconciler/ReactRootIndex.js diff --git a/src/core/ReactStateSetters.js b/src/renderers/shared/reconciler/ReactStateSetters.js similarity index 100% rename from src/core/ReactStateSetters.js rename to src/renderers/shared/reconciler/ReactStateSetters.js diff --git a/src/core/ReactUpdateQueue.js b/src/renderers/shared/reconciler/ReactUpdateQueue.js similarity index 100% rename from src/core/ReactUpdateQueue.js rename to src/renderers/shared/reconciler/ReactUpdateQueue.js diff --git a/src/core/ReactUpdates.js b/src/renderers/shared/reconciler/ReactUpdates.js similarity index 100% rename from src/core/ReactUpdates.js rename to src/renderers/shared/reconciler/ReactUpdates.js diff --git a/src/core/__tests__/ReactComponent-test.js b/src/renderers/shared/reconciler/__tests__/ReactComponent-test.js similarity index 100% rename from src/core/__tests__/ReactComponent-test.js rename to src/renderers/shared/reconciler/__tests__/ReactComponent-test.js diff --git a/src/core/__tests__/ReactComponentLifeCycle-test.js b/src/renderers/shared/reconciler/__tests__/ReactComponentLifeCycle-test.js similarity index 100% rename from src/core/__tests__/ReactComponentLifeCycle-test.js rename to src/renderers/shared/reconciler/__tests__/ReactComponentLifeCycle-test.js diff --git a/src/core/__tests__/ReactCompositeComponent-test.js b/src/renderers/shared/reconciler/__tests__/ReactCompositeComponent-test.js similarity index 100% rename from src/core/__tests__/ReactCompositeComponent-test.js rename to src/renderers/shared/reconciler/__tests__/ReactCompositeComponent-test.js diff --git a/src/core/__tests__/ReactCompositeComponentDOMMinimalism-test.js b/src/renderers/shared/reconciler/__tests__/ReactCompositeComponentDOMMinimalism-test.js similarity index 100% rename from src/core/__tests__/ReactCompositeComponentDOMMinimalism-test.js rename to src/renderers/shared/reconciler/__tests__/ReactCompositeComponentDOMMinimalism-test.js diff --git a/src/core/__tests__/ReactCompositeComponentError-test.js b/src/renderers/shared/reconciler/__tests__/ReactCompositeComponentError-test.js similarity index 100% rename from src/core/__tests__/ReactCompositeComponentError-test.js rename to src/renderers/shared/reconciler/__tests__/ReactCompositeComponentError-test.js diff --git a/src/core/__tests__/ReactCompositeComponentNestedState-test.js b/src/renderers/shared/reconciler/__tests__/ReactCompositeComponentNestedState-test.js similarity index 100% rename from src/core/__tests__/ReactCompositeComponentNestedState-test.js rename to src/renderers/shared/reconciler/__tests__/ReactCompositeComponentNestedState-test.js diff --git a/src/core/__tests__/ReactCompositeComponentState-test.js b/src/renderers/shared/reconciler/__tests__/ReactCompositeComponentState-test.js similarity index 100% rename from src/core/__tests__/ReactCompositeComponentState-test.js rename to src/renderers/shared/reconciler/__tests__/ReactCompositeComponentState-test.js diff --git a/src/core/__tests__/ReactEmptyComponent-test.js b/src/renderers/shared/reconciler/__tests__/ReactEmptyComponent-test.js similarity index 100% rename from src/core/__tests__/ReactEmptyComponent-test.js rename to src/renderers/shared/reconciler/__tests__/ReactEmptyComponent-test.js diff --git a/src/core/__tests__/ReactIdentity-test.js b/src/renderers/shared/reconciler/__tests__/ReactIdentity-test.js similarity index 100% rename from src/core/__tests__/ReactIdentity-test.js rename to src/renderers/shared/reconciler/__tests__/ReactIdentity-test.js diff --git a/src/core/__tests__/ReactInstanceHandles-test.js b/src/renderers/shared/reconciler/__tests__/ReactInstanceHandles-test.js similarity index 100% rename from src/core/__tests__/ReactInstanceHandles-test.js rename to src/renderers/shared/reconciler/__tests__/ReactInstanceHandles-test.js diff --git a/src/core/__tests__/ReactMockedComponent-test.js b/src/renderers/shared/reconciler/__tests__/ReactMockedComponent-test.js similarity index 100% rename from src/core/__tests__/ReactMockedComponent-test.js rename to src/renderers/shared/reconciler/__tests__/ReactMockedComponent-test.js diff --git a/src/core/__tests__/ReactMultiChild-test.js b/src/renderers/shared/reconciler/__tests__/ReactMultiChild-test.js similarity index 100% rename from src/core/__tests__/ReactMultiChild-test.js rename to src/renderers/shared/reconciler/__tests__/ReactMultiChild-test.js diff --git a/src/core/__tests__/ReactMultiChildReconcile-test.js b/src/renderers/shared/reconciler/__tests__/ReactMultiChildReconcile-test.js similarity index 100% rename from src/core/__tests__/ReactMultiChildReconcile-test.js rename to src/renderers/shared/reconciler/__tests__/ReactMultiChildReconcile-test.js diff --git a/src/core/__tests__/ReactMultiChildText-test.js b/src/renderers/shared/reconciler/__tests__/ReactMultiChildText-test.js similarity index 100% rename from src/core/__tests__/ReactMultiChildText-test.js rename to src/renderers/shared/reconciler/__tests__/ReactMultiChildText-test.js diff --git a/src/core/__tests__/ReactStateSetters-test.js b/src/renderers/shared/reconciler/__tests__/ReactStateSetters-test.js similarity index 100% rename from src/core/__tests__/ReactStateSetters-test.js rename to src/renderers/shared/reconciler/__tests__/ReactStateSetters-test.js diff --git a/src/core/__tests__/ReactUpdates-test.js b/src/renderers/shared/reconciler/__tests__/ReactUpdates-test.js similarity index 100% rename from src/core/__tests__/ReactUpdates-test.js rename to src/renderers/shared/reconciler/__tests__/ReactUpdates-test.js diff --git a/src/core/__tests__/refs-destruction-test.js b/src/renderers/shared/reconciler/__tests__/refs-destruction-test.js similarity index 100% rename from src/core/__tests__/refs-destruction-test.js rename to src/renderers/shared/reconciler/__tests__/refs-destruction-test.js diff --git a/src/core/__tests__/refs-test.js b/src/renderers/shared/reconciler/__tests__/refs-test.js similarity index 100% rename from src/core/__tests__/refs-test.js rename to src/renderers/shared/reconciler/__tests__/refs-test.js diff --git a/src/core/instantiateReactComponent.js b/src/renderers/shared/reconciler/instantiateReactComponent.js similarity index 100% rename from src/core/instantiateReactComponent.js rename to src/renderers/shared/reconciler/instantiateReactComponent.js diff --git a/src/core/shouldUpdateReactComponent.js b/src/renderers/shared/reconciler/shouldUpdateReactComponent.js similarity index 100% rename from src/core/shouldUpdateReactComponent.js rename to src/renderers/shared/reconciler/shouldUpdateReactComponent.js diff --git a/src/stubs/Object.assign.js b/src/shared/stubs/Object.assign.js similarity index 100% rename from src/stubs/Object.assign.js rename to src/shared/stubs/Object.assign.js diff --git a/src/utils/CallbackQueue.js b/src/shared/utils/CallbackQueue.js similarity index 100% rename from src/utils/CallbackQueue.js rename to src/shared/utils/CallbackQueue.js diff --git a/src/utils/PooledClass.js b/src/shared/utils/PooledClass.js similarity index 100% rename from src/utils/PooledClass.js rename to src/shared/utils/PooledClass.js diff --git a/src/utils/Transaction.js b/src/shared/utils/Transaction.js similarity index 100% rename from src/utils/Transaction.js rename to src/shared/utils/Transaction.js diff --git a/src/utils/__tests__/OrderedMap-test.js b/src/shared/utils/__tests__/OrderedMap-test.js similarity index 100% rename from src/utils/__tests__/OrderedMap-test.js rename to src/shared/utils/__tests__/OrderedMap-test.js diff --git a/src/utils/__tests__/PooledClass-test.js b/src/shared/utils/__tests__/PooledClass-test.js similarity index 100% rename from src/utils/__tests__/PooledClass-test.js rename to src/shared/utils/__tests__/PooledClass-test.js diff --git a/src/utils/__tests__/Transaction-test.js b/src/shared/utils/__tests__/Transaction-test.js similarity index 100% rename from src/utils/__tests__/Transaction-test.js rename to src/shared/utils/__tests__/Transaction-test.js diff --git a/src/utils/__tests__/accumulateInto-test.js b/src/shared/utils/__tests__/accumulateInto-test.js similarity index 100% rename from src/utils/__tests__/accumulateInto-test.js rename to src/shared/utils/__tests__/accumulateInto-test.js diff --git a/src/utils/__tests__/escapeTextContentForBrowser-test.js b/src/shared/utils/__tests__/escapeTextContentForBrowser-test.js similarity index 100% rename from src/utils/__tests__/escapeTextContentForBrowser-test.js rename to src/shared/utils/__tests__/escapeTextContentForBrowser-test.js diff --git a/src/utils/__tests__/memoizeStringOnly-test.js b/src/shared/utils/__tests__/memoizeStringOnly-test.js similarity index 100% rename from src/utils/__tests__/memoizeStringOnly-test.js rename to src/shared/utils/__tests__/memoizeStringOnly-test.js diff --git a/src/utils/__tests__/quoteAttributeValueForBrowser-test.js b/src/shared/utils/__tests__/quoteAttributeValueForBrowser-test.js similarity index 100% rename from src/utils/__tests__/quoteAttributeValueForBrowser-test.js rename to src/shared/utils/__tests__/quoteAttributeValueForBrowser-test.js diff --git a/src/utils/__tests__/shallowEqual-test.js b/src/shared/utils/__tests__/shallowEqual-test.js similarity index 100% rename from src/utils/__tests__/shallowEqual-test.js rename to src/shared/utils/__tests__/shallowEqual-test.js diff --git a/src/utils/__tests__/traverseAllChildren-test.js b/src/shared/utils/__tests__/traverseAllChildren-test.js similarity index 100% rename from src/utils/__tests__/traverseAllChildren-test.js rename to src/shared/utils/__tests__/traverseAllChildren-test.js diff --git a/src/utils/accumulate.js b/src/shared/utils/accumulate.js similarity index 100% rename from src/utils/accumulate.js rename to src/shared/utils/accumulate.js diff --git a/src/utils/accumulateInto.js b/src/shared/utils/accumulateInto.js similarity index 100% rename from src/utils/accumulateInto.js rename to src/shared/utils/accumulateInto.js diff --git a/src/utils/adler32.js b/src/shared/utils/adler32.js similarity index 100% rename from src/utils/adler32.js rename to src/shared/utils/adler32.js diff --git a/src/utils/deprecated.js b/src/shared/utils/deprecated.js similarity index 100% rename from src/utils/deprecated.js rename to src/shared/utils/deprecated.js diff --git a/src/utils/escapeTextContentForBrowser.js b/src/shared/utils/escapeTextContentForBrowser.js similarity index 100% rename from src/utils/escapeTextContentForBrowser.js rename to src/shared/utils/escapeTextContentForBrowser.js diff --git a/src/utils/flattenChildren.js b/src/shared/utils/flattenChildren.js similarity index 100% rename from src/utils/flattenChildren.js rename to src/shared/utils/flattenChildren.js diff --git a/src/utils/forEachAccumulated.js b/src/shared/utils/forEachAccumulated.js similarity index 100% rename from src/utils/forEachAccumulated.js rename to src/shared/utils/forEachAccumulated.js diff --git a/src/utils/getIteratorFn.js b/src/shared/utils/getIteratorFn.js similarity index 100% rename from src/utils/getIteratorFn.js rename to src/shared/utils/getIteratorFn.js diff --git a/src/utils/isTextInputElement.js b/src/shared/utils/isTextInputElement.js similarity index 100% rename from src/utils/isTextInputElement.js rename to src/shared/utils/isTextInputElement.js diff --git a/src/utils/memoizeStringOnly.js b/src/shared/utils/memoizeStringOnly.js similarity index 100% rename from src/utils/memoizeStringOnly.js rename to src/shared/utils/memoizeStringOnly.js diff --git a/src/utils/quoteAttributeValueForBrowser.js b/src/shared/utils/quoteAttributeValueForBrowser.js similarity index 100% rename from src/utils/quoteAttributeValueForBrowser.js rename to src/shared/utils/quoteAttributeValueForBrowser.js diff --git a/src/utils/shallowEqual.js b/src/shared/utils/shallowEqual.js similarity index 100% rename from src/utils/shallowEqual.js rename to src/shared/utils/shallowEqual.js diff --git a/src/utils/traverseAllChildren.js b/src/shared/utils/traverseAllChildren.js similarity index 100% rename from src/utils/traverseAllChildren.js rename to src/shared/utils/traverseAllChildren.js diff --git a/src/vendor/README.md b/src/shared/vendor/README.md similarity index 100% rename from src/vendor/README.md rename to src/shared/vendor/README.md diff --git a/src/vendor/core/CSSCore.js b/src/shared/vendor/core/CSSCore.js similarity index 100% rename from src/vendor/core/CSSCore.js rename to src/shared/vendor/core/CSSCore.js diff --git a/src/vendor/core/ExecutionEnvironment.js b/src/shared/vendor/core/ExecutionEnvironment.js similarity index 100% rename from src/vendor/core/ExecutionEnvironment.js rename to src/shared/vendor/core/ExecutionEnvironment.js diff --git a/src/vendor/core/TouchEventUtils.js b/src/shared/vendor/core/TouchEventUtils.js similarity index 100% rename from src/vendor/core/TouchEventUtils.js rename to src/shared/vendor/core/TouchEventUtils.js diff --git a/src/vendor/core/camelize.js b/src/shared/vendor/core/camelize.js similarity index 100% rename from src/vendor/core/camelize.js rename to src/shared/vendor/core/camelize.js diff --git a/src/vendor/core/camelizeStyleName.js b/src/shared/vendor/core/camelizeStyleName.js similarity index 100% rename from src/vendor/core/camelizeStyleName.js rename to src/shared/vendor/core/camelizeStyleName.js diff --git a/src/vendor/core/createArrayFromMixed.js b/src/shared/vendor/core/createArrayFromMixed.js similarity index 100% rename from src/vendor/core/createArrayFromMixed.js rename to src/shared/vendor/core/createArrayFromMixed.js diff --git a/src/vendor/core/createNodesFromMarkup.js b/src/shared/vendor/core/createNodesFromMarkup.js similarity index 100% rename from src/vendor/core/createNodesFromMarkup.js rename to src/shared/vendor/core/createNodesFromMarkup.js diff --git a/src/vendor/core/dom/containsNode.js b/src/shared/vendor/core/dom/containsNode.js similarity index 100% rename from src/vendor/core/dom/containsNode.js rename to src/shared/vendor/core/dom/containsNode.js diff --git a/src/vendor/core/dom/focusNode.js b/src/shared/vendor/core/dom/focusNode.js similarity index 100% rename from src/vendor/core/dom/focusNode.js rename to src/shared/vendor/core/dom/focusNode.js diff --git a/src/vendor/core/dom/getActiveElement.js b/src/shared/vendor/core/dom/getActiveElement.js similarity index 100% rename from src/vendor/core/dom/getActiveElement.js rename to src/shared/vendor/core/dom/getActiveElement.js diff --git a/src/vendor/core/dom/getUnboundedScrollPosition.js b/src/shared/vendor/core/dom/getUnboundedScrollPosition.js similarity index 100% rename from src/vendor/core/dom/getUnboundedScrollPosition.js rename to src/shared/vendor/core/dom/getUnboundedScrollPosition.js diff --git a/src/vendor/core/dom/isNode.js b/src/shared/vendor/core/dom/isNode.js similarity index 100% rename from src/vendor/core/dom/isNode.js rename to src/shared/vendor/core/dom/isNode.js diff --git a/src/vendor/core/dom/isTextNode.js b/src/shared/vendor/core/dom/isTextNode.js similarity index 100% rename from src/vendor/core/dom/isTextNode.js rename to src/shared/vendor/core/dom/isTextNode.js diff --git a/src/vendor/core/emptyFunction.js b/src/shared/vendor/core/emptyFunction.js similarity index 100% rename from src/vendor/core/emptyFunction.js rename to src/shared/vendor/core/emptyFunction.js diff --git a/src/vendor/core/emptyObject.js b/src/shared/vendor/core/emptyObject.js similarity index 100% rename from src/vendor/core/emptyObject.js rename to src/shared/vendor/core/emptyObject.js diff --git a/src/vendor/core/getMarkupWrap.js b/src/shared/vendor/core/getMarkupWrap.js similarity index 100% rename from src/vendor/core/getMarkupWrap.js rename to src/shared/vendor/core/getMarkupWrap.js diff --git a/src/vendor/core/hyphenate.js b/src/shared/vendor/core/hyphenate.js similarity index 100% rename from src/vendor/core/hyphenate.js rename to src/shared/vendor/core/hyphenate.js diff --git a/src/vendor/core/hyphenateStyleName.js b/src/shared/vendor/core/hyphenateStyleName.js similarity index 100% rename from src/vendor/core/hyphenateStyleName.js rename to src/shared/vendor/core/hyphenateStyleName.js diff --git a/src/vendor/core/invariant.js b/src/shared/vendor/core/invariant.js similarity index 100% rename from src/vendor/core/invariant.js rename to src/shared/vendor/core/invariant.js diff --git a/src/vendor/core/mapObject.js b/src/shared/vendor/core/mapObject.js similarity index 100% rename from src/vendor/core/mapObject.js rename to src/shared/vendor/core/mapObject.js diff --git a/src/vendor/core/monitorCodeUse.js b/src/shared/vendor/core/monitorCodeUse.js similarity index 100% rename from src/vendor/core/monitorCodeUse.js rename to src/shared/vendor/core/monitorCodeUse.js diff --git a/src/vendor/core/nativeRequestAnimationFrame.js b/src/shared/vendor/core/nativeRequestAnimationFrame.js similarity index 100% rename from src/vendor/core/nativeRequestAnimationFrame.js rename to src/shared/vendor/core/nativeRequestAnimationFrame.js diff --git a/src/vendor/core/requestAnimationFrame.js b/src/shared/vendor/core/requestAnimationFrame.js similarity index 100% rename from src/vendor/core/requestAnimationFrame.js rename to src/shared/vendor/core/requestAnimationFrame.js diff --git a/src/vendor/core/toArray.js b/src/shared/vendor/core/toArray.js similarity index 100% rename from src/vendor/core/toArray.js rename to src/shared/vendor/core/toArray.js diff --git a/src/vendor/core/warning.js b/src/shared/vendor/core/warning.js similarity index 100% rename from src/vendor/core/warning.js rename to src/shared/vendor/core/warning.js diff --git a/src/vendor/key-mirror/__tests__/keyMirror-test.js b/src/shared/vendor/key-mirror/__tests__/keyMirror-test.js similarity index 100% rename from src/vendor/key-mirror/__tests__/keyMirror-test.js rename to src/shared/vendor/key-mirror/__tests__/keyMirror-test.js diff --git a/src/vendor/key-mirror/keyMirror.js b/src/shared/vendor/key-mirror/keyMirror.js similarity index 100% rename from src/vendor/key-mirror/keyMirror.js rename to src/shared/vendor/key-mirror/keyMirror.js diff --git a/src/vendor/key-mirror/keyOf.js b/src/shared/vendor/key-mirror/keyOf.js similarity index 100% rename from src/vendor/key-mirror/keyOf.js rename to src/shared/vendor/key-mirror/keyOf.js diff --git a/src/vendor/performance/performance.js b/src/shared/vendor/performance/performance.js similarity index 100% rename from src/vendor/performance/performance.js rename to src/shared/vendor/performance/performance.js diff --git a/src/vendor/performance/performanceNow.js b/src/shared/vendor/performance/performanceNow.js similarity index 100% rename from src/vendor/performance/performanceNow.js rename to src/shared/vendor/performance/performanceNow.js diff --git a/src/vendor/stubs/EventListener.js b/src/shared/vendor/stubs/EventListener.js similarity index 100% rename from src/vendor/stubs/EventListener.js rename to src/shared/vendor/stubs/EventListener.js diff --git a/src/vendor/stubs/ReactErrorUtils.js b/src/shared/vendor/stubs/ReactErrorUtils.js similarity index 100% rename from src/vendor/stubs/ReactErrorUtils.js rename to src/shared/vendor/stubs/ReactErrorUtils.js diff --git a/src/vendor/third_party/webcomponents.js b/src/shared/vendor/third_party/webcomponents.js similarity index 100% rename from src/vendor/third_party/webcomponents.js rename to src/shared/vendor/third_party/webcomponents.js