dillon1000/react
Commit
Browse files Make keyed object fragments an opaque type
This triggers a warning if you try to pass a keyed object as a child. You now have to wrap it in React.addons.createFragment(object) which creates a proxy (in dev) which warns if it is accessed. The purpose of this is to make these into opaque objects so that nobody relies on its data structure. After that we can turn it into a different data structure such as a ReactFragment node or an iterable of flattened ReactElements.
Changed paths19 files
First-parent comparisonsrc/addons/ReactFragment.js AddedA src/addons/__tests__/ReactFragment-test.js AddedM src/addons/transitions/ReactTransitionChildMapping.js ModifiedM src/addons/transitions/ReactTransitionGroup.js ModifiedM src/browser/ReactWithAddons.js ModifiedM src/browser/__tests__/ReactDOM-test.js ModifiedM src/classic/element/ReactElementValidator.js ModifiedM src/classic/element/__tests__/ReactElementValidator-test.js ModifiedM src/core/__tests__/ReactIdentity-test.js ModifiedM src/core/__tests__/ReactMultiChildReconcile-test.js ModifiedM src/core/__tests__/ReactMultiChildText-test.js ModifiedM src/modern/element/__tests__/ReactJSXElementValidator-test.js ModifiedM src/utils/ReactChildren.js ModifiedM src/utils/__tests__/ReactChildren-test.js ModifiedM src/utils/__tests__/onlyChild-test.js ModifiedM src/utils/__tests__/sliceChildren-test.js ModifiedM src/utils/__tests__/traverseAllChildren-test.js ModifiedM src/utils/sliceChildren.js ModifiedM src/utils/traverseAllChildren.js ModifiedPatch
Files changed
Rendering syntax-highlighted changes…