Comparing version 0.0.0-experimental-ad720f36e-20240206 to 0.0.0-experimental-adb717393-20240411
@@ -28,3 +28,5 @@ /** | ||
var REACT_PROFILER_TYPE = Symbol.for('react.profiler'); | ||
var REACT_PROVIDER_TYPE = Symbol.for('react.provider'); | ||
var REACT_PROVIDER_TYPE = Symbol.for('react.provider'); // TODO: Delete with enableRenderableContext | ||
var REACT_CONSUMER_TYPE = Symbol.for('react.consumer'); | ||
var REACT_CONTEXT_TYPE = Symbol.for('react.context'); | ||
@@ -37,3 +39,2 @@ var REACT_FORWARD_REF_TYPE = Symbol.for('react.forward_ref'); | ||
var REACT_OFFSCREEN_TYPE = Symbol.for('react.offscreen'); | ||
var REACT_CACHE_TYPE = Symbol.for('react.cache'); | ||
var MAYBE_ITERATOR_SYMBOL = Symbol.iterator; | ||
@@ -55,3 +56,3 @@ var FAUX_ITERATOR_SYMBOL = '@@iterator'; | ||
var ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED; | ||
var ReactSharedInternals = React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE; | ||
@@ -74,4 +75,3 @@ function error(format) { | ||
{ | ||
var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame; | ||
var stack = ReactDebugCurrentFrame.getStackAddendum(); | ||
var stack = ReactSharedInternals.getStackAddendum(); | ||
@@ -102,2 +102,9 @@ if (stack !== '') { | ||
var enableLegacyHidden = false; // Enables unstable_avoidThisFallback feature in Fiber | ||
// as a normal prop instead of stripping it from the props object. | ||
// Passes `ref` as a normal prop instead of stripping it from the props object | ||
// during element creation. | ||
var enableRefAsProp = true; | ||
var enableRenderableContext = true; // ----------------------------------------------------------------------------- | ||
// stuff. Intended to enable React core members to more easily debug scheduling | ||
@@ -108,26 +115,2 @@ // issues in DEV builds. | ||
var REACT_CLIENT_REFERENCE$2 = Symbol.for('react.client.reference'); | ||
function isValidElementType(type) { | ||
if (typeof type === 'string' || typeof type === 'function') { | ||
return true; | ||
} // Note: typeof might be other than 'symbol' or 'number' (e.g. if it's a polyfill). | ||
if (type === REACT_FRAGMENT_TYPE || type === REACT_PROFILER_TYPE || enableDebugTracing || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || enableLegacyHidden || type === REACT_OFFSCREEN_TYPE || enableScopeAPI || type === REACT_CACHE_TYPE || enableTransitionTracing ) { | ||
return true; | ||
} | ||
if (typeof type === 'object' && type !== null) { | ||
if (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || // This needs to include all possible module reference object | ||
// types supported by any Flight configuration anywhere since | ||
// we don't know which Flight build this will end up being used | ||
// with. | ||
type.$$typeof === REACT_CLIENT_REFERENCE$2 || type.getModuleId !== undefined) { | ||
return true; | ||
} | ||
} | ||
return false; | ||
} | ||
function getWrappedName(outerType, innerType, wrapperName) { | ||
@@ -149,3 +132,3 @@ var displayName = outerType.displayName; | ||
var REACT_CLIENT_REFERENCE$1 = Symbol.for('react.client.reference'); // Note that the reconciler package should generally prefer to use getComponentNameFromFiber() instead. | ||
var REACT_CLIENT_REFERENCE$2 = Symbol.for('react.client.reference'); // Note that the reconciler package should generally prefer to use getComponentNameFromFiber() instead. | ||
@@ -159,3 +142,3 @@ function getComponentNameFromType(type) { | ||
if (typeof type === 'function') { | ||
if (type.$$typeof === REACT_CLIENT_REFERENCE$1) { | ||
if (type.$$typeof === REACT_CLIENT_REFERENCE$2) { | ||
// TODO: Create a convention for naming client references with debug info. | ||
@@ -191,7 +174,2 @@ return null; | ||
case REACT_CACHE_TYPE: | ||
{ | ||
return 'Cache'; | ||
} | ||
} | ||
@@ -207,10 +185,20 @@ | ||
switch (type.$$typeof) { | ||
case REACT_PROVIDER_TYPE: | ||
{ | ||
return null; | ||
} | ||
case REACT_CONTEXT_TYPE: | ||
var context = type; | ||
return getContextName(context) + '.Consumer'; | ||
case REACT_PROVIDER_TYPE: | ||
var provider = type; | ||
return getContextName(provider._context) + '.Provider'; | ||
{ | ||
return getContextName(context) + '.Provider'; | ||
} | ||
case REACT_CONSUMER_TYPE: | ||
{ | ||
var consumer = type; | ||
return getContextName(consumer._context) + '.Consumer'; | ||
} | ||
case REACT_FORWARD_REF_TYPE: | ||
@@ -246,4 +234,105 @@ return getWrappedName(type, type.render, 'ForwardRef'); | ||
// $FlowFixMe[method-unbinding] | ||
var hasOwnProperty = Object.prototype.hasOwnProperty; | ||
var assign = Object.assign; | ||
/* | ||
* The `'' + value` pattern (used in perf-sensitive code) throws for Symbol | ||
* and Temporal.* types. See https://github.com/facebook/react/pull/22064. | ||
* | ||
* The functions in this module will throw an easier-to-understand, | ||
* easier-to-debug exception with a clear errors message message explaining the | ||
* problem. (Instead of a confusing exception thrown inside the implementation | ||
* of the `value` object). | ||
*/ | ||
// $FlowFixMe[incompatible-return] only called in DEV, so void return is not possible. | ||
function typeName(value) { | ||
{ | ||
// toStringTag is needed for namespaced types like Temporal.Instant | ||
var hasToStringTag = typeof Symbol === 'function' && Symbol.toStringTag; | ||
var type = hasToStringTag && value[Symbol.toStringTag] || value.constructor.name || 'Object'; // $FlowFixMe[incompatible-return] | ||
return type; | ||
} | ||
} // $FlowFixMe[incompatible-return] only called in DEV, so void return is not possible. | ||
function willCoercionThrow(value) { | ||
{ | ||
try { | ||
testStringCoercion(value); | ||
return false; | ||
} catch (e) { | ||
return true; | ||
} | ||
} | ||
} | ||
function testStringCoercion(value) { | ||
// If you ended up here by following an exception call stack, here's what's | ||
// happened: you supplied an object or symbol value to React (as a prop, key, | ||
// DOM attribute, CSS property, string ref, etc.) and when React tried to | ||
// coerce it to a string using `'' + value`, an exception was thrown. | ||
// | ||
// The most common types that will cause this exception are `Symbol` instances | ||
// and Temporal objects like `Temporal.Instant`. But any object that has a | ||
// `valueOf` or `[Symbol.toPrimitive]` method that throws will also cause this | ||
// exception. (Library authors do this to prevent users from using built-in | ||
// numeric operators like `+` or comparison operators like `>=` because custom | ||
// methods are needed to perform accurate arithmetic or comparison.) | ||
// | ||
// To fix the problem, coerce this object or symbol value to a string before | ||
// passing it to React. The most reliable way is usually `String(value)`. | ||
// | ||
// To find which value is throwing, check the browser or debugger console. | ||
// Before this exception was thrown, there should be `console.error` output | ||
// that shows the type (Symbol, Temporal.PlainDate, etc.) that caused the | ||
// problem and how that type was used: key, atrribute, input value prop, etc. | ||
// In most cases, this console output also shows the component and its | ||
// ancestor components where the exception happened. | ||
// | ||
// eslint-disable-next-line react-internal/safe-string-coercion | ||
return '' + value; | ||
} | ||
function checkKeyStringCoercion(value) { | ||
{ | ||
if (willCoercionThrow(value)) { | ||
error('The provided key is an unsupported type %s.' + ' This value must be coerced to a string before using it here.', typeName(value)); | ||
return testStringCoercion(value); // throw (to help callers find troubleshooting comments) | ||
} | ||
} | ||
} | ||
var REACT_CLIENT_REFERENCE$1 = Symbol.for('react.client.reference'); | ||
function isValidElementType(type) { | ||
if (typeof type === 'string' || typeof type === 'function') { | ||
return true; | ||
} // Note: typeof might be other than 'symbol' or 'number' (e.g. if it's a polyfill). | ||
if (type === REACT_FRAGMENT_TYPE || type === REACT_PROFILER_TYPE || enableDebugTracing || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || enableLegacyHidden || type === REACT_OFFSCREEN_TYPE || enableScopeAPI || enableTransitionTracing ) { | ||
return true; | ||
} | ||
if (typeof type === 'object' && type !== null) { | ||
if (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || !enableRenderableContext || type.$$typeof === REACT_CONSUMER_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || // This needs to include all possible module reference object | ||
// types supported by any Flight configuration anywhere since | ||
// we don't know which Flight build this will end up being used | ||
// with. | ||
type.$$typeof === REACT_CLIENT_REFERENCE$1 || type.getModuleId !== undefined) { | ||
return true; | ||
} | ||
} | ||
return false; | ||
} | ||
var isArrayImpl = Array.isArray; // eslint-disable-next-line no-redeclare | ||
function isArray(a) { | ||
return isArrayImpl(a); | ||
} | ||
// Helpers to patch console.logs to avoid logging during side-effect free | ||
@@ -343,5 +432,4 @@ // replaying on render function. This currently only patches the object | ||
var ReactCurrentDispatcher = ReactSharedInternals.ReactCurrentDispatcher; | ||
var prefix; | ||
function describeBuiltInComponentFrame(name, source, ownerFn) { | ||
function describeBuiltInComponentFrame(name) { | ||
{ | ||
@@ -400,9 +488,9 @@ if (prefix === undefined) { | ||
Error.prepareStackTrace = undefined; | ||
var previousDispatcher; | ||
var previousDispatcher = null; | ||
{ | ||
previousDispatcher = ReactCurrentDispatcher.current; // Set the dispatcher in DEV because this might be call in the render function | ||
previousDispatcher = ReactSharedInternals.H; // Set the dispatcher in DEV because this might be call in the render function | ||
// for warnings. | ||
ReactCurrentDispatcher.current = null; | ||
ReactSharedInternals.H = null; | ||
disableLogs(); | ||
@@ -592,3 +680,3 @@ } | ||
{ | ||
ReactCurrentDispatcher.current = previousDispatcher; | ||
ReactSharedInternals.H = previousDispatcher; | ||
reenableLogs(); | ||
@@ -612,3 +700,3 @@ } | ||
} | ||
function describeFunctionComponentFrame(fn, source, ownerFn) { | ||
function describeFunctionComponentFrame(fn) { | ||
{ | ||
@@ -624,3 +712,3 @@ return describeNativeComponentFrame(fn, false); | ||
function describeUnknownElementTypeFrameInDEV(type, source, ownerFn) { | ||
function describeUnknownElementTypeFrameInDEV(type) { | ||
@@ -656,3 +744,3 @@ if (type == null) { | ||
// Memo may contain any component type so we recursively resolve it. | ||
return describeUnknownElementTypeFrameInDEV(type.type, source, ownerFn); | ||
return describeUnknownElementTypeFrameInDEV(type.type); | ||
@@ -667,3 +755,3 @@ case REACT_LAZY_TYPE: | ||
// Lazy may contain any component type so we recursively resolve it. | ||
return describeUnknownElementTypeFrameInDEV(init(payload), source, ownerFn); | ||
return describeUnknownElementTypeFrameInDEV(init(payload)); | ||
} catch (x) {} | ||
@@ -677,156 +765,8 @@ } | ||
// $FlowFixMe[method-unbinding] | ||
var hasOwnProperty = Object.prototype.hasOwnProperty; | ||
var loggedTypeFailures = {}; | ||
var ReactDebugCurrentFrame$1 = ReactSharedInternals.ReactDebugCurrentFrame; | ||
function setCurrentlyValidatingElement$1(element) { | ||
{ | ||
if (element) { | ||
var owner = element._owner; | ||
var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null); | ||
ReactDebugCurrentFrame$1.setExtraStackFrame(stack); | ||
} else { | ||
ReactDebugCurrentFrame$1.setExtraStackFrame(null); | ||
} | ||
} | ||
} | ||
function checkPropTypes(typeSpecs, values, location, componentName, element) { | ||
{ | ||
// $FlowFixMe[incompatible-use] This is okay but Flow doesn't know it. | ||
var has = Function.call.bind(hasOwnProperty); | ||
for (var typeSpecName in typeSpecs) { | ||
if (has(typeSpecs, typeSpecName)) { | ||
var error$1 = void 0; // Prop type validation may throw. In case they do, we don't want to | ||
// fail the render phase where it didn't fail before. So we log it. | ||
// After these have been cleaned up, we'll let them throw. | ||
try { | ||
// This is intentionally an invariant that gets caught. It's the same | ||
// behavior as without this statement except with a better message. | ||
if (typeof typeSpecs[typeSpecName] !== 'function') { | ||
// eslint-disable-next-line react-internal/prod-error-codes | ||
var err = Error((componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' + 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' + 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'); | ||
err.name = 'Invariant Violation'; | ||
throw err; | ||
} | ||
error$1 = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED'); | ||
} catch (ex) { | ||
error$1 = ex; | ||
} | ||
if (error$1 && !(error$1 instanceof Error)) { | ||
setCurrentlyValidatingElement$1(element); | ||
error('%s: type specification of %s' + ' `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error$1); | ||
setCurrentlyValidatingElement$1(null); | ||
} | ||
if (error$1 instanceof Error && !(error$1.message in loggedTypeFailures)) { | ||
// Only monitor this failure once because there tends to be a lot of the | ||
// same error. | ||
loggedTypeFailures[error$1.message] = true; | ||
setCurrentlyValidatingElement$1(element); | ||
error('Failed %s type: %s', location, error$1.message); | ||
setCurrentlyValidatingElement$1(null); | ||
} | ||
} | ||
} | ||
} | ||
} | ||
var isArrayImpl = Array.isArray; // eslint-disable-next-line no-redeclare | ||
function isArray(a) { | ||
return isArrayImpl(a); | ||
} | ||
/* | ||
* The `'' + value` pattern (used in perf-sensitive code) throws for Symbol | ||
* and Temporal.* types. See https://github.com/facebook/react/pull/22064. | ||
* | ||
* The functions in this module will throw an easier-to-understand, | ||
* easier-to-debug exception with a clear errors message message explaining the | ||
* problem. (Instead of a confusing exception thrown inside the implementation | ||
* of the `value` object). | ||
*/ | ||
// $FlowFixMe[incompatible-return] only called in DEV, so void return is not possible. | ||
function typeName(value) { | ||
{ | ||
// toStringTag is needed for namespaced types like Temporal.Instant | ||
var hasToStringTag = typeof Symbol === 'function' && Symbol.toStringTag; | ||
var type = hasToStringTag && value[Symbol.toStringTag] || value.constructor.name || 'Object'; // $FlowFixMe[incompatible-return] | ||
return type; | ||
} | ||
} // $FlowFixMe[incompatible-return] only called in DEV, so void return is not possible. | ||
function willCoercionThrow(value) { | ||
{ | ||
try { | ||
testStringCoercion(value); | ||
return false; | ||
} catch (e) { | ||
return true; | ||
} | ||
} | ||
} | ||
function testStringCoercion(value) { | ||
// If you ended up here by following an exception call stack, here's what's | ||
// happened: you supplied an object or symbol value to React (as a prop, key, | ||
// DOM attribute, CSS property, string ref, etc.) and when React tried to | ||
// coerce it to a string using `'' + value`, an exception was thrown. | ||
// | ||
// The most common types that will cause this exception are `Symbol` instances | ||
// and Temporal objects like `Temporal.Instant`. But any object that has a | ||
// `valueOf` or `[Symbol.toPrimitive]` method that throws will also cause this | ||
// exception. (Library authors do this to prevent users from using built-in | ||
// numeric operators like `+` or comparison operators like `>=` because custom | ||
// methods are needed to perform accurate arithmetic or comparison.) | ||
// | ||
// To fix the problem, coerce this object or symbol value to a string before | ||
// passing it to React. The most reliable way is usually `String(value)`. | ||
// | ||
// To find which value is throwing, check the browser or debugger console. | ||
// Before this exception was thrown, there should be `console.error` output | ||
// that shows the type (Symbol, Temporal.PlainDate, etc.) that caused the | ||
// problem and how that type was used: key, atrribute, input value prop, etc. | ||
// In most cases, this console output also shows the component and its | ||
// ancestor components where the exception happened. | ||
// | ||
// eslint-disable-next-line react-internal/safe-string-coercion | ||
return '' + value; | ||
} | ||
function checkKeyStringCoercion(value) { | ||
{ | ||
if (willCoercionThrow(value)) { | ||
error('The provided key is an unsupported type %s.' + ' This value must be coerced to a string before using it here.', typeName(value)); | ||
return testStringCoercion(value); // throw (to help callers find troubleshooting comments) | ||
} | ||
} | ||
} | ||
var ReactCurrentOwner$1 = ReactSharedInternals.ReactCurrentOwner; | ||
var RESERVED_PROPS = { | ||
key: true, | ||
ref: true, | ||
__self: true, | ||
__source: true | ||
}; | ||
var REACT_CLIENT_REFERENCE = Symbol.for('react.client.reference'); | ||
var specialPropKeyWarningShown; | ||
var specialPropRefWarningShown; | ||
var didWarnAboutStringRefs; | ||
var didWarnAboutElementRef; | ||
{ | ||
didWarnAboutStringRefs = {}; | ||
didWarnAboutElementRef = {}; | ||
} | ||
@@ -862,16 +802,2 @@ | ||
function warnIfStringRefCannotBeAutoConverted(config, self) { | ||
{ | ||
if (typeof config.ref === 'string' && ReactCurrentOwner$1.current && self && ReactCurrentOwner$1.current.stateNode !== self) { | ||
var componentName = getComponentNameFromType(ReactCurrentOwner$1.current.type); | ||
if (!didWarnAboutStringRefs[componentName]) { | ||
error('Component "%s" contains the string ref "%s". ' + 'Support for string refs will be removed in a future major release. ' + 'This case cannot be automatically converted to an arrow function. ' + 'We ask you to manually fix this case by using useRef() or createRef() instead. ' + 'Learn more about using refs safely here: ' + 'https://reactjs.org/link/strict-mode-string-ref', getComponentNameFromType(ReactCurrentOwner$1.current.type), config.ref); | ||
didWarnAboutStringRefs[componentName] = true; | ||
} | ||
} | ||
} | ||
} | ||
function defineKeyPropWarningGetter(props, displayName) { | ||
@@ -883,3 +809,3 @@ { | ||
error('%s: `key` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://reactjs.org/link/special-props)', displayName); | ||
error('%s: `key` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://react.dev/link/special-props)', displayName); | ||
} | ||
@@ -896,17 +822,16 @@ }; | ||
function defineRefPropWarningGetter(props, displayName) { | ||
function elementRefGetterWithDeprecationWarning() { | ||
{ | ||
var warnAboutAccessingRef = function () { | ||
if (!specialPropRefWarningShown) { | ||
specialPropRefWarningShown = true; | ||
var componentName = getComponentNameFromType(this.type); | ||
error('%s: `ref` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://reactjs.org/link/special-props)', displayName); | ||
} | ||
}; | ||
if (!didWarnAboutElementRef[componentName]) { | ||
didWarnAboutElementRef[componentName] = true; | ||
warnAboutAccessingRef.isReactWarning = true; | ||
Object.defineProperty(props, 'ref', { | ||
get: warnAboutAccessingRef, | ||
configurable: true | ||
}); | ||
error('Accessing element.ref was removed in React 19. ref is now a ' + 'regular prop. It will be removed from the JSX Element ' + 'type in a future release.'); | ||
} // An undefined `element.ref` is coerced to `null` for | ||
// backwards compatibility. | ||
var refProp = this.props.ref; | ||
return refProp !== undefined ? refProp : null; | ||
} | ||
@@ -936,16 +861,63 @@ } | ||
function ReactElement(type, key, ref, self, source, owner, props) { | ||
var element = { | ||
// This tag allows us to uniquely identify this as a React Element | ||
$$typeof: REACT_ELEMENT_TYPE, | ||
// Built-in properties that belong on the element | ||
type: type, | ||
key: key, | ||
ref: ref, | ||
props: props, | ||
// Record the component responsible for creating this element. | ||
_owner: owner | ||
}; | ||
function ReactElement(type, key, _ref, self, source, owner, props) { | ||
var ref; | ||
{ | ||
// When enableRefAsProp is on, ignore whatever was passed as the ref | ||
// argument and treat `props.ref` as the source of truth. The only thing we | ||
// use this for is `element.ref`, which will log a deprecation warning on | ||
// access. In the next release, we can remove `element.ref` as well as the | ||
// `ref` argument. | ||
var refProp = props.ref; // An undefined `element.ref` is coerced to `null` for | ||
// backwards compatibility. | ||
ref = refProp !== undefined ? refProp : null; | ||
} | ||
var element; | ||
{ | ||
// In dev, make `ref` a non-enumerable property with a warning. It's non- | ||
// enumerable so that test matchers and serializers don't access it and | ||
// trigger the warning. | ||
// | ||
// `ref` will be removed from the element completely in a future release. | ||
element = { | ||
// This tag allows us to uniquely identify this as a React Element | ||
$$typeof: REACT_ELEMENT_TYPE, | ||
// Built-in properties that belong on the element | ||
type: type, | ||
key: key, | ||
props: props, | ||
// Record the component responsible for creating this element. | ||
_owner: owner | ||
}; | ||
if (ref !== null) { | ||
Object.defineProperty(element, 'ref', { | ||
enumerable: false, | ||
get: elementRefGetterWithDeprecationWarning | ||
}); | ||
} else { | ||
// Don't warn on access if a ref is not given. This reduces false | ||
// positives in cases where a test serializer uses | ||
// getOwnPropertyDescriptors to compare objects, like Jest does, which is | ||
// a problem because it bypasses non-enumerability. | ||
// | ||
// So unfortunately this will trigger a false positive warning in Jest | ||
// when the diff is printed: | ||
// | ||
// expect(<div ref={ref} />).toEqual(<span ref={ref} />); | ||
// | ||
// A bit sketchy, but this is what we've done for the `props.key` and | ||
// `props.ref` accessors for years, which implies it will be good enough | ||
// for `element.ref`, too. Let's see if anyone complains. | ||
Object.defineProperty(element, 'ref', { | ||
enumerable: false, | ||
value: null | ||
}); | ||
} | ||
} | ||
{ | ||
// The validation flag is currently mutative. We put it on | ||
@@ -965,17 +937,9 @@ // an external backing store so that we can freeze the whole object. | ||
value: false | ||
}); // self and source are DEV only properties. | ||
}); // debugInfo contains Server Component debug information. | ||
Object.defineProperty(element, '_self', { | ||
Object.defineProperty(element, '_debugInfo', { | ||
configurable: false, | ||
enumerable: false, | ||
writable: false, | ||
value: self | ||
}); // Two elements created in two different places should be considered | ||
// equal for testing purposes and therefore we hide it from enumeration. | ||
Object.defineProperty(element, '_source', { | ||
configurable: false, | ||
enumerable: false, | ||
writable: false, | ||
value: source | ||
writable: true, | ||
value: null | ||
}); | ||
@@ -991,2 +955,3 @@ | ||
} | ||
var didWarnAboutKeySpread = {}; | ||
/** | ||
@@ -999,7 +964,74 @@ * https://github.com/reactjs/rfcs/pull/107 | ||
function jsxDEV$1(type, config, maybeKey, source, self) { | ||
function jsxDEV$1(type, config, maybeKey, isStaticChildren, source, self) { | ||
{ | ||
var propName; // Reserved names are extracted | ||
if (!isValidElementType(type)) { | ||
// This is an invalid element type. | ||
// | ||
// We warn in this case but don't throw. We expect the element creation to | ||
// succeed and there will likely be errors in render. | ||
var info = ''; | ||
var props = {}; | ||
if (type === undefined || typeof type === 'object' && type !== null && Object.keys(type).length === 0) { | ||
info += ' You likely forgot to export your component from the file ' + "it's defined in, or you might have mixed up default and named imports."; | ||
} | ||
var typeString; | ||
if (type === null) { | ||
typeString = 'null'; | ||
} else if (isArray(type)) { | ||
typeString = 'array'; | ||
} else if (type !== undefined && type.$$typeof === REACT_ELEMENT_TYPE) { | ||
typeString = "<" + (getComponentNameFromType(type.type) || 'Unknown') + " />"; | ||
info = ' Did you accidentally export a JSX literal instead of a component?'; | ||
} else { | ||
typeString = typeof type; | ||
} | ||
error('React.jsx: type is invalid -- expected a string (for ' + 'built-in components) or a class/function (for composite ' + 'components) but got: %s.%s', typeString, info); | ||
} else { | ||
// This is a valid element type. | ||
// Skip key warning if the type isn't valid since our key validation logic | ||
// doesn't expect a non-string/function type and can throw confusing | ||
// errors. We don't want exception behavior to differ between dev and | ||
// prod. (Rendering will throw with a helpful message and as soon as the | ||
// type is fixed, the key warnings will appear.) | ||
var children = config.children; | ||
if (children !== undefined) { | ||
if (isStaticChildren) { | ||
if (isArray(children)) { | ||
for (var i = 0; i < children.length; i++) { | ||
validateChildKeys(children[i], type); | ||
} | ||
if (Object.freeze) { | ||
Object.freeze(children); | ||
} | ||
} else { | ||
error('React.jsx: Static children should always be an array. ' + 'You are likely explicitly calling React.jsxs or React.jsxDEV. ' + 'Use the Babel transform instead.'); | ||
} | ||
} else { | ||
validateChildKeys(children, type); | ||
} | ||
} | ||
} // Warn about key spread regardless of whether the type is valid. | ||
if (hasOwnProperty.call(config, 'key')) { | ||
var componentName = getComponentNameFromType(type); | ||
var keys = Object.keys(config).filter(function (k) { | ||
return k !== 'key'; | ||
}); | ||
var beforeExample = keys.length > 0 ? '{key: someKey, ' + keys.join(': ..., ') + ': ...}' : '{key: someKey}'; | ||
if (!didWarnAboutKeySpread[componentName + beforeExample]) { | ||
var afterExample = keys.length > 0 ? '{' + keys.join(': ..., ') + ': ...}' : '{}'; | ||
error('A props object containing a "key" prop is being spread into JSX:\n' + ' let props = %s;\n' + ' <%s {...props} />\n' + 'React keys must be passed directly to JSX without using spread:\n' + ' let props = %s;\n' + ' <%s key={someKey} {...props} />', beforeExample, componentName, afterExample, componentName); | ||
didWarnAboutKeySpread[componentName + beforeExample] = true; | ||
} | ||
} | ||
var key = null; | ||
@@ -1029,21 +1061,29 @@ var ref = null; // Currently, key can be spread in as a prop. This causes a potential | ||
if (hasValidRef(config)) { | ||
ref = config.ref; | ||
warnIfStringRefCannotBeAutoConverted(config, self); | ||
} // Remaining properties are added to a new props object | ||
if (hasValidRef(config)) ; | ||
var props; | ||
for (propName in config) { | ||
if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) { | ||
props[propName] = config[propName]; | ||
} | ||
} // Resolve default props | ||
if (!('key' in config)) { | ||
// If key was not spread in, we can reuse the original props object. This | ||
// only works for `jsx`, not `createElement`, because `jsx` is a compiler | ||
// target and the compiler always passes a new object. For `createElement`, | ||
// we can't assume a new object is passed every time because it can be | ||
// called manually. | ||
// | ||
// Spreading key is a warning in dev. In a future release, we will not | ||
// remove a spread key from the props object. (But we'll still warn.) We'll | ||
// always pass the object straight through. | ||
props = config; | ||
} else { | ||
// We need to remove reserved props (key, prop, ref). Create a fresh props | ||
// object and copy over all the non-reserved props. We don't use `delete` | ||
// because in V8 it will deopt the object to dictionary mode. | ||
props = {}; | ||
if (type && type.defaultProps) { | ||
var defaultProps = type.defaultProps; | ||
for (propName in defaultProps) { | ||
if (props[propName] === undefined) { | ||
props[propName] = defaultProps[propName]; | ||
for (var propName in config) { | ||
// Skip over reserved prop names | ||
if (propName !== 'key' && (enableRefAsProp )) { | ||
{ | ||
props[propName] = config[propName]; | ||
} | ||
} | ||
@@ -1053,3 +1093,3 @@ } | ||
if (key || ref) { | ||
if (key || !enableRefAsProp ) { | ||
var displayName = typeof type === 'function' ? type.displayName || type.name || 'Unknown' : type; | ||
@@ -1060,45 +1100,11 @@ | ||
} | ||
if (ref) { | ||
defineRefPropWarningGetter(props, displayName); | ||
} | ||
} | ||
return ReactElement(type, key, ref, self, source, ReactCurrentOwner$1.current, props); | ||
} | ||
} | ||
var element = ReactElement(type, key, ref, self, source, ReactSharedInternals.owner, props); | ||
var ReactCurrentOwner = ReactSharedInternals.ReactCurrentOwner; | ||
var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame; | ||
var REACT_CLIENT_REFERENCE = Symbol.for('react.client.reference'); | ||
function setCurrentlyValidatingElement(element) { | ||
{ | ||
if (element) { | ||
var owner = element._owner; | ||
var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null); | ||
ReactDebugCurrentFrame.setExtraStackFrame(stack); | ||
} else { | ||
ReactDebugCurrentFrame.setExtraStackFrame(null); | ||
if (type === REACT_FRAGMENT_TYPE) { | ||
validateFragmentProps(element); | ||
} | ||
} | ||
} | ||
var propTypesMisspellWarningShown; | ||
{ | ||
propTypesMisspellWarningShown = false; | ||
} | ||
/** | ||
* Verifies the object is a ReactElement. | ||
* See https://reactjs.org/docs/react-api.html#isvalidelement | ||
* @param {?object} object | ||
* @return {boolean} True if `object` is a ReactElement. | ||
* @final | ||
*/ | ||
function isValidElement(object) { | ||
{ | ||
return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE; | ||
return element; | ||
} | ||
@@ -1109,4 +1115,4 @@ } | ||
{ | ||
if (ReactCurrentOwner.current) { | ||
var name = getComponentNameFromType(ReactCurrentOwner.current.type); | ||
if (ReactSharedInternals.owner) { | ||
var name = getComponentNameFromType(ReactSharedInternals.owner.type); | ||
@@ -1121,83 +1127,3 @@ if (name) { | ||
} | ||
function getSourceInfoErrorAddendum(source) { | ||
{ | ||
if (source !== undefined) { | ||
var fileName = source.fileName.replace(/^.*[\\\/]/, ''); | ||
var lineNumber = source.lineNumber; | ||
return '\n\nCheck your code at ' + fileName + ':' + lineNumber + '.'; | ||
} | ||
return ''; | ||
} | ||
} | ||
/** | ||
* Warn if there's no key explicitly set on dynamic arrays of children or | ||
* object keys are not valid. This allows us to keep track of children between | ||
* updates. | ||
*/ | ||
var ownerHasKeyUseWarning = {}; | ||
function getCurrentComponentErrorInfo(parentType) { | ||
{ | ||
var info = getDeclarationErrorAddendum(); | ||
if (!info) { | ||
var parentName = getComponentNameFromType(parentType); | ||
if (parentName) { | ||
info = "\n\nCheck the top-level render call using <" + parentName + ">."; | ||
} | ||
} | ||
return info; | ||
} | ||
} | ||
/** | ||
* Warn if the element doesn't have an explicit key assigned to it. | ||
* This element is in an array. The array could grow and shrink or be | ||
* reordered. All children that haven't already been validated are required to | ||
* have a "key" property assigned to it. Error statuses are cached so a warning | ||
* will only be shown once. | ||
* | ||
* @internal | ||
* @param {ReactElement} element Element that requires a key. | ||
* @param {*} parentType element's parent's type. | ||
*/ | ||
function validateExplicitKey(element, parentType) { | ||
{ | ||
if (!element._store || element._store.validated || element.key != null) { | ||
return; | ||
} | ||
element._store.validated = true; | ||
var currentComponentErrorInfo = getCurrentComponentErrorInfo(parentType); | ||
if (ownerHasKeyUseWarning[currentComponentErrorInfo]) { | ||
return; | ||
} | ||
ownerHasKeyUseWarning[currentComponentErrorInfo] = true; // Usually the current owner is the offender, but if it accepts children as a | ||
// property, it may be the creator of the child that's responsible for | ||
// assigning it a key. | ||
var childOwner = ''; | ||
if (element && element._owner && element._owner !== ReactCurrentOwner.current) { | ||
// Give the component that originally created this child. | ||
childOwner = " It was passed a child from " + getComponentNameFromType(element._owner.type) + "."; | ||
} | ||
setCurrentlyValidatingElement(element); | ||
error('Each child in a list should have a unique "key" prop.' + '%s%s See https://reactjs.org/link/warning-keys for more information.', currentComponentErrorInfo, childOwner); | ||
setCurrentlyValidatingElement(null); | ||
} | ||
} | ||
/** | ||
* Ensure that every element either is passed in a static location, in an | ||
@@ -1253,48 +1179,90 @@ * array with an explicit keys property defined, or in an object literal | ||
/** | ||
* Given an element, validate that its props follow the propTypes definition, | ||
* provided by the type. | ||
* Verifies the object is a ReactElement. | ||
* See https://reactjs.org/docs/react-api.html#isvalidelement | ||
* @param {?object} object | ||
* @return {boolean} True if `object` is a ReactElement. | ||
* @final | ||
*/ | ||
function isValidElement(object) { | ||
return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE; | ||
} | ||
var ownerHasKeyUseWarning = {}; | ||
/** | ||
* Warn if the element doesn't have an explicit key assigned to it. | ||
* This element is in an array. The array could grow and shrink or be | ||
* reordered. All children that haven't already been validated are required to | ||
* have a "key" property assigned to it. Error statuses are cached so a warning | ||
* will only be shown once. | ||
* | ||
* @param {ReactElement} element | ||
* @internal | ||
* @param {ReactElement} element Element that requires a key. | ||
* @param {*} parentType element's parent's type. | ||
*/ | ||
function validatePropTypes(element) { | ||
function validateExplicitKey(element, parentType) { | ||
{ | ||
var type = element.type; | ||
if (type === null || type === undefined || typeof type === 'string') { | ||
if (!element._store || element._store.validated || element.key != null) { | ||
return; | ||
} | ||
if (type.$$typeof === REACT_CLIENT_REFERENCE) { | ||
element._store.validated = true; | ||
var currentComponentErrorInfo = getCurrentComponentErrorInfo(parentType); | ||
if (ownerHasKeyUseWarning[currentComponentErrorInfo]) { | ||
return; | ||
} | ||
var propTypes; | ||
ownerHasKeyUseWarning[currentComponentErrorInfo] = true; // Usually the current owner is the offender, but if it accepts children as a | ||
// property, it may be the creator of the child that's responsible for | ||
// assigning it a key. | ||
if (typeof type === 'function') { | ||
propTypes = type.propTypes; | ||
} else if (typeof type === 'object' && (type.$$typeof === REACT_FORWARD_REF_TYPE || // Note: Memo only checks outer props here. | ||
// Inner props are checked in the reconciler. | ||
type.$$typeof === REACT_MEMO_TYPE)) { | ||
propTypes = type.propTypes; | ||
var childOwner = ''; | ||
if (element && element._owner != null && element._owner !== ReactSharedInternals.owner) { | ||
var ownerName = null; | ||
if (typeof element._owner.tag === 'number') { | ||
ownerName = getComponentNameFromType(element._owner.type); | ||
} else if (typeof element._owner.name === 'string') { | ||
ownerName = element._owner.name; | ||
} // Give the component that originally created this child. | ||
childOwner = " It was passed a child from " + ownerName + "."; | ||
} | ||
setCurrentlyValidatingElement(element); | ||
error('Each child in a list should have a unique "key" prop.' + '%s%s See https://react.dev/link/warning-keys for more information.', currentComponentErrorInfo, childOwner); | ||
setCurrentlyValidatingElement(null); | ||
} | ||
} | ||
function setCurrentlyValidatingElement(element) { | ||
{ | ||
if (element) { | ||
var stack = describeUnknownElementTypeFrameInDEV(element.type); | ||
ReactSharedInternals.setExtraStackFrame(stack); | ||
} else { | ||
return; | ||
ReactSharedInternals.setExtraStackFrame(null); | ||
} | ||
} | ||
} | ||
if (propTypes) { | ||
// Intentionally inside to avoid triggering lazy initializers: | ||
var name = getComponentNameFromType(type); | ||
checkPropTypes(propTypes, element.props, 'prop', name, element); | ||
} else if (type.PropTypes !== undefined && !propTypesMisspellWarningShown) { | ||
propTypesMisspellWarningShown = true; // Intentionally inside to avoid triggering lazy initializers: | ||
function getCurrentComponentErrorInfo(parentType) { | ||
{ | ||
var info = getDeclarationErrorAddendum(); | ||
var _name = getComponentNameFromType(type); | ||
if (!info) { | ||
var parentName = getComponentNameFromType(parentType); | ||
error('Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?', _name || 'Unknown'); | ||
if (parentName) { | ||
info = "\n\nCheck the top-level render call using <" + parentName + ">."; | ||
} | ||
} | ||
if (typeof type.getDefaultProps === 'function' && !type.getDefaultProps.isReactClassApproved) { | ||
error('getDefaultProps is only used on classic React.createClass ' + 'definitions. Use a static property named `defaultProps` instead.'); | ||
} | ||
return info; | ||
} | ||
@@ -1309,2 +1277,3 @@ } | ||
function validateFragmentProps(fragment) { | ||
// TODO: Move this to render phase instead of at element creation. | ||
{ | ||
@@ -1325,112 +1294,7 @@ var keys = Object.keys(fragment.props); | ||
} | ||
if (fragment.ref !== null) { | ||
setCurrentlyValidatingElement(fragment); | ||
error('Invalid attribute `ref` supplied to `React.Fragment`.'); | ||
setCurrentlyValidatingElement(null); | ||
} | ||
} | ||
} | ||
var didWarnAboutKeySpread = {}; | ||
function jsxWithValidation(type, props, key, isStaticChildren, source, self) { | ||
{ | ||
var validType = isValidElementType(type); // We warn in this case but don't throw. We expect the element creation to | ||
// succeed and there will likely be errors in render. | ||
var jsxDEV = jsxDEV$1 ; | ||
if (!validType) { | ||
var info = ''; | ||
if (type === undefined || typeof type === 'object' && type !== null && Object.keys(type).length === 0) { | ||
info += ' You likely forgot to export your component from the file ' + "it's defined in, or you might have mixed up default and named imports."; | ||
} | ||
var sourceInfo = getSourceInfoErrorAddendum(source); | ||
if (sourceInfo) { | ||
info += sourceInfo; | ||
} else { | ||
info += getDeclarationErrorAddendum(); | ||
} | ||
var typeString; | ||
if (type === null) { | ||
typeString = 'null'; | ||
} else if (isArray(type)) { | ||
typeString = 'array'; | ||
} else if (type !== undefined && type.$$typeof === REACT_ELEMENT_TYPE) { | ||
typeString = "<" + (getComponentNameFromType(type.type) || 'Unknown') + " />"; | ||
info = ' Did you accidentally export a JSX literal instead of a component?'; | ||
} else { | ||
typeString = typeof type; | ||
} | ||
error('React.jsx: type is invalid -- expected a string (for ' + 'built-in components) or a class/function (for composite ' + 'components) but got: %s.%s', typeString, info); | ||
} | ||
var element = jsxDEV$1(type, props, key, source, self); // The result can be nullish if a mock or a custom function is used. | ||
// TODO: Drop this when these are no longer allowed as the type argument. | ||
if (element == null) { | ||
return element; | ||
} // Skip key warning if the type isn't valid since our key validation logic | ||
// doesn't expect a non-string/function type and can throw confusing errors. | ||
// We don't want exception behavior to differ between dev and prod. | ||
// (Rendering will throw with a helpful message and as soon as the type is | ||
// fixed, the key warnings will appear.) | ||
if (validType) { | ||
var children = props.children; | ||
if (children !== undefined) { | ||
if (isStaticChildren) { | ||
if (isArray(children)) { | ||
for (var i = 0; i < children.length; i++) { | ||
validateChildKeys(children[i], type); | ||
} | ||
if (Object.freeze) { | ||
Object.freeze(children); | ||
} | ||
} else { | ||
error('React.jsx: Static children should always be an array. ' + 'You are likely explicitly calling React.jsxs or React.jsxDEV. ' + 'Use the Babel transform instead.'); | ||
} | ||
} else { | ||
validateChildKeys(children, type); | ||
} | ||
} | ||
} | ||
if (hasOwnProperty.call(props, 'key')) { | ||
var componentName = getComponentNameFromType(type); | ||
var keys = Object.keys(props).filter(function (k) { | ||
return k !== 'key'; | ||
}); | ||
var beforeExample = keys.length > 0 ? '{key: someKey, ' + keys.join(': ..., ') + ': ...}' : '{key: someKey}'; | ||
if (!didWarnAboutKeySpread[componentName + beforeExample]) { | ||
var afterExample = keys.length > 0 ? '{' + keys.join(': ..., ') + ': ...}' : '{}'; | ||
error('A props object containing a "key" prop is being spread into JSX:\n' + ' let props = %s;\n' + ' <%s {...props} />\n' + 'React keys must be passed directly to JSX without using spread:\n' + ' let props = %s;\n' + ' <%s key={someKey} {...props} />', beforeExample, componentName, afterExample, componentName); | ||
didWarnAboutKeySpread[componentName + beforeExample] = true; | ||
} | ||
} | ||
if (type === REACT_FRAGMENT_TYPE) { | ||
validateFragmentProps(element); | ||
} else { | ||
validatePropTypes(element); | ||
} | ||
return element; | ||
} | ||
} // These two functions exist to still get child warnings in dev | ||
var jsxDEV = jsxWithValidation ; | ||
exports.Fragment = REACT_FRAGMENT_TYPE; | ||
@@ -1437,0 +1301,0 @@ exports.jsxDEV = jsxDEV; |
@@ -28,3 +28,5 @@ /** | ||
var REACT_PROFILER_TYPE = Symbol.for('react.profiler'); | ||
var REACT_PROVIDER_TYPE = Symbol.for('react.provider'); | ||
var REACT_PROVIDER_TYPE = Symbol.for('react.provider'); // TODO: Delete with enableRenderableContext | ||
var REACT_CONSUMER_TYPE = Symbol.for('react.consumer'); | ||
var REACT_CONTEXT_TYPE = Symbol.for('react.context'); | ||
@@ -37,3 +39,2 @@ var REACT_FORWARD_REF_TYPE = Symbol.for('react.forward_ref'); | ||
var REACT_OFFSCREEN_TYPE = Symbol.for('react.offscreen'); | ||
var REACT_CACHE_TYPE = Symbol.for('react.cache'); | ||
var MAYBE_ITERATOR_SYMBOL = Symbol.iterator; | ||
@@ -55,3 +56,3 @@ var FAUX_ITERATOR_SYMBOL = '@@iterator'; | ||
var ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED; | ||
var ReactSharedInternals = React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE; | ||
@@ -74,4 +75,3 @@ function error(format) { | ||
{ | ||
var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame; | ||
var stack = ReactDebugCurrentFrame.getStackAddendum(); | ||
var stack = ReactSharedInternals.getStackAddendum(); | ||
@@ -102,2 +102,9 @@ if (stack !== '') { | ||
var enableLegacyHidden = false; // Enables unstable_avoidThisFallback feature in Fiber | ||
// as a normal prop instead of stripping it from the props object. | ||
// Passes `ref` as a normal prop instead of stripping it from the props object | ||
// during element creation. | ||
var enableRefAsProp = true; | ||
var enableRenderableContext = true; // ----------------------------------------------------------------------------- | ||
// stuff. Intended to enable React core members to more easily debug scheduling | ||
@@ -108,26 +115,2 @@ // issues in DEV builds. | ||
var REACT_CLIENT_REFERENCE$2 = Symbol.for('react.client.reference'); | ||
function isValidElementType(type) { | ||
if (typeof type === 'string' || typeof type === 'function') { | ||
return true; | ||
} // Note: typeof might be other than 'symbol' or 'number' (e.g. if it's a polyfill). | ||
if (type === REACT_FRAGMENT_TYPE || type === REACT_PROFILER_TYPE || enableDebugTracing || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || enableLegacyHidden || type === REACT_OFFSCREEN_TYPE || enableScopeAPI || type === REACT_CACHE_TYPE || enableTransitionTracing ) { | ||
return true; | ||
} | ||
if (typeof type === 'object' && type !== null) { | ||
if (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || // This needs to include all possible module reference object | ||
// types supported by any Flight configuration anywhere since | ||
// we don't know which Flight build this will end up being used | ||
// with. | ||
type.$$typeof === REACT_CLIENT_REFERENCE$2 || type.getModuleId !== undefined) { | ||
return true; | ||
} | ||
} | ||
return false; | ||
} | ||
function getWrappedName(outerType, innerType, wrapperName) { | ||
@@ -149,3 +132,3 @@ var displayName = outerType.displayName; | ||
var REACT_CLIENT_REFERENCE$1 = Symbol.for('react.client.reference'); // Note that the reconciler package should generally prefer to use getComponentNameFromFiber() instead. | ||
var REACT_CLIENT_REFERENCE$2 = Symbol.for('react.client.reference'); // Note that the reconciler package should generally prefer to use getComponentNameFromFiber() instead. | ||
@@ -159,3 +142,3 @@ function getComponentNameFromType(type) { | ||
if (typeof type === 'function') { | ||
if (type.$$typeof === REACT_CLIENT_REFERENCE$1) { | ||
if (type.$$typeof === REACT_CLIENT_REFERENCE$2) { | ||
// TODO: Create a convention for naming client references with debug info. | ||
@@ -191,7 +174,2 @@ return null; | ||
case REACT_CACHE_TYPE: | ||
{ | ||
return 'Cache'; | ||
} | ||
} | ||
@@ -207,10 +185,20 @@ | ||
switch (type.$$typeof) { | ||
case REACT_PROVIDER_TYPE: | ||
{ | ||
return null; | ||
} | ||
case REACT_CONTEXT_TYPE: | ||
var context = type; | ||
return getContextName(context) + '.Consumer'; | ||
case REACT_PROVIDER_TYPE: | ||
var provider = type; | ||
return getContextName(provider._context) + '.Provider'; | ||
{ | ||
return getContextName(context) + '.Provider'; | ||
} | ||
case REACT_CONSUMER_TYPE: | ||
{ | ||
var consumer = type; | ||
return getContextName(consumer._context) + '.Consumer'; | ||
} | ||
case REACT_FORWARD_REF_TYPE: | ||
@@ -246,4 +234,105 @@ return getWrappedName(type, type.render, 'ForwardRef'); | ||
// $FlowFixMe[method-unbinding] | ||
var hasOwnProperty = Object.prototype.hasOwnProperty; | ||
var assign = Object.assign; | ||
/* | ||
* The `'' + value` pattern (used in perf-sensitive code) throws for Symbol | ||
* and Temporal.* types. See https://github.com/facebook/react/pull/22064. | ||
* | ||
* The functions in this module will throw an easier-to-understand, | ||
* easier-to-debug exception with a clear errors message message explaining the | ||
* problem. (Instead of a confusing exception thrown inside the implementation | ||
* of the `value` object). | ||
*/ | ||
// $FlowFixMe[incompatible-return] only called in DEV, so void return is not possible. | ||
function typeName(value) { | ||
{ | ||
// toStringTag is needed for namespaced types like Temporal.Instant | ||
var hasToStringTag = typeof Symbol === 'function' && Symbol.toStringTag; | ||
var type = hasToStringTag && value[Symbol.toStringTag] || value.constructor.name || 'Object'; // $FlowFixMe[incompatible-return] | ||
return type; | ||
} | ||
} // $FlowFixMe[incompatible-return] only called in DEV, so void return is not possible. | ||
function willCoercionThrow(value) { | ||
{ | ||
try { | ||
testStringCoercion(value); | ||
return false; | ||
} catch (e) { | ||
return true; | ||
} | ||
} | ||
} | ||
function testStringCoercion(value) { | ||
// If you ended up here by following an exception call stack, here's what's | ||
// happened: you supplied an object or symbol value to React (as a prop, key, | ||
// DOM attribute, CSS property, string ref, etc.) and when React tried to | ||
// coerce it to a string using `'' + value`, an exception was thrown. | ||
// | ||
// The most common types that will cause this exception are `Symbol` instances | ||
// and Temporal objects like `Temporal.Instant`. But any object that has a | ||
// `valueOf` or `[Symbol.toPrimitive]` method that throws will also cause this | ||
// exception. (Library authors do this to prevent users from using built-in | ||
// numeric operators like `+` or comparison operators like `>=` because custom | ||
// methods are needed to perform accurate arithmetic or comparison.) | ||
// | ||
// To fix the problem, coerce this object or symbol value to a string before | ||
// passing it to React. The most reliable way is usually `String(value)`. | ||
// | ||
// To find which value is throwing, check the browser or debugger console. | ||
// Before this exception was thrown, there should be `console.error` output | ||
// that shows the type (Symbol, Temporal.PlainDate, etc.) that caused the | ||
// problem and how that type was used: key, atrribute, input value prop, etc. | ||
// In most cases, this console output also shows the component and its | ||
// ancestor components where the exception happened. | ||
// | ||
// eslint-disable-next-line react-internal/safe-string-coercion | ||
return '' + value; | ||
} | ||
function checkKeyStringCoercion(value) { | ||
{ | ||
if (willCoercionThrow(value)) { | ||
error('The provided key is an unsupported type %s.' + ' This value must be coerced to a string before using it here.', typeName(value)); | ||
return testStringCoercion(value); // throw (to help callers find troubleshooting comments) | ||
} | ||
} | ||
} | ||
var REACT_CLIENT_REFERENCE$1 = Symbol.for('react.client.reference'); | ||
function isValidElementType(type) { | ||
if (typeof type === 'string' || typeof type === 'function') { | ||
return true; | ||
} // Note: typeof might be other than 'symbol' or 'number' (e.g. if it's a polyfill). | ||
if (type === REACT_FRAGMENT_TYPE || type === REACT_PROFILER_TYPE || enableDebugTracing || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || enableLegacyHidden || type === REACT_OFFSCREEN_TYPE || enableScopeAPI || enableTransitionTracing ) { | ||
return true; | ||
} | ||
if (typeof type === 'object' && type !== null) { | ||
if (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || !enableRenderableContext || type.$$typeof === REACT_CONSUMER_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || // This needs to include all possible module reference object | ||
// types supported by any Flight configuration anywhere since | ||
// we don't know which Flight build this will end up being used | ||
// with. | ||
type.$$typeof === REACT_CLIENT_REFERENCE$1 || type.getModuleId !== undefined) { | ||
return true; | ||
} | ||
} | ||
return false; | ||
} | ||
var isArrayImpl = Array.isArray; // eslint-disable-next-line no-redeclare | ||
function isArray(a) { | ||
return isArrayImpl(a); | ||
} | ||
// Helpers to patch console.logs to avoid logging during side-effect free | ||
@@ -343,5 +432,4 @@ // replaying on render function. This currently only patches the object | ||
var ReactCurrentDispatcher = ReactSharedInternals.ReactCurrentDispatcher; | ||
var prefix; | ||
function describeBuiltInComponentFrame(name, source, ownerFn) { | ||
function describeBuiltInComponentFrame(name) { | ||
{ | ||
@@ -400,9 +488,9 @@ if (prefix === undefined) { | ||
Error.prepareStackTrace = undefined; | ||
var previousDispatcher; | ||
var previousDispatcher = null; | ||
{ | ||
previousDispatcher = ReactCurrentDispatcher.current; // Set the dispatcher in DEV because this might be call in the render function | ||
previousDispatcher = ReactSharedInternals.H; // Set the dispatcher in DEV because this might be call in the render function | ||
// for warnings. | ||
ReactCurrentDispatcher.current = null; | ||
ReactSharedInternals.H = null; | ||
disableLogs(); | ||
@@ -592,3 +680,3 @@ } | ||
{ | ||
ReactCurrentDispatcher.current = previousDispatcher; | ||
ReactSharedInternals.H = previousDispatcher; | ||
reenableLogs(); | ||
@@ -612,3 +700,3 @@ } | ||
} | ||
function describeFunctionComponentFrame(fn, source, ownerFn) { | ||
function describeFunctionComponentFrame(fn) { | ||
{ | ||
@@ -624,3 +712,3 @@ return describeNativeComponentFrame(fn, false); | ||
function describeUnknownElementTypeFrameInDEV(type, source, ownerFn) { | ||
function describeUnknownElementTypeFrameInDEV(type) { | ||
@@ -656,3 +744,3 @@ if (type == null) { | ||
// Memo may contain any component type so we recursively resolve it. | ||
return describeUnknownElementTypeFrameInDEV(type.type, source, ownerFn); | ||
return describeUnknownElementTypeFrameInDEV(type.type); | ||
@@ -667,3 +755,3 @@ case REACT_LAZY_TYPE: | ||
// Lazy may contain any component type so we recursively resolve it. | ||
return describeUnknownElementTypeFrameInDEV(init(payload), source, ownerFn); | ||
return describeUnknownElementTypeFrameInDEV(init(payload)); | ||
} catch (x) {} | ||
@@ -677,156 +765,8 @@ } | ||
// $FlowFixMe[method-unbinding] | ||
var hasOwnProperty = Object.prototype.hasOwnProperty; | ||
var loggedTypeFailures = {}; | ||
var ReactDebugCurrentFrame$1 = ReactSharedInternals.ReactDebugCurrentFrame; | ||
function setCurrentlyValidatingElement$1(element) { | ||
{ | ||
if (element) { | ||
var owner = element._owner; | ||
var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null); | ||
ReactDebugCurrentFrame$1.setExtraStackFrame(stack); | ||
} else { | ||
ReactDebugCurrentFrame$1.setExtraStackFrame(null); | ||
} | ||
} | ||
} | ||
function checkPropTypes(typeSpecs, values, location, componentName, element) { | ||
{ | ||
// $FlowFixMe[incompatible-use] This is okay but Flow doesn't know it. | ||
var has = Function.call.bind(hasOwnProperty); | ||
for (var typeSpecName in typeSpecs) { | ||
if (has(typeSpecs, typeSpecName)) { | ||
var error$1 = void 0; // Prop type validation may throw. In case they do, we don't want to | ||
// fail the render phase where it didn't fail before. So we log it. | ||
// After these have been cleaned up, we'll let them throw. | ||
try { | ||
// This is intentionally an invariant that gets caught. It's the same | ||
// behavior as without this statement except with a better message. | ||
if (typeof typeSpecs[typeSpecName] !== 'function') { | ||
// eslint-disable-next-line react-internal/prod-error-codes | ||
var err = Error((componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' + 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' + 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'); | ||
err.name = 'Invariant Violation'; | ||
throw err; | ||
} | ||
error$1 = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED'); | ||
} catch (ex) { | ||
error$1 = ex; | ||
} | ||
if (error$1 && !(error$1 instanceof Error)) { | ||
setCurrentlyValidatingElement$1(element); | ||
error('%s: type specification of %s' + ' `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error$1); | ||
setCurrentlyValidatingElement$1(null); | ||
} | ||
if (error$1 instanceof Error && !(error$1.message in loggedTypeFailures)) { | ||
// Only monitor this failure once because there tends to be a lot of the | ||
// same error. | ||
loggedTypeFailures[error$1.message] = true; | ||
setCurrentlyValidatingElement$1(element); | ||
error('Failed %s type: %s', location, error$1.message); | ||
setCurrentlyValidatingElement$1(null); | ||
} | ||
} | ||
} | ||
} | ||
} | ||
var isArrayImpl = Array.isArray; // eslint-disable-next-line no-redeclare | ||
function isArray(a) { | ||
return isArrayImpl(a); | ||
} | ||
/* | ||
* The `'' + value` pattern (used in perf-sensitive code) throws for Symbol | ||
* and Temporal.* types. See https://github.com/facebook/react/pull/22064. | ||
* | ||
* The functions in this module will throw an easier-to-understand, | ||
* easier-to-debug exception with a clear errors message message explaining the | ||
* problem. (Instead of a confusing exception thrown inside the implementation | ||
* of the `value` object). | ||
*/ | ||
// $FlowFixMe[incompatible-return] only called in DEV, so void return is not possible. | ||
function typeName(value) { | ||
{ | ||
// toStringTag is needed for namespaced types like Temporal.Instant | ||
var hasToStringTag = typeof Symbol === 'function' && Symbol.toStringTag; | ||
var type = hasToStringTag && value[Symbol.toStringTag] || value.constructor.name || 'Object'; // $FlowFixMe[incompatible-return] | ||
return type; | ||
} | ||
} // $FlowFixMe[incompatible-return] only called in DEV, so void return is not possible. | ||
function willCoercionThrow(value) { | ||
{ | ||
try { | ||
testStringCoercion(value); | ||
return false; | ||
} catch (e) { | ||
return true; | ||
} | ||
} | ||
} | ||
function testStringCoercion(value) { | ||
// If you ended up here by following an exception call stack, here's what's | ||
// happened: you supplied an object or symbol value to React (as a prop, key, | ||
// DOM attribute, CSS property, string ref, etc.) and when React tried to | ||
// coerce it to a string using `'' + value`, an exception was thrown. | ||
// | ||
// The most common types that will cause this exception are `Symbol` instances | ||
// and Temporal objects like `Temporal.Instant`. But any object that has a | ||
// `valueOf` or `[Symbol.toPrimitive]` method that throws will also cause this | ||
// exception. (Library authors do this to prevent users from using built-in | ||
// numeric operators like `+` or comparison operators like `>=` because custom | ||
// methods are needed to perform accurate arithmetic or comparison.) | ||
// | ||
// To fix the problem, coerce this object or symbol value to a string before | ||
// passing it to React. The most reliable way is usually `String(value)`. | ||
// | ||
// To find which value is throwing, check the browser or debugger console. | ||
// Before this exception was thrown, there should be `console.error` output | ||
// that shows the type (Symbol, Temporal.PlainDate, etc.) that caused the | ||
// problem and how that type was used: key, atrribute, input value prop, etc. | ||
// In most cases, this console output also shows the component and its | ||
// ancestor components where the exception happened. | ||
// | ||
// eslint-disable-next-line react-internal/safe-string-coercion | ||
return '' + value; | ||
} | ||
function checkKeyStringCoercion(value) { | ||
{ | ||
if (willCoercionThrow(value)) { | ||
error('The provided key is an unsupported type %s.' + ' This value must be coerced to a string before using it here.', typeName(value)); | ||
return testStringCoercion(value); // throw (to help callers find troubleshooting comments) | ||
} | ||
} | ||
} | ||
var ReactCurrentOwner$1 = ReactSharedInternals.ReactCurrentOwner; | ||
var RESERVED_PROPS = { | ||
key: true, | ||
ref: true, | ||
__self: true, | ||
__source: true | ||
}; | ||
var REACT_CLIENT_REFERENCE = Symbol.for('react.client.reference'); | ||
var specialPropKeyWarningShown; | ||
var specialPropRefWarningShown; | ||
var didWarnAboutStringRefs; | ||
var didWarnAboutElementRef; | ||
{ | ||
didWarnAboutStringRefs = {}; | ||
didWarnAboutElementRef = {}; | ||
} | ||
@@ -862,16 +802,2 @@ | ||
function warnIfStringRefCannotBeAutoConverted(config, self) { | ||
{ | ||
if (typeof config.ref === 'string' && ReactCurrentOwner$1.current && self && ReactCurrentOwner$1.current.stateNode !== self) { | ||
var componentName = getComponentNameFromType(ReactCurrentOwner$1.current.type); | ||
if (!didWarnAboutStringRefs[componentName]) { | ||
error('Component "%s" contains the string ref "%s". ' + 'Support for string refs will be removed in a future major release. ' + 'This case cannot be automatically converted to an arrow function. ' + 'We ask you to manually fix this case by using useRef() or createRef() instead. ' + 'Learn more about using refs safely here: ' + 'https://reactjs.org/link/strict-mode-string-ref', getComponentNameFromType(ReactCurrentOwner$1.current.type), config.ref); | ||
didWarnAboutStringRefs[componentName] = true; | ||
} | ||
} | ||
} | ||
} | ||
function defineKeyPropWarningGetter(props, displayName) { | ||
@@ -883,3 +809,3 @@ { | ||
error('%s: `key` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://reactjs.org/link/special-props)', displayName); | ||
error('%s: `key` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://react.dev/link/special-props)', displayName); | ||
} | ||
@@ -896,17 +822,16 @@ }; | ||
function defineRefPropWarningGetter(props, displayName) { | ||
function elementRefGetterWithDeprecationWarning() { | ||
{ | ||
var warnAboutAccessingRef = function () { | ||
if (!specialPropRefWarningShown) { | ||
specialPropRefWarningShown = true; | ||
var componentName = getComponentNameFromType(this.type); | ||
error('%s: `ref` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://reactjs.org/link/special-props)', displayName); | ||
} | ||
}; | ||
if (!didWarnAboutElementRef[componentName]) { | ||
didWarnAboutElementRef[componentName] = true; | ||
warnAboutAccessingRef.isReactWarning = true; | ||
Object.defineProperty(props, 'ref', { | ||
get: warnAboutAccessingRef, | ||
configurable: true | ||
}); | ||
error('Accessing element.ref was removed in React 19. ref is now a ' + 'regular prop. It will be removed from the JSX Element ' + 'type in a future release.'); | ||
} // An undefined `element.ref` is coerced to `null` for | ||
// backwards compatibility. | ||
var refProp = this.props.ref; | ||
return refProp !== undefined ? refProp : null; | ||
} | ||
@@ -936,16 +861,63 @@ } | ||
function ReactElement(type, key, ref, self, source, owner, props) { | ||
var element = { | ||
// This tag allows us to uniquely identify this as a React Element | ||
$$typeof: REACT_ELEMENT_TYPE, | ||
// Built-in properties that belong on the element | ||
type: type, | ||
key: key, | ||
ref: ref, | ||
props: props, | ||
// Record the component responsible for creating this element. | ||
_owner: owner | ||
}; | ||
function ReactElement(type, key, _ref, self, source, owner, props) { | ||
var ref; | ||
{ | ||
// When enableRefAsProp is on, ignore whatever was passed as the ref | ||
// argument and treat `props.ref` as the source of truth. The only thing we | ||
// use this for is `element.ref`, which will log a deprecation warning on | ||
// access. In the next release, we can remove `element.ref` as well as the | ||
// `ref` argument. | ||
var refProp = props.ref; // An undefined `element.ref` is coerced to `null` for | ||
// backwards compatibility. | ||
ref = refProp !== undefined ? refProp : null; | ||
} | ||
var element; | ||
{ | ||
// In dev, make `ref` a non-enumerable property with a warning. It's non- | ||
// enumerable so that test matchers and serializers don't access it and | ||
// trigger the warning. | ||
// | ||
// `ref` will be removed from the element completely in a future release. | ||
element = { | ||
// This tag allows us to uniquely identify this as a React Element | ||
$$typeof: REACT_ELEMENT_TYPE, | ||
// Built-in properties that belong on the element | ||
type: type, | ||
key: key, | ||
props: props, | ||
// Record the component responsible for creating this element. | ||
_owner: owner | ||
}; | ||
if (ref !== null) { | ||
Object.defineProperty(element, 'ref', { | ||
enumerable: false, | ||
get: elementRefGetterWithDeprecationWarning | ||
}); | ||
} else { | ||
// Don't warn on access if a ref is not given. This reduces false | ||
// positives in cases where a test serializer uses | ||
// getOwnPropertyDescriptors to compare objects, like Jest does, which is | ||
// a problem because it bypasses non-enumerability. | ||
// | ||
// So unfortunately this will trigger a false positive warning in Jest | ||
// when the diff is printed: | ||
// | ||
// expect(<div ref={ref} />).toEqual(<span ref={ref} />); | ||
// | ||
// A bit sketchy, but this is what we've done for the `props.key` and | ||
// `props.ref` accessors for years, which implies it will be good enough | ||
// for `element.ref`, too. Let's see if anyone complains. | ||
Object.defineProperty(element, 'ref', { | ||
enumerable: false, | ||
value: null | ||
}); | ||
} | ||
} | ||
{ | ||
// The validation flag is currently mutative. We put it on | ||
@@ -965,17 +937,9 @@ // an external backing store so that we can freeze the whole object. | ||
value: false | ||
}); // self and source are DEV only properties. | ||
}); // debugInfo contains Server Component debug information. | ||
Object.defineProperty(element, '_self', { | ||
Object.defineProperty(element, '_debugInfo', { | ||
configurable: false, | ||
enumerable: false, | ||
writable: false, | ||
value: self | ||
}); // Two elements created in two different places should be considered | ||
// equal for testing purposes and therefore we hide it from enumeration. | ||
Object.defineProperty(element, '_source', { | ||
configurable: false, | ||
enumerable: false, | ||
writable: false, | ||
value: source | ||
writable: true, | ||
value: null | ||
}); | ||
@@ -991,2 +955,27 @@ | ||
} | ||
// support `jsx` and `jsxs` when running in development. This supports the case | ||
// where a third-party dependency ships code that was compiled for production; | ||
// we want to still provide warnings in development. | ||
// | ||
// So these functions are the _dev_ implementations of the _production_ | ||
// API signatures. | ||
// | ||
// Since these functions are dev-only, it's ok to add an indirection here. They | ||
// only exist to provide different versions of `isStaticChildren`. (We shouldn't | ||
// use this pattern for the prod versions, though, because it will add an call | ||
// frame.) | ||
function jsxProdSignatureRunningInDevWithDynamicChildren(type, config, maybeKey, source, self) { | ||
{ | ||
var isStaticChildren = false; | ||
return jsxDEV(type, config, maybeKey, isStaticChildren, source, self); | ||
} | ||
} | ||
function jsxProdSignatureRunningInDevWithStaticChildren(type, config, maybeKey, source, self) { | ||
{ | ||
var isStaticChildren = true; | ||
return jsxDEV(type, config, maybeKey, isStaticChildren, source, self); | ||
} | ||
} | ||
var didWarnAboutKeySpread = {}; | ||
/** | ||
@@ -999,7 +988,74 @@ * https://github.com/reactjs/rfcs/pull/107 | ||
function jsxDEV(type, config, maybeKey, source, self) { | ||
function jsxDEV(type, config, maybeKey, isStaticChildren, source, self) { | ||
{ | ||
var propName; // Reserved names are extracted | ||
if (!isValidElementType(type)) { | ||
// This is an invalid element type. | ||
// | ||
// We warn in this case but don't throw. We expect the element creation to | ||
// succeed and there will likely be errors in render. | ||
var info = ''; | ||
var props = {}; | ||
if (type === undefined || typeof type === 'object' && type !== null && Object.keys(type).length === 0) { | ||
info += ' You likely forgot to export your component from the file ' + "it's defined in, or you might have mixed up default and named imports."; | ||
} | ||
var typeString; | ||
if (type === null) { | ||
typeString = 'null'; | ||
} else if (isArray(type)) { | ||
typeString = 'array'; | ||
} else if (type !== undefined && type.$$typeof === REACT_ELEMENT_TYPE) { | ||
typeString = "<" + (getComponentNameFromType(type.type) || 'Unknown') + " />"; | ||
info = ' Did you accidentally export a JSX literal instead of a component?'; | ||
} else { | ||
typeString = typeof type; | ||
} | ||
error('React.jsx: type is invalid -- expected a string (for ' + 'built-in components) or a class/function (for composite ' + 'components) but got: %s.%s', typeString, info); | ||
} else { | ||
// This is a valid element type. | ||
// Skip key warning if the type isn't valid since our key validation logic | ||
// doesn't expect a non-string/function type and can throw confusing | ||
// errors. We don't want exception behavior to differ between dev and | ||
// prod. (Rendering will throw with a helpful message and as soon as the | ||
// type is fixed, the key warnings will appear.) | ||
var children = config.children; | ||
if (children !== undefined) { | ||
if (isStaticChildren) { | ||
if (isArray(children)) { | ||
for (var i = 0; i < children.length; i++) { | ||
validateChildKeys(children[i], type); | ||
} | ||
if (Object.freeze) { | ||
Object.freeze(children); | ||
} | ||
} else { | ||
error('React.jsx: Static children should always be an array. ' + 'You are likely explicitly calling React.jsxs or React.jsxDEV. ' + 'Use the Babel transform instead.'); | ||
} | ||
} else { | ||
validateChildKeys(children, type); | ||
} | ||
} | ||
} // Warn about key spread regardless of whether the type is valid. | ||
if (hasOwnProperty.call(config, 'key')) { | ||
var componentName = getComponentNameFromType(type); | ||
var keys = Object.keys(config).filter(function (k) { | ||
return k !== 'key'; | ||
}); | ||
var beforeExample = keys.length > 0 ? '{key: someKey, ' + keys.join(': ..., ') + ': ...}' : '{key: someKey}'; | ||
if (!didWarnAboutKeySpread[componentName + beforeExample]) { | ||
var afterExample = keys.length > 0 ? '{' + keys.join(': ..., ') + ': ...}' : '{}'; | ||
error('A props object containing a "key" prop is being spread into JSX:\n' + ' let props = %s;\n' + ' <%s {...props} />\n' + 'React keys must be passed directly to JSX without using spread:\n' + ' let props = %s;\n' + ' <%s key={someKey} {...props} />', beforeExample, componentName, afterExample, componentName); | ||
didWarnAboutKeySpread[componentName + beforeExample] = true; | ||
} | ||
} | ||
var key = null; | ||
@@ -1029,21 +1085,29 @@ var ref = null; // Currently, key can be spread in as a prop. This causes a potential | ||
if (hasValidRef(config)) { | ||
ref = config.ref; | ||
warnIfStringRefCannotBeAutoConverted(config, self); | ||
} // Remaining properties are added to a new props object | ||
if (hasValidRef(config)) ; | ||
var props; | ||
for (propName in config) { | ||
if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) { | ||
props[propName] = config[propName]; | ||
} | ||
} // Resolve default props | ||
if (!('key' in config)) { | ||
// If key was not spread in, we can reuse the original props object. This | ||
// only works for `jsx`, not `createElement`, because `jsx` is a compiler | ||
// target and the compiler always passes a new object. For `createElement`, | ||
// we can't assume a new object is passed every time because it can be | ||
// called manually. | ||
// | ||
// Spreading key is a warning in dev. In a future release, we will not | ||
// remove a spread key from the props object. (But we'll still warn.) We'll | ||
// always pass the object straight through. | ||
props = config; | ||
} else { | ||
// We need to remove reserved props (key, prop, ref). Create a fresh props | ||
// object and copy over all the non-reserved props. We don't use `delete` | ||
// because in V8 it will deopt the object to dictionary mode. | ||
props = {}; | ||
if (type && type.defaultProps) { | ||
var defaultProps = type.defaultProps; | ||
for (propName in defaultProps) { | ||
if (props[propName] === undefined) { | ||
props[propName] = defaultProps[propName]; | ||
for (var propName in config) { | ||
// Skip over reserved prop names | ||
if (propName !== 'key' && (enableRefAsProp )) { | ||
{ | ||
props[propName] = config[propName]; | ||
} | ||
} | ||
@@ -1053,3 +1117,3 @@ } | ||
if (key || ref) { | ||
if (key || !enableRefAsProp ) { | ||
var displayName = typeof type === 'function' ? type.displayName || type.name || 'Unknown' : type; | ||
@@ -1060,45 +1124,11 @@ | ||
} | ||
if (ref) { | ||
defineRefPropWarningGetter(props, displayName); | ||
} | ||
} | ||
return ReactElement(type, key, ref, self, source, ReactCurrentOwner$1.current, props); | ||
} | ||
} | ||
var element = ReactElement(type, key, ref, self, source, ReactSharedInternals.owner, props); | ||
var ReactCurrentOwner = ReactSharedInternals.ReactCurrentOwner; | ||
var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame; | ||
var REACT_CLIENT_REFERENCE = Symbol.for('react.client.reference'); | ||
function setCurrentlyValidatingElement(element) { | ||
{ | ||
if (element) { | ||
var owner = element._owner; | ||
var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null); | ||
ReactDebugCurrentFrame.setExtraStackFrame(stack); | ||
} else { | ||
ReactDebugCurrentFrame.setExtraStackFrame(null); | ||
if (type === REACT_FRAGMENT_TYPE) { | ||
validateFragmentProps(element); | ||
} | ||
} | ||
} | ||
var propTypesMisspellWarningShown; | ||
{ | ||
propTypesMisspellWarningShown = false; | ||
} | ||
/** | ||
* Verifies the object is a ReactElement. | ||
* See https://reactjs.org/docs/react-api.html#isvalidelement | ||
* @param {?object} object | ||
* @return {boolean} True if `object` is a ReactElement. | ||
* @final | ||
*/ | ||
function isValidElement(object) { | ||
{ | ||
return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE; | ||
return element; | ||
} | ||
@@ -1109,4 +1139,4 @@ } | ||
{ | ||
if (ReactCurrentOwner.current) { | ||
var name = getComponentNameFromType(ReactCurrentOwner.current.type); | ||
if (ReactSharedInternals.owner) { | ||
var name = getComponentNameFromType(ReactSharedInternals.owner.type); | ||
@@ -1121,83 +1151,3 @@ if (name) { | ||
} | ||
function getSourceInfoErrorAddendum(source) { | ||
{ | ||
if (source !== undefined) { | ||
var fileName = source.fileName.replace(/^.*[\\\/]/, ''); | ||
var lineNumber = source.lineNumber; | ||
return '\n\nCheck your code at ' + fileName + ':' + lineNumber + '.'; | ||
} | ||
return ''; | ||
} | ||
} | ||
/** | ||
* Warn if there's no key explicitly set on dynamic arrays of children or | ||
* object keys are not valid. This allows us to keep track of children between | ||
* updates. | ||
*/ | ||
var ownerHasKeyUseWarning = {}; | ||
function getCurrentComponentErrorInfo(parentType) { | ||
{ | ||
var info = getDeclarationErrorAddendum(); | ||
if (!info) { | ||
var parentName = getComponentNameFromType(parentType); | ||
if (parentName) { | ||
info = "\n\nCheck the top-level render call using <" + parentName + ">."; | ||
} | ||
} | ||
return info; | ||
} | ||
} | ||
/** | ||
* Warn if the element doesn't have an explicit key assigned to it. | ||
* This element is in an array. The array could grow and shrink or be | ||
* reordered. All children that haven't already been validated are required to | ||
* have a "key" property assigned to it. Error statuses are cached so a warning | ||
* will only be shown once. | ||
* | ||
* @internal | ||
* @param {ReactElement} element Element that requires a key. | ||
* @param {*} parentType element's parent's type. | ||
*/ | ||
function validateExplicitKey(element, parentType) { | ||
{ | ||
if (!element._store || element._store.validated || element.key != null) { | ||
return; | ||
} | ||
element._store.validated = true; | ||
var currentComponentErrorInfo = getCurrentComponentErrorInfo(parentType); | ||
if (ownerHasKeyUseWarning[currentComponentErrorInfo]) { | ||
return; | ||
} | ||
ownerHasKeyUseWarning[currentComponentErrorInfo] = true; // Usually the current owner is the offender, but if it accepts children as a | ||
// property, it may be the creator of the child that's responsible for | ||
// assigning it a key. | ||
var childOwner = ''; | ||
if (element && element._owner && element._owner !== ReactCurrentOwner.current) { | ||
// Give the component that originally created this child. | ||
childOwner = " It was passed a child from " + getComponentNameFromType(element._owner.type) + "."; | ||
} | ||
setCurrentlyValidatingElement(element); | ||
error('Each child in a list should have a unique "key" prop.' + '%s%s See https://reactjs.org/link/warning-keys for more information.', currentComponentErrorInfo, childOwner); | ||
setCurrentlyValidatingElement(null); | ||
} | ||
} | ||
/** | ||
* Ensure that every element either is passed in a static location, in an | ||
@@ -1253,48 +1203,90 @@ * array with an explicit keys property defined, or in an object literal | ||
/** | ||
* Given an element, validate that its props follow the propTypes definition, | ||
* provided by the type. | ||
* Verifies the object is a ReactElement. | ||
* See https://reactjs.org/docs/react-api.html#isvalidelement | ||
* @param {?object} object | ||
* @return {boolean} True if `object` is a ReactElement. | ||
* @final | ||
*/ | ||
function isValidElement(object) { | ||
return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE; | ||
} | ||
var ownerHasKeyUseWarning = {}; | ||
/** | ||
* Warn if the element doesn't have an explicit key assigned to it. | ||
* This element is in an array. The array could grow and shrink or be | ||
* reordered. All children that haven't already been validated are required to | ||
* have a "key" property assigned to it. Error statuses are cached so a warning | ||
* will only be shown once. | ||
* | ||
* @param {ReactElement} element | ||
* @internal | ||
* @param {ReactElement} element Element that requires a key. | ||
* @param {*} parentType element's parent's type. | ||
*/ | ||
function validatePropTypes(element) { | ||
function validateExplicitKey(element, parentType) { | ||
{ | ||
var type = element.type; | ||
if (type === null || type === undefined || typeof type === 'string') { | ||
if (!element._store || element._store.validated || element.key != null) { | ||
return; | ||
} | ||
if (type.$$typeof === REACT_CLIENT_REFERENCE) { | ||
element._store.validated = true; | ||
var currentComponentErrorInfo = getCurrentComponentErrorInfo(parentType); | ||
if (ownerHasKeyUseWarning[currentComponentErrorInfo]) { | ||
return; | ||
} | ||
var propTypes; | ||
ownerHasKeyUseWarning[currentComponentErrorInfo] = true; // Usually the current owner is the offender, but if it accepts children as a | ||
// property, it may be the creator of the child that's responsible for | ||
// assigning it a key. | ||
if (typeof type === 'function') { | ||
propTypes = type.propTypes; | ||
} else if (typeof type === 'object' && (type.$$typeof === REACT_FORWARD_REF_TYPE || // Note: Memo only checks outer props here. | ||
// Inner props are checked in the reconciler. | ||
type.$$typeof === REACT_MEMO_TYPE)) { | ||
propTypes = type.propTypes; | ||
var childOwner = ''; | ||
if (element && element._owner != null && element._owner !== ReactSharedInternals.owner) { | ||
var ownerName = null; | ||
if (typeof element._owner.tag === 'number') { | ||
ownerName = getComponentNameFromType(element._owner.type); | ||
} else if (typeof element._owner.name === 'string') { | ||
ownerName = element._owner.name; | ||
} // Give the component that originally created this child. | ||
childOwner = " It was passed a child from " + ownerName + "."; | ||
} | ||
setCurrentlyValidatingElement(element); | ||
error('Each child in a list should have a unique "key" prop.' + '%s%s See https://react.dev/link/warning-keys for more information.', currentComponentErrorInfo, childOwner); | ||
setCurrentlyValidatingElement(null); | ||
} | ||
} | ||
function setCurrentlyValidatingElement(element) { | ||
{ | ||
if (element) { | ||
var stack = describeUnknownElementTypeFrameInDEV(element.type); | ||
ReactSharedInternals.setExtraStackFrame(stack); | ||
} else { | ||
return; | ||
ReactSharedInternals.setExtraStackFrame(null); | ||
} | ||
} | ||
} | ||
if (propTypes) { | ||
// Intentionally inside to avoid triggering lazy initializers: | ||
var name = getComponentNameFromType(type); | ||
checkPropTypes(propTypes, element.props, 'prop', name, element); | ||
} else if (type.PropTypes !== undefined && !propTypesMisspellWarningShown) { | ||
propTypesMisspellWarningShown = true; // Intentionally inside to avoid triggering lazy initializers: | ||
function getCurrentComponentErrorInfo(parentType) { | ||
{ | ||
var info = getDeclarationErrorAddendum(); | ||
var _name = getComponentNameFromType(type); | ||
if (!info) { | ||
var parentName = getComponentNameFromType(parentType); | ||
error('Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?', _name || 'Unknown'); | ||
if (parentName) { | ||
info = "\n\nCheck the top-level render call using <" + parentName + ">."; | ||
} | ||
} | ||
if (typeof type.getDefaultProps === 'function' && !type.getDefaultProps.isReactClassApproved) { | ||
error('getDefaultProps is only used on classic React.createClass ' + 'definitions. Use a static property named `defaultProps` instead.'); | ||
} | ||
return info; | ||
} | ||
@@ -1309,2 +1301,3 @@ } | ||
function validateFragmentProps(fragment) { | ||
// TODO: Move this to render phase instead of at element creation. | ||
{ | ||
@@ -1325,128 +1318,9 @@ var keys = Object.keys(fragment.props); | ||
} | ||
if (fragment.ref !== null) { | ||
setCurrentlyValidatingElement(fragment); | ||
error('Invalid attribute `ref` supplied to `React.Fragment`.'); | ||
setCurrentlyValidatingElement(null); | ||
} | ||
} | ||
} | ||
var didWarnAboutKeySpread = {}; | ||
function jsxWithValidation(type, props, key, isStaticChildren, source, self) { | ||
{ | ||
var validType = isValidElementType(type); // We warn in this case but don't throw. We expect the element creation to | ||
// succeed and there will likely be errors in render. | ||
if (!validType) { | ||
var info = ''; | ||
if (type === undefined || typeof type === 'object' && type !== null && Object.keys(type).length === 0) { | ||
info += ' You likely forgot to export your component from the file ' + "it's defined in, or you might have mixed up default and named imports."; | ||
} | ||
var sourceInfo = getSourceInfoErrorAddendum(source); | ||
if (sourceInfo) { | ||
info += sourceInfo; | ||
} else { | ||
info += getDeclarationErrorAddendum(); | ||
} | ||
var typeString; | ||
if (type === null) { | ||
typeString = 'null'; | ||
} else if (isArray(type)) { | ||
typeString = 'array'; | ||
} else if (type !== undefined && type.$$typeof === REACT_ELEMENT_TYPE) { | ||
typeString = "<" + (getComponentNameFromType(type.type) || 'Unknown') + " />"; | ||
info = ' Did you accidentally export a JSX literal instead of a component?'; | ||
} else { | ||
typeString = typeof type; | ||
} | ||
error('React.jsx: type is invalid -- expected a string (for ' + 'built-in components) or a class/function (for composite ' + 'components) but got: %s.%s', typeString, info); | ||
} | ||
var element = jsxDEV(type, props, key, source, self); // The result can be nullish if a mock or a custom function is used. | ||
// TODO: Drop this when these are no longer allowed as the type argument. | ||
if (element == null) { | ||
return element; | ||
} // Skip key warning if the type isn't valid since our key validation logic | ||
// doesn't expect a non-string/function type and can throw confusing errors. | ||
// We don't want exception behavior to differ between dev and prod. | ||
// (Rendering will throw with a helpful message and as soon as the type is | ||
// fixed, the key warnings will appear.) | ||
if (validType) { | ||
var children = props.children; | ||
if (children !== undefined) { | ||
if (isStaticChildren) { | ||
if (isArray(children)) { | ||
for (var i = 0; i < children.length; i++) { | ||
validateChildKeys(children[i], type); | ||
} | ||
if (Object.freeze) { | ||
Object.freeze(children); | ||
} | ||
} else { | ||
error('React.jsx: Static children should always be an array. ' + 'You are likely explicitly calling React.jsxs or React.jsxDEV. ' + 'Use the Babel transform instead.'); | ||
} | ||
} else { | ||
validateChildKeys(children, type); | ||
} | ||
} | ||
} | ||
if (hasOwnProperty.call(props, 'key')) { | ||
var componentName = getComponentNameFromType(type); | ||
var keys = Object.keys(props).filter(function (k) { | ||
return k !== 'key'; | ||
}); | ||
var beforeExample = keys.length > 0 ? '{key: someKey, ' + keys.join(': ..., ') + ': ...}' : '{key: someKey}'; | ||
if (!didWarnAboutKeySpread[componentName + beforeExample]) { | ||
var afterExample = keys.length > 0 ? '{' + keys.join(': ..., ') + ': ...}' : '{}'; | ||
error('A props object containing a "key" prop is being spread into JSX:\n' + ' let props = %s;\n' + ' <%s {...props} />\n' + 'React keys must be passed directly to JSX without using spread:\n' + ' let props = %s;\n' + ' <%s key={someKey} {...props} />', beforeExample, componentName, afterExample, componentName); | ||
didWarnAboutKeySpread[componentName + beforeExample] = true; | ||
} | ||
} | ||
if (type === REACT_FRAGMENT_TYPE) { | ||
validateFragmentProps(element); | ||
} else { | ||
validatePropTypes(element); | ||
} | ||
return element; | ||
} | ||
} // These two functions exist to still get child warnings in dev | ||
// even with the prod transform. This means that jsxDEV is purely | ||
// opt-in behavior for better messages but that we won't stop | ||
// giving you warnings if you use production apis. | ||
function jsxWithValidationStatic(type, props, key) { | ||
{ | ||
return jsxWithValidation(type, props, key, true); | ||
} | ||
} | ||
function jsxWithValidationDynamic(type, props, key) { | ||
{ | ||
return jsxWithValidation(type, props, key, false); | ||
} | ||
} | ||
var jsx = jsxWithValidationDynamic ; // we may want to special case jsxs internally to take advantage of static children. | ||
var jsx = jsxProdSignatureRunningInDevWithDynamicChildren ; // we may want to special case jsxs internally to take advantage of static children. | ||
// for now we can ship identical prod functions | ||
var jsxs = jsxWithValidationStatic ; | ||
var jsxs = jsxProdSignatureRunningInDevWithStaticChildren ; | ||
@@ -1453,0 +1327,0 @@ exports.Fragment = REACT_FRAGMENT_TYPE; |
@@ -22,20 +22,11 @@ /** | ||
const ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED; | ||
// ----------------------------------------------------------------------------- | ||
// as a normal prop instead of stripping it from the props object. | ||
// Passes `ref` as a normal prop instead of stripping it from the props object | ||
// during element creation. | ||
// $FlowFixMe[method-unbinding] | ||
const hasOwnProperty = Object.prototype.hasOwnProperty; | ||
const enableRefAsProp = true; | ||
const ReactCurrentOwner = ReactSharedInternals.ReactCurrentOwner; | ||
const RESERVED_PROPS = { | ||
key: true, | ||
ref: true, | ||
__self: true, | ||
__source: true | ||
}; | ||
const ReactSharedInternals = React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE; | ||
function hasValidRef(config) { | ||
return config.ref !== undefined; | ||
} | ||
function hasValidKey(config) { | ||
@@ -67,15 +58,32 @@ | ||
function ReactElement(type, key, ref, self, source, owner, props) { | ||
const element = { | ||
// This tag allows us to uniquely identify this as a React Element | ||
$$typeof: REACT_ELEMENT_TYPE, | ||
// Built-in properties that belong on the element | ||
type, | ||
key, | ||
ref, | ||
props, | ||
// Record the component responsible for creating this element. | ||
_owner: owner | ||
}; | ||
function ReactElement(type, key, _ref, self, source, owner, props) { | ||
let ref; | ||
{ | ||
// When enableRefAsProp is on, ignore whatever was passed as the ref | ||
// argument and treat `props.ref` as the source of truth. The only thing we | ||
// use this for is `element.ref`, which will log a deprecation warning on | ||
// access. In the next release, we can remove `element.ref` as well as the | ||
// `ref` argument. | ||
const refProp = props.ref; // An undefined `element.ref` is coerced to `null` for | ||
// backwards compatibility. | ||
ref = refProp !== undefined ? refProp : null; | ||
} | ||
let element; | ||
{ | ||
// In prod, `ref` is a regular property and _owner doesn't exist. | ||
element = { | ||
// This tag allows us to uniquely identify this as a React Element | ||
$$typeof: REACT_ELEMENT_TYPE, | ||
// Built-in properties that belong on the element | ||
type, | ||
key, | ||
ref, | ||
props | ||
}; | ||
} | ||
return element; | ||
@@ -91,6 +99,3 @@ } | ||
function jsx$1(type, config, maybeKey) { | ||
let propName; // Reserved names are extracted | ||
const props = {}; | ||
function jsxProd(type, config, maybeKey) { | ||
let key = null; | ||
@@ -114,20 +119,27 @@ let ref = null; // Currently, key can be spread in as a prop. This causes a potential | ||
if (hasValidRef(config)) { | ||
ref = config.ref; | ||
} // Remaining properties are added to a new props object | ||
let props; | ||
if (!('key' in config)) { | ||
// If key was not spread in, we can reuse the original props object. This | ||
// only works for `jsx`, not `createElement`, because `jsx` is a compiler | ||
// target and the compiler always passes a new object. For `createElement`, | ||
// we can't assume a new object is passed every time because it can be | ||
// called manually. | ||
// | ||
// Spreading key is a warning in dev. In a future release, we will not | ||
// remove a spread key from the props object. (But we'll still warn.) We'll | ||
// always pass the object straight through. | ||
props = config; | ||
} else { | ||
// We need to remove reserved props (key, prop, ref). Create a fresh props | ||
// object and copy over all the non-reserved props. We don't use `delete` | ||
// because in V8 it will deopt the object to dictionary mode. | ||
props = {}; | ||
for (propName in config) { | ||
if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) { | ||
props[propName] = config[propName]; | ||
} | ||
} // Resolve default props | ||
if (type && type.defaultProps) { | ||
const defaultProps = type.defaultProps; | ||
for (propName in defaultProps) { | ||
if (props[propName] === undefined) { | ||
props[propName] = defaultProps[propName]; | ||
for (const propName in config) { | ||
// Skip over reserved prop names | ||
if (propName !== 'key' && (enableRefAsProp )) { | ||
{ | ||
props[propName] = config[propName]; | ||
} | ||
} | ||
@@ -137,9 +149,9 @@ } | ||
return ReactElement(type, key, ref, undefined, undefined, ReactCurrentOwner.current, props); | ||
} | ||
return ReactElement(type, key, ref, undefined, undefined, ReactSharedInternals.owner, props); | ||
} // While `jsxDEV` should never be called when running in production, we do | ||
const jsx = jsx$1; // we may want to special case jsxs internally to take advantage of static children. | ||
const jsx = jsxProd; // we may want to special case jsxs internally to take advantage of static children. | ||
// for now we can ship identical prod functions | ||
const jsxs = jsx$1; | ||
const jsxs = jsxProd; | ||
@@ -146,0 +158,0 @@ exports.Fragment = REACT_FRAGMENT_TYPE; |
@@ -10,5 +10,4 @@ /* | ||
*/ | ||
'use strict';var f=require("react"),k=Symbol.for("react.element"),l=Symbol.for("react.fragment"),m=Object.prototype.hasOwnProperty,n=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p={key:!0,ref:!0,__self:!0,__source:!0}; | ||
function q(c,a,g){var b,d={},e=null,h=null;void 0!==g&&(e=""+g);void 0!==a.key&&(e=""+a.key);void 0!==a.ref&&(h=a.ref);for(b in a)m.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)void 0===d[b]&&(d[b]=a[b]);return{$$typeof:k,type:c,key:e,ref:h,props:d,_owner:n.current}}exports.Fragment=l;exports.jsx=q;exports.jsxs=q; | ||
'use strict';require("react");var e=Symbol.for("react.element"),f=Symbol.for("react.fragment");function g(h,a,b){var c=null;void 0!==b&&(c=""+b);void 0!==a.key&&(c=""+a.key);if("key"in a){b={};for(var d in a)"key"!==d&&(b[d]=a[d])}else b=a;a=b.ref;return{$$typeof:e,type:h,key:c,ref:void 0!==a?a:null,props:b}}exports.Fragment=f;exports.jsx=g;exports.jsxs=g; | ||
//# sourceMappingURL=react-jsx-runtime.production.min.js.map |
@@ -22,20 +22,11 @@ /** | ||
const ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED; | ||
// ----------------------------------------------------------------------------- | ||
// as a normal prop instead of stripping it from the props object. | ||
// Passes `ref` as a normal prop instead of stripping it from the props object | ||
// during element creation. | ||
// $FlowFixMe[method-unbinding] | ||
const hasOwnProperty = Object.prototype.hasOwnProperty; | ||
const enableRefAsProp = true; | ||
const ReactCurrentOwner = ReactSharedInternals.ReactCurrentOwner; | ||
const RESERVED_PROPS = { | ||
key: true, | ||
ref: true, | ||
__self: true, | ||
__source: true | ||
}; | ||
const ReactSharedInternals = React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE; | ||
function hasValidRef(config) { | ||
return config.ref !== undefined; | ||
} | ||
function hasValidKey(config) { | ||
@@ -67,15 +58,32 @@ | ||
function ReactElement(type, key, ref, self, source, owner, props) { | ||
const element = { | ||
// This tag allows us to uniquely identify this as a React Element | ||
$$typeof: REACT_ELEMENT_TYPE, | ||
// Built-in properties that belong on the element | ||
type, | ||
key, | ||
ref, | ||
props, | ||
// Record the component responsible for creating this element. | ||
_owner: owner | ||
}; | ||
function ReactElement(type, key, _ref, self, source, owner, props) { | ||
let ref; | ||
{ | ||
// When enableRefAsProp is on, ignore whatever was passed as the ref | ||
// argument and treat `props.ref` as the source of truth. The only thing we | ||
// use this for is `element.ref`, which will log a deprecation warning on | ||
// access. In the next release, we can remove `element.ref` as well as the | ||
// `ref` argument. | ||
const refProp = props.ref; // An undefined `element.ref` is coerced to `null` for | ||
// backwards compatibility. | ||
ref = refProp !== undefined ? refProp : null; | ||
} | ||
let element; | ||
{ | ||
// In prod, `ref` is a regular property and _owner doesn't exist. | ||
element = { | ||
// This tag allows us to uniquely identify this as a React Element | ||
$$typeof: REACT_ELEMENT_TYPE, | ||
// Built-in properties that belong on the element | ||
type, | ||
key, | ||
ref, | ||
props | ||
}; | ||
} | ||
return element; | ||
@@ -91,6 +99,3 @@ } | ||
function jsx$1(type, config, maybeKey) { | ||
let propName; // Reserved names are extracted | ||
const props = {}; | ||
function jsxProd(type, config, maybeKey) { | ||
let key = null; | ||
@@ -114,20 +119,27 @@ let ref = null; // Currently, key can be spread in as a prop. This causes a potential | ||
if (hasValidRef(config)) { | ||
ref = config.ref; | ||
} // Remaining properties are added to a new props object | ||
let props; | ||
if (!('key' in config)) { | ||
// If key was not spread in, we can reuse the original props object. This | ||
// only works for `jsx`, not `createElement`, because `jsx` is a compiler | ||
// target and the compiler always passes a new object. For `createElement`, | ||
// we can't assume a new object is passed every time because it can be | ||
// called manually. | ||
// | ||
// Spreading key is a warning in dev. In a future release, we will not | ||
// remove a spread key from the props object. (But we'll still warn.) We'll | ||
// always pass the object straight through. | ||
props = config; | ||
} else { | ||
// We need to remove reserved props (key, prop, ref). Create a fresh props | ||
// object and copy over all the non-reserved props. We don't use `delete` | ||
// because in V8 it will deopt the object to dictionary mode. | ||
props = {}; | ||
for (propName in config) { | ||
if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) { | ||
props[propName] = config[propName]; | ||
} | ||
} // Resolve default props | ||
if (type && type.defaultProps) { | ||
const defaultProps = type.defaultProps; | ||
for (propName in defaultProps) { | ||
if (props[propName] === undefined) { | ||
props[propName] = defaultProps[propName]; | ||
for (const propName in config) { | ||
// Skip over reserved prop names | ||
if (propName !== 'key' && (enableRefAsProp )) { | ||
{ | ||
props[propName] = config[propName]; | ||
} | ||
} | ||
@@ -137,9 +149,9 @@ } | ||
return ReactElement(type, key, ref, undefined, undefined, ReactCurrentOwner.current, props); | ||
} | ||
return ReactElement(type, key, ref, undefined, undefined, ReactSharedInternals.owner, props); | ||
} // While `jsxDEV` should never be called when running in production, we do | ||
const jsx = jsx$1; // we may want to special case jsxs internally to take advantage of static children. | ||
const jsx = jsxProd; // we may want to special case jsxs internally to take advantage of static children. | ||
// for now we can ship identical prod functions | ||
const jsxs = jsx$1; | ||
const jsxs = jsxProd; | ||
@@ -146,0 +158,0 @@ exports.Fragment = REACT_FRAGMENT_TYPE; |
@@ -10,5 +10,4 @@ /* | ||
*/ | ||
'use strict';var f=require("react"),k=Symbol.for("react.element"),l=Symbol.for("react.fragment"),m=Object.prototype.hasOwnProperty,n=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p={key:!0,ref:!0,__self:!0,__source:!0}; | ||
function q(c,a,g){var b,d={},e=null,h=null;void 0!==g&&(e=""+g);void 0!==a.key&&(e=""+a.key);void 0!==a.ref&&(h=a.ref);for(b in a)m.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)void 0===d[b]&&(d[b]=a[b]);return{$$typeof:k,type:c,key:e,ref:h,props:d,_owner:n.current}}exports.Fragment=l;exports.jsx=q;exports.jsxs=q; | ||
'use strict';require("react");var e=Symbol.for("react.element"),f=Symbol.for("react.fragment");function g(h,a,b){var c=null;void 0!==b&&(c=""+b);void 0!==a.key&&(c=""+a.key);if("key"in a){b={};for(var d in a)"key"!==d&&(b[d]=a[d])}else b=a;a=b.ref;return{$$typeof:e,type:h,key:c,ref:void 0!==a?a:null,props:b}}exports.Fragment=f;exports.jsx=g;exports.jsxs=g; | ||
//# sourceMappingURL=react-jsx-runtime.profiling.min.js.map |
@@ -28,3 +28,5 @@ /** | ||
var REACT_PROFILER_TYPE = Symbol.for('react.profiler'); | ||
var REACT_PROVIDER_TYPE = Symbol.for('react.provider'); | ||
var REACT_PROVIDER_TYPE = Symbol.for('react.provider'); // TODO: Delete with enableRenderableContext | ||
var REACT_CONSUMER_TYPE = Symbol.for('react.consumer'); | ||
var REACT_CONTEXT_TYPE = Symbol.for('react.context'); | ||
@@ -37,3 +39,2 @@ var REACT_FORWARD_REF_TYPE = Symbol.for('react.forward_ref'); | ||
var REACT_OFFSCREEN_TYPE = Symbol.for('react.offscreen'); | ||
var REACT_CACHE_TYPE = Symbol.for('react.cache'); | ||
var MAYBE_ITERATOR_SYMBOL = Symbol.iterator; | ||
@@ -55,4 +56,9 @@ var FAUX_ITERATOR_SYMBOL = '@@iterator'; | ||
var ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED; | ||
var ReactSharedInternalsServer = // $FlowFixMe: It's defined in the one we resolve to. | ||
React.__SERVER_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE; | ||
if (!ReactSharedInternalsServer) { | ||
throw new Error('The "react" package in this environment is not configured correctly. ' + 'The "react-server" condition must be enabled in any environment that ' + 'runs React Server Components.'); | ||
} | ||
function error(format) { | ||
@@ -74,4 +80,3 @@ { | ||
{ | ||
var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame; | ||
var stack = ReactDebugCurrentFrame.getStackAddendum(); | ||
var stack = ReactSharedInternalsServer.getStackAddendum(); | ||
@@ -102,2 +107,9 @@ if (stack !== '') { | ||
var enableLegacyHidden = false; // Enables unstable_avoidThisFallback feature in Fiber | ||
// as a normal prop instead of stripping it from the props object. | ||
// Passes `ref` as a normal prop instead of stripping it from the props object | ||
// during element creation. | ||
var enableRefAsProp = true; | ||
var enableRenderableContext = true; // ----------------------------------------------------------------------------- | ||
// stuff. Intended to enable React core members to more easily debug scheduling | ||
@@ -108,26 +120,2 @@ // issues in DEV builds. | ||
var REACT_CLIENT_REFERENCE$2 = Symbol.for('react.client.reference'); | ||
function isValidElementType(type) { | ||
if (typeof type === 'string' || typeof type === 'function') { | ||
return true; | ||
} // Note: typeof might be other than 'symbol' or 'number' (e.g. if it's a polyfill). | ||
if (type === REACT_FRAGMENT_TYPE || type === REACT_PROFILER_TYPE || enableDebugTracing || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || enableLegacyHidden || type === REACT_OFFSCREEN_TYPE || enableScopeAPI || type === REACT_CACHE_TYPE || enableTransitionTracing ) { | ||
return true; | ||
} | ||
if (typeof type === 'object' && type !== null) { | ||
if (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || // This needs to include all possible module reference object | ||
// types supported by any Flight configuration anywhere since | ||
// we don't know which Flight build this will end up being used | ||
// with. | ||
type.$$typeof === REACT_CLIENT_REFERENCE$2 || type.getModuleId !== undefined) { | ||
return true; | ||
} | ||
} | ||
return false; | ||
} | ||
function getWrappedName(outerType, innerType, wrapperName) { | ||
@@ -149,3 +137,3 @@ var displayName = outerType.displayName; | ||
var REACT_CLIENT_REFERENCE$1 = Symbol.for('react.client.reference'); // Note that the reconciler package should generally prefer to use getComponentNameFromFiber() instead. | ||
var REACT_CLIENT_REFERENCE$2 = Symbol.for('react.client.reference'); // Note that the reconciler package should generally prefer to use getComponentNameFromFiber() instead. | ||
@@ -159,3 +147,3 @@ function getComponentNameFromType(type) { | ||
if (typeof type === 'function') { | ||
if (type.$$typeof === REACT_CLIENT_REFERENCE$1) { | ||
if (type.$$typeof === REACT_CLIENT_REFERENCE$2) { | ||
// TODO: Create a convention for naming client references with debug info. | ||
@@ -191,7 +179,2 @@ return null; | ||
case REACT_CACHE_TYPE: | ||
{ | ||
return 'Cache'; | ||
} | ||
} | ||
@@ -207,10 +190,20 @@ | ||
switch (type.$$typeof) { | ||
case REACT_PROVIDER_TYPE: | ||
{ | ||
return null; | ||
} | ||
case REACT_CONTEXT_TYPE: | ||
var context = type; | ||
return getContextName(context) + '.Consumer'; | ||
case REACT_PROVIDER_TYPE: | ||
var provider = type; | ||
return getContextName(provider._context) + '.Provider'; | ||
{ | ||
return getContextName(context) + '.Provider'; | ||
} | ||
case REACT_CONSUMER_TYPE: | ||
{ | ||
var consumer = type; | ||
return getContextName(consumer._context) + '.Consumer'; | ||
} | ||
case REACT_FORWARD_REF_TYPE: | ||
@@ -246,4 +239,105 @@ return getWrappedName(type, type.render, 'ForwardRef'); | ||
// $FlowFixMe[method-unbinding] | ||
var hasOwnProperty = Object.prototype.hasOwnProperty; | ||
var assign = Object.assign; | ||
/* | ||
* The `'' + value` pattern (used in perf-sensitive code) throws for Symbol | ||
* and Temporal.* types. See https://github.com/facebook/react/pull/22064. | ||
* | ||
* The functions in this module will throw an easier-to-understand, | ||
* easier-to-debug exception with a clear errors message message explaining the | ||
* problem. (Instead of a confusing exception thrown inside the implementation | ||
* of the `value` object). | ||
*/ | ||
// $FlowFixMe[incompatible-return] only called in DEV, so void return is not possible. | ||
function typeName(value) { | ||
{ | ||
// toStringTag is needed for namespaced types like Temporal.Instant | ||
var hasToStringTag = typeof Symbol === 'function' && Symbol.toStringTag; | ||
var type = hasToStringTag && value[Symbol.toStringTag] || value.constructor.name || 'Object'; // $FlowFixMe[incompatible-return] | ||
return type; | ||
} | ||
} // $FlowFixMe[incompatible-return] only called in DEV, so void return is not possible. | ||
function willCoercionThrow(value) { | ||
{ | ||
try { | ||
testStringCoercion(value); | ||
return false; | ||
} catch (e) { | ||
return true; | ||
} | ||
} | ||
} | ||
function testStringCoercion(value) { | ||
// If you ended up here by following an exception call stack, here's what's | ||
// happened: you supplied an object or symbol value to React (as a prop, key, | ||
// DOM attribute, CSS property, string ref, etc.) and when React tried to | ||
// coerce it to a string using `'' + value`, an exception was thrown. | ||
// | ||
// The most common types that will cause this exception are `Symbol` instances | ||
// and Temporal objects like `Temporal.Instant`. But any object that has a | ||
// `valueOf` or `[Symbol.toPrimitive]` method that throws will also cause this | ||
// exception. (Library authors do this to prevent users from using built-in | ||
// numeric operators like `+` or comparison operators like `>=` because custom | ||
// methods are needed to perform accurate arithmetic or comparison.) | ||
// | ||
// To fix the problem, coerce this object or symbol value to a string before | ||
// passing it to React. The most reliable way is usually `String(value)`. | ||
// | ||
// To find which value is throwing, check the browser or debugger console. | ||
// Before this exception was thrown, there should be `console.error` output | ||
// that shows the type (Symbol, Temporal.PlainDate, etc.) that caused the | ||
// problem and how that type was used: key, atrribute, input value prop, etc. | ||
// In most cases, this console output also shows the component and its | ||
// ancestor components where the exception happened. | ||
// | ||
// eslint-disable-next-line react-internal/safe-string-coercion | ||
return '' + value; | ||
} | ||
function checkKeyStringCoercion(value) { | ||
{ | ||
if (willCoercionThrow(value)) { | ||
error('The provided key is an unsupported type %s.' + ' This value must be coerced to a string before using it here.', typeName(value)); | ||
return testStringCoercion(value); // throw (to help callers find troubleshooting comments) | ||
} | ||
} | ||
} | ||
var REACT_CLIENT_REFERENCE$1 = Symbol.for('react.client.reference'); | ||
function isValidElementType(type) { | ||
if (typeof type === 'string' || typeof type === 'function') { | ||
return true; | ||
} // Note: typeof might be other than 'symbol' or 'number' (e.g. if it's a polyfill). | ||
if (type === REACT_FRAGMENT_TYPE || type === REACT_PROFILER_TYPE || enableDebugTracing || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || enableLegacyHidden || type === REACT_OFFSCREEN_TYPE || enableScopeAPI || enableTransitionTracing ) { | ||
return true; | ||
} | ||
if (typeof type === 'object' && type !== null) { | ||
if (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || !enableRenderableContext || type.$$typeof === REACT_CONSUMER_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || // This needs to include all possible module reference object | ||
// types supported by any Flight configuration anywhere since | ||
// we don't know which Flight build this will end up being used | ||
// with. | ||
type.$$typeof === REACT_CLIENT_REFERENCE$1 || type.getModuleId !== undefined) { | ||
return true; | ||
} | ||
} | ||
return false; | ||
} | ||
var isArrayImpl = Array.isArray; // eslint-disable-next-line no-redeclare | ||
function isArray(a) { | ||
return isArrayImpl(a); | ||
} | ||
// Helpers to patch console.logs to avoid logging during side-effect free | ||
@@ -343,5 +437,4 @@ // replaying on render function. This currently only patches the object | ||
var ReactCurrentDispatcher = ReactSharedInternals.ReactCurrentDispatcher; | ||
var prefix; | ||
function describeBuiltInComponentFrame(name, source, ownerFn) { | ||
function describeBuiltInComponentFrame(name) { | ||
{ | ||
@@ -400,9 +493,9 @@ if (prefix === undefined) { | ||
Error.prepareStackTrace = undefined; | ||
var previousDispatcher; | ||
var previousDispatcher = null; | ||
{ | ||
previousDispatcher = ReactCurrentDispatcher.current; // Set the dispatcher in DEV because this might be call in the render function | ||
previousDispatcher = ReactSharedInternalsServer.H; // Set the dispatcher in DEV because this might be call in the render function | ||
// for warnings. | ||
ReactCurrentDispatcher.current = null; | ||
ReactSharedInternalsServer.H = null; | ||
disableLogs(); | ||
@@ -592,3 +685,3 @@ } | ||
{ | ||
ReactCurrentDispatcher.current = previousDispatcher; | ||
ReactSharedInternalsServer.H = previousDispatcher; | ||
reenableLogs(); | ||
@@ -612,3 +705,3 @@ } | ||
} | ||
function describeFunctionComponentFrame(fn, source, ownerFn) { | ||
function describeFunctionComponentFrame(fn) { | ||
{ | ||
@@ -624,3 +717,3 @@ return describeNativeComponentFrame(fn, false); | ||
function describeUnknownElementTypeFrameInDEV(type, source, ownerFn) { | ||
function describeUnknownElementTypeFrameInDEV(type) { | ||
@@ -656,3 +749,3 @@ if (type == null) { | ||
// Memo may contain any component type so we recursively resolve it. | ||
return describeUnknownElementTypeFrameInDEV(type.type, source, ownerFn); | ||
return describeUnknownElementTypeFrameInDEV(type.type); | ||
@@ -667,3 +760,3 @@ case REACT_LAZY_TYPE: | ||
// Lazy may contain any component type so we recursively resolve it. | ||
return describeUnknownElementTypeFrameInDEV(init(payload), source, ownerFn); | ||
return describeUnknownElementTypeFrameInDEV(init(payload)); | ||
} catch (x) {} | ||
@@ -677,156 +770,8 @@ } | ||
// $FlowFixMe[method-unbinding] | ||
var hasOwnProperty = Object.prototype.hasOwnProperty; | ||
var loggedTypeFailures = {}; | ||
var ReactDebugCurrentFrame$1 = ReactSharedInternals.ReactDebugCurrentFrame; | ||
function setCurrentlyValidatingElement$1(element) { | ||
{ | ||
if (element) { | ||
var owner = element._owner; | ||
var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null); | ||
ReactDebugCurrentFrame$1.setExtraStackFrame(stack); | ||
} else { | ||
ReactDebugCurrentFrame$1.setExtraStackFrame(null); | ||
} | ||
} | ||
} | ||
function checkPropTypes(typeSpecs, values, location, componentName, element) { | ||
{ | ||
// $FlowFixMe[incompatible-use] This is okay but Flow doesn't know it. | ||
var has = Function.call.bind(hasOwnProperty); | ||
for (var typeSpecName in typeSpecs) { | ||
if (has(typeSpecs, typeSpecName)) { | ||
var error$1 = void 0; // Prop type validation may throw. In case they do, we don't want to | ||
// fail the render phase where it didn't fail before. So we log it. | ||
// After these have been cleaned up, we'll let them throw. | ||
try { | ||
// This is intentionally an invariant that gets caught. It's the same | ||
// behavior as without this statement except with a better message. | ||
if (typeof typeSpecs[typeSpecName] !== 'function') { | ||
// eslint-disable-next-line react-internal/prod-error-codes | ||
var err = Error((componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' + 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' + 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'); | ||
err.name = 'Invariant Violation'; | ||
throw err; | ||
} | ||
error$1 = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED'); | ||
} catch (ex) { | ||
error$1 = ex; | ||
} | ||
if (error$1 && !(error$1 instanceof Error)) { | ||
setCurrentlyValidatingElement$1(element); | ||
error('%s: type specification of %s' + ' `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error$1); | ||
setCurrentlyValidatingElement$1(null); | ||
} | ||
if (error$1 instanceof Error && !(error$1.message in loggedTypeFailures)) { | ||
// Only monitor this failure once because there tends to be a lot of the | ||
// same error. | ||
loggedTypeFailures[error$1.message] = true; | ||
setCurrentlyValidatingElement$1(element); | ||
error('Failed %s type: %s', location, error$1.message); | ||
setCurrentlyValidatingElement$1(null); | ||
} | ||
} | ||
} | ||
} | ||
} | ||
var isArrayImpl = Array.isArray; // eslint-disable-next-line no-redeclare | ||
function isArray(a) { | ||
return isArrayImpl(a); | ||
} | ||
/* | ||
* The `'' + value` pattern (used in perf-sensitive code) throws for Symbol | ||
* and Temporal.* types. See https://github.com/facebook/react/pull/22064. | ||
* | ||
* The functions in this module will throw an easier-to-understand, | ||
* easier-to-debug exception with a clear errors message message explaining the | ||
* problem. (Instead of a confusing exception thrown inside the implementation | ||
* of the `value` object). | ||
*/ | ||
// $FlowFixMe[incompatible-return] only called in DEV, so void return is not possible. | ||
function typeName(value) { | ||
{ | ||
// toStringTag is needed for namespaced types like Temporal.Instant | ||
var hasToStringTag = typeof Symbol === 'function' && Symbol.toStringTag; | ||
var type = hasToStringTag && value[Symbol.toStringTag] || value.constructor.name || 'Object'; // $FlowFixMe[incompatible-return] | ||
return type; | ||
} | ||
} // $FlowFixMe[incompatible-return] only called in DEV, so void return is not possible. | ||
function willCoercionThrow(value) { | ||
{ | ||
try { | ||
testStringCoercion(value); | ||
return false; | ||
} catch (e) { | ||
return true; | ||
} | ||
} | ||
} | ||
function testStringCoercion(value) { | ||
// If you ended up here by following an exception call stack, here's what's | ||
// happened: you supplied an object or symbol value to React (as a prop, key, | ||
// DOM attribute, CSS property, string ref, etc.) and when React tried to | ||
// coerce it to a string using `'' + value`, an exception was thrown. | ||
// | ||
// The most common types that will cause this exception are `Symbol` instances | ||
// and Temporal objects like `Temporal.Instant`. But any object that has a | ||
// `valueOf` or `[Symbol.toPrimitive]` method that throws will also cause this | ||
// exception. (Library authors do this to prevent users from using built-in | ||
// numeric operators like `+` or comparison operators like `>=` because custom | ||
// methods are needed to perform accurate arithmetic or comparison.) | ||
// | ||
// To fix the problem, coerce this object or symbol value to a string before | ||
// passing it to React. The most reliable way is usually `String(value)`. | ||
// | ||
// To find which value is throwing, check the browser or debugger console. | ||
// Before this exception was thrown, there should be `console.error` output | ||
// that shows the type (Symbol, Temporal.PlainDate, etc.) that caused the | ||
// problem and how that type was used: key, atrribute, input value prop, etc. | ||
// In most cases, this console output also shows the component and its | ||
// ancestor components where the exception happened. | ||
// | ||
// eslint-disable-next-line react-internal/safe-string-coercion | ||
return '' + value; | ||
} | ||
function checkKeyStringCoercion(value) { | ||
{ | ||
if (willCoercionThrow(value)) { | ||
error('The provided key is an unsupported type %s.' + ' This value must be coerced to a string before using it here.', typeName(value)); | ||
return testStringCoercion(value); // throw (to help callers find troubleshooting comments) | ||
} | ||
} | ||
} | ||
var ReactCurrentOwner$1 = ReactSharedInternals.ReactCurrentOwner; | ||
var RESERVED_PROPS = { | ||
key: true, | ||
ref: true, | ||
__self: true, | ||
__source: true | ||
}; | ||
var REACT_CLIENT_REFERENCE = Symbol.for('react.client.reference'); | ||
var specialPropKeyWarningShown; | ||
var specialPropRefWarningShown; | ||
var didWarnAboutStringRefs; | ||
var didWarnAboutElementRef; | ||
{ | ||
didWarnAboutStringRefs = {}; | ||
didWarnAboutElementRef = {}; | ||
} | ||
@@ -862,16 +807,2 @@ | ||
function warnIfStringRefCannotBeAutoConverted(config, self) { | ||
{ | ||
if (typeof config.ref === 'string' && ReactCurrentOwner$1.current && self && ReactCurrentOwner$1.current.stateNode !== self) { | ||
var componentName = getComponentNameFromType(ReactCurrentOwner$1.current.type); | ||
if (!didWarnAboutStringRefs[componentName]) { | ||
error('Component "%s" contains the string ref "%s". ' + 'Support for string refs will be removed in a future major release. ' + 'This case cannot be automatically converted to an arrow function. ' + 'We ask you to manually fix this case by using useRef() or createRef() instead. ' + 'Learn more about using refs safely here: ' + 'https://reactjs.org/link/strict-mode-string-ref', getComponentNameFromType(ReactCurrentOwner$1.current.type), config.ref); | ||
didWarnAboutStringRefs[componentName] = true; | ||
} | ||
} | ||
} | ||
} | ||
function defineKeyPropWarningGetter(props, displayName) { | ||
@@ -883,3 +814,3 @@ { | ||
error('%s: `key` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://reactjs.org/link/special-props)', displayName); | ||
error('%s: `key` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://react.dev/link/special-props)', displayName); | ||
} | ||
@@ -896,17 +827,16 @@ }; | ||
function defineRefPropWarningGetter(props, displayName) { | ||
function elementRefGetterWithDeprecationWarning() { | ||
{ | ||
var warnAboutAccessingRef = function () { | ||
if (!specialPropRefWarningShown) { | ||
specialPropRefWarningShown = true; | ||
var componentName = getComponentNameFromType(this.type); | ||
error('%s: `ref` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://reactjs.org/link/special-props)', displayName); | ||
} | ||
}; | ||
if (!didWarnAboutElementRef[componentName]) { | ||
didWarnAboutElementRef[componentName] = true; | ||
warnAboutAccessingRef.isReactWarning = true; | ||
Object.defineProperty(props, 'ref', { | ||
get: warnAboutAccessingRef, | ||
configurable: true | ||
}); | ||
error('Accessing element.ref was removed in React 19. ref is now a ' + 'regular prop. It will be removed from the JSX Element ' + 'type in a future release.'); | ||
} // An undefined `element.ref` is coerced to `null` for | ||
// backwards compatibility. | ||
var refProp = this.props.ref; | ||
return refProp !== undefined ? refProp : null; | ||
} | ||
@@ -936,16 +866,63 @@ } | ||
function ReactElement(type, key, ref, self, source, owner, props) { | ||
var element = { | ||
// This tag allows us to uniquely identify this as a React Element | ||
$$typeof: REACT_ELEMENT_TYPE, | ||
// Built-in properties that belong on the element | ||
type: type, | ||
key: key, | ||
ref: ref, | ||
props: props, | ||
// Record the component responsible for creating this element. | ||
_owner: owner | ||
}; | ||
function ReactElement(type, key, _ref, self, source, owner, props) { | ||
var ref; | ||
{ | ||
// When enableRefAsProp is on, ignore whatever was passed as the ref | ||
// argument and treat `props.ref` as the source of truth. The only thing we | ||
// use this for is `element.ref`, which will log a deprecation warning on | ||
// access. In the next release, we can remove `element.ref` as well as the | ||
// `ref` argument. | ||
var refProp = props.ref; // An undefined `element.ref` is coerced to `null` for | ||
// backwards compatibility. | ||
ref = refProp !== undefined ? refProp : null; | ||
} | ||
var element; | ||
{ | ||
// In dev, make `ref` a non-enumerable property with a warning. It's non- | ||
// enumerable so that test matchers and serializers don't access it and | ||
// trigger the warning. | ||
// | ||
// `ref` will be removed from the element completely in a future release. | ||
element = { | ||
// This tag allows us to uniquely identify this as a React Element | ||
$$typeof: REACT_ELEMENT_TYPE, | ||
// Built-in properties that belong on the element | ||
type: type, | ||
key: key, | ||
props: props, | ||
// Record the component responsible for creating this element. | ||
_owner: owner | ||
}; | ||
if (ref !== null) { | ||
Object.defineProperty(element, 'ref', { | ||
enumerable: false, | ||
get: elementRefGetterWithDeprecationWarning | ||
}); | ||
} else { | ||
// Don't warn on access if a ref is not given. This reduces false | ||
// positives in cases where a test serializer uses | ||
// getOwnPropertyDescriptors to compare objects, like Jest does, which is | ||
// a problem because it bypasses non-enumerability. | ||
// | ||
// So unfortunately this will trigger a false positive warning in Jest | ||
// when the diff is printed: | ||
// | ||
// expect(<div ref={ref} />).toEqual(<span ref={ref} />); | ||
// | ||
// A bit sketchy, but this is what we've done for the `props.key` and | ||
// `props.ref` accessors for years, which implies it will be good enough | ||
// for `element.ref`, too. Let's see if anyone complains. | ||
Object.defineProperty(element, 'ref', { | ||
enumerable: false, | ||
value: null | ||
}); | ||
} | ||
} | ||
{ | ||
// The validation flag is currently mutative. We put it on | ||
@@ -965,17 +942,9 @@ // an external backing store so that we can freeze the whole object. | ||
value: false | ||
}); // self and source are DEV only properties. | ||
}); // debugInfo contains Server Component debug information. | ||
Object.defineProperty(element, '_self', { | ||
Object.defineProperty(element, '_debugInfo', { | ||
configurable: false, | ||
enumerable: false, | ||
writable: false, | ||
value: self | ||
}); // Two elements created in two different places should be considered | ||
// equal for testing purposes and therefore we hide it from enumeration. | ||
Object.defineProperty(element, '_source', { | ||
configurable: false, | ||
enumerable: false, | ||
writable: false, | ||
value: source | ||
writable: true, | ||
value: null | ||
}); | ||
@@ -991,2 +960,27 @@ | ||
} | ||
// support `jsx` and `jsxs` when running in development. This supports the case | ||
// where a third-party dependency ships code that was compiled for production; | ||
// we want to still provide warnings in development. | ||
// | ||
// So these functions are the _dev_ implementations of the _production_ | ||
// API signatures. | ||
// | ||
// Since these functions are dev-only, it's ok to add an indirection here. They | ||
// only exist to provide different versions of `isStaticChildren`. (We shouldn't | ||
// use this pattern for the prod versions, though, because it will add an call | ||
// frame.) | ||
function jsxProdSignatureRunningInDevWithDynamicChildren(type, config, maybeKey, source, self) { | ||
{ | ||
var isStaticChildren = false; | ||
return jsxDEV$1(type, config, maybeKey, isStaticChildren, source, self); | ||
} | ||
} | ||
function jsxProdSignatureRunningInDevWithStaticChildren(type, config, maybeKey, source, self) { | ||
{ | ||
var isStaticChildren = true; | ||
return jsxDEV$1(type, config, maybeKey, isStaticChildren, source, self); | ||
} | ||
} | ||
var didWarnAboutKeySpread = {}; | ||
/** | ||
@@ -999,7 +993,74 @@ * https://github.com/reactjs/rfcs/pull/107 | ||
function jsxDEV(type, config, maybeKey, source, self) { | ||
function jsxDEV$1(type, config, maybeKey, isStaticChildren, source, self) { | ||
{ | ||
var propName; // Reserved names are extracted | ||
if (!isValidElementType(type)) { | ||
// This is an invalid element type. | ||
// | ||
// We warn in this case but don't throw. We expect the element creation to | ||
// succeed and there will likely be errors in render. | ||
var info = ''; | ||
var props = {}; | ||
if (type === undefined || typeof type === 'object' && type !== null && Object.keys(type).length === 0) { | ||
info += ' You likely forgot to export your component from the file ' + "it's defined in, or you might have mixed up default and named imports."; | ||
} | ||
var typeString; | ||
if (type === null) { | ||
typeString = 'null'; | ||
} else if (isArray(type)) { | ||
typeString = 'array'; | ||
} else if (type !== undefined && type.$$typeof === REACT_ELEMENT_TYPE) { | ||
typeString = "<" + (getComponentNameFromType(type.type) || 'Unknown') + " />"; | ||
info = ' Did you accidentally export a JSX literal instead of a component?'; | ||
} else { | ||
typeString = typeof type; | ||
} | ||
error('React.jsx: type is invalid -- expected a string (for ' + 'built-in components) or a class/function (for composite ' + 'components) but got: %s.%s', typeString, info); | ||
} else { | ||
// This is a valid element type. | ||
// Skip key warning if the type isn't valid since our key validation logic | ||
// doesn't expect a non-string/function type and can throw confusing | ||
// errors. We don't want exception behavior to differ between dev and | ||
// prod. (Rendering will throw with a helpful message and as soon as the | ||
// type is fixed, the key warnings will appear.) | ||
var children = config.children; | ||
if (children !== undefined) { | ||
if (isStaticChildren) { | ||
if (isArray(children)) { | ||
for (var i = 0; i < children.length; i++) { | ||
validateChildKeys(children[i], type); | ||
} | ||
if (Object.freeze) { | ||
Object.freeze(children); | ||
} | ||
} else { | ||
error('React.jsx: Static children should always be an array. ' + 'You are likely explicitly calling React.jsxs or React.jsxDEV. ' + 'Use the Babel transform instead.'); | ||
} | ||
} else { | ||
validateChildKeys(children, type); | ||
} | ||
} | ||
} // Warn about key spread regardless of whether the type is valid. | ||
if (hasOwnProperty.call(config, 'key')) { | ||
var componentName = getComponentNameFromType(type); | ||
var keys = Object.keys(config).filter(function (k) { | ||
return k !== 'key'; | ||
}); | ||
var beforeExample = keys.length > 0 ? '{key: someKey, ' + keys.join(': ..., ') + ': ...}' : '{key: someKey}'; | ||
if (!didWarnAboutKeySpread[componentName + beforeExample]) { | ||
var afterExample = keys.length > 0 ? '{' + keys.join(': ..., ') + ': ...}' : '{}'; | ||
error('A props object containing a "key" prop is being spread into JSX:\n' + ' let props = %s;\n' + ' <%s {...props} />\n' + 'React keys must be passed directly to JSX without using spread:\n' + ' let props = %s;\n' + ' <%s key={someKey} {...props} />', beforeExample, componentName, afterExample, componentName); | ||
didWarnAboutKeySpread[componentName + beforeExample] = true; | ||
} | ||
} | ||
var key = null; | ||
@@ -1029,21 +1090,29 @@ var ref = null; // Currently, key can be spread in as a prop. This causes a potential | ||
if (hasValidRef(config)) { | ||
ref = config.ref; | ||
warnIfStringRefCannotBeAutoConverted(config, self); | ||
} // Remaining properties are added to a new props object | ||
if (hasValidRef(config)) ; | ||
var props; | ||
for (propName in config) { | ||
if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) { | ||
props[propName] = config[propName]; | ||
} | ||
} // Resolve default props | ||
if (!('key' in config)) { | ||
// If key was not spread in, we can reuse the original props object. This | ||
// only works for `jsx`, not `createElement`, because `jsx` is a compiler | ||
// target and the compiler always passes a new object. For `createElement`, | ||
// we can't assume a new object is passed every time because it can be | ||
// called manually. | ||
// | ||
// Spreading key is a warning in dev. In a future release, we will not | ||
// remove a spread key from the props object. (But we'll still warn.) We'll | ||
// always pass the object straight through. | ||
props = config; | ||
} else { | ||
// We need to remove reserved props (key, prop, ref). Create a fresh props | ||
// object and copy over all the non-reserved props. We don't use `delete` | ||
// because in V8 it will deopt the object to dictionary mode. | ||
props = {}; | ||
if (type && type.defaultProps) { | ||
var defaultProps = type.defaultProps; | ||
for (propName in defaultProps) { | ||
if (props[propName] === undefined) { | ||
props[propName] = defaultProps[propName]; | ||
for (var propName in config) { | ||
// Skip over reserved prop names | ||
if (propName !== 'key' && (enableRefAsProp )) { | ||
{ | ||
props[propName] = config[propName]; | ||
} | ||
} | ||
@@ -1053,3 +1122,3 @@ } | ||
if (key || ref) { | ||
if (key || !enableRefAsProp ) { | ||
var displayName = typeof type === 'function' ? type.displayName || type.name || 'Unknown' : type; | ||
@@ -1060,45 +1129,11 @@ | ||
} | ||
if (ref) { | ||
defineRefPropWarningGetter(props, displayName); | ||
} | ||
} | ||
return ReactElement(type, key, ref, self, source, ReactCurrentOwner$1.current, props); | ||
} | ||
} | ||
var element = ReactElement(type, key, ref, self, source, ReactSharedInternalsServer.owner, props); | ||
var ReactCurrentOwner = ReactSharedInternals.ReactCurrentOwner; | ||
var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame; | ||
var REACT_CLIENT_REFERENCE = Symbol.for('react.client.reference'); | ||
function setCurrentlyValidatingElement(element) { | ||
{ | ||
if (element) { | ||
var owner = element._owner; | ||
var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null); | ||
ReactDebugCurrentFrame.setExtraStackFrame(stack); | ||
} else { | ||
ReactDebugCurrentFrame.setExtraStackFrame(null); | ||
if (type === REACT_FRAGMENT_TYPE) { | ||
validateFragmentProps(element); | ||
} | ||
} | ||
} | ||
var propTypesMisspellWarningShown; | ||
{ | ||
propTypesMisspellWarningShown = false; | ||
} | ||
/** | ||
* Verifies the object is a ReactElement. | ||
* See https://reactjs.org/docs/react-api.html#isvalidelement | ||
* @param {?object} object | ||
* @return {boolean} True if `object` is a ReactElement. | ||
* @final | ||
*/ | ||
function isValidElement(object) { | ||
{ | ||
return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE; | ||
return element; | ||
} | ||
@@ -1109,4 +1144,4 @@ } | ||
{ | ||
if (ReactCurrentOwner.current) { | ||
var name = getComponentNameFromType(ReactCurrentOwner.current.type); | ||
if (ReactSharedInternalsServer.owner) { | ||
var name = getComponentNameFromType(ReactSharedInternalsServer.owner.type); | ||
@@ -1121,83 +1156,3 @@ if (name) { | ||
} | ||
function getSourceInfoErrorAddendum(source) { | ||
{ | ||
if (source !== undefined) { | ||
var fileName = source.fileName.replace(/^.*[\\\/]/, ''); | ||
var lineNumber = source.lineNumber; | ||
return '\n\nCheck your code at ' + fileName + ':' + lineNumber + '.'; | ||
} | ||
return ''; | ||
} | ||
} | ||
/** | ||
* Warn if there's no key explicitly set on dynamic arrays of children or | ||
* object keys are not valid. This allows us to keep track of children between | ||
* updates. | ||
*/ | ||
var ownerHasKeyUseWarning = {}; | ||
function getCurrentComponentErrorInfo(parentType) { | ||
{ | ||
var info = getDeclarationErrorAddendum(); | ||
if (!info) { | ||
var parentName = getComponentNameFromType(parentType); | ||
if (parentName) { | ||
info = "\n\nCheck the top-level render call using <" + parentName + ">."; | ||
} | ||
} | ||
return info; | ||
} | ||
} | ||
/** | ||
* Warn if the element doesn't have an explicit key assigned to it. | ||
* This element is in an array. The array could grow and shrink or be | ||
* reordered. All children that haven't already been validated are required to | ||
* have a "key" property assigned to it. Error statuses are cached so a warning | ||
* will only be shown once. | ||
* | ||
* @internal | ||
* @param {ReactElement} element Element that requires a key. | ||
* @param {*} parentType element's parent's type. | ||
*/ | ||
function validateExplicitKey(element, parentType) { | ||
{ | ||
if (!element._store || element._store.validated || element.key != null) { | ||
return; | ||
} | ||
element._store.validated = true; | ||
var currentComponentErrorInfo = getCurrentComponentErrorInfo(parentType); | ||
if (ownerHasKeyUseWarning[currentComponentErrorInfo]) { | ||
return; | ||
} | ||
ownerHasKeyUseWarning[currentComponentErrorInfo] = true; // Usually the current owner is the offender, but if it accepts children as a | ||
// property, it may be the creator of the child that's responsible for | ||
// assigning it a key. | ||
var childOwner = ''; | ||
if (element && element._owner && element._owner !== ReactCurrentOwner.current) { | ||
// Give the component that originally created this child. | ||
childOwner = " It was passed a child from " + getComponentNameFromType(element._owner.type) + "."; | ||
} | ||
setCurrentlyValidatingElement(element); | ||
error('Each child in a list should have a unique "key" prop.' + '%s%s See https://reactjs.org/link/warning-keys for more information.', currentComponentErrorInfo, childOwner); | ||
setCurrentlyValidatingElement(null); | ||
} | ||
} | ||
/** | ||
* Ensure that every element either is passed in a static location, in an | ||
@@ -1253,48 +1208,90 @@ * array with an explicit keys property defined, or in an object literal | ||
/** | ||
* Given an element, validate that its props follow the propTypes definition, | ||
* provided by the type. | ||
* Verifies the object is a ReactElement. | ||
* See https://reactjs.org/docs/react-api.html#isvalidelement | ||
* @param {?object} object | ||
* @return {boolean} True if `object` is a ReactElement. | ||
* @final | ||
*/ | ||
function isValidElement(object) { | ||
return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE; | ||
} | ||
var ownerHasKeyUseWarning = {}; | ||
/** | ||
* Warn if the element doesn't have an explicit key assigned to it. | ||
* This element is in an array. The array could grow and shrink or be | ||
* reordered. All children that haven't already been validated are required to | ||
* have a "key" property assigned to it. Error statuses are cached so a warning | ||
* will only be shown once. | ||
* | ||
* @param {ReactElement} element | ||
* @internal | ||
* @param {ReactElement} element Element that requires a key. | ||
* @param {*} parentType element's parent's type. | ||
*/ | ||
function validatePropTypes(element) { | ||
function validateExplicitKey(element, parentType) { | ||
{ | ||
var type = element.type; | ||
if (type === null || type === undefined || typeof type === 'string') { | ||
if (!element._store || element._store.validated || element.key != null) { | ||
return; | ||
} | ||
if (type.$$typeof === REACT_CLIENT_REFERENCE) { | ||
element._store.validated = true; | ||
var currentComponentErrorInfo = getCurrentComponentErrorInfo(parentType); | ||
if (ownerHasKeyUseWarning[currentComponentErrorInfo]) { | ||
return; | ||
} | ||
var propTypes; | ||
ownerHasKeyUseWarning[currentComponentErrorInfo] = true; // Usually the current owner is the offender, but if it accepts children as a | ||
// property, it may be the creator of the child that's responsible for | ||
// assigning it a key. | ||
if (typeof type === 'function') { | ||
propTypes = type.propTypes; | ||
} else if (typeof type === 'object' && (type.$$typeof === REACT_FORWARD_REF_TYPE || // Note: Memo only checks outer props here. | ||
// Inner props are checked in the reconciler. | ||
type.$$typeof === REACT_MEMO_TYPE)) { | ||
propTypes = type.propTypes; | ||
var childOwner = ''; | ||
if (element && element._owner != null && element._owner !== ReactSharedInternalsServer.owner) { | ||
var ownerName = null; | ||
if (typeof element._owner.tag === 'number') { | ||
ownerName = getComponentNameFromType(element._owner.type); | ||
} else if (typeof element._owner.name === 'string') { | ||
ownerName = element._owner.name; | ||
} // Give the component that originally created this child. | ||
childOwner = " It was passed a child from " + ownerName + "."; | ||
} | ||
setCurrentlyValidatingElement(element); | ||
error('Each child in a list should have a unique "key" prop.' + '%s%s See https://react.dev/link/warning-keys for more information.', currentComponentErrorInfo, childOwner); | ||
setCurrentlyValidatingElement(null); | ||
} | ||
} | ||
function setCurrentlyValidatingElement(element) { | ||
{ | ||
if (element) { | ||
var stack = describeUnknownElementTypeFrameInDEV(element.type); | ||
ReactSharedInternalsServer.setExtraStackFrame(stack); | ||
} else { | ||
return; | ||
ReactSharedInternalsServer.setExtraStackFrame(null); | ||
} | ||
} | ||
} | ||
if (propTypes) { | ||
// Intentionally inside to avoid triggering lazy initializers: | ||
var name = getComponentNameFromType(type); | ||
checkPropTypes(propTypes, element.props, 'prop', name, element); | ||
} else if (type.PropTypes !== undefined && !propTypesMisspellWarningShown) { | ||
propTypesMisspellWarningShown = true; // Intentionally inside to avoid triggering lazy initializers: | ||
function getCurrentComponentErrorInfo(parentType) { | ||
{ | ||
var info = getDeclarationErrorAddendum(); | ||
var _name = getComponentNameFromType(type); | ||
if (!info) { | ||
var parentName = getComponentNameFromType(parentType); | ||
error('Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?', _name || 'Unknown'); | ||
if (parentName) { | ||
info = "\n\nCheck the top-level render call using <" + parentName + ">."; | ||
} | ||
} | ||
if (typeof type.getDefaultProps === 'function' && !type.getDefaultProps.isReactClassApproved) { | ||
error('getDefaultProps is only used on classic React.createClass ' + 'definitions. Use a static property named `defaultProps` instead.'); | ||
} | ||
return info; | ||
} | ||
@@ -1309,2 +1306,3 @@ } | ||
function validateFragmentProps(fragment) { | ||
// TODO: Move this to render phase instead of at element creation. | ||
{ | ||
@@ -1325,134 +1323,16 @@ var keys = Object.keys(fragment.props); | ||
} | ||
if (fragment.ref !== null) { | ||
setCurrentlyValidatingElement(fragment); | ||
error('Invalid attribute `ref` supplied to `React.Fragment`.'); | ||
setCurrentlyValidatingElement(null); | ||
} | ||
} | ||
} | ||
var didWarnAboutKeySpread = {}; | ||
function jsxWithValidation(type, props, key, isStaticChildren, source, self) { | ||
{ | ||
var validType = isValidElementType(type); // We warn in this case but don't throw. We expect the element creation to | ||
// succeed and there will likely be errors in render. | ||
if (!validType) { | ||
var info = ''; | ||
if (type === undefined || typeof type === 'object' && type !== null && Object.keys(type).length === 0) { | ||
info += ' You likely forgot to export your component from the file ' + "it's defined in, or you might have mixed up default and named imports."; | ||
} | ||
var sourceInfo = getSourceInfoErrorAddendum(source); | ||
if (sourceInfo) { | ||
info += sourceInfo; | ||
} else { | ||
info += getDeclarationErrorAddendum(); | ||
} | ||
var typeString; | ||
if (type === null) { | ||
typeString = 'null'; | ||
} else if (isArray(type)) { | ||
typeString = 'array'; | ||
} else if (type !== undefined && type.$$typeof === REACT_ELEMENT_TYPE) { | ||
typeString = "<" + (getComponentNameFromType(type.type) || 'Unknown') + " />"; | ||
info = ' Did you accidentally export a JSX literal instead of a component?'; | ||
} else { | ||
typeString = typeof type; | ||
} | ||
error('React.jsx: type is invalid -- expected a string (for ' + 'built-in components) or a class/function (for composite ' + 'components) but got: %s.%s', typeString, info); | ||
} | ||
var element = jsxDEV(type, props, key, source, self); // The result can be nullish if a mock or a custom function is used. | ||
// TODO: Drop this when these are no longer allowed as the type argument. | ||
if (element == null) { | ||
return element; | ||
} // Skip key warning if the type isn't valid since our key validation logic | ||
// doesn't expect a non-string/function type and can throw confusing errors. | ||
// We don't want exception behavior to differ between dev and prod. | ||
// (Rendering will throw with a helpful message and as soon as the type is | ||
// fixed, the key warnings will appear.) | ||
if (validType) { | ||
var children = props.children; | ||
if (children !== undefined) { | ||
if (isStaticChildren) { | ||
if (isArray(children)) { | ||
for (var i = 0; i < children.length; i++) { | ||
validateChildKeys(children[i], type); | ||
} | ||
if (Object.freeze) { | ||
Object.freeze(children); | ||
} | ||
} else { | ||
error('React.jsx: Static children should always be an array. ' + 'You are likely explicitly calling React.jsxs or React.jsxDEV. ' + 'Use the Babel transform instead.'); | ||
} | ||
} else { | ||
validateChildKeys(children, type); | ||
} | ||
} | ||
} | ||
if (hasOwnProperty.call(props, 'key')) { | ||
var componentName = getComponentNameFromType(type); | ||
var keys = Object.keys(props).filter(function (k) { | ||
return k !== 'key'; | ||
}); | ||
var beforeExample = keys.length > 0 ? '{key: someKey, ' + keys.join(': ..., ') + ': ...}' : '{key: someKey}'; | ||
if (!didWarnAboutKeySpread[componentName + beforeExample]) { | ||
var afterExample = keys.length > 0 ? '{' + keys.join(': ..., ') + ': ...}' : '{}'; | ||
error('A props object containing a "key" prop is being spread into JSX:\n' + ' let props = %s;\n' + ' <%s {...props} />\n' + 'React keys must be passed directly to JSX without using spread:\n' + ' let props = %s;\n' + ' <%s key={someKey} {...props} />', beforeExample, componentName, afterExample, componentName); | ||
didWarnAboutKeySpread[componentName + beforeExample] = true; | ||
} | ||
} | ||
if (type === REACT_FRAGMENT_TYPE) { | ||
validateFragmentProps(element); | ||
} else { | ||
validatePropTypes(element); | ||
} | ||
return element; | ||
} | ||
} // These two functions exist to still get child warnings in dev | ||
// even with the prod transform. This means that jsxDEV is purely | ||
// opt-in behavior for better messages but that we won't stop | ||
// giving you warnings if you use production apis. | ||
function jsxWithValidationStatic(type, props, key) { | ||
{ | ||
return jsxWithValidation(type, props, key, true); | ||
} | ||
} | ||
function jsxWithValidationDynamic(type, props, key) { | ||
{ | ||
return jsxWithValidation(type, props, key, false); | ||
} | ||
} | ||
// These are implementations of the jsx APIs for React Server runtimes. | ||
var jsx = jsxWithValidationDynamic ; // we may want to special case jsxs internally to take advantage of static children. | ||
var jsx = jsxProdSignatureRunningInDevWithDynamicChildren ; // we may want to special case jsxs internally to take advantage of static children. | ||
// for now we can ship identical prod functions | ||
var jsxs = jsxWithValidationStatic ; | ||
var jsxs = jsxProdSignatureRunningInDevWithStaticChildren ; | ||
var jsxDEV = jsxDEV$1 ; | ||
exports.Fragment = REACT_FRAGMENT_TYPE; | ||
exports.jsx = jsx; | ||
exports.jsxDEV = jsxDEV; | ||
exports.jsxs = jsxs; | ||
})(); | ||
} |
@@ -22,18 +22,14 @@ /** | ||
const ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED; | ||
// ----------------------------------------------------------------------------- | ||
// as a normal prop instead of stripping it from the props object. | ||
// Passes `ref` as a normal prop instead of stripping it from the props object | ||
// during element creation. | ||
// $FlowFixMe[method-unbinding] | ||
const hasOwnProperty = Object.prototype.hasOwnProperty; | ||
const enableRefAsProp = true; | ||
const ReactCurrentOwner = ReactSharedInternals.ReactCurrentOwner; | ||
const RESERVED_PROPS = { | ||
key: true, | ||
ref: true, | ||
__self: true, | ||
__source: true | ||
}; | ||
const ReactSharedInternalsServer = // $FlowFixMe: It's defined in the one we resolve to. | ||
React.__SERVER_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE; | ||
function hasValidRef(config) { | ||
return config.ref !== undefined; | ||
if (!ReactSharedInternalsServer) { | ||
throw new Error('The "react" package in this environment is not configured correctly. ' + 'The "react-server" condition must be enabled in any environment that ' + 'runs React Server Components.'); | ||
} | ||
@@ -67,15 +63,32 @@ | ||
function ReactElement(type, key, ref, self, source, owner, props) { | ||
const element = { | ||
// This tag allows us to uniquely identify this as a React Element | ||
$$typeof: REACT_ELEMENT_TYPE, | ||
// Built-in properties that belong on the element | ||
type, | ||
key, | ||
ref, | ||
props, | ||
// Record the component responsible for creating this element. | ||
_owner: owner | ||
}; | ||
function ReactElement(type, key, _ref, self, source, owner, props) { | ||
let ref; | ||
{ | ||
// When enableRefAsProp is on, ignore whatever was passed as the ref | ||
// argument and treat `props.ref` as the source of truth. The only thing we | ||
// use this for is `element.ref`, which will log a deprecation warning on | ||
// access. In the next release, we can remove `element.ref` as well as the | ||
// `ref` argument. | ||
const refProp = props.ref; // An undefined `element.ref` is coerced to `null` for | ||
// backwards compatibility. | ||
ref = refProp !== undefined ? refProp : null; | ||
} | ||
let element; | ||
{ | ||
// In prod, `ref` is a regular property and _owner doesn't exist. | ||
element = { | ||
// This tag allows us to uniquely identify this as a React Element | ||
$$typeof: REACT_ELEMENT_TYPE, | ||
// Built-in properties that belong on the element | ||
type, | ||
key, | ||
ref, | ||
props | ||
}; | ||
} | ||
return element; | ||
@@ -91,6 +104,3 @@ } | ||
function jsx$1(type, config, maybeKey) { | ||
let propName; // Reserved names are extracted | ||
const props = {}; | ||
function jsxProd(type, config, maybeKey) { | ||
let key = null; | ||
@@ -114,20 +124,27 @@ let ref = null; // Currently, key can be spread in as a prop. This causes a potential | ||
if (hasValidRef(config)) { | ||
ref = config.ref; | ||
} // Remaining properties are added to a new props object | ||
let props; | ||
if (!('key' in config)) { | ||
// If key was not spread in, we can reuse the original props object. This | ||
// only works for `jsx`, not `createElement`, because `jsx` is a compiler | ||
// target and the compiler always passes a new object. For `createElement`, | ||
// we can't assume a new object is passed every time because it can be | ||
// called manually. | ||
// | ||
// Spreading key is a warning in dev. In a future release, we will not | ||
// remove a spread key from the props object. (But we'll still warn.) We'll | ||
// always pass the object straight through. | ||
props = config; | ||
} else { | ||
// We need to remove reserved props (key, prop, ref). Create a fresh props | ||
// object and copy over all the non-reserved props. We don't use `delete` | ||
// because in V8 it will deopt the object to dictionary mode. | ||
props = {}; | ||
for (propName in config) { | ||
if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) { | ||
props[propName] = config[propName]; | ||
} | ||
} // Resolve default props | ||
if (type && type.defaultProps) { | ||
const defaultProps = type.defaultProps; | ||
for (propName in defaultProps) { | ||
if (props[propName] === undefined) { | ||
props[propName] = defaultProps[propName]; | ||
for (const propName in config) { | ||
// Skip over reserved prop names | ||
if (propName !== 'key' && (enableRefAsProp )) { | ||
{ | ||
props[propName] = config[propName]; | ||
} | ||
} | ||
@@ -137,13 +154,14 @@ } | ||
return ReactElement(type, key, ref, undefined, undefined, ReactCurrentOwner.current, props); | ||
} | ||
return ReactElement(type, key, ref, undefined, undefined, ReactSharedInternalsServer.owner, props); | ||
} // While `jsxDEV` should never be called when running in production, we do | ||
// These are implementations of the jsx APIs for React Server runtimes. | ||
const jsx = jsx$1; // we may want to special case jsxs internally to take advantage of static children. | ||
const jsx = jsxProd; // we may want to special case jsxs internally to take advantage of static children. | ||
// for now we can ship identical prod functions | ||
const jsxs = jsx$1; | ||
const jsxs = jsxProd; | ||
const jsxDEV = undefined; | ||
exports.Fragment = REACT_FRAGMENT_TYPE; | ||
exports.jsx = jsx; | ||
exports.jsxDEV = jsxDEV; | ||
exports.jsxs = jsxs; |
@@ -10,5 +10,5 @@ /* | ||
*/ | ||
'use strict';var f=require("react"),k=Symbol.for("react.element"),l=Symbol.for("react.fragment"),m=Object.prototype.hasOwnProperty,n=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p={key:!0,ref:!0,__self:!0,__source:!0}; | ||
function q(c,a,g){var b,d={},e=null,h=null;void 0!==g&&(e=""+g);void 0!==a.key&&(e=""+a.key);void 0!==a.ref&&(h=a.ref);for(b in a)m.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)void 0===d[b]&&(d[b]=a[b]);return{$$typeof:k,type:c,key:e,ref:h,props:d,_owner:n.current}}exports.Fragment=l;exports.jsx=q;exports.jsxs=q; | ||
'use strict';var e=require("react"),f=Symbol.for("react.element"),g=Symbol.for("react.fragment");if(!e.__SERVER_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE)throw Error('The "react" package in this environment is not configured correctly. The "react-server" condition must be enabled in any environment that runs React Server Components.'); | ||
function h(k,a,b){var c=null;void 0!==b&&(c=""+b);void 0!==a.key&&(c=""+a.key);if("key"in a){b={};for(var d in a)"key"!==d&&(b[d]=a[d])}else b=a;a=b.ref;return{$$typeof:f,type:k,key:c,ref:void 0!==a?a:null,props:b}}exports.Fragment=g;exports.jsx=h;exports.jsxDEV=void 0;exports.jsxs=h; | ||
//# sourceMappingURL=react-jsx-runtime.react-server.production.min.js.map |
@@ -13,3 +13,3 @@ /** | ||
var ReactVersion = '18.3.0-experimental-ad720f36e-20240206'; | ||
var ReactVersion = '19.0.0-experimental-adb717393-20240411'; | ||
@@ -25,3 +25,4 @@ // ATTENTION | ||
const REACT_PROFILER_TYPE = Symbol.for('react.profiler'); | ||
const REACT_PROVIDER_TYPE = Symbol.for('react.provider'); | ||
const REACT_CONSUMER_TYPE = Symbol.for('react.consumer'); | ||
const REACT_CONTEXT_TYPE = Symbol.for('react.context'); | ||
@@ -35,3 +36,2 @@ const REACT_FORWARD_REF_TYPE = Symbol.for('react.forward_ref'); | ||
const REACT_OFFSCREEN_TYPE = Symbol.for('react.offscreen'); | ||
const REACT_CACHE_TYPE = Symbol.for('react.cache'); | ||
const REACT_POSTPONE_TYPE = Symbol.for('react.postpone'); | ||
@@ -168,3 +168,3 @@ const MAYBE_ITERATOR_SYMBOL = Symbol.iterator; | ||
if (typeof partialState !== 'object' && typeof partialState !== 'function' && partialState != null) { | ||
throw new Error('setState(...): takes an object of state variables to update or a ' + 'function which returns an object of state variables.'); | ||
throw new Error('takes an object of state variables to update or a ' + 'function which returns an object of state variables.'); | ||
} | ||
@@ -230,26 +230,18 @@ | ||
// $FlowFixMe[method-unbinding] | ||
const hasOwnProperty = Object.prototype.hasOwnProperty; | ||
// ----------------------------------------------------------------------------- | ||
// as a normal prop instead of stripping it from the props object. | ||
// Passes `ref` as a normal prop instead of stripping it from the props object | ||
// during element creation. | ||
/** | ||
* Keeps track of the current owner. | ||
* | ||
* The current owner is the component who should own any components that are | ||
* currently being constructed. | ||
*/ | ||
const ReactCurrentOwner = { | ||
/** | ||
* @internal | ||
* @type {ReactComponent} | ||
*/ | ||
current: null | ||
}; | ||
const enableRefAsProp = true; | ||
const RESERVED_PROPS = { | ||
key: true, | ||
ref: true, | ||
__self: true, | ||
__source: true | ||
const ReactSharedInternals = { | ||
H: null, | ||
C: null, | ||
T: null | ||
}; | ||
// $FlowFixMe[method-unbinding] | ||
const hasOwnProperty = Object.prototype.hasOwnProperty; | ||
function hasValidRef(config) { | ||
@@ -286,15 +278,32 @@ | ||
function ReactElement(type, key, ref, self, source, owner, props) { | ||
const element = { | ||
// This tag allows us to uniquely identify this as a React Element | ||
$$typeof: REACT_ELEMENT_TYPE, | ||
// Built-in properties that belong on the element | ||
type: type, | ||
key: key, | ||
ref: ref, | ||
props: props, | ||
// Record the component responsible for creating this element. | ||
_owner: owner | ||
}; | ||
function ReactElement(type, key, _ref, self, source, owner, props) { | ||
let ref; | ||
{ | ||
// When enableRefAsProp is on, ignore whatever was passed as the ref | ||
// argument and treat `props.ref` as the source of truth. The only thing we | ||
// use this for is `element.ref`, which will log a deprecation warning on | ||
// access. In the next release, we can remove `element.ref` as well as the | ||
// `ref` argument. | ||
const refProp = props.ref; // An undefined `element.ref` is coerced to `null` for | ||
// backwards compatibility. | ||
ref = refProp !== undefined ? refProp : null; | ||
} | ||
let element; | ||
{ | ||
// In prod, `ref` is a regular property and _owner doesn't exist. | ||
element = { | ||
// This tag allows us to uniquely identify this as a React Element | ||
$$typeof: REACT_ELEMENT_TYPE, | ||
// Built-in properties that belong on the element | ||
type, | ||
key, | ||
ref, | ||
props | ||
}; | ||
} | ||
return element; | ||
@@ -307,3 +316,4 @@ } | ||
function createElement$1(type, config, children) { | ||
function createElement(type, config, children) { | ||
let propName; // Reserved names are extracted | ||
@@ -314,9 +324,4 @@ | ||
let ref = null; | ||
let self = null; | ||
let source = null; | ||
if (config != null) { | ||
if (hasValidRef(config)) { | ||
ref = config.ref; | ||
} | ||
@@ -326,10 +331,15 @@ if (hasValidKey(config)) { | ||
key = '' + config.key; | ||
} | ||
} // Remaining properties are added to a new props object | ||
self = config.__self === undefined ? null : config.__self; | ||
source = config.__source === undefined ? null : config.__source; // Remaining properties are added to a new props object | ||
for (propName in config) { | ||
if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) { | ||
props[propName] = config[propName]; | ||
if (hasOwnProperty.call(config, propName) && // Skip over reserved prop names | ||
propName !== 'key' && (enableRefAsProp ) && // Even though we don't use these anymore in the runtime, we don't want | ||
// them to appear as props, so in createElement we filter them out. | ||
// We don't have to do this in the jsx() runtime because the jsx() | ||
// transform never passed these as props; it used separate arguments. | ||
propName !== '__self' && propName !== '__source') { | ||
{ | ||
props[propName] = config[propName]; | ||
} | ||
} | ||
@@ -366,22 +376,10 @@ } | ||
return ReactElement(type, key, ref, self, source, ReactCurrentOwner.current, props); | ||
} | ||
/** | ||
* Return a function that produces ReactElements of a given type. | ||
* See https://reactjs.org/docs/react-api.html#createfactory | ||
*/ | ||
const element = ReactElement(type, key, ref, undefined, undefined, ReactSharedInternals.owner, props); | ||
function createFactory$1(type) { | ||
const factory = createElement$1.bind(null, type); // Expose the type on the factory and the prototype so that it can be | ||
// easily accessed on elements. E.g. `<Foo />.type === Foo`. | ||
// This should not be named `constructor` since this may not be the function | ||
// that created the element, and it may not even be a constructor. | ||
// Legacy hook: remove it | ||
factory.type = type; | ||
return factory; | ||
return element; | ||
} | ||
function cloneAndReplaceKey(oldElement, newKey) { | ||
const newElement = ReactElement(oldElement.type, newKey, oldElement.ref, oldElement._self, oldElement._source, oldElement._owner, oldElement.props); | ||
return newElement; | ||
return ReactElement(oldElement.type, newKey, // When enableRefAsProp is on, this argument is ignored. This check only | ||
// exists to avoid the `ref` access warning. | ||
null , undefined, undefined, undefined , oldElement.props); | ||
} | ||
@@ -393,5 +391,5 @@ /** | ||
function cloneElement$1(element, config, children) { | ||
function cloneElement(element, config, children) { | ||
if (element === null || element === undefined) { | ||
throw new Error("React.cloneElement(...): The argument must be a React element, but you passed " + element + "."); | ||
throw new Error("The argument must be a React element, but you passed " + element + "."); | ||
} | ||
@@ -404,17 +402,9 @@ | ||
let key = element.key; | ||
let ref = element.ref; // Self is preserved since the owner is preserved. | ||
let ref = null ; // Owner will be preserved, unless ref is overridden | ||
const self = element._self; // Source is preserved since cloneElement is unlikely to be targeted by a | ||
// transpiler, and the original source is probably a better indicator of the | ||
// true owner. | ||
let owner = undefined ; | ||
const source = element._source; // Owner will be preserved, unless ref is overridden | ||
let owner = element._owner; | ||
if (config != null) { | ||
if (hasValidRef(config)) { | ||
// Silently steal the ref from the parent. | ||
ref = config.ref; | ||
owner = ReactCurrentOwner.current; | ||
owner = ReactSharedInternals.owner; | ||
} | ||
@@ -427,16 +417,18 @@ | ||
let defaultProps; | ||
if (element.type && element.type.defaultProps) { | ||
defaultProps = element.type.defaultProps; | ||
} | ||
for (propName in config) { | ||
if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) { | ||
if (config[propName] === undefined && defaultProps !== undefined) { | ||
// Resolve default props | ||
props[propName] = defaultProps[propName]; | ||
} else { | ||
props[propName] = config[propName]; | ||
if (hasOwnProperty.call(config, propName) && // Skip over reserved prop names | ||
propName !== 'key' && (enableRefAsProp ) && // ...and maybe these, too, though we currently rely on them for | ||
// warnings and debug information in dev. Need to decide if we're OK | ||
// with dropping them. In the jsx() runtime it's not an issue because | ||
// the data gets passed as separate arguments instead of props, but | ||
// it would be nice to stop relying on them entirely so we can drop | ||
// them from the internal Fiber field. | ||
propName !== '__self' && propName !== '__source' && // Undefined `ref` is ignored by cloneElement. We treat it the same as | ||
// if the property were missing. This is mostly for | ||
// backwards compatibility. | ||
!(propName === 'ref' && config.ref === undefined)) { | ||
{ | ||
{ | ||
props[propName] = config[propName]; | ||
} | ||
} | ||
@@ -463,3 +455,5 @@ } | ||
return ReactElement(element.type, key, ref, self, source, owner, props); | ||
const clonedElement = ReactElement(element.type, key, ref, undefined, undefined, owner, props); | ||
return clonedElement; | ||
} | ||
@@ -474,2 +468,3 @@ /** | ||
function isValidElement(object) { | ||
@@ -479,35 +474,2 @@ return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE; | ||
/** | ||
* Keeps track of the current dispatcher. | ||
*/ | ||
const ReactCurrentDispatcher = { | ||
current: null | ||
}; | ||
/** | ||
* Keeps track of the current Cache dispatcher. | ||
*/ | ||
const ReactCurrentCache = { | ||
current: null | ||
}; | ||
/** | ||
* Keeps track of the current batch's configuration such as how long an update | ||
* should suspend for if it needs to. | ||
*/ | ||
const ReactCurrentBatchConfig = { | ||
transition: null | ||
}; | ||
const ReactSharedInternals = { | ||
ReactCurrentDispatcher, | ||
ReactCurrentCache, | ||
ReactCurrentBatchConfig, | ||
ReactCurrentOwner | ||
}; | ||
const createElement = createElement$1; | ||
const cloneElement = cloneElement$1; | ||
const createFactory = createFactory$1; | ||
const SEPARATOR = '.'; | ||
@@ -559,2 +521,68 @@ const SUBSEPARATOR = ':'; | ||
function noop$1() {} | ||
function resolveThenable(thenable) { | ||
switch (thenable.status) { | ||
case 'fulfilled': | ||
{ | ||
const fulfilledValue = thenable.value; | ||
return fulfilledValue; | ||
} | ||
case 'rejected': | ||
{ | ||
const rejectedError = thenable.reason; | ||
throw rejectedError; | ||
} | ||
default: | ||
{ | ||
if (typeof thenable.status === 'string') { | ||
// Only instrument the thenable if the status if not defined. If | ||
// it's defined, but an unknown value, assume it's been instrumented by | ||
// some custom userspace implementation. We treat it as "pending". | ||
// Attach a dummy listener, to ensure that any lazy initialization can | ||
// happen. Flight lazily parses JSON when the value is actually awaited. | ||
thenable.then(noop$1, noop$1); | ||
} else { | ||
// This is an uncached thenable that we haven't seen before. | ||
// TODO: Detect infinite ping loops caused by uncached promises. | ||
const pendingThenable = thenable; | ||
pendingThenable.status = 'pending'; | ||
pendingThenable.then(fulfilledValue => { | ||
if (thenable.status === 'pending') { | ||
const fulfilledThenable = thenable; | ||
fulfilledThenable.status = 'fulfilled'; | ||
fulfilledThenable.value = fulfilledValue; | ||
} | ||
}, error => { | ||
if (thenable.status === 'pending') { | ||
const rejectedThenable = thenable; | ||
rejectedThenable.status = 'rejected'; | ||
rejectedThenable.reason = error; | ||
} | ||
}); | ||
} // Check one more time in case the thenable resolved synchronously. | ||
switch (thenable.status) { | ||
case 'fulfilled': | ||
{ | ||
const fulfilledThenable = thenable; | ||
return fulfilledThenable.value; | ||
} | ||
case 'rejected': | ||
{ | ||
const rejectedThenable = thenable; | ||
const rejectedError = rejectedThenable.reason; | ||
throw rejectedError; | ||
} | ||
} | ||
} | ||
} | ||
throw thenable; | ||
} | ||
function mapIntoArray(children, array, escapedPrefix, nameSoFar, callback) { | ||
@@ -574,2 +602,3 @@ const type = typeof children; | ||
switch (type) { | ||
case 'bigint': | ||
case 'string': | ||
@@ -585,2 +614,8 @@ case 'number': | ||
invokeCallback = true; | ||
break; | ||
case REACT_LAZY_TYPE: | ||
const payload = children._payload; | ||
const init = children._init; | ||
return mapIntoArray(init(payload), array, escapedPrefix, nameSoFar, callback); | ||
} | ||
@@ -651,3 +686,7 @@ | ||
} else if (type === 'object') { | ||
// eslint-disable-next-line react-internal/safe-string-coercion | ||
if (typeof children.then === 'function') { | ||
return mapIntoArray(resolveThenable(children), array, escapedPrefix, nameSoFar, callback); | ||
} // eslint-disable-next-line react-internal/safe-string-coercion | ||
const childrenString = String(children); | ||
@@ -780,9 +819,9 @@ throw new Error("Objects are not valid as a React child (found: " + (childrenString === '[object Object]' ? 'object with keys {' + Object.keys(children).join(', ') + '}' : childrenString) + "). " + 'If you meant to render a collection of children, use an array ' + 'instead.'); | ||
}; | ||
context.Provider = { | ||
$$typeof: REACT_PROVIDER_TYPE, | ||
_context: context | ||
}; | ||
{ | ||
context.Consumer = context; | ||
context.Provider = context; | ||
context.Consumer = { | ||
$$typeof: REACT_CONSUMER_TYPE, | ||
_context: context | ||
}; | ||
} | ||
@@ -900,3 +939,3 @@ | ||
return function () { | ||
const dispatcher = ReactCurrentCache.current; | ||
const dispatcher = ReactSharedInternals.C; | ||
@@ -983,7 +1022,3 @@ if (!dispatcher) { | ||
function cache(fn) { | ||
{ | ||
return cache$1(fn); | ||
} | ||
} | ||
const cache = cache$1; | ||
@@ -998,3 +1033,3 @@ function postpone(reason) { | ||
function resolveDispatcher() { | ||
const dispatcher = ReactCurrentDispatcher.current; | ||
const dispatcher = ReactSharedInternals.H; | ||
// intentionally don't throw our own error because this is in a hot path. | ||
@@ -1007,22 +1042,4 @@ // Also helps ensure this is inlined. | ||
function getCacheSignal() { | ||
const dispatcher = ReactCurrentCache.current; | ||
if (!dispatcher) { | ||
// If we have no cache to associate with this call, then we don't know | ||
// its lifetime. We abort early since that's safer than letting it live | ||
// for ever. Unlike just caching which can be a functional noop outside | ||
// of React, these should generally always be associated with some React | ||
// render but we're not limiting quite as much as making it a Hook. | ||
// It's safer than erroring early at runtime. | ||
const controller = new AbortController(); | ||
const reason = new Error('This CacheSignal was requested outside React which means that it is ' + 'immediately aborted.'); | ||
controller.abort(reason); | ||
return controller.signal; | ||
} | ||
return dispatcher.getCacheSignal(); | ||
} | ||
function getCacheForType(resourceType) { | ||
const dispatcher = ReactCurrentCache.current; | ||
const dispatcher = ReactSharedInternals.C; | ||
@@ -1119,5 +1136,42 @@ if (!dispatcher) { | ||
} | ||
function useActionState(action, initialState, permalink) { | ||
{ | ||
const dispatcher = resolveDispatcher(); // $FlowFixMe[not-a-function] This is unstable, thus optional | ||
return dispatcher.useActionState(action, initialState, permalink); | ||
} | ||
} | ||
const reportGlobalError = typeof reportError === 'function' ? // In modern browsers, reportError will dispatch an error event, | ||
// emulating an uncaught JavaScript error. | ||
reportError : error => { | ||
if (typeof window === 'object' && typeof window.ErrorEvent === 'function') { | ||
// Browser Polyfill | ||
const message = typeof error === 'object' && error !== null && typeof error.message === 'string' ? // eslint-disable-next-line react-internal/safe-string-coercion | ||
String(error.message) : // eslint-disable-next-line react-internal/safe-string-coercion | ||
String(error); | ||
const event = new window.ErrorEvent('error', { | ||
bubbles: true, | ||
cancelable: true, | ||
message: message, | ||
error: error | ||
}); | ||
const shouldLog = window.dispatchEvent(event); | ||
if (!shouldLog) { | ||
return; | ||
} | ||
} else if (typeof process === 'object' && // $FlowFixMe[method-unbinding] | ||
typeof process.emit === 'function') { | ||
// Node Polyfill | ||
process.emit('uncaughtException', error); | ||
return; | ||
} // eslint-disable-next-line react-internal/no-production-logging | ||
console['error'](error); | ||
}; | ||
function startTransition(scope, options) { | ||
const prevTransition = ReactCurrentBatchConfig.transition; // Each renderer registers a callback to receive the return value of | ||
const prevTransition = ReactSharedInternals.T; // Each renderer registers a callback to receive the return value of | ||
// the scope function. This is used to implement async actions. | ||
@@ -1129,4 +1183,4 @@ | ||
}; | ||
ReactCurrentBatchConfig.transition = transition; | ||
const currentTransition = ReactCurrentBatchConfig.transition; | ||
ReactSharedInternals.T = transition; | ||
const currentTransition = ReactSharedInternals.T; | ||
@@ -1139,8 +1193,8 @@ { | ||
callbacks.forEach(callback => callback(currentTransition, returnValue)); | ||
returnValue.then(noop, onError); | ||
returnValue.then(noop, reportGlobalError); | ||
} | ||
} catch (error) { | ||
onError(error); | ||
reportGlobalError(error); | ||
} finally { | ||
ReactCurrentBatchConfig.transition = prevTransition; | ||
ReactSharedInternals.T = prevTransition; | ||
} | ||
@@ -1150,14 +1204,4 @@ } | ||
function noop() {} // Use reportError, if it exists. Otherwise console.error. This is the same as | ||
// the default for onRecoverableError. | ||
function noop() {} | ||
const onError = typeof reportError === 'function' ? // In modern browsers, reportError will dispatch an error event, | ||
// emulating an uncaught JavaScript error. | ||
reportError : error => { | ||
// In older browsers and test environments, fallback to console.error. | ||
// eslint-disable-next-line react-internal/no-production-logging | ||
console['error'](error); | ||
}; | ||
function act(callback) { | ||
@@ -1189,3 +1233,3 @@ { | ||
exports.Suspense = REACT_SUSPENSE_TYPE; | ||
exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = ReactSharedInternals; | ||
exports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE = ReactSharedInternals; | ||
exports.act = act; | ||
@@ -1196,3 +1240,2 @@ exports.cache = cache; | ||
exports.createElement = createElement; | ||
exports.createFactory = createFactory; | ||
exports.createRef = createRef; | ||
@@ -1207,7 +1250,5 @@ exports.experimental_useEffectEvent = useEffectEvent; | ||
exports.unstable_Activity = REACT_OFFSCREEN_TYPE; | ||
exports.unstable_Cache = REACT_CACHE_TYPE; | ||
exports.unstable_DebugTracingMode = REACT_DEBUG_TRACING_MODE_TYPE; | ||
exports.unstable_SuspenseList = REACT_SUSPENSE_LIST_TYPE; | ||
exports.unstable_getCacheForType = getCacheForType; | ||
exports.unstable_getCacheSignal = getCacheSignal; | ||
exports.unstable_postpone = postpone; | ||
@@ -1217,2 +1258,3 @@ exports.unstable_useCacheRefresh = useCacheRefresh; | ||
exports.use = use; | ||
exports.useActionState = useActionState; | ||
exports.useCallback = useCallback; | ||
@@ -1219,0 +1261,0 @@ exports.useContext = useContext; |
@@ -10,25 +10,26 @@ /* | ||
*/ | ||
'use strict';var l=Symbol.for("react.element"),n=Symbol.for("react.portal"),p=Symbol.for("react.fragment"),q=Symbol.for("react.strict_mode"),r=Symbol.for("react.profiler"),t=Symbol.for("react.provider"),u=Symbol.for("react.context"),v=Symbol.for("react.forward_ref"),w=Symbol.for("react.suspense"),x=Symbol.for("react.suspense_list"),y=Symbol.for("react.memo"),z=Symbol.for("react.lazy"),A=Symbol.for("react.debug_trace_mode"),B=Symbol.for("react.offscreen"),aa=Symbol.for("react.cache"),ba=Symbol.for("react.postpone"), | ||
C=Symbol.iterator;function ca(a){if(null===a||"object"!==typeof a)return null;a=C&&a[C]||a["@@iterator"];return"function"===typeof a?a:null}var D={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},E=Object.assign,F={};function G(a,b,c){this.props=a;this.context=b;this.refs=F;this.updater=c||D}G.prototype.isReactComponent={}; | ||
G.prototype.setState=function(a,b){if("object"!==typeof a&&"function"!==typeof a&&null!=a)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,a,b,"setState")};G.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,"forceUpdate")};function H(){}H.prototype=G.prototype;function I(a,b,c){this.props=a;this.context=b;this.refs=F;this.updater=c||D}var J=I.prototype=new H; | ||
J.constructor=I;E(J,G.prototype);J.isPureReactComponent=!0;var K=Array.isArray,L=Object.prototype.hasOwnProperty,M={current:null},N={key:!0,ref:!0,__self:!0,__source:!0}; | ||
function O(a,b,c){var f,d={},e=null,g=null;if(null!=b)for(f in void 0!==b.ref&&(g=b.ref),void 0!==b.key&&(e=""+b.key),b)L.call(b,f)&&!N.hasOwnProperty(f)&&(d[f]=b[f]);var h=arguments.length-2;if(1===h)d.children=c;else if(1<h){for(var k=Array(h),m=0;m<h;m++)k[m]=arguments[m+2];d.children=k}if(a&&a.defaultProps)for(f in h=a.defaultProps,h)void 0===d[f]&&(d[f]=h[f]);return{$$typeof:l,type:a,key:e,ref:g,props:d,_owner:M.current}} | ||
function da(a,b){return{$$typeof:l,type:a.type,key:b,ref:a.ref,props:a.props,_owner:a._owner}}function P(a){return"object"===typeof a&&null!==a&&a.$$typeof===l}var Q={current:null},R={current:null},S={transition:null},ea={ReactCurrentDispatcher:Q,ReactCurrentCache:R,ReactCurrentBatchConfig:S,ReactCurrentOwner:M};function escape(a){var b={"=":"=0",":":"=2"};return"$"+a.replace(/[=:]/g,function(c){return b[c]})}var T=/\/+/g; | ||
function U(a,b){return"object"===typeof a&&null!==a&&null!=a.key?escape(""+a.key):b.toString(36)} | ||
function V(a,b,c,f,d){var e=typeof a;if("undefined"===e||"boolean"===e)a=null;var g=!1;if(null===a)g=!0;else switch(e){case "string":case "number":g=!0;break;case "object":switch(a.$$typeof){case l:case n:g=!0}}if(g)return g=a,d=d(g),a=""===f?"."+U(g,0):f,K(d)?(c="",null!=a&&(c=a.replace(T,"$&/")+"/"),V(d,b,c,"",function(m){return m})):null!=d&&(P(d)&&(d=da(d,c+(!d.key||g&&g.key===d.key?"":(""+d.key).replace(T,"$&/")+"/")+a)),b.push(d)),1;g=0;f=""===f?".":f+":";if(K(a))for(var h=0;h<a.length;h++){e= | ||
a[h];var k=f+U(e,h);g+=V(e,b,c,k,d)}else if(k=ca(a),"function"===typeof k)for(a=k.call(a),h=0;!(e=a.next()).done;)e=e.value,k=f+U(e,h++),g+=V(e,b,c,k,d);else if("object"===e)throw b=String(a),Error("Objects are not valid as a React child (found: "+("[object Object]"===b?"object with keys {"+Object.keys(a).join(", ")+"}":b)+"). If you meant to render a collection of children, use an array instead.");return g} | ||
function W(a,b,c){if(null==a)return a;var f=[],d=0;V(a,f,"","",function(e){return b.call(c,e,d++)});return f}function fa(a){if(-1===a._status){var b=a._result;b=b();b.then(function(c){if(0===a._status||-1===a._status)a._status=1,a._result=c},function(c){if(0===a._status||-1===a._status)a._status=2,a._result=c});-1===a._status&&(a._status=0,a._result=b)}if(1===a._status)return a._result.default;throw a._result;}function ha(){return new WeakMap}function X(){return{s:0,v:void 0,o:null,p:null}} | ||
function ia(a){return function(){var b=R.current;if(!b)return a.apply(null,arguments);var c=b.getCacheForType(ha);b=c.get(a);void 0===b&&(b=X(),c.set(a,b));c=0;for(var f=arguments.length;c<f;c++){var d=arguments[c];if("function"===typeof d||"object"===typeof d&&null!==d){var e=b.o;null===e&&(b.o=e=new WeakMap);b=e.get(d);void 0===b&&(b=X(),e.set(d,b))}else e=b.p,null===e&&(b.p=e=new Map),b=e.get(d),void 0===b&&(b=X(),e.set(d,b))}if(1===b.s)return b.v;if(2===b.s)throw b.v;try{var g=a.apply(null,arguments); | ||
c=b;c.s=1;return c.v=g}catch(h){throw g=b,g.s=2,g.v=h,h;}}}function Y(a,b){return Q.current.useOptimistic(a,b)}function ja(){}var Z="function"===typeof reportError?reportError:function(a){console.error(a)}; | ||
exports.Children={map:W,forEach:function(a,b,c){W(a,function(){b.apply(this,arguments)},c)},count:function(a){var b=0;W(a,function(){b++});return b},toArray:function(a){return W(a,function(b){return b})||[]},only:function(a){if(!P(a))throw Error("React.Children.only expected to receive a single React element child.");return a}};exports.Component=G;exports.Fragment=p;exports.Profiler=r;exports.PureComponent=I;exports.StrictMode=q;exports.Suspense=w; | ||
exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=ea;exports.act=function(){throw Error("act(...) is not supported in production builds of React.");};exports.cache=function(a){return ia(a)}; | ||
exports.cloneElement=function(a,b,c){if(null===a||void 0===a)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+a+".");var f=E({},a.props),d=a.key,e=a.ref,g=a._owner;if(null!=b){void 0!==b.ref&&(e=b.ref,g=M.current);void 0!==b.key&&(d=""+b.key);if(a.type&&a.type.defaultProps)var h=a.type.defaultProps;for(k in b)L.call(b,k)&&!N.hasOwnProperty(k)&&(f[k]=void 0===b[k]&&void 0!==h?h[k]:b[k])}var k=arguments.length-2;if(1===k)f.children=c;else if(1<k){h=Array(k); | ||
for(var m=0;m<k;m++)h[m]=arguments[m+2];f.children=h}return{$$typeof:l,type:a.type,key:d,ref:e,props:f,_owner:g}};exports.createContext=function(a){a={$$typeof:u,_currentValue:a,_currentValue2:a,_threadCount:0,Provider:null,Consumer:null};a.Provider={$$typeof:t,_context:a};return a.Consumer=a};exports.createElement=O;exports.createFactory=function(a){var b=O.bind(null,a);b.type=a;return b};exports.createRef=function(){return{current:null}};exports.experimental_useEffectEvent=function(a){return Q.current.useEffectEvent(a)}; | ||
exports.experimental_useOptimistic=function(a,b){return Y(a,b)};exports.forwardRef=function(a){return{$$typeof:v,render:a}};exports.isValidElement=P;exports.lazy=function(a){return{$$typeof:z,_payload:{_status:-1,_result:a},_init:fa}};exports.memo=function(a,b){return{$$typeof:y,type:a,compare:void 0===b?null:b}}; | ||
exports.startTransition=function(a){var b=S.transition,c=new Set;S.transition={_callbacks:c};var f=S.transition;try{var d=a();"object"===typeof d&&null!==d&&"function"===typeof d.then&&(c.forEach(function(e){return e(f,d)}),d.then(ja,Z))}catch(e){Z(e)}finally{S.transition=b}};exports.unstable_Activity=B;exports.unstable_Cache=aa;exports.unstable_DebugTracingMode=A;exports.unstable_SuspenseList=x;exports.unstable_getCacheForType=function(a){var b=R.current;return b?b.getCacheForType(a):a()}; | ||
exports.unstable_getCacheSignal=function(){var a=R.current;return a?a.getCacheSignal():(a=new AbortController,a.abort(Error("This CacheSignal was requested outside React which means that it is immediately aborted.")),a.signal)};exports.unstable_postpone=function(a){a=Error(a);a.$$typeof=ba;throw a;};exports.unstable_useCacheRefresh=function(){return Q.current.useCacheRefresh()};exports.unstable_useMemoCache=function(a){return Q.current.useMemoCache(a)};exports.use=function(a){return Q.current.use(a)}; | ||
exports.useCallback=function(a,b){return Q.current.useCallback(a,b)};exports.useContext=function(a){return Q.current.useContext(a)};exports.useDebugValue=function(){};exports.useDeferredValue=function(a,b){return Q.current.useDeferredValue(a,b)};exports.useEffect=function(a,b){return Q.current.useEffect(a,b)};exports.useId=function(){return Q.current.useId()};exports.useImperativeHandle=function(a,b,c){return Q.current.useImperativeHandle(a,b,c)}; | ||
exports.useInsertionEffect=function(a,b){return Q.current.useInsertionEffect(a,b)};exports.useLayoutEffect=function(a,b){return Q.current.useLayoutEffect(a,b)};exports.useMemo=function(a,b){return Q.current.useMemo(a,b)};exports.useOptimistic=Y;exports.useReducer=function(a,b,c){return Q.current.useReducer(a,b,c)};exports.useRef=function(a){return Q.current.useRef(a)};exports.useState=function(a){return Q.current.useState(a)}; | ||
exports.useSyncExternalStore=function(a,b,c){return Q.current.useSyncExternalStore(a,b,c)};exports.useTransition=function(){return Q.current.useTransition()};exports.version="18.3.0-experimental-ad720f36e-20240206"; | ||
'use strict';var h=Symbol.for("react.element"),m=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),p=Symbol.for("react.strict_mode"),q=Symbol.for("react.profiler"),r=Symbol.for("react.consumer"),t=Symbol.for("react.context"),u=Symbol.for("react.forward_ref"),v=Symbol.for("react.suspense"),w=Symbol.for("react.suspense_list"),x=Symbol.for("react.memo"),y=Symbol.for("react.lazy"),z=Symbol.for("react.debug_trace_mode"),A=Symbol.for("react.offscreen"),B=Symbol.for("react.postpone"),C=Symbol.iterator; | ||
function D(a){if(null===a||"object"!==typeof a)return null;a=C&&a[C]||a["@@iterator"];return"function"===typeof a?a:null}var E={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},F=Object.assign,G={};function H(a,b,c){this.props=a;this.context=b;this.refs=G;this.updater=c||E}H.prototype.isReactComponent={}; | ||
H.prototype.setState=function(a,b){if("object"!==typeof a&&"function"!==typeof a&&null!=a)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,a,b,"setState")};H.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,"forceUpdate")};function I(){}I.prototype=H.prototype;function J(a,b,c){this.props=a;this.context=b;this.refs=G;this.updater=c||E}var K=J.prototype=new I; | ||
K.constructor=J;F(K,H.prototype);K.isPureReactComponent=!0;var L=Array.isArray,M={H:null,C:null,T:null},N=Object.prototype.hasOwnProperty;function O(a,b,c,f,d,g,e){c=e.ref;return{$$typeof:h,type:a,key:b,ref:void 0!==c?c:null,props:e}}function P(a,b){return O(a.type,b,null,void 0,void 0,void 0,a.props)}function Q(a){return"object"===typeof a&&null!==a&&a.$$typeof===h}function escape(a){var b={"=":"=0",":":"=2"};return"$"+a.replace(/[=:]/g,function(c){return b[c]})}var R=/\/+/g; | ||
function S(a,b){return"object"===typeof a&&null!==a&&null!=a.key?escape(""+a.key):b.toString(36)}function T(){} | ||
function U(a){switch(a.status){case "fulfilled":return a.value;case "rejected":throw a.reason;default:switch("string"===typeof a.status?a.then(T,T):(a.status="pending",a.then(function(b){"pending"===a.status&&(a.status="fulfilled",a.value=b)},function(b){"pending"===a.status&&(a.status="rejected",a.reason=b)})),a.status){case "fulfilled":return a.value;case "rejected":throw a.reason;}}throw a;} | ||
function V(a,b,c,f,d){var g=typeof a;if("undefined"===g||"boolean"===g)a=null;var e=!1;if(null===a)e=!0;else switch(g){case "bigint":case "string":case "number":e=!0;break;case "object":switch(a.$$typeof){case h:case m:e=!0;break;case y:return e=a._init,V(e(a._payload),b,c,f,d)}}if(e)return d=d(a),e=""===f?"."+S(a,0):f,L(d)?(c="",null!=e&&(c=e.replace(R,"$&/")+"/"),V(d,b,c,"",function(aa){return aa})):null!=d&&(Q(d)&&(d=P(d,c+(!d.key||a&&a.key===d.key?"":(""+d.key).replace(R,"$&/")+"/")+e)),b.push(d)), | ||
1;e=0;var l=""===f?".":f+":";if(L(a))for(var k=0;k<a.length;k++)f=a[k],g=l+S(f,k),e+=V(f,b,c,g,d);else if(k=D(a),"function"===typeof k)for(a=k.call(a),k=0;!(f=a.next()).done;)f=f.value,g=l+S(f,k++),e+=V(f,b,c,g,d);else if("object"===g){if("function"===typeof a.then)return V(U(a),b,c,f,d);b=String(a);throw Error("Objects are not valid as a React child (found: "+("[object Object]"===b?"object with keys {"+Object.keys(a).join(", ")+"}":b)+"). If you meant to render a collection of children, use an array instead."); | ||
}return e}function W(a,b,c){if(null==a)return a;var f=[],d=0;V(a,f,"","",function(g){return b.call(c,g,d++)});return f}function ba(a){if(-1===a._status){var b=a._result;b=b();b.then(function(c){if(0===a._status||-1===a._status)a._status=1,a._result=c},function(c){if(0===a._status||-1===a._status)a._status=2,a._result=c});-1===a._status&&(a._status=0,a._result=b)}if(1===a._status)return a._result.default;throw a._result;}function ca(){return new WeakMap} | ||
function X(){return{s:0,v:void 0,o:null,p:null}}function Y(a,b){return M.H.useOptimistic(a,b)} | ||
var Z="function"===typeof reportError?reportError:function(a){if("object"===typeof window&&"function"===typeof window.ErrorEvent){var b=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:"object"===typeof a&&null!==a&&"string"===typeof a.message?String(a.message):String(a),error:a});if(!window.dispatchEvent(b))return}else if("object"===typeof process&&"function"===typeof process.emit){process.emit("uncaughtException",a);return}console.error(a)};function da(){} | ||
exports.Children={map:W,forEach:function(a,b,c){W(a,function(){b.apply(this,arguments)},c)},count:function(a){var b=0;W(a,function(){b++});return b},toArray:function(a){return W(a,function(b){return b})||[]},only:function(a){if(!Q(a))throw Error("React.Children.only expected to receive a single React element child.");return a}};exports.Component=H;exports.Fragment=n;exports.Profiler=q;exports.PureComponent=J;exports.StrictMode=p;exports.Suspense=v; | ||
exports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=M;exports.act=function(){throw Error("act(...) is not supported in production builds of React.");}; | ||
exports.cache=function(a){return function(){var b=M.C;if(!b)return a.apply(null,arguments);var c=b.getCacheForType(ca);b=c.get(a);void 0===b&&(b=X(),c.set(a,b));c=0;for(var f=arguments.length;c<f;c++){var d=arguments[c];if("function"===typeof d||"object"===typeof d&&null!==d){var g=b.o;null===g&&(b.o=g=new WeakMap);b=g.get(d);void 0===b&&(b=X(),g.set(d,b))}else g=b.p,null===g&&(b.p=g=new Map),b=g.get(d),void 0===b&&(b=X(),g.set(d,b))}if(1===b.s)return b.v;if(2===b.s)throw b.v;try{var e=a.apply(null, | ||
arguments);c=b;c.s=1;return c.v=e}catch(l){throw e=b,e.s=2,e.v=l,l;}}}; | ||
exports.cloneElement=function(a,b,c){if(null===a||void 0===a)throw Error("The argument must be a React element, but you passed "+a+".");var f=F({},a.props),d=a.key,g=void 0;if(null!=b)for(e in void 0!==b.ref&&(g=M.owner),void 0!==b.key&&(d=""+b.key),b)!N.call(b,e)||"key"===e||"__self"===e||"__source"===e||"ref"===e&&void 0===b.ref||(f[e]=b[e]);var e=arguments.length-2;if(1===e)f.children=c;else if(1<e){for(var l=Array(e),k=0;k<e;k++)l[k]=arguments[k+2];f.children=l}return O(a.type,d,null,void 0,void 0, | ||
g,f)};exports.createContext=function(a){a={$$typeof:t,_currentValue:a,_currentValue2:a,_threadCount:0,Provider:null,Consumer:null};a.Provider=a;a.Consumer={$$typeof:r,_context:a};return a}; | ||
exports.createElement=function(a,b,c){var f,d={},g=null;if(null!=b)for(f in void 0!==b.key&&(g=""+b.key),b)N.call(b,f)&&"key"!==f&&"__self"!==f&&"__source"!==f&&(d[f]=b[f]);var e=arguments.length-2;if(1===e)d.children=c;else if(1<e){for(var l=Array(e),k=0;k<e;k++)l[k]=arguments[k+2];d.children=l}if(a&&a.defaultProps)for(f in e=a.defaultProps,e)void 0===d[f]&&(d[f]=e[f]);return O(a,g,null,void 0,void 0,M.owner,d)};exports.createRef=function(){return{current:null}}; | ||
exports.experimental_useEffectEvent=function(a){return M.H.useEffectEvent(a)};exports.experimental_useOptimistic=function(a,b){return Y(a,b)};exports.forwardRef=function(a){return{$$typeof:u,render:a}};exports.isValidElement=Q;exports.lazy=function(a){return{$$typeof:y,_payload:{_status:-1,_result:a},_init:ba}};exports.memo=function(a,b){return{$$typeof:x,type:a,compare:void 0===b?null:b}}; | ||
exports.startTransition=function(a){var b=M.T,c=new Set;M.T={_callbacks:c};var f=M.T;try{var d=a();"object"===typeof d&&null!==d&&"function"===typeof d.then&&(c.forEach(function(g){return g(f,d)}),d.then(da,Z))}catch(g){Z(g)}finally{M.T=b}};exports.unstable_Activity=A;exports.unstable_DebugTracingMode=z;exports.unstable_SuspenseList=w;exports.unstable_getCacheForType=function(a){var b=M.C;return b?b.getCacheForType(a):a()};exports.unstable_postpone=function(a){a=Error(a);a.$$typeof=B;throw a;}; | ||
exports.unstable_useCacheRefresh=function(){return M.H.useCacheRefresh()};exports.unstable_useMemoCache=function(a){return M.H.useMemoCache(a)};exports.use=function(a){return M.H.use(a)};exports.useActionState=function(a,b,c){return M.H.useActionState(a,b,c)};exports.useCallback=function(a,b){return M.H.useCallback(a,b)};exports.useContext=function(a){return M.H.useContext(a)};exports.useDebugValue=function(){};exports.useDeferredValue=function(a,b){return M.H.useDeferredValue(a,b)}; | ||
exports.useEffect=function(a,b){return M.H.useEffect(a,b)};exports.useId=function(){return M.H.useId()};exports.useImperativeHandle=function(a,b,c){return M.H.useImperativeHandle(a,b,c)};exports.useInsertionEffect=function(a,b){return M.H.useInsertionEffect(a,b)};exports.useLayoutEffect=function(a,b){return M.H.useLayoutEffect(a,b)};exports.useMemo=function(a,b){return M.H.useMemo(a,b)};exports.useOptimistic=Y;exports.useReducer=function(a,b,c){return M.H.useReducer(a,b,c)};exports.useRef=function(a){return M.H.useRef(a)}; | ||
exports.useState=function(a){return M.H.useState(a)};exports.useSyncExternalStore=function(a,b,c){return M.H.useSyncExternalStore(a,b,c)};exports.useTransition=function(){return M.H.useTransition()};exports.version="19.0.0-experimental-adb717393-20240411"; | ||
//# sourceMappingURL=react.production.min.js.map |
@@ -15,9 +15,31 @@ /** | ||
/** | ||
* Keeps track of the current Cache dispatcher. | ||
*/ | ||
const ReactCurrentCache = { | ||
current: null | ||
// ----------------------------------------------------------------------------- | ||
// as a normal prop instead of stripping it from the props object. | ||
// Passes `ref` as a normal prop instead of stripping it from the props object | ||
// during element creation. | ||
const enableRefAsProp = true; | ||
const TaintRegistryObjects$1 = new WeakMap(); | ||
const TaintRegistryValues$1 = new Map(); // Byte lengths of all binary values we've ever seen. We don't both refcounting this. | ||
// We expect to see only a few lengths here such as the length of token. | ||
const TaintRegistryByteLengths$1 = new Set(); // When a value is finalized, it means that it has been removed from any global caches. | ||
// No future requests can get a handle on it but any ongoing requests can still have | ||
// a handle on it. It's still tainted until that happens. | ||
const TaintRegistryPendingRequests$1 = new Set(); | ||
const ReactSharedInternals = { | ||
H: null, | ||
C: null | ||
}; | ||
{ | ||
ReactSharedInternals.TaintRegistryObjects = TaintRegistryObjects$1; | ||
ReactSharedInternals.TaintRegistryValues = TaintRegistryValues$1; | ||
ReactSharedInternals.TaintRegistryByteLengths = TaintRegistryByteLengths$1; | ||
ReactSharedInternals.TaintRegistryPendingRequests = TaintRegistryPendingRequests$1; | ||
} | ||
function createFetchCache() { | ||
@@ -44,3 +66,3 @@ return new Map(); | ||
const cachedFetch = function fetch(resource, options) { | ||
const dispatcher = ReactCurrentCache.current; | ||
const dispatcher = ReactSharedInternals.C; | ||
@@ -52,4 +74,4 @@ if (!dispatcher) { | ||
if (options && options.signal && options.signal !== dispatcher.getCacheSignal()) { | ||
// If we're passed a signal that is not ours, then we assume that | ||
if (options && options.signal) { | ||
// If we're passed a signal, then we assume that | ||
// someone else controls the lifetime of this object and opts out of | ||
@@ -144,49 +166,2 @@ // caching. It's effectively the opt-out mechanism. | ||
/** | ||
* Keeps track of the current dispatcher. | ||
*/ | ||
const ReactCurrentDispatcher = { | ||
current: null | ||
}; | ||
/** | ||
* Keeps track of the current owner. | ||
* | ||
* The current owner is the component who should own any components that are | ||
* currently being constructed. | ||
*/ | ||
const ReactCurrentOwner = { | ||
/** | ||
* @internal | ||
* @type {ReactComponent} | ||
*/ | ||
current: null | ||
}; | ||
const ReactSharedInternals = { | ||
ReactCurrentDispatcher, | ||
ReactCurrentOwner | ||
}; | ||
const TaintRegistryObjects$1 = new WeakMap(); | ||
const TaintRegistryValues$1 = new Map(); // Byte lengths of all binary values we've ever seen. We don't both refcounting this. | ||
// We expect to see only a few lengths here such as the length of token. | ||
const TaintRegistryByteLengths$1 = new Set(); // When a value is finalized, it means that it has been removed from any global caches. | ||
// No future requests can get a handle on it but any ongoing requests can still have | ||
// a handle on it. It's still tainted until that happens. | ||
const TaintRegistryPendingRequests$1 = new Set(); | ||
const ReactServerSharedInternals = { | ||
ReactCurrentCache | ||
}; | ||
{ | ||
ReactServerSharedInternals.TaintRegistryObjects = TaintRegistryObjects$1; | ||
ReactServerSharedInternals.TaintRegistryValues = TaintRegistryValues$1; | ||
ReactServerSharedInternals.TaintRegistryByteLengths = TaintRegistryByteLengths$1; | ||
ReactServerSharedInternals.TaintRegistryPendingRequests = TaintRegistryPendingRequests$1; | ||
} | ||
// Do not require this module directly! Use normal `invariant` calls with | ||
@@ -249,9 +224,2 @@ // template literal strings. The messages will be replaced with error codes | ||
const RESERVED_PROPS = { | ||
key: true, | ||
ref: true, | ||
__self: true, | ||
__source: true | ||
}; | ||
function hasValidRef(config) { | ||
@@ -288,15 +256,32 @@ | ||
function ReactElement(type, key, ref, self, source, owner, props) { | ||
const element = { | ||
// This tag allows us to uniquely identify this as a React Element | ||
$$typeof: REACT_ELEMENT_TYPE, | ||
// Built-in properties that belong on the element | ||
type: type, | ||
key: key, | ||
ref: ref, | ||
props: props, | ||
// Record the component responsible for creating this element. | ||
_owner: owner | ||
}; | ||
function ReactElement(type, key, _ref, self, source, owner, props) { | ||
let ref; | ||
{ | ||
// When enableRefAsProp is on, ignore whatever was passed as the ref | ||
// argument and treat `props.ref` as the source of truth. The only thing we | ||
// use this for is `element.ref`, which will log a deprecation warning on | ||
// access. In the next release, we can remove `element.ref` as well as the | ||
// `ref` argument. | ||
const refProp = props.ref; // An undefined `element.ref` is coerced to `null` for | ||
// backwards compatibility. | ||
ref = refProp !== undefined ? refProp : null; | ||
} | ||
let element; | ||
{ | ||
// In prod, `ref` is a regular property and _owner doesn't exist. | ||
element = { | ||
// This tag allows us to uniquely identify this as a React Element | ||
$$typeof: REACT_ELEMENT_TYPE, | ||
// Built-in properties that belong on the element | ||
type, | ||
key, | ||
ref, | ||
props | ||
}; | ||
} | ||
return element; | ||
@@ -309,3 +294,4 @@ } | ||
function createElement$1(type, config, children) { | ||
function createElement(type, config, children) { | ||
let propName; // Reserved names are extracted | ||
@@ -316,9 +302,4 @@ | ||
let ref = null; | ||
let self = null; | ||
let source = null; | ||
if (config != null) { | ||
if (hasValidRef(config)) { | ||
ref = config.ref; | ||
} | ||
@@ -328,10 +309,15 @@ if (hasValidKey(config)) { | ||
key = '' + config.key; | ||
} | ||
} // Remaining properties are added to a new props object | ||
self = config.__self === undefined ? null : config.__self; | ||
source = config.__source === undefined ? null : config.__source; // Remaining properties are added to a new props object | ||
for (propName in config) { | ||
if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) { | ||
props[propName] = config[propName]; | ||
if (hasOwnProperty.call(config, propName) && // Skip over reserved prop names | ||
propName !== 'key' && (enableRefAsProp ) && // Even though we don't use these anymore in the runtime, we don't want | ||
// them to appear as props, so in createElement we filter them out. | ||
// We don't have to do this in the jsx() runtime because the jsx() | ||
// transform never passed these as props; it used separate arguments. | ||
propName !== '__self' && propName !== '__source') { | ||
{ | ||
props[propName] = config[propName]; | ||
} | ||
} | ||
@@ -368,7 +354,10 @@ } | ||
return ReactElement(type, key, ref, self, source, ReactCurrentOwner.current, props); | ||
const element = ReactElement(type, key, ref, undefined, undefined, ReactSharedInternals.owner, props); | ||
return element; | ||
} | ||
function cloneAndReplaceKey(oldElement, newKey) { | ||
const newElement = ReactElement(oldElement.type, newKey, oldElement.ref, oldElement._self, oldElement._source, oldElement._owner, oldElement.props); | ||
return newElement; | ||
return ReactElement(oldElement.type, newKey, // When enableRefAsProp is on, this argument is ignored. This check only | ||
// exists to avoid the `ref` access warning. | ||
null , undefined, undefined, undefined , oldElement.props); | ||
} | ||
@@ -380,3 +369,3 @@ /** | ||
function cloneElement$1(element, config, children) { | ||
function cloneElement(element, config, children) { | ||
if (element === null || element === undefined) { | ||
@@ -391,17 +380,9 @@ throw Error(formatProdErrorMessage(267, element)); | ||
let key = element.key; | ||
let ref = element.ref; // Self is preserved since the owner is preserved. | ||
let ref = null ; // Owner will be preserved, unless ref is overridden | ||
const self = element._self; // Source is preserved since cloneElement is unlikely to be targeted by a | ||
// transpiler, and the original source is probably a better indicator of the | ||
// true owner. | ||
let owner = undefined ; | ||
const source = element._source; // Owner will be preserved, unless ref is overridden | ||
let owner = element._owner; | ||
if (config != null) { | ||
if (hasValidRef(config)) { | ||
// Silently steal the ref from the parent. | ||
ref = config.ref; | ||
owner = ReactCurrentOwner.current; | ||
owner = ReactSharedInternals.owner; | ||
} | ||
@@ -414,16 +395,18 @@ | ||
let defaultProps; | ||
if (element.type && element.type.defaultProps) { | ||
defaultProps = element.type.defaultProps; | ||
} | ||
for (propName in config) { | ||
if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) { | ||
if (config[propName] === undefined && defaultProps !== undefined) { | ||
// Resolve default props | ||
props[propName] = defaultProps[propName]; | ||
} else { | ||
props[propName] = config[propName]; | ||
if (hasOwnProperty.call(config, propName) && // Skip over reserved prop names | ||
propName !== 'key' && (enableRefAsProp ) && // ...and maybe these, too, though we currently rely on them for | ||
// warnings and debug information in dev. Need to decide if we're OK | ||
// with dropping them. In the jsx() runtime it's not an issue because | ||
// the data gets passed as separate arguments instead of props, but | ||
// it would be nice to stop relying on them entirely so we can drop | ||
// them from the internal Fiber field. | ||
propName !== '__self' && propName !== '__source' && // Undefined `ref` is ignored by cloneElement. We treat it the same as | ||
// if the property were missing. This is mostly for | ||
// backwards compatibility. | ||
!(propName === 'ref' && config.ref === undefined)) { | ||
{ | ||
{ | ||
props[propName] = config[propName]; | ||
} | ||
} | ||
@@ -450,3 +433,5 @@ } | ||
return ReactElement(element.type, key, ref, self, source, owner, props); | ||
const clonedElement = ReactElement(element.type, key, ref, undefined, undefined, owner, props); | ||
return clonedElement; | ||
} | ||
@@ -461,2 +446,3 @@ /** | ||
function isValidElement(object) { | ||
@@ -466,5 +452,2 @@ return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE; | ||
const createElement = createElement$1; | ||
const cloneElement = cloneElement$1; | ||
const SEPARATOR = '.'; | ||
@@ -516,2 +499,68 @@ const SUBSEPARATOR = ':'; | ||
function noop$1() {} | ||
function resolveThenable(thenable) { | ||
switch (thenable.status) { | ||
case 'fulfilled': | ||
{ | ||
const fulfilledValue = thenable.value; | ||
return fulfilledValue; | ||
} | ||
case 'rejected': | ||
{ | ||
const rejectedError = thenable.reason; | ||
throw rejectedError; | ||
} | ||
default: | ||
{ | ||
if (typeof thenable.status === 'string') { | ||
// Only instrument the thenable if the status if not defined. If | ||
// it's defined, but an unknown value, assume it's been instrumented by | ||
// some custom userspace implementation. We treat it as "pending". | ||
// Attach a dummy listener, to ensure that any lazy initialization can | ||
// happen. Flight lazily parses JSON when the value is actually awaited. | ||
thenable.then(noop$1, noop$1); | ||
} else { | ||
// This is an uncached thenable that we haven't seen before. | ||
// TODO: Detect infinite ping loops caused by uncached promises. | ||
const pendingThenable = thenable; | ||
pendingThenable.status = 'pending'; | ||
pendingThenable.then(fulfilledValue => { | ||
if (thenable.status === 'pending') { | ||
const fulfilledThenable = thenable; | ||
fulfilledThenable.status = 'fulfilled'; | ||
fulfilledThenable.value = fulfilledValue; | ||
} | ||
}, error => { | ||
if (thenable.status === 'pending') { | ||
const rejectedThenable = thenable; | ||
rejectedThenable.status = 'rejected'; | ||
rejectedThenable.reason = error; | ||
} | ||
}); | ||
} // Check one more time in case the thenable resolved synchronously. | ||
switch (thenable.status) { | ||
case 'fulfilled': | ||
{ | ||
const fulfilledThenable = thenable; | ||
return fulfilledThenable.value; | ||
} | ||
case 'rejected': | ||
{ | ||
const rejectedThenable = thenable; | ||
const rejectedError = rejectedThenable.reason; | ||
throw rejectedError; | ||
} | ||
} | ||
} | ||
} | ||
throw thenable; | ||
} | ||
function mapIntoArray(children, array, escapedPrefix, nameSoFar, callback) { | ||
@@ -531,2 +580,3 @@ const type = typeof children; | ||
switch (type) { | ||
case 'bigint': | ||
case 'string': | ||
@@ -542,2 +592,8 @@ case 'number': | ||
invokeCallback = true; | ||
break; | ||
case REACT_LAZY_TYPE: | ||
const payload = children._payload; | ||
const init = children._init; | ||
return mapIntoArray(init(payload), array, escapedPrefix, nameSoFar, callback); | ||
} | ||
@@ -608,3 +664,7 @@ | ||
} else if (type === 'object') { | ||
// eslint-disable-next-line react-internal/safe-string-coercion | ||
if (typeof children.then === 'function') { | ||
return mapIntoArray(resolveThenable(children), array, escapedPrefix, nameSoFar, callback); | ||
} // eslint-disable-next-line react-internal/safe-string-coercion | ||
const childrenString = String(children); | ||
@@ -728,3 +788,3 @@ throw Error(formatProdErrorMessage(31, childrenString === '[object Object]' ? 'object with keys {' + Object.keys(children).join(', ') + '}' : childrenString)); | ||
function resolveDispatcher() { | ||
const dispatcher = ReactCurrentDispatcher.current; | ||
const dispatcher = ReactSharedInternals.H; | ||
// intentionally don't throw our own error because this is in a hot path. | ||
@@ -737,22 +797,4 @@ // Also helps ensure this is inlined. | ||
function getCacheSignal() { | ||
const dispatcher = ReactCurrentCache.current; | ||
if (!dispatcher) { | ||
// If we have no cache to associate with this call, then we don't know | ||
// its lifetime. We abort early since that's safer than letting it live | ||
// for ever. Unlike just caching which can be a functional noop outside | ||
// of React, these should generally always be associated with some React | ||
// render but we're not limiting quite as much as making it a Hook. | ||
// It's safer than erroring early at runtime. | ||
const controller = new AbortController(); | ||
const reason = Error(formatProdErrorMessage(455)); | ||
controller.abort(reason); | ||
return controller.signal; | ||
} | ||
return dispatcher.getCacheSignal(); | ||
} | ||
function getCacheForType(resourceType) { | ||
const dispatcher = ReactCurrentCache.current; | ||
const dispatcher = ReactSharedInternals.C; | ||
@@ -784,3 +826,10 @@ if (!dispatcher) { | ||
} | ||
function useActionState(action, initialState, permalink) { | ||
{ | ||
const dispatcher = resolveDispatcher(); // $FlowFixMe[not-a-function] This is unstable, thus optional | ||
return dispatcher.useActionState(action, initialState, permalink); | ||
} | ||
} | ||
function forwardRef(render) { | ||
@@ -893,3 +942,3 @@ | ||
return function () { | ||
const dispatcher = ReactCurrentCache.current; | ||
const dispatcher = ReactSharedInternals.C; | ||
@@ -976,12 +1025,34 @@ if (!dispatcher) { | ||
/** | ||
* Keeps track of the current batch's configuration such as how long an update | ||
* should suspend for if it needs to. | ||
*/ | ||
const ReactCurrentBatchConfig = { | ||
transition: null | ||
const reportGlobalError = typeof reportError === 'function' ? // In modern browsers, reportError will dispatch an error event, | ||
// emulating an uncaught JavaScript error. | ||
reportError : error => { | ||
if (typeof window === 'object' && typeof window.ErrorEvent === 'function') { | ||
// Browser Polyfill | ||
const message = typeof error === 'object' && error !== null && typeof error.message === 'string' ? // eslint-disable-next-line react-internal/safe-string-coercion | ||
String(error.message) : // eslint-disable-next-line react-internal/safe-string-coercion | ||
String(error); | ||
const event = new window.ErrorEvent('error', { | ||
bubbles: true, | ||
cancelable: true, | ||
message: message, | ||
error: error | ||
}); | ||
const shouldLog = window.dispatchEvent(event); | ||
if (!shouldLog) { | ||
return; | ||
} | ||
} else if (typeof process === 'object' && // $FlowFixMe[method-unbinding] | ||
typeof process.emit === 'function') { | ||
// Node Polyfill | ||
process.emit('uncaughtException', error); | ||
return; | ||
} // eslint-disable-next-line react-internal/no-production-logging | ||
console['error'](error); | ||
}; | ||
function startTransition(scope, options) { | ||
const prevTransition = ReactCurrentBatchConfig.transition; // Each renderer registers a callback to receive the return value of | ||
const prevTransition = ReactSharedInternals.T; // Each renderer registers a callback to receive the return value of | ||
// the scope function. This is used to implement async actions. | ||
@@ -993,4 +1064,4 @@ | ||
}; | ||
ReactCurrentBatchConfig.transition = transition; | ||
const currentTransition = ReactCurrentBatchConfig.transition; | ||
ReactSharedInternals.T = transition; | ||
const currentTransition = ReactSharedInternals.T; | ||
@@ -1003,8 +1074,8 @@ { | ||
callbacks.forEach(callback => callback(currentTransition, returnValue)); | ||
returnValue.then(noop, onError); | ||
returnValue.then(noop, reportGlobalError); | ||
} | ||
} catch (error) { | ||
onError(error); | ||
reportGlobalError(error); | ||
} finally { | ||
ReactCurrentBatchConfig.transition = prevTransition; | ||
ReactSharedInternals.T = prevTransition; | ||
} | ||
@@ -1014,14 +1085,4 @@ } | ||
function noop() {} // Use reportError, if it exists. Otherwise console.error. This is the same as | ||
// the default for onRecoverableError. | ||
function noop() {} | ||
const onError = typeof reportError === 'function' ? // In modern browsers, reportError will dispatch an error event, | ||
// emulating an uncaught JavaScript error. | ||
reportError : error => { | ||
// In older browsers and test environments, fallback to console.error. | ||
// eslint-disable-next-line react-internal/no-production-logging | ||
console['error'](error); | ||
}; | ||
function postpone(reason) { | ||
@@ -1034,3 +1095,3 @@ // eslint-disable-next-line react-internal/prod-error-codes | ||
var ReactVersion = '18.3.0-experimental-ad720f36e-20240206'; | ||
var ReactVersion = '19.0.0-experimental-adb717393-20240411'; | ||
@@ -1045,6 +1106,6 @@ const getPrototypeOf = Object.getPrototypeOf; | ||
const TaintRegistryObjects = ReactServerSharedInternals.TaintRegistryObjects, | ||
TaintRegistryValues = ReactServerSharedInternals.TaintRegistryValues, | ||
TaintRegistryByteLengths = ReactServerSharedInternals.TaintRegistryByteLengths, | ||
TaintRegistryPendingRequests = ReactServerSharedInternals.TaintRegistryPendingRequests; // This is the shared constructor of all typed arrays. | ||
const TaintRegistryObjects = ReactSharedInternals.TaintRegistryObjects, | ||
TaintRegistryValues = ReactSharedInternals.TaintRegistryValues, | ||
TaintRegistryByteLengths = ReactSharedInternals.TaintRegistryByteLengths, | ||
TaintRegistryPendingRequests = ReactSharedInternals.TaintRegistryPendingRequests; // This is the shared constructor of all typed arrays. | ||
@@ -1150,4 +1211,3 @@ const TypedArrayConstructor = getPrototypeOf(Uint32Array.prototype).constructor; | ||
exports.Suspense = REACT_SUSPENSE_TYPE; | ||
exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = ReactSharedInternals; | ||
exports.__SECRET_SERVER_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = ReactServerSharedInternals; | ||
exports.__SERVER_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE = ReactSharedInternals; | ||
exports.cache = cache; | ||
@@ -1167,5 +1227,5 @@ exports.cloneElement = cloneElement; | ||
exports.unstable_getCacheForType = getCacheForType; | ||
exports.unstable_getCacheSignal = getCacheSignal; | ||
exports.unstable_postpone = postpone; | ||
exports.use = use; | ||
exports.useActionState = useActionState; | ||
exports.useCallback = useCallback; | ||
@@ -1172,0 +1232,0 @@ exports.useDebugValue = useDebugValue; |
@@ -10,26 +10,26 @@ /* | ||
*/ | ||
'use strict';var m=Object.assign,n={current:null};function p(){return new Map} | ||
if("function"===typeof fetch){var q=fetch,r=function(a,b){var c=n.current;if(!c||b&&b.signal&&b.signal!==c.getCacheSignal())return q(a,b);if("string"!==typeof a||b){var d="string"===typeof a||a instanceof URL?new Request(a,b):a;if("GET"!==d.method&&"HEAD"!==d.method||d.keepalive)return q(a,b);var e=JSON.stringify([d.method,Array.from(d.headers.entries()),d.mode,d.redirect,d.credentials,d.referrer,d.referrerPolicy,d.integrity]);d=d.url}else e='["GET",[],null,"follow",null,null,null,null]',d=a;var f= | ||
c.getCacheForType(p);c=f.get(d);if(void 0===c)a=q(a,b),f.set(d,[e,a]);else{d=0;for(f=c.length;d<f;d+=2){var h=c[d+1];if(c[d]===e)return a=h,a.then(function(g){return g.clone()})}a=q(a,b);c.push(e,a)}return a.then(function(g){return g.clone()})};m(r,q);try{fetch=r}catch(a){try{globalThis.fetch=r}catch(b){console.warn("React was unable to patch the fetch() function in this environment. Suspensey APIs might not work correctly as a result.")}}} | ||
var t={current:null},u={current:null},v={ReactCurrentDispatcher:t,ReactCurrentOwner:u},w=new WeakMap,x=new Map,y=new Set,z=new Set,A={ReactCurrentCache:n,TaintRegistryObjects:w,TaintRegistryValues:x,TaintRegistryByteLengths:y,TaintRegistryPendingRequests:z}; | ||
function B(a){var b="https://react.dev/errors/"+a;if(1<arguments.length){b+="?args[]="+encodeURIComponent(arguments[1]);for(var c=2;c<arguments.length;c++)b+="&args[]="+encodeURIComponent(arguments[c])}return"Minified React error #"+a+"; visit "+b+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."} | ||
var C=Array.isArray,D=Symbol.for("react.element"),E=Symbol.for("react.portal"),F=Symbol.for("react.fragment"),G=Symbol.for("react.strict_mode"),H=Symbol.for("react.profiler"),I=Symbol.for("react.forward_ref"),J=Symbol.for("react.suspense"),K=Symbol.for("react.memo"),L=Symbol.for("react.lazy"),M=Symbol.for("react.debug_trace_mode"),aa=Symbol.for("react.postpone"),N=Symbol.iterator; | ||
function ba(a){if(null===a||"object"!==typeof a)return null;a=N&&a[N]||a["@@iterator"];return"function"===typeof a?a:null}var O=Object.prototype.hasOwnProperty,P={key:!0,ref:!0,__self:!0,__source:!0};function ca(a,b){return{$$typeof:D,type:a.type,key:b,ref:a.ref,props:a.props,_owner:a._owner}}function Q(a){return"object"===typeof a&&null!==a&&a.$$typeof===D}function escape(a){var b={"=":"=0",":":"=2"};return"$"+a.replace(/[=:]/g,function(c){return b[c]})}var R=/\/+/g; | ||
function S(a,b){return"object"===typeof a&&null!==a&&null!=a.key?escape(""+a.key):b.toString(36)} | ||
function T(a,b,c,d,e){var f=typeof a;if("undefined"===f||"boolean"===f)a=null;var h=!1;if(null===a)h=!0;else switch(f){case "string":case "number":h=!0;break;case "object":switch(a.$$typeof){case D:case E:h=!0}}if(h)return h=a,e=e(h),a=""===d?"."+S(h,0):d,C(e)?(c="",null!=a&&(c=a.replace(R,"$&/")+"/"),T(e,b,c,"",function(l){return l})):null!=e&&(Q(e)&&(e=ca(e,c+(!e.key||h&&h.key===e.key?"":(""+e.key).replace(R,"$&/")+"/")+a)),b.push(e)),1;h=0;d=""===d?".":d+":";if(C(a))for(var g=0;g<a.length;g++){f= | ||
a[g];var k=d+S(f,g);h+=T(f,b,c,k,e)}else if(k=ba(a),"function"===typeof k)for(a=k.call(a),g=0;!(f=a.next()).done;)f=f.value,k=d+S(f,g++),h+=T(f,b,c,k,e);else if("object"===f)throw b=String(a),Error(B(31,"[object Object]"===b?"object with keys {"+Object.keys(a).join(", ")+"}":b));return h}function U(a,b,c){if(null==a)return a;var d=[],e=0;T(a,d,"","",function(f){return b.call(c,f,e++)});return d} | ||
function da(a){if(-1===a._status){var b=a._result;b=b();b.then(function(c){if(0===a._status||-1===a._status)a._status=1,a._result=c},function(c){if(0===a._status||-1===a._status)a._status=2,a._result=c});-1===a._status&&(a._status=0,a._result=b)}if(1===a._status)return a._result.default;throw a._result;}function ea(){return new WeakMap}function V(){return{s:0,v:void 0,o:null,p:null}}var W={transition:null};function fa(){} | ||
var X="function"===typeof reportError?reportError:function(a){console.error(a)},ha=Object.getPrototypeOf,ia=A.TaintRegistryObjects,Y=A.TaintRegistryValues,ja=A.TaintRegistryByteLengths,ka=A.TaintRegistryPendingRequests,la=ha(Uint32Array.prototype).constructor;function ma(a){var b=Y.get(a);void 0!==b&&(ka.forEach(function(c){c.push(a);b.count++}),1===b.count?Y.delete(a):b.count--)}var Z="function"===typeof FinalizationRegistry?new FinalizationRegistry(ma):null; | ||
exports.Children={map:U,forEach:function(a,b,c){U(a,function(){b.apply(this,arguments)},c)},count:function(a){var b=0;U(a,function(){b++});return b},toArray:function(a){return U(a,function(b){return b})||[]},only:function(a){if(!Q(a))throw Error(B(143));return a}};exports.Fragment=F;exports.Profiler=H;exports.StrictMode=G;exports.Suspense=J;exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=v;exports.__SECRET_SERVER_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=A; | ||
exports.cache=function(a){return function(){var b=n.current;if(!b)return a.apply(null,arguments);var c=b.getCacheForType(ea);b=c.get(a);void 0===b&&(b=V(),c.set(a,b));c=0;for(var d=arguments.length;c<d;c++){var e=arguments[c];if("function"===typeof e||"object"===typeof e&&null!==e){var f=b.o;null===f&&(b.o=f=new WeakMap);b=f.get(e);void 0===b&&(b=V(),f.set(e,b))}else f=b.p,null===f&&(b.p=f=new Map),b=f.get(e),void 0===b&&(b=V(),f.set(e,b))}if(1===b.s)return b.v;if(2===b.s)throw b.v;try{var h=a.apply(null, | ||
arguments);c=b;c.s=1;return c.v=h}catch(g){throw h=b,h.s=2,h.v=g,g;}}}; | ||
exports.cloneElement=function(a,b,c){if(null===a||void 0===a)throw Error(B(267,a));var d=m({},a.props),e=a.key,f=a.ref,h=a._owner;if(null!=b){void 0!==b.ref&&(f=b.ref,h=u.current);void 0!==b.key&&(e=""+b.key);if(a.type&&a.type.defaultProps)var g=a.type.defaultProps;for(k in b)O.call(b,k)&&!P.hasOwnProperty(k)&&(d[k]=void 0===b[k]&&void 0!==g?g[k]:b[k])}var k=arguments.length-2;if(1===k)d.children=c;else if(1<k){g=Array(k);for(var l=0;l<k;l++)g[l]=arguments[l+2];d.children=g}return{$$typeof:D,type:a.type, | ||
key:e,ref:f,props:d,_owner:h}};exports.createElement=function(a,b,c){var d,e={},f=null,h=null;if(null!=b)for(d in void 0!==b.ref&&(h=b.ref),void 0!==b.key&&(f=""+b.key),b)O.call(b,d)&&!P.hasOwnProperty(d)&&(e[d]=b[d]);var g=arguments.length-2;if(1===g)e.children=c;else if(1<g){for(var k=Array(g),l=0;l<g;l++)k[l]=arguments[l+2];e.children=k}if(a&&a.defaultProps)for(d in g=a.defaultProps,g)void 0===e[d]&&(e[d]=g[d]);return{$$typeof:D,type:a,key:f,ref:h,props:e,_owner:u.current}};exports.createRef=function(){return{current:null}}; | ||
exports.experimental_taintObjectReference=function(a,b){a=""+(a||"A tainted value was attempted to be serialized to a Client Component or Action closure. This would leak it to the client.");if("string"===typeof b||"bigint"===typeof b)throw Error(B(496));if(null===b||"object"!==typeof b&&"function"!==typeof b)throw Error(B(497));ia.set(b,a)}; | ||
exports.experimental_taintUniqueValue=function(a,b,c){a=""+(a||"A tainted value was attempted to be serialized to a Client Component or Action closure. This would leak it to the client.");if(null===b||"object"!==typeof b&&"function"!==typeof b)throw Error(B(493));if("string"!==typeof c&&"bigint"!==typeof c)if(c instanceof la||c instanceof DataView)ja.add(c.byteLength),c=String.fromCharCode.apply(String,new Uint8Array(c.buffer,c.byteOffset,c.byteLength));else{a=null===c?"null":typeof c;if("object"=== | ||
a||"function"===a)throw Error(B(494));throw Error(B(495,a));}var d=Y.get(c);void 0===d?Y.set(c,{message:a,count:1}):d.count++;null!==Z&&Z.register(b,c)};exports.forwardRef=function(a){return{$$typeof:I,render:a}};exports.isValidElement=Q;exports.lazy=function(a){return{$$typeof:L,_payload:{_status:-1,_result:a},_init:da}};exports.memo=function(a,b){return{$$typeof:K,type:a,compare:void 0===b?null:b}}; | ||
exports.startTransition=function(a){var b=W.transition,c=new Set;W.transition={_callbacks:c};var d=W.transition;try{var e=a();"object"===typeof e&&null!==e&&"function"===typeof e.then&&(c.forEach(function(f){return f(d,e)}),e.then(fa,X))}catch(f){X(f)}finally{W.transition=b}};exports.unstable_DebugTracingMode=M;exports.unstable_SuspenseList=J;exports.unstable_getCacheForType=function(a){var b=n.current;return b?b.getCacheForType(a):a()}; | ||
exports.unstable_getCacheSignal=function(){var a=n.current;if(!a){a=new AbortController;var b=Error(B(455));a.abort(b);return a.signal}return a.getCacheSignal()};exports.unstable_postpone=function(a){a=Error(a);a.$$typeof=aa;throw a;};exports.use=function(a){return t.current.use(a)};exports.useCallback=function(a,b){return t.current.useCallback(a,b)};exports.useDebugValue=function(){};exports.useId=function(){return t.current.useId()};exports.useMemo=function(a,b){return t.current.useMemo(a,b)}; | ||
exports.version="18.3.0-experimental-ad720f36e-20240206"; | ||
'use strict';var h=Object.assign,m=new WeakMap,n=new Map,p=new Set,q=new Set,r={H:null,C:null,TaintRegistryObjects:m,TaintRegistryValues:n,TaintRegistryByteLengths:p,TaintRegistryPendingRequests:q};function t(){return new Map} | ||
if("function"===typeof fetch){var u=fetch,v=function(a,b){var c=r.C;if(!c||b&&b.signal)return u(a,b);if("string"!==typeof a||b){var d="string"===typeof a||a instanceof URL?new Request(a,b):a;if("GET"!==d.method&&"HEAD"!==d.method||d.keepalive)return u(a,b);var e=JSON.stringify([d.method,Array.from(d.headers.entries()),d.mode,d.redirect,d.credentials,d.referrer,d.referrerPolicy,d.integrity]);d=d.url}else e='["GET",[],null,"follow",null,null,null,null]',d=a;var g=c.getCacheForType(t);c=g.get(d);if(void 0=== | ||
c)a=u(a,b),g.set(d,[e,a]);else{d=0;for(g=c.length;d<g;d+=2){var f=c[d+1];if(c[d]===e)return a=f,a.then(function(l){return l.clone()})}a=u(a,b);c.push(e,a)}return a.then(function(l){return l.clone()})};h(v,u);try{fetch=v}catch(a){try{globalThis.fetch=v}catch(b){console.warn("React was unable to patch the fetch() function in this environment. Suspensey APIs might not work correctly as a result.")}}} | ||
function w(a){var b="https://react.dev/errors/"+a;if(1<arguments.length){b+="?args[]="+encodeURIComponent(arguments[1]);for(var c=2;c<arguments.length;c++)b+="&args[]="+encodeURIComponent(arguments[c])}return"Minified React error #"+a+"; visit "+b+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."} | ||
var x=Array.isArray,y=Symbol.for("react.element"),z=Symbol.for("react.portal"),A=Symbol.for("react.fragment"),B=Symbol.for("react.strict_mode"),C=Symbol.for("react.profiler"),D=Symbol.for("react.forward_ref"),E=Symbol.for("react.suspense"),F=Symbol.for("react.memo"),G=Symbol.for("react.lazy"),H=Symbol.for("react.debug_trace_mode"),I=Symbol.for("react.postpone"),J=Symbol.iterator; | ||
function K(a){if(null===a||"object"!==typeof a)return null;a=J&&a[J]||a["@@iterator"];return"function"===typeof a?a:null}var L=Object.prototype.hasOwnProperty;function M(a,b,c,d,e,g,f){c=f.ref;return{$$typeof:y,type:a,key:b,ref:void 0!==c?c:null,props:f}}function N(a,b){return M(a.type,b,null,void 0,void 0,void 0,a.props)}function O(a){return"object"===typeof a&&null!==a&&a.$$typeof===y}function escape(a){var b={"=":"=0",":":"=2"};return"$"+a.replace(/[=:]/g,function(c){return b[c]})}var P=/\/+/g; | ||
function Q(a,b){return"object"===typeof a&&null!==a&&null!=a.key?escape(""+a.key):b.toString(36)}function R(){} | ||
function S(a){switch(a.status){case "fulfilled":return a.value;case "rejected":throw a.reason;default:switch("string"===typeof a.status?a.then(R,R):(a.status="pending",a.then(function(b){"pending"===a.status&&(a.status="fulfilled",a.value=b)},function(b){"pending"===a.status&&(a.status="rejected",a.reason=b)})),a.status){case "fulfilled":return a.value;case "rejected":throw a.reason;}}throw a;} | ||
function T(a,b,c,d,e){var g=typeof a;if("undefined"===g||"boolean"===g)a=null;var f=!1;if(null===a)f=!0;else switch(g){case "bigint":case "string":case "number":f=!0;break;case "object":switch(a.$$typeof){case y:case z:f=!0;break;case G:return f=a._init,T(f(a._payload),b,c,d,e)}}if(f)return e=e(a),f=""===d?"."+Q(a,0):d,x(e)?(c="",null!=f&&(c=f.replace(P,"$&/")+"/"),T(e,b,c,"",function(Z){return Z})):null!=e&&(O(e)&&(e=N(e,c+(!e.key||a&&a.key===e.key?"":(""+e.key).replace(P,"$&/")+"/")+f)),b.push(e)), | ||
1;f=0;var l=""===d?".":d+":";if(x(a))for(var k=0;k<a.length;k++)d=a[k],g=l+Q(d,k),f+=T(d,b,c,g,e);else if(k=K(a),"function"===typeof k)for(a=k.call(a),k=0;!(d=a.next()).done;)d=d.value,g=l+Q(d,k++),f+=T(d,b,c,g,e);else if("object"===g){if("function"===typeof a.then)return T(S(a),b,c,d,e);b=String(a);throw Error(w(31,"[object Object]"===b?"object with keys {"+Object.keys(a).join(", ")+"}":b));}return f} | ||
function U(a,b,c){if(null==a)return a;var d=[],e=0;T(a,d,"","",function(g){return b.call(c,g,e++)});return d}function aa(a){if(-1===a._status){var b=a._result;b=b();b.then(function(c){if(0===a._status||-1===a._status)a._status=1,a._result=c},function(c){if(0===a._status||-1===a._status)a._status=2,a._result=c});-1===a._status&&(a._status=0,a._result=b)}if(1===a._status)return a._result.default;throw a._result;}function ba(){return new WeakMap}function V(){return{s:0,v:void 0,o:null,p:null}} | ||
var W="function"===typeof reportError?reportError:function(a){if("object"===typeof window&&"function"===typeof window.ErrorEvent){var b=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:"object"===typeof a&&null!==a&&"string"===typeof a.message?String(a.message):String(a),error:a});if(!window.dispatchEvent(b))return}else if("object"===typeof process&&"function"===typeof process.emit){process.emit("uncaughtException",a);return}console.error(a)};function ca(){} | ||
var da=Object.getPrototypeOf,ea=r.TaintRegistryObjects,X=r.TaintRegistryValues,fa=r.TaintRegistryByteLengths,ha=r.TaintRegistryPendingRequests,ia=da(Uint32Array.prototype).constructor;function ja(a){var b=X.get(a);void 0!==b&&(ha.forEach(function(c){c.push(a);b.count++}),1===b.count?X.delete(a):b.count--)}var Y="function"===typeof FinalizationRegistry?new FinalizationRegistry(ja):null; | ||
exports.Children={map:U,forEach:function(a,b,c){U(a,function(){b.apply(this,arguments)},c)},count:function(a){var b=0;U(a,function(){b++});return b},toArray:function(a){return U(a,function(b){return b})||[]},only:function(a){if(!O(a))throw Error(w(143));return a}};exports.Fragment=A;exports.Profiler=C;exports.StrictMode=B;exports.Suspense=E;exports.__SERVER_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=r; | ||
exports.cache=function(a){return function(){var b=r.C;if(!b)return a.apply(null,arguments);var c=b.getCacheForType(ba);b=c.get(a);void 0===b&&(b=V(),c.set(a,b));c=0;for(var d=arguments.length;c<d;c++){var e=arguments[c];if("function"===typeof e||"object"===typeof e&&null!==e){var g=b.o;null===g&&(b.o=g=new WeakMap);b=g.get(e);void 0===b&&(b=V(),g.set(e,b))}else g=b.p,null===g&&(b.p=g=new Map),b=g.get(e),void 0===b&&(b=V(),g.set(e,b))}if(1===b.s)return b.v;if(2===b.s)throw b.v;try{var f=a.apply(null, | ||
arguments);c=b;c.s=1;return c.v=f}catch(l){throw f=b,f.s=2,f.v=l,l;}}}; | ||
exports.cloneElement=function(a,b,c){if(null===a||void 0===a)throw Error(w(267,a));var d=h({},a.props),e=a.key,g=void 0;if(null!=b)for(f in void 0!==b.ref&&(g=r.owner),void 0!==b.key&&(e=""+b.key),b)!L.call(b,f)||"key"===f||"__self"===f||"__source"===f||"ref"===f&&void 0===b.ref||(d[f]=b[f]);var f=arguments.length-2;if(1===f)d.children=c;else if(1<f){for(var l=Array(f),k=0;k<f;k++)l[k]=arguments[k+2];d.children=l}return M(a.type,e,null,void 0,void 0,g,d)}; | ||
exports.createElement=function(a,b,c){var d,e={},g=null;if(null!=b)for(d in void 0!==b.key&&(g=""+b.key),b)L.call(b,d)&&"key"!==d&&"__self"!==d&&"__source"!==d&&(e[d]=b[d]);var f=arguments.length-2;if(1===f)e.children=c;else if(1<f){for(var l=Array(f),k=0;k<f;k++)l[k]=arguments[k+2];e.children=l}if(a&&a.defaultProps)for(d in f=a.defaultProps,f)void 0===e[d]&&(e[d]=f[d]);return M(a,g,null,void 0,void 0,r.owner,e)};exports.createRef=function(){return{current:null}}; | ||
exports.experimental_taintObjectReference=function(a,b){a=""+(a||"A tainted value was attempted to be serialized to a Client Component or Action closure. This would leak it to the client.");if("string"===typeof b||"bigint"===typeof b)throw Error(w(496));if(null===b||"object"!==typeof b&&"function"!==typeof b)throw Error(w(497));ea.set(b,a)}; | ||
exports.experimental_taintUniqueValue=function(a,b,c){a=""+(a||"A tainted value was attempted to be serialized to a Client Component or Action closure. This would leak it to the client.");if(null===b||"object"!==typeof b&&"function"!==typeof b)throw Error(w(493));if("string"!==typeof c&&"bigint"!==typeof c)if(c instanceof ia||c instanceof DataView)fa.add(c.byteLength),c=String.fromCharCode.apply(String,new Uint8Array(c.buffer,c.byteOffset,c.byteLength));else{a=null===c?"null":typeof c;if("object"=== | ||
a||"function"===a)throw Error(w(494));throw Error(w(495,a));}var d=X.get(c);void 0===d?X.set(c,{message:a,count:1}):d.count++;null!==Y&&Y.register(b,c)};exports.forwardRef=function(a){return{$$typeof:D,render:a}};exports.isValidElement=O;exports.lazy=function(a){return{$$typeof:G,_payload:{_status:-1,_result:a},_init:aa}};exports.memo=function(a,b){return{$$typeof:F,type:a,compare:void 0===b?null:b}}; | ||
exports.startTransition=function(a){var b=r.T,c=new Set;r.T={_callbacks:c};var d=r.T;try{var e=a();"object"===typeof e&&null!==e&&"function"===typeof e.then&&(c.forEach(function(g){return g(d,e)}),e.then(ca,W))}catch(g){W(g)}finally{r.T=b}};exports.unstable_DebugTracingMode=H;exports.unstable_SuspenseList=E;exports.unstable_getCacheForType=function(a){var b=r.C;return b?b.getCacheForType(a):a()};exports.unstable_postpone=function(a){a=Error(a);a.$$typeof=I;throw a;};exports.use=function(a){return r.H.use(a)}; | ||
exports.useActionState=function(a,b,c){return r.H.useActionState(a,b,c)};exports.useCallback=function(a,b){return r.H.useCallback(a,b)};exports.useDebugValue=function(){};exports.useId=function(){return r.H.useId()};exports.useMemo=function(a,b){return r.H.useMemo(a,b)};exports.version="19.0.0-experimental-adb717393-20240411"; | ||
//# sourceMappingURL=react.react-server.production.min.js.map |
@@ -7,4 +7,4 @@ { | ||
], | ||
"version": "0.0.0-experimental-ad720f36e-20240206", | ||
"homepage": "https://reactjs.org/", | ||
"version": "0.0.0-experimental-adb717393-20240411", | ||
"homepage": "https://react.dev/", | ||
"bugs": "https://github.com/facebook/react/issues", | ||
@@ -19,2 +19,3 @@ "license": "MIT", | ||
"jsx-runtime.js", | ||
"jsx-runtime.react-server.js", | ||
"jsx-dev-runtime.js", | ||
@@ -43,11 +44,3 @@ "react.react-server.js" | ||
"node": ">=0.10.0" | ||
}, | ||
"dependencies": { | ||
"loose-envify": "^1.1.0" | ||
}, | ||
"browserify": { | ||
"transform": [ | ||
"loose-envify" | ||
] | ||
} | ||
} |
@@ -11,26 +11,25 @@ /** | ||
'use strict';(function(){(function(e,z){"object"===typeof exports&&"undefined"!==typeof module?z(exports):"function"===typeof define&&define.amd?define(["exports"],z):(e="undefined"!==typeof globalThis?globalThis:e||self,z(e.React={}))})(this,function(e){function z(a){if(null===a||"object"!==typeof a)return null;a=X&&a[X]||a["@@iterator"];return"function"===typeof a?a:null}function y(a,b,c){this.props=a;this.context=b;this.refs=Y;this.updater=c||Z}function aa(){}function N(a,b,c){this.props=a;this.context= | ||
b;this.refs=Y;this.updater=c||Z}function ba(a,b,c){var f,d={},g=null,h=null;if(null!=b)for(f in void 0!==b.ref&&(h=b.ref),void 0!==b.key&&(g=""+b.key),b)ca.call(b,f)&&!da.hasOwnProperty(f)&&(d[f]=b[f]);var l=arguments.length-2;if(1===l)d.children=c;else if(1<l){for(var k=Array(l),n=0;n<l;n++)k[n]=arguments[n+2];d.children=k}if(a&&a.defaultProps)for(f in l=a.defaultProps,l)void 0===d[f]&&(d[f]=l[f]);return{$$typeof:A,type:a,key:g,ref:h,props:d,_owner:O.current}}function ra(a,b){return{$$typeof:A,type:a.type, | ||
key:b,ref:a.ref,props:a.props,_owner:a._owner}}function P(a){return"object"===typeof a&&null!==a&&a.$$typeof===A}function sa(a){var b={"=":"=0",":":"=2"};return"$"+a.replace(/[=:]/g,function(c){return b[c]})}function Q(a,b){return"object"===typeof a&&null!==a&&null!=a.key?sa(""+a.key):b.toString(36)}function E(a,b,c,f,d){var g=typeof a;if("undefined"===g||"boolean"===g)a=null;var h=!1;if(null===a)h=!0;else switch(g){case "string":case "number":h=!0;break;case "object":switch(a.$$typeof){case A:case ta:h= | ||
!0}}if(h)return h=a,d=d(h),a=""===f?"."+Q(h,0):f,ea(d)?(c="",null!=a&&(c=a.replace(fa,"$&/")+"/"),E(d,b,c,"",function(n){return n})):null!=d&&(P(d)&&(d=ra(d,c+(!d.key||h&&h.key===d.key?"":(""+d.key).replace(fa,"$&/")+"/")+a)),b.push(d)),1;h=0;f=""===f?".":f+":";if(ea(a))for(var l=0;l<a.length;l++){g=a[l];var k=f+Q(g,l);h+=E(g,b,c,k,d)}else if(k=z(a),"function"===typeof k)for(a=k.call(a),l=0;!(g=a.next()).done;)g=g.value,k=f+Q(g,l++),h+=E(g,b,c,k,d);else if("object"===g)throw b=String(a),Error("Objects are not valid as a React child (found: "+ | ||
("[object Object]"===b?"object with keys {"+Object.keys(a).join(", ")+"}":b)+"). If you meant to render a collection of children, use an array instead.");return h}function F(a,b,c){if(null==a)return a;var f=[],d=0;E(a,f,"","",function(g){return b.call(c,g,d++)});return f}function ua(a){if(-1===a._status){var b=a._result;b=b();b.then(function(c){if(0===a._status||-1===a._status)a._status=1,a._result=c},function(c){if(0===a._status||-1===a._status)a._status=2,a._result=c});-1===a._status&&(a._status= | ||
0,a._result=b)}if(1===a._status)return a._result.default;throw a._result;}function va(){return new WeakMap}function R(){return{s:0,v:void 0,o:null,p:null}}function wa(a){return function(){var b=G.current;if(!b)return a.apply(null,arguments);var c=b.getCacheForType(va);b=c.get(a);void 0===b&&(b=R(),c.set(a,b));c=0;for(var f=arguments.length;c<f;c++){var d=arguments[c];if("function"===typeof d||"object"===typeof d&&null!==d){var g=b.o;null===g&&(b.o=g=new WeakMap);b=g.get(d);void 0===b&&(b=R(),g.set(d, | ||
b))}else g=b.p,null===g&&(b.p=g=new Map),b=g.get(d),void 0===b&&(b=R(),g.set(d,b))}if(1===b.s)return b.v;if(2===b.s)throw b.v;try{var h=a.apply(null,arguments);c=b;c.s=1;return c.v=h}catch(l){throw h=b,h.s=2,h.v=l,l;}}}function ha(a,b){return m.current.useOptimistic(a,b)}function S(a,b){var c=a.length;a.push(b);a:for(;0<c;){var f=c-1>>>1,d=a[f];if(0<H(d,b))a[f]=b,a[c]=d,c=f;else break a}}function r(a){return 0===a.length?null:a[0]}function I(a){if(0===a.length)return null;var b=a[0],c=a.pop();if(c!== | ||
b){a[0]=c;a:for(var f=0,d=a.length,g=d>>>1;f<g;){var h=2*(f+1)-1,l=a[h],k=h+1,n=a[k];if(0>H(l,c))k<d&&0>H(n,l)?(a[f]=n,a[k]=c,f=k):(a[f]=l,a[h]=c,f=h);else if(k<d&&0>H(n,c))a[f]=n,a[k]=c,f=k;else break a}}return b}function H(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}function J(a){for(var b=r(u);null!==b;){if(null===b.callback)I(u);else if(b.startTime<=a)I(u),b.sortIndex=b.expirationTime,S(t,b);else break;b=r(u)}}function T(a){B=!1;J(a);if(!w)if(null!==r(t))w=!0,U();else{var b=r(u); | ||
null!==b&&V(T,b.startTime-a)}}function ia(){return x()-ja<ka?!1:!0}function U(){K||(K=!0,L())}function V(a,b){C=la(function(){a(x())},b)}function xa(){}var A=Symbol.for("react.element"),ta=Symbol.for("react.portal"),ya=Symbol.for("react.fragment"),za=Symbol.for("react.strict_mode"),Aa=Symbol.for("react.profiler"),Ba=Symbol.for("react.provider"),Ca=Symbol.for("react.context"),Da=Symbol.for("react.forward_ref"),Ea=Symbol.for("react.suspense"),Fa=Symbol.for("react.suspense_list"),Ga=Symbol.for("react.memo"), | ||
Ha=Symbol.for("react.lazy"),Ia=Symbol.for("react.debug_trace_mode"),Ja=Symbol.for("react.offscreen"),Ka=Symbol.for("react.cache"),La=Symbol.for("react.postpone"),X=Symbol.iterator,Z={isMounted:function(a){return!1},enqueueForceUpdate:function(a,b,c){},enqueueReplaceState:function(a,b,c,f){},enqueueSetState:function(a,b,c,f){}},ma=Object.assign,Y={};y.prototype.isReactComponent={};y.prototype.setState=function(a,b){if("object"!==typeof a&&"function"!==typeof a&&null!=a)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables."); | ||
this.updater.enqueueSetState(this,a,b,"setState")};y.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,"forceUpdate")};aa.prototype=y.prototype;var v=N.prototype=new aa;v.constructor=N;ma(v,y.prototype);v.isPureReactComponent=!0;var ea=Array.isArray,ca=Object.prototype.hasOwnProperty,O={current:null},da={key:!0,ref:!0,__self:!0,__source:!0},m={current:null},G={current:null},D={transition:null},fa=/\/+/g;if("object"===typeof performance&&"function"===typeof performance.now){var Ma= | ||
performance;var x=function(){return Ma.now()}}else{var na=Date,Na=na.now();x=function(){return na.now()-Na}}var t=[],u=[],Oa=1,q=null,p=3,M=!1,w=!1,B=!1,la="function"===typeof setTimeout?setTimeout:null,oa="function"===typeof clearTimeout?clearTimeout:null,pa="undefined"!==typeof setImmediate?setImmediate:null;"undefined"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending?navigator.scheduling.isInputPending.bind(navigator.scheduling):null;var K=!1,C=-1, | ||
ka=5,ja=-1,W=function(){if(K){var a=x();ja=a;var b=!0;try{a:{w=!1;B&&(B=!1,oa(C),C=-1);M=!0;var c=p;try{b:{J(a);for(q=r(t);null!==q&&!(q.expirationTime>a&&ia());){var f=q.callback;if("function"===typeof f){q.callback=null;p=q.priorityLevel;var d=f(q.expirationTime<=a);a=x();if("function"===typeof d){q.callback=d;J(a);b=!0;break b}q===r(t)&&I(t);J(a)}else I(t);q=r(t)}if(null!==q)b=!0;else{var g=r(u);null!==g&&V(T,g.startTime-a);b=!1}}break a}finally{q=null,p=c,M=!1}b=void 0}}finally{b?L():K=!1}}}; | ||
if("function"===typeof pa)var L=function(){pa(W)};else if("undefined"!==typeof MessageChannel){v=new MessageChannel;var Pa=v.port2;v.port1.onmessage=W;L=function(){Pa.postMessage(null)}}else L=function(){la(W,0)};v={ReactCurrentDispatcher:m,ReactCurrentCache:G,ReactCurrentOwner:O,ReactCurrentBatchConfig:D,Scheduler:{__proto__:null,unstable_IdlePriority:5,unstable_ImmediatePriority:1,unstable_LowPriority:4,unstable_NormalPriority:3,unstable_Profiling:null,unstable_UserBlockingPriority:2,unstable_cancelCallback:function(a){a.callback= | ||
null},unstable_continueExecution:function(){w||M||(w=!0,U())},unstable_forceFrameRate:function(a){0>a||125<a?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):ka=0<a?Math.floor(1E3/a):5},unstable_getCurrentPriorityLevel:function(){return p},unstable_getFirstCallbackNode:function(){return r(t)},unstable_next:function(a){switch(p){case 1:case 2:case 3:var b=3;break;default:b=p}var c=p;p=b;try{return a()}finally{p=c}},get unstable_now(){return x}, | ||
unstable_pauseExecution:function(){},unstable_requestPaint:function(){},unstable_runWithPriority:function(a,b){switch(a){case 1:case 2:case 3:case 4:case 5:break;default:a=3}var c=p;p=a;try{return b()}finally{p=c}},unstable_scheduleCallback:function(a,b,c){var f=x();"object"===typeof c&&null!==c?(c=c.delay,c="number"===typeof c&&0<c?f+c:f):c=f;switch(a){case 1:var d=-1;break;case 2:d=250;break;case 5:d=1073741823;break;case 4:d=1E4;break;default:d=5E3}d=c+d;a={id:Oa++,callback:b,priorityLevel:a,startTime:c, | ||
expirationTime:d,sortIndex:-1};c>f?(a.sortIndex=c,S(u,a),null===r(t)&&a===r(u)&&(B?(oa(C),C=-1):B=!0,V(T,c-f))):(a.sortIndex=d,S(t,a),w||M||(w=!0,U()));return a},unstable_shouldYield:ia,unstable_wrapCallback:function(a){var b=p;return function(){var c=p;p=b;try{return a.apply(this,arguments)}finally{p=c}}}}};var qa="function"===typeof reportError?reportError:function(a){console.error(a)};e.Children={map:F,forEach:function(a,b,c){F(a,function(){b.apply(this,arguments)},c)},count:function(a){var b= | ||
0;F(a,function(){b++});return b},toArray:function(a){return F(a,function(b){return b})||[]},only:function(a){if(!P(a))throw Error("React.Children.only expected to receive a single React element child.");return a}};e.Component=y;e.Fragment=ya;e.Profiler=Aa;e.PureComponent=N;e.StrictMode=za;e.Suspense=Ea;e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=v;e.act=function(a){throw Error("act(...) is not supported in production builds of React.");};e.cache=function(a){return wa(a)};e.cloneElement=function(a, | ||
b,c){if(null===a||void 0===a)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+a+".");var f=ma({},a.props),d=a.key,g=a.ref,h=a._owner;if(null!=b){void 0!==b.ref&&(g=b.ref,h=O.current);void 0!==b.key&&(d=""+b.key);if(a.type&&a.type.defaultProps)var l=a.type.defaultProps;for(k in b)ca.call(b,k)&&!da.hasOwnProperty(k)&&(f[k]=void 0===b[k]&&void 0!==l?l[k]:b[k])}var k=arguments.length-2;if(1===k)f.children=c;else if(1<k){l=Array(k);for(var n=0;n<k;n++)l[n]=arguments[n+ | ||
2];f.children=l}return{$$typeof:A,type:a.type,key:d,ref:g,props:f,_owner:h}};e.createContext=function(a){a={$$typeof:Ca,_currentValue:a,_currentValue2:a,_threadCount:0,Provider:null,Consumer:null};a.Provider={$$typeof:Ba,_context:a};return a.Consumer=a};e.createElement=ba;e.createFactory=function(a){var b=ba.bind(null,a);b.type=a;return b};e.createRef=function(){return{current:null}};e.experimental_useEffectEvent=function(a){return m.current.useEffectEvent(a)};e.experimental_useOptimistic=function(a, | ||
b){return ha(a,b)};e.forwardRef=function(a){return{$$typeof:Da,render:a}};e.isValidElement=P;e.lazy=function(a){return{$$typeof:Ha,_payload:{_status:-1,_result:a},_init:ua}};e.memo=function(a,b){return{$$typeof:Ga,type:a,compare:void 0===b?null:b}};e.startTransition=function(a,b){b=D.transition;var c=new Set;D.transition={_callbacks:c};var f=D.transition;try{var d=a();"object"===typeof d&&null!==d&&"function"===typeof d.then&&(c.forEach(function(g){return g(f,d)}),d.then(xa,qa))}catch(g){qa(g)}finally{D.transition= | ||
b}};e.unstable_Activity=Ja;e.unstable_Cache=Ka;e.unstable_DebugTracingMode=Ia;e.unstable_SuspenseList=Fa;e.unstable_getCacheForType=function(a){var b=G.current;return b?b.getCacheForType(a):a()};e.unstable_getCacheSignal=function(){var a=G.current;return a?a.getCacheSignal():(a=new AbortController,a.abort(Error("This CacheSignal was requested outside React which means that it is immediately aborted.")),a.signal)};e.unstable_postpone=function(a){a=Error(a);a.$$typeof=La;throw a;};e.unstable_useCacheRefresh= | ||
function(){return m.current.useCacheRefresh()};e.unstable_useMemoCache=function(a){return m.current.useMemoCache(a)};e.use=function(a){return m.current.use(a)};e.useCallback=function(a,b){return m.current.useCallback(a,b)};e.useContext=function(a){return m.current.useContext(a)};e.useDebugValue=function(a,b){};e.useDeferredValue=function(a,b){return m.current.useDeferredValue(a,b)};e.useEffect=function(a,b){return m.current.useEffect(a,b)};e.useId=function(){return m.current.useId()};e.useImperativeHandle= | ||
function(a,b,c){return m.current.useImperativeHandle(a,b,c)};e.useInsertionEffect=function(a,b){return m.current.useInsertionEffect(a,b)};e.useLayoutEffect=function(a,b){return m.current.useLayoutEffect(a,b)};e.useMemo=function(a,b){return m.current.useMemo(a,b)};e.useOptimistic=ha;e.useReducer=function(a,b,c){return m.current.useReducer(a,b,c)};e.useRef=function(a){return m.current.useRef(a)};e.useState=function(a){return m.current.useState(a)};e.useSyncExternalStore=function(a,b,c){return m.current.useSyncExternalStore(a, | ||
b,c)};e.useTransition=function(){return m.current.useTransition()};e.version="18.3.0-experimental-ad720f36e-20240206"})})(); | ||
'use strict';(function(){(function(f,A){"object"===typeof exports&&"undefined"!==typeof module?A(exports):"function"===typeof define&&define.amd?define(["exports"],A):(f="undefined"!==typeof globalThis?globalThis:f||self,A(f.React={}))})(this,function(f){function A(a){if(null===a||"object"!==typeof a)return null;a=U&&a[U]||a["@@iterator"];return"function"===typeof a?a:null}function x(a,b,c){this.props=a;this.context=b;this.refs=V;this.updater=c||W}function X(){}function K(a,b,c){this.props=a;this.context= | ||
b;this.refs=V;this.updater=c||W}function L(a,b,c,d,e,k,g){c=g.ref;return{$$typeof:M,type:a,key:b,ref:void 0!==c?c:null,props:g}}function oa(a,b){return L(a.type,b,null,void 0,void 0,void 0,a.props)}function N(a){return"object"===typeof a&&null!==a&&a.$$typeof===M}function pa(a){var b={"=":"=0",":":"=2"};return"$"+a.replace(/[=:]/g,function(c){return b[c]})}function O(a,b){return"object"===typeof a&&null!==a&&null!=a.key?pa(""+a.key):b.toString(36)}function Y(){}function qa(a){switch(a.status){case "fulfilled":return a.value; | ||
case "rejected":throw a.reason;default:switch("string"===typeof a.status?a.then(Y,Y):(a.status="pending",a.then(function(b){"pending"===a.status&&(a.status="fulfilled",a.value=b)},function(b){"pending"===a.status&&(a.status="rejected",a.reason=b)})),a.status){case "fulfilled":return a.value;case "rejected":throw a.reason;}}throw a;}function y(a,b,c,d,e){var k=typeof a;if("undefined"===k||"boolean"===k)a=null;var g=!1;if(null===a)g=!0;else switch(k){case "bigint":case "string":case "number":g=!0;break; | ||
case "object":switch(a.$$typeof){case M:case ra:g=!0;break;case Z:return g=a._init,y(g(a._payload),b,c,d,e)}}if(g)return e=e(a),g=""===d?"."+O(a,0):d,aa(e)?(c="",null!=g&&(c=g.replace(ba,"$&/")+"/"),y(e,b,c,"",function(z){return z})):null!=e&&(N(e)&&(e=oa(e,c+(!e.key||a&&a.key===e.key?"":(""+e.key).replace(ba,"$&/")+"/")+g)),b.push(e)),1;g=0;var n=""===d?".":d+":";if(aa(a))for(var h=0;h<a.length;h++)d=a[h],k=n+O(d,h),g+=y(d,b,c,k,e);else if(h=A(a),"function"===typeof h)for(a=h.call(a),h=0;!(d=a.next()).done;)d= | ||
d.value,k=n+O(d,h++),g+=y(d,b,c,k,e);else if("object"===k){if("function"===typeof a.then)return y(qa(a),b,c,d,e);b=String(a);throw Error("Objects are not valid as a React child (found: "+("[object Object]"===b?"object with keys {"+Object.keys(a).join(", ")+"}":b)+"). If you meant to render a collection of children, use an array instead.");}return g}function D(a,b,c){if(null==a)return a;var d=[],e=0;y(a,d,"","",function(k){return b.call(c,k,e++)});return d}function sa(a){if(-1===a._status){var b=a._result; | ||
b=b();b.then(function(c){if(0===a._status||-1===a._status)a._status=1,a._result=c},function(c){if(0===a._status||-1===a._status)a._status=2,a._result=c});-1===a._status&&(a._status=0,a._result=b)}if(1===a._status)return a._result.default;throw a._result;}function ca(a,b){return l.H.useOptimistic(a,b)}function P(a,b){var c=a.length;a.push(b);a:for(;0<c;){var d=c-1>>>1,e=a[d];if(0<E(e,b))a[d]=b,a[c]=e,c=d;else break a}}function q(a){return 0===a.length?null:a[0]}function F(a){if(0===a.length)return null; | ||
var b=a[0],c=a.pop();if(c!==b){a[0]=c;a:for(var d=0,e=a.length,k=e>>>1;d<k;){var g=2*(d+1)-1,n=a[g],h=g+1,z=a[h];if(0>E(n,c))h<e&&0>E(z,n)?(a[d]=z,a[h]=c,d=h):(a[d]=n,a[g]=c,d=g);else if(h<e&&0>E(z,c))a[d]=z,a[h]=c,d=h;else break a}}return b}function E(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}function G(a){for(var b=q(t);null!==b;){if(null===b.callback)F(t);else if(b.startTime<=a)F(t),b.sortIndex=b.expirationTime,P(r,b);else break;b=q(t)}}function Q(a){B=!1;G(a);if(!v)if(null!== | ||
q(r))v=!0,R();else{var b=q(t);null!==b&&S(Q,b.startTime-a)}}function da(){return w()-ea<fa?!1:!0}function R(){H||(H=!0,I())}function S(a,b){C=ha(function(){a(w())},b)}function ta(){}var M=Symbol.for("react.element"),ra=Symbol.for("react.portal"),ua=Symbol.for("react.fragment"),va=Symbol.for("react.strict_mode"),wa=Symbol.for("react.profiler"),xa=Symbol.for("react.consumer"),ya=Symbol.for("react.context"),za=Symbol.for("react.forward_ref"),Aa=Symbol.for("react.suspense"),Ba=Symbol.for("react.suspense_list"), | ||
Ca=Symbol.for("react.memo"),Z=Symbol.for("react.lazy"),Da=Symbol.for("react.debug_trace_mode"),Ea=Symbol.for("react.offscreen"),Fa=Symbol.for("react.postpone"),U=Symbol.iterator,W={isMounted:function(a){return!1},enqueueForceUpdate:function(a,b,c){},enqueueReplaceState:function(a,b,c,d){},enqueueSetState:function(a,b,c,d){}},ia=Object.assign,V={};x.prototype.isReactComponent={};x.prototype.setState=function(a,b){if("object"!==typeof a&&"function"!==typeof a&&null!=a)throw Error("takes an object of state variables to update or a function which returns an object of state variables."); | ||
this.updater.enqueueSetState(this,a,b,"setState")};x.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,"forceUpdate")};X.prototype=x.prototype;var u=K.prototype=new X;u.constructor=K;ia(u,x.prototype);u.isPureReactComponent=!0;var aa=Array.isArray,l={H:null,C:null,T:null},ja=Object.prototype.hasOwnProperty,ba=/\/+/g;if("object"===typeof performance&&"function"===typeof performance.now){var Ga=performance;var w=function(){return Ga.now()}}else{var ka=Date,Ha=ka.now();w=function(){return ka.now()- | ||
Ha}}var r=[],t=[],Ia=1,p=null,m=3,J=!1,v=!1,B=!1,ha="function"===typeof setTimeout?setTimeout:null,la="function"===typeof clearTimeout?clearTimeout:null,ma="undefined"!==typeof setImmediate?setImmediate:null,H=!1,C=-1,fa=5,ea=-1,T=function(){if(H){var a=w();ea=a;var b=!0;try{a:{v=!1;B&&(B=!1,la(C),C=-1);J=!0;var c=m;try{b:{G(a);for(p=q(r);null!==p&&!(p.expirationTime>a&&da());){var d=p.callback;if("function"===typeof d){p.callback=null;m=p.priorityLevel;var e=d(p.expirationTime<=a);a=w();if("function"=== | ||
typeof e){p.callback=e;G(a);b=!0;break b}p===q(r)&&F(r);G(a)}else F(r);p=q(r)}if(null!==p)b=!0;else{var k=q(t);null!==k&&S(Q,k.startTime-a);b=!1}}break a}finally{p=null,m=c,J=!1}b=void 0}}finally{b?I():H=!1}}};if("function"===typeof ma)var I=function(){ma(T)};else if("undefined"!==typeof MessageChannel){u=new MessageChannel;var Ja=u.port2;u.port1.onmessage=T;I=function(){Ja.postMessage(null)}}else I=function(){ha(T,0)};u={H:null,C:null,T:null,Scheduler:{__proto__:null,unstable_IdlePriority:5,unstable_ImmediatePriority:1, | ||
unstable_LowPriority:4,unstable_NormalPriority:3,unstable_Profiling:null,unstable_UserBlockingPriority:2,unstable_cancelCallback:function(a){a.callback=null},unstable_continueExecution:function(){v||J||(v=!0,R())},unstable_forceFrameRate:function(a){0>a||125<a?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):fa=0<a?Math.floor(1E3/a):5},unstable_getCurrentPriorityLevel:function(){return m},unstable_getFirstCallbackNode:function(){return q(r)}, | ||
unstable_next:function(a){switch(m){case 1:case 2:case 3:var b=3;break;default:b=m}var c=m;m=b;try{return a()}finally{m=c}},get unstable_now(){return w},unstable_pauseExecution:function(){},unstable_requestPaint:function(){},unstable_runWithPriority:function(a,b){switch(a){case 1:case 2:case 3:case 4:case 5:break;default:a=3}var c=m;m=a;try{return b()}finally{m=c}},unstable_scheduleCallback:function(a,b,c){var d=w();"object"===typeof c&&null!==c?(c=c.delay,c="number"===typeof c&&0<c?d+c:d):c=d;switch(a){case 1:var e= | ||
-1;break;case 2:e=250;break;case 5:e=1073741823;break;case 4:e=1E4;break;default:e=5E3}e=c+e;a={id:Ia++,callback:b,priorityLevel:a,startTime:c,expirationTime:e,sortIndex:-1};c>d?(a.sortIndex=c,P(t,a),null===q(r)&&a===q(t)&&(B?(la(C),C=-1):B=!0,S(Q,c-d))):(a.sortIndex=e,P(r,a),v||J||(v=!0,R()));return a},unstable_shouldYield:da,unstable_wrapCallback:function(a){var b=m;return function(){var c=m;m=b;try{return a.apply(this,arguments)}finally{m=c}}}}};var na="function"===typeof reportError?reportError: | ||
function(a){if("object"===typeof window&&"function"===typeof window.ErrorEvent){var b=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:"object"===typeof a&&null!==a&&"string"===typeof a.message?String(a.message):String(a),error:a});if(!window.dispatchEvent(b))return}else if("object"===typeof process&&"function"===typeof process.emit){process.emit("uncaughtException",a);return}console.error(a)};f.Children={map:D,forEach:function(a,b,c){D(a,function(){b.apply(this,arguments)},c)},count:function(a){var b= | ||
0;D(a,function(){b++});return b},toArray:function(a){return D(a,function(b){return b})||[]},only:function(a){if(!N(a))throw Error("React.Children.only expected to receive a single React element child.");return a}};f.Component=x;f.Fragment=ua;f.Profiler=wa;f.PureComponent=K;f.StrictMode=va;f.Suspense=Aa;f.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=u;f.act=function(a){throw Error("act(...) is not supported in production builds of React.");};f.cache=function(a){return function(){return a.apply(null, | ||
arguments)}};f.cloneElement=function(a,b,c){if(null===a||void 0===a)throw Error("The argument must be a React element, but you passed "+a+".");var d=ia({},a.props),e=a.key,k=void 0;if(null!=b)for(g in void 0!==b.ref&&(k=l.owner),void 0!==b.key&&(e=""+b.key),b)!ja.call(b,g)||"key"===g||"__self"===g||"__source"===g||"ref"===g&&void 0===b.ref||(d[g]=b[g]);var g=arguments.length-2;if(1===g)d.children=c;else if(1<g){for(var n=Array(g),h=0;h<g;h++)n[h]=arguments[h+2];d.children=n}return L(a.type,e,null, | ||
void 0,void 0,k,d)};f.createContext=function(a){a={$$typeof:ya,_currentValue:a,_currentValue2:a,_threadCount:0,Provider:null,Consumer:null};a.Provider=a;a.Consumer={$$typeof:xa,_context:a};return a};f.createElement=function(a,b,c){var d,e={},k=null;if(null!=b)for(d in void 0!==b.key&&(k=""+b.key),b)ja.call(b,d)&&"key"!==d&&"__self"!==d&&"__source"!==d&&(e[d]=b[d]);var g=arguments.length-2;if(1===g)e.children=c;else if(1<g){for(var n=Array(g),h=0;h<g;h++)n[h]=arguments[h+2];e.children=n}if(a&&a.defaultProps)for(d in g= | ||
a.defaultProps,g)void 0===e[d]&&(e[d]=g[d]);return L(a,k,null,void 0,void 0,l.owner,e)};f.createRef=function(){return{current:null}};f.experimental_useEffectEvent=function(a){return l.H.useEffectEvent(a)};f.experimental_useOptimistic=function(a,b){return ca(a,b)};f.forwardRef=function(a){return{$$typeof:za,render:a}};f.isValidElement=N;f.lazy=function(a){return{$$typeof:Z,_payload:{_status:-1,_result:a},_init:sa}};f.memo=function(a,b){return{$$typeof:Ca,type:a,compare:void 0===b?null:b}};f.startTransition= | ||
function(a,b){b=l.T;var c=new Set;l.T={_callbacks:c};var d=l.T;try{var e=a();"object"===typeof e&&null!==e&&"function"===typeof e.then&&(c.forEach(function(k){return k(d,e)}),e.then(ta,na))}catch(k){na(k)}finally{l.T=b}};f.unstable_Activity=Ea;f.unstable_DebugTracingMode=Da;f.unstable_SuspenseList=Ba;f.unstable_getCacheForType=function(a){return a()};f.unstable_postpone=function(a){a=Error(a);a.$$typeof=Fa;throw a;};f.unstable_useCacheRefresh=function(){return l.H.useCacheRefresh()};f.unstable_useMemoCache= | ||
function(a){return l.H.useMemoCache(a)};f.use=function(a){return l.H.use(a)};f.useActionState=function(a,b,c){return l.H.useActionState(a,b,c)};f.useCallback=function(a,b){return l.H.useCallback(a,b)};f.useContext=function(a){return l.H.useContext(a)};f.useDebugValue=function(a,b){};f.useDeferredValue=function(a,b){return l.H.useDeferredValue(a,b)};f.useEffect=function(a,b){return l.H.useEffect(a,b)};f.useId=function(){return l.H.useId()};f.useImperativeHandle=function(a,b,c){return l.H.useImperativeHandle(a, | ||
b,c)};f.useInsertionEffect=function(a,b){return l.H.useInsertionEffect(a,b)};f.useLayoutEffect=function(a,b){return l.H.useLayoutEffect(a,b)};f.useMemo=function(a,b){return l.H.useMemo(a,b)};f.useOptimistic=ca;f.useReducer=function(a,b,c){return l.H.useReducer(a,b,c)};f.useRef=function(a){return l.H.useRef(a)};f.useState=function(a){return l.H.useState(a)};f.useSyncExternalStore=function(a,b,c){return l.H.useSyncExternalStore(a,b,c)};f.useTransition=function(){return l.H.useTransition()};f.version= | ||
"19.0.0-experimental-adb717393-20240411"})})(); |
@@ -11,26 +11,25 @@ /** | ||
'use strict';(function(){(function(e,z){"object"===typeof exports&&"undefined"!==typeof module?z(exports):"function"===typeof define&&define.amd?define(["exports"],z):(e="undefined"!==typeof globalThis?globalThis:e||self,z(e.React={}))})(this,function(e){function z(a){if(null===a||"object"!==typeof a)return null;a=X&&a[X]||a["@@iterator"];return"function"===typeof a?a:null}function y(a,b,c){this.props=a;this.context=b;this.refs=Y;this.updater=c||Z}function aa(){}function N(a,b,c){this.props=a;this.context= | ||
b;this.refs=Y;this.updater=c||Z}function ba(a,b,c){var f,d={},g=null,h=null;if(null!=b)for(f in void 0!==b.ref&&(h=b.ref),void 0!==b.key&&(g=""+b.key),b)ca.call(b,f)&&!da.hasOwnProperty(f)&&(d[f]=b[f]);var l=arguments.length-2;if(1===l)d.children=c;else if(1<l){for(var k=Array(l),n=0;n<l;n++)k[n]=arguments[n+2];d.children=k}if(a&&a.defaultProps)for(f in l=a.defaultProps,l)void 0===d[f]&&(d[f]=l[f]);return{$$typeof:A,type:a,key:g,ref:h,props:d,_owner:O.current}}function ra(a,b){return{$$typeof:A,type:a.type, | ||
key:b,ref:a.ref,props:a.props,_owner:a._owner}}function P(a){return"object"===typeof a&&null!==a&&a.$$typeof===A}function sa(a){var b={"=":"=0",":":"=2"};return"$"+a.replace(/[=:]/g,function(c){return b[c]})}function Q(a,b){return"object"===typeof a&&null!==a&&null!=a.key?sa(""+a.key):b.toString(36)}function E(a,b,c,f,d){var g=typeof a;if("undefined"===g||"boolean"===g)a=null;var h=!1;if(null===a)h=!0;else switch(g){case "string":case "number":h=!0;break;case "object":switch(a.$$typeof){case A:case ta:h= | ||
!0}}if(h)return h=a,d=d(h),a=""===f?"."+Q(h,0):f,ea(d)?(c="",null!=a&&(c=a.replace(fa,"$&/")+"/"),E(d,b,c,"",function(n){return n})):null!=d&&(P(d)&&(d=ra(d,c+(!d.key||h&&h.key===d.key?"":(""+d.key).replace(fa,"$&/")+"/")+a)),b.push(d)),1;h=0;f=""===f?".":f+":";if(ea(a))for(var l=0;l<a.length;l++){g=a[l];var k=f+Q(g,l);h+=E(g,b,c,k,d)}else if(k=z(a),"function"===typeof k)for(a=k.call(a),l=0;!(g=a.next()).done;)g=g.value,k=f+Q(g,l++),h+=E(g,b,c,k,d);else if("object"===g)throw b=String(a),Error("Objects are not valid as a React child (found: "+ | ||
("[object Object]"===b?"object with keys {"+Object.keys(a).join(", ")+"}":b)+"). If you meant to render a collection of children, use an array instead.");return h}function F(a,b,c){if(null==a)return a;var f=[],d=0;E(a,f,"","",function(g){return b.call(c,g,d++)});return f}function ua(a){if(-1===a._status){var b=a._result;b=b();b.then(function(c){if(0===a._status||-1===a._status)a._status=1,a._result=c},function(c){if(0===a._status||-1===a._status)a._status=2,a._result=c});-1===a._status&&(a._status= | ||
0,a._result=b)}if(1===a._status)return a._result.default;throw a._result;}function va(){return new WeakMap}function R(){return{s:0,v:void 0,o:null,p:null}}function wa(a){return function(){var b=G.current;if(!b)return a.apply(null,arguments);var c=b.getCacheForType(va);b=c.get(a);void 0===b&&(b=R(),c.set(a,b));c=0;for(var f=arguments.length;c<f;c++){var d=arguments[c];if("function"===typeof d||"object"===typeof d&&null!==d){var g=b.o;null===g&&(b.o=g=new WeakMap);b=g.get(d);void 0===b&&(b=R(),g.set(d, | ||
b))}else g=b.p,null===g&&(b.p=g=new Map),b=g.get(d),void 0===b&&(b=R(),g.set(d,b))}if(1===b.s)return b.v;if(2===b.s)throw b.v;try{var h=a.apply(null,arguments);c=b;c.s=1;return c.v=h}catch(l){throw h=b,h.s=2,h.v=l,l;}}}function ha(a,b){return m.current.useOptimistic(a,b)}function S(a,b){var c=a.length;a.push(b);a:for(;0<c;){var f=c-1>>>1,d=a[f];if(0<H(d,b))a[f]=b,a[c]=d,c=f;else break a}}function r(a){return 0===a.length?null:a[0]}function I(a){if(0===a.length)return null;var b=a[0],c=a.pop();if(c!== | ||
b){a[0]=c;a:for(var f=0,d=a.length,g=d>>>1;f<g;){var h=2*(f+1)-1,l=a[h],k=h+1,n=a[k];if(0>H(l,c))k<d&&0>H(n,l)?(a[f]=n,a[k]=c,f=k):(a[f]=l,a[h]=c,f=h);else if(k<d&&0>H(n,c))a[f]=n,a[k]=c,f=k;else break a}}return b}function H(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}function J(a){for(var b=r(u);null!==b;){if(null===b.callback)I(u);else if(b.startTime<=a)I(u),b.sortIndex=b.expirationTime,S(t,b);else break;b=r(u)}}function T(a){B=!1;J(a);if(!w)if(null!==r(t))w=!0,U();else{var b=r(u); | ||
null!==b&&V(T,b.startTime-a)}}function ia(){return x()-ja<ka?!1:!0}function U(){K||(K=!0,L())}function V(a,b){C=la(function(){a(x())},b)}function xa(){}var A=Symbol.for("react.element"),ta=Symbol.for("react.portal"),ya=Symbol.for("react.fragment"),za=Symbol.for("react.strict_mode"),Aa=Symbol.for("react.profiler"),Ba=Symbol.for("react.provider"),Ca=Symbol.for("react.context"),Da=Symbol.for("react.forward_ref"),Ea=Symbol.for("react.suspense"),Fa=Symbol.for("react.suspense_list"),Ga=Symbol.for("react.memo"), | ||
Ha=Symbol.for("react.lazy"),Ia=Symbol.for("react.debug_trace_mode"),Ja=Symbol.for("react.offscreen"),Ka=Symbol.for("react.cache"),La=Symbol.for("react.postpone"),X=Symbol.iterator,Z={isMounted:function(a){return!1},enqueueForceUpdate:function(a,b,c){},enqueueReplaceState:function(a,b,c,f){},enqueueSetState:function(a,b,c,f){}},ma=Object.assign,Y={};y.prototype.isReactComponent={};y.prototype.setState=function(a,b){if("object"!==typeof a&&"function"!==typeof a&&null!=a)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables."); | ||
this.updater.enqueueSetState(this,a,b,"setState")};y.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,"forceUpdate")};aa.prototype=y.prototype;var v=N.prototype=new aa;v.constructor=N;ma(v,y.prototype);v.isPureReactComponent=!0;var ea=Array.isArray,ca=Object.prototype.hasOwnProperty,O={current:null},da={key:!0,ref:!0,__self:!0,__source:!0},m={current:null},G={current:null},D={transition:null},fa=/\/+/g;if("object"===typeof performance&&"function"===typeof performance.now){var Ma= | ||
performance;var x=function(){return Ma.now()}}else{var na=Date,Na=na.now();x=function(){return na.now()-Na}}var t=[],u=[],Oa=1,q=null,p=3,M=!1,w=!1,B=!1,la="function"===typeof setTimeout?setTimeout:null,oa="function"===typeof clearTimeout?clearTimeout:null,pa="undefined"!==typeof setImmediate?setImmediate:null;"undefined"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending?navigator.scheduling.isInputPending.bind(navigator.scheduling):null;var K=!1,C=-1, | ||
ka=5,ja=-1,W=function(){if(K){var a=x();ja=a;var b=!0;try{a:{w=!1;B&&(B=!1,oa(C),C=-1);M=!0;var c=p;try{b:{J(a);for(q=r(t);null!==q&&!(q.expirationTime>a&&ia());){var f=q.callback;if("function"===typeof f){q.callback=null;p=q.priorityLevel;var d=f(q.expirationTime<=a);a=x();if("function"===typeof d){q.callback=d;J(a);b=!0;break b}q===r(t)&&I(t);J(a)}else I(t);q=r(t)}if(null!==q)b=!0;else{var g=r(u);null!==g&&V(T,g.startTime-a);b=!1}}break a}finally{q=null,p=c,M=!1}b=void 0}}finally{b?L():K=!1}}}; | ||
if("function"===typeof pa)var L=function(){pa(W)};else if("undefined"!==typeof MessageChannel){v=new MessageChannel;var Pa=v.port2;v.port1.onmessage=W;L=function(){Pa.postMessage(null)}}else L=function(){la(W,0)};v={ReactCurrentDispatcher:m,ReactCurrentCache:G,ReactCurrentOwner:O,ReactCurrentBatchConfig:D,Scheduler:{__proto__:null,unstable_IdlePriority:5,unstable_ImmediatePriority:1,unstable_LowPriority:4,unstable_NormalPriority:3,unstable_Profiling:null,unstable_UserBlockingPriority:2,unstable_cancelCallback:function(a){a.callback= | ||
null},unstable_continueExecution:function(){w||M||(w=!0,U())},unstable_forceFrameRate:function(a){0>a||125<a?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):ka=0<a?Math.floor(1E3/a):5},unstable_getCurrentPriorityLevel:function(){return p},unstable_getFirstCallbackNode:function(){return r(t)},unstable_next:function(a){switch(p){case 1:case 2:case 3:var b=3;break;default:b=p}var c=p;p=b;try{return a()}finally{p=c}},get unstable_now(){return x}, | ||
unstable_pauseExecution:function(){},unstable_requestPaint:function(){},unstable_runWithPriority:function(a,b){switch(a){case 1:case 2:case 3:case 4:case 5:break;default:a=3}var c=p;p=a;try{return b()}finally{p=c}},unstable_scheduleCallback:function(a,b,c){var f=x();"object"===typeof c&&null!==c?(c=c.delay,c="number"===typeof c&&0<c?f+c:f):c=f;switch(a){case 1:var d=-1;break;case 2:d=250;break;case 5:d=1073741823;break;case 4:d=1E4;break;default:d=5E3}d=c+d;a={id:Oa++,callback:b,priorityLevel:a,startTime:c, | ||
expirationTime:d,sortIndex:-1};c>f?(a.sortIndex=c,S(u,a),null===r(t)&&a===r(u)&&(B?(oa(C),C=-1):B=!0,V(T,c-f))):(a.sortIndex=d,S(t,a),w||M||(w=!0,U()));return a},unstable_shouldYield:ia,unstable_wrapCallback:function(a){var b=p;return function(){var c=p;p=b;try{return a.apply(this,arguments)}finally{p=c}}}}};var qa="function"===typeof reportError?reportError:function(a){console.error(a)};e.Children={map:F,forEach:function(a,b,c){F(a,function(){b.apply(this,arguments)},c)},count:function(a){var b= | ||
0;F(a,function(){b++});return b},toArray:function(a){return F(a,function(b){return b})||[]},only:function(a){if(!P(a))throw Error("React.Children.only expected to receive a single React element child.");return a}};e.Component=y;e.Fragment=ya;e.Profiler=Aa;e.PureComponent=N;e.StrictMode=za;e.Suspense=Ea;e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=v;e.act=function(a){throw Error("act(...) is not supported in production builds of React.");};e.cache=function(a){return wa(a)};e.cloneElement=function(a, | ||
b,c){if(null===a||void 0===a)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+a+".");var f=ma({},a.props),d=a.key,g=a.ref,h=a._owner;if(null!=b){void 0!==b.ref&&(g=b.ref,h=O.current);void 0!==b.key&&(d=""+b.key);if(a.type&&a.type.defaultProps)var l=a.type.defaultProps;for(k in b)ca.call(b,k)&&!da.hasOwnProperty(k)&&(f[k]=void 0===b[k]&&void 0!==l?l[k]:b[k])}var k=arguments.length-2;if(1===k)f.children=c;else if(1<k){l=Array(k);for(var n=0;n<k;n++)l[n]=arguments[n+ | ||
2];f.children=l}return{$$typeof:A,type:a.type,key:d,ref:g,props:f,_owner:h}};e.createContext=function(a){a={$$typeof:Ca,_currentValue:a,_currentValue2:a,_threadCount:0,Provider:null,Consumer:null};a.Provider={$$typeof:Ba,_context:a};return a.Consumer=a};e.createElement=ba;e.createFactory=function(a){var b=ba.bind(null,a);b.type=a;return b};e.createRef=function(){return{current:null}};e.experimental_useEffectEvent=function(a){return m.current.useEffectEvent(a)};e.experimental_useOptimistic=function(a, | ||
b){return ha(a,b)};e.forwardRef=function(a){return{$$typeof:Da,render:a}};e.isValidElement=P;e.lazy=function(a){return{$$typeof:Ha,_payload:{_status:-1,_result:a},_init:ua}};e.memo=function(a,b){return{$$typeof:Ga,type:a,compare:void 0===b?null:b}};e.startTransition=function(a,b){b=D.transition;var c=new Set;D.transition={_callbacks:c};var f=D.transition;try{var d=a();"object"===typeof d&&null!==d&&"function"===typeof d.then&&(c.forEach(function(g){return g(f,d)}),d.then(xa,qa))}catch(g){qa(g)}finally{D.transition= | ||
b}};e.unstable_Activity=Ja;e.unstable_Cache=Ka;e.unstable_DebugTracingMode=Ia;e.unstable_SuspenseList=Fa;e.unstable_getCacheForType=function(a){var b=G.current;return b?b.getCacheForType(a):a()};e.unstable_getCacheSignal=function(){var a=G.current;return a?a.getCacheSignal():(a=new AbortController,a.abort(Error("This CacheSignal was requested outside React which means that it is immediately aborted.")),a.signal)};e.unstable_postpone=function(a){a=Error(a);a.$$typeof=La;throw a;};e.unstable_useCacheRefresh= | ||
function(){return m.current.useCacheRefresh()};e.unstable_useMemoCache=function(a){return m.current.useMemoCache(a)};e.use=function(a){return m.current.use(a)};e.useCallback=function(a,b){return m.current.useCallback(a,b)};e.useContext=function(a){return m.current.useContext(a)};e.useDebugValue=function(a,b){};e.useDeferredValue=function(a,b){return m.current.useDeferredValue(a,b)};e.useEffect=function(a,b){return m.current.useEffect(a,b)};e.useId=function(){return m.current.useId()};e.useImperativeHandle= | ||
function(a,b,c){return m.current.useImperativeHandle(a,b,c)};e.useInsertionEffect=function(a,b){return m.current.useInsertionEffect(a,b)};e.useLayoutEffect=function(a,b){return m.current.useLayoutEffect(a,b)};e.useMemo=function(a,b){return m.current.useMemo(a,b)};e.useOptimistic=ha;e.useReducer=function(a,b,c){return m.current.useReducer(a,b,c)};e.useRef=function(a){return m.current.useRef(a)};e.useState=function(a){return m.current.useState(a)};e.useSyncExternalStore=function(a,b,c){return m.current.useSyncExternalStore(a, | ||
b,c)};e.useTransition=function(){return m.current.useTransition()};e.version="18.3.0-experimental-ad720f36e-20240206"})})(); | ||
'use strict';(function(){(function(f,A){"object"===typeof exports&&"undefined"!==typeof module?A(exports):"function"===typeof define&&define.amd?define(["exports"],A):(f="undefined"!==typeof globalThis?globalThis:f||self,A(f.React={}))})(this,function(f){function A(a){if(null===a||"object"!==typeof a)return null;a=U&&a[U]||a["@@iterator"];return"function"===typeof a?a:null}function x(a,b,c){this.props=a;this.context=b;this.refs=V;this.updater=c||W}function X(){}function K(a,b,c){this.props=a;this.context= | ||
b;this.refs=V;this.updater=c||W}function L(a,b,c,d,e,k,g){c=g.ref;return{$$typeof:M,type:a,key:b,ref:void 0!==c?c:null,props:g}}function oa(a,b){return L(a.type,b,null,void 0,void 0,void 0,a.props)}function N(a){return"object"===typeof a&&null!==a&&a.$$typeof===M}function pa(a){var b={"=":"=0",":":"=2"};return"$"+a.replace(/[=:]/g,function(c){return b[c]})}function O(a,b){return"object"===typeof a&&null!==a&&null!=a.key?pa(""+a.key):b.toString(36)}function Y(){}function qa(a){switch(a.status){case "fulfilled":return a.value; | ||
case "rejected":throw a.reason;default:switch("string"===typeof a.status?a.then(Y,Y):(a.status="pending",a.then(function(b){"pending"===a.status&&(a.status="fulfilled",a.value=b)},function(b){"pending"===a.status&&(a.status="rejected",a.reason=b)})),a.status){case "fulfilled":return a.value;case "rejected":throw a.reason;}}throw a;}function y(a,b,c,d,e){var k=typeof a;if("undefined"===k||"boolean"===k)a=null;var g=!1;if(null===a)g=!0;else switch(k){case "bigint":case "string":case "number":g=!0;break; | ||
case "object":switch(a.$$typeof){case M:case ra:g=!0;break;case Z:return g=a._init,y(g(a._payload),b,c,d,e)}}if(g)return e=e(a),g=""===d?"."+O(a,0):d,aa(e)?(c="",null!=g&&(c=g.replace(ba,"$&/")+"/"),y(e,b,c,"",function(z){return z})):null!=e&&(N(e)&&(e=oa(e,c+(!e.key||a&&a.key===e.key?"":(""+e.key).replace(ba,"$&/")+"/")+g)),b.push(e)),1;g=0;var n=""===d?".":d+":";if(aa(a))for(var h=0;h<a.length;h++)d=a[h],k=n+O(d,h),g+=y(d,b,c,k,e);else if(h=A(a),"function"===typeof h)for(a=h.call(a),h=0;!(d=a.next()).done;)d= | ||
d.value,k=n+O(d,h++),g+=y(d,b,c,k,e);else if("object"===k){if("function"===typeof a.then)return y(qa(a),b,c,d,e);b=String(a);throw Error("Objects are not valid as a React child (found: "+("[object Object]"===b?"object with keys {"+Object.keys(a).join(", ")+"}":b)+"). If you meant to render a collection of children, use an array instead.");}return g}function D(a,b,c){if(null==a)return a;var d=[],e=0;y(a,d,"","",function(k){return b.call(c,k,e++)});return d}function sa(a){if(-1===a._status){var b=a._result; | ||
b=b();b.then(function(c){if(0===a._status||-1===a._status)a._status=1,a._result=c},function(c){if(0===a._status||-1===a._status)a._status=2,a._result=c});-1===a._status&&(a._status=0,a._result=b)}if(1===a._status)return a._result.default;throw a._result;}function ca(a,b){return l.H.useOptimistic(a,b)}function P(a,b){var c=a.length;a.push(b);a:for(;0<c;){var d=c-1>>>1,e=a[d];if(0<E(e,b))a[d]=b,a[c]=e,c=d;else break a}}function q(a){return 0===a.length?null:a[0]}function F(a){if(0===a.length)return null; | ||
var b=a[0],c=a.pop();if(c!==b){a[0]=c;a:for(var d=0,e=a.length,k=e>>>1;d<k;){var g=2*(d+1)-1,n=a[g],h=g+1,z=a[h];if(0>E(n,c))h<e&&0>E(z,n)?(a[d]=z,a[h]=c,d=h):(a[d]=n,a[g]=c,d=g);else if(h<e&&0>E(z,c))a[d]=z,a[h]=c,d=h;else break a}}return b}function E(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}function G(a){for(var b=q(t);null!==b;){if(null===b.callback)F(t);else if(b.startTime<=a)F(t),b.sortIndex=b.expirationTime,P(r,b);else break;b=q(t)}}function Q(a){B=!1;G(a);if(!v)if(null!== | ||
q(r))v=!0,R();else{var b=q(t);null!==b&&S(Q,b.startTime-a)}}function da(){return w()-ea<fa?!1:!0}function R(){H||(H=!0,I())}function S(a,b){C=ha(function(){a(w())},b)}function ta(){}var M=Symbol.for("react.element"),ra=Symbol.for("react.portal"),ua=Symbol.for("react.fragment"),va=Symbol.for("react.strict_mode"),wa=Symbol.for("react.profiler"),xa=Symbol.for("react.consumer"),ya=Symbol.for("react.context"),za=Symbol.for("react.forward_ref"),Aa=Symbol.for("react.suspense"),Ba=Symbol.for("react.suspense_list"), | ||
Ca=Symbol.for("react.memo"),Z=Symbol.for("react.lazy"),Da=Symbol.for("react.debug_trace_mode"),Ea=Symbol.for("react.offscreen"),Fa=Symbol.for("react.postpone"),U=Symbol.iterator,W={isMounted:function(a){return!1},enqueueForceUpdate:function(a,b,c){},enqueueReplaceState:function(a,b,c,d){},enqueueSetState:function(a,b,c,d){}},ia=Object.assign,V={};x.prototype.isReactComponent={};x.prototype.setState=function(a,b){if("object"!==typeof a&&"function"!==typeof a&&null!=a)throw Error("takes an object of state variables to update or a function which returns an object of state variables."); | ||
this.updater.enqueueSetState(this,a,b,"setState")};x.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,"forceUpdate")};X.prototype=x.prototype;var u=K.prototype=new X;u.constructor=K;ia(u,x.prototype);u.isPureReactComponent=!0;var aa=Array.isArray,l={H:null,C:null,T:null},ja=Object.prototype.hasOwnProperty,ba=/\/+/g;if("object"===typeof performance&&"function"===typeof performance.now){var Ga=performance;var w=function(){return Ga.now()}}else{var ka=Date,Ha=ka.now();w=function(){return ka.now()- | ||
Ha}}var r=[],t=[],Ia=1,p=null,m=3,J=!1,v=!1,B=!1,ha="function"===typeof setTimeout?setTimeout:null,la="function"===typeof clearTimeout?clearTimeout:null,ma="undefined"!==typeof setImmediate?setImmediate:null,H=!1,C=-1,fa=5,ea=-1,T=function(){if(H){var a=w();ea=a;var b=!0;try{a:{v=!1;B&&(B=!1,la(C),C=-1);J=!0;var c=m;try{b:{G(a);for(p=q(r);null!==p&&!(p.expirationTime>a&&da());){var d=p.callback;if("function"===typeof d){p.callback=null;m=p.priorityLevel;var e=d(p.expirationTime<=a);a=w();if("function"=== | ||
typeof e){p.callback=e;G(a);b=!0;break b}p===q(r)&&F(r);G(a)}else F(r);p=q(r)}if(null!==p)b=!0;else{var k=q(t);null!==k&&S(Q,k.startTime-a);b=!1}}break a}finally{p=null,m=c,J=!1}b=void 0}}finally{b?I():H=!1}}};if("function"===typeof ma)var I=function(){ma(T)};else if("undefined"!==typeof MessageChannel){u=new MessageChannel;var Ja=u.port2;u.port1.onmessage=T;I=function(){Ja.postMessage(null)}}else I=function(){ha(T,0)};u={H:null,C:null,T:null,Scheduler:{__proto__:null,unstable_IdlePriority:5,unstable_ImmediatePriority:1, | ||
unstable_LowPriority:4,unstable_NormalPriority:3,unstable_Profiling:null,unstable_UserBlockingPriority:2,unstable_cancelCallback:function(a){a.callback=null},unstable_continueExecution:function(){v||J||(v=!0,R())},unstable_forceFrameRate:function(a){0>a||125<a?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):fa=0<a?Math.floor(1E3/a):5},unstable_getCurrentPriorityLevel:function(){return m},unstable_getFirstCallbackNode:function(){return q(r)}, | ||
unstable_next:function(a){switch(m){case 1:case 2:case 3:var b=3;break;default:b=m}var c=m;m=b;try{return a()}finally{m=c}},get unstable_now(){return w},unstable_pauseExecution:function(){},unstable_requestPaint:function(){},unstable_runWithPriority:function(a,b){switch(a){case 1:case 2:case 3:case 4:case 5:break;default:a=3}var c=m;m=a;try{return b()}finally{m=c}},unstable_scheduleCallback:function(a,b,c){var d=w();"object"===typeof c&&null!==c?(c=c.delay,c="number"===typeof c&&0<c?d+c:d):c=d;switch(a){case 1:var e= | ||
-1;break;case 2:e=250;break;case 5:e=1073741823;break;case 4:e=1E4;break;default:e=5E3}e=c+e;a={id:Ia++,callback:b,priorityLevel:a,startTime:c,expirationTime:e,sortIndex:-1};c>d?(a.sortIndex=c,P(t,a),null===q(r)&&a===q(t)&&(B?(la(C),C=-1):B=!0,S(Q,c-d))):(a.sortIndex=e,P(r,a),v||J||(v=!0,R()));return a},unstable_shouldYield:da,unstable_wrapCallback:function(a){var b=m;return function(){var c=m;m=b;try{return a.apply(this,arguments)}finally{m=c}}}}};var na="function"===typeof reportError?reportError: | ||
function(a){if("object"===typeof window&&"function"===typeof window.ErrorEvent){var b=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:"object"===typeof a&&null!==a&&"string"===typeof a.message?String(a.message):String(a),error:a});if(!window.dispatchEvent(b))return}else if("object"===typeof process&&"function"===typeof process.emit){process.emit("uncaughtException",a);return}console.error(a)};f.Children={map:D,forEach:function(a,b,c){D(a,function(){b.apply(this,arguments)},c)},count:function(a){var b= | ||
0;D(a,function(){b++});return b},toArray:function(a){return D(a,function(b){return b})||[]},only:function(a){if(!N(a))throw Error("React.Children.only expected to receive a single React element child.");return a}};f.Component=x;f.Fragment=ua;f.Profiler=wa;f.PureComponent=K;f.StrictMode=va;f.Suspense=Aa;f.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=u;f.act=function(a){throw Error("act(...) is not supported in production builds of React.");};f.cache=function(a){return function(){return a.apply(null, | ||
arguments)}};f.cloneElement=function(a,b,c){if(null===a||void 0===a)throw Error("The argument must be a React element, but you passed "+a+".");var d=ia({},a.props),e=a.key,k=void 0;if(null!=b)for(g in void 0!==b.ref&&(k=l.owner),void 0!==b.key&&(e=""+b.key),b)!ja.call(b,g)||"key"===g||"__self"===g||"__source"===g||"ref"===g&&void 0===b.ref||(d[g]=b[g]);var g=arguments.length-2;if(1===g)d.children=c;else if(1<g){for(var n=Array(g),h=0;h<g;h++)n[h]=arguments[h+2];d.children=n}return L(a.type,e,null, | ||
void 0,void 0,k,d)};f.createContext=function(a){a={$$typeof:ya,_currentValue:a,_currentValue2:a,_threadCount:0,Provider:null,Consumer:null};a.Provider=a;a.Consumer={$$typeof:xa,_context:a};return a};f.createElement=function(a,b,c){var d,e={},k=null;if(null!=b)for(d in void 0!==b.key&&(k=""+b.key),b)ja.call(b,d)&&"key"!==d&&"__self"!==d&&"__source"!==d&&(e[d]=b[d]);var g=arguments.length-2;if(1===g)e.children=c;else if(1<g){for(var n=Array(g),h=0;h<g;h++)n[h]=arguments[h+2];e.children=n}if(a&&a.defaultProps)for(d in g= | ||
a.defaultProps,g)void 0===e[d]&&(e[d]=g[d]);return L(a,k,null,void 0,void 0,l.owner,e)};f.createRef=function(){return{current:null}};f.experimental_useEffectEvent=function(a){return l.H.useEffectEvent(a)};f.experimental_useOptimistic=function(a,b){return ca(a,b)};f.forwardRef=function(a){return{$$typeof:za,render:a}};f.isValidElement=N;f.lazy=function(a){return{$$typeof:Z,_payload:{_status:-1,_result:a},_init:sa}};f.memo=function(a,b){return{$$typeof:Ca,type:a,compare:void 0===b?null:b}};f.startTransition= | ||
function(a,b){b=l.T;var c=new Set;l.T={_callbacks:c};var d=l.T;try{var e=a();"object"===typeof e&&null!==e&&"function"===typeof e.then&&(c.forEach(function(k){return k(d,e)}),e.then(ta,na))}catch(k){na(k)}finally{l.T=b}};f.unstable_Activity=Ea;f.unstable_DebugTracingMode=Da;f.unstable_SuspenseList=Ba;f.unstable_getCacheForType=function(a){return a()};f.unstable_postpone=function(a){a=Error(a);a.$$typeof=Fa;throw a;};f.unstable_useCacheRefresh=function(){return l.H.useCacheRefresh()};f.unstable_useMemoCache= | ||
function(a){return l.H.useMemoCache(a)};f.use=function(a){return l.H.use(a)};f.useActionState=function(a,b,c){return l.H.useActionState(a,b,c)};f.useCallback=function(a,b){return l.H.useCallback(a,b)};f.useContext=function(a){return l.H.useContext(a)};f.useDebugValue=function(a,b){};f.useDeferredValue=function(a,b){return l.H.useDeferredValue(a,b)};f.useEffect=function(a,b){return l.H.useEffect(a,b)};f.useId=function(){return l.H.useId()};f.useImperativeHandle=function(a,b,c){return l.H.useImperativeHandle(a, | ||
b,c)};f.useInsertionEffect=function(a,b){return l.H.useInsertionEffect(a,b)};f.useLayoutEffect=function(a,b){return l.H.useLayoutEffect(a,b)};f.useMemo=function(a,b){return l.H.useMemo(a,b)};f.useOptimistic=ca;f.useReducer=function(a,b,c){return l.H.useReducer(a,b,c)};f.useRef=function(a){return l.H.useRef(a)};f.useState=function(a){return l.H.useState(a)};f.useSyncExternalStore=function(a,b,c){return l.H.useSyncExternalStore(a,b,c)};f.useTransition=function(){return l.H.useTransition()};f.version= | ||
"19.0.0-experimental-adb717393-20240411"})})(); |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
Found 1 instance in 1 package
0
37
1
620877
13381
8
- Removedloose-envify@^1.1.0
- Removedjs-tokens@4.0.0(transitive)
- Removedloose-envify@1.4.0(transitive)