| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| "use strict"; |
| "production" !== process.env.NODE_ENV && |
| (function () { |
| function computeFullKey(signature) { |
| if (null !== signature.fullKey) return signature.fullKey; |
| var fullKey = signature.ownKey; |
| try { |
| var hooks = signature.getCustomHooks(); |
| } catch (err) { |
| return (signature.forceReset = !0), (signature.fullKey = fullKey); |
| } |
| for (var i = 0; i < hooks.length; i++) { |
| var hook = hooks[i]; |
| if ("function" !== typeof hook) |
| return (signature.forceReset = !0), (signature.fullKey = fullKey); |
| hook = allSignaturesByType.get(hook); |
| if (void 0 !== hook) { |
| var nestedHookKey = computeFullKey(hook); |
| hook.forceReset && (signature.forceReset = !0); |
| fullKey += "\n---\n" + nestedHookKey; |
| } |
| } |
| return (signature.fullKey = fullKey); |
| } |
| function resolveFamily(type) { |
| return updatedFamiliesByType.get(type); |
| } |
| function cloneMap(map) { |
| var clone = new Map(); |
| map.forEach(function (value, key) { |
| clone.set(key, value); |
| }); |
| return clone; |
| } |
| function cloneSet(set) { |
| var clone = new Set(); |
| set.forEach(function (value) { |
| clone.add(value); |
| }); |
| return clone; |
| } |
| function getProperty(object, property) { |
| try { |
| return object[property]; |
| } catch (err) {} |
| } |
| function register(type, id) { |
| if ( |
| !( |
| null === type || |
| ("function" !== typeof type && "object" !== typeof type) || |
| allFamiliesByType.has(type) |
| ) |
| ) { |
| var family = allFamiliesByID.get(id); |
| void 0 === family |
| ? ((family = { current: type }), allFamiliesByID.set(id, family)) |
| : pendingUpdates.push([family, type]); |
| allFamiliesByType.set(type, family); |
| if ("object" === typeof type && null !== type) |
| switch (getProperty(type, "$$typeof")) { |
| case REACT_FORWARD_REF_TYPE: |
| register(type.render, id + "$render"); |
| break; |
| case REACT_MEMO_TYPE: |
| register(type.type, id + "$type"); |
| } |
| } |
| } |
| function setSignature(type, key) { |
| var forceReset = |
| 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : !1, |
| getCustomHooks = 3 < arguments.length ? arguments[3] : void 0; |
| allSignaturesByType.has(type) || |
| allSignaturesByType.set(type, { |
| forceReset: forceReset, |
| ownKey: key, |
| fullKey: null, |
| getCustomHooks: |
| getCustomHooks || |
| function () { |
| return []; |
| } |
| }); |
| if ("object" === typeof type && null !== type) |
| switch (getProperty(type, "$$typeof")) { |
| case REACT_FORWARD_REF_TYPE: |
| setSignature(type.render, key, forceReset, getCustomHooks); |
| break; |
| case REACT_MEMO_TYPE: |
| setSignature(type.type, key, forceReset, getCustomHooks); |
| } |
| } |
| function collectCustomHooksForSignature(type) { |
| type = allSignaturesByType.get(type); |
| void 0 !== type && computeFullKey(type); |
| } |
| var REACT_FORWARD_REF_TYPE = Symbol.for("react.forward_ref"), |
| REACT_MEMO_TYPE = Symbol.for("react.memo"), |
| PossiblyWeakMap = "function" === typeof WeakMap ? WeakMap : Map, |
| allFamiliesByID = new Map(), |
| allFamiliesByType = new PossiblyWeakMap(), |
| allSignaturesByType = new PossiblyWeakMap(), |
| updatedFamiliesByType = new PossiblyWeakMap(), |
| pendingUpdates = [], |
| helpersByRendererID = new Map(), |
| helpersByRoot = new Map(), |
| mountedRoots = new Set(), |
| failedRoots = new Set(), |
| rootElements = "function" === typeof WeakMap ? new WeakMap() : null, |
| isPerformingRefresh = !1; |
| exports._getMountedRootCount = function () { |
| return mountedRoots.size; |
| }; |
| exports.collectCustomHooksForSignature = collectCustomHooksForSignature; |
| exports.createSignatureFunctionForTransform = function () { |
| var savedType, |
| hasCustomHooks, |
| didCollectHooks = !1; |
| return function (type, key, forceReset, getCustomHooks) { |
| if ("string" === typeof key) |
| return ( |
| savedType || |
| ((savedType = type), |
| (hasCustomHooks = "function" === typeof getCustomHooks)), |
| null == type || |
| ("function" !== typeof type && "object" !== typeof type) || |
| setSignature(type, key, forceReset, getCustomHooks), |
| type |
| ); |
| !didCollectHooks && |
| hasCustomHooks && |
| ((didCollectHooks = !0), collectCustomHooksForSignature(savedType)); |
| }; |
| }; |
| exports.getFamilyByID = function (id) { |
| return allFamiliesByID.get(id); |
| }; |
| exports.getFamilyByType = function (type) { |
| return allFamiliesByType.get(type); |
| }; |
| exports.hasUnrecoverableErrors = function () { |
| return !1; |
| }; |
| exports.injectIntoGlobalHook = function (globalObject) { |
| var hook = globalObject.__REACT_DEVTOOLS_GLOBAL_HOOK__; |
| if (void 0 === hook) { |
| var nextID = 0; |
| globalObject.__REACT_DEVTOOLS_GLOBAL_HOOK__ = hook = { |
| renderers: new Map(), |
| supportsFiber: !0, |
| inject: function () { |
| return nextID++; |
| }, |
| onScheduleFiberRoot: function () {}, |
| onCommitFiberRoot: function () {}, |
| onCommitFiberUnmount: function () {} |
| }; |
| } |
| if (hook.isDisabled) |
| console.warn( |
| "Something has shimmed the React DevTools global hook (__REACT_DEVTOOLS_GLOBAL_HOOK__). Fast Refresh is not compatible with this shim and will be disabled." |
| ); |
| else { |
| var oldInject = hook.inject; |
| hook.inject = function (injected) { |
| var id = oldInject.apply(this, arguments); |
| "function" === typeof injected.scheduleRefresh && |
| "function" === typeof injected.setRefreshHandler && |
| helpersByRendererID.set(id, injected); |
| return id; |
| }; |
| hook.renderers.forEach(function (injected, id) { |
| "function" === typeof injected.scheduleRefresh && |
| "function" === typeof injected.setRefreshHandler && |
| helpersByRendererID.set(id, injected); |
| }); |
| var oldOnCommitFiberRoot = hook.onCommitFiberRoot, |
| oldOnScheduleFiberRoot = hook.onScheduleFiberRoot || function () {}; |
| hook.onScheduleFiberRoot = function (id, root, children) { |
| isPerformingRefresh || |
| (failedRoots.delete(root), |
| null !== rootElements && rootElements.set(root, children)); |
| return oldOnScheduleFiberRoot.apply(this, arguments); |
| }; |
| hook.onCommitFiberRoot = function ( |
| id, |
| root, |
| maybePriorityLevel, |
| didError |
| ) { |
| var helpers = helpersByRendererID.get(id); |
| if (void 0 !== helpers) { |
| helpersByRoot.set(root, helpers); |
| helpers = root.current; |
| var alternate = helpers.alternate; |
| null !== alternate |
| ? ((alternate = |
| null != alternate.memoizedState && |
| null != alternate.memoizedState.element && |
| mountedRoots.has(root)), |
| (helpers = |
| null != helpers.memoizedState && |
| null != helpers.memoizedState.element), |
| !alternate && helpers |
| ? (mountedRoots.add(root), failedRoots.delete(root)) |
| : (alternate && helpers) || |
| (alternate && !helpers |
| ? (mountedRoots.delete(root), |
| didError |
| ? failedRoots.add(root) |
| : helpersByRoot.delete(root)) |
| : alternate || |
| helpers || |
| (didError && failedRoots.add(root)))) |
| : mountedRoots.add(root); |
| } |
| return oldOnCommitFiberRoot.apply(this, arguments); |
| }; |
| } |
| }; |
| exports.isLikelyComponentType = function (type) { |
| switch (typeof type) { |
| case "function": |
| if (null != type.prototype) { |
| if (type.prototype.isReactComponent) return !0; |
| var ownNames = Object.getOwnPropertyNames(type.prototype); |
| if ( |
| 1 < ownNames.length || |
| "constructor" !== ownNames[0] || |
| type.prototype.__proto__ !== Object.prototype |
| ) |
| return !1; |
| } |
| type = type.name || type.displayName; |
| return "string" === typeof type && /^[A-Z]/.test(type); |
| case "object": |
| if (null != type) |
| switch (getProperty(type, "$$typeof")) { |
| case REACT_FORWARD_REF_TYPE: |
| case REACT_MEMO_TYPE: |
| return !0; |
| } |
| return !1; |
| default: |
| return !1; |
| } |
| }; |
| exports.performReactRefresh = function () { |
| if (0 === pendingUpdates.length || isPerformingRefresh) return null; |
| isPerformingRefresh = !0; |
| try { |
| var staleFamilies = new Set(), |
| updatedFamilies = new Set(), |
| updates = pendingUpdates; |
| pendingUpdates = []; |
| updates.forEach(function (_ref) { |
| var family = _ref[0]; |
| _ref = _ref[1]; |
| var prevType = family.current; |
| updatedFamiliesByType.set(prevType, family); |
| updatedFamiliesByType.set(_ref, family); |
| family.current = _ref; |
| (prevType.prototype && prevType.prototype.isReactComponent) || |
| (_ref.prototype && _ref.prototype.isReactComponent) |
| ? (_ref = !1) |
| : ((prevType = allSignaturesByType.get(prevType)), |
| (_ref = allSignaturesByType.get(_ref)), |
| (_ref = |
| (void 0 === prevType && void 0 === _ref) || |
| (void 0 !== prevType && |
| void 0 !== _ref && |
| computeFullKey(prevType) === computeFullKey(_ref) && |
| !_ref.forceReset) |
| ? !0 |
| : !1)); |
| _ref ? updatedFamilies.add(family) : staleFamilies.add(family); |
| }); |
| var update = { |
| updatedFamilies: updatedFamilies, |
| staleFamilies: staleFamilies |
| }; |
| helpersByRendererID.forEach(function (helpers) { |
| helpers.setRefreshHandler(resolveFamily); |
| }); |
| var didError = !1, |
| firstError = null, |
| failedRootsSnapshot = cloneSet(failedRoots), |
| mountedRootsSnapshot = cloneSet(mountedRoots), |
| helpersByRootSnapshot = cloneMap(helpersByRoot); |
| failedRootsSnapshot.forEach(function (root) { |
| var helpers = helpersByRootSnapshot.get(root); |
| if (void 0 === helpers) |
| throw Error( |
| "Could not find helpers for a root. This is a bug in React Refresh." |
| ); |
| failedRoots.has(root); |
| if (null !== rootElements && rootElements.has(root)) { |
| var element = rootElements.get(root); |
| try { |
| helpers.scheduleRoot(root, element); |
| } catch (err) { |
| didError || ((didError = !0), (firstError = err)); |
| } |
| } |
| }); |
| mountedRootsSnapshot.forEach(function (root) { |
| var helpers = helpersByRootSnapshot.get(root); |
| if (void 0 === helpers) |
| throw Error( |
| "Could not find helpers for a root. This is a bug in React Refresh." |
| ); |
| mountedRoots.has(root); |
| try { |
| helpers.scheduleRefresh(root, update); |
| } catch (err) { |
| didError || ((didError = !0), (firstError = err)); |
| } |
| }); |
| if (didError) throw firstError; |
| return update; |
| } finally { |
| isPerformingRefresh = !1; |
| } |
| }; |
| exports.register = register; |
| exports.setSignature = setSignature; |
| })(); |
|
|