Drop Haste (#11303)

* Use relative paths in packages/react

* Use relative paths in packages/react-art

* Use relative paths in packages/react-cs

* Use relative paths in other packages

* Fix as many issues as I can

This uncovered an interesting problem where ./b from package/src/a would resolve to a different instantiation of package/src/b in Jest.

Either this is a showstopper or we can solve it by completely fobbidding remaining /src/.

* Fix all tests

It seems we can't use relative requires in tests anymore. Otherwise Jest becomes confused between real file and symlink.
https://github.com/facebook/jest/issues/3830

This seems bad... Except that we already *don't* want people to create tests that import individual source files.
All existing cases of us doing so are actually TODOs waiting to be fixed.

So perhaps this requirement isn't too bad because it makes bad code looks bad.

Of course, if we go with this, we'll have to lint against relative requires in tests.
It also makes moving things more painful.

* Prettier

* Remove @providesModule

* Fix remaining Haste imports I missed earlier

* Fix up paths to reflect new flat structure

* Fix Flow

* Fix CJS and UMD builds

* Fix FB bundles

* Fix RN bundles

* Prettier

* Fix lint

* Fix warning printing and error codes

* Fix buggy return

* Fix lint and Flow

* Use Yarn on CI

* Unbreak Jest

* Fix lint

* Fix aliased originals getting included in DEV

Shouldn't affect correctness (they were ignored) but fixes DEV size regression.

* Record sizes

* Fix weird version in package.json

* Tweak bundle labels

* Get rid of output option by introducing react-dom/server.node

* Reconciler should depend on prop-types

* Update sizes last time
This commit is contained in:
Dan Abramov 2017-10-25 02:55:00 +03:00 committed by GitHub
parent 37baacb096
commit 1eed302d34
262 changed files with 1181 additions and 1810 deletions

View File

@ -116,7 +116,7 @@
".*": "./scripts/jest/preprocessor.js"
},
"transformIgnorePatterns": [
"/node_modules/(?!react)"
"/node_modules/(?!react|shared|events)"
],
"setupFiles": [
"./scripts/jest/setup.js",

View File

@ -3,18 +3,16 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule EventPluginHub
*/
'use strict';
var EventPluginRegistry = require('EventPluginRegistry');
var EventPluginUtils = require('EventPluginUtils');
var ReactErrorUtils = require('ReactErrorUtils');
var EventPluginRegistry = require('./EventPluginRegistry');
var EventPluginUtils = require('./EventPluginUtils');
var ReactErrorUtils = require('shared/ReactErrorUtils');
var accumulateInto = require('accumulateInto');
var forEachAccumulated = require('forEachAccumulated');
var accumulateInto = require('./accumulateInto');
var forEachAccumulated = require('./forEachAccumulated');
var invariant = require('fbjs/lib/invariant');
/**

View File

@ -4,15 +4,18 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule EventPluginRegistry
* @flow
*/
'use strict';
import type {DispatchConfig} from 'ReactSyntheticEventType';
import type {DispatchConfig} from './ReactSyntheticEventType';
import type {AnyNativeEvent, PluginName, PluginModule} from 'PluginModuleType';
import type {
AnyNativeEvent,
PluginName,
PluginModule,
} from './PluginModuleType';
type NamesToPlugins = {[key: PluginName]: PluginModule<AnyNativeEvent>};

View File

@ -3,13 +3,11 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule EventPluginUtils
*/
'use strict';
var ReactErrorUtils = require('ReactErrorUtils');
var ReactErrorUtils = require('shared/ReactErrorUtils');
var invariant = require('fbjs/lib/invariant');

View File

@ -3,17 +3,15 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule EventPropagators
*/
'use strict';
var EventPluginHub = require('EventPluginHub');
var ReactTreeTraversal = require('ReactTreeTraversal');
var EventPluginHub = require('./EventPluginHub');
var ReactTreeTraversal = require('shared/ReactTreeTraversal');
var accumulateInto = require('accumulateInto');
var forEachAccumulated = require('forEachAccumulated');
var accumulateInto = require('./accumulateInto');
var forEachAccumulated = require('./forEachAccumulated');
type PropagationPhases = 'bubbled' | 'captured';

View File

@ -4,17 +4,16 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule PluginModuleType
* @flow
*/
'use strict';
import type {Fiber} from 'ReactFiber';
import type {Fiber} from 'react-reconciler/src/ReactFiber';
import type {
DispatchConfig,
ReactSyntheticEvent,
} from 'ReactSyntheticEventType';
} from './ReactSyntheticEventType';
export type EventTypes = {[key: string]: DispatchConfig};

View File

@ -3,13 +3,11 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule ReactControlledComponent
*/
'use strict';
var EventPluginUtils = require('EventPluginUtils');
var EventPluginUtils = require('./EventPluginUtils');
var invariant = require('fbjs/lib/invariant');

View File

@ -3,13 +3,11 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule ReactEventEmitterMixin
*/
'use strict';
var EventPluginHub = require('EventPluginHub');
var EventPluginHub = require('./EventPluginHub');
function runEventQueueInBatch(events) {
EventPluginHub.enqueueEvents(events);

View File

@ -3,13 +3,11 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule ReactGenericBatching
*/
'use strict';
var ReactControlledComponent = require('ReactControlledComponent');
var ReactControlledComponent = require('./ReactControlledComponent');
// Used as a way to call batchedUpdates when we don't have a reference to
// the renderer. Such as when we're dispatching events or if third party

View File

@ -5,14 +5,12 @@
* LICENSE file in the root directory of this source tree.
*
* Flow type for SyntheticEvent class that includes private properties
*
* @providesModule ReactSyntheticEventType
* @flow
*/
'use strict';
import type {Fiber} from 'ReactFiber';
import type {Fiber} from 'react-reconciler/src/ReactFiber';
export type DispatchConfig = {
dependencies: Array<string>,

View File

@ -3,19 +3,17 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule ResponderEventPlugin
*/
'use strict';
var EventPluginUtils = require('EventPluginUtils');
var EventPropagators = require('EventPropagators');
var ReactTreeTraversal = require('ReactTreeTraversal');
var ResponderSyntheticEvent = require('ResponderSyntheticEvent');
var ResponderTouchHistoryStore = require('ResponderTouchHistoryStore');
var EventPluginUtils = require('./EventPluginUtils');
var EventPropagators = require('./EventPropagators');
var ReactTreeTraversal = require('shared/ReactTreeTraversal');
var ResponderSyntheticEvent = require('./ResponderSyntheticEvent');
var ResponderTouchHistoryStore = require('./ResponderTouchHistoryStore');
var accumulate = require('accumulate');
var accumulate = require('./accumulate');
var isStartish = EventPluginUtils.isStartish;
var isMoveish = EventPluginUtils.isMoveish;

View File

@ -3,13 +3,11 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule ResponderSyntheticEvent
*/
'use strict';
var SyntheticEvent = require('SyntheticEvent');
var SyntheticEvent = require('./SyntheticEvent');
/**
* `touchHistory` isn't actually on the native event, but putting it in the

View File

@ -4,13 +4,12 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule ResponderTouchHistoryStore
* @flow
*/
'use strict';
const EventPluginUtils = require('EventPluginUtils');
const EventPluginUtils = require('./EventPluginUtils');
const invariant = require('fbjs/lib/invariant');

View File

@ -3,8 +3,6 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule SyntheticEvent
*/
/* eslint valid-typeof: 0 */

View File

@ -16,7 +16,7 @@ describe('EventPluginRegistry', () => {
beforeEach(() => {
jest.resetModuleRegistry();
// TODO: can we express this test with only public API?
EventPluginRegistry = require('EventPluginRegistry');
EventPluginRegistry = require('events/EventPluginRegistry');
createPlugin = function(properties) {
return Object.assign({extractEvents: function() {}}, properties);

View File

@ -9,7 +9,7 @@
'use strict';
var {HostComponent} = require('ReactTypeOfWork');
var {HostComponent} = require('shared/ReactTypeOfWork');
var EventPluginHub;
var ResponderEventPlugin;

View File

@ -13,7 +13,7 @@ var accumulateInto;
describe('accumulateInto', () => {
beforeEach(() => {
accumulateInto = require('accumulateInto');
accumulateInto = require('events/accumulateInto');
});
it('throws if the second item is null', () => {

View File

@ -4,7 +4,6 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule accumulate
* @flow
*/

View File

@ -4,7 +4,6 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule accumulateInto
* @flow
*/

View File

@ -4,7 +4,6 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule forEachAccumulated
* @flow
*/

View File

@ -0,0 +1,5 @@
{
"private": true,
"name": "events",
"version": "0.0.0"
}

View File

@ -3,8 +3,6 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule Circle.art
* @typechecks
*
* Example usage:

View File

@ -3,8 +3,6 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule Rectangle.art
* @typechecks
*
* Example usage:

View File

@ -3,8 +3,6 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule Wedge.art
* @typechecks
*
* Example usage:

View File

@ -26,6 +26,7 @@
"prop-types": "^15.6.0"
},
"peerDependencies": {
"art": "^0.10.1",
"react": "^16.0.0"
},
"files": [

View File

@ -18,7 +18,7 @@ const invariant = require('fbjs/lib/invariant');
const emptyObject = require('fbjs/lib/emptyObject');
const React = require('react');
const ReactFiberReconciler = require('react-reconciler');
const ReactDOMFrameScheduling = require('ReactDOMFrameScheduling');
const ReactDOMFrameScheduling = require('shared/ReactDOMFrameScheduling');
const {Component} = React;

View File

@ -5,6 +5,10 @@
"repository": "facebook/react",
"dependencies": {
"fbjs": "^0.8.16",
"object-assign": "^4.1.1"
"object-assign": "^4.1.1",
"prop-types": "^15.6.0"
},
"peerDependencies": {
"react": "^16.0.0"
}
}

View File

@ -9,12 +9,15 @@
'use strict';
const ReactGenericBatching = require('ReactGenericBatching');
const ReactVersion = require('ReactVersion');
const ReactGenericBatching = require('events/ReactGenericBatching');
const ReactVersion = require('shared/ReactVersion');
const {injectInternals} = require('ReactFiberDevToolsHook');
// TODO: direct imports like some-package/src/* are bad. Fix me.
const {
injectInternals,
} = require('react-reconciler/src/ReactFiberDevToolsHook');
import type {ReactNativeCSType} from 'ReactNativeCSTypes';
import type {ReactNativeCSType} from './ReactNativeCSTypes';
const ReactFiberReconciler = require('react-reconciler');

View File

@ -4,13 +4,12 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule ReactNativeCSFeatureFlags
* @flow
*/
'use strict';
import type {FeatureFlags} from 'ReactFeatureFlags';
import type {FeatureFlags} from 'shared/ReactFeatureFlags';
var ReactNativeCSFeatureFlags: FeatureFlags = {
enableAsyncSubtreeAPI: true,

View File

@ -4,7 +4,6 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule ReactNativeCSTypes
* @flow
*/
'use strict';

View File

@ -12,7 +12,9 @@
var React;
var ReactNativeCS;
jest.mock('ReactFeatureFlags', () => require('ReactNativeCSFeatureFlags'));
jest.mock('shared/ReactFeatureFlags', () =>
require('react-cs-renderer/src/ReactNativeCSFeatureFlags'),
);
describe('ReactNativeCS', () => {
beforeEach(() => {

View File

@ -11,16 +11,17 @@ var ReactDOM = require('./src/client/ReactDOM');
Object.assign(ReactDOM.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED, {
// These are real internal dependencies that are trickier to remove:
ReactBrowserEventEmitter: require('ReactBrowserEventEmitter'),
ReactErrorUtils: require('ReactErrorUtils'),
ReactFiberErrorLogger: require('ReactFiberErrorLogger'),
ReactFiberTreeReflection: require('ReactFiberTreeReflection'),
ReactDOMComponentTree: require('ReactDOMComponentTree'),
ReactInstanceMap: require('ReactInstanceMap'),
ReactBrowserEventEmitter: require('./src/events/ReactBrowserEventEmitter'),
ReactErrorUtils: require('shared/ReactErrorUtils'),
// TODO: direct imports like some-package/src/* are bad. Fix me.
ReactFiberErrorLogger: require('react-reconciler/src/ReactFiberErrorLogger'),
ReactFiberTreeReflection: require('shared/ReactFiberTreeReflection'),
ReactDOMComponentTree: require('./src/client/ReactDOMComponentTree'),
ReactInstanceMap: require('shared/ReactInstanceMap'),
// These are dependencies of TapEventPlugin:
EventPluginUtils: require('EventPluginUtils'),
EventPropagators: require('EventPropagators'),
SyntheticUIEvent: require('SyntheticUIEvent'),
EventPluginUtils: require('events/EventPluginUtils'),
EventPropagators: require('events/EventPropagators'),
SyntheticUIEvent: require('./src/events/SyntheticUIEvent'),
});
module.exports = ReactDOM;

View File

@ -1,7 +1,3 @@
'use strict';
if (process.env.NODE_ENV === 'production') {
module.exports = require('./cjs/react-dom-server.node.production.min.js');
} else {
module.exports = require('./cjs/react-dom-server.node.development.js');
}
module.exports = require('./server.node');

View File

@ -0,0 +1,7 @@
'use strict';
if (process.env.NODE_ENV === 'production') {
module.exports = require('./cjs/react-dom-server.node.production.min.js');
} else {
module.exports = require('./cjs/react-dom-server.node.development.js');
}

View File

@ -27,6 +27,7 @@
"index.js",
"server.js",
"server.browser.js",
"server.node.js",
"test-utils.js",
"unstable-native-dependencies.js",
"cjs/",

View File

@ -9,4 +9,4 @@
'use strict';
module.exports = require('./src/server/ReactDOMServerNode');
module.exports = require('./server.node');

View File

@ -0,0 +1,12 @@
/**
* Copyright (c) 2013-present, Facebook, Inc.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @flow
*/
'use strict';
module.exports = require('./src/server/ReactDOMServerNode');

View File

@ -9,7 +9,7 @@
'use strict';
jest.mock('isEventSupported');
jest.mock('react-dom/src/events/isEventSupported');
describe('EventPluginHub', () => {
var React;

View File

@ -59,14 +59,14 @@ describe('ReactBrowserEventEmitter', () => {
LISTENER.mockClear();
EventListener = require('fbjs/lib/EventListener');
// TODO: can we express this test with only public API?
EventPluginHub = require('EventPluginHub');
EventPluginRegistry = require('EventPluginRegistry');
EventPluginHub = require('events/EventPluginHub');
EventPluginRegistry = require('events/EventPluginRegistry');
React = require('react');
ReactDOM = require('react-dom');
ReactDOMComponentTree = require('ReactDOMComponentTree');
ReactBrowserEventEmitter = require('ReactBrowserEventEmitter');
ReactDOMComponentTree = require('react-dom/src/client/ReactDOMComponentTree');
ReactBrowserEventEmitter = require('react-dom/src/events/ReactBrowserEventEmitter');
ReactTestUtils = require('react-dom/test-utils');
TapEventPlugin = require('TapEventPlugin');
TapEventPlugin = require('react-dom/src/events/TapEventPlugin');
var container = document.createElement('div');

View File

@ -27,7 +27,7 @@ describe('ReactDOMComponent', () => {
ReactDOMServer = require('react-dom/server');
ReactTestUtils = require('react-dom/test-utils');
// TODO: can we express this test with only public API?
inputValueTracking = require('inputValueTracking');
inputValueTracking = require('react-dom/src/client/inputValueTracking');
});
describe('updateDOM', () => {

View File

@ -34,7 +34,7 @@ describe('ReactDOMComponentTree', () => {
React = require('react');
ReactDOM = require('react-dom');
// TODO: can we express this test with only public API?
ReactDOMComponentTree = require('ReactDOMComponentTree');
ReactDOMComponentTree = require('react-dom/src/client/ReactDOMComponentTree');
ReactDOMServer = require('react-dom/server');
});

View File

@ -24,8 +24,8 @@ describe('ReactDOMEventListener', () => {
React = require('react');
ReactDOM = require('react-dom');
// TODO: can we express this test with only public API?
ReactDOMComponentTree = require('ReactDOMComponentTree');
ReactDOMEventListener = require('ReactDOMEventListener');
ReactDOMComponentTree = require('react-dom/src/client/ReactDOMComponentTree');
ReactDOMEventListener = require('react-dom/src/events/ReactDOMEventListener');
ReactTestUtils = require('react-dom/test-utils');
handleTopLevel = jest.fn();

View File

@ -1,5 +1,16 @@
/**
* Copyright (c) 2013-present, Facebook, Inc.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @emails react-core
*/
'use strict';
var React = require('react');
var ReactFeatureFlags = require('ReactFeatureFlags');
var ReactFeatureFlags = require('shared/ReactFeatureFlags');
var ReactDOM;
@ -27,7 +38,7 @@ describe('ReactDOMFiberAsync', () => {
describe('with feature flag disabled', () => {
beforeEach(() => {
jest.resetModules();
ReactFeatureFlags = require('ReactFeatureFlags');
ReactFeatureFlags = require('shared/ReactFeatureFlags');
container = document.createElement('div');
ReactFeatureFlags.enableAsyncSubtreeAPI = false;
ReactDOM = require('react-dom');
@ -51,7 +62,7 @@ describe('ReactDOMFiberAsync', () => {
describe('with feature flag enabled', () => {
beforeEach(() => {
jest.resetModules();
ReactFeatureFlags = require('ReactFeatureFlags');
ReactFeatureFlags = require('shared/ReactFeatureFlags');
container = document.createElement('div');
ReactFeatureFlags.enableAsyncSubtreeAPI = true;
ReactDOM = require('react-dom');

View File

@ -36,7 +36,7 @@ describe('ReactDOMInput', () => {
ReactDOMServer = require('react-dom/server');
ReactTestUtils = require('react-dom/test-utils');
// TODO: can we express this test with only public API?
inputValueTracking = require('inputValueTracking');
inputValueTracking = require('react-dom/src/client/inputValueTracking');
spyOn(console, 'error');
});

View File

@ -20,8 +20,8 @@ describe('ReactDOMSelection', () => {
beforeEach(() => {
React = require('react');
ReactDOM = require('react-dom');
ReactDOMSelection = require('ReactDOMSelection');
invariant = require('invariant');
ReactDOMSelection = require('react-dom/src/client/ReactDOMSelection');
invariant = require('fbjs/lib/invariant');
({getModernOffsetsFromPoints} = ReactDOMSelection);
});

View File

@ -314,7 +314,7 @@ function resetModules() {
jest.resetModuleRegistry();
// TODO: can we express this test with only public API?
ExecutionEnvironment = require('ExecutionEnvironment');
ExecutionEnvironment = require('fbjs/lib/ExecutionEnvironment');
PropTypes = require('prop-types');
React = require('react');

View File

@ -9,7 +9,7 @@
'use strict';
const {COMMENT_NODE} = require('HTMLNodeType');
const {COMMENT_NODE} = require('react-dom/src/shared/HTMLNodeType');
const invariant = require('invariant');

View File

@ -34,7 +34,7 @@ describe('ReactDOMServer', () => {
ExecutionEnvironment.canUseDOM = false;
ReactDOMServer = require('react-dom/server');
var DOMProperty = require('DOMProperty');
var DOMProperty = require('react-dom/src/shared/DOMProperty');
ROOT_ATTRIBUTE_NAME = DOMProperty.ROOT_ATTRIBUTE_NAME;
});

View File

@ -11,7 +11,7 @@
var React = require('react');
// TODO: can we express this test with only public API?
var ReactDOMComponentTree = require('ReactDOMComponentTree');
var ReactDOMComponentTree = require('react-dom/src/client/ReactDOMComponentTree');
var ReactTestUtils = require('react-dom/test-utils');
/**
@ -62,7 +62,7 @@ describe('ReactTreeTraversal', () => {
}
beforeEach(() => {
ReactTreeTraversal = require('ReactTreeTraversal');
ReactTreeTraversal = require('shared/ReactTreeTraversal');
mockFn.mockReset();
});

View File

@ -11,7 +11,7 @@
describe('escapeTextContentForBrowser', () => {
// TODO: can we express this test with only public API?
var escapeTextContentForBrowser = require('escapeTextContentForBrowser');
var escapeTextContentForBrowser = require('react-dom/src/shared/escapeTextContentForBrowser');
it('should escape boolean to string', () => {
expect(escapeTextContentForBrowser(true)).toBe('true');

View File

@ -13,7 +13,7 @@ var React = require('react');
var ReactDOM = require('react-dom');
var ReactTestUtils = require('react-dom/test-utils');
// TODO: can we express this test with only public API?
var inputValueTracking = require('inputValueTracking');
var inputValueTracking = require('react-dom/src/client/inputValueTracking');
var getTracker = inputValueTracking._getTrackerFromNode;

View File

@ -11,7 +11,7 @@
describe('quoteAttributeValueForBrowser', () => {
// TODO: can we express this test with only public API?
var quoteAttributeValueForBrowser = require('quoteAttributeValueForBrowser');
var quoteAttributeValueForBrowser = require('react-dom/src/shared/quoteAttributeValueForBrowser');
it('should escape boolean to string', () => {
expect(quoteAttributeValueForBrowser(true)).toBe('"true"');

View File

@ -136,7 +136,7 @@ describe('ReactContextValidator', () => {
jest.resetModules();
// TODO: can we express this test with only public API?
validateDOMNesting = require('validateDOMNesting');
validateDOMNesting = require('react-dom/src/client/validateDOMNesting');
});
it('allows any tag with no context', () => {

View File

@ -3,13 +3,11 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule DOMPropertyOperations
*/
'use strict';
var DOMProperty = require('DOMProperty');
var DOMProperty = require('../shared/DOMProperty');
if (__DEV__) {
var warning = require('fbjs/lib/warning');

View File

@ -9,35 +9,37 @@
'use strict';
import type {ReactNodeList} from 'ReactTypes';
import type {ReactNodeList} from 'shared/ReactTypes';
require('checkReact');
var DOMNamespaces = require('DOMNamespaces');
require('../shared/checkReact');
var DOMNamespaces = require('../shared/DOMNamespaces');
var ExecutionEnvironment = require('fbjs/lib/ExecutionEnvironment');
var ReactBrowserEventEmitter = require('ReactBrowserEventEmitter');
var ReactControlledComponent = require('ReactControlledComponent');
var ReactFeatureFlags = require('ReactFeatureFlags');
var ReactDOMComponentTree = require('ReactDOMComponentTree');
var ReactDOMFiberComponent = require('ReactDOMFiberComponent');
var ReactDOMFrameScheduling = require('ReactDOMFrameScheduling');
var ReactGenericBatching = require('ReactGenericBatching');
var ReactBrowserEventEmitter = require('../events/ReactBrowserEventEmitter');
var ReactControlledComponent = require('events/ReactControlledComponent');
var ReactFeatureFlags = require('shared/ReactFeatureFlags');
var ReactDOMComponentTree = require('./ReactDOMComponentTree');
var ReactDOMFiberComponent = require('./ReactDOMFiberComponent');
var ReactDOMFrameScheduling = require('shared/ReactDOMFrameScheduling');
var ReactGenericBatching = require('events/ReactGenericBatching');
var ReactFiberReconciler = require('react-reconciler');
var ReactInputSelection = require('ReactInputSelection');
var ReactInstanceMap = require('ReactInstanceMap');
var ReactPortal = require('ReactPortal');
var ReactVersion = require('ReactVersion');
var {ReactCurrentOwner} = require('ReactGlobalSharedState');
var {injectInternals} = require('ReactFiberDevToolsHook');
var ReactInputSelection = require('./ReactInputSelection');
var ReactInstanceMap = require('shared/ReactInstanceMap');
var ReactVersion = require('shared/ReactVersion');
var {ReactCurrentOwner} = require('shared/ReactGlobalSharedState');
var {
ELEMENT_NODE,
TEXT_NODE,
COMMENT_NODE,
DOCUMENT_NODE,
DOCUMENT_FRAGMENT_NODE,
} = require('HTMLNodeType');
var {ROOT_ATTRIBUTE_NAME} = require('DOMProperty');
} = require('../shared/HTMLNodeType');
var {ROOT_ATTRIBUTE_NAME} = require('../shared/DOMProperty');
var getComponentName = require('getComponentName');
// TODO: direct imports like some-package/src/* are bad. Fix me.
var ReactPortal = require('react-reconciler/src/ReactPortal');
var {injectInternals} = require('react-reconciler/src/ReactFiberDevToolsHook');
var getComponentName = require('shared/getComponentName');
var invariant = require('fbjs/lib/invariant');
var {getChildNamespace} = DOMNamespaces;
@ -59,9 +61,9 @@ var {precacheFiberNode, updateFiberProps} = ReactDOMComponentTree;
if (__DEV__) {
var SUPPRESS_HYDRATION_WARNING = 'suppressHydrationWarning';
var lowPriorityWarning = require('lowPriorityWarning');
var lowPriorityWarning = require('shared/lowPriorityWarning');
var warning = require('fbjs/lib/warning');
var validateDOMNesting = require('validateDOMNesting');
var validateDOMNesting = require('./validateDOMNesting');
var {updatedAncestorInfo} = validateDOMNesting;
if (
@ -81,8 +83,8 @@ if (__DEV__) {
}
}
require('ReactDOMClientInjection');
require('ReactDOMInjection');
require('./ReactDOMClientInjection');
require('../shared/ReactDOMInjection');
ReactControlledComponent.injection.injectFiberControlledHostComponent(
ReactDOMFiberComponent,
);
@ -938,13 +940,13 @@ var ReactDOM = {
__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED: {
// For TapEventPlugin which is popular in open source
EventPluginHub: require('EventPluginHub'),
EventPluginHub: require('events/EventPluginHub'),
// Used by test-utils
EventPluginRegistry: require('EventPluginRegistry'),
EventPropagators: require('EventPropagators'),
EventPluginRegistry: require('events/EventPluginRegistry'),
EventPropagators: require('events/EventPropagators'),
ReactControlledComponent,
ReactDOMComponentTree,
ReactDOMEventListener: require('ReactDOMEventListener'),
ReactDOMEventListener: require('../events/ReactDOMEventListener'),
},
};

View File

@ -3,23 +3,21 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule ReactDOMClientInjection
*/
'use strict';
var BeforeInputEventPlugin = require('BeforeInputEventPlugin');
var ChangeEventPlugin = require('ChangeEventPlugin');
var DOMEventPluginOrder = require('DOMEventPluginOrder');
var EnterLeaveEventPlugin = require('EnterLeaveEventPlugin');
var EventPluginHub = require('EventPluginHub');
var EventPluginUtils = require('EventPluginUtils');
var ReactBrowserEventEmitter = require('ReactBrowserEventEmitter');
var ReactDOMComponentTree = require('ReactDOMComponentTree');
var ReactDOMEventListener = require('ReactDOMEventListener');
var SelectEventPlugin = require('SelectEventPlugin');
var SimpleEventPlugin = require('SimpleEventPlugin');
var BeforeInputEventPlugin = require('../events/BeforeInputEventPlugin');
var ChangeEventPlugin = require('../events/ChangeEventPlugin');
var DOMEventPluginOrder = require('../events/DOMEventPluginOrder');
var EnterLeaveEventPlugin = require('../events/EnterLeaveEventPlugin');
var EventPluginHub = require('events/EventPluginHub');
var EventPluginUtils = require('events/EventPluginUtils');
var ReactBrowserEventEmitter = require('../events/ReactBrowserEventEmitter');
var ReactDOMComponentTree = require('./ReactDOMComponentTree');
var ReactDOMEventListener = require('../events/ReactDOMEventListener');
var SelectEventPlugin = require('../events/SelectEventPlugin');
var SimpleEventPlugin = require('../events/SimpleEventPlugin');
ReactDOMEventListener.setHandleTopLevel(
ReactBrowserEventEmitter.handleTopLevel,

View File

@ -3,13 +3,11 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule ReactDOMComponentTree
*/
'use strict';
var {HostComponent, HostText} = require('ReactTypeOfWork');
var {HostComponent, HostText} = require('shared/ReactTypeOfWork');
var invariant = require('fbjs/lib/invariant');

View File

@ -4,38 +4,45 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule ReactDOMFiberComponent
* @flow
*/
'use strict';
var CSSPropertyOperations = require('CSSPropertyOperations');
var DOMNamespaces = require('DOMNamespaces');
var DOMProperty = require('DOMProperty');
var DOMPropertyOperations = require('DOMPropertyOperations');
var EventPluginRegistry = require('EventPluginRegistry');
var ReactBrowserEventEmitter = require('ReactBrowserEventEmitter');
var ReactDOMFiberInput = require('ReactDOMFiberInput');
var ReactDOMFiberOption = require('ReactDOMFiberOption');
var ReactDOMFiberSelect = require('ReactDOMFiberSelect');
var ReactDOMFiberTextarea = require('ReactDOMFiberTextarea');
var {getCurrentFiberOwnerName} = require('ReactDebugCurrentFiber');
var {DOCUMENT_NODE, DOCUMENT_FRAGMENT_NODE} = require('HTMLNodeType');
var CSSPropertyOperations = require('../shared/CSSPropertyOperations');
var DOMNamespaces = require('../shared/DOMNamespaces');
var DOMProperty = require('../shared/DOMProperty');
var DOMPropertyOperations = require('./DOMPropertyOperations');
var EventPluginRegistry = require('events/EventPluginRegistry');
var ReactBrowserEventEmitter = require('../events/ReactBrowserEventEmitter');
var ReactDOMFiberInput = require('./ReactDOMFiberInput');
var ReactDOMFiberOption = require('./ReactDOMFiberOption');
var ReactDOMFiberSelect = require('./ReactDOMFiberSelect');
var ReactDOMFiberTextarea = require('./ReactDOMFiberTextarea');
var assertValidProps = require('assertValidProps');
// TODO: direct imports like some-package/src/* are bad. Fix me.
var {
getCurrentFiberOwnerName,
} = require('react-reconciler/src/ReactDebugCurrentFiber');
var {DOCUMENT_NODE, DOCUMENT_FRAGMENT_NODE} = require('../shared/HTMLNodeType');
var assertValidProps = require('../shared/assertValidProps');
var emptyFunction = require('fbjs/lib/emptyFunction');
var inputValueTracking = require('inputValueTracking');
var isCustomComponent = require('isCustomComponent');
var setInnerHTML = require('setInnerHTML');
var setTextContent = require('setTextContent');
var inputValueTracking = require('./inputValueTracking');
var isCustomComponent = require('../shared/isCustomComponent');
var setInnerHTML = require('./setInnerHTML');
var setTextContent = require('./setTextContent');
if (__DEV__) {
var warning = require('fbjs/lib/warning');
var {getCurrentFiberStackAddendum} = require('ReactDebugCurrentFiber');
var ReactDOMInvalidARIAHook = require('ReactDOMInvalidARIAHook');
var ReactDOMNullInputValuePropHook = require('ReactDOMNullInputValuePropHook');
var ReactDOMUnknownPropertyHook = require('ReactDOMUnknownPropertyHook');
// TODO: direct imports like some-package/src/* are bad. Fix me.
var {
getCurrentFiberStackAddendum,
} = require('react-reconciler/src/ReactDebugCurrentFiber');
var ReactDOMInvalidARIAHook = require('../shared/ReactDOMInvalidARIAHook');
var ReactDOMNullInputValuePropHook = require('../shared/ReactDOMNullInputValuePropHook');
var ReactDOMUnknownPropertyHook = require('../shared/ReactDOMUnknownPropertyHook');
var {validateProperties: validateARIAProperties} = ReactDOMInvalidARIAHook;
var {
validateProperties: validateInputProperties,

View File

@ -4,7 +4,6 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule ReactDOMFiberInput
* @flow
*/
@ -18,13 +17,20 @@ type InputWithWrapperState = HTMLInputElement & {
},
};
var DOMPropertyOperations = require('DOMPropertyOperations');
var ReactControlledValuePropTypes = require('ReactControlledValuePropTypes');
var ReactDOMComponentTree = require('ReactDOMComponentTree');
var {getCurrentFiberOwnerName} = require('ReactDebugCurrentFiber');
var DOMPropertyOperations = require('./DOMPropertyOperations');
var ReactControlledValuePropTypes = require('../shared/ReactControlledValuePropTypes');
var ReactDOMComponentTree = require('./ReactDOMComponentTree');
// TODO: direct imports like some-package/src/* are bad. Fix me.
var {
getCurrentFiberOwnerName,
} = require('react-reconciler/src/ReactDebugCurrentFiber');
if (__DEV__) {
var {getCurrentFiberStackAddendum} = require('ReactDebugCurrentFiber');
// TODO: direct imports like some-package/src/* are bad. Fix me.
var {
getCurrentFiberStackAddendum,
} = require('react-reconciler/src/ReactDebugCurrentFiber');
var warning = require('fbjs/lib/warning');
}

View File

@ -4,7 +4,6 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule ReactDOMFiberOption
* @flow
*/

View File

@ -4,7 +4,6 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule ReactDOMFiberSelect
* @flow
*/
@ -17,13 +16,18 @@ type SelectWithWrapperState = HTMLSelectElement & {
},
};
var ReactControlledValuePropTypes = require('ReactControlledValuePropTypes');
var {getCurrentFiberOwnerName} = require('ReactDebugCurrentFiber');
var ReactControlledValuePropTypes = require('../shared/ReactControlledValuePropTypes');
var {
getCurrentFiberOwnerName,
} = require('react-reconciler/src/ReactDebugCurrentFiber');
if (__DEV__) {
var didWarnValueDefaultValue = false;
var warning = require('fbjs/lib/warning');
var {getCurrentFiberStackAddendum} = require('ReactDebugCurrentFiber');
// TODO: direct imports like some-package/src/* are bad. Fix me.
var {
getCurrentFiberStackAddendum,
} = require('react-reconciler/src/ReactDebugCurrentFiber');
}
function getDeclarationErrorAddendum() {

View File

@ -4,7 +4,6 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule ReactDOMFiberTextarea
* @flow
*/
@ -16,13 +15,16 @@ type TextAreaWithWrapperState = HTMLTextAreaElement & {
},
};
var ReactControlledValuePropTypes = require('ReactControlledValuePropTypes');
var ReactControlledValuePropTypes = require('../shared/ReactControlledValuePropTypes');
var invariant = require('fbjs/lib/invariant');
if (__DEV__) {
var warning = require('fbjs/lib/warning');
var {getCurrentFiberStackAddendum} = require('ReactDebugCurrentFiber');
// TODO: direct imports like some-package/src/* are bad. Fix me.
var {
getCurrentFiberStackAddendum,
} = require('react-reconciler/src/ReactDebugCurrentFiber');
}
var didWarnValDefaultVal = false;

View File

@ -3,16 +3,14 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule ReactDOMSelection
*/
'use strict';
var {TEXT_NODE} = require('HTMLNodeType');
var {TEXT_NODE} = require('../shared/HTMLNodeType');
var getNodeForCharacterOffset = require('getNodeForCharacterOffset');
var getTextContentAccessor = require('getTextContentAccessor');
var getNodeForCharacterOffset = require('./getNodeForCharacterOffset');
var getTextContentAccessor = require('./getTextContentAccessor');
/**
* @param {DOMElement} outerNode

View File

@ -3,14 +3,12 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule ReactInputSelection
*/
'use strict';
var ReactDOMSelection = require('ReactDOMSelection');
var {ELEMENT_NODE} = require('HTMLNodeType');
var ReactDOMSelection = require('./ReactDOMSelection');
var {ELEMENT_NODE} = require('../shared/HTMLNodeType');
var containsNode = require('fbjs/lib/containsNode');
var focusNode = require('fbjs/lib/focusNode');

View File

@ -10,7 +10,7 @@
'use strict';
// TODO: can we express this test with only public API?
var getNodeForCharacterOffset = require('getNodeForCharacterOffset');
var getNodeForCharacterOffset = require('react-dom/src/client/getNodeForCharacterOffset');
// Create node from HTML string
function createNode(html) {

View File

@ -10,8 +10,8 @@
'use strict';
// TODO: can we express this test with only public API?
var setInnerHTML = require('setInnerHTML');
var Namespaces = require('DOMNamespaces').Namespaces;
var setInnerHTML = require('react-dom/src/client/setInnerHTML');
var Namespaces = require('react-dom/src/shared/DOMNamespaces').Namespaces;
describe('setInnerHTML', () => {
describe('when the node has innerHTML property', () => {

View File

@ -3,13 +3,11 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule getNodeForCharacterOffset
*/
'use strict';
var {TEXT_NODE} = require('HTMLNodeType');
var {TEXT_NODE} = require('../shared/HTMLNodeType');
/**
* Given any node return the first leaf node without children.

View File

@ -3,8 +3,6 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule getTextContentAccessor
*/
'use strict';

View File

@ -4,7 +4,6 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule inputValueTracking
* @flow
*/

View File

@ -3,14 +3,12 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule setInnerHTML
*/
'use strict';
var Namespaces = require('DOMNamespaces').Namespaces;
var createMicrosoftUnsafeLocalFunction = require('createMicrosoftUnsafeLocalFunction');
var Namespaces = require('../shared/DOMNamespaces').Namespaces;
var createMicrosoftUnsafeLocalFunction = require('../shared/createMicrosoftUnsafeLocalFunction');
// SVG temp container for IE lacking innerHTML
var reusableSVGContainer;

View File

@ -3,16 +3,14 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule setTextContent
*/
'use strict';
var ExecutionEnvironment = require('fbjs/lib/ExecutionEnvironment');
var escapeTextContentForBrowser = require('escapeTextContentForBrowser');
var setInnerHTML = require('setInnerHTML');
var {TEXT_NODE} = require('HTMLNodeType');
var escapeTextContentForBrowser = require('../shared/escapeTextContentForBrowser');
var setInnerHTML = require('./setInnerHTML');
var {TEXT_NODE} = require('../shared/HTMLNodeType');
/**
* Set the textContent property of a node, ensuring that whitespace is preserved

View File

@ -3,8 +3,6 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule validateDOMNesting
*/
'use strict';
@ -15,7 +13,10 @@ var validateDOMNesting = emptyFunction;
if (__DEV__) {
var warning = require('fbjs/lib/warning');
var {getCurrentFiberStackAddendum} = require('ReactDebugCurrentFiber');
// TODO: direct imports like some-package/src/* are bad. Fix me.
var {
getCurrentFiberStackAddendum,
} = require('react-reconciler/src/ReactDebugCurrentFiber');
// This validation code was written based on the HTML5 parsing spec:
// https://html.spec.whatwg.org/multipage/syntax.html#has-an-element-in-scope

View File

@ -3,17 +3,15 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule BeforeInputEventPlugin
*/
'use strict';
var EventPropagators = require('EventPropagators');
var EventPropagators = require('events/EventPropagators');
var ExecutionEnvironment = require('fbjs/lib/ExecutionEnvironment');
var FallbackCompositionState = require('FallbackCompositionState');
var SyntheticCompositionEvent = require('SyntheticCompositionEvent');
var SyntheticInputEvent = require('SyntheticInputEvent');
var FallbackCompositionState = require('./FallbackCompositionState');
var SyntheticCompositionEvent = require('./SyntheticCompositionEvent');
var SyntheticInputEvent = require('./SyntheticInputEvent');
import type {TopLevelTypes} from 'BrowserEventConstants';

View File

@ -3,13 +3,11 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule BrowserEventConstants
*/
'use strict';
var getVendorPrefixedEventName = require('getVendorPrefixedEventName');
var getVendorPrefixedEventName = require('./getVendorPrefixedEventName');
/**
* Types of raw signals from the browser caught at the top level.

View File

@ -3,24 +3,22 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule ChangeEventPlugin
*/
'use strict';
var EventPluginHub = require('EventPluginHub');
var EventPropagators = require('EventPropagators');
var EventPluginHub = require('events/EventPluginHub');
var EventPropagators = require('events/EventPropagators');
var ExecutionEnvironment = require('fbjs/lib/ExecutionEnvironment');
var ReactControlledComponent = require('ReactControlledComponent');
var ReactDOMComponentTree = require('ReactDOMComponentTree');
var ReactGenericBatching = require('ReactGenericBatching');
var SyntheticEvent = require('SyntheticEvent');
var ReactControlledComponent = require('events/ReactControlledComponent');
var ReactDOMComponentTree = require('../client/ReactDOMComponentTree');
var ReactGenericBatching = require('events/ReactGenericBatching');
var SyntheticEvent = require('events/SyntheticEvent');
var inputValueTracking = require('inputValueTracking');
var getEventTarget = require('getEventTarget');
var isEventSupported = require('isEventSupported');
var isTextInputElement = require('isTextInputElement');
var inputValueTracking = require('../client/inputValueTracking');
var getEventTarget = require('./getEventTarget');
var isEventSupported = require('./isEventSupported');
var isTextInputElement = require('shared/isTextInputElement');
var eventTypes = {
change: {

View File

@ -3,8 +3,6 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule DOMEventPluginOrder
*/
'use strict';

View File

@ -3,15 +3,13 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule EnterLeaveEventPlugin
*/
'use strict';
var EventPropagators = require('EventPropagators');
var ReactDOMComponentTree = require('ReactDOMComponentTree');
var SyntheticMouseEvent = require('SyntheticMouseEvent');
var EventPropagators = require('events/EventPropagators');
var ReactDOMComponentTree = require('../client/ReactDOMComponentTree');
var SyntheticMouseEvent = require('./SyntheticMouseEvent');
var eventTypes = {
mouseEnter: {

View File

@ -3,13 +3,11 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule FallbackCompositionState
*/
'use strict';
var getTextContentAccessor = require('getTextContentAccessor');
var getTextContentAccessor = require('../client/getTextContentAccessor');
/**
* This helper object stores information about text content of a target node,

View File

@ -3,18 +3,16 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule ReactBrowserEventEmitter
*/
'use strict';
var EventPluginRegistry = require('EventPluginRegistry');
var ReactDOMEventListener = require('ReactDOMEventListener');
var ReactEventEmitterMixin = require('ReactEventEmitterMixin');
var EventPluginRegistry = require('events/EventPluginRegistry');
var ReactDOMEventListener = require('./ReactDOMEventListener');
var ReactEventEmitterMixin = require('events/ReactEventEmitterMixin');
var isEventSupported = require('isEventSupported');
var {topLevelTypes} = require('BrowserEventConstants');
var isEventSupported = require('./isEventSupported');
var {topLevelTypes} = require('./BrowserEventConstants');
/**
* Summary of `ReactBrowserEventEmitter` event handling:

View File

@ -3,19 +3,17 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule ReactDOMEventListener
*/
'use strict';
var EventListener = require('fbjs/lib/EventListener');
var ReactDOMComponentTree = require('ReactDOMComponentTree');
var ReactFiberTreeReflection = require('ReactFiberTreeReflection');
var ReactGenericBatching = require('ReactGenericBatching');
var ReactTypeOfWork = require('ReactTypeOfWork');
var ReactDOMComponentTree = require('../client/ReactDOMComponentTree');
var ReactFiberTreeReflection = require('shared/ReactFiberTreeReflection');
var ReactGenericBatching = require('events/ReactGenericBatching');
var ReactTypeOfWork = require('shared/ReactTypeOfWork');
var getEventTarget = require('getEventTarget');
var getEventTarget = require('./getEventTarget');
var {HostRoot} = ReactTypeOfWork;

View File

@ -3,22 +3,20 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule SelectEventPlugin
*/
'use strict';
var EventPropagators = require('EventPropagators');
var EventPropagators = require('events/EventPropagators');
var ExecutionEnvironment = require('fbjs/lib/ExecutionEnvironment');
var ReactBrowserEventEmitter = require('ReactBrowserEventEmitter');
var ReactDOMComponentTree = require('ReactDOMComponentTree');
var ReactInputSelection = require('ReactInputSelection');
var SyntheticEvent = require('SyntheticEvent');
var {DOCUMENT_NODE} = require('HTMLNodeType');
var ReactBrowserEventEmitter = require('./ReactBrowserEventEmitter');
var ReactDOMComponentTree = require('../client/ReactDOMComponentTree');
var ReactInputSelection = require('../client/ReactInputSelection');
var SyntheticEvent = require('events/SyntheticEvent');
var {DOCUMENT_NODE} = require('../shared/HTMLNodeType');
var getActiveElement = require('fbjs/lib/getActiveElement');
var isTextInputElement = require('isTextInputElement');
var isTextInputElement = require('shared/isTextInputElement');
var shallowEqual = require('fbjs/lib/shallowEqual');
var skipSelectionChangeEvent =

View File

@ -4,38 +4,37 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule SimpleEventPlugin
* @flow
*/
'use strict';
var EventPropagators = require('EventPropagators');
var SyntheticAnimationEvent = require('SyntheticAnimationEvent');
var SyntheticClipboardEvent = require('SyntheticClipboardEvent');
var SyntheticEvent = require('SyntheticEvent');
var SyntheticFocusEvent = require('SyntheticFocusEvent');
var SyntheticKeyboardEvent = require('SyntheticKeyboardEvent');
var SyntheticMouseEvent = require('SyntheticMouseEvent');
var SyntheticDragEvent = require('SyntheticDragEvent');
var SyntheticTouchEvent = require('SyntheticTouchEvent');
var SyntheticTransitionEvent = require('SyntheticTransitionEvent');
var SyntheticUIEvent = require('SyntheticUIEvent');
var SyntheticWheelEvent = require('SyntheticWheelEvent');
var EventPropagators = require('events/EventPropagators');
var SyntheticAnimationEvent = require('./SyntheticAnimationEvent');
var SyntheticClipboardEvent = require('./SyntheticClipboardEvent');
var SyntheticEvent = require('events/SyntheticEvent');
var SyntheticFocusEvent = require('./SyntheticFocusEvent');
var SyntheticKeyboardEvent = require('./SyntheticKeyboardEvent');
var SyntheticMouseEvent = require('./SyntheticMouseEvent');
var SyntheticDragEvent = require('./SyntheticDragEvent');
var SyntheticTouchEvent = require('./SyntheticTouchEvent');
var SyntheticTransitionEvent = require('./SyntheticTransitionEvent');
var SyntheticUIEvent = require('./SyntheticUIEvent');
var SyntheticWheelEvent = require('./SyntheticWheelEvent');
var getEventCharCode = require('getEventCharCode');
var getEventCharCode = require('./getEventCharCode');
if (__DEV__) {
var warning = require('fbjs/lib/warning');
}
import type {TopLevelTypes} from 'BrowserEventConstants';
import type {TopLevelTypes} from './BrowserEventConstants';
import type {
DispatchConfig,
ReactSyntheticEvent,
} from 'ReactSyntheticEventType';
import type {Fiber} from 'ReactFiber';
import type {EventTypes, PluginModule} from 'PluginModuleType';
} from 'events/ReactSyntheticEventType';
import type {Fiber} from 'react-reconciler/src/ReactFiber';
import type {EventTypes, PluginModule} from 'events/PluginModuleType';
/**
* Turns

View File

@ -3,13 +3,11 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule SyntheticAnimationEvent
*/
'use strict';
var SyntheticEvent = require('SyntheticEvent');
var SyntheticEvent = require('events/SyntheticEvent');
/**
* @interface Event

View File

@ -3,13 +3,11 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule SyntheticClipboardEvent
*/
'use strict';
var SyntheticEvent = require('SyntheticEvent');
var SyntheticEvent = require('events/SyntheticEvent');
/**
* @interface Event

View File

@ -3,13 +3,11 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule SyntheticCompositionEvent
*/
'use strict';
var SyntheticEvent = require('SyntheticEvent');
var SyntheticEvent = require('events/SyntheticEvent');
/**
* @interface Event

View File

@ -3,13 +3,11 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule SyntheticDragEvent
*/
'use strict';
var SyntheticMouseEvent = require('SyntheticMouseEvent');
var SyntheticMouseEvent = require('./SyntheticMouseEvent');
/**
* @interface DragEvent

View File

@ -3,13 +3,11 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule SyntheticFocusEvent
*/
'use strict';
var SyntheticUIEvent = require('SyntheticUIEvent');
var SyntheticUIEvent = require('./SyntheticUIEvent');
/**
* @interface FocusEvent

View File

@ -3,13 +3,11 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule SyntheticInputEvent
*/
'use strict';
var SyntheticEvent = require('SyntheticEvent');
var SyntheticEvent = require('events/SyntheticEvent');
/**
* @interface Event

View File

@ -3,17 +3,15 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule SyntheticKeyboardEvent
*/
'use strict';
var SyntheticUIEvent = require('SyntheticUIEvent');
var SyntheticUIEvent = require('./SyntheticUIEvent');
var getEventCharCode = require('getEventCharCode');
var getEventKey = require('getEventKey');
var getEventModifierState = require('getEventModifierState');
var getEventCharCode = require('./getEventCharCode');
var getEventKey = require('./getEventKey');
var getEventModifierState = require('./getEventModifierState');
/**
* @interface KeyboardEvent

View File

@ -3,15 +3,13 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule SyntheticMouseEvent
*/
'use strict';
var SyntheticUIEvent = require('SyntheticUIEvent');
var SyntheticUIEvent = require('./SyntheticUIEvent');
var getEventModifierState = require('getEventModifierState');
var getEventModifierState = require('./getEventModifierState');
/**
* @interface MouseEvent

View File

@ -3,15 +3,13 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule SyntheticTouchEvent
*/
'use strict';
var SyntheticUIEvent = require('SyntheticUIEvent');
var SyntheticUIEvent = require('./SyntheticUIEvent');
var getEventModifierState = require('getEventModifierState');
var getEventModifierState = require('./getEventModifierState');
/**
* @interface TouchEvent

View File

@ -3,13 +3,11 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule SyntheticTransitionEvent
*/
'use strict';
var SyntheticEvent = require('SyntheticEvent');
var SyntheticEvent = require('events/SyntheticEvent');
/**
* @interface Event

View File

@ -3,13 +3,11 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule SyntheticUIEvent
*/
'use strict';
var SyntheticEvent = require('SyntheticEvent');
var SyntheticEvent = require('events/SyntheticEvent');
/**
* @interface UIEvent

View File

@ -3,13 +3,11 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule SyntheticWheelEvent
*/
'use strict';
var SyntheticMouseEvent = require('SyntheticMouseEvent');
var SyntheticMouseEvent = require('./SyntheticMouseEvent');
/**
* @interface WheelEvent

View File

@ -4,15 +4,14 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @providesModule TapEventPlugin
* @flow
*/
'use strict';
var EventPluginUtils = require('EventPluginUtils');
var EventPropagators = require('EventPropagators');
var SyntheticUIEvent = require('SyntheticUIEvent');
var EventPluginUtils = require('events/EventPluginUtils');
var EventPropagators = require('events/EventPropagators');
var SyntheticUIEvent = require('./SyntheticUIEvent');
var TouchEventUtils = require('fbjs/lib/TouchEventUtils');
var isStartish = EventPluginUtils.isStartish;

View File

@ -49,10 +49,10 @@ describe('BeforeInputEventPlugin', function() {
this.ReactDOM = require('react-dom');
// TODO: can we express this test with only public API?
this.ReactDOMComponentTree = require('ReactDOMComponentTree');
this.SyntheticCompositionEvent = require('SyntheticCompositionEvent');
this.SyntheticInputEvent = require('SyntheticInputEvent');
this.BeforeInputEventPlugin = require('BeforeInputEventPlugin');
this.ReactDOMComponentTree = require('react-dom/src/client/ReactDOMComponentTree');
this.SyntheticCompositionEvent = require('react-dom/src/events/SyntheticCompositionEvent');
this.SyntheticInputEvent = require('react-dom/src/events/SyntheticInputEvent');
this.BeforeInputEventPlugin = require('react-dom/src/events/BeforeInputEventPlugin');
}
function extract(node, eventType, optionalData) {

View File

@ -13,8 +13,8 @@ var React = require('react');
var ReactDOM = require('react-dom');
var ReactTestUtils = require('react-dom/test-utils');
// TODO: can we express this test with only public API?
var ChangeEventPlugin = require('ChangeEventPlugin');
var inputValueTracking = require('inputValueTracking');
var ChangeEventPlugin = require('react-dom/src/events/ChangeEventPlugin');
var inputValueTracking = require('react-dom/src/client/inputValueTracking');
function getTrackedValue(elem) {
var tracker = inputValueTracking._getTrackerFromNode(elem);

View File

@ -23,8 +23,8 @@ describe('EnterLeaveEventPlugin', () => {
ReactDOM = require('react-dom');
ReactTestUtils = require('react-dom/test-utils');
// TODO: can we express this test with only public API?
ReactDOMComponentTree = require('ReactDOMComponentTree');
EnterLeaveEventPlugin = require('EnterLeaveEventPlugin');
ReactDOMComponentTree = require('react-dom/src/client/ReactDOMComponentTree');
EnterLeaveEventPlugin = require('react-dom/src/events/EnterLeaveEventPlugin');
});
it('should set relatedTarget properly in iframe', () => {

View File

@ -16,7 +16,7 @@ describe('FallbackCompositionState', () => {
beforeEach(() => {
// TODO: can we express this test with only public API?
FallbackCompositionState = require('FallbackCompositionState');
FallbackCompositionState = require('react-dom/src/events/FallbackCompositionState');
});
function getInput() {

View File

@ -30,8 +30,8 @@ describe('SelectEventPlugin', () => {
ReactDOM = require('react-dom');
ReactTestUtils = require('react-dom/test-utils');
// TODO: can we express this test with only public API?
ReactDOMComponentTree = require('ReactDOMComponentTree');
SelectEventPlugin = require('SelectEventPlugin');
ReactDOMComponentTree = require('react-dom/src/client/ReactDOMComponentTree');
SelectEventPlugin = require('react-dom/src/events/SelectEventPlugin');
});
it('should skip extraction if no listeners are present', () => {

Some files were not shown because too many files have changed in this diff Show More