{"version":3,"file":"2575.ec2488902365e9f2.js","sources":["webpack://storefronts/./node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","webpack://storefronts/./node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.production.min.js","webpack://storefronts/./node_modules/hoist-non-react-statics/node_modules/react-is/index.js","webpack://storefronts/./node_modules/react-redux/es/utils/batch.js","webpack://storefronts/./node_modules/react-redux/es/components/Context.js","webpack://storefronts/./node_modules/react-redux/es/hooks/useReduxContext.js","webpack://storefronts/./node_modules/react-redux/es/utils/useSyncExternalStore.js","webpack://storefronts/./node_modules/react-redux/es/hooks/useSelector.js","webpack://storefronts/./node_modules/react-redux/es/connect/selectorFactory.js","webpack://storefronts/./node_modules/react-redux/es/connect/wrapMapToProps.js","webpack://storefronts/./node_modules/react-redux/es/connect/invalidArgFactory.js","webpack://storefronts/./node_modules/react-redux/es/connect/mergeProps.js","webpack://storefronts/./node_modules/react-redux/es/utils/Subscription.js","webpack://storefronts/./node_modules/react-redux/es/utils/useIsomorphicLayoutEffect.js","webpack://storefronts/./node_modules/react-redux/es/utils/shallowEqual.js","webpack://storefronts/./node_modules/react-redux/es/components/connect.js","webpack://storefronts/./node_modules/react-redux/es/connect/mapStateToProps.js","webpack://storefronts/./node_modules/react-redux/es/connect/mapDispatchToProps.js","webpack://storefronts/./node_modules/react-redux/es/utils/bindActionCreators.js","webpack://storefronts/./node_modules/react-redux/es/components/Provider.js","webpack://storefronts/./node_modules/react-redux/es/hooks/useStore.js","webpack://storefronts/./node_modules/react-redux/es/hooks/useDispatch.js","webpack://storefronts/./node_modules/react-redux/es/index.js","webpack://storefronts/./node_modules/react-redux/node_modules/react-is/cjs/react-is.production.min.js","webpack://storefronts/./node_modules/react-redux/node_modules/react-is/index.js","webpack://storefronts/./node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js","webpack://storefronts/./node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js","webpack://storefronts/./node_modules/use-sync-external-store/shim/index.js","webpack://storefronts/./node_modules/use-sync-external-store/shim/with-selector.js","webpack://storefronts/./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js"],"sourcesContent":["'use strict';\n\nvar reactIs = require('react-is');\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","// Default to a dummy \"batch\" implementation that just runs the callback\nfunction defaultNoopBatch(callback) {\n callback();\n}\n\nlet batch = defaultNoopBatch; // Allow injecting another batching function later\n\nexport const setBatch = newBatch => batch = newBatch; // Supply a getter just to skip dealing with ESM bindings\n\nexport const getBatch = () => batch;","import * as React from 'react';\nconst ContextKey = Symbol.for(`react-redux-context`);\nconst gT = typeof globalThis !== \"undefined\" ? globalThis :\n/* fall back to a per-module scope (pre-8.1 behaviour) if `globalThis` is not available */\n{};\n\nfunction getContext() {\n var _gT$ContextKey;\n\n if (!React.createContext) return {};\n const contextMap = (_gT$ContextKey = gT[ContextKey]) != null ? _gT$ContextKey : gT[ContextKey] = new Map();\n let realContext = contextMap.get(React.createContext);\n\n if (!realContext) {\n realContext = React.createContext(null);\n\n if (process.env.NODE_ENV !== 'production') {\n realContext.displayName = 'ReactRedux';\n }\n\n contextMap.set(React.createContext, realContext);\n }\n\n return realContext;\n}\n\nexport const ReactReduxContext = /*#__PURE__*/getContext();\nexport default ReactReduxContext;","import { useContext } from 'react';\nimport { ReactReduxContext } from '../components/Context';\n\n/**\r\n * Hook factory, which creates a `useReduxContext` hook bound to a given context. This is a low-level\r\n * hook that you should usually not need to call directly.\r\n *\r\n * @param {React.Context} [context=ReactReduxContext] Context passed to your ``.\r\n * @returns {Function} A `useReduxContext` hook bound to the specified context.\r\n */\nexport function createReduxContextHook(context = ReactReduxContext) {\n return function useReduxContext() {\n const contextValue = useContext(context);\n\n if (process.env.NODE_ENV !== 'production' && !contextValue) {\n throw new Error('could not find react-redux context value; please ensure the component is wrapped in a ');\n }\n\n return contextValue;\n };\n}\n/**\r\n * A hook to access the value of the `ReactReduxContext`. This is a low-level\r\n * hook that you should usually not need to call directly.\r\n *\r\n * @returns {any} the value of the `ReactReduxContext`\r\n *\r\n * @example\r\n *\r\n * import React from 'react'\r\n * import { useReduxContext } from 'react-redux'\r\n *\r\n * export const CounterComponent = () => {\r\n * const { store } = useReduxContext()\r\n * return
{store.getState()}
\r\n * }\r\n */\n\nexport const useReduxContext = /*#__PURE__*/createReduxContextHook();","export const notInitialized = () => {\n throw new Error('uSES not initialized!');\n};","import { useCallback, useDebugValue, useRef } from 'react';\nimport { createReduxContextHook, useReduxContext as useDefaultReduxContext } from './useReduxContext';\nimport { ReactReduxContext } from '../components/Context';\nimport { notInitialized } from '../utils/useSyncExternalStore';\nlet useSyncExternalStoreWithSelector = notInitialized;\nexport const initializeUseSelector = fn => {\n useSyncExternalStoreWithSelector = fn;\n};\n\nconst refEquality = (a, b) => a === b;\n/**\r\n * Hook factory, which creates a `useSelector` hook bound to a given context.\r\n *\r\n * @param {React.Context} [context=ReactReduxContext] Context passed to your ``.\r\n * @returns {Function} A `useSelector` hook bound to the specified context.\r\n */\n\n\nexport function createSelectorHook(context = ReactReduxContext) {\n const useReduxContext = context === ReactReduxContext ? useDefaultReduxContext : createReduxContextHook(context);\n return function useSelector(selector, equalityFnOrOptions = {}) {\n const {\n equalityFn = refEquality,\n stabilityCheck = undefined,\n noopCheck = undefined\n } = typeof equalityFnOrOptions === 'function' ? {\n equalityFn: equalityFnOrOptions\n } : equalityFnOrOptions;\n\n if (process.env.NODE_ENV !== 'production') {\n if (!selector) {\n throw new Error(`You must pass a selector to useSelector`);\n }\n\n if (typeof selector !== 'function') {\n throw new Error(`You must pass a function as a selector to useSelector`);\n }\n\n if (typeof equalityFn !== 'function') {\n throw new Error(`You must pass a function as an equality function to useSelector`);\n }\n }\n\n const {\n store,\n subscription,\n getServerState,\n stabilityCheck: globalStabilityCheck,\n noopCheck: globalNoopCheck\n } = useReduxContext();\n const firstRun = useRef(true);\n const wrappedSelector = useCallback({\n [selector.name](state) {\n const selected = selector(state);\n\n if (process.env.NODE_ENV !== 'production') {\n const finalStabilityCheck = typeof stabilityCheck === 'undefined' ? globalStabilityCheck : stabilityCheck;\n\n if (finalStabilityCheck === 'always' || finalStabilityCheck === 'once' && firstRun.current) {\n const toCompare = selector(state);\n\n if (!equalityFn(selected, toCompare)) {\n let stack = undefined;\n\n try {\n throw new Error();\n } catch (e) {\n ;\n ({\n stack\n } = e);\n }\n\n console.warn('Selector ' + (selector.name || 'unknown') + ' returned a different result when called with the same parameters. This can lead to unnecessary rerenders.' + '\\nSelectors that return a new reference (such as an object or an array) should be memoized: https://redux.js.org/usage/deriving-data-selectors#optimizing-selectors-with-memoization', {\n state,\n selected,\n selected2: toCompare,\n stack\n });\n }\n }\n\n const finalNoopCheck = typeof noopCheck === 'undefined' ? globalNoopCheck : noopCheck;\n\n if (finalNoopCheck === 'always' || finalNoopCheck === 'once' && firstRun.current) {\n // @ts-ignore\n if (selected === state) {\n let stack = undefined;\n\n try {\n throw new Error();\n } catch (e) {\n ;\n ({\n stack\n } = e);\n }\n\n console.warn('Selector ' + (selector.name || 'unknown') + ' returned the root state when called. This can lead to unnecessary rerenders.' + '\\nSelectors that return the entire state are almost certainly a mistake, as they will cause a rerender whenever *anything* in state changes.', {\n stack\n });\n }\n }\n\n if (firstRun.current) firstRun.current = false;\n }\n\n return selected;\n }\n\n }[selector.name], [selector, globalStabilityCheck, stabilityCheck]);\n const selectedState = useSyncExternalStoreWithSelector(subscription.addNestedSub, store.getState, getServerState || store.getState, wrappedSelector, equalityFn);\n useDebugValue(selectedState);\n return selectedState;\n };\n}\n/**\r\n * A hook to access the redux store's state. This hook takes a selector function\r\n * as an argument. The selector is called with the store state.\r\n *\r\n * This hook takes an optional equality comparison function as the second parameter\r\n * that allows you to customize the way the selected state is compared to determine\r\n * whether the component needs to be re-rendered.\r\n *\r\n * @param {Function} selector the selector function\r\n * @param {Function=} equalityFn the function that will be used to determine equality\r\n *\r\n * @returns {any} the selected state\r\n *\r\n * @example\r\n *\r\n * import React from 'react'\r\n * import { useSelector } from 'react-redux'\r\n *\r\n * export const CounterComponent = () => {\r\n * const counter = useSelector(state => state.counter)\r\n * return
{counter}
\r\n * }\r\n */\n\nexport const useSelector = /*#__PURE__*/createSelectorHook();","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"initMapStateToProps\", \"initMapDispatchToProps\", \"initMergeProps\"];\nimport verifySubselectors from './verifySubselectors';\nexport function pureFinalPropsSelectorFactory(mapStateToProps, mapDispatchToProps, mergeProps, dispatch, {\n areStatesEqual,\n areOwnPropsEqual,\n areStatePropsEqual\n}) {\n let hasRunAtLeastOnce = false;\n let state;\n let ownProps;\n let stateProps;\n let dispatchProps;\n let mergedProps;\n\n function handleFirstCall(firstState, firstOwnProps) {\n state = firstState;\n ownProps = firstOwnProps;\n stateProps = mapStateToProps(state, ownProps);\n dispatchProps = mapDispatchToProps(dispatch, ownProps);\n mergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n hasRunAtLeastOnce = true;\n return mergedProps;\n }\n\n function handleNewPropsAndNewState() {\n stateProps = mapStateToProps(state, ownProps);\n if (mapDispatchToProps.dependsOnOwnProps) dispatchProps = mapDispatchToProps(dispatch, ownProps);\n mergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n return mergedProps;\n }\n\n function handleNewProps() {\n if (mapStateToProps.dependsOnOwnProps) stateProps = mapStateToProps(state, ownProps);\n if (mapDispatchToProps.dependsOnOwnProps) dispatchProps = mapDispatchToProps(dispatch, ownProps);\n mergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n return mergedProps;\n }\n\n function handleNewState() {\n const nextStateProps = mapStateToProps(state, ownProps);\n const statePropsChanged = !areStatePropsEqual(nextStateProps, stateProps);\n stateProps = nextStateProps;\n if (statePropsChanged) mergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n return mergedProps;\n }\n\n function handleSubsequentCalls(nextState, nextOwnProps) {\n const propsChanged = !areOwnPropsEqual(nextOwnProps, ownProps);\n const stateChanged = !areStatesEqual(nextState, state, nextOwnProps, ownProps);\n state = nextState;\n ownProps = nextOwnProps;\n if (propsChanged && stateChanged) return handleNewPropsAndNewState();\n if (propsChanged) return handleNewProps();\n if (stateChanged) return handleNewState();\n return mergedProps;\n }\n\n return function pureFinalPropsSelector(nextState, nextOwnProps) {\n return hasRunAtLeastOnce ? handleSubsequentCalls(nextState, nextOwnProps) : handleFirstCall(nextState, nextOwnProps);\n };\n}\n// TODO: Add more comments\n// The selector returned by selectorFactory will memoize its results,\n// allowing connect's shouldComponentUpdate to return false if final\n// props have not changed.\nexport default function finalPropsSelectorFactory(dispatch, _ref) {\n let {\n initMapStateToProps,\n initMapDispatchToProps,\n initMergeProps\n } = _ref,\n options = _objectWithoutPropertiesLoose(_ref, _excluded);\n\n const mapStateToProps = initMapStateToProps(dispatch, options);\n const mapDispatchToProps = initMapDispatchToProps(dispatch, options);\n const mergeProps = initMergeProps(dispatch, options);\n\n if (process.env.NODE_ENV !== 'production') {\n verifySubselectors(mapStateToProps, mapDispatchToProps, mergeProps);\n }\n\n return pureFinalPropsSelectorFactory(mapStateToProps, mapDispatchToProps, mergeProps, dispatch, options);\n}","import verifyPlainObject from '../utils/verifyPlainObject';\nexport function wrapMapToPropsConstant( // * Note:\n// It seems that the dispatch argument\n// could be a dispatch function in some cases (ex: whenMapDispatchToPropsIsMissing)\n// and a state object in some others (ex: whenMapStateToPropsIsMissing)\n// eslint-disable-next-line no-unused-vars\ngetConstant) {\n return function initConstantSelector(dispatch) {\n const constant = getConstant(dispatch);\n\n function constantSelector() {\n return constant;\n }\n\n constantSelector.dependsOnOwnProps = false;\n return constantSelector;\n };\n} // dependsOnOwnProps is used by createMapToPropsProxy to determine whether to pass props as args\n// to the mapToProps function being wrapped. It is also used by makePurePropsSelector to determine\n// whether mapToProps needs to be invoked when props have changed.\n//\n// A length of one signals that mapToProps does not depend on props from the parent component.\n// A length of zero is assumed to mean mapToProps is getting args via arguments or ...args and\n// therefore not reporting its length accurately..\n// TODO Can this get pulled out so that we can subscribe directly to the store if we don't need ownProps?\n\nexport function getDependsOnOwnProps(mapToProps) {\n return mapToProps.dependsOnOwnProps ? Boolean(mapToProps.dependsOnOwnProps) : mapToProps.length !== 1;\n} // Used by whenMapStateToPropsIsFunction and whenMapDispatchToPropsIsFunction,\n// this function wraps mapToProps in a proxy function which does several things:\n//\n// * Detects whether the mapToProps function being called depends on props, which\n// is used by selectorFactory to decide if it should reinvoke on props changes.\n//\n// * On first call, handles mapToProps if returns another function, and treats that\n// new function as the true mapToProps for subsequent calls.\n//\n// * On first call, verifies the first result is a plain object, in order to warn\n// the developer that their mapToProps function is not returning a valid result.\n//\n\nexport function wrapMapToPropsFunc(mapToProps, methodName) {\n return function initProxySelector(dispatch, {\n displayName\n }) {\n const proxy = function mapToPropsProxy(stateOrDispatch, ownProps) {\n return proxy.dependsOnOwnProps ? proxy.mapToProps(stateOrDispatch, ownProps) : proxy.mapToProps(stateOrDispatch, undefined);\n }; // allow detectFactoryAndVerify to get ownProps\n\n\n proxy.dependsOnOwnProps = true;\n\n proxy.mapToProps = function detectFactoryAndVerify(stateOrDispatch, ownProps) {\n proxy.mapToProps = mapToProps;\n proxy.dependsOnOwnProps = getDependsOnOwnProps(mapToProps);\n let props = proxy(stateOrDispatch, ownProps);\n\n if (typeof props === 'function') {\n proxy.mapToProps = props;\n proxy.dependsOnOwnProps = getDependsOnOwnProps(props);\n props = proxy(stateOrDispatch, ownProps);\n }\n\n if (process.env.NODE_ENV !== 'production') verifyPlainObject(props, displayName, methodName);\n return props;\n };\n\n return proxy;\n };\n}","export function createInvalidArgFactory(arg, name) {\n return (dispatch, options) => {\n throw new Error(`Invalid value of type ${typeof arg} for ${name} argument when connecting component ${options.wrappedComponentName}.`);\n };\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport verifyPlainObject from '../utils/verifyPlainObject';\nimport { createInvalidArgFactory } from './invalidArgFactory';\nexport function defaultMergeProps(stateProps, dispatchProps, ownProps) {\n // @ts-ignore\n return _extends({}, ownProps, stateProps, dispatchProps);\n}\nexport function wrapMergePropsFunc(mergeProps) {\n return function initMergePropsProxy(dispatch, {\n displayName,\n areMergedPropsEqual\n }) {\n let hasRunOnce = false;\n let mergedProps;\n return function mergePropsProxy(stateProps, dispatchProps, ownProps) {\n const nextMergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n\n if (hasRunOnce) {\n if (!areMergedPropsEqual(nextMergedProps, mergedProps)) mergedProps = nextMergedProps;\n } else {\n hasRunOnce = true;\n mergedProps = nextMergedProps;\n if (process.env.NODE_ENV !== 'production') verifyPlainObject(mergedProps, displayName, 'mergeProps');\n }\n\n return mergedProps;\n };\n };\n}\nexport function mergePropsFactory(mergeProps) {\n return !mergeProps ? () => defaultMergeProps : typeof mergeProps === 'function' ? wrapMergePropsFunc(mergeProps) : createInvalidArgFactory(mergeProps, 'mergeProps');\n}","import { getBatch } from './batch'; // encapsulates the subscription logic for connecting a component to the redux store, as\n// well as nesting subscriptions of descendant components, so that we can ensure the\n// ancestor components re-render before descendants\n\nfunction createListenerCollection() {\n const batch = getBatch();\n let first = null;\n let last = null;\n return {\n clear() {\n first = null;\n last = null;\n },\n\n notify() {\n batch(() => {\n let listener = first;\n\n while (listener) {\n listener.callback();\n listener = listener.next;\n }\n });\n },\n\n get() {\n let listeners = [];\n let listener = first;\n\n while (listener) {\n listeners.push(listener);\n listener = listener.next;\n }\n\n return listeners;\n },\n\n subscribe(callback) {\n let isSubscribed = true;\n let listener = last = {\n callback,\n next: null,\n prev: last\n };\n\n if (listener.prev) {\n listener.prev.next = listener;\n } else {\n first = listener;\n }\n\n return function unsubscribe() {\n if (!isSubscribed || first === null) return;\n isSubscribed = false;\n\n if (listener.next) {\n listener.next.prev = listener.prev;\n } else {\n last = listener.prev;\n }\n\n if (listener.prev) {\n listener.prev.next = listener.next;\n } else {\n first = listener.next;\n }\n };\n }\n\n };\n}\n\nconst nullListeners = {\n notify() {},\n\n get: () => []\n};\nexport function createSubscription(store, parentSub) {\n let unsubscribe;\n let listeners = nullListeners; // Reasons to keep the subscription active\n\n let subscriptionsAmount = 0; // Is this specific subscription subscribed (or only nested ones?)\n\n let selfSubscribed = false;\n\n function addNestedSub(listener) {\n trySubscribe();\n const cleanupListener = listeners.subscribe(listener); // cleanup nested sub\n\n let removed = false;\n return () => {\n if (!removed) {\n removed = true;\n cleanupListener();\n tryUnsubscribe();\n }\n };\n }\n\n function notifyNestedSubs() {\n listeners.notify();\n }\n\n function handleChangeWrapper() {\n if (subscription.onStateChange) {\n subscription.onStateChange();\n }\n }\n\n function isSubscribed() {\n return selfSubscribed;\n }\n\n function trySubscribe() {\n subscriptionsAmount++;\n\n if (!unsubscribe) {\n unsubscribe = parentSub ? parentSub.addNestedSub(handleChangeWrapper) : store.subscribe(handleChangeWrapper);\n listeners = createListenerCollection();\n }\n }\n\n function tryUnsubscribe() {\n subscriptionsAmount--;\n\n if (unsubscribe && subscriptionsAmount === 0) {\n unsubscribe();\n unsubscribe = undefined;\n listeners.clear();\n listeners = nullListeners;\n }\n }\n\n function trySubscribeSelf() {\n if (!selfSubscribed) {\n selfSubscribed = true;\n trySubscribe();\n }\n }\n\n function tryUnsubscribeSelf() {\n if (selfSubscribed) {\n selfSubscribed = false;\n tryUnsubscribe();\n }\n }\n\n const subscription = {\n addNestedSub,\n notifyNestedSubs,\n handleChangeWrapper,\n isSubscribed,\n trySubscribe: trySubscribeSelf,\n tryUnsubscribe: tryUnsubscribeSelf,\n getListeners: () => listeners\n };\n return subscription;\n}","import * as React from 'react'; // React currently throws a warning when using useLayoutEffect on the server.\n// To get around it, we can conditionally useEffect on the server (no-op) and\n// useLayoutEffect in the browser. We need useLayoutEffect to ensure the store\n// subscription callback always has the selector from the latest render commit\n// available, otherwise a store update may happen between render and the effect,\n// which may cause missed updates; we also must ensure the store subscription\n// is created synchronously, otherwise a store update may occur before the\n// subscription is created and an inconsistent state may be observed\n// Matches logic in React's `shared/ExecutionEnvironment` file\n\nexport const canUseDOM = !!(typeof window !== 'undefined' && typeof window.document !== 'undefined' && typeof window.document.createElement !== 'undefined');\nexport const useIsomorphicLayoutEffect = canUseDOM ? React.useLayoutEffect : React.useEffect;","function is(x, y) {\n if (x === y) {\n return x !== 0 || y !== 0 || 1 / x === 1 / y;\n } else {\n return x !== x && y !== y;\n }\n}\n\nexport default function shallowEqual(objA, objB) {\n if (is(objA, objB)) return true;\n\n if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {\n return false;\n }\n\n const keysA = Object.keys(objA);\n const keysB = Object.keys(objB);\n if (keysA.length !== keysB.length) return false;\n\n for (let i = 0; i < keysA.length; i++) {\n if (!Object.prototype.hasOwnProperty.call(objB, keysA[i]) || !is(objA[keysA[i]], objB[keysA[i]])) {\n return false;\n }\n }\n\n return true;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"reactReduxForwardedRef\"];\n\n/* eslint-disable valid-jsdoc, @typescript-eslint/no-unused-vars */\nimport hoistStatics from 'hoist-non-react-statics';\nimport * as React from 'react';\nimport { isValidElementType, isContextConsumer } from 'react-is';\nimport defaultSelectorFactory from '../connect/selectorFactory';\nimport { mapDispatchToPropsFactory } from '../connect/mapDispatchToProps';\nimport { mapStateToPropsFactory } from '../connect/mapStateToProps';\nimport { mergePropsFactory } from '../connect/mergeProps';\nimport { createSubscription } from '../utils/Subscription';\nimport { useIsomorphicLayoutEffect } from '../utils/useIsomorphicLayoutEffect';\nimport shallowEqual from '../utils/shallowEqual';\nimport warning from '../utils/warning';\nimport { ReactReduxContext } from './Context';\nimport { notInitialized } from '../utils/useSyncExternalStore';\nlet useSyncExternalStore = notInitialized;\nexport const initializeConnect = fn => {\n useSyncExternalStore = fn;\n}; // Define some constant arrays just to avoid re-creating these\n\nconst EMPTY_ARRAY = [null, 0];\nconst NO_SUBSCRIPTION_ARRAY = [null, null]; // Attempts to stringify whatever not-really-a-component value we were given\n// for logging in an error message\n\nconst stringifyComponent = Comp => {\n try {\n return JSON.stringify(Comp);\n } catch (err) {\n return String(Comp);\n }\n};\n\n// This is \"just\" a `useLayoutEffect`, but with two modifications:\n// - we need to fall back to `useEffect` in SSR to avoid annoying warnings\n// - we extract this to a separate function to avoid closing over values\n// and causing memory leaks\nfunction useIsomorphicLayoutEffectWithArgs(effectFunc, effectArgs, dependencies) {\n useIsomorphicLayoutEffect(() => effectFunc(...effectArgs), dependencies);\n} // Effect callback, extracted: assign the latest props values to refs for later usage\n\n\nfunction captureWrapperProps(lastWrapperProps, lastChildProps, renderIsScheduled, wrapperProps, // actualChildProps: unknown,\nchildPropsFromStoreUpdate, notifyNestedSubs) {\n // We want to capture the wrapper props and child props we used for later comparisons\n lastWrapperProps.current = wrapperProps;\n renderIsScheduled.current = false; // If the render was from a store update, clear out that reference and cascade the subscriber update\n\n if (childPropsFromStoreUpdate.current) {\n childPropsFromStoreUpdate.current = null;\n notifyNestedSubs();\n }\n} // Effect callback, extracted: subscribe to the Redux store or nearest connected ancestor,\n// check for updates after dispatched actions, and trigger re-renders.\n\n\nfunction subscribeUpdates(shouldHandleStateChanges, store, subscription, childPropsSelector, lastWrapperProps, lastChildProps, renderIsScheduled, isMounted, childPropsFromStoreUpdate, notifyNestedSubs, // forceComponentUpdateDispatch: React.Dispatch,\nadditionalSubscribeListener) {\n // If we're not subscribed to the store, nothing to do here\n if (!shouldHandleStateChanges) return () => {}; // Capture values for checking if and when this component unmounts\n\n let didUnsubscribe = false;\n let lastThrownError = null; // We'll run this callback every time a store subscription update propagates to this component\n\n const checkForUpdates = () => {\n if (didUnsubscribe || !isMounted.current) {\n // Don't run stale listeners.\n // Redux doesn't guarantee unsubscriptions happen until next dispatch.\n return;\n } // TODO We're currently calling getState ourselves here, rather than letting `uSES` do it\n\n\n const latestStoreState = store.getState();\n let newChildProps, error;\n\n try {\n // Actually run the selector with the most recent store state and wrapper props\n // to determine what the child props should be\n newChildProps = childPropsSelector(latestStoreState, lastWrapperProps.current);\n } catch (e) {\n error = e;\n lastThrownError = e;\n }\n\n if (!error) {\n lastThrownError = null;\n } // If the child props haven't changed, nothing to do here - cascade the subscription update\n\n\n if (newChildProps === lastChildProps.current) {\n if (!renderIsScheduled.current) {\n notifyNestedSubs();\n }\n } else {\n // Save references to the new child props. Note that we track the \"child props from store update\"\n // as a ref instead of a useState/useReducer because we need a way to determine if that value has\n // been processed. If this went into useState/useReducer, we couldn't clear out the value without\n // forcing another re-render, which we don't want.\n lastChildProps.current = newChildProps;\n childPropsFromStoreUpdate.current = newChildProps;\n renderIsScheduled.current = true; // TODO This is hacky and not how `uSES` is meant to be used\n // Trigger the React `useSyncExternalStore` subscriber\n\n additionalSubscribeListener();\n }\n }; // Actually subscribe to the nearest connected ancestor (or store)\n\n\n subscription.onStateChange = checkForUpdates;\n subscription.trySubscribe(); // Pull data from the store after first render in case the store has\n // changed since we began.\n\n checkForUpdates();\n\n const unsubscribeWrapper = () => {\n didUnsubscribe = true;\n subscription.tryUnsubscribe();\n subscription.onStateChange = null;\n\n if (lastThrownError) {\n // It's possible that we caught an error due to a bad mapState function, but the\n // parent re-rendered without this component and we're about to unmount.\n // This shouldn't happen as long as we do top-down subscriptions correctly, but\n // if we ever do those wrong, this throw will surface the error in our tests.\n // In that case, throw the error from here so it doesn't get lost.\n throw lastThrownError;\n }\n };\n\n return unsubscribeWrapper;\n} // Reducer initial state creation for our update reducer\n\n\nconst initStateUpdates = () => EMPTY_ARRAY;\n\nfunction strictEqual(a, b) {\n return a === b;\n}\n/**\r\n * Infers the type of props that a connector will inject into a component.\r\n */\n\n\nlet hasWarnedAboutDeprecatedPureOption = false;\n/**\r\n * Connects a React component to a Redux store.\r\n *\r\n * - Without arguments, just wraps the component, without changing the behavior / props\r\n *\r\n * - If 2 params are passed (3rd param, mergeProps, is skipped), default behavior\r\n * is to override ownProps (as stated in the docs), so what remains is everything that's\r\n * not a state or dispatch prop\r\n *\r\n * - When 3rd param is passed, we don't know if ownProps propagate and whether they\r\n * should be valid component props, because it depends on mergeProps implementation.\r\n * As such, it is the user's responsibility to extend ownProps interface from state or\r\n * dispatch props or both when applicable\r\n *\r\n * @param mapStateToProps A function that extracts values from state\r\n * @param mapDispatchToProps Setup for dispatching actions\r\n * @param mergeProps Optional callback to merge state and dispatch props together\r\n * @param options Options for configuring the connection\r\n *\r\n */\n\nfunction connect(mapStateToProps, mapDispatchToProps, mergeProps, {\n // The `pure` option has been removed, so TS doesn't like us destructuring this to check its existence.\n // @ts-ignore\n pure,\n areStatesEqual = strictEqual,\n areOwnPropsEqual = shallowEqual,\n areStatePropsEqual = shallowEqual,\n areMergedPropsEqual = shallowEqual,\n // use React's forwardRef to expose a ref of the wrapped component\n forwardRef = false,\n // the context consumer to use\n context = ReactReduxContext\n} = {}) {\n if (process.env.NODE_ENV !== 'production') {\n if (pure !== undefined && !hasWarnedAboutDeprecatedPureOption) {\n hasWarnedAboutDeprecatedPureOption = true;\n warning('The `pure` option has been removed. `connect` is now always a \"pure/memoized\" component');\n }\n }\n\n const Context = context;\n const initMapStateToProps = mapStateToPropsFactory(mapStateToProps);\n const initMapDispatchToProps = mapDispatchToPropsFactory(mapDispatchToProps);\n const initMergeProps = mergePropsFactory(mergeProps);\n const shouldHandleStateChanges = Boolean(mapStateToProps);\n\n const wrapWithConnect = WrappedComponent => {\n if (process.env.NODE_ENV !== 'production' && !isValidElementType(WrappedComponent)) {\n throw new Error(`You must pass a component to the function returned by connect. Instead received ${stringifyComponent(WrappedComponent)}`);\n }\n\n const wrappedComponentName = WrappedComponent.displayName || WrappedComponent.name || 'Component';\n const displayName = `Connect(${wrappedComponentName})`;\n const selectorFactoryOptions = {\n shouldHandleStateChanges,\n displayName,\n wrappedComponentName,\n WrappedComponent,\n // @ts-ignore\n initMapStateToProps,\n // @ts-ignore\n initMapDispatchToProps,\n initMergeProps,\n areStatesEqual,\n areStatePropsEqual,\n areOwnPropsEqual,\n areMergedPropsEqual\n };\n\n function ConnectFunction(props) {\n const [propsContext, reactReduxForwardedRef, wrapperProps] = React.useMemo(() => {\n // Distinguish between actual \"data\" props that were passed to the wrapper component,\n // and values needed to control behavior (forwarded refs, alternate context instances).\n // To maintain the wrapperProps object reference, memoize this destructuring.\n const {\n reactReduxForwardedRef\n } = props,\n wrapperProps = _objectWithoutPropertiesLoose(props, _excluded);\n\n return [props.context, reactReduxForwardedRef, wrapperProps];\n }, [props]);\n const ContextToUse = React.useMemo(() => {\n // Users may optionally pass in a custom context instance to use instead of our ReactReduxContext.\n // Memoize the check that determines which context instance we should use.\n return propsContext && propsContext.Consumer && // @ts-ignore\n isContextConsumer( /*#__PURE__*/React.createElement(propsContext.Consumer, null)) ? propsContext : Context;\n }, [propsContext, Context]); // Retrieve the store and ancestor subscription via context, if available\n\n const contextValue = React.useContext(ContextToUse); // The store _must_ exist as either a prop or in context.\n // We'll check to see if it _looks_ like a Redux store first.\n // This allows us to pass through a `store` prop that is just a plain value.\n\n const didStoreComeFromProps = Boolean(props.store) && Boolean(props.store.getState) && Boolean(props.store.dispatch);\n const didStoreComeFromContext = Boolean(contextValue) && Boolean(contextValue.store);\n\n if (process.env.NODE_ENV !== 'production' && !didStoreComeFromProps && !didStoreComeFromContext) {\n throw new Error(`Could not find \"store\" in the context of ` + `\"${displayName}\". Either wrap the root component in a , ` + `or pass a custom React context provider to and the corresponding ` + `React context consumer to ${displayName} in connect options.`);\n } // Based on the previous check, one of these must be true\n\n\n const store = didStoreComeFromProps ? props.store : contextValue.store;\n const getServerState = didStoreComeFromContext ? contextValue.getServerState : store.getState;\n const childPropsSelector = React.useMemo(() => {\n // The child props selector needs the store reference as an input.\n // Re-create this selector whenever the store changes.\n return defaultSelectorFactory(store.dispatch, selectorFactoryOptions);\n }, [store]);\n const [subscription, notifyNestedSubs] = React.useMemo(() => {\n if (!shouldHandleStateChanges) return NO_SUBSCRIPTION_ARRAY; // This Subscription's source should match where store came from: props vs. context. A component\n // connected to the store via props shouldn't use subscription from context, or vice versa.\n\n const subscription = createSubscription(store, didStoreComeFromProps ? undefined : contextValue.subscription); // `notifyNestedSubs` is duplicated to handle the case where the component is unmounted in\n // the middle of the notification loop, where `subscription` will then be null. This can\n // probably be avoided if Subscription's listeners logic is changed to not call listeners\n // that have been unsubscribed in the middle of the notification loop.\n\n const notifyNestedSubs = subscription.notifyNestedSubs.bind(subscription);\n return [subscription, notifyNestedSubs];\n }, [store, didStoreComeFromProps, contextValue]); // Determine what {store, subscription} value should be put into nested context, if necessary,\n // and memoize that value to avoid unnecessary context updates.\n\n const overriddenContextValue = React.useMemo(() => {\n if (didStoreComeFromProps) {\n // This component is directly subscribed to a store from props.\n // We don't want descendants reading from this store - pass down whatever\n // the existing context value is from the nearest connected ancestor.\n return contextValue;\n } // Otherwise, put this component's subscription instance into context, so that\n // connected descendants won't update until after this component is done\n\n\n return _extends({}, contextValue, {\n subscription\n });\n }, [didStoreComeFromProps, contextValue, subscription]); // Set up refs to coordinate values between the subscription effect and the render logic\n\n const lastChildProps = React.useRef();\n const lastWrapperProps = React.useRef(wrapperProps);\n const childPropsFromStoreUpdate = React.useRef();\n const renderIsScheduled = React.useRef(false);\n const isProcessingDispatch = React.useRef(false);\n const isMounted = React.useRef(false);\n const latestSubscriptionCallbackError = React.useRef();\n useIsomorphicLayoutEffect(() => {\n isMounted.current = true;\n return () => {\n isMounted.current = false;\n };\n }, []);\n const actualChildPropsSelector = React.useMemo(() => {\n const selector = () => {\n // Tricky logic here:\n // - This render may have been triggered by a Redux store update that produced new child props\n // - However, we may have gotten new wrapper props after that\n // If we have new child props, and the same wrapper props, we know we should use the new child props as-is.\n // But, if we have new wrapper props, those might change the child props, so we have to recalculate things.\n // So, we'll use the child props from store update only if the wrapper props are the same as last time.\n if (childPropsFromStoreUpdate.current && wrapperProps === lastWrapperProps.current) {\n return childPropsFromStoreUpdate.current;\n } // TODO We're reading the store directly in render() here. Bad idea?\n // This will likely cause Bad Things (TM) to happen in Concurrent Mode.\n // Note that we do this because on renders _not_ caused by store updates, we need the latest store state\n // to determine what the child props should be.\n\n\n return childPropsSelector(store.getState(), wrapperProps);\n };\n\n return selector;\n }, [store, wrapperProps]); // We need this to execute synchronously every time we re-render. However, React warns\n // about useLayoutEffect in SSR, so we try to detect environment and fall back to\n // just useEffect instead to avoid the warning, since neither will run anyway.\n\n const subscribeForReact = React.useMemo(() => {\n const subscribe = reactListener => {\n if (!subscription) {\n return () => {};\n }\n\n return subscribeUpdates(shouldHandleStateChanges, store, subscription, // @ts-ignore\n childPropsSelector, lastWrapperProps, lastChildProps, renderIsScheduled, isMounted, childPropsFromStoreUpdate, notifyNestedSubs, reactListener);\n };\n\n return subscribe;\n }, [subscription]);\n useIsomorphicLayoutEffectWithArgs(captureWrapperProps, [lastWrapperProps, lastChildProps, renderIsScheduled, wrapperProps, childPropsFromStoreUpdate, notifyNestedSubs]);\n let actualChildProps;\n\n try {\n actualChildProps = useSyncExternalStore( // TODO We're passing through a big wrapper that does a bunch of extra side effects besides subscribing\n subscribeForReact, // TODO This is incredibly hacky. We've already processed the store update and calculated new child props,\n // TODO and we're just passing that through so it triggers a re-render for us rather than relying on `uSES`.\n actualChildPropsSelector, getServerState ? () => childPropsSelector(getServerState(), wrapperProps) : actualChildPropsSelector);\n } catch (err) {\n if (latestSubscriptionCallbackError.current) {\n ;\n err.message += `\\nThe error may be correlated with this previous error:\\n${latestSubscriptionCallbackError.current.stack}\\n\\n`;\n }\n\n throw err;\n }\n\n useIsomorphicLayoutEffect(() => {\n latestSubscriptionCallbackError.current = undefined;\n childPropsFromStoreUpdate.current = undefined;\n lastChildProps.current = actualChildProps;\n }); // Now that all that's done, we can finally try to actually render the child component.\n // We memoize the elements for the rendered child component as an optimization.\n\n const renderedWrappedComponent = React.useMemo(() => {\n return (\n /*#__PURE__*/\n // @ts-ignore\n React.createElement(WrappedComponent, _extends({}, actualChildProps, {\n ref: reactReduxForwardedRef\n }))\n );\n }, [reactReduxForwardedRef, WrappedComponent, actualChildProps]); // If React sees the exact same element reference as last time, it bails out of re-rendering\n // that child, same as if it was wrapped in React.memo() or returned false from shouldComponentUpdate.\n\n const renderedChild = React.useMemo(() => {\n if (shouldHandleStateChanges) {\n // If this component is subscribed to store updates, we need to pass its own\n // subscription instance down to our descendants. That means rendering the same\n // Context instance, and putting a different value into the context.\n return /*#__PURE__*/React.createElement(ContextToUse.Provider, {\n value: overriddenContextValue\n }, renderedWrappedComponent);\n }\n\n return renderedWrappedComponent;\n }, [ContextToUse, renderedWrappedComponent, overriddenContextValue]);\n return renderedChild;\n }\n\n const _Connect = React.memo(ConnectFunction);\n\n // Add a hacky cast to get the right output type\n const Connect = _Connect;\n Connect.WrappedComponent = WrappedComponent;\n Connect.displayName = ConnectFunction.displayName = displayName;\n\n if (forwardRef) {\n const _forwarded = React.forwardRef(function forwardConnectRef(props, ref) {\n // @ts-ignore\n return /*#__PURE__*/React.createElement(Connect, _extends({}, props, {\n reactReduxForwardedRef: ref\n }));\n });\n\n const forwarded = _forwarded;\n forwarded.displayName = displayName;\n forwarded.WrappedComponent = WrappedComponent;\n return hoistStatics(forwarded, WrappedComponent);\n }\n\n return hoistStatics(Connect, WrappedComponent);\n };\n\n return wrapWithConnect;\n}\n\nexport default connect;","import { wrapMapToPropsConstant, wrapMapToPropsFunc } from './wrapMapToProps';\nimport { createInvalidArgFactory } from './invalidArgFactory';\nexport function mapStateToPropsFactory(mapStateToProps) {\n return !mapStateToProps ? wrapMapToPropsConstant(() => ({})) : typeof mapStateToProps === 'function' ? // @ts-ignore\n wrapMapToPropsFunc(mapStateToProps, 'mapStateToProps') : createInvalidArgFactory(mapStateToProps, 'mapStateToProps');\n}","import bindActionCreators from '../utils/bindActionCreators';\nimport { wrapMapToPropsConstant, wrapMapToPropsFunc } from './wrapMapToProps';\nimport { createInvalidArgFactory } from './invalidArgFactory';\nexport function mapDispatchToPropsFactory(mapDispatchToProps) {\n return mapDispatchToProps && typeof mapDispatchToProps === 'object' ? wrapMapToPropsConstant(dispatch => // @ts-ignore\n bindActionCreators(mapDispatchToProps, dispatch)) : !mapDispatchToProps ? wrapMapToPropsConstant(dispatch => ({\n dispatch\n })) : typeof mapDispatchToProps === 'function' ? // @ts-ignore\n wrapMapToPropsFunc(mapDispatchToProps, 'mapDispatchToProps') : createInvalidArgFactory(mapDispatchToProps, 'mapDispatchToProps');\n}","export default function bindActionCreators(actionCreators, dispatch) {\n const boundActionCreators = {};\n\n for (const key in actionCreators) {\n const actionCreator = actionCreators[key];\n\n if (typeof actionCreator === 'function') {\n boundActionCreators[key] = (...args) => dispatch(actionCreator(...args));\n }\n }\n\n return boundActionCreators;\n}","import * as React from 'react';\nimport { ReactReduxContext } from './Context';\nimport { createSubscription } from '../utils/Subscription';\nimport { useIsomorphicLayoutEffect } from '../utils/useIsomorphicLayoutEffect';\n\nfunction Provider({\n store,\n context,\n children,\n serverState,\n stabilityCheck = 'once',\n noopCheck = 'once'\n}) {\n const contextValue = React.useMemo(() => {\n const subscription = createSubscription(store);\n return {\n store,\n subscription,\n getServerState: serverState ? () => serverState : undefined,\n stabilityCheck,\n noopCheck\n };\n }, [store, serverState, stabilityCheck, noopCheck]);\n const previousState = React.useMemo(() => store.getState(), [store]);\n useIsomorphicLayoutEffect(() => {\n const {\n subscription\n } = contextValue;\n subscription.onStateChange = subscription.notifyNestedSubs;\n subscription.trySubscribe();\n\n if (previousState !== store.getState()) {\n subscription.notifyNestedSubs();\n }\n\n return () => {\n subscription.tryUnsubscribe();\n subscription.onStateChange = undefined;\n };\n }, [contextValue, previousState]);\n const Context = context || ReactReduxContext; // @ts-ignore 'AnyAction' is assignable to the constraint of type 'A', but 'A' could be instantiated with a different subtype\n\n return /*#__PURE__*/React.createElement(Context.Provider, {\n value: contextValue\n }, children);\n}\n\nexport default Provider;","import { ReactReduxContext } from '../components/Context';\nimport { useReduxContext as useDefaultReduxContext, createReduxContextHook } from './useReduxContext';\n/**\r\n * Hook factory, which creates a `useStore` hook bound to a given context.\r\n *\r\n * @param {React.Context} [context=ReactReduxContext] Context passed to your ``.\r\n * @returns {Function} A `useStore` hook bound to the specified context.\r\n */\n\nexport function createStoreHook(context = ReactReduxContext) {\n const useReduxContext = // @ts-ignore\n context === ReactReduxContext ? useDefaultReduxContext : // @ts-ignore\n createReduxContextHook(context);\n return function useStore() {\n const {\n store\n } = useReduxContext(); // @ts-ignore\n\n return store;\n };\n}\n/**\r\n * A hook to access the redux store.\r\n *\r\n * @returns {any} the redux store\r\n *\r\n * @example\r\n *\r\n * import React from 'react'\r\n * import { useStore } from 'react-redux'\r\n *\r\n * export const ExampleComponent = () => {\r\n * const store = useStore()\r\n * return
{store.getState()}
\r\n * }\r\n */\n\nexport const useStore = /*#__PURE__*/createStoreHook();","import { ReactReduxContext } from '../components/Context';\nimport { useStore as useDefaultStore, createStoreHook } from './useStore';\n/**\r\n * Hook factory, which creates a `useDispatch` hook bound to a given context.\r\n *\r\n * @param {React.Context} [context=ReactReduxContext] Context passed to your ``.\r\n * @returns {Function} A `useDispatch` hook bound to the specified context.\r\n */\n\nexport function createDispatchHook(context = ReactReduxContext) {\n const useStore = // @ts-ignore\n context === ReactReduxContext ? useDefaultStore : createStoreHook(context);\n return function useDispatch() {\n const store = useStore(); // @ts-ignore\n\n return store.dispatch;\n };\n}\n/**\r\n * A hook to access the redux `dispatch` function.\r\n *\r\n * @returns {any|function} redux store's `dispatch` function\r\n *\r\n * @example\r\n *\r\n * import React, { useCallback } from 'react'\r\n * import { useDispatch } from 'react-redux'\r\n *\r\n * export const CounterComponent = ({ value }) => {\r\n * const dispatch = useDispatch()\r\n * const increaseCounter = useCallback(() => dispatch({ type: 'increase-counter' }), [])\r\n * return (\r\n *
\r\n * {value}\r\n * \r\n *
\r\n * )\r\n * }\r\n */\n\nexport const useDispatch = /*#__PURE__*/createDispatchHook();","// The primary entry point assumes we're working with standard ReactDOM/RN, but\n// older versions that do not include `useSyncExternalStore` (React 16.9 - 17.x).\n// Because of that, the useSyncExternalStore compat shim is needed.\nimport { useSyncExternalStore } from 'use-sync-external-store/shim';\nimport { useSyncExternalStoreWithSelector } from 'use-sync-external-store/shim/with-selector';\nimport { unstable_batchedUpdates as batch } from './utils/reactBatchedUpdates';\nimport { setBatch } from './utils/batch';\nimport { initializeUseSelector } from './hooks/useSelector';\nimport { initializeConnect } from './components/connect';\ninitializeUseSelector(useSyncExternalStoreWithSelector);\ninitializeConnect(useSyncExternalStore); // Enable batched updates in our subscriptions for use\n// with standard React renderers (ReactDOM, React Native)\n\nsetBatch(batch);\nexport { batch };\nexport * from './exports';","/**\n * @license React\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var b=Symbol.for(\"react.element\"),c=Symbol.for(\"react.portal\"),d=Symbol.for(\"react.fragment\"),e=Symbol.for(\"react.strict_mode\"),f=Symbol.for(\"react.profiler\"),g=Symbol.for(\"react.provider\"),h=Symbol.for(\"react.context\"),k=Symbol.for(\"react.server_context\"),l=Symbol.for(\"react.forward_ref\"),m=Symbol.for(\"react.suspense\"),n=Symbol.for(\"react.suspense_list\"),p=Symbol.for(\"react.memo\"),q=Symbol.for(\"react.lazy\"),t=Symbol.for(\"react.offscreen\"),u;u=Symbol.for(\"react.module.reference\");\nfunction v(a){if(\"object\"===typeof a&&null!==a){var r=a.$$typeof;switch(r){case b:switch(a=a.type,a){case d:case f:case e:case m:case n:return a;default:switch(a=a&&a.$$typeof,a){case k:case h:case l:case q:case p:case g:return a;default:return r}}case c:return r}}}exports.ContextConsumer=h;exports.ContextProvider=g;exports.Element=b;exports.ForwardRef=l;exports.Fragment=d;exports.Lazy=q;exports.Memo=p;exports.Portal=c;exports.Profiler=f;exports.StrictMode=e;exports.Suspense=m;\nexports.SuspenseList=n;exports.isAsyncMode=function(){return!1};exports.isConcurrentMode=function(){return!1};exports.isContextConsumer=function(a){return v(a)===h};exports.isContextProvider=function(a){return v(a)===g};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===b};exports.isForwardRef=function(a){return v(a)===l};exports.isFragment=function(a){return v(a)===d};exports.isLazy=function(a){return v(a)===q};exports.isMemo=function(a){return v(a)===p};\nexports.isPortal=function(a){return v(a)===c};exports.isProfiler=function(a){return v(a)===f};exports.isStrictMode=function(a){return v(a)===e};exports.isSuspense=function(a){return v(a)===m};exports.isSuspenseList=function(a){return v(a)===n};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===d||a===f||a===e||a===m||a===n||a===t||\"object\"===typeof a&&null!==a&&(a.$$typeof===q||a.$$typeof===p||a.$$typeof===g||a.$$typeof===h||a.$$typeof===l||a.$$typeof===u||void 0!==a.getModuleId)?!0:!1};exports.typeOf=v;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","/**\n * @license React\n * use-sync-external-store-shim.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar React = require(\"react\");\nfunction is(x, y) {\n return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n}\nvar objectIs = \"function\" === typeof Object.is ? Object.is : is,\n useState = React.useState,\n useEffect = React.useEffect,\n useLayoutEffect = React.useLayoutEffect,\n useDebugValue = React.useDebugValue;\nfunction useSyncExternalStore$2(subscribe, getSnapshot) {\n var value = getSnapshot(),\n _useState = useState({ inst: { value: value, getSnapshot: getSnapshot } }),\n inst = _useState[0].inst,\n forceUpdate = _useState[1];\n useLayoutEffect(\n function () {\n inst.value = value;\n inst.getSnapshot = getSnapshot;\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n },\n [subscribe, value, getSnapshot]\n );\n useEffect(\n function () {\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n return subscribe(function () {\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n });\n },\n [subscribe]\n );\n useDebugValue(value);\n return value;\n}\nfunction checkIfSnapshotChanged(inst) {\n var latestGetSnapshot = inst.getSnapshot;\n inst = inst.value;\n try {\n var nextValue = latestGetSnapshot();\n return !objectIs(inst, nextValue);\n } catch (error) {\n return !0;\n }\n}\nfunction useSyncExternalStore$1(subscribe, getSnapshot) {\n return getSnapshot();\n}\nvar shim =\n \"undefined\" === typeof window ||\n \"undefined\" === typeof window.document ||\n \"undefined\" === typeof window.document.createElement\n ? useSyncExternalStore$1\n : useSyncExternalStore$2;\nexports.useSyncExternalStore =\n void 0 !== React.useSyncExternalStore ? React.useSyncExternalStore : shim;\n","/**\n * @license React\n * use-sync-external-store-shim/with-selector.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar React = require(\"react\"),\n shim = require(\"use-sync-external-store/shim\");\nfunction is(x, y) {\n return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n}\nvar objectIs = \"function\" === typeof Object.is ? Object.is : is,\n useSyncExternalStore = shim.useSyncExternalStore,\n useRef = React.useRef,\n useEffect = React.useEffect,\n useMemo = React.useMemo,\n useDebugValue = React.useDebugValue;\nexports.useSyncExternalStoreWithSelector = function (\n subscribe,\n getSnapshot,\n getServerSnapshot,\n selector,\n isEqual\n) {\n var instRef = useRef(null);\n if (null === instRef.current) {\n var inst = { hasValue: !1, value: null };\n instRef.current = inst;\n } else inst = instRef.current;\n instRef = useMemo(\n function () {\n function memoizedSelector(nextSnapshot) {\n if (!hasMemo) {\n hasMemo = !0;\n memoizedSnapshot = nextSnapshot;\n nextSnapshot = selector(nextSnapshot);\n if (void 0 !== isEqual && inst.hasValue) {\n var currentSelection = inst.value;\n if (isEqual(currentSelection, nextSnapshot))\n return (memoizedSelection = currentSelection);\n }\n return (memoizedSelection = nextSnapshot);\n }\n currentSelection = memoizedSelection;\n if (objectIs(memoizedSnapshot, nextSnapshot)) return currentSelection;\n var nextSelection = selector(nextSnapshot);\n if (void 0 !== isEqual && isEqual(currentSelection, nextSelection))\n return (memoizedSnapshot = nextSnapshot), currentSelection;\n memoizedSnapshot = nextSnapshot;\n return (memoizedSelection = nextSelection);\n }\n var hasMemo = !1,\n memoizedSnapshot,\n memoizedSelection,\n maybeGetServerSnapshot =\n void 0 === getServerSnapshot ? null : getServerSnapshot;\n return [\n function () {\n return memoizedSelector(getSnapshot());\n },\n null === maybeGetServerSnapshot\n ? void 0\n : function () {\n return memoizedSelector(maybeGetServerSnapshot());\n }\n ];\n },\n [getSnapshot, getServerSnapshot, selector, isEqual]\n );\n var value = useSyncExternalStore(subscribe, instRef[0], instRef[1]);\n useEffect(\n function () {\n inst.hasValue = !0;\n inst.value = value;\n },\n [value]\n );\n useDebugValue(value);\n return value;\n};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('../cjs/use-sync-external-store-shim.production.js');\n} else {\n module.exports = require('../cjs/use-sync-external-store-shim.development.js');\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('../cjs/use-sync-external-store-shim/with-selector.production.js');\n} else {\n module.exports = require('../cjs/use-sync-external-store-shim/with-selector.development.js');\n}\n","function _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (-1 !== e.indexOf(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nexport { _objectWithoutPropertiesLoose as default };"],"names":["reactIs","REACT_STATICS","KNOWN_STATICS","MEMO_STATICS","TYPE_STATICS","getStatics","component","defineProperty","Object","getOwnPropertyNames","getOwnPropertySymbols","getOwnPropertyDescriptor","getPrototypeOf","objectPrototype","module","hoistNonReactStatics","targetComponent","sourceComponent","blacklist","inheritedComponent","keys","targetStatics","sourceStatics","i","key","descriptor","e","b","Symbol","c","d","f","g","h","k","l","m","n","p","q","r","t","v","w","x","y","z","a","u","A","exports","callback","getBatch","ContextKey","gT","globalThis","ReactReduxContext","getContext","_gT$ContextKey","contextMap","Map","realContext","createReduxContextHook","context","notInitialized","Error","useSyncExternalStoreWithSelector","refEquality","createSelectorHook","useReduxContext","selector","equalityFnOrOptions","equalityFn","stabilityCheck","noopCheck","store","subscription","getServerState","globalStabilityCheck","globalNoopCheck","wrappedSelector","state","selectedState","_excluded","wrapMapToPropsConstant","getConstant","dispatch","constant","constantSelector","getDependsOnOwnProps","mapToProps","Boolean","wrapMapToPropsFunc","methodName","displayName","proxy","stateOrDispatch","ownProps","undefined","props","createInvalidArgFactory","arg","name","options","defaultMergeProps","stateProps","dispatchProps","nullListeners","createSubscription","parentSub","unsubscribe","listeners","subscriptionsAmount","selfSubscribed","handleChangeWrapper","trySubscribe","createListenerCollection","batch","first","last","listener","isSubscribed","tryUnsubscribe","addNestedSub","cleanupListener","removed","notifyNestedSubs","useIsomorphicLayoutEffect","canUseDOM","window","is","shallowEqual","objA","objB","keysA","keysB","useSyncExternalStore","NO_SUBSCRIPTION_ARRAY","captureWrapperProps","lastWrapperProps","lastChildProps","renderIsScheduled","wrapperProps","childPropsFromStoreUpdate","strictEqual","mapStateToProps","mapDispatchToProps","mergeProps","pure","areStatesEqual","areOwnPropsEqual","areStatePropsEqual","areMergedPropsEqual","forwardRef","initMapStateToProps","initMapDispatchToProps","bindActionCreators","actionCreators","boundActionCreators","actionCreator","args","initMergeProps","mergedProps","hasRunOnce","nextMergedProps","shouldHandleStateChanges","WrappedComponent","wrappedComponentName","selectorFactoryOptions","ConnectFunction","effectArgs","actualChildProps","propsContext","reactReduxForwardedRef","ContextToUse","contextValue","didStoreComeFromProps","didStoreComeFromContext","childPropsSelector","_ref","pureFinalPropsSelectorFactory","hasRunAtLeastOnce","nextState","nextOwnProps","handleSubsequentCalls","propsChanged","stateChanged","handleNewState","nextStateProps","statePropsChanged","overriddenContextValue","isMounted","latestSubscriptionCallbackError","actualChildPropsSelector","subscribeForReact","reactListener","subscribeUpdates","additionalSubscribeListener","didUnsubscribe","lastThrownError","checkForUpdates","newChildProps","error","latestStoreState","effectFunc","dependencies","err","renderedWrappedComponent","_Connect","Connect","_forwarded","ref","forwarded","children","serverState","previousState","Context","createStoreHook","createDispatchHook","useStore","React","objectIs","useState","useEffect","useLayoutEffect","useDebugValue","checkIfSnapshotChanged","inst","latestGetSnapshot","nextValue","shim","subscribe","getSnapshot","value","_useState","forceUpdate","useRef","useMemo","getServerSnapshot","isEqual","instRef","memoizedSelector","nextSnapshot","hasMemo","memoizedSnapshot","currentSelection","memoizedSelection","nextSelection","maybeGetServerSnapshot","_objectWithoutPropertiesLoose"],"mappings":"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"}