{"version":3,"file":"js/vendor~application-e5bca7e4-a704932bee71d04890f7.js","mappings":"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","sources":["webpack://biib/./node_modules/react/cjs/react.production.min.js","webpack://biib/./node_modules/react-router/dist/index.js","webpack://biib/./node_modules/react-router-dom/dist/index.js","webpack://biib/./node_modules/react/index.js"],"sourcesContent":["/**\n * @license React\n * react.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 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.memo\"),y=Symbol.for(\"react.lazy\"),z=Symbol.iterator;function A(a){if(null===a||\"object\"!==typeof a)return null;a=z&&a[z]||a[\"@@iterator\"];return\"function\"===typeof a?a:null}\nvar B={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C=Object.assign,D={};function E(a,b,e){this.props=a;this.context=b;this.refs=D;this.updater=e||B}E.prototype.isReactComponent={};\nE.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\")};E.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,\"forceUpdate\")};function F(){}F.prototype=E.prototype;function G(a,b,e){this.props=a;this.context=b;this.refs=D;this.updater=e||B}var H=G.prototype=new F;\nH.constructor=G;C(H,E.prototype);H.isPureReactComponent=!0;var I=Array.isArray,J=Object.prototype.hasOwnProperty,K={current:null},L={key:!0,ref:!0,__self:!0,__source:!0};\nfunction M(a,b,e){var d,c={},k=null,h=null;if(null!=b)for(d in void 0!==b.ref&&(h=b.ref),void 0!==b.key&&(k=\"\"+b.key),b)J.call(b,d)&&!L.hasOwnProperty(d)&&(c[d]=b[d]);var g=arguments.length-2;if(1===g)c.children=e;else if(1 {\n inst.value = value;\n inst.getSnapshot = getSnapshot; // Whenever getSnapshot or subscribe changes, we need to check in the\n // commit phase if there was an interleaved mutation. In concurrent mode\n // this can happen all the time, but even in synchronous mode, an earlier\n // effect may have mutated the store.\n\n if (checkIfSnapshotChanged(inst)) {\n // Force a re-render.\n forceUpdate({\n inst\n });\n } // eslint-disable-next-line react-hooks/exhaustive-deps\n\n }, [subscribe, value, getSnapshot]);\n useEffect(() => {\n // Check for changes right before subscribing. Subsequent changes will be\n // detected in the subscription handler.\n if (checkIfSnapshotChanged(inst)) {\n // Force a re-render.\n forceUpdate({\n inst\n });\n }\n\n const handleStoreChange = () => {\n // TODO: Because there is no cross-renderer API for batching updates, it's\n // up to the consumer of this library to wrap their subscription event\n // with unstable_batchedUpdates. Should we try to detect when this isn't\n // the case and print a warning in development?\n // The store changed. Check if the snapshot changed since the last time we\n // read from the store.\n if (checkIfSnapshotChanged(inst)) {\n // Force a re-render.\n forceUpdate({\n inst\n });\n }\n }; // Subscribe to the store and return a clean-up function.\n\n\n return subscribe(handleStoreChange); // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [subscribe]);\n useDebugValue(value);\n return value;\n}\n\nfunction checkIfSnapshotChanged(inst) {\n const latestGetSnapshot = inst.getSnapshot;\n const prevValue = inst.value;\n\n try {\n const nextValue = latestGetSnapshot();\n return !is(prevValue, nextValue);\n } catch (error) {\n return true;\n }\n}\n\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 * @flow\n */\nfunction useSyncExternalStore$1(subscribe, getSnapshot, getServerSnapshot) {\n // Note: The shim does not use getServerSnapshot, because pre-18 versions of\n // React do not expose a way to check if we're hydrating. So users of the shim\n // will need to track that themselves and return the correct value\n // from `getSnapshot`.\n return getSnapshot();\n}\n\n/**\n * Inlined into the react-router repo since use-sync-external-store does not\n * provide a UMD-compatible package, so we need this to be able to distribute\n * UMD react-router bundles\n */\nconst canUseDOM = !!(typeof window !== \"undefined\" && typeof window.document !== \"undefined\" && typeof window.document.createElement !== \"undefined\");\nconst isServerEnvironment = !canUseDOM;\nconst shim = isServerEnvironment ? useSyncExternalStore$1 : useSyncExternalStore$2;\nconst useSyncExternalStore = \"useSyncExternalStore\" in React ? (module => module.useSyncExternalStore)(React) : shim;\n\n// Contexts for data routers\nconst DataStaticRouterContext = /*#__PURE__*/React.createContext(null);\n\nif (process.env.NODE_ENV !== \"production\") {\n DataStaticRouterContext.displayName = \"DataStaticRouterContext\";\n}\n\nconst DataRouterContext = /*#__PURE__*/React.createContext(null);\n\nif (process.env.NODE_ENV !== \"production\") {\n DataRouterContext.displayName = \"DataRouter\";\n}\n\nconst DataRouterStateContext = /*#__PURE__*/React.createContext(null);\n\nif (process.env.NODE_ENV !== \"production\") {\n DataRouterStateContext.displayName = \"DataRouterState\";\n}\n\nconst AwaitContext = /*#__PURE__*/React.createContext(null);\n\nif (process.env.NODE_ENV !== \"production\") {\n AwaitContext.displayName = \"Await\";\n}\n\nconst NavigationContext = /*#__PURE__*/React.createContext(null);\n\nif (process.env.NODE_ENV !== \"production\") {\n NavigationContext.displayName = \"Navigation\";\n}\n\nconst LocationContext = /*#__PURE__*/React.createContext(null);\n\nif (process.env.NODE_ENV !== \"production\") {\n LocationContext.displayName = \"Location\";\n}\n\nconst RouteContext = /*#__PURE__*/React.createContext({\n outlet: null,\n matches: []\n});\n\nif (process.env.NODE_ENV !== \"production\") {\n RouteContext.displayName = \"Route\";\n}\n\nconst RouteErrorContext = /*#__PURE__*/React.createContext(null);\n\nif (process.env.NODE_ENV !== \"production\") {\n RouteErrorContext.displayName = \"RouteError\";\n}\n\n/**\n * Returns the full href for the given \"to\" value. This is useful for building\n * custom links that are also accessible and preserve right-click behavior.\n *\n * @see https://reactrouter.com/docs/en/v6/hooks/use-href\n */\n\nfunction useHref(to, _temp) {\n let {\n relative\n } = _temp === void 0 ? {} : _temp;\n !useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, // TODO: This error is probably because they somehow have 2 versions of the\n // router loaded. We can help them understand how to avoid that.\n \"useHref() may be used only in the context of a component.\") : invariant(false) : void 0;\n let {\n basename,\n navigator\n } = React.useContext(NavigationContext);\n let {\n hash,\n pathname,\n search\n } = useResolvedPath(to, {\n relative\n });\n let joinedPathname = pathname; // If we're operating within a basename, prepend it to the pathname prior\n // to creating the href. If this is a root navigation, then just use the raw\n // basename which allows the basename to have full control over the presence\n // of a trailing slash on root links\n\n if (basename !== \"/\") {\n joinedPathname = pathname === \"/\" ? basename : joinPaths([basename, pathname]);\n }\n\n return navigator.createHref({\n pathname: joinedPathname,\n search,\n hash\n });\n}\n/**\n * Returns true if this component is a descendant of a .\n *\n * @see https://reactrouter.com/docs/en/v6/hooks/use-in-router-context\n */\n\nfunction useInRouterContext() {\n return React.useContext(LocationContext) != null;\n}\n/**\n * Returns the current location object, which represents the current URL in web\n * browsers.\n *\n * Note: If you're using this it may mean you're doing some of your own\n * \"routing\" in your app, and we'd like to know what your use case is. We may\n * be able to provide something higher-level to better suit your needs.\n *\n * @see https://reactrouter.com/docs/en/v6/hooks/use-location\n */\n\nfunction useLocation() {\n !useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, // TODO: This error is probably because they somehow have 2 versions of the\n // router loaded. We can help them understand how to avoid that.\n \"useLocation() may be used only in the context of a component.\") : invariant(false) : void 0;\n return React.useContext(LocationContext).location;\n}\n/**\n * Returns the current navigation action which describes how the router came to\n * the current location, either by a pop, push, or replace on the history stack.\n *\n * @see https://reactrouter.com/docs/en/v6/hooks/use-navigation-type\n */\n\nfunction useNavigationType() {\n return React.useContext(LocationContext).navigationType;\n}\n/**\n * Returns true if the URL for the given \"to\" value matches the current URL.\n * This is useful for components that need to know \"active\" state, e.g.\n * .\n *\n * @see https://reactrouter.com/docs/en/v6/hooks/use-match\n */\n\nfunction useMatch(pattern) {\n !useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, // TODO: This error is probably because they somehow have 2 versions of the\n // router loaded. We can help them understand how to avoid that.\n \"useMatch() may be used only in the context of a component.\") : invariant(false) : void 0;\n let {\n pathname\n } = useLocation();\n return React.useMemo(() => matchPath(pattern, pathname), [pathname, pattern]);\n}\n/**\n * The interface for the navigate() function returned from useNavigate().\n */\n\n/**\n * Returns an imperative method for changing the location. Used by s, but\n * may also be used by other elements to change the location.\n *\n * @see https://reactrouter.com/docs/en/v6/hooks/use-navigate\n */\nfunction useNavigate() {\n !useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, // TODO: This error is probably because they somehow have 2 versions of the\n // router loaded. We can help them understand how to avoid that.\n \"useNavigate() may be used only in the context of a component.\") : invariant(false) : void 0;\n let {\n basename,\n navigator\n } = React.useContext(NavigationContext);\n let {\n matches\n } = React.useContext(RouteContext);\n let {\n pathname: locationPathname\n } = useLocation();\n let routePathnamesJson = JSON.stringify(UNSAFE_getPathContributingMatches(matches).map(match => match.pathnameBase));\n let activeRef = React.useRef(false);\n React.useEffect(() => {\n activeRef.current = true;\n });\n let navigate = React.useCallback(function (to, options) {\n if (options === void 0) {\n options = {};\n }\n\n process.env.NODE_ENV !== \"production\" ? warning(activeRef.current, \"You should call navigate() in a React.useEffect(), not when \" + \"your component is first rendered.\") : void 0;\n if (!activeRef.current) return;\n\n if (typeof to === \"number\") {\n navigator.go(to);\n return;\n }\n\n let path = resolveTo(to, JSON.parse(routePathnamesJson), locationPathname, options.relative === \"path\"); // If we're operating within a basename, prepend it to the pathname prior\n // to handing off to history. If this is a root navigation, then we\n // navigate to the raw basename which allows the basename to have full\n // control over the presence of a trailing slash on root links\n\n if (basename !== \"/\") {\n path.pathname = path.pathname === \"/\" ? basename : joinPaths([basename, path.pathname]);\n }\n\n (!!options.replace ? navigator.replace : navigator.push)(path, options.state, options);\n }, [basename, navigator, routePathnamesJson, locationPathname]);\n return navigate;\n}\nconst OutletContext = /*#__PURE__*/React.createContext(null);\n/**\n * Returns the context (if provided) for the child route at this level of the route\n * hierarchy.\n * @see https://reactrouter.com/docs/en/v6/hooks/use-outlet-context\n */\n\nfunction useOutletContext() {\n return React.useContext(OutletContext);\n}\n/**\n * Returns the element for the child route at this level of the route\n * hierarchy. Used internally by to render child routes.\n *\n * @see https://reactrouter.com/docs/en/v6/hooks/use-outlet\n */\n\nfunction useOutlet(context) {\n let outlet = React.useContext(RouteContext).outlet;\n\n if (outlet) {\n return /*#__PURE__*/React.createElement(OutletContext.Provider, {\n value: context\n }, outlet);\n }\n\n return outlet;\n}\n/**\n * Returns an object of key/value pairs of the dynamic params from the current\n * URL that were matched by the route path.\n *\n * @see https://reactrouter.com/docs/en/v6/hooks/use-params\n */\n\nfunction useParams() {\n let {\n matches\n } = React.useContext(RouteContext);\n let routeMatch = matches[matches.length - 1];\n return routeMatch ? routeMatch.params : {};\n}\n/**\n * Resolves the pathname of the given `to` value against the current location.\n *\n * @see https://reactrouter.com/docs/en/v6/hooks/use-resolved-path\n */\n\nfunction useResolvedPath(to, _temp2) {\n let {\n relative\n } = _temp2 === void 0 ? {} : _temp2;\n let {\n matches\n } = React.useContext(RouteContext);\n let {\n pathname: locationPathname\n } = useLocation();\n let routePathnamesJson = JSON.stringify(UNSAFE_getPathContributingMatches(matches).map(match => match.pathnameBase));\n return React.useMemo(() => resolveTo(to, JSON.parse(routePathnamesJson), locationPathname, relative === \"path\"), [to, routePathnamesJson, locationPathname, relative]);\n}\n/**\n * Returns the element of the route that matched the current location, prepared\n * with the correct context to render the remainder of the route tree. Route\n * elements in the tree must render an to render their child route's\n * element.\n *\n * @see https://reactrouter.com/docs/en/v6/hooks/use-routes\n */\n\nfunction useRoutes(routes, locationArg) {\n !useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, // TODO: This error is probably because they somehow have 2 versions of the\n // router loaded. We can help them understand how to avoid that.\n \"useRoutes() may be used only in the context of a component.\") : invariant(false) : void 0;\n let dataRouterStateContext = React.useContext(DataRouterStateContext);\n let {\n matches: parentMatches\n } = React.useContext(RouteContext);\n let routeMatch = parentMatches[parentMatches.length - 1];\n let parentParams = routeMatch ? routeMatch.params : {};\n let parentPathname = routeMatch ? routeMatch.pathname : \"/\";\n let parentPathnameBase = routeMatch ? routeMatch.pathnameBase : \"/\";\n let parentRoute = routeMatch && routeMatch.route;\n\n if (process.env.NODE_ENV !== \"production\") {\n // You won't get a warning about 2 different under a \n // without a trailing *, but this is a best-effort warning anyway since we\n // cannot even give the warning unless they land at the parent route.\n //\n // Example:\n //\n // \n // {/* This route path MUST end with /* because otherwise\n // it will never match /blog/post/123 */}\n // } />\n // } />\n // \n //\n // function Blog() {\n // return (\n // \n // } />\n // \n // );\n // }\n let parentPath = parentRoute && parentRoute.path || \"\";\n warningOnce(parentPathname, !parentRoute || parentPath.endsWith(\"*\"), \"You rendered descendant (or called `useRoutes()`) at \" + (\"\\\"\" + parentPathname + \"\\\" (under ) but the \") + \"parent route path has no trailing \\\"*\\\". This means if you navigate \" + \"deeper, the parent won't match anymore and therefore the child \" + \"routes will never render.\\n\\n\" + (\"Please change the parent to .\"));\n }\n\n let locationFromContext = useLocation();\n let location;\n\n if (locationArg) {\n var _parsedLocationArg$pa;\n\n let parsedLocationArg = typeof locationArg === \"string\" ? parsePath(locationArg) : locationArg;\n !(parentPathnameBase === \"/\" || ((_parsedLocationArg$pa = parsedLocationArg.pathname) == null ? void 0 : _parsedLocationArg$pa.startsWith(parentPathnameBase))) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"When overriding the location using `` or `useRoutes(routes, location)`, \" + \"the location pathname must begin with the portion of the URL pathname that was \" + (\"matched by all parent routes. The current pathname base is \\\"\" + parentPathnameBase + \"\\\" \") + (\"but pathname \\\"\" + parsedLocationArg.pathname + \"\\\" was given in the `location` prop.\")) : invariant(false) : void 0;\n location = parsedLocationArg;\n } else {\n location = locationFromContext;\n }\n\n let pathname = location.pathname || \"/\";\n let remainingPathname = parentPathnameBase === \"/\" ? pathname : pathname.slice(parentPathnameBase.length) || \"/\";\n let matches = matchRoutes(routes, {\n pathname: remainingPathname\n });\n\n if (process.env.NODE_ENV !== \"production\") {\n process.env.NODE_ENV !== \"production\" ? warning(parentRoute || matches != null, \"No routes matched location \\\"\" + location.pathname + location.search + location.hash + \"\\\" \") : void 0;\n process.env.NODE_ENV !== \"production\" ? warning(matches == null || matches[matches.length - 1].route.element !== undefined, \"Matched leaf route at location \\\"\" + location.pathname + location.search + location.hash + \"\\\" does not have an element. \" + \"This means it will render an with a null value by default resulting in an \\\"empty\\\" page.\") : void 0;\n }\n\n let renderedMatches = _renderMatches(matches && matches.map(match => Object.assign({}, match, {\n params: Object.assign({}, parentParams, match.params),\n pathname: joinPaths([parentPathnameBase, match.pathname]),\n pathnameBase: match.pathnameBase === \"/\" ? parentPathnameBase : joinPaths([parentPathnameBase, match.pathnameBase])\n })), parentMatches, dataRouterStateContext || undefined); // When a user passes in a `locationArg`, the associated routes need to\n // be wrapped in a new `LocationContext.Provider` in order for `useLocation`\n // to use the scoped location instead of the global location.\n\n\n if (locationArg && renderedMatches) {\n return /*#__PURE__*/React.createElement(LocationContext.Provider, {\n value: {\n location: _extends({\n pathname: \"/\",\n search: \"\",\n hash: \"\",\n state: null,\n key: \"default\"\n }, location),\n navigationType: Action.Pop\n }\n }, renderedMatches);\n }\n\n return renderedMatches;\n}\n\nfunction DefaultErrorElement() {\n let error = useRouteError();\n let message = isRouteErrorResponse(error) ? error.status + \" \" + error.statusText : error instanceof Error ? error.message : JSON.stringify(error);\n let stack = error instanceof Error ? error.stack : null;\n let lightgrey = \"rgba(200,200,200, 0.5)\";\n let preStyles = {\n padding: \"0.5rem\",\n backgroundColor: lightgrey\n };\n let codeStyles = {\n padding: \"2px 4px\",\n backgroundColor: lightgrey\n };\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"h2\", null, \"Unhandled Thrown Error!\"), /*#__PURE__*/React.createElement(\"h3\", {\n style: {\n fontStyle: \"italic\"\n }\n }, message), stack ? /*#__PURE__*/React.createElement(\"pre\", {\n style: preStyles\n }, stack) : null, /*#__PURE__*/React.createElement(\"p\", null, \"\\uD83D\\uDCBF Hey developer \\uD83D\\uDC4B\"), /*#__PURE__*/React.createElement(\"p\", null, \"You can provide a way better UX than this when your app throws errors by providing your own\\xA0\", /*#__PURE__*/React.createElement(\"code\", {\n style: codeStyles\n }, \"errorElement\"), \" props on\\xA0\", /*#__PURE__*/React.createElement(\"code\", {\n style: codeStyles\n }, \"\")));\n}\n\nclass RenderErrorBoundary extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n location: props.location,\n error: props.error\n };\n }\n\n static getDerivedStateFromError(error) {\n return {\n error: error\n };\n }\n\n static getDerivedStateFromProps(props, state) {\n // When we get into an error state, the user will likely click \"back\" to the\n // previous page that didn't have an error. Because this wraps the entire\n // application, that will have no effect--the error page continues to display.\n // This gives us a mechanism to recover from the error when the location changes.\n //\n // Whether we're in an error state or not, we update the location in state\n // so that when we are in an error state, it gets reset when a new location\n // comes in and the user recovers from the error.\n if (state.location !== props.location) {\n return {\n error: props.error,\n location: props.location\n };\n } // If we're not changing locations, preserve the location but still surface\n // any new errors that may come through. We retain the existing error, we do\n // this because the error provided from the app state may be cleared without\n // the location changing.\n\n\n return {\n error: props.error || state.error,\n location: state.location\n };\n }\n\n componentDidCatch(error, errorInfo) {\n console.error(\"React Router caught the following error during render\", error, errorInfo);\n }\n\n render() {\n return this.state.error ? /*#__PURE__*/React.createElement(RouteErrorContext.Provider, {\n value: this.state.error,\n children: this.props.component\n }) : this.props.children;\n }\n\n}\n\nfunction RenderedRoute(_ref) {\n let {\n routeContext,\n match,\n children\n } = _ref;\n let dataStaticRouterContext = React.useContext(DataStaticRouterContext); // Track how deep we got in our render pass to emulate SSR componentDidCatch\n // in a DataStaticRouter\n\n if (dataStaticRouterContext && match.route.errorElement) {\n dataStaticRouterContext._deepestRenderedBoundaryId = match.route.id;\n }\n\n return /*#__PURE__*/React.createElement(RouteContext.Provider, {\n value: routeContext\n }, children);\n}\n\nfunction _renderMatches(matches, parentMatches, dataRouterState) {\n if (parentMatches === void 0) {\n parentMatches = [];\n }\n\n if (matches == null) {\n if (dataRouterState != null && dataRouterState.errors) {\n // Don't bail if we have data router errors so we can render them in the\n // boundary. Use the pre-matched (or shimmed) matches\n matches = dataRouterState.matches;\n } else {\n return null;\n }\n }\n\n let renderedMatches = matches; // If we have data errors, trim matches to the highest error boundary\n\n let errors = dataRouterState == null ? void 0 : dataRouterState.errors;\n\n if (errors != null) {\n let errorIndex = renderedMatches.findIndex(m => m.route.id && (errors == null ? void 0 : errors[m.route.id]));\n !(errorIndex >= 0) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Could not find a matching route for the current errors: \" + errors) : invariant(false) : void 0;\n renderedMatches = renderedMatches.slice(0, Math.min(renderedMatches.length, errorIndex + 1));\n }\n\n return renderedMatches.reduceRight((outlet, match, index) => {\n let error = match.route.id ? errors == null ? void 0 : errors[match.route.id] : null; // Only data routers handle errors\n\n let errorElement = dataRouterState ? match.route.errorElement || /*#__PURE__*/React.createElement(DefaultErrorElement, null) : null;\n\n let getChildren = () => /*#__PURE__*/React.createElement(RenderedRoute, {\n match: match,\n routeContext: {\n outlet,\n matches: parentMatches.concat(renderedMatches.slice(0, index + 1))\n }\n }, error ? errorElement : match.route.element !== undefined ? match.route.element : outlet); // Only wrap in an error boundary within data router usages when we have an\n // errorElement on this route. Otherwise let it bubble up to an ancestor\n // errorElement\n\n\n return dataRouterState && (match.route.errorElement || index === 0) ? /*#__PURE__*/React.createElement(RenderErrorBoundary, {\n location: dataRouterState.location,\n component: errorElement,\n error: error,\n children: getChildren()\n }) : getChildren();\n }, null);\n}\nvar DataRouterHook;\n\n(function (DataRouterHook) {\n DataRouterHook[\"UseRevalidator\"] = \"useRevalidator\";\n})(DataRouterHook || (DataRouterHook = {}));\n\nvar DataRouterStateHook;\n\n(function (DataRouterStateHook) {\n DataRouterStateHook[\"UseLoaderData\"] = \"useLoaderData\";\n DataRouterStateHook[\"UseActionData\"] = \"useActionData\";\n DataRouterStateHook[\"UseRouteError\"] = \"useRouteError\";\n DataRouterStateHook[\"UseNavigation\"] = \"useNavigation\";\n DataRouterStateHook[\"UseRouteLoaderData\"] = \"useRouteLoaderData\";\n DataRouterStateHook[\"UseMatches\"] = \"useMatches\";\n DataRouterStateHook[\"UseRevalidator\"] = \"useRevalidator\";\n})(DataRouterStateHook || (DataRouterStateHook = {}));\n\nfunction getDataRouterConsoleError(hookName) {\n return hookName + \" must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.\";\n}\n\nfunction useDataRouterContext(hookName) {\n let ctx = React.useContext(DataRouterContext);\n !ctx ? process.env.NODE_ENV !== \"production\" ? invariant(false, getDataRouterConsoleError(hookName)) : invariant(false) : void 0;\n return ctx;\n}\n\nfunction useDataRouterState(hookName) {\n let state = React.useContext(DataRouterStateContext);\n !state ? process.env.NODE_ENV !== \"production\" ? invariant(false, getDataRouterConsoleError(hookName)) : invariant(false) : void 0;\n return state;\n}\n/**\n * Returns the current navigation, defaulting to an \"idle\" navigation when\n * no navigation is in progress\n */\n\n\nfunction useNavigation() {\n let state = useDataRouterState(DataRouterStateHook.UseNavigation);\n return state.navigation;\n}\n/**\n * Returns a revalidate function for manually triggering revalidation, as well\n * as the current state of any manual revalidations\n */\n\nfunction useRevalidator() {\n let dataRouterContext = useDataRouterContext(DataRouterHook.UseRevalidator);\n let state = useDataRouterState(DataRouterStateHook.UseRevalidator);\n return {\n revalidate: dataRouterContext.router.revalidate,\n state: state.revalidation\n };\n}\n/**\n * Returns the active route matches, useful for accessing loaderData for\n * parent/child routes or the route \"handle\" property\n */\n\nfunction useMatches() {\n let {\n matches,\n loaderData\n } = useDataRouterState(DataRouterStateHook.UseMatches);\n return React.useMemo(() => matches.map(match => {\n let {\n pathname,\n params\n } = match; // Note: This structure matches that created by createUseMatchesMatch\n // in the @remix-run/router , so if you change this please also change\n // that :) Eventually we'll DRY this up\n\n return {\n id: match.route.id,\n pathname,\n params,\n data: loaderData[match.route.id],\n handle: match.route.handle\n };\n }), [matches, loaderData]);\n}\n/**\n * Returns the loader data for the nearest ancestor Route loader\n */\n\nfunction useLoaderData() {\n let state = useDataRouterState(DataRouterStateHook.UseLoaderData);\n let route = React.useContext(RouteContext);\n !route ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"useLoaderData must be used inside a RouteContext\") : invariant(false) : void 0;\n let thisRoute = route.matches[route.matches.length - 1];\n !thisRoute.route.id ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"useLoaderData can only be used on routes that contain a unique \\\"id\\\"\") : invariant(false) : void 0;\n return state.loaderData[thisRoute.route.id];\n}\n/**\n * Returns the loaderData for the given routeId\n */\n\nfunction useRouteLoaderData(routeId) {\n let state = useDataRouterState(DataRouterStateHook.UseRouteLoaderData);\n return state.loaderData[routeId];\n}\n/**\n * Returns the action data for the nearest ancestor Route action\n */\n\nfunction useActionData() {\n let state = useDataRouterState(DataRouterStateHook.UseActionData);\n let route = React.useContext(RouteContext);\n !route ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"useActionData must be used inside a RouteContext\") : invariant(false) : void 0;\n return Object.values((state == null ? void 0 : state.actionData) || {})[0];\n}\n/**\n * Returns the nearest ancestor Route error, which could be a loader/action\n * error or a render error. This is intended to be called from your\n * errorElement to display a proper error message.\n */\n\nfunction useRouteError() {\n var _state$errors;\n\n let error = React.useContext(RouteErrorContext);\n let state = useDataRouterState(DataRouterStateHook.UseRouteError);\n let route = React.useContext(RouteContext);\n let thisRoute = route.matches[route.matches.length - 1]; // If this was a render error, we put it in a RouteError context inside\n // of RenderErrorBoundary\n\n if (error) {\n return error;\n }\n\n !route ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"useRouteError must be used inside a RouteContext\") : invariant(false) : void 0;\n !thisRoute.route.id ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"useRouteError can only be used on routes that contain a unique \\\"id\\\"\") : invariant(false) : void 0; // Otherwise look for errors from our data router state\n\n return (_state$errors = state.errors) == null ? void 0 : _state$errors[thisRoute.route.id];\n}\n/**\n * Returns the happy-path data from the nearest ancestor value\n */\n\nfunction useAsyncValue() {\n let value = React.useContext(AwaitContext);\n return value == null ? void 0 : value._data;\n}\n/**\n * Returns the error from the nearest ancestor value\n */\n\nfunction useAsyncError() {\n let value = React.useContext(AwaitContext);\n return value == null ? void 0 : value._error;\n}\nconst alreadyWarned = {};\n\nfunction warningOnce(key, cond, message) {\n if (!cond && !alreadyWarned[key]) {\n alreadyWarned[key] = true;\n process.env.NODE_ENV !== \"production\" ? warning(false, message) : void 0;\n }\n}\n\n/**\n * Given a Remix Router instance, render the appropriate UI\n */\nfunction RouterProvider(_ref) {\n let {\n fallbackElement,\n router\n } = _ref;\n // Sync router state to our component state to force re-renders\n let state = useSyncExternalStore(router.subscribe, () => router.state, // We have to provide this so React@18 doesn't complain during hydration,\n // but we pass our serialized hydration data into the router so state here\n // is already synced with what the server saw\n () => router.state);\n let navigator = React.useMemo(() => {\n return {\n createHref: router.createHref,\n go: n => router.navigate(n),\n push: (to, state, opts) => router.navigate(to, {\n state,\n preventScrollReset: opts == null ? void 0 : opts.preventScrollReset\n }),\n replace: (to, state, opts) => router.navigate(to, {\n replace: true,\n state,\n preventScrollReset: opts == null ? void 0 : opts.preventScrollReset\n })\n };\n }, [router]);\n let basename = router.basename || \"/\";\n return /*#__PURE__*/React.createElement(DataRouterContext.Provider, {\n value: {\n router,\n navigator,\n static: false,\n // Do we need this?\n basename\n }\n }, /*#__PURE__*/React.createElement(DataRouterStateContext.Provider, {\n value: state\n }, /*#__PURE__*/React.createElement(Router, {\n basename: router.basename,\n location: router.state.location,\n navigationType: router.state.historyAction,\n navigator: navigator\n }, router.state.initialized ? /*#__PURE__*/React.createElement(Routes, null) : fallbackElement)));\n}\n\n/**\n * A that stores all entries in memory.\n *\n * @see https://reactrouter.com/docs/en/v6/routers/memory-router\n */\nfunction MemoryRouter(_ref2) {\n let {\n basename,\n children,\n initialEntries,\n initialIndex\n } = _ref2;\n let historyRef = React.useRef();\n\n if (historyRef.current == null) {\n historyRef.current = createMemoryHistory({\n initialEntries,\n initialIndex,\n v5Compat: true\n });\n }\n\n let history = historyRef.current;\n let [state, setState] = React.useState({\n action: history.action,\n location: history.location\n });\n React.useLayoutEffect(() => history.listen(setState), [history]);\n return /*#__PURE__*/React.createElement(Router, {\n basename: basename,\n children: children,\n location: state.location,\n navigationType: state.action,\n navigator: history\n });\n}\n\n/**\n * Changes the current location.\n *\n * Note: This API is mostly useful in React.Component subclasses that are not\n * able to use hooks. In functional components, we recommend you use the\n * `useNavigate` hook instead.\n *\n * @see https://reactrouter.com/docs/en/v6/components/navigate\n */\nfunction Navigate(_ref3) {\n let {\n to,\n replace,\n state,\n relative\n } = _ref3;\n !useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, // TODO: This error is probably because they somehow have 2 versions of\n // the router loaded. We can help them understand how to avoid that.\n \" may be used only in the context of a component.\") : invariant(false) : void 0;\n process.env.NODE_ENV !== \"production\" ? warning(!React.useContext(NavigationContext).static, \" must not be used on the initial render in a . \" + \"This is a no-op, but you should modify your code so the is \" + \"only ever rendered in response to some user interaction or state change.\") : void 0;\n let dataRouterState = React.useContext(DataRouterStateContext);\n let navigate = useNavigate();\n React.useEffect(() => {\n // Avoid kicking off multiple navigations if we're in the middle of a\n // data-router navigation, since components get re-rendered when we enter\n // a submitting/loading state\n if (dataRouterState && dataRouterState.navigation.state !== \"idle\") {\n return;\n }\n\n navigate(to, {\n replace,\n state,\n relative\n });\n });\n return null;\n}\n\n/**\n * Renders the child route's element, if there is one.\n *\n * @see https://reactrouter.com/docs/en/v6/components/outlet\n */\nfunction Outlet(props) {\n return useOutlet(props.context);\n}\n\n/**\n * Declares an element that should be rendered at a certain URL path.\n *\n * @see https://reactrouter.com/docs/en/v6/components/route\n */\nfunction Route(_props) {\n process.env.NODE_ENV !== \"production\" ? invariant(false, \"A is only ever to be used as the child of element, \" + \"never rendered directly. Please wrap your in a .\") : invariant(false) ;\n}\n\n/**\n * Provides location context for the rest of the app.\n *\n * Note: You usually won't render a directly. Instead, you'll render a\n * router that is more specific to your environment such as a \n * in web browsers or a for server rendering.\n *\n * @see https://reactrouter.com/docs/en/v6/routers/router\n */\nfunction Router(_ref4) {\n let {\n basename: basenameProp = \"/\",\n children = null,\n location: locationProp,\n navigationType = Action.Pop,\n navigator,\n static: staticProp = false\n } = _ref4;\n !!useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"You cannot render a inside another .\" + \" You should never have more than one in your app.\") : invariant(false) : void 0; // Preserve trailing slashes on basename, so we can let the user control\n // the enforcement of trailing slashes throughout the app\n\n let basename = basenameProp.replace(/^\\/*/, \"/\");\n let navigationContext = React.useMemo(() => ({\n basename,\n navigator,\n static: staticProp\n }), [basename, navigator, staticProp]);\n\n if (typeof locationProp === \"string\") {\n locationProp = parsePath(locationProp);\n }\n\n let {\n pathname = \"/\",\n search = \"\",\n hash = \"\",\n state = null,\n key = \"default\"\n } = locationProp;\n let location = React.useMemo(() => {\n let trailingPathname = stripBasename(pathname, basename);\n\n if (trailingPathname == null) {\n return null;\n }\n\n return {\n pathname: trailingPathname,\n search,\n hash,\n state,\n key\n };\n }, [basename, pathname, search, hash, state, key]);\n process.env.NODE_ENV !== \"production\" ? warning(location != null, \" is not able to match the URL \" + (\"\\\"\" + pathname + search + hash + \"\\\" because it does not start with the \") + \"basename, so the won't render anything.\") : void 0;\n\n if (location == null) {\n return null;\n }\n\n return /*#__PURE__*/React.createElement(NavigationContext.Provider, {\n value: navigationContext\n }, /*#__PURE__*/React.createElement(LocationContext.Provider, {\n children: children,\n value: {\n location,\n navigationType\n }\n }));\n}\n\n/**\n * A container for a nested tree of elements that renders the branch\n * that best matches the current location.\n *\n * @see https://reactrouter.com/docs/en/v6/components/routes\n */\nfunction Routes(_ref5) {\n let {\n children,\n location\n } = _ref5;\n let dataRouterContext = React.useContext(DataRouterContext); // When in a DataRouterContext _without_ children, we use the router routes\n // directly. If we have children, then we're in a descendant tree and we\n // need to use child routes.\n\n let routes = dataRouterContext && !children ? dataRouterContext.router.routes : createRoutesFromChildren(children);\n return useRoutes(routes, location);\n}\n\n/**\n * Component to use for rendering lazily loaded data from returning defer()\n * in a loader function\n */\nfunction Await(_ref6) {\n let {\n children,\n errorElement,\n resolve\n } = _ref6;\n return /*#__PURE__*/React.createElement(AwaitErrorBoundary, {\n resolve: resolve,\n errorElement: errorElement\n }, /*#__PURE__*/React.createElement(ResolveAwait, null, children));\n}\nvar AwaitRenderStatus;\n\n(function (AwaitRenderStatus) {\n AwaitRenderStatus[AwaitRenderStatus[\"pending\"] = 0] = \"pending\";\n AwaitRenderStatus[AwaitRenderStatus[\"success\"] = 1] = \"success\";\n AwaitRenderStatus[AwaitRenderStatus[\"error\"] = 2] = \"error\";\n})(AwaitRenderStatus || (AwaitRenderStatus = {}));\n\nconst neverSettledPromise = new Promise(() => {});\n\nclass AwaitErrorBoundary extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n error: null\n };\n }\n\n static getDerivedStateFromError(error) {\n return {\n error\n };\n }\n\n componentDidCatch(error, errorInfo) {\n console.error(\" caught the following error during render\", error, errorInfo);\n }\n\n render() {\n let {\n children,\n errorElement,\n resolve\n } = this.props;\n let promise = null;\n let status = AwaitRenderStatus.pending;\n\n if (!(resolve instanceof Promise)) {\n // Didn't get a promise - provide as a resolved promise\n status = AwaitRenderStatus.success;\n promise = Promise.resolve();\n Object.defineProperty(promise, \"_tracked\", {\n get: () => true\n });\n Object.defineProperty(promise, \"_data\", {\n get: () => resolve\n });\n } else if (this.state.error) {\n // Caught a render error, provide it as a rejected promise\n status = AwaitRenderStatus.error;\n let renderError = this.state.error;\n promise = Promise.reject().catch(() => {}); // Avoid unhandled rejection warnings\n\n Object.defineProperty(promise, \"_tracked\", {\n get: () => true\n });\n Object.defineProperty(promise, \"_error\", {\n get: () => renderError\n });\n } else if (resolve._tracked) {\n // Already tracked promise - check contents\n promise = resolve;\n status = promise._error !== undefined ? AwaitRenderStatus.error : promise._data !== undefined ? AwaitRenderStatus.success : AwaitRenderStatus.pending;\n } else {\n // Raw (untracked) promise - track it\n status = AwaitRenderStatus.pending;\n Object.defineProperty(resolve, \"_tracked\", {\n get: () => true\n });\n promise = resolve.then(data => Object.defineProperty(resolve, \"_data\", {\n get: () => data\n }), error => Object.defineProperty(resolve, \"_error\", {\n get: () => error\n }));\n }\n\n if (status === AwaitRenderStatus.error && promise._error instanceof AbortedDeferredError) {\n // Freeze the UI by throwing a never resolved promise\n throw neverSettledPromise;\n }\n\n if (status === AwaitRenderStatus.error && !errorElement) {\n // No errorElement, throw to the nearest route-level error boundary\n throw promise._error;\n }\n\n if (status === AwaitRenderStatus.error) {\n // Render via our errorElement\n return /*#__PURE__*/React.createElement(AwaitContext.Provider, {\n value: promise,\n children: errorElement\n });\n }\n\n if (status === AwaitRenderStatus.success) {\n // Render children with resolved value\n return /*#__PURE__*/React.createElement(AwaitContext.Provider, {\n value: promise,\n children: children\n });\n } // Throw to the suspense boundary\n\n\n throw promise;\n }\n\n}\n/**\n * @private\n * Indirection to leverage useAsyncValue for a render-prop API on \n */\n\n\nfunction ResolveAwait(_ref7) {\n let {\n children\n } = _ref7;\n let data = useAsyncValue();\n\n if (typeof children === \"function\") {\n return children(data);\n }\n\n return /*#__PURE__*/React.createElement(React.Fragment, null, children);\n} ///////////////////////////////////////////////////////////////////////////////\n// UTILS\n///////////////////////////////////////////////////////////////////////////////\n\n/**\n * Creates a route config from a React \"children\" object, which is usually\n * either a `` element or an array of them. Used internally by\n * `` to create a route config from its children.\n *\n * @see https://reactrouter.com/docs/en/v6/utils/create-routes-from-children\n */\n\n\nfunction createRoutesFromChildren(children, parentPath) {\n if (parentPath === void 0) {\n parentPath = [];\n }\n\n let routes = [];\n React.Children.forEach(children, (element, index) => {\n if (! /*#__PURE__*/React.isValidElement(element)) {\n // Ignore non-elements. This allows people to more easily inline\n // conditionals in their route config.\n return;\n }\n\n if (element.type === React.Fragment) {\n // Transparently support React.Fragment and its children.\n routes.push.apply(routes, createRoutesFromChildren(element.props.children, parentPath));\n return;\n }\n\n !(element.type === Route) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"[\" + (typeof element.type === \"string\" ? element.type : element.type.name) + \"] is not a component. All component children of must be a or \") : invariant(false) : void 0;\n !(!element.props.index || !element.props.children) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"An index route cannot have child routes.\") : invariant(false) : void 0;\n let treePath = [...parentPath, index];\n let route = {\n id: element.props.id || treePath.join(\"-\"),\n caseSensitive: element.props.caseSensitive,\n element: element.props.element,\n index: element.props.index,\n path: element.props.path,\n loader: element.props.loader,\n action: element.props.action,\n errorElement: element.props.errorElement,\n hasErrorBoundary: element.props.errorElement != null,\n shouldRevalidate: element.props.shouldRevalidate,\n handle: element.props.handle\n };\n\n if (element.props.children) {\n route.children = createRoutesFromChildren(element.props.children, treePath);\n }\n\n routes.push(route);\n });\n return routes;\n}\n/**\n * Renders the result of `matchRoutes()` into a React element.\n */\n\nfunction renderMatches(matches) {\n return _renderMatches(matches);\n}\n/**\n * @private\n * Walk the route tree and add hasErrorBoundary if it's not provided, so that\n * users providing manual route arrays can just specify errorElement\n */\n\nfunction enhanceManualRouteObjects(routes) {\n return routes.map(route => {\n let routeClone = _extends({}, route);\n\n if (routeClone.hasErrorBoundary == null) {\n routeClone.hasErrorBoundary = routeClone.errorElement != null;\n }\n\n if (routeClone.children) {\n routeClone.children = enhanceManualRouteObjects(routeClone.children);\n }\n\n return routeClone;\n });\n}\n\nfunction createMemoryRouter(routes, opts) {\n return createRouter({\n basename: opts == null ? void 0 : opts.basename,\n history: createMemoryHistory({\n initialEntries: opts == null ? void 0 : opts.initialEntries,\n initialIndex: opts == null ? void 0 : opts.initialIndex\n }),\n hydrationData: opts == null ? void 0 : opts.hydrationData,\n routes: enhanceManualRouteObjects(routes)\n }).initialize();\n} ///////////////////////////////////////////////////////////////////////////////\n\nexport { Await, MemoryRouter, Navigate, Outlet, Route, Router, RouterProvider, Routes, DataRouterContext as UNSAFE_DataRouterContext, DataRouterStateContext as UNSAFE_DataRouterStateContext, DataStaticRouterContext as UNSAFE_DataStaticRouterContext, LocationContext as UNSAFE_LocationContext, NavigationContext as UNSAFE_NavigationContext, RouteContext as UNSAFE_RouteContext, enhanceManualRouteObjects as UNSAFE_enhanceManualRouteObjects, createMemoryRouter, createRoutesFromChildren, createRoutesFromChildren as createRoutesFromElements, renderMatches, useActionData, useAsyncError, useAsyncValue, useHref, useInRouterContext, useLoaderData, useLocation, useMatch, useMatches, useNavigate, useNavigation, useNavigationType, useOutlet, useOutletContext, useParams, useResolvedPath, useRevalidator, useRouteError, useRouteLoaderData, useRoutes };\n//# sourceMappingURL=index.js.map\n","/**\n * React Router DOM v6.4.3\n *\n * Copyright (c) Remix Software Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nimport * as React from 'react';\nimport { UNSAFE_enhanceManualRouteObjects, Router, useHref, useResolvedPath, useLocation, UNSAFE_DataRouterStateContext, useNavigate, createPath, UNSAFE_NavigationContext, UNSAFE_RouteContext, useMatches, useNavigation, UNSAFE_DataRouterContext } from 'react-router';\nexport { AbortedDeferredError, Await, MemoryRouter, Navigate, NavigationType, Outlet, Route, Router, RouterProvider, Routes, UNSAFE_DataRouterContext, UNSAFE_DataRouterStateContext, UNSAFE_DataStaticRouterContext, UNSAFE_LocationContext, UNSAFE_NavigationContext, UNSAFE_RouteContext, UNSAFE_enhanceManualRouteObjects, createMemoryRouter, createPath, createRoutesFromChildren, createRoutesFromElements, defer, generatePath, isRouteErrorResponse, json, matchPath, matchRoutes, parsePath, redirect, renderMatches, resolvePath, useActionData, useAsyncError, useAsyncValue, useHref, useInRouterContext, useLoaderData, useLocation, useMatch, useMatches, useNavigate, useNavigation, useNavigationType, useOutlet, useOutletContext, useParams, useResolvedPath, useRevalidator, useRouteError, useRouteLoaderData, useRoutes } from 'react-router';\nimport { createRouter, createBrowserHistory, createHashHistory, invariant, joinPaths } from '@remix-run/router';\n\nfunction _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n return _extends.apply(this, arguments);\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nconst defaultMethod = \"get\";\nconst defaultEncType = \"application/x-www-form-urlencoded\";\nfunction isHtmlElement(object) {\n return object != null && typeof object.tagName === \"string\";\n}\nfunction isButtonElement(object) {\n return isHtmlElement(object) && object.tagName.toLowerCase() === \"button\";\n}\nfunction isFormElement(object) {\n return isHtmlElement(object) && object.tagName.toLowerCase() === \"form\";\n}\nfunction isInputElement(object) {\n return isHtmlElement(object) && object.tagName.toLowerCase() === \"input\";\n}\n\nfunction isModifiedEvent(event) {\n return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);\n}\n\nfunction shouldProcessLinkClick(event, target) {\n return event.button === 0 && ( // Ignore everything but left clicks\n !target || target === \"_self\") && // Let browser handle \"target=_blank\" etc.\n !isModifiedEvent(event) // Ignore clicks with modifier keys\n ;\n}\n/**\n * Creates a URLSearchParams object using the given initializer.\n *\n * This is identical to `new URLSearchParams(init)` except it also\n * supports arrays as values in the object form of the initializer\n * instead of just strings. This is convenient when you need multiple\n * values for a given key, but don't want to use an array initializer.\n *\n * For example, instead of:\n *\n * let searchParams = new URLSearchParams([\n * ['sort', 'name'],\n * ['sort', 'price']\n * ]);\n *\n * you can do:\n *\n * let searchParams = createSearchParams({\n * sort: ['name', 'price']\n * });\n */\n\nfunction createSearchParams(init) {\n if (init === void 0) {\n init = \"\";\n }\n\n return new URLSearchParams(typeof init === \"string\" || Array.isArray(init) || init instanceof URLSearchParams ? init : Object.keys(init).reduce((memo, key) => {\n let value = init[key];\n return memo.concat(Array.isArray(value) ? value.map(v => [key, v]) : [[key, value]]);\n }, []));\n}\nfunction getSearchParamsForLocation(locationSearch, defaultSearchParams) {\n let searchParams = createSearchParams(locationSearch);\n\n for (let key of defaultSearchParams.keys()) {\n if (!searchParams.has(key)) {\n defaultSearchParams.getAll(key).forEach(value => {\n searchParams.append(key, value);\n });\n }\n }\n\n return searchParams;\n}\nfunction getFormSubmissionInfo(target, defaultAction, options) {\n let method;\n let action;\n let encType;\n let formData;\n\n if (isFormElement(target)) {\n let submissionTrigger = options.submissionTrigger;\n method = options.method || target.getAttribute(\"method\") || defaultMethod;\n action = options.action || target.getAttribute(\"action\") || defaultAction;\n encType = options.encType || target.getAttribute(\"enctype\") || defaultEncType;\n formData = new FormData(target);\n\n if (submissionTrigger && submissionTrigger.name) {\n formData.append(submissionTrigger.name, submissionTrigger.value);\n }\n } else if (isButtonElement(target) || isInputElement(target) && (target.type === \"submit\" || target.type === \"image\")) {\n let form = target.form;\n\n if (form == null) {\n throw new Error(\"Cannot submit a