MCPcopy Create free account
hub / github.com/krasimir/react-in-patterns / createChild

Function createChild

code/new-context-api/public/app.js:8432–8475  ·  view source on GitHub ↗
(returnFiber, newChild, expirationTime)

Source from the content-addressed store, hash-verified

8430 }
8431
8432 function createChild(returnFiber, newChild, expirationTime) {
8433 if (typeof newChild === 'string' || typeof newChild === 'number') {
8434 // Text nodes don't have keys. If the previous node is implicitly keyed
8435 // we can continue to replace it without aborting even if it is not a text
8436 // node.
8437 var created = createFiberFromText('' + newChild, returnFiber.mode, expirationTime);
8438 created['return'] = returnFiber;
8439 return created;
8440 }
8441
8442 if (typeof newChild === 'object' && newChild !== null) {
8443 switch (newChild.$$typeof) {
8444 case REACT_ELEMENT_TYPE:
8445 {
8446 var _created = createFiberFromElement(newChild, returnFiber.mode, expirationTime);
8447 _created.ref = coerceRef(returnFiber, null, newChild);
8448 _created['return'] = returnFiber;
8449 return _created;
8450 }
8451 case REACT_PORTAL_TYPE:
8452 {
8453 var _created2 = createFiberFromPortal(newChild, returnFiber.mode, expirationTime);
8454 _created2['return'] = returnFiber;
8455 return _created2;
8456 }
8457 }
8458
8459 if (isArray$1(newChild) || getIteratorFn(newChild)) {
8460 var _created3 = createFiberFromFragment(newChild, returnFiber.mode, expirationTime, null);
8461 _created3['return'] = returnFiber;
8462 return _created3;
8463 }
8464
8465 throwOnInvalidObjectType(returnFiber, newChild);
8466 }
8467
8468 {
8469 if (typeof newChild === 'function') {
8470 warnOnFunctionType();
8471 }
8472 }
8473
8474 return null;
8475 }
8476
8477 function updateSlot(returnFiber, oldFiber, newChild, expirationTime) {
8478 // Update the fiber if the keys match, otherwise return null.

Callers 2

reconcileChildrenArrayFunction · 0.70

Calls 8

createFiberFromTextFunction · 0.70
createFiberFromElementFunction · 0.70
coerceRefFunction · 0.70
createFiberFromPortalFunction · 0.70
getIteratorFnFunction · 0.70
createFiberFromFragmentFunction · 0.70
throwOnInvalidObjectTypeFunction · 0.70
warnOnFunctionTypeFunction · 0.70

Tested by

no test coverage detected