diff --git a/CloudronManifest.json b/CloudronManifest.json index 3491f74..cf4eb8f 100644 --- a/CloudronManifest.json +++ b/CloudronManifest.json @@ -5,10 +5,18 @@ "description": "file://DESCRIPTION.md", "changelog": "file://CHANGELOG.md", "tagline": "Secure & decentralized communication", - "version": "1.124.0", + "version": "1.124.1", "upstreamVersion": "1.143.0", "healthCheckPath": "/", "httpPort": 8008, + "httpPorts": { + "MAS_DOMAIN": { + "title": "MAS authentication domain", + "description": "Cloudron will proxy MAS on this domain so the Element client and Synapse OIDC discovery can reach http:///.well-known/openid-configuration", + "containerPort": 4000, + "defaultValue": "mas" + } + }, "memoryLimit": 536870912, "addons": { "localstorage": {}, diff --git a/MAS-implementation-plan.md b/MAS-implementation-plan.md new file mode 100644 index 0000000..1d8c31a --- /dev/null +++ b/MAS-implementation-plan.md @@ -0,0 +1,74 @@ +# MAS Integration Research & Plan + +## Objectives +- Understand what the Matrix Authentication Service (MAS) needs to replace or augment in the Cloudron Synapse package. +- Capture upstream recommendations for deployment (domains, reverse proxy, database, config) and map them to Cloudron-specific constraints (single app bundle, OpenID provider, Element compatibility). +- Document the next steps to get from the working Synapse package to a MAS-enabled deployment that keeps Element/Element X happy. + +## Upstream MAS requirements (source: https://element-hq.github.io/matrix-authentication-service/setup/) +1. **Dedicated authentication service**: MAS runs on its own domain (e.g. `auth.example.com`) and handles account/session management via OIDC. The homeserver (Synapse) becomes an OIDC relying party. +2. **Assets & binaries**: Upstream shipped packages bundle `mas-cli`, the frontend assets, policy wasm, templates, translations, etc. These can be overridden via configuration (paths configurable). +3. **Database**: MAS maintains its own PostgreSQL database with user/session/registration information. Upstream provides `mas-cli database migrate` to manage schema. +4. **Homeserver configuration**: Synapse needs to be configured to trust MAS—this includes replacing the `MXID_LOCALPART_REGEXP`, `oidc_config`, and adjusting `User Interactive Auth` settings to redirect to MAS endpoints. +5. **Reverse proxy**: Both MAS and Synapse must be exposed through a reverse proxy (or Cloudron routing layer) so they can talk over HTTPS. OIDC discovery endpoints must be reachable at sensible URLs. +6. **SSO / upstream provider**: MAS is configurable to use external SSO providers (email, identity providers) but for Cloudron we expect MAS to hook into Cloudron's OpenID provider layer (since Cloudron exposes apps via OpenID for dashboard login). +7. **CLI tooling**: `mas-cli` ships a `config`, `database`, `manage`, `server`, `syn2mas`, `worker`, `templates`, `doctor` command suite. We'll likely rely on the `template` assets and the `doctor` check when packaging. +8. **Templates & policies**: The frontend, policy engine (OPA), and default templates drive what flows look like; for Cloudron we should ensure these assets are present and configurable by the package (perhaps via volume mounts or extraction during install). + +## Cloudron-specific considerations +- **Single-app package**: Currently the Cloudron Synapse package bundles Synapse (homeserver) and exposes it via `matrix.example.com`. MAS needs a separate service but Cloudron apps normally run in a single container. Need to decide: 1) include MAS binary / assets in the same package but run a second process, or 2) run MAS as a child service through Cloudron's `run.yml`/`start.sh`. Need to inspect existing packaging to see how (1) Synapse currently runs (maybe `start.sh`), (2) if additional processes are possible (should be via background start commands). Cloudron package manifest may need adjustments to expose MAS endpoints via additional subdomain or path. + - The existing `start.sh` is an idempotent bootstrap that provisions `homeserver.yaml` from the pip-installed Synapse, copies a static `homeserver.yaml.template`, writes generated secrets, and configures the database, email, OIDC (if Cloudron-provided), TURN, and logging before finally `exec`-ing Synapse with `gosu`. Adding MAS will require launching a second process (probably before the `exec`) so we can keep `start.sh` running both MAS and Synapse. Cloudron apps expose a single HTTP port (`8008` per `CloudronManifest.json`), so MAS would need to listen on a different port and rely on Cloudron’s reverse proxy rules (manifest may need to expose additional `exposePorts` or route via a subpath). +- **OpenID integration**: MAS expects to be an OIDC provider. Cloudron uses OpenID Connect to allow users to log into the dashboard/app. The original Cloudron issue (https://forum.cloudron.io/topic/13648) mentioned `openid uri configuration issue for synapse-s-mas`. We need to ensure MAS's `.well-known/openid-configuration` URL is accessible and correctly registered in Cloudron. This might require adding proper `manifest.json` entries so MAS endpoints are published to Cloudron's OIDC routing layer. +- **Element/Element X login improvements**: MAS unlocks QR-code login, passkeys, etc. Need to ensure the packaged MAS supports the flow required by Element/Element X (i.e., MAS must report as the OIDC server for `matrix.org` domain). The `homeserver.yaml.template` might need updates to point at MAS discovery endpoints. +- **Cloudron assets**: Determine how to ship MAS assets (frontend/policy/manifest) with the package so MAS can locate them without needing network downloads (Cloudron apps need offline reliability). Could use `test/` folder to store sample config? Need to ensure `start.sh` extracts these assets and sets environment variables. + +## Observations from the current package +- `CloudronManifest.json` exposes only `httpPort` 8008, so Synapse listens there. There are addons for localstorage, oidc, postgresql, sendmail, and optional TURN, meaning Cloudron will inject database, mail, and OIDC env vars. Introducing MAS likely requires either: + - adding `exposePorts` or `httpService` entries so the reverse proxy knows about MAS’s port, and optionally an `oidc` addon entry for MAS’s `.well-known` metadata, or + - routing MAS through the same HTTP port but behind a different path (e.g., `/auth`). The docs for MAS mention it should run on a dedicated domain, but we might be able to serve it on a subpath if Cloudron doesn’t allow multiple ports. +- `start.sh` already uses environment-supplied OIDC configuration when Cloudron provides it. That logic may need to be extended so MAS can either (a) act as the provider and register itself with Cloudron, or (b) rely on Cloudron’s OpenID stack if MAS is configured as a relying party. The script currently does not interact with Cloudron beyond templating `homeserver.yaml`, so we have full control over how MAS is provisioned once we decide where to run it. + +## Recent implementation notes +- `CloudronManifest.json` now advertises a second `httpService` named `mas` on port `4000` so a Cloudron TLS route can reach the MAS discovery endpoints at `/mas/.well-known`. +- Added `mas/mas-config.template.yaml` plus `mas/README.md` so the package now ships an editable MAS config skeleton, expected assets directory, and guidance on where upstream binaries live. +- `start.sh` generates `/app/data/configs/mas.yaml`, keeps a persistent MAS client secret, and is ready to launch `mas-cli server --config ...` with proper signal handling. +- `mas/` now holds the upstream v1.7.0 release artifacts: the `mas-cli` binary plus `share/` assets (frontend, manifest, policy, translations) that the config template points to, enabling MAS to run without building from source. + +## Manifest & runtime guardrails +- Cloudron manifest v2 gives every app a single declared `httpPort`, but you can add `httpServices` entries if you need additional HTTPS-terminating services routed through Cloudron’s reverse proxy. Each `httpService` can specify a `port`, `path`, `certificate`, and `protocol`, making it possible to expose MAS on a different internal port or mount it under a distinct path (e.g., `/auth`). Alternatively, `exposePorts` allows you to expose TCP ports directly if a separate plain TCP route is acceptable. +- The existing `oidc` addon signals Cloudron to proxy `.well-known/openid-configuration`. To surface MAS’s discovery documents we can either: + - register MAS as a second HTTP service with its own path for `.well-known/`, or + - keep MAS on the same port and let the reverse proxy forward `/auth/.well-known/*` to the MAS port. + - Since MAS needs to run alongside the homeserver, `start.sh` now writes `/app/data/configs/mas.yaml`, backgrounds `mas-cli server --config ...`, and installs traps so signals kill both services before the script exits, keeping the container responsive while the MAS service shares the same app lifecycle. + - The script also configures Synapse’s `homeserver.yaml` to treat MAS as its login provider: password registration is disabled and the MAS OIDC endpoints/secret are templated at startup so Element clients see an OIDC-capable homeserver. + +## Rough plan for MAS implementation +1. **Gather upstream assets** + - Confirm we can download a MAS release tarball as part of the build (prefer Docker image if Cloudron supports it, otherwise pre-built binary). + - Verify what assets need to be packaged (frontend dist, policy wasm, translations, templates, `mas-cli`). Document in this repo how they will be bundled. +2. **Process orchestration** + - Update `start.sh` to launch MAS alongside Synapse (probably via `&` background process) and ensure proper log capture. + - Ensure MAS listens on a different port (e.g., `4000`), while Synapse remains on its port. Cloudron reverse proxy must route `/mas` or assign a subdomain (maybe `auth.`). Need to explore Cloudron manifest to see if multiple ports can be exposed; if not, we may need to run MAS on the same port but separate path? Need to review Cloudron packaging docs. + - Sketch a background-run pattern: configure MAS before Synapse, run `/app/pkg/mas/mas-cli server --config ...` as `gosu cloudron:cloudron ... &`, save the child PID, and trap SIGTERM/SIGINT so both MAS and Synapse are terminated when the container stops; the script can then `wait` on Synapse while MAS serves requests in the background. +3. **Configuration mapping** + - Determine MAS config file structure and defaults. We'll likely need `mas-config.yaml` referencing Synapse endpoints, database credentials, and OIDC discovery data. Need to map Cloudron config variables (domain, TLS cert path) into MAS's config. + - Update `homeserver.yaml.template` to include the `oidc` settings pointing at MAS (including `client_id`, `client_secret`, `authorization_endpoint`, etc.). This may require new templating variables that Cloudron populates at runtime. +4. **Cloudron integration (OpenID provider)** + - Evaluate how Cloudron registers OpenID providers for apps; we might need to adjust `CloudronManifest.json` or `start.sh` to register MAS's `.well-known/openid-configuration` with Cloudron (maybe through environment variables or `start.sh` hooking into Cloudron's OpenID provider interface). Need to research Cloudron packaging guidelines for apps that expose their own OIDC endpoints. + - Identify required scopes and metadata so MAS appears as the identity provider for Element clients used by Cloudron. +5. **Test flows (Element, CLI)** + - Ensure Element clients can authenticate via MAS (login flow). Document manual steps to test after packaging. + - Provide instructions for administrators to configure MAS if Cloudron-specific modifications (domain names, secrets) are needed. +6. **Documentation/Assets** + - Update README or create a new `docs/` entry explaining how MAS is configured for Cloudron (OAUTH endpoints, necessary environment variables). + - Add `POSTINSTALL.md` or similar update to inform Cloudron admins of new MAS dependencies. + +## Next steps (action items) +1. **Clarify process/port constraints**: confirm whether Cloudron allows exposing two ports or mapping a subpath to MAS; if the manifest must change, note which keys support the MAS discovery endpoints. Ensure `start.sh` can launch MAS before Synapse `exec`. +2. **Fetch latest MAS release** (prefer Docker image if Cloudron supports pulling `ghcr.io/element-hq/matrix-authentication-service:latest`). Determine how to extract assets and integrate into our package (hopefully by storing release tarball in repo or downloading during install?). +3. **Define MAS config template** that references Cloudron environment variables (domain, TLS certs, database credentials). Draft a template config file in `test/` or new folder. +4. **Map OpenID requirements**: find Cloudron docs for apps that need to expose OIDC metadata. Write down the necessary manifest keys or scripts to register MAS endpoints. +5. **Document user flows**: in this repo, outline how MAS interacts with Synapse and Element (i.e., MAS obtains upstream login info, issues tokens to Synapse, Element authenticates via Synapse -> MAS). This can serve as both reference and testing checklist. +6. **Additional research**: determine if Cloudron's OpenID stack can act as an upstream provider for MAS (i.e., MAS is the relying party to Cloudron's OIDC provider) or if MAS should be the provider and Cloudron just routes to it. + +Once the above are addressed, we'll have a clearer technical path for implementing MAS within this package. Let me know if you'd like me to iterate on any of these sections or move into prototyping a MAS-powered build. diff --git a/mas/LICENSE b/mas/LICENSE new file mode 100644 index 0000000..be3f7b2 --- /dev/null +++ b/mas/LICENSE @@ -0,0 +1,661 @@ + GNU AFFERO GENERAL PUBLIC LICENSE + Version 3, 19 November 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + Developers that use our General Public Licenses protect your rights +with two steps: (1) assert copyright on the software, and (2) offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + + A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + + The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + + An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU Affero General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Remote Network Interaction; Use with the GNU General Public License. + + Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU Affero General Public License from time to time. Such new versions +will be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU Affero General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If your software can interact with users remotely through a computer +network, you should also make sure that it provides a way for users to +get its source. For example, if your program is a web application, its +interface could display a "Source" link that leads users to an archive +of the code. There are many ways you could offer source, and different +solutions will be better for different programs; see section 13 for the +specific requirements. + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU AGPL, see +. diff --git a/mas/README.md b/mas/README.md new file mode 100644 index 0000000..973db6e --- /dev/null +++ b/mas/README.md @@ -0,0 +1,9 @@ +# MAS assets + +This directory is reserved for the Matrix Authentication Service release that will ship with this package. + +- `mas-cli` is the upstream binary that currently provides the CLI and `server` subcommand used by `start.sh`. +- `share/` will contain the frontend assets, manifest, policy wasm, translations, and templates that MAS expects. +- `mas-config.template.yaml` is the Cloudron-aware configuration template that `start.sh` expands into `/app/data/configs/mas.yaml` at runtime. + +During build time we will download the official `matrix-authentication-service` release (Docker or the prebuilt tarball) into this directory so that the package can start the MAS server as soon as the app boots. diff --git a/mas/mas-cli b/mas/mas-cli new file mode 100755 index 0000000..a2917e1 Binary files /dev/null and b/mas/mas-cli differ diff --git a/mas/mas-config.template.yaml b/mas/mas-config.template.yaml new file mode 100644 index 0000000..b6321d3 --- /dev/null +++ b/mas/mas-config.template.yaml @@ -0,0 +1,51 @@ +# MAS configuration template for Cloudron per https://element-hq.github.io/matrix-authentication-service/setup/ + +server: + bind_address: "0.0.0.0" + port: ${MAS_PORT} + +site: + base_url: "https://${MAS_DOMAIN}" + developer_mode: false + +logging: + level: info + +metrics: + enabled: false + +database: + provider: postgresql + host: "${CLOUDRON_POSTGRESQL_HOST}" + port: ${CLOUDRON_POSTGRESQL_PORT} + username: "${CLOUDRON_POSTGRESQL_USERNAME}" + password: "${CLOUDRON_POSTGRESQL_PASSWORD}" + database: "${CLOUDRON_POSTGRESQL_DATABASE}_mas" + +oidc: + issuer: "https://${MAS_DOMAIN}" + clients: + - id: "synapse" + secret: "${MAS_OIDC_CLIENT_SECRET}" + redirect_uris: + - "${CLOUDRON_APP_ORIGIN}/_synapse/client/oidc/callback" + response_types: + - "code" + grant_types: + - "authorization_code" + - "refresh_token" + scopes: + - "openid" + - "profile" + - "email" + +homeserver: + name: "${CLOUDRON_APP_DOMAIN}" + public_baseurl: "${CLOUDRON_APP_ORIGIN}" + discovery_url: "${CLOUDRON_APP_ORIGIN}/.well-known/openid-configuration" + +assets: + frontend: "/app/pkg/mas/share/assets" + manifest: "/app/pkg/mas/share/manifest.json" + policy: "/app/pkg/mas/share/policy.wasm" + translations: "/app/pkg/mas/share/translations" diff --git a/mas/share/assets/Avatar-B3RWCmae.js b/mas/share/assets/Avatar-B3RWCmae.js new file mode 100644 index 0000000..001f043 --- /dev/null +++ b/mas/share/assets/Avatar-B3RWCmae.js @@ -0,0 +1,2 @@ +import{r as f,a4 as u,w as m,j as g}from"./main-CiAhdYQG.js";const h="@",v="#",A="+",I=new Intl.Segmenter;function M(t){if(t.length<1)return"";const e=t[0];[h,v,A].includes(e)&&(t=t.substring(1));const a=I.segment(t)[Symbol.iterator]().next();return a.done?"":a.value.segment}const E="_avatar_1qbcf_8",R="_image_1qbcf_41",o={avatar:E,image:R,"avatar-imageless":"_avatar-imageless_1qbcf_52"};function X(t){return t.split("").reduce((r,n)=>r+n.charCodeAt(0),0)%6+1}function b(t){return!!(t.onClick||t.onKeyDown||t.onKeyUp)}const y=f.forwardRef(function({src:e,id:a,name:c="",type:r="round",className:n="",size:s,style:i={},onError:d,...l},_){return u.createElement(b(l)?"button":"span",{ref:_,role:"img","aria-label":a,...l,"data-type":r,"data-color":X(a),className:m(o.avatar,n,{[o["avatar-imageless"]]:!e}),style:{...i,"--cpd-avatar-size":s}},g.jsx(u.Fragment,{children:e?g.jsx("img",{loading:"lazy",alt:"",src:e,referrerPolicy:"no-referrer",className:m(o.image),"data-type":r,style:i,width:s,height:s,onError:d}):M(c)}))});export{y as A}; +//# sourceMappingURL=Avatar-B3RWCmae.js.map diff --git a/mas/share/assets/Avatar-B3RWCmae.js.br b/mas/share/assets/Avatar-B3RWCmae.js.br new file mode 100644 index 0000000..b2009cc Binary files /dev/null and b/mas/share/assets/Avatar-B3RWCmae.js.br differ diff --git a/mas/share/assets/Avatar-B3RWCmae.js.gz b/mas/share/assets/Avatar-B3RWCmae.js.gz new file mode 100644 index 0000000..9cfb8a5 Binary files /dev/null and b/mas/share/assets/Avatar-B3RWCmae.js.gz differ diff --git a/mas/share/assets/Avatar-B3RWCmae.js.map b/mas/share/assets/Avatar-B3RWCmae.js.map new file mode 100644 index 0000000..7f372e1 --- /dev/null +++ b/mas/share/assets/Avatar-B3RWCmae.js.map @@ -0,0 +1 @@ +{"version":3,"file":"Avatar-B3RWCmae.js","sources":["../node_modules/@vector-im/compound-web/dist/utils/string.js","../node_modules/@vector-im/compound-web/dist/components/Avatar/Avatar.module.css.js","../node_modules/@vector-im/compound-web/dist/components/Avatar/useIdColorHash.js","../node_modules/@vector-im/compound-web/dist/components/Avatar/Avatar.js"],"sourcesContent":["const MX_USERNAME_PREFIX = \"@\";\nconst MX_ROOM_PREFIX = \"#\";\nconst MX_ALIAS_PREFIX = \"+\";\nconst graphemeSegmenter = new Intl.Segmenter();\nfunction getInitialLetter(name) {\n if (name.length < 1) {\n return \"\";\n }\n const initial = name[0];\n if ([MX_USERNAME_PREFIX, MX_ROOM_PREFIX, MX_ALIAS_PREFIX].includes(initial)) {\n name = name.substring(1);\n }\n const result = graphemeSegmenter.segment(name)[Symbol.iterator]().next();\n return result.done ? \"\" : result.value.segment;\n}\nexport {\n MX_ALIAS_PREFIX,\n MX_ROOM_PREFIX,\n MX_USERNAME_PREFIX,\n getInitialLetter\n};\n//# sourceMappingURL=string.js.map\n","const avatar = \"_avatar_1qbcf_8\";\nconst image = \"_image_1qbcf_41\";\nconst styles = {\n avatar,\n image,\n \"avatar-imageless\": \"_avatar-imageless_1qbcf_52\",\n \"stacked-avatars\": \"_stacked-avatars_1qbcf_102\",\n \"clip-path\": \"_clip-path_1qbcf_121\"\n};\nexport {\n avatar,\n styles as default,\n image\n};\n//# sourceMappingURL=Avatar.module.css.js.map\n","function useIdColorHash(id) {\n const MIN = 1;\n const MAX = 6;\n const charCodeSum = id.split(\"\").reduce((sum, char) => {\n return sum + char.charCodeAt(0);\n }, 0);\n return charCodeSum % MAX + MIN;\n}\nexport {\n useIdColorHash\n};\n//# sourceMappingURL=useIdColorHash.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport classNames from \"classnames\";\nimport React, { forwardRef } from \"react\";\nimport { getInitialLetter } from \"../../utils/string.js\";\nimport styles from \"./Avatar.module.css.js\";\nimport { useIdColorHash } from \"./useIdColorHash.js\";\nfunction shouldBeAButton(props) {\n return !!(props.onClick || props.onKeyDown || props.onKeyUp);\n}\nconst Avatar = forwardRef(function Avatar2({\n src,\n id,\n name = \"\",\n type = \"round\",\n className = \"\",\n size,\n style = {},\n onError,\n ...props\n}, ref) {\n return React.createElement(\n shouldBeAButton(props) ? \"button\" : \"span\",\n {\n ref,\n role: \"img\",\n // Default the aria-label to id\n \"aria-label\": id,\n ...props,\n \"data-type\": type,\n \"data-color\": useIdColorHash(id),\n className: classNames(styles.avatar, className, {\n [styles[\"avatar-imageless\"]]: !src\n }),\n style: {\n ...style,\n \"--cpd-avatar-size\": size\n }\n },\n /* @__PURE__ */ jsx(React.Fragment, { children: !src ? getInitialLetter(name) : /* @__PURE__ */ jsx(\n \"img\",\n {\n loading: \"lazy\",\n alt: \"\",\n src,\n referrerPolicy: \"no-referrer\",\n className: classNames(styles.image),\n \"data-type\": type,\n style,\n width: size,\n height: size,\n onError\n }\n ) })\n );\n});\nexport {\n Avatar\n};\n//# sourceMappingURL=Avatar.js.map\n"],"names":["MX_USERNAME_PREFIX","MX_ROOM_PREFIX","MX_ALIAS_PREFIX","graphemeSegmenter","getInitialLetter","name","initial","result","avatar","image","styles","useIdColorHash","id","sum","char","shouldBeAButton","props","Avatar","forwardRef","src","type","className","size","style","onError","ref","React","classNames","jsx"],"mappings":"6DAAA,MAAMA,EAAqB,IACrBC,EAAiB,IACjBC,EAAkB,IAClBC,EAAoB,IAAI,KAAK,UACnC,SAASC,EAAiBC,EAAM,CAC9B,GAAIA,EAAK,OAAS,EAChB,MAAO,GAET,MAAMC,EAAUD,EAAK,CAAC,EAClB,CAACL,EAAoBC,EAAgBC,CAAe,EAAE,SAASI,CAAO,IACxED,EAAOA,EAAK,UAAU,CAAC,GAEzB,MAAME,EAASJ,EAAkB,QAAQE,CAAI,EAAE,OAAO,QAAQ,EAAC,EAAG,KAAI,EACtE,OAAOE,EAAO,KAAO,GAAKA,EAAO,MAAM,OACzC,CCdA,MAAMC,EAAS,kBACTC,EAAQ,kBACRC,EAAS,CACb,OAAAF,EACA,MAAAC,EACA,mBAAoB,4BAGtB,ECRA,SAASE,EAAeC,EAAI,CAM1B,OAHoBA,EAAG,MAAM,EAAE,EAAE,OAAO,CAACC,EAAKC,IACrCD,EAAMC,EAAK,WAAW,CAAC,EAC7B,CAAC,EACiB,EAAM,CAC7B,CCDA,SAASC,EAAgBC,EAAO,CAC9B,MAAO,CAAC,EAAEA,EAAM,SAAWA,EAAM,WAAaA,EAAM,QACtD,CACK,MAACC,EAASC,EAAAA,WAAW,SAAiB,CACzC,IAAAC,EACA,GAAAP,EACA,KAAAP,EAAO,GACP,KAAAe,EAAO,QACP,UAAAC,EAAY,GACZ,KAAAC,EACA,MAAAC,EAAQ,CAAA,EACR,QAAAC,EACA,GAAGR,CACL,EAAGS,EAAK,CACN,OAAOC,EAAM,cACXX,EAAgBC,CAAK,EAAI,SAAW,OACpC,CACE,IAAAS,EACA,KAAM,MAEN,aAAcb,EACd,GAAGI,EACH,YAAaI,EACb,aAAcT,EAAeC,CAAE,EAC/B,UAAWe,EAAWjB,EAAO,OAAQW,EAAW,CAC9C,CAACX,EAAO,kBAAkB,CAAC,EAAG,CAACS,CACvC,CAAO,EACD,MAAO,CACL,GAAGI,EACH,oBAAqBD,CAC7B,CACA,EACoBM,MAAIF,EAAM,SAAU,CAAE,SAAWP,EAA+CS,EAAAA,IAC9F,MACA,CACE,QAAS,OACT,IAAK,GACL,IAAAT,EACA,eAAgB,cAChB,UAAWQ,EAAWjB,EAAO,KAAK,EAClC,YAAaU,EACb,MAAAG,EACA,MAAOD,EACP,OAAQA,EACR,QAAAE,CACR,CACA,EAd2DpB,EAAiBC,CAAI,CAc3E,CAAE,CACP,CACA,CAAC","x_google_ignoreList":[0,1,2,3]} \ No newline at end of file diff --git a/mas/share/assets/Avatar-B3RWCmae.js.zz b/mas/share/assets/Avatar-B3RWCmae.js.zz new file mode 100644 index 0000000..6a4c1db Binary files /dev/null and b/mas/share/assets/Avatar-B3RWCmae.js.zz differ diff --git a/mas/share/assets/ButtonLink-C4AMHHR_.css b/mas/share/assets/ButtonLink-C4AMHHR_.css new file mode 100644 index 0000000..5fdcfd7 --- /dev/null +++ b/mas/share/assets/ButtonLink-C4AMHHR_.css @@ -0,0 +1 @@ +a._button-link_x5txo_8[href]{inline-size:initial} diff --git a/mas/share/assets/ButtonLink-kWcKQZoZ.js b/mas/share/assets/ButtonLink-kWcKQZoZ.js new file mode 100644 index 0000000..0b30eec --- /dev/null +++ b/mas/share/assets/ButtonLink-kWcKQZoZ.js @@ -0,0 +1,2 @@ +import{ag as e,r as i,j as r,B as c,w as l}from"./main-CiAhdYQG.js";const u="_button-link_x5txo_8",b={buttonLink:u},x=e(i.forwardRef(({children:s,className:a,...t},n)=>{const o=!!t.disabled||!!t["aria-disabled"]||!1;return r.jsx(c,{as:"a",...t,className:l(b.buttonLink,a),disabled:o,ref:n,children:s})}));export{x as B}; +//# sourceMappingURL=ButtonLink-kWcKQZoZ.js.map diff --git a/mas/share/assets/ButtonLink-kWcKQZoZ.js.map b/mas/share/assets/ButtonLink-kWcKQZoZ.js.map new file mode 100644 index 0000000..8070e09 --- /dev/null +++ b/mas/share/assets/ButtonLink-kWcKQZoZ.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ButtonLink-kWcKQZoZ.js","sources":["../src/components/ButtonLink.tsx"],"sourcesContent":["// Copyright 2024, 2025 New Vector Ltd.\n// Copyright 2024 The Matrix.org Foundation C.I.C.\n//\n// SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial\n// Please see LICENSE files in the repository root for full details.\n\nimport { createLink } from \"@tanstack/react-router\";\nimport { Button } from \"@vector-im/compound-web\";\nimport cx from \"classnames\";\nimport { forwardRef, type PropsWithChildren } from \"react\";\nimport styles from \"./ButtonLink.module.css\";\n\ntype Props = {\n kind?: \"primary\" | \"secondary\" | \"tertiary\";\n size?: \"sm\" | \"lg\";\n Icon?: React.ComponentType>;\n destructive?: boolean;\n disabled?: boolean;\n className?: string;\n} & React.AnchorHTMLAttributes;\n\nexport const ButtonLink = createLink(\n forwardRef>(\n ({ children, className, ...props }, ref) => {\n const disabled = !!props.disabled || !!props[\"aria-disabled\"] || false;\n return (\n \n {children}\n \n );\n },\n ),\n);\n"],"names":["ButtonLink","createLink","forwardRef","children","className","props","ref","disabled","jsx","Button","cx","styles"],"mappings":"oHAqBaA,EAAaC,EACxBC,EAAAA,WACE,CAAC,CAAE,SAAAC,EAAU,UAAAC,EAAW,GAAGC,CAAA,EAASC,IAAQ,CAC1C,MAAMC,EAAW,CAAC,CAACF,EAAM,UAAY,CAAC,CAACA,EAAM,eAAe,GAAK,GACjE,OACEG,EAAAA,IAACC,EAAA,CACC,GAAG,IACF,GAAGJ,EACJ,UAAWK,EAAGC,EAAO,WAAYP,CAAS,EAC1C,SAAAG,EACA,IAAAD,EAEC,SAAAH,CAAA,CAAA,CAGP,CAAA,CAEJ"} \ No newline at end of file diff --git a/mas/share/assets/EndBrowserSessionButton-DXsnVcVV.js b/mas/share/assets/EndBrowserSessionButton-DXsnVcVV.js new file mode 100644 index 0000000..d0bd697 --- /dev/null +++ b/mas/share/assets/EndBrowserSessionButton-DXsnVcVV.js @@ -0,0 +1,21 @@ +import{r as l,j as e,u as _,w as p,ag as A,D as I,e as B,G as C,B as m,N as v,h as S,i as q,c as w,d as x,l as y,k as h,b as T}from"./main-CiAhdYQG.js";import{I as k,C as E}from"./computer-Cx9wZ7Nf.js";function f(s,n){return e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",fill:"currentColor",viewBox:"0 0 24 24",ref:n,...s,children:e.jsx("path",{d:"M7 23q-.824 0-1.412-.587A1.93 1.93 0 0 1 5 21V3q0-.824.588-1.412A1.93 1.93 0 0 1 7 1h10q.824 0 1.413.587Q19 2.176 19 3v18q0 .824-.587 1.413A1.93 1.93 0 0 1 17 23zm0-5h10V6H7z"})})}f.displayName="MobileIcon";const M=l.forwardRef(f);function b(s,n){return e.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",fill:"currentColor",viewBox:"0 0 24 24",ref:n,...s,children:[e.jsx("path",{d:"M5 21q-.824 0-1.412-.587A1.93 1.93 0 0 1 3 19V5q0-.824.587-1.412A1.93 1.93 0 0 1 5 3h14q.824 0 1.413.587Q21 4.176 21 5v14q0 .824-.587 1.413A1.93 1.93 0 0 1 19 21zm0-2h14V5H5z"}),e.jsx("path",{d:"M11 10a1 1 0 1 1 1.479.878c-.31.17-.659.413-.94.741-.286.334-.539.8-.539 1.381a1 1 0 0 0 2 .006.3.3 0 0 1 .057-.085 1.4 1.4 0 0 1 .382-.288A3 3 0 1 0 9 10a1 1 0 1 0 2 0m1.999 3.012v-.005zM12 17a1 1 0 1 0 0-2 1 1 0 0 0 0 2"})]})}b.displayName="UnknownIcon";const L=l.forwardRef(b);function j(s,n){return e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",fill:"currentColor",viewBox:"0 0 24 24",ref:n,...s,children:e.jsx("path",{d:"M4 20q-.824 0-1.412-.587A1.93 1.93 0 0 1 2 18V6q0-.824.587-1.412A1.93 1.93 0 0 1 4 4h16q.824 0 1.413.588Q22 5.175 22 6v12q0 .824-.587 1.413A1.93 1.93 0 0 1 20 20zm0-2h16V8H4z"})})}j.displayName="WebBrowserIcon";const R=l.forwardRef(j),D="_device-type-icon_10tr1_8",O={deviceTypeIcon:D},Q={UNKNOWN:L,PC:k,MOBILE:M,TABLET:R},K=({deviceType:s})=>{const{t:n}=_(),a=Q[s],i={UNKNOWN:n("frontend.device_type_icon_label.unknown"),PC:n("frontend.device_type_icon_label.pc"),MOBILE:n("frontend.device_type_icon_label.mobile"),TABLET:n("frontend.device_type_icon_label.tablet")}[s];return e.jsx(a,{className:O.deviceTypeIcon,"aria-label":i})},z="_session-card-root_8sc98_8",H="_action_8sc98_13",U="_session-card_8sc98_8",V="_card-header_8sc98_13",P="_disabled_8sc98_59",W="_compact_8sc98_65",F="_content_8sc98_75",$="_name_8sc98_84",G="_client_8sc98_94",J="_metadata_8sc98_109",X="_key_8sc98_118",Y="_value_8sc98_124",t={sessionCardRoot:z,action:H,sessionCard:U,cardHeader:V,disabled:P,compact:W,content:F,name:$,client:G,metadata:J,key:X,value:Y},re=({children:s})=>e.jsx("section",{className:t.sessionCardRoot,children:s}),ce=A(l.forwardRef(({children:s,compact:n,className:a,...o},i)=>{const r=!!o.disabled||!!o["aria-disabled"]||!1;return e.jsx("a",{className:p(a,t.sessionCard,n&&t.compact,r&&t.disabled),...o,ref:i,children:s})})),Z=({children:s,compact:n,disabled:a})=>e.jsx("div",{className:p(t.sessionCard,n&&t.compact,a&&t.disabled),children:s}),ee=({type:s,children:n})=>e.jsxs("header",{className:t.cardHeader,children:[e.jsx(K,{deviceType:s}),e.jsx("div",{className:t.content,children:n})]}),se=({name:s})=>e.jsx("div",{className:t.name,children:s}),ne=({name:s,logoUri:n})=>e.jsxs("div",{className:t.client,children:[e.jsx(E,{name:s,size:"var(--cpd-space-5x)",logoUri:n}),s]}),de=({children:s})=>e.jsx("ul",{className:t.metadata,children:s}),le=({label:s,children:n})=>e.jsxs("li",{children:[e.jsx("div",{className:t.key,children:s}),e.jsx("div",{className:t.value,children:n})]}),ue=({children:s})=>e.jsx("div",{className:t.action,children:s}),oe=({children:s,mutation:n,size:a})=>{const[o,i]=l.useState(!1),{t:r}=_(),u=c=>{c.preventDefault(),n.mutate(void 0,{onSuccess:()=>i(!1)})};return e.jsxs(I,{open:o,onOpenChange:i,trigger:e.jsx(m,{kind:"secondary",destructive:!0,size:a,Icon:v,children:r("frontend.end_session_button.text")}),children:[e.jsx(B,{children:r("frontend.end_session_button.confirmation_modal_title")}),s&&e.jsx(C,{children:s}),e.jsxs(m,{type:"button",kind:"primary",destructive:!0,onClick:u,disabled:n.isPending,Icon:n.isPending?void 0:v,children:[n.isPending&&e.jsx(S,{inline:!0}),r("frontend.end_session_button.text")]}),e.jsx(q,{asChild:!0,children:e.jsx(m,{kind:"tertiary",children:r("action.cancel")})})]})},te=h(` + fragment EndBrowserSessionButton_session on BrowserSession { + id + userAgent { + name + os + model + deviceType + } + } +`),g=h(` + mutation EndBrowserSession($id: ID!) { + endBrowserSession(input: { browserSessionId: $id }) { + status + browserSession { + id + } + } + } +`),me=(s,n)=>{const a=w();return x({mutationFn:()=>y({query:g,variables:{id:s}}),onSuccess:i=>{a.invalidateQueries({queryKey:["sessionsOverview"]}),a.invalidateQueries({queryKey:["browserSessionList"]}),a.invalidateQueries({queryKey:["sessionDetail",i.endBrowserSession.browserSession?.id]}),window.location.reload()}})},_e=({session:s,size:n})=>{const{t:a}=_(),o=T(te,s),i=w(),r=x({mutationFn:()=>y({query:g,variables:{id:o.id}}),onSuccess:N=>{i.invalidateQueries({queryKey:["sessionsOverview"]}),i.invalidateQueries({queryKey:["appSessionList"]}),i.invalidateQueries({queryKey:["sessionDetail",N.endBrowserSession.browserSession?.id]})}}),u=o.userAgent?.deviceType??"UNKNOWN";let c=null,d=null;return o.userAgent?.model?(c=o.userAgent.model,o.userAgent?.name&&(o.userAgent?.os?d=a("frontend.session.name_for_platform",{name:o.userAgent.name,platform:o.userAgent.os}):d=o.userAgent.name)):(c=o.userAgent?.name??a("frontend.session.unknown_browser"),d=o.userAgent?.os??null),e.jsx(oe,{mutation:r,size:n,children:e.jsx(Z,{compact:!0,children:e.jsxs(ee,{type:u,children:[e.jsx(se,{name:c}),d&&e.jsx(ne,{name:d})]})})})};export{ue as A,Z as B,ne as C,_e as E,ee as H,le as I,ce as L,de as M,se as N,re as R,oe as a,me as u}; +//# sourceMappingURL=EndBrowserSessionButton-DXsnVcVV.js.map diff --git a/mas/share/assets/EndBrowserSessionButton-DXsnVcVV.js.br b/mas/share/assets/EndBrowserSessionButton-DXsnVcVV.js.br new file mode 100644 index 0000000..5567991 Binary files /dev/null and b/mas/share/assets/EndBrowserSessionButton-DXsnVcVV.js.br differ diff --git a/mas/share/assets/EndBrowserSessionButton-DXsnVcVV.js.gz b/mas/share/assets/EndBrowserSessionButton-DXsnVcVV.js.gz new file mode 100644 index 0000000..473cca0 Binary files /dev/null and b/mas/share/assets/EndBrowserSessionButton-DXsnVcVV.js.gz differ diff --git a/mas/share/assets/EndBrowserSessionButton-DXsnVcVV.js.map b/mas/share/assets/EndBrowserSessionButton-DXsnVcVV.js.map new file mode 100644 index 0000000..d549a1a --- /dev/null +++ b/mas/share/assets/EndBrowserSessionButton-DXsnVcVV.js.map @@ -0,0 +1 @@ +{"version":3,"file":"EndBrowserSessionButton-DXsnVcVV.js","sources":["../node_modules/@vector-im/compound-design-tokens/assets/web/icons/mobile.js","../node_modules/@vector-im/compound-design-tokens/assets/web/icons/unknown.js","../node_modules/@vector-im/compound-design-tokens/assets/web/icons/web-browser.js","../src/components/Session/DeviceTypeIcon.tsx","../src/components/SessionCard/SessionCard.tsx","../src/components/Session/EndSessionButton.tsx","../src/components/Session/EndBrowserSessionButton.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction MobileIcon(props, ref) {\n return /*#__PURE__*/_jsx(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"1em\",\n height: \"1em\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n ref: ref,\n ...props,\n children: /*#__PURE__*/_jsx(\"path\", {\n d: \"M7 23q-.824 0-1.412-.587A1.93 1.93 0 0 1 5 21V3q0-.824.588-1.412A1.93 1.93 0 0 1 7 1h10q.824 0 1.413.587Q19 2.176 19 3v18q0 .824-.587 1.413A1.93 1.93 0 0 1 17 23zm0-5h10V6H7z\"\n })\n });\n}\n;\nMobileIcon.displayName = \"MobileIcon\";\nexport default forwardRef(MobileIcon);","import { forwardRef } from \"react\";\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nfunction UnknownIcon(props, ref) {\n return /*#__PURE__*/_jsxs(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"1em\",\n height: \"1em\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n ref: ref,\n ...props,\n children: [/*#__PURE__*/_jsx(\"path\", {\n d: \"M5 21q-.824 0-1.412-.587A1.93 1.93 0 0 1 3 19V5q0-.824.587-1.412A1.93 1.93 0 0 1 5 3h14q.824 0 1.413.587Q21 4.176 21 5v14q0 .824-.587 1.413A1.93 1.93 0 0 1 19 21zm0-2h14V5H5z\"\n }), /*#__PURE__*/_jsx(\"path\", {\n d: \"M11 10a1 1 0 1 1 1.479.878c-.31.17-.659.413-.94.741-.286.334-.539.8-.539 1.381a1 1 0 0 0 2 .006.3.3 0 0 1 .057-.085 1.4 1.4 0 0 1 .382-.288A3 3 0 1 0 9 10a1 1 0 1 0 2 0m1.999 3.012v-.005zM12 17a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"\n })]\n });\n}\n;\nUnknownIcon.displayName = \"UnknownIcon\";\nexport default forwardRef(UnknownIcon);","import { forwardRef } from \"react\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction WebBrowserIcon(props, ref) {\n return /*#__PURE__*/_jsx(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"1em\",\n height: \"1em\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n ref: ref,\n ...props,\n children: /*#__PURE__*/_jsx(\"path\", {\n d: \"M4 20q-.824 0-1.412-.587A1.93 1.93 0 0 1 2 18V6q0-.824.587-1.412A1.93 1.93 0 0 1 4 4h16q.824 0 1.413.588Q22 5.175 22 6v12q0 .824-.587 1.413A1.93 1.93 0 0 1 20 20zm0-2h16V8H4z\"\n })\n });\n}\n;\nWebBrowserIcon.displayName = \"WebBrowserIcon\";\nexport default forwardRef(WebBrowserIcon);","// Copyright 2024, 2025 New Vector Ltd.\n// Copyright 2023, 2024 The Matrix.org Foundation C.I.C.\n//\n// SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial\n// Please see LICENSE files in the repository root for full details.\n\nimport IconComputer from \"@vector-im/compound-design-tokens/assets/web/icons/computer\";\nimport IconMobile from \"@vector-im/compound-design-tokens/assets/web/icons/mobile\";\nimport IconUnknown from \"@vector-im/compound-design-tokens/assets/web/icons/unknown\";\nimport IconBrowser from \"@vector-im/compound-design-tokens/assets/web/icons/web-browser\";\nimport type { FunctionComponent, SVGProps } from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport type { DeviceType } from \"../../gql/graphql\";\n\nimport styles from \"./DeviceTypeIcon.module.css\";\n\nconst deviceTypeToIcon: Record<\n DeviceType,\n FunctionComponent & { title?: string | undefined }>\n> = {\n UNKNOWN: IconUnknown,\n PC: IconComputer,\n MOBILE: IconMobile,\n TABLET: IconBrowser,\n};\n\nconst DeviceTypeIcon: React.FC<{ deviceType: DeviceType }> = ({\n deviceType,\n}) => {\n const { t } = useTranslation();\n\n const Icon = deviceTypeToIcon[deviceType];\n\n const deviceTypeToLabel: Record = {\n UNKNOWN: t(\"frontend.device_type_icon_label.unknown\"),\n PC: t(\"frontend.device_type_icon_label.pc\"),\n MOBILE: t(\"frontend.device_type_icon_label.mobile\"),\n TABLET: t(\"frontend.device_type_icon_label.tablet\"),\n };\n\n const label = deviceTypeToLabel[deviceType];\n\n return ;\n};\n\nexport default DeviceTypeIcon;\n","// Copyright 2024, 2025 New Vector Ltd.\n// Copyright 2024 The Matrix.org Foundation C.I.C.\n//\n// SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial\n// Please see LICENSE files in the repository root for full details.\n\nimport { createLink } from \"@tanstack/react-router\";\nimport cx from \"classnames\";\nimport { forwardRef } from \"react\";\n\nimport type { DeviceType } from \"../../gql/graphql\";\nimport ClientAvatar from \"../Session/ClientAvatar\";\nimport DeviceTypeIcon from \"../Session/DeviceTypeIcon\";\n\nimport styles from \"./SessionCard.module.css\";\n\nexport const Root: React.FC = ({ children }) => (\n
{children}
\n);\n\ntype BodyProps = React.PropsWithChildren<\n {\n disabled?: boolean;\n compact?: boolean;\n className?: string;\n } & React.AnchorHTMLAttributes\n>;\nexport const LinkBody = createLink(\n forwardRef(\n ({ children, compact, className, ...props }, ref) => {\n const isDisabled = !!props.disabled || !!props[\"aria-disabled\"] || false;\n return (\n \n {children}\n \n );\n },\n ),\n);\n\nexport const Body: React.FC = ({ children, compact, disabled }) => (\n \n {children}\n \n);\n\ntype HeaderProps = React.PropsWithChildren<{ type: DeviceType }>;\nexport const Header: React.FC = ({ type, children }) => (\n
\n \n
{children}
\n
\n);\n\ntype NameProps = { name: string };\nexport const Name: React.FC = ({ name }) => (\n
{name}
\n);\n\ntype ClientProps = { name: string; logoUri?: string };\nexport const Client: React.FC = ({ name, logoUri }) => (\n
\n \n {name}\n
\n);\n\nexport const Metadata: React.FC = ({ children }) => (\n
    {children}
\n);\n\nexport const Info: React.FC> = ({\n label,\n children,\n}) => (\n
  • \n
    {label}
    \n
    {children}
    \n
  • \n);\n\nexport const Action: React.FC = ({ children }) => (\n
    {children}
    \n);\n","// Copyright 2024, 2025 New Vector Ltd.\n// Copyright 2023, 2024 The Matrix.org Foundation C.I.C.\n//\n// SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial\n// Please see LICENSE files in the repository root for full details.\n\nimport type { UseMutationResult } from \"@tanstack/react-query\";\nimport IconDelete from \"@vector-im/compound-design-tokens/assets/web/icons/delete\";\nimport { Button } from \"@vector-im/compound-web\";\nimport { useState } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport * as Dialog from \"../Dialog\";\nimport LoadingSpinner from \"../LoadingSpinner/LoadingSpinner\";\n\n/**\n * Generic end session button\n * Handles loading state while endSession is in progress\n */\nconst EndSessionButton: React.FC<\n React.PropsWithChildren<{\n mutation: UseMutationResult;\n size: \"sm\" | \"lg\";\n }>\n> = ({ children, mutation, size }) => {\n const [open, setOpen] = useState(false);\n const { t } = useTranslation();\n\n const onConfirm = (e: React.MouseEvent): void => {\n e.preventDefault();\n mutation.mutate(void 0, { onSuccess: () => setOpen(false) });\n };\n\n return (\n \n {t(\"frontend.end_session_button.text\")}\n \n }\n >\n \n {t(\"frontend.end_session_button.confirmation_modal_title\")}\n \n\n {children && {children}}\n\n \n {mutation.isPending && }\n {t(\"frontend.end_session_button.text\")}\n \n\n \n \n \n \n );\n};\n\nexport default EndSessionButton;\n","// Copyright 2025 New Vector Ltd.\n//\n// SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial\n// Please see LICENSE files in the repository root for full details.\n\nimport {\n type UseMutationResult,\n useMutation,\n useQueryClient,\n} from \"@tanstack/react-query\";\nimport { useTranslation } from \"react-i18next\";\nimport { type FragmentType, graphql, useFragment } from \"../../gql\";\nimport { graphqlRequest } from \"../../graphql\";\nimport * as Card from \"../SessionCard\";\nimport EndSessionButton from \"./EndSessionButton\";\n\nconst FRAGMENT = graphql(/* GraphQL */ `\n fragment EndBrowserSessionButton_session on BrowserSession {\n id\n userAgent {\n name\n os\n model\n deviceType\n }\n }\n`);\n\nconst END_SESSION_MUTATION = graphql(/* GraphQL */ `\n mutation EndBrowserSession($id: ID!) {\n endBrowserSession(input: { browserSessionId: $id }) {\n status\n browserSession {\n id\n }\n }\n }\n`);\n\nexport const useEndBrowserSession = (\n sessionId: string,\n isCurrent: boolean,\n): UseMutationResult => {\n const queryClient = useQueryClient();\n const endSession = useMutation({\n mutationFn: () =>\n graphqlRequest({\n query: END_SESSION_MUTATION,\n variables: { id: sessionId },\n }),\n onSuccess: (data) => {\n queryClient.invalidateQueries({ queryKey: [\"sessionsOverview\"] });\n queryClient.invalidateQueries({ queryKey: [\"browserSessionList\"] });\n queryClient.invalidateQueries({\n queryKey: [\"sessionDetail\", data.endBrowserSession.browserSession?.id],\n });\n\n if (isCurrent) {\n window.location.reload();\n }\n },\n });\n\n return endSession;\n};\n\ntype Props = {\n session: FragmentType;\n size: \"sm\" | \"lg\";\n};\n\nconst EndBrowserSessionButton: React.FC = ({ session, size }) => {\n const { t } = useTranslation();\n const data = useFragment(FRAGMENT, session);\n const queryClient = useQueryClient();\n const endSession = useMutation({\n mutationFn: () =>\n graphqlRequest({\n query: END_SESSION_MUTATION,\n variables: { id: data.id },\n }),\n onSuccess: (data) => {\n queryClient.invalidateQueries({ queryKey: [\"sessionsOverview\"] });\n queryClient.invalidateQueries({ queryKey: [\"appSessionList\"] });\n queryClient.invalidateQueries({\n queryKey: [\"sessionDetail\", data.endBrowserSession.browserSession?.id],\n });\n },\n });\n\n const deviceType = data.userAgent?.deviceType ?? \"UNKNOWN\";\n\n let deviceName: string | null = null;\n let clientName: string | null = null;\n\n // If we have a model, use that as the device name, and the browser (+ OS) as the client name\n if (data.userAgent?.model) {\n deviceName = data.userAgent.model;\n if (data.userAgent?.name) {\n if (data.userAgent?.os) {\n clientName = t(\"frontend.session.name_for_platform\", {\n name: data.userAgent.name,\n platform: data.userAgent.os,\n });\n } else {\n clientName = data.userAgent.name;\n }\n }\n } else {\n // Else use the browser as the device name\n deviceName = data.userAgent?.name ?? t(\"frontend.session.unknown_browser\");\n // and if we have an OS, use that as the client name\n clientName = data.userAgent?.os ?? null;\n }\n\n return (\n \n \n \n \n {clientName && }\n \n \n \n );\n};\n\nexport default EndBrowserSessionButton;\n"],"names":["MobileIcon","props","ref","_jsx","IconMobile","forwardRef","UnknownIcon","_jsxs","IconUnknown","WebBrowserIcon","IconBrowser","deviceTypeToIcon","IconComputer","DeviceTypeIcon","deviceType","t","useTranslation","Icon","label","styles","Root","children","LinkBody","createLink","compact","className","isDisabled","jsx","cx","Body","disabled","Header","type","jsxs","Name","name","Client","logoUri","ClientAvatar","Metadata","Info","Action","EndSessionButton","mutation","size","open","setOpen","useState","onConfirm","e","Dialog.Dialog","Button","IconDelete","Dialog.Title","Dialog.Description","LoadingSpinner","Dialog.Close","FRAGMENT","graphql","END_SESSION_MUTATION","useEndBrowserSession","sessionId","isCurrent","queryClient","useQueryClient","useMutation","graphqlRequest","data","EndBrowserSessionButton","session","useFragment","endSession","deviceName","clientName","Card.Body","Card.Header","Card.Name","Card.Client"],"mappings":"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","x_google_ignoreList":[0,1,2]} \ No newline at end of file diff --git a/mas/share/assets/EndBrowserSessionButton-DXsnVcVV.js.zz b/mas/share/assets/EndBrowserSessionButton-DXsnVcVV.js.zz new file mode 100644 index 0000000..c91e73f Binary files /dev/null and b/mas/share/assets/EndBrowserSessionButton-DXsnVcVV.js.zz differ diff --git a/mas/share/assets/EndBrowserSessionButton-b2eg7MjM.css b/mas/share/assets/EndBrowserSessionButton-b2eg7MjM.css new file mode 100644 index 0000000..f33745e --- /dev/null +++ b/mas/share/assets/EndBrowserSessionButton-b2eg7MjM.css @@ -0,0 +1 @@ +._device-type-icon_10tr1_8{color:var(--cpd-color-icon-secondary);background-color:var(--cpd-color-bg-subtle-secondary);box-sizing:content-box;height:var(--cpd-space-6x);width:var(--cpd-space-6x);padding:var(--cpd-space-2x);border-radius:var(--cpd-space-2x)}._session-card-root_8sc98_8{position:relative}@media screen and (min-width: 768px){._session-card-root_8sc98_8:has(._action_8sc98_13) ._session-card_8sc98_8 ._card-header_8sc98_13{padding-inline-end:calc(var(--cpd-space-16x) + 10ch)}}@media screen and (max-width: 767px){._session-card-root_8sc98_8:has(._action_8sc98_13) ._session-card_8sc98_8{padding-block-end:calc(var(--cpd-space-9x) + var(--cpd-space-6x) + var(--cpd-space-6x))}}._session-card_8sc98_8{display:flex;gap:var(--cpd-space-4x);flex-direction:column;text-align:start;border-radius:var(--cpd-space-4x);background-color:var(--cpd-color-bg-canvas-default);outline:1px solid var(--cpd-color-border-interactive-secondary);outline-offset:-1px;box-shadow:0 1.2px 2.4px #00000026;padding:var(--cpd-space-6x)}._session-card_8sc98_8._disabled_8sc98_59{outline-color:var(--cpd-color-border-disabled);background-color:var(--cpd-color-bg-canvas-disabled);box-shadow:none}._session-card_8sc98_8._compact_8sc98_65{box-shadow:none;padding:var(--cpd-space-3x)}._session-card_8sc98_8 ._card-header_8sc98_13{display:flex;gap:var(--cpd-space-4x);align-items:center}:is(._session-card_8sc98_8 ._card-header_8sc98_13) ._content_8sc98_75{display:flex;flex-direction:column;flex:0 1 auto;min-width:0}._auto_8sc98_83:is(:is(._session-card_8sc98_8 ._card-header_8sc98_13) ._content_8sc98_75) div:first-child,:is(:is(._session-card_8sc98_8 ._card-header_8sc98_13) ._content_8sc98_75) ._name_8sc98_84{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font:var(--cpd-font-body-md-semibold);letter-spacing:var(--cpd-font-letter-spacing-body-md);color:var(--cpd-color-text-primary)}._auto_8sc98_83:is(:is(._session-card_8sc98_8 ._card-header_8sc98_13) ._content_8sc98_75) div:not(:first-child),:is(:is(._session-card_8sc98_8 ._card-header_8sc98_13) ._content_8sc98_75) ._client_8sc98_94{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font:var(--cpd-font-body-sm-regular);letter-spacing:var(--cpd-font-letter-spacing-body-sm);color:var(--cpd-color-text-secondary)}:is(._auto_8sc98_83:is(:is(._session-card_8sc98_8 ._card-header_8sc98_13) ._content_8sc98_75) div:not(:first-child),:is(:is(._session-card_8sc98_8 ._card-header_8sc98_13) ._content_8sc98_75) ._client_8sc98_94) img{margin-inline-end:var(--cpd-space-1x)}._session-card_8sc98_8 ._metadata_8sc98_109{display:flex;flex-wrap:wrap;gap:var(--cpd-space-4x) var(--cpd-space-10x)}:is(._session-card_8sc98_8 ._metadata_8sc98_109)>*{min-width:0}:is(._session-card_8sc98_8 ._metadata_8sc98_109) ._key_8sc98_118{font:var(--cpd-font-body-sm-regular);letter-spacing:var(--cpd-font-letter-spacing-body-sm);color:var(--cpd-color-text-secondary)}:is(._session-card_8sc98_8 ._metadata_8sc98_109) ._value_8sc98_124{font:var(--cpd-font-body-md-regular);letter-spacing:var(--cpd-font-letter-spacing-body-md);color:var(--cpd-color-text-primary);overflow:hidden;text-overflow:ellipsis}a._session-card_8sc98_8:not(._disabled_8sc98_59){transition-property:outline-color,box-shadow;transition-duration:.1s;transition-timing-function:linear}a._session-card_8sc98_8:not(._disabled_8sc98_59):hover,a._session-card_8sc98_8:not(._disabled_8sc98_59):focus-visible{box-shadow:none;outline:2px solid var(--cpd-color-border-interactive-hovered);outline-offset:-2px}a._session-card_8sc98_8:not(._disabled_8sc98_59):focus-visible{outline-color:var(--cpd-color-border-focused)}@media screen and (min-width: 768px){._session-card-root_8sc98_8 ._action_8sc98_13{position:absolute;padding:var(--cpd-space-6x) var(--cpd-space-6x) var(--cpd-space-2x) var(--cpd-space-2x);inset-block-start:0;inset-inline-end:0}}@media screen and (max-width: 767px){._session-card-root_8sc98_8 ._action_8sc98_13{display:flex;flex-direction:column;position:absolute;padding:var(--cpd-space-6x);inset-block-end:0;inset-inline:0}} diff --git a/mas/share/assets/EndBrowserSessionButton-b2eg7MjM.css.br b/mas/share/assets/EndBrowserSessionButton-b2eg7MjM.css.br new file mode 100644 index 0000000..86a4285 Binary files /dev/null and b/mas/share/assets/EndBrowserSessionButton-b2eg7MjM.css.br differ diff --git a/mas/share/assets/EndBrowserSessionButton-b2eg7MjM.css.gz b/mas/share/assets/EndBrowserSessionButton-b2eg7MjM.css.gz new file mode 100644 index 0000000..ddfc00b Binary files /dev/null and b/mas/share/assets/EndBrowserSessionButton-b2eg7MjM.css.gz differ diff --git a/mas/share/assets/EndBrowserSessionButton-b2eg7MjM.css.zz b/mas/share/assets/EndBrowserSessionButton-b2eg7MjM.css.zz new file mode 100644 index 0000000..a02d66b Binary files /dev/null and b/mas/share/assets/EndBrowserSessionButton-b2eg7MjM.css.zz differ diff --git a/mas/share/assets/EndOAuth2SessionButton-CPWjVtc_.js b/mas/share/assets/EndOAuth2SessionButton-CPWjVtc_.js new file mode 100644 index 0000000..18c27d2 --- /dev/null +++ b/mas/share/assets/EndOAuth2SessionButton-CPWjVtc_.js @@ -0,0 +1,52 @@ +import{u as l,c as p,d as S,l as g,k as r,b as y,j as t}from"./main-CiAhdYQG.js";import{a as v,B as A,H as N,N as E,C as h}from"./EndBrowserSessionButton-DXsnVcVV.js";const T=s=>{let n;try{n=new URL(s)}catch{return s}return n.search="",n.hash="",n.protocol==="https:"?n.hostname:n.toString()},I=r(` + fragment EndCompatSessionButton_session on CompatSession { + id + userAgent { + name + os + model + deviceType + } + ssoLogin { + id + redirectUri + } + } +`),f=r(` + mutation EndCompatSession($id: ID!) { + endCompatSession(input: { compatSessionId: $id }) { + status + compatSession { + id + } + } + } +`),D=({session:s,size:n})=>{const{t:i}=l(),e=y(I,s),o=p(),c=S({mutationFn:()=>g({query:f,variables:{id:e.id}}),onSuccess:m=>{o.invalidateQueries({queryKey:["sessionsOverview"]}),o.invalidateQueries({queryKey:["appSessionList"]}),o.invalidateQueries({queryKey:["sessionDetail",m.endCompatSession.compatSession?.id]})}}),a=e.ssoLogin?.redirectUri?T(e.ssoLogin.redirectUri):void 0,u=e.userAgent?.deviceType??"UNKNOWN",d=e.userAgent?.model??(e.userAgent?.name?e.userAgent?.os?i("frontend.session.name_for_platform",{name:e.userAgent.name,platform:e.userAgent.os}):e.userAgent.name:i("frontend.session.unknown_device"));return t.jsx(v,{mutation:c,size:n,children:t.jsx(A,{compact:!0,children:t.jsxs(N,{type:u,children:[t.jsx(E,{name:d}),a&&t.jsx(h,{name:a})]})})})},_="urn:matrix:org.matrix.msc2967.client:device:",x="urn:matrix:client:device:",B=s=>{const[,n]=s.split(x),[,i]=s.split(_);return n||i},O=r(` + fragment EndOAuth2SessionButton_session on Oauth2Session { + id + + userAgent { + name + model + os + deviceType + } + + client { + clientId + clientName + applicationType + logoUri + } + } +`),C=r(` + mutation EndOAuth2Session($id: ID!) { + endOauth2Session(input: { oauth2SessionId: $id }) { + status + oauth2Session { + id + } + } + } +`),U=s=>s==="WEB"?"PC":s==="NATIVE"?"MOBILE":"UNKNOWN",F=({session:s,size:n})=>{const{t:i}=l(),e=y(O,s),o=p(),c=S({mutationFn:()=>g({query:C,variables:{id:e.id}}),onSuccess:m=>{o.invalidateQueries({queryKey:["sessionsOverview"]}),o.invalidateQueries({queryKey:["appSessionList"]}),o.invalidateQueries({queryKey:["sessionDetail",m.endOauth2Session.oauth2Session?.id]})}}),a=(e.userAgent?.deviceType==="UNKNOWN"?null:e.userAgent?.deviceType)??U(e.client.applicationType),u=e.client.clientName||e.client.clientId,d=e.userAgent?.model??(e.userAgent?.name?e.userAgent?.os?i("frontend.session.name_for_platform",{name:e.userAgent.name,platform:e.userAgent.os}):e.userAgent.name:i("frontend.session.unknown_device"));return t.jsx(v,{mutation:c,size:n,children:t.jsx(A,{compact:!0,children:t.jsxs(N,{type:a,children:[t.jsx(E,{name:d}),t.jsx(h,{name:u,logoUri:e.client.logoUri??void 0})]})})})};export{D as E,F as a,B as g,T as s}; +//# sourceMappingURL=EndOAuth2SessionButton-CPWjVtc_.js.map diff --git a/mas/share/assets/EndOAuth2SessionButton-CPWjVtc_.js.br b/mas/share/assets/EndOAuth2SessionButton-CPWjVtc_.js.br new file mode 100644 index 0000000..0ffdfd1 Binary files /dev/null and b/mas/share/assets/EndOAuth2SessionButton-CPWjVtc_.js.br differ diff --git a/mas/share/assets/EndOAuth2SessionButton-CPWjVtc_.js.gz b/mas/share/assets/EndOAuth2SessionButton-CPWjVtc_.js.gz new file mode 100644 index 0000000..3583e94 Binary files /dev/null and b/mas/share/assets/EndOAuth2SessionButton-CPWjVtc_.js.gz differ diff --git a/mas/share/assets/EndOAuth2SessionButton-CPWjVtc_.js.map b/mas/share/assets/EndOAuth2SessionButton-CPWjVtc_.js.map new file mode 100644 index 0000000..8fcdaf9 --- /dev/null +++ b/mas/share/assets/EndOAuth2SessionButton-CPWjVtc_.js.map @@ -0,0 +1 @@ +{"version":3,"file":"EndOAuth2SessionButton-CPWjVtc_.js","sources":["../src/utils/simplifyUrl.ts","../src/components/Session/EndCompatSessionButton.tsx","../src/utils/deviceIdFromScope.ts","../src/components/Session/EndOAuth2SessionButton.tsx"],"sourcesContent":["// Copyright 2025 New Vector Ltd.\n//\n// SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial\n// Please see LICENSE files in the repository root for full details.\n\n/**\n * Simplify a URL by removing the protocol, search params and hash.\n *\n * @param url The URL to simplify\n * @returns The simplified URL\n */\nconst simplifyUrl = (url: string): string => {\n let parsed: URL;\n try {\n parsed = new URL(url);\n } catch (_e) {\n // Not a valid URL, return the original\n return url;\n }\n\n // Clear out the search params and hash\n parsed.search = \"\";\n parsed.hash = \"\";\n\n if (parsed.protocol === \"https:\") {\n return parsed.hostname;\n }\n\n // Return the simplified URL\n return parsed.toString();\n};\n\nexport default simplifyUrl;\n","// Copyright 2025 New Vector Ltd.\n//\n// SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial\n// Please see LICENSE files in the repository root for full details.\n\nimport { useMutation, useQueryClient } from \"@tanstack/react-query\";\nimport { useTranslation } from \"react-i18next\";\nimport { type FragmentType, graphql, useFragment } from \"../../gql\";\nimport { graphqlRequest } from \"../../graphql\";\nimport simplifyUrl from \"../../utils/simplifyUrl\";\nimport * as Card from \"../SessionCard\";\nimport EndSessionButton from \"./EndSessionButton\";\n\nconst FRAGMENT = graphql(/* GraphQL */ `\n fragment EndCompatSessionButton_session on CompatSession {\n id\n userAgent {\n name\n os\n model\n deviceType\n }\n ssoLogin {\n id\n redirectUri\n }\n }\n`);\n\nconst END_SESSION_MUTATION = graphql(/* GraphQL */ `\n mutation EndCompatSession($id: ID!) {\n endCompatSession(input: { compatSessionId: $id }) {\n status\n compatSession {\n id\n }\n }\n }\n`);\n\ntype Props = {\n session: FragmentType;\n size: \"sm\" | \"lg\";\n};\n\nconst EndCompatSessionButton: React.FC = ({ session, size }) => {\n const { t } = useTranslation();\n const data = useFragment(FRAGMENT, session);\n const queryClient = useQueryClient();\n const endSession = useMutation({\n mutationFn: () =>\n graphqlRequest({\n query: END_SESSION_MUTATION,\n variables: { id: data.id },\n }),\n onSuccess: (data) => {\n queryClient.invalidateQueries({ queryKey: [\"sessionsOverview\"] });\n queryClient.invalidateQueries({ queryKey: [\"appSessionList\"] });\n queryClient.invalidateQueries({\n queryKey: [\"sessionDetail\", data.endCompatSession.compatSession?.id],\n });\n },\n });\n\n const clientName = data.ssoLogin?.redirectUri\n ? simplifyUrl(data.ssoLogin.redirectUri)\n : undefined;\n\n const deviceType = data.userAgent?.deviceType ?? \"UNKNOWN\";\n\n const deviceName =\n data.userAgent?.model ??\n (data.userAgent?.name\n ? data.userAgent?.os\n ? t(\"frontend.session.name_for_platform\", {\n name: data.userAgent.name,\n platform: data.userAgent.os,\n })\n : data.userAgent.name\n : t(\"frontend.session.unknown_device\"));\n\n return (\n \n \n \n \n {clientName && }\n \n \n \n );\n};\n\nexport default EndCompatSessionButton;\n","/* Copyright 2024, 2025 New Vector Ltd.\n * Copyright 2023, 2024 The Matrix.org Foundation C.I.C.\n *\n * SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial\n * Please see LICENSE files in the repository root for full details.\n */\n\nconst UNSTABLE_DEVICE_PREFIX = \"urn:matrix:org.matrix.msc2967.client:device:\";\nconst STABLE_DEVICE_PREFIX = \"urn:matrix:client:device:\";\n\n/**\n * Device scopes are suffixed with the deviceId\n * Isolate the suffix so we can display it\n * @param scope the full scope of the session\n * @returns deviceId, or undefined when not a device scope\n */\nexport const getDeviceIdFromScope = (scope: string): string | undefined => {\n const [, stableDeviceId] = scope.split(STABLE_DEVICE_PREFIX);\n const [, unstableDeviceId] = scope.split(UNSTABLE_DEVICE_PREFIX);\n return stableDeviceId || unstableDeviceId;\n};\n","// Copyright 2025 New Vector Ltd.\n//\n// SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial\n// Please see LICENSE files in the repository root for full details.\n\nimport { useMutation, useQueryClient } from \"@tanstack/react-query\";\nimport { useTranslation } from \"react-i18next\";\nimport { type FragmentType, graphql, useFragment } from \"../../gql\";\nimport type { DeviceType, Oauth2ApplicationType } from \"../../gql/graphql\";\nimport { graphqlRequest } from \"../../graphql\";\nimport * as Card from \"../SessionCard\";\nimport EndSessionButton from \"./EndSessionButton\";\n\nconst FRAGMENT = graphql(/* GraphQL */ `\n fragment EndOAuth2SessionButton_session on Oauth2Session {\n id\n\n userAgent {\n name\n model\n os\n deviceType\n }\n\n client {\n clientId\n clientName\n applicationType\n logoUri\n }\n }\n`);\n\nconst END_SESSION_MUTATION = graphql(/* GraphQL */ `\n mutation EndOAuth2Session($id: ID!) {\n endOauth2Session(input: { oauth2SessionId: $id }) {\n status\n oauth2Session {\n id\n }\n }\n }\n`);\n\nconst getDeviceTypeFromClientAppType = (\n appType?: Oauth2ApplicationType | null,\n): DeviceType => {\n if (appType === \"WEB\") {\n return \"PC\";\n }\n if (appType === \"NATIVE\") {\n return \"MOBILE\";\n }\n return \"UNKNOWN\";\n};\n\ntype Props = {\n session: FragmentType;\n size: \"sm\" | \"lg\";\n};\n\nconst EndOAuth2SessionButton: React.FC = ({ session, size }) => {\n const { t } = useTranslation();\n const data = useFragment(FRAGMENT, session);\n const queryClient = useQueryClient();\n const endSession = useMutation({\n mutationFn: () =>\n graphqlRequest({\n query: END_SESSION_MUTATION,\n variables: { id: data.id },\n }),\n onSuccess: (data) => {\n queryClient.invalidateQueries({ queryKey: [\"sessionsOverview\"] });\n queryClient.invalidateQueries({ queryKey: [\"appSessionList\"] });\n queryClient.invalidateQueries({\n queryKey: [\"sessionDetail\", data.endOauth2Session.oauth2Session?.id],\n });\n },\n });\n\n const deviceType =\n (data.userAgent?.deviceType === \"UNKNOWN\"\n ? null\n : data.userAgent?.deviceType) ??\n getDeviceTypeFromClientAppType(data.client.applicationType);\n\n const clientName = data.client.clientName || data.client.clientId;\n\n const deviceName =\n data.userAgent?.model ??\n (data.userAgent?.name\n ? data.userAgent?.os\n ? t(\"frontend.session.name_for_platform\", {\n name: data.userAgent.name,\n platform: data.userAgent.os,\n })\n : data.userAgent.name\n : t(\"frontend.session.unknown_device\"));\n\n return (\n \n \n \n \n \n \n \n \n );\n};\n\nexport default EndOAuth2SessionButton;\n"],"names":["simplifyUrl","url","parsed","FRAGMENT","graphql","END_SESSION_MUTATION","EndCompatSessionButton","session","size","t","useTranslation","data","useFragment","queryClient","useQueryClient","endSession","useMutation","graphqlRequest","clientName","deviceType","deviceName","EndSessionButton","Card.Body","jsxs","Card.Header","jsx","Card.Name","Card.Client","UNSTABLE_DEVICE_PREFIX","STABLE_DEVICE_PREFIX","getDeviceIdFromScope","scope","stableDeviceId","unstableDeviceId","getDeviceTypeFromClientAppType","appType","EndOAuth2SessionButton"],"mappings":"uKAWA,MAAMA,EAAeC,GAAwB,CAC3C,IAAIC,EACJ,GAAI,CACFA,EAAS,IAAI,IAAID,CAAG,CACtB,MAAa,CAEX,OAAOA,CACT,CAMA,OAHAC,EAAO,OAAS,GAChBA,EAAO,KAAO,GAEVA,EAAO,WAAa,SACfA,EAAO,SAITA,EAAO,SAAA,CAChB,ECjBMC,EAAWC,EAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CActC,EAEKC,EAAuBD,EAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CASlD,EAOKE,EAA0C,CAAC,CAAE,QAAAC,EAAS,KAAAC,KAAW,CACrE,KAAM,CAAE,EAAAC,CAAA,EAAMC,EAAA,EACRC,EAAOC,EAAYT,EAAUI,CAAO,EACpCM,EAAcC,EAAA,EACdC,EAAaC,EAAY,CAC7B,WAAY,IACVC,EAAe,CACb,MAAOZ,EACP,UAAW,CAAE,GAAIM,EAAK,EAAA,CAAG,CAC1B,EACH,UAAYA,GAAS,CACnBE,EAAY,kBAAkB,CAAE,SAAU,CAAC,kBAAkB,EAAG,EAChEA,EAAY,kBAAkB,CAAE,SAAU,CAAC,gBAAgB,EAAG,EAC9DA,EAAY,kBAAkB,CAC5B,SAAU,CAAC,gBAAiBF,EAAK,iBAAiB,eAAe,EAAE,CAAA,CACpE,CACH,CAAA,CACD,EAEKO,EAAaP,EAAK,UAAU,YAC9BX,EAAYW,EAAK,SAAS,WAAW,EACrC,OAEEQ,EAAaR,EAAK,WAAW,YAAc,UAE3CS,EACJT,EAAK,WAAW,QACfA,EAAK,WAAW,KACbA,EAAK,WAAW,GACdF,EAAE,qCAAsC,CACtC,KAAME,EAAK,UAAU,KACrB,SAAUA,EAAK,UAAU,EAAA,CAC1B,EACDA,EAAK,UAAU,KACjBF,EAAE,iCAAiC,GAEzC,aACGY,EAAA,CAAiB,SAAUN,EAAY,KAAAP,EACtC,eAACc,EAAA,CAAU,QAAO,GAChB,SAAAC,EAAAA,KAACC,EAAA,CAAY,KAAML,EACjB,SAAA,CAAAM,EAAAA,IAACC,EAAA,CAAU,KAAMN,CAAA,CAAY,EAC5BF,GAAcO,EAAAA,IAACE,EAAA,CAAY,KAAMT,CAAA,CAAY,CAAA,CAAA,CAChD,EACF,EACF,CAEJ,ECpFMU,EAAyB,+CACzBC,EAAuB,4BAQhBC,EAAwBC,GAAsC,CACzE,KAAM,CAAA,CAAGC,CAAc,EAAID,EAAM,MAAMF,CAAoB,EACrD,CAAA,CAAGI,CAAgB,EAAIF,EAAM,MAAMH,CAAsB,EAC/D,OAAOI,GAAkBC,CAC3B,ECPM9B,EAAWC,EAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAkBtC,EAEKC,EAAuBD,EAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CASlD,EAEK8B,EACJC,GAEIA,IAAY,MACP,KAELA,IAAY,SACP,SAEF,UAQHC,EAA0C,CAAC,CAAE,QAAA7B,EAAS,KAAAC,KAAW,CACrE,KAAM,CAAE,EAAAC,CAAA,EAAMC,EAAA,EACRC,EAAOC,EAAYT,EAAUI,CAAO,EACpCM,EAAcC,EAAA,EACdC,EAAaC,EAAY,CAC7B,WAAY,IACVC,EAAe,CACb,MAAOZ,EACP,UAAW,CAAE,GAAIM,EAAK,EAAA,CAAG,CAC1B,EACH,UAAYA,GAAS,CACnBE,EAAY,kBAAkB,CAAE,SAAU,CAAC,kBAAkB,EAAG,EAChEA,EAAY,kBAAkB,CAAE,SAAU,CAAC,gBAAgB,EAAG,EAC9DA,EAAY,kBAAkB,CAC5B,SAAU,CAAC,gBAAiBF,EAAK,iBAAiB,eAAe,EAAE,CAAA,CACpE,CACH,CAAA,CACD,EAEKQ,GACHR,EAAK,WAAW,aAAe,UAC5B,KACAA,EAAK,WAAW,aACpBuB,EAA+BvB,EAAK,OAAO,eAAe,EAEtDO,EAAaP,EAAK,OAAO,YAAcA,EAAK,OAAO,SAEnDS,EACJT,EAAK,WAAW,QACfA,EAAK,WAAW,KACbA,EAAK,WAAW,GACdF,EAAE,qCAAsC,CACtC,KAAME,EAAK,UAAU,KACrB,SAAUA,EAAK,UAAU,EAAA,CAC1B,EACDA,EAAK,UAAU,KACjBF,EAAE,iCAAiC,GAEzC,aACGY,EAAA,CAAiB,SAAUN,EAAY,KAAAP,EACtC,eAACc,EAAA,CAAU,QAAO,GAChB,SAAAC,EAAAA,KAACC,EAAA,CAAY,KAAML,EACjB,SAAA,CAAAM,EAAAA,IAACC,EAAA,CAAU,KAAMN,CAAA,CAAY,EAC7BK,EAAAA,IAACE,EAAA,CACC,KAAMT,EACN,QAASP,EAAK,OAAO,SAAW,MAAA,CAAA,CAClC,CAAA,CACF,EACF,EACF,CAEJ"} \ No newline at end of file diff --git a/mas/share/assets/EndOAuth2SessionButton-CPWjVtc_.js.zz b/mas/share/assets/EndOAuth2SessionButton-CPWjVtc_.js.zz new file mode 100644 index 0000000..2bcade1 Binary files /dev/null and b/mas/share/assets/EndOAuth2SessionButton-CPWjVtc_.js.zz differ diff --git a/mas/share/assets/Filter-_9i8iQpA.js b/mas/share/assets/Filter-_9i8iQpA.js new file mode 100644 index 0000000..cf91c61 --- /dev/null +++ b/mas/share/assets/Filter-_9i8iQpA.js @@ -0,0 +1,16 @@ +import{u as _,b as x,j as s,k as g,r as f,w as u,ag as p,C as w}from"./main-CiAhdYQG.js";import{p as d,L as h,D as j,B as v}from"./LastActive-D4SP35FS.js";import{R as b,L as N,H as y,N as B,C as F,M as S,I as m,A as I,E as L}from"./EndBrowserSessionButton-DXsnVcVV.js";const E=""+new URL("chrome_64x64-TTj2uZYF.png",import.meta.url).href,R=""+new URL("firefox_64x64-sbBPu9C9.png",import.meta.url).href,T=""+new URL("safari_64x64-DJVjfeAY.png",import.meta.url).href,C=g(` + fragment BrowserSession_session on BrowserSession { + id + createdAt + finishedAt + ...EndBrowserSessionButton_session + userAgent { + deviceType + name + os + model + } + lastActiveAt + } +`),U=r=>{const t=r?.toLowerCase();if(t?.includes("chrome")||t?.includes("chromium"))return E;if(t?.includes("firefox"))return R;if(t?.includes("safari"))return T},G=({session:r,isCurrent:t})=>{const e=x(C,r),{t:n}=_(),a=e.userAgent?.deviceType??"UNKNOWN";let o=null,i=null;e.userAgent?.model?(o=e.userAgent.model,e.userAgent?.name&&(e.userAgent?.os?i=n("frontend.session.name_for_platform",{name:e.userAgent.name,platform:e.userAgent.os}):i=e.userAgent.name)):(o=e.userAgent?.name??n("frontend.session.unknown_browser"),i=e.userAgent?.os??null);const A=d(e.createdAt),c=e.lastActiveAt?d(e.lastActiveAt):void 0;return s.jsxs(b,{children:[s.jsxs(N,{to:"/sessions/$id",params:{id:e.id},disabled:!!e.finishedAt,children:[s.jsxs(y,{type:a,children:[s.jsx(B,{name:o}),i&&s.jsx(F,{name:i,logoUri:U(e.userAgent?.name??void 0)})]}),s.jsxs(S,{children:[c&&!t&&s.jsx(m,{label:n("frontend.session.last_active_label"),children:s.jsx(h,{lastActive:c})}),s.jsx(m,{label:n("frontend.session.signed_in_label"),children:s.jsx(j,{datetime:A})}),t&&s.jsx(v,{kind:"green",className:"self-center",children:n("frontend.session.current")})]})]}),!e.finishedAt&&s.jsx(I,{children:s.jsx(L,{session:e,size:"sm"})})]})},k="_empty-state_1lwui_8",D={emptyState:k},J=f.forwardRef(function({children:t,...e},n){const a=u(D.emptyState,e.className);return s.jsx("div",{ref:n,...e,className:a,children:t})}),M="_filter_nv8wu_8",H="_enabled-filter_nv8wu_18",O="_close-icon_nv8wu_22",Y="_disabled-filter_nv8wu_43",l={filter:M,enabledFilter:H,closeIcon:O,disabledFilter:Y},K=p(f.forwardRef(function({children:t,enabled:e,...n},a){const o=u(l.filter,e?l.enabledFilter:l.disabledFilter,n.className);return s.jsxs("a",{...n,ref:a,className:o,children:[t,e&&s.jsx(w,{className:l.closeIcon})]})}));export{G as B,J as E,K as F,U as b}; +//# sourceMappingURL=Filter-_9i8iQpA.js.map diff --git a/mas/share/assets/Filter-_9i8iQpA.js.br b/mas/share/assets/Filter-_9i8iQpA.js.br new file mode 100644 index 0000000..e3b9c39 Binary files /dev/null and b/mas/share/assets/Filter-_9i8iQpA.js.br differ diff --git a/mas/share/assets/Filter-_9i8iQpA.js.gz b/mas/share/assets/Filter-_9i8iQpA.js.gz new file mode 100644 index 0000000..507080a Binary files /dev/null and b/mas/share/assets/Filter-_9i8iQpA.js.gz differ diff --git a/mas/share/assets/Filter-_9i8iQpA.js.map b/mas/share/assets/Filter-_9i8iQpA.js.map new file mode 100644 index 0000000..2c51770 --- /dev/null +++ b/mas/share/assets/Filter-_9i8iQpA.js.map @@ -0,0 +1 @@ +{"version":3,"file":"Filter-_9i8iQpA.js","sources":["../node_modules/@browser-logos/chrome/chrome_64x64.png?url","../node_modules/@browser-logos/firefox/firefox_64x64.png?url","../node_modules/@browser-logos/safari/safari_64x64.png?url","../src/components/BrowserSession.tsx","../src/components/EmptyState/EmptyState.tsx","../src/components/Filter/Filter.tsx"],"sourcesContent":["export default \"__VITE_ASSET__DMC9PJLb__\"","export default \"__VITE_ASSET__wNonlrnI__\"","export default \"__VITE_ASSET__CbfHxpvL__\"","// Copyright 2024, 2025 New Vector Ltd.\n// Copyright 2022-2024 The Matrix.org Foundation C.I.C.\n//\n// SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial\n// Please see LICENSE files in the repository root for full details.\n\nimport IconChrome from \"@browser-logos/chrome/chrome_64x64.png?url\";\nimport IconFirefox from \"@browser-logos/firefox/firefox_64x64.png?url\";\nimport IconSafari from \"@browser-logos/safari/safari_64x64.png?url\";\nimport { Badge } from \"@vector-im/compound-web\";\nimport { parseISO } from \"date-fns\";\nimport { useTranslation } from \"react-i18next\";\nimport { type FragmentType, graphql, useFragment } from \"../gql\";\nimport DateTime from \"./DateTime\";\nimport EndBrowserSessionButton from \"./Session/EndBrowserSessionButton\";\nimport LastActive from \"./Session/LastActive\";\nimport * as Card from \"./SessionCard\";\n\nconst FRAGMENT = graphql(/* GraphQL */ `\n fragment BrowserSession_session on BrowserSession {\n id\n createdAt\n finishedAt\n ...EndBrowserSessionButton_session\n userAgent {\n deviceType\n name\n os\n model\n }\n lastActiveAt\n }\n`);\n\nexport const browserLogoUri = (browser?: string): string | undefined => {\n const lcBrowser = browser?.toLowerCase();\n\n if (lcBrowser?.includes(\"chrome\") || lcBrowser?.includes(\"chromium\")) {\n return IconChrome;\n }\n\n if (lcBrowser?.includes(\"firefox\")) {\n return IconFirefox;\n }\n\n if (lcBrowser?.includes(\"safari\")) {\n return IconSafari;\n }\n};\n\ntype Props = {\n session: FragmentType;\n isCurrent: boolean;\n};\n\nconst BrowserSession: React.FC = ({ session, isCurrent }) => {\n const data = useFragment(FRAGMENT, session);\n const { t } = useTranslation();\n\n const deviceType = data.userAgent?.deviceType ?? \"UNKNOWN\";\n\n let deviceName: string | null = null;\n let clientName: string | null = null;\n\n // If we have a model, use that as the device name, and the browser (+ OS) as the client name\n if (data.userAgent?.model) {\n deviceName = data.userAgent.model;\n if (data.userAgent?.name) {\n if (data.userAgent?.os) {\n clientName = t(\"frontend.session.name_for_platform\", {\n name: data.userAgent.name,\n platform: data.userAgent.os,\n });\n } else {\n clientName = data.userAgent.name;\n }\n }\n } else {\n // Else use the browser as the device name\n deviceName = data.userAgent?.name ?? t(\"frontend.session.unknown_browser\");\n // and if we have an OS, use that as the client name\n clientName = data.userAgent?.os ?? null;\n }\n\n const createdAt = parseISO(data.createdAt);\n const lastActiveAt = data.lastActiveAt\n ? parseISO(data.lastActiveAt)\n : undefined;\n\n return (\n \n \n \n \n {clientName && (\n \n )}\n \n\n \n {lastActiveAt && !isCurrent && (\n \n \n \n )}\n\n \n \n \n\n {isCurrent && (\n \n {t(\"frontend.session.current\")}\n \n )}\n \n \n\n {!data.finishedAt && (\n \n \n \n )}\n \n );\n};\n\nexport default BrowserSession;\n","// Copyright 2024, 2025 New Vector Ltd.\n// Copyright 2024 The Matrix.org Foundation C.I.C.\n//\n// SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial\n// Please see LICENSE files in the repository root for full details.\n\nimport classNames from \"classnames\";\nimport { forwardRef } from \"react\";\n\nimport styles from \"./EmptyState.module.css\";\n\n/**\n * A component to display a message when a list is empty\n */\nexport const EmptyState = forwardRef<\n HTMLDivElement,\n React.ComponentPropsWithoutRef<\"div\">\n>(function EmptyState({ children, ...props }, ref) {\n const className = classNames(styles.emptyState, props.className);\n return (\n
    \n {children}\n
    \n );\n});\n","// Copyright 2024, 2025 New Vector Ltd.\n// Copyright 2024 The Matrix.org Foundation C.I.C.\n//\n// SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial\n// Please see LICENSE files in the repository root for full details.\n\nimport { createLink } from \"@tanstack/react-router\";\nimport CloseIcon from \"@vector-im/compound-design-tokens/assets/web/icons/close\";\nimport classNames from \"classnames\";\nimport { forwardRef } from \"react\";\n\nimport styles from \"./Filter.module.css\";\n\ntype Props = React.ComponentPropsWithRef<\"a\"> & {\n enabled?: boolean;\n};\n\n/**\n * A link which looks like a chip used when filtering items\n */\nexport const Filter = createLink(\n forwardRef(function Filter(\n { children, enabled, ...props },\n ref,\n ) {\n const className = classNames(\n styles.filter,\n enabled ? styles.enabledFilter : styles.disabledFilter,\n props.className,\n );\n\n return (\n \n {children}\n {enabled && }\n \n );\n }),\n);\n"],"names":["IconChrome","IconFirefox","IconSafari","FRAGMENT","graphql","browserLogoUri","browser","lcBrowser","BrowserSession","session","isCurrent","data","useFragment","t","useTranslation","deviceType","deviceName","clientName","createdAt","parseISO","lastActiveAt","jsxs","Card.Root","Card.LinkBody","Card.Header","jsx","Card.Name","Card.Client","Card.Metadata","Card.Info","LastActive","DateTime","Badge","Card.Action","EndBrowserSessionButton","EmptyState","forwardRef","children","props","ref","className","classNames","styles","Filter","createLink","enabled","CloseIcon"],"mappings":"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","x_google_ignoreList":[0,1,2]} \ No newline at end of file diff --git a/mas/share/assets/Filter-_9i8iQpA.js.zz b/mas/share/assets/Filter-_9i8iQpA.js.zz new file mode 100644 index 0000000..65b8239 Binary files /dev/null and b/mas/share/assets/Filter-_9i8iQpA.js.zz differ diff --git a/mas/share/assets/Filter-lwtJLR9L.css b/mas/share/assets/Filter-lwtJLR9L.css new file mode 100644 index 0000000..9048e5d --- /dev/null +++ b/mas/share/assets/Filter-lwtJLR9L.css @@ -0,0 +1 @@ +._empty-state_1lwui_8{display:flex;flex-direction:column;gap:var(--cpd-space-2x);padding:var(--cpd-space-4x);background:var(--cpd-color-gray-200);color:var(--cpd-color-text-secondary);font:var(--cpd-font-body-sm-regular);letter-spacing:var(--cpd-font-letter-spacing-body-sm)}._filter_nv8wu_8{display:flex;align-items:center;gap:var(--cpd-space-2x);font:var(--cpd-font-body-xs-regular);letter-spacing:var(--cpd-font-letter-spacing-body-xs);padding:var(--cpd-space-2x) var(--cpd-space-3x);border-radius:var(--cpd-radius-pill-effect)}._enabled-filter_nv8wu_18{background:var(--cpd-color-bg-action-primary-rest);color:var(--cpd-color-text-on-solid-primary)}._enabled-filter_nv8wu_18>._close-icon_nv8wu_22{height:var(--cpd-space-4x);width:var(--cpd-space-4x);opacity:.5}._enabled-filter_nv8wu_18:hover{background:var(--cpd-color-bg-action-primary-hovered)}._enabled-filter_nv8wu_18:hover>._close-icon_nv8wu_22{opacity:1}._enabled-filter_nv8wu_18:active{background:var(--cpd-color-bg-action-primary-rest)}._enabled-filter_nv8wu_18:active>._close-icon_nv8wu_22{opacity:1}._disabled-filter_nv8wu_43{color:var(--cpd-color-text-action-primary);background:var(--cpd-color-bg-canvas-default);outline:1px solid var(--cpd-color-border-interactive-secondary)}._disabled-filter_nv8wu_43:hover{background:var(--cpd-color-bg-subtle-secondary)} diff --git a/mas/share/assets/Filter-lwtJLR9L.css.br b/mas/share/assets/Filter-lwtJLR9L.css.br new file mode 100644 index 0000000..3258ab4 Binary files /dev/null and b/mas/share/assets/Filter-lwtJLR9L.css.br differ diff --git a/mas/share/assets/Filter-lwtJLR9L.css.gz b/mas/share/assets/Filter-lwtJLR9L.css.gz new file mode 100644 index 0000000..a351b8e Binary files /dev/null and b/mas/share/assets/Filter-lwtJLR9L.css.gz differ diff --git a/mas/share/assets/Filter-lwtJLR9L.css.zz b/mas/share/assets/Filter-lwtJLR9L.css.zz new file mode 100644 index 0000000..0651755 --- /dev/null +++ b/mas/share/assets/Filter-lwtJLR9L.css.zz @@ -0,0 +1,3 @@ +xڥTA0 9Vl`b%A^ix{ŀ8r8˺Ma?Ui/6=zRP2VfǢ +XⰛ7e@~k#woĆ/7"߽ \ No newline at end of file diff --git a/mas/share/assets/Heading-zTQC9Kqs.js b/mas/share/assets/Heading-zTQC9Kqs.js new file mode 100644 index 0000000..f7bb3ee --- /dev/null +++ b/mas/share/assets/Heading-zTQC9Kqs.js @@ -0,0 +1,2 @@ +import{j as t,av as r,T as o}from"./main-CiAhdYQG.js";const a=({as:s="h1",children:e,...i})=>t.jsx(r,{as:s,type:"heading",...i,children:e}),h=({children:s,...e})=>t.jsx(a,{as:"h3",weight:"semibold",size:"md",...e,children:s}),m=({children:s,...e})=>t.jsx(a,{as:"h4",weight:"semibold",size:"sm",...e,children:s}),x=({children:s,...e})=>t.jsx(o,{as:"h5",weight:"semibold",size:"lg",...e,children:s});export{a as H,m as a,h as b,x as c}; +//# sourceMappingURL=Heading-zTQC9Kqs.js.map diff --git a/mas/share/assets/Heading-zTQC9Kqs.js.map b/mas/share/assets/Heading-zTQC9Kqs.js.map new file mode 100644 index 0000000..c81b018 --- /dev/null +++ b/mas/share/assets/Heading-zTQC9Kqs.js.map @@ -0,0 +1 @@ +{"version":3,"file":"Heading-zTQC9Kqs.js","sources":["../node_modules/@vector-im/compound-web/dist/components/Typography/Heading.js"],"sourcesContent":["import { jsx } from \"react/jsx-runtime\";\nimport { Typography } from \"./Typography.js\";\nimport { Text } from \"./Text.js\";\nconst Heading = ({ as = \"h1\", children, ...props }) => {\n return /* @__PURE__ */ jsx(Typography, { as, type: \"heading\", ...props, children });\n};\nconst H1 = ({ children, ...props }) => {\n return /* @__PURE__ */ jsx(Heading, { as: \"h1\", weight: \"semibold\", size: \"xl\", ...props, children });\n};\nconst H2 = ({ children, ...props }) => {\n return /* @__PURE__ */ jsx(Heading, { as: \"h2\", weight: \"semibold\", size: \"lg\", ...props, children });\n};\nconst H3 = ({ children, ...props }) => {\n return /* @__PURE__ */ jsx(Heading, { as: \"h3\", weight: \"semibold\", size: \"md\", ...props, children });\n};\nconst H4 = ({ children, ...props }) => {\n return /* @__PURE__ */ jsx(Heading, { as: \"h4\", weight: \"semibold\", size: \"sm\", ...props, children });\n};\nconst H5 = ({ children, ...props }) => {\n return /* @__PURE__ */ jsx(Text, { as: \"h5\", weight: \"semibold\", size: \"lg\", ...props, children });\n};\nconst H6 = ({ children, ...props }) => {\n return /* @__PURE__ */ jsx(Text, { as: \"h6\", weight: \"semibold\", size: \"md\", ...props, children });\n};\nexport {\n H1,\n H2,\n H3,\n H4,\n H5,\n H6,\n Heading\n};\n//# sourceMappingURL=Heading.js.map\n"],"names":["Heading","as","children","props","jsx","Typography","H3","H4","H5","Text"],"mappings":"sDAGK,MAACA,EAAU,CAAC,CAAE,GAAAC,EAAK,KAAM,SAAAC,EAAU,GAAGC,KAClBC,EAAAA,IAAIC,EAAY,CAAE,GAAAJ,EAAI,KAAM,UAAW,GAAGE,EAAO,SAAAD,EAAU,EAQ9EI,EAAK,CAAC,CAAE,SAAAJ,EAAU,GAAGC,CAAK,IACPC,MAAIJ,EAAS,CAAE,GAAI,KAAM,OAAQ,WAAY,KAAM,KAAM,GAAGG,EAAO,SAAAD,CAAQ,CAAE,EAEhGK,EAAK,CAAC,CAAE,SAAAL,EAAU,GAAGC,CAAK,IACPC,MAAIJ,EAAS,CAAE,GAAI,KAAM,OAAQ,WAAY,KAAM,KAAM,GAAGG,EAAO,SAAAD,CAAQ,CAAE,EAEhGM,EAAK,CAAC,CAAE,SAAAN,EAAU,GAAGC,CAAK,IACPC,MAAIK,EAAM,CAAE,GAAI,KAAM,OAAQ,WAAY,KAAM,KAAM,GAAGN,EAAO,SAAAD,CAAQ,CAAE","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/mas/share/assets/LastActive-C9wo4AOG.css b/mas/share/assets/LastActive-C9wo4AOG.css new file mode 100644 index 0000000..285806e --- /dev/null +++ b/mas/share/assets/LastActive-C9wo4AOG.css @@ -0,0 +1 @@ +._active_1y6r4_8{color:var(--cpd-color-text-success-primary)} diff --git a/mas/share/assets/LastActive-D4SP35FS.js b/mas/share/assets/LastActive-D4SP35FS.js new file mode 100644 index 0000000..5c86213 --- /dev/null +++ b/mas/share/assets/LastActive-D4SP35FS.js @@ -0,0 +1,2 @@ +import{w as k,j as g,av as G,u as L}from"./main-CiAhdYQG.js";const V="_badge_1t12g_8",J={badge:V},$t=({children:e,kind:t="default",className:n})=>{const r=k(J.badge,n);return g.jsx(G,{as:"span",size:"sm",weight:"medium",className:r,"data-kind":t,children:e})},X=365.2425,K=6048e5,P=864e5,_=6e4,T=36e5,U=3600,tt=60,N=U*24,et=N*7,z=N*X,W=z/12,nt=W*3,b=Symbol.for("constructDateFrom");function w(e,t){return typeof e=="function"?e(t):e&&typeof e=="object"&&b in e?e[b](t):e instanceof Date?new e.constructor(t):new Date(t)}function l(e,t){return w(e,e)}let rt={};function st(){return rt}function Y(e,t){const n=st(),r=n.weekStartsOn??n.locale?.options?.weekStartsOn??0,s=l(e),a=s.getDay(),o=(atypeof r=="object"));return t.map(n)}function C(e,t){const n=l(e);return n.setHours(0,0,0,0),n}function S(e,t,n){const[r,s]=d(n?.in,e,t),a=C(r),o=C(s),c=+a-p(a),i=+o-p(o);return Math.round((c-i)/P)}function at(e,t,n){const[r,s]=d(n?.in,e,t),a=r.getFullYear()-s.getFullYear(),o=r.getMonth()-s.getMonth();return a*12+o}function v(e,t){const n=l(e);return Math.trunc(n.getMonth()/3)+1}function x(e,t,n){const[r,s]=d(n?.in,e,t),a=r.getFullYear()-s.getFullYear(),o=v(r)-v(s);return a*4+o}function ot(e,t,n){const[r,s]=d(n?.in,e,t),a=Y(r),o=Y(s),c=+a-p(a),i=+o-p(o);return Math.round((c-i)/K)}function $(e,t,n){const[r,s]=d(n?.in,e,t);return r.getFullYear()-s.getFullYear()}function O(e){return t=>{const r=(e?Math[e]:Math.trunc)(t);return r===0?0:r}}function j(e,t,n){const[r,s]=d(n?.in,e,t),a=(+r-+s)/T;return O(n?.roundingMethod)(a)}function R(e,t){return+l(e)-+l(t)}function it(e,t,n){const r=R(e,t)/_;return O(n?.roundingMethod)(r)}function M(e,t,n){const r=R(e,t)/1e3;return O(n?.roundingMethod)(r)}function f(e,t){const n=e<0?"-":"",r=Math.abs(e).toString().padStart(t,"0");return n+r}function ct(e,t){const n=l(e);if(isNaN(+n))throw new RangeError("Invalid time value");let r="",s="";const a="-",o=":";{const c=f(n.getDate(),2),i=f(n.getMonth()+1,2);r=`${f(n.getFullYear(),4)}${a}${i}${a}${c}`}{const c=n.getTimezoneOffset();if(c!==0){const F=Math.abs(c),Q=f(Math.trunc(F/60),2),B=f(F%60,2);s=`${c<0?"+":"-"}${Q}:${B}`}else s="Z";const i=f(n.getHours(),2),u=f(n.getMinutes(),2),m=f(n.getSeconds(),2),A=r===""?"":"T",q=[i,u,m].join(o);r=`${r}${A}${q}${s}`}return r}function ut(e,t,n){let r;return lt(t)?r=t:n=t,new Intl.DateTimeFormat(n?.locale,r).format(l(e))}function lt(e){return e!==void 0&&!("locale"in e)}function ft(e,t,n){let r=0,s;const[a,o]=d(n?.in,e,t);{const i=M(a,o);Math.abs(i)w(t?.in,NaN),s=gt(e);let a;if(s.date){const u=ht(s.date,2);a=pt(u.restDateString,u.year)}if(!a||isNaN(+a))return n();const o=+a;let c=0,i;if(s.time&&(c=Mt(s.time),isNaN(c)))return n();if(s.timezone){if(i=yt(s.timezone),isNaN(i))return n()}else{const u=new Date(o+c),m=l(0);return m.setFullYear(u.getUTCFullYear(),u.getUTCMonth(),u.getUTCDate()),m.setHours(u.getUTCHours(),u.getUTCMinutes(),u.getUTCSeconds(),u.getUTCMilliseconds()),m}return l(o+c+i)}const h={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},dt=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,mt=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,Dt=/^([+-])(\d{2})(?::?(\d{2}))?$/;function gt(e){const t={},n=e.split(h.dateTimeDelimiter);let r;if(n.length>2)return t;if(/:/.test(n[0])?r=n[0]:(t.date=n[0],r=n[1],h.timeZoneDelimiter.test(t.date)&&(t.date=e.split(h.timeZoneDelimiter)[0],r=e.substr(t.date.length,e.length))),r){const s=h.timezone.exec(r);s?(t.time=r.replace(s[1],""),t.timezone=s[1]):t.time=r}return t}function ht(e,t){const n=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+t)+"})|(\\d{2}|[+-]\\d{"+(2+t)+"})$)"),r=e.match(n);if(!r)return{year:NaN,restDateString:""};const s=r[1]?parseInt(r[1]):null,a=r[2]?parseInt(r[2]):null;return{year:a===null?s:a*100,restDateString:e.slice((r[1]||r[2]).length)}}function pt(e,t){if(t===null)return new Date(NaN);const n=e.match(dt);if(!n)return new Date(NaN);const r=!!n[4],s=D(n[1]),a=D(n[2])-1,o=D(n[3]),c=D(n[4]),i=D(n[5])-1;if(r)return wt(t,c,i)?It(t,c,i):new Date(NaN);{const u=new Date(0);return!Tt(t,a,o)||!Nt(t,s)?new Date(NaN):(u.setUTCFullYear(t,a,Math.max(s,o)),u)}}function D(e){return e?parseInt(e):1}function Mt(e){const t=e.match(mt);if(!t)return NaN;const n=y(t[1]),r=y(t[2]),s=y(t[3]);return Ot(n,r,s)?n*T+r*_+s*1e3:NaN}function y(e){return e&&parseFloat(e.replace(",","."))||0}function yt(e){if(e==="Z")return 0;const t=e.match(Dt);if(!t)return 0;const n=t[1]==="+"?-1:1,r=parseInt(t[2]),s=t[3]&&parseInt(t[3])||0;return Ft(r,s)?n*(r*T+s*_):NaN}function It(e,t,n){const r=new Date(0);r.setUTCFullYear(e,0,4);const s=r.getUTCDay()||7,a=(t-1)*7+n+1-s;return r.setUTCDate(r.getUTCDate()+a),r}const _t=[31,null,31,30,31,30,31,31,30,31,30,31];function H(e){return e%400===0||e%4===0&&e%100!==0}function Tt(e,t,n){return t>=0&&t<=11&&n>=1&&n<=(_t[t]||(H(e)?29:28))}function Nt(e,t){return t>=1&&t<=(H(e)?366:365)}function wt(e,t,n){return t>=1&&t<=53&&n>=0&&n<=6}function Ot(e,t,n){return e===24?t===0&&n===0:n>=0&&n<60&&t>=0&&t<60&&e>=0&&e<25}function Ft(e,t){return t>=0&&t<=59}const Z=e=>ut(e,{year:"numeric",month:"short",day:"numeric",weekday:"short",hour:"numeric",minute:"numeric"}),E=(e,t)=>Math.abs(j(t,e,{roundingMethod:"round"}))>1?Z(e):ft(e,t),kt=({datetime:e,now:t,className:n})=>{const r=typeof e=="string"?I(e):e,a=E(r,t||new Date);return g.jsx("time",{className:n,dateTime:ct(r),children:a})},bt="_active_1y6r4_8",Yt={active:bt},Ct=180,St=3600*24*90,Ut=({lastActive:e,now:t,className:n})=>{const{t:r}=L(),s=typeof e=="string"?I(e):e,a=t?typeof t=="string"?I(t):t:new Date,o=Z(s);if(M(a,s)<=Ct)return g.jsx("span",{title:o,className:k(Yt.active,n),children:r("frontend.last_active.active_now")});if(M(a,s)>St)return g.jsx("span",{title:o,className:n,children:r("frontend.last_active.inactive_90_days")});const c=E(s,a);return g.jsx("span",{title:o,className:n,children:r("frontend.last_active.active_date",{relativeDate:c})})};export{$t as B,kt as D,Ut as L,I as p}; +//# sourceMappingURL=LastActive-D4SP35FS.js.map diff --git a/mas/share/assets/LastActive-D4SP35FS.js.br b/mas/share/assets/LastActive-D4SP35FS.js.br new file mode 100644 index 0000000..46bc419 Binary files /dev/null and b/mas/share/assets/LastActive-D4SP35FS.js.br differ diff --git a/mas/share/assets/LastActive-D4SP35FS.js.gz b/mas/share/assets/LastActive-D4SP35FS.js.gz new file mode 100644 index 0000000..c6c36f2 Binary files /dev/null and b/mas/share/assets/LastActive-D4SP35FS.js.gz differ diff --git a/mas/share/assets/LastActive-D4SP35FS.js.map b/mas/share/assets/LastActive-D4SP35FS.js.map new file mode 100644 index 0000000..0cf6ec2 --- /dev/null +++ b/mas/share/assets/LastActive-D4SP35FS.js.map @@ -0,0 +1 @@ +{"version":3,"file":"LastActive-D4SP35FS.js","sources":["../node_modules/@vector-im/compound-web/dist/components/Badge/Badge.module.css.js","../node_modules/@vector-im/compound-web/dist/components/Badge/Badge.js","../node_modules/date-fns/constants.js","../node_modules/date-fns/constructFrom.js","../node_modules/date-fns/toDate.js","../node_modules/date-fns/_lib/defaultOptions.js","../node_modules/date-fns/startOfWeek.js","../node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js","../node_modules/date-fns/_lib/normalizeDates.js","../node_modules/date-fns/startOfDay.js","../node_modules/date-fns/differenceInCalendarDays.js","../node_modules/date-fns/differenceInCalendarMonths.js","../node_modules/date-fns/getQuarter.js","../node_modules/date-fns/differenceInCalendarQuarters.js","../node_modules/date-fns/differenceInCalendarWeeks.js","../node_modules/date-fns/differenceInCalendarYears.js","../node_modules/date-fns/_lib/getRoundingMethod.js","../node_modules/date-fns/differenceInHours.js","../node_modules/date-fns/differenceInMilliseconds.js","../node_modules/date-fns/differenceInMinutes.js","../node_modules/date-fns/differenceInSeconds.js","../node_modules/date-fns/_lib/addLeadingZeros.js","../node_modules/date-fns/formatISO.js","../node_modules/date-fns/intlFormat.js","../node_modules/date-fns/intlFormatDistance.js","../node_modules/date-fns/parseISO.js","../src/components/DateTime.tsx","../src/components/Session/LastActive.tsx"],"sourcesContent":["const badge = \"_badge_1t12g_8\";\nconst styles = {\n badge\n};\nexport {\n badge,\n styles as default\n};\n//# sourceMappingURL=Badge.module.css.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport classNames from \"classnames\";\nimport styles from \"./Badge.module.css.js\";\nimport { Typography } from \"../Typography/Typography.js\";\nconst Badge = ({\n children,\n kind = \"default\",\n className\n}) => {\n const classes = classNames(styles.badge, className);\n return /* @__PURE__ */ jsx(\n Typography,\n {\n as: \"span\",\n size: \"sm\",\n weight: \"medium\",\n className: classes,\n \"data-kind\": kind,\n children\n }\n );\n};\nexport {\n Badge\n};\n//# sourceMappingURL=Badge.js.map\n","/**\n * @module constants\n * @summary Useful constants\n * @description\n * Collection of useful date constants.\n *\n * The constants could be imported from `date-fns/constants`:\n *\n * ```ts\n * import { maxTime, minTime } from \"./constants/date-fns/constants\";\n *\n * function isAllowedTime(time) {\n * return time <= maxTime && time >= minTime;\n * }\n * ```\n */\n\n/**\n * @constant\n * @name daysInWeek\n * @summary Days in 1 week.\n */\nexport const daysInWeek = 7;\n\n/**\n * @constant\n * @name daysInYear\n * @summary Days in 1 year.\n *\n * @description\n * How many days in a year.\n *\n * One years equals 365.2425 days according to the formula:\n *\n * > Leap year occurs every 4 years, except for years that are divisible by 100 and not divisible by 400.\n * > 1 mean year = (365+1/4-1/100+1/400) days = 365.2425 days\n */\nexport const daysInYear = 365.2425;\n\n/**\n * @constant\n * @name maxTime\n * @summary Maximum allowed time.\n *\n * @example\n * import { maxTime } from \"./constants/date-fns/constants\";\n *\n * const isValid = 8640000000000001 <= maxTime;\n * //=> false\n *\n * new Date(8640000000000001);\n * //=> Invalid Date\n */\nexport const maxTime = Math.pow(10, 8) * 24 * 60 * 60 * 1000;\n\n/**\n * @constant\n * @name minTime\n * @summary Minimum allowed time.\n *\n * @example\n * import { minTime } from \"./constants/date-fns/constants\";\n *\n * const isValid = -8640000000000001 >= minTime;\n * //=> false\n *\n * new Date(-8640000000000001)\n * //=> Invalid Date\n */\nexport const minTime = -maxTime;\n\n/**\n * @constant\n * @name millisecondsInWeek\n * @summary Milliseconds in 1 week.\n */\nexport const millisecondsInWeek = 604800000;\n\n/**\n * @constant\n * @name millisecondsInDay\n * @summary Milliseconds in 1 day.\n */\nexport const millisecondsInDay = 86400000;\n\n/**\n * @constant\n * @name millisecondsInMinute\n * @summary Milliseconds in 1 minute\n */\nexport const millisecondsInMinute = 60000;\n\n/**\n * @constant\n * @name millisecondsInHour\n * @summary Milliseconds in 1 hour\n */\nexport const millisecondsInHour = 3600000;\n\n/**\n * @constant\n * @name millisecondsInSecond\n * @summary Milliseconds in 1 second\n */\nexport const millisecondsInSecond = 1000;\n\n/**\n * @constant\n * @name minutesInYear\n * @summary Minutes in 1 year.\n */\nexport const minutesInYear = 525600;\n\n/**\n * @constant\n * @name minutesInMonth\n * @summary Minutes in 1 month.\n */\nexport const minutesInMonth = 43200;\n\n/**\n * @constant\n * @name minutesInDay\n * @summary Minutes in 1 day.\n */\nexport const minutesInDay = 1440;\n\n/**\n * @constant\n * @name minutesInHour\n * @summary Minutes in 1 hour.\n */\nexport const minutesInHour = 60;\n\n/**\n * @constant\n * @name monthsInQuarter\n * @summary Months in 1 quarter.\n */\nexport const monthsInQuarter = 3;\n\n/**\n * @constant\n * @name monthsInYear\n * @summary Months in 1 year.\n */\nexport const monthsInYear = 12;\n\n/**\n * @constant\n * @name quartersInYear\n * @summary Quarters in 1 year\n */\nexport const quartersInYear = 4;\n\n/**\n * @constant\n * @name secondsInHour\n * @summary Seconds in 1 hour.\n */\nexport const secondsInHour = 3600;\n\n/**\n * @constant\n * @name secondsInMinute\n * @summary Seconds in 1 minute.\n */\nexport const secondsInMinute = 60;\n\n/**\n * @constant\n * @name secondsInDay\n * @summary Seconds in 1 day.\n */\nexport const secondsInDay = secondsInHour * 24;\n\n/**\n * @constant\n * @name secondsInWeek\n * @summary Seconds in 1 week.\n */\nexport const secondsInWeek = secondsInDay * 7;\n\n/**\n * @constant\n * @name secondsInYear\n * @summary Seconds in 1 year.\n */\nexport const secondsInYear = secondsInDay * daysInYear;\n\n/**\n * @constant\n * @name secondsInMonth\n * @summary Seconds in 1 month\n */\nexport const secondsInMonth = secondsInYear / 12;\n\n/**\n * @constant\n * @name secondsInQuarter\n * @summary Seconds in 1 quarter.\n */\nexport const secondsInQuarter = secondsInMonth * 3;\n\n/**\n * @constant\n * @name constructFromSymbol\n * @summary Symbol enabling Date extensions to inherit properties from the reference date.\n *\n * The symbol is used to enable the `constructFrom` function to construct a date\n * using a reference date and a value. It allows to transfer extra properties\n * from the reference date to the new date. It's useful for extensions like\n * [`TZDate`](https://github.com/date-fns/tz) that accept a time zone as\n * a constructor argument.\n */\nexport const constructFromSymbol = Symbol.for(\"constructDateFrom\");\n","import { constructFromSymbol } from \"./constants.js\";\n\n/**\n * @name constructFrom\n * @category Generic Helpers\n * @summary Constructs a date using the reference date and the value\n *\n * @description\n * The function constructs a new date using the constructor from the reference\n * date and the given value. It helps to build generic functions that accept\n * date extensions.\n *\n * It defaults to `Date` if the passed reference date is a number or a string.\n *\n * Starting from v3.7.0, it allows to construct a date using `[Symbol.for(\"constructDateFrom\")]`\n * enabling to transfer extra properties from the reference date to the new date.\n * It's useful for extensions like [`TZDate`](https://github.com/date-fns/tz)\n * that accept a time zone as a constructor argument.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The reference date to take constructor from\n * @param value - The value to create the date\n *\n * @returns Date initialized using the given date and value\n *\n * @example\n * import { constructFrom } from \"./constructFrom/date-fns\";\n *\n * // A function that clones a date preserving the original type\n * function cloneDate(date: DateType): DateType {\n * return constructFrom(\n * date, // Use constructor from the given date\n * date.getTime() // Use the date value to create a new date\n * );\n * }\n */\nexport function constructFrom(date, value) {\n if (typeof date === \"function\") return date(value);\n\n if (date && typeof date === \"object\" && constructFromSymbol in date)\n return date[constructFromSymbol](value);\n\n if (date instanceof Date) return new date.constructor(value);\n\n return new Date(value);\n}\n\n// Fallback for modularized imports:\nexport default constructFrom;\n","import { constructFrom } from \"./constructFrom.js\";\n\n/**\n * @name toDate\n * @category Common Helpers\n * @summary Convert the given argument to an instance of Date.\n *\n * @description\n * Convert the given argument to an instance of Date.\n *\n * If the argument is an instance of Date, the function returns its clone.\n *\n * If the argument is a number, it is treated as a timestamp.\n *\n * If the argument is none of the above, the function returns Invalid Date.\n *\n * Starting from v3.7.0, it clones a date using `[Symbol.for(\"constructDateFrom\")]`\n * enabling to transfer extra properties from the reference date to the new date.\n * It's useful for extensions like [`TZDate`](https://github.com/date-fns/tz)\n * that accept a time zone as a constructor argument.\n *\n * **Note**: *all* Date arguments passed to any *date-fns* function is processed by `toDate`.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param argument - The value to convert\n *\n * @returns The parsed date in the local time zone\n *\n * @example\n * // Clone the date:\n * const result = toDate(new Date(2014, 1, 11, 11, 30, 30))\n * //=> Tue Feb 11 2014 11:30:30\n *\n * @example\n * // Convert the timestamp to date:\n * const result = toDate(1392098430000)\n * //=> Tue Feb 11 2014 11:30:30\n */\nexport function toDate(argument, context) {\n // [TODO] Get rid of `toDate` or `constructFrom`?\n return constructFrom(context || argument, argument);\n}\n\n// Fallback for modularized imports:\nexport default toDate;\n","let defaultOptions = {};\n\nexport function getDefaultOptions() {\n return defaultOptions;\n}\n\nexport function setDefaultOptions(newOptions) {\n defaultOptions = newOptions;\n}\n","import { getDefaultOptions } from \"./_lib/defaultOptions.js\";\nimport { toDate } from \"./toDate.js\";\n\n/**\n * The {@link startOfWeek} function options.\n */\n\n/**\n * @name startOfWeek\n * @category Week Helpers\n * @summary Return the start of a week for the given date.\n *\n * @description\n * Return the start of a week for the given date.\n * The result will be in the local timezone.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param date - The original date\n * @param options - An object with options\n *\n * @returns The start of a week\n *\n * @example\n * // The start of a week for 2 September 2014 11:55:00:\n * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Sun Aug 31 2014 00:00:00\n *\n * @example\n * // If the week starts on Monday, the start of the week for 2 September 2014 11:55:00:\n * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0), { weekStartsOn: 1 })\n * //=> Mon Sep 01 2014 00:00:00\n */\nexport function startOfWeek(date, options) {\n const defaultOptions = getDefaultOptions();\n const weekStartsOn =\n options?.weekStartsOn ??\n options?.locale?.options?.weekStartsOn ??\n defaultOptions.weekStartsOn ??\n defaultOptions.locale?.options?.weekStartsOn ??\n 0;\n\n const _date = toDate(date, options?.in);\n const day = _date.getDay();\n const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;\n\n _date.setDate(_date.getDate() - diff);\n _date.setHours(0, 0, 0, 0);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default startOfWeek;\n","import { toDate } from \"../toDate.js\";\n\n/**\n * Google Chrome as of 67.0.3396.87 introduced timezones with offset that includes seconds.\n * They usually appear for dates that denote time before the timezones were introduced\n * (e.g. for 'Europe/Prague' timezone the offset is GMT+00:57:44 before 1 October 1891\n * and GMT+01:00:00 after that date)\n *\n * Date#getTimezoneOffset returns the offset in minutes and would return 57 for the example above,\n * which would lead to incorrect calculations.\n *\n * This function returns the timezone offset in milliseconds that takes seconds in account.\n */\nexport function getTimezoneOffsetInMilliseconds(date) {\n const _date = toDate(date);\n const utcDate = new Date(\n Date.UTC(\n _date.getFullYear(),\n _date.getMonth(),\n _date.getDate(),\n _date.getHours(),\n _date.getMinutes(),\n _date.getSeconds(),\n _date.getMilliseconds(),\n ),\n );\n utcDate.setUTCFullYear(_date.getFullYear());\n return +date - +utcDate;\n}\n","import { constructFrom } from \"../constructFrom.js\";\n\nexport function normalizeDates(context, ...dates) {\n const normalize = constructFrom.bind(\n null,\n context || dates.find((date) => typeof date === \"object\"),\n );\n return dates.map(normalize);\n}\n","import { toDate } from \"./toDate.js\";\n\n/**\n * The {@link startOfDay} function options.\n */\n\n/**\n * @name startOfDay\n * @category Day Helpers\n * @summary Return the start of a day for the given date.\n *\n * @description\n * Return the start of a day for the given date.\n * The result will be in the local timezone.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param date - The original date\n * @param options - The options\n *\n * @returns The start of a day\n *\n * @example\n * // The start of a day for 2 September 2014 11:55:00:\n * const result = startOfDay(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 02 2014 00:00:00\n */\nexport function startOfDay(date, options) {\n const _date = toDate(date, options?.in);\n _date.setHours(0, 0, 0, 0);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default startOfDay;\n","import { getTimezoneOffsetInMilliseconds } from \"./_lib/getTimezoneOffsetInMilliseconds.js\";\nimport { normalizeDates } from \"./_lib/normalizeDates.js\";\nimport { millisecondsInDay } from \"./constants.js\";\nimport { startOfDay } from \"./startOfDay.js\";\n\n/**\n * The {@link differenceInCalendarDays} function options.\n */\n\n/**\n * @name differenceInCalendarDays\n * @category Day Helpers\n * @summary Get the number of calendar days between the given dates.\n *\n * @description\n * Get the number of calendar days between the given dates. This means that the times are removed\n * from the dates and then the difference in days is calculated.\n *\n * @param laterDate - The later date\n * @param earlierDate - The earlier date\n * @param options - The options object\n *\n * @returns The number of calendar days\n *\n * @example\n * // How many calendar days are between\n * // 2 July 2011 23:00:00 and 2 July 2012 00:00:00?\n * const result = differenceInCalendarDays(\n * new Date(2012, 6, 2, 0, 0),\n * new Date(2011, 6, 2, 23, 0)\n * )\n * //=> 366\n * // How many calendar days are between\n * // 2 July 2011 23:59:00 and 3 July 2011 00:01:00?\n * const result = differenceInCalendarDays(\n * new Date(2011, 6, 3, 0, 1),\n * new Date(2011, 6, 2, 23, 59)\n * )\n * //=> 1\n */\nexport function differenceInCalendarDays(laterDate, earlierDate, options) {\n const [laterDate_, earlierDate_] = normalizeDates(\n options?.in,\n laterDate,\n earlierDate,\n );\n\n const laterStartOfDay = startOfDay(laterDate_);\n const earlierStartOfDay = startOfDay(earlierDate_);\n\n const laterTimestamp =\n +laterStartOfDay - getTimezoneOffsetInMilliseconds(laterStartOfDay);\n const earlierTimestamp =\n +earlierStartOfDay - getTimezoneOffsetInMilliseconds(earlierStartOfDay);\n\n // Round the number of days to the nearest integer because the number of\n // milliseconds in a day is not constant (e.g. it's different in the week of\n // the daylight saving time clock shift).\n return Math.round((laterTimestamp - earlierTimestamp) / millisecondsInDay);\n}\n\n// Fallback for modularized imports:\nexport default differenceInCalendarDays;\n","import { normalizeDates } from \"./_lib/normalizeDates.js\";\n\n/**\n * The {@link differenceInCalendarMonths} function options.\n */\n\n/**\n * @name differenceInCalendarMonths\n * @category Month Helpers\n * @summary Get the number of calendar months between the given dates.\n *\n * @description\n * Get the number of calendar months between the given dates.\n *\n * @param laterDate - The later date\n * @param earlierDate - The earlier date\n * @param options - An object with options\n *\n * @returns The number of calendar months\n *\n * @example\n * // How many calendar months are between 31 January 2014 and 1 September 2014?\n * const result = differenceInCalendarMonths(\n * new Date(2014, 8, 1),\n * new Date(2014, 0, 31)\n * )\n * //=> 8\n */\nexport function differenceInCalendarMonths(laterDate, earlierDate, options) {\n const [laterDate_, earlierDate_] = normalizeDates(\n options?.in,\n laterDate,\n earlierDate,\n );\n\n const yearsDiff = laterDate_.getFullYear() - earlierDate_.getFullYear();\n const monthsDiff = laterDate_.getMonth() - earlierDate_.getMonth();\n\n return yearsDiff * 12 + monthsDiff;\n}\n\n// Fallback for modularized imports:\nexport default differenceInCalendarMonths;\n","import { toDate } from \"./toDate.js\";\n\n/**\n * The {@link getQuarter} function options.\n */\n\n/**\n * @name getQuarter\n * @category Quarter Helpers\n * @summary Get the year quarter of the given date.\n *\n * @description\n * Get the year quarter of the given date.\n *\n * @param date - The given date\n * @param options - An object with options\n *\n * @returns The quarter\n *\n * @example\n * // Which quarter is 2 July 2014?\n * const result = getQuarter(new Date(2014, 6, 2));\n * //=> 3\n */\nexport function getQuarter(date, options) {\n const _date = toDate(date, options?.in);\n const quarter = Math.trunc(_date.getMonth() / 3) + 1;\n return quarter;\n}\n\n// Fallback for modularized imports:\nexport default getQuarter;\n","import { normalizeDates } from \"./_lib/normalizeDates.js\";\nimport { getQuarter } from \"./getQuarter.js\";\n\n/**\n * The {@link differenceInCalendarQuarters} function options.\n */\n\n/**\n * @name differenceInCalendarQuarters\n * @category Quarter Helpers\n * @summary Get the number of calendar quarters between the given dates.\n *\n * @description\n * Get the number of calendar quarters between the given dates.\n *\n * @param laterDate - The later date\n * @param earlierDate - The earlier date\n * @param options - An object with options\n *\n * @returns The number of calendar quarters\n *\n * @example\n * // How many calendar quarters are between 31 December 2013 and 2 July 2014?\n * const result = differenceInCalendarQuarters(\n * new Date(2014, 6, 2),\n * new Date(2013, 11, 31)\n * )\n * //=> 3\n */\nexport function differenceInCalendarQuarters(laterDate, earlierDate, options) {\n const [laterDate_, earlierDate_] = normalizeDates(\n options?.in,\n laterDate,\n earlierDate,\n );\n\n const yearsDiff = laterDate_.getFullYear() - earlierDate_.getFullYear();\n const quartersDiff = getQuarter(laterDate_) - getQuarter(earlierDate_);\n\n return yearsDiff * 4 + quartersDiff;\n}\n\n// Fallback for modularized imports:\nexport default differenceInCalendarQuarters;\n","import { getTimezoneOffsetInMilliseconds } from \"./_lib/getTimezoneOffsetInMilliseconds.js\";\nimport { normalizeDates } from \"./_lib/normalizeDates.js\";\nimport { millisecondsInWeek } from \"./constants.js\";\nimport { startOfWeek } from \"./startOfWeek.js\";\n\n/**\n * The {@link differenceInCalendarWeeks} function options.\n */\n\n/**\n * @name differenceInCalendarWeeks\n * @category Week Helpers\n * @summary Get the number of calendar weeks between the given dates.\n *\n * @description\n * Get the number of calendar weeks between the given dates.\n *\n * @param laterDate - The later date\n * @param earlierDate - The earlier date\n * @param options - An object with options.\n *\n * @returns The number of calendar weeks\n *\n * @example\n * // How many calendar weeks are between 5 July 2014 and 20 July 2014?\n * const result = differenceInCalendarWeeks(\n * new Date(2014, 6, 20),\n * new Date(2014, 6, 5)\n * )\n * //=> 3\n *\n * @example\n * // If the week starts on Monday,\n * // how many calendar weeks are between 5 July 2014 and 20 July 2014?\n * const result = differenceInCalendarWeeks(\n * new Date(2014, 6, 20),\n * new Date(2014, 6, 5),\n * { weekStartsOn: 1 }\n * )\n * //=> 2\n */\nexport function differenceInCalendarWeeks(laterDate, earlierDate, options) {\n const [laterDate_, earlierDate_] = normalizeDates(\n options?.in,\n laterDate,\n earlierDate,\n );\n\n const laterStartOfWeek = startOfWeek(laterDate_, options);\n const earlierStartOfWeek = startOfWeek(earlierDate_, options);\n\n const laterTimestamp =\n +laterStartOfWeek - getTimezoneOffsetInMilliseconds(laterStartOfWeek);\n const earlierTimestamp =\n +earlierStartOfWeek - getTimezoneOffsetInMilliseconds(earlierStartOfWeek);\n\n return Math.round((laterTimestamp - earlierTimestamp) / millisecondsInWeek);\n}\n\n// Fallback for modularized imports:\nexport default differenceInCalendarWeeks;\n","import { normalizeDates } from \"./_lib/normalizeDates.js\";\n\n/**\n * The {@link differenceInCalendarYears} function options.\n */\n\n/**\n * @name differenceInCalendarYears\n * @category Year Helpers\n * @summary Get the number of calendar years between the given dates.\n *\n * @description\n * Get the number of calendar years between the given dates.\n *\n * @param laterDate - The later date\n * @param earlierDate - The earlier date\n * @param options - An object with options\n\n * @returns The number of calendar years\n *\n * @example\n * // How many calendar years are between 31 December 2013 and 11 February 2015?\n * const result = differenceInCalendarYears(\n * new Date(2015, 1, 11),\n * new Date(2013, 11, 31)\n * );\n * //=> 2\n */\nexport function differenceInCalendarYears(laterDate, earlierDate, options) {\n const [laterDate_, earlierDate_] = normalizeDates(\n options?.in,\n laterDate,\n earlierDate,\n );\n return laterDate_.getFullYear() - earlierDate_.getFullYear();\n}\n\n// Fallback for modularized imports:\nexport default differenceInCalendarYears;\n","export function getRoundingMethod(method) {\n return (number) => {\n const round = method ? Math[method] : Math.trunc;\n const result = round(number);\n // Prevent negative zero\n return result === 0 ? 0 : result;\n };\n}\n","import { getRoundingMethod } from \"./_lib/getRoundingMethod.js\";\nimport { normalizeDates } from \"./_lib/normalizeDates.js\";\nimport { millisecondsInHour } from \"./constants.js\";\n\n/**\n * The {@link differenceInHours} function options.\n */\n\n/**\n * @name differenceInHours\n * @category Hour Helpers\n * @summary Get the number of hours between the given dates.\n *\n * @description\n * Get the number of hours between the given dates.\n *\n * @param laterDate - The later date\n * @param earlierDate - The earlier date\n * @param options - An object with options.\n *\n * @returns The number of hours\n *\n * @example\n * // How many hours are between 2 July 2014 06:50:00 and 2 July 2014 19:00:00?\n * const result = differenceInHours(\n * new Date(2014, 6, 2, 19, 0),\n * new Date(2014, 6, 2, 6, 50)\n * )\n * //=> 12\n */\nexport function differenceInHours(laterDate, earlierDate, options) {\n const [laterDate_, earlierDate_] = normalizeDates(\n options?.in,\n laterDate,\n earlierDate,\n );\n const diff = (+laterDate_ - +earlierDate_) / millisecondsInHour;\n return getRoundingMethod(options?.roundingMethod)(diff);\n}\n\n// Fallback for modularized imports:\nexport default differenceInHours;\n","import { toDate } from \"./toDate.js\";\n\n/**\n * @name differenceInMilliseconds\n * @category Millisecond Helpers\n * @summary Get the number of milliseconds between the given dates.\n *\n * @description\n * Get the number of milliseconds between the given dates.\n *\n * @param laterDate - The later date\n * @param earlierDate - The earlier date\n *\n * @returns The number of milliseconds\n *\n * @example\n * // How many milliseconds are between\n * // 2 July 2014 12:30:20.600 and 2 July 2014 12:30:21.700?\n * const result = differenceInMilliseconds(\n * new Date(2014, 6, 2, 12, 30, 21, 700),\n * new Date(2014, 6, 2, 12, 30, 20, 600)\n * )\n * //=> 1100\n */\nexport function differenceInMilliseconds(laterDate, earlierDate) {\n return +toDate(laterDate) - +toDate(earlierDate);\n}\n\n// Fallback for modularized imports:\nexport default differenceInMilliseconds;\n","import { getRoundingMethod } from \"./_lib/getRoundingMethod.js\";\nimport { millisecondsInMinute } from \"./constants.js\";\nimport { differenceInMilliseconds } from \"./differenceInMilliseconds.js\";\n\n/**\n * The {@link differenceInMinutes} function options.\n */\n\n/**\n * @name differenceInMinutes\n * @category Minute Helpers\n * @summary Get the number of minutes between the given dates.\n *\n * @description\n * Get the signed number of full (rounded towards 0) minutes between the given dates.\n *\n * @param dateLeft - The later date\n * @param dateRight - The earlier date\n * @param options - An object with options.\n *\n * @returns The number of minutes\n *\n * @example\n * // How many minutes are between 2 July 2014 12:07:59 and 2 July 2014 12:20:00?\n * const result = differenceInMinutes(\n * new Date(2014, 6, 2, 12, 20, 0),\n * new Date(2014, 6, 2, 12, 7, 59)\n * )\n * //=> 12\n *\n * @example\n * // How many minutes are between 10:01:59 and 10:00:00\n * const result = differenceInMinutes(\n * new Date(2000, 0, 1, 10, 0, 0),\n * new Date(2000, 0, 1, 10, 1, 59)\n * )\n * //=> -1\n */\nexport function differenceInMinutes(dateLeft, dateRight, options) {\n const diff =\n differenceInMilliseconds(dateLeft, dateRight) / millisecondsInMinute;\n return getRoundingMethod(options?.roundingMethod)(diff);\n}\n\n// Fallback for modularized imports:\nexport default differenceInMinutes;\n","import { getRoundingMethod } from \"./_lib/getRoundingMethod.js\";\nimport { differenceInMilliseconds } from \"./differenceInMilliseconds.js\";\n\n/**\n * The {@link differenceInSeconds} function options.\n */\n\n/**\n * @name differenceInSeconds\n * @category Second Helpers\n * @summary Get the number of seconds between the given dates.\n *\n * @description\n * Get the number of seconds between the given dates.\n *\n * @param laterDate - The later date\n * @param earlierDate - The earlier date\n * @param options - An object with options.\n *\n * @returns The number of seconds\n *\n * @example\n * // How many seconds are between\n * // 2 July 2014 12:30:07.999 and 2 July 2014 12:30:20.000?\n * const result = differenceInSeconds(\n * new Date(2014, 6, 2, 12, 30, 20, 0),\n * new Date(2014, 6, 2, 12, 30, 7, 999)\n * )\n * //=> 12\n */\nexport function differenceInSeconds(laterDate, earlierDate, options) {\n const diff = differenceInMilliseconds(laterDate, earlierDate) / 1000;\n return getRoundingMethod(options?.roundingMethod)(diff);\n}\n\n// Fallback for modularized imports:\nexport default differenceInSeconds;\n","export function addLeadingZeros(number, targetLength) {\n const sign = number < 0 ? \"-\" : \"\";\n const output = Math.abs(number).toString().padStart(targetLength, \"0\");\n return sign + output;\n}\n","import { addLeadingZeros } from \"./_lib/addLeadingZeros.js\";\nimport { toDate } from \"./toDate.js\";\n\n/**\n * The {@link formatISO} function options.\n */\n\n/**\n * @name formatISO\n * @category Common Helpers\n * @summary Format the date according to the ISO 8601 standard (https://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a003169814.htm).\n *\n * @description\n * Return the formatted date string in ISO 8601 format. Options may be passed to control the parts and notations of the date.\n *\n * @param date - The original date\n * @param options - An object with options.\n *\n * @returns The formatted date string (in local time zone)\n *\n * @throws `date` must not be Invalid Date\n *\n * @example\n * // Represent 18 September 2019 in ISO 8601 format (local time zone is UTC):\n * const result = formatISO(new Date(2019, 8, 18, 19, 0, 52))\n * //=> '2019-09-18T19:00:52Z'\n *\n * @example\n * // Represent 18 September 2019 in ISO 8601, short format (local time zone is UTC):\n * const result = formatISO(new Date(2019, 8, 18, 19, 0, 52), { format: 'basic' })\n * //=> '20190918T190052'\n *\n * @example\n * // Represent 18 September 2019 in ISO 8601 format, date only:\n * const result = formatISO(new Date(2019, 8, 18, 19, 0, 52), { representation: 'date' })\n * //=> '2019-09-18'\n *\n * @example\n * // Represent 18 September 2019 in ISO 8601 format, time only (local time zone is UTC):\n * const result = formatISO(new Date(2019, 8, 18, 19, 0, 52), { representation: 'time' })\n * //=> '19:00:52Z'\n */\nexport function formatISO(date, options) {\n const date_ = toDate(date, options?.in);\n\n if (isNaN(+date_)) {\n throw new RangeError(\"Invalid time value\");\n }\n\n const format = options?.format ?? \"extended\";\n const representation = options?.representation ?? \"complete\";\n\n let result = \"\";\n let tzOffset = \"\";\n\n const dateDelimiter = format === \"extended\" ? \"-\" : \"\";\n const timeDelimiter = format === \"extended\" ? \":\" : \"\";\n\n // Representation is either 'date' or 'complete'\n if (representation !== \"time\") {\n const day = addLeadingZeros(date_.getDate(), 2);\n const month = addLeadingZeros(date_.getMonth() + 1, 2);\n const year = addLeadingZeros(date_.getFullYear(), 4);\n\n // yyyyMMdd or yyyy-MM-dd.\n result = `${year}${dateDelimiter}${month}${dateDelimiter}${day}`;\n }\n\n // Representation is either 'time' or 'complete'\n if (representation !== \"date\") {\n // Add the timezone.\n const offset = date_.getTimezoneOffset();\n\n if (offset !== 0) {\n const absoluteOffset = Math.abs(offset);\n const hourOffset = addLeadingZeros(Math.trunc(absoluteOffset / 60), 2);\n const minuteOffset = addLeadingZeros(absoluteOffset % 60, 2);\n // If less than 0, the sign is +, because it is ahead of time.\n const sign = offset < 0 ? \"+\" : \"-\";\n\n tzOffset = `${sign}${hourOffset}:${minuteOffset}`;\n } else {\n tzOffset = \"Z\";\n }\n\n const hour = addLeadingZeros(date_.getHours(), 2);\n const minute = addLeadingZeros(date_.getMinutes(), 2);\n const second = addLeadingZeros(date_.getSeconds(), 2);\n\n // If there's also date, separate it with time with 'T'\n const separator = result === \"\" ? \"\" : \"T\";\n\n // Creates a time string consisting of hour, minute, and second, separated by delimiters, if defined.\n const time = [hour, minute, second].join(timeDelimiter);\n\n // HHmmss or HH:mm:ss.\n result = `${result}${separator}${time}${tzOffset}`;\n }\n\n return result;\n}\n\n// Fallback for modularized imports:\nexport default formatISO;\n","import { toDate } from \"./toDate.js\";\n\n/**\n * The locale string (see: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#locales_argument).\n * @deprecated\n *\n * [TODO] Remove in v4\n */\n\n/**\n * The format options (see: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#options)\n */\n\n/**\n * The locale options.\n */\n\n/**\n * @name intlFormat\n * @category Common Helpers\n * @summary Format the date with Intl.DateTimeFormat (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat).\n *\n * @description\n * Return the formatted date string in the given format.\n * The method uses [`Intl.DateTimeFormat`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat) inside.\n * formatOptions are the same as [`Intl.DateTimeFormat` options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat#using_options)\n *\n * > ⚠️ Please note that before Node version 13.0.0, only the locale data for en-US is available by default.\n *\n * @param date - The date to format\n *\n * @returns The formatted date string\n *\n * @throws `date` must not be Invalid Date\n *\n * @example\n * // Represent 4 October 2019 in middle-endian format:\n * const result = intlFormat(new Date(2019, 9, 4, 12, 30, 13, 456))\n * //=> 10/4/2019\n */\n\n/**\n * @param date - The date to format\n * @param localeOptions - An object with locale\n *\n * @returns The formatted date string\n *\n * @throws `date` must not be Invalid Date\n *\n * @example\n * // Represent 4 October 2019 in Korean.\n * // Convert the date with locale's options.\n * const result = intlFormat(new Date(2019, 9, 4, 12, 30, 13, 456), {\n * locale: 'ko-KR',\n * })\n * //=> 2019. 10. 4.\n */\n\n/**\n * @param date - The date to format\n * @param formatOptions - The format options\n *\n * @returns The formatted date string\n *\n * @throws `date` must not be Invalid Date\n *\n * @example\n * // Represent 4 October 2019.\n * // Convert the date with format's options.\n * const result = intlFormat.default(new Date(2019, 9, 4, 12, 30, 13, 456), {\n * year: 'numeric',\n * month: 'numeric',\n * day: 'numeric',\n * hour: 'numeric',\n * })\n * //=> 10/4/2019, 12 PM\n */\n\n/**\n * @param date - The date to format\n * @param formatOptions - The format options\n * @param localeOptions - An object with locale\n *\n * @returns The formatted date string\n *\n * @throws `date` must not be Invalid Date\n *\n * @example\n * // Represent 4 October 2019 in German.\n * // Convert the date with format's options and locale's options.\n * const result = intlFormat(new Date(2019, 9, 4, 12, 30, 13, 456), {\n * weekday: 'long',\n * year: 'numeric',\n * month: 'long',\n * day: 'numeric',\n * }, {\n * locale: 'de-DE',\n * })\n * //=> Freitag, 4. Oktober 2019\n */\n\nexport function intlFormat(date, formatOrLocale, localeOptions) {\n let formatOptions;\n\n if (isFormatOptions(formatOrLocale)) {\n formatOptions = formatOrLocale;\n } else {\n localeOptions = formatOrLocale;\n }\n\n return new Intl.DateTimeFormat(localeOptions?.locale, formatOptions).format(\n toDate(date),\n );\n}\n\nfunction isFormatOptions(opts) {\n return opts !== undefined && !(\"locale\" in opts);\n}\n\n// Fallback for modularized imports:\nexport default intlFormat;\n","import { normalizeDates } from \"./_lib/normalizeDates.js\";\nimport {\n secondsInDay,\n secondsInHour,\n secondsInMinute,\n secondsInMonth,\n secondsInQuarter,\n secondsInWeek,\n secondsInYear,\n} from \"./constants.js\";\nimport { differenceInCalendarDays } from \"./differenceInCalendarDays.js\";\nimport { differenceInCalendarMonths } from \"./differenceInCalendarMonths.js\";\nimport { differenceInCalendarQuarters } from \"./differenceInCalendarQuarters.js\";\nimport { differenceInCalendarWeeks } from \"./differenceInCalendarWeeks.js\";\nimport { differenceInCalendarYears } from \"./differenceInCalendarYears.js\";\nimport { differenceInHours } from \"./differenceInHours.js\";\nimport { differenceInMinutes } from \"./differenceInMinutes.js\";\nimport { differenceInSeconds } from \"./differenceInSeconds.js\";\n\n/**\n * The {@link intlFormatDistance} function options.\n */\n\n/**\n * The unit used to format the distance in {@link intlFormatDistance}.\n */\n\n/**\n * @name intlFormatDistance\n * @category Common Helpers\n * @summary Formats distance between two dates in a human-readable format\n * @description\n * The function calculates the difference between two dates and formats it as a human-readable string.\n *\n * The function will pick the most appropriate unit depending on the distance between dates. For example, if the distance is a few hours, it might return `x hours`. If the distance is a few months, it might return `x months`.\n *\n * You can also specify a unit to force using it regardless of the distance to get a result like `123456 hours`.\n *\n * See the table below for the unit picking logic:\n *\n * | Distance between dates | Result (past) | Result (future) |\n * | ---------------------- | -------------- | --------------- |\n * | 0 seconds | now | now |\n * | 1-59 seconds | X seconds ago | in X seconds |\n * | 1-59 minutes | X minutes ago | in X minutes |\n * | 1-23 hours | X hours ago | in X hours |\n * | 1 day | yesterday | tomorrow |\n * | 2-6 days | X days ago | in X days |\n * | 7 days | last week | next week |\n * | 8 days-1 month | X weeks ago | in X weeks |\n * | 1 month | last month | next month |\n * | 2-3 months | X months ago | in X months |\n * | 1 quarter | last quarter | next quarter |\n * | 2-3 quarters | X quarters ago | in X quarters |\n * | 1 year | last year | next year |\n * | 2+ years | X years ago | in X years |\n *\n * @param laterDate - The date\n * @param earlierDate - The date to compare with.\n * @param options - An object with options.\n * See MDN for details [Locale identification and negotiation](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#locale_identification_and_negotiation)\n * The narrow one could be similar to the short one for some locales.\n *\n * @returns The distance in words according to language-sensitive relative time formatting.\n *\n * @throws `date` must not be Invalid Date\n * @throws `baseDate` must not be Invalid Date\n * @throws `options.unit` must not be invalid Unit\n * @throws `options.locale` must not be invalid locale\n * @throws `options.localeMatcher` must not be invalid localeMatcher\n * @throws `options.numeric` must not be invalid numeric\n * @throws `options.style` must not be invalid style\n *\n * @example\n * // What is the distance between the dates when the fist date is after the second?\n * intlFormatDistance(\n * new Date(1986, 3, 4, 11, 30, 0),\n * new Date(1986, 3, 4, 10, 30, 0)\n * )\n * //=> 'in 1 hour'\n *\n * // What is the distance between the dates when the fist date is before the second?\n * intlFormatDistance(\n * new Date(1986, 3, 4, 10, 30, 0),\n * new Date(1986, 3, 4, 11, 30, 0)\n * )\n * //=> '1 hour ago'\n *\n * @example\n * // Use the unit option to force the function to output the result in quarters. Without setting it, the example would return \"next year\"\n * intlFormatDistance(\n * new Date(1987, 6, 4, 10, 30, 0),\n * new Date(1986, 3, 4, 10, 30, 0),\n * { unit: 'quarter' }\n * )\n * //=> 'in 5 quarters'\n *\n * @example\n * // Use the locale option to get the result in Spanish. Without setting it, the example would return \"in 1 hour\".\n * intlFormatDistance(\n * new Date(1986, 3, 4, 11, 30, 0),\n * new Date(1986, 3, 4, 10, 30, 0),\n * { locale: 'es' }\n * )\n * //=> 'dentro de 1 hora'\n *\n * @example\n * // Use the numeric option to force the function to use numeric values. Without setting it, the example would return \"tomorrow\".\n * intlFormatDistance(\n * new Date(1986, 3, 5, 11, 30, 0),\n * new Date(1986, 3, 4, 11, 30, 0),\n * { numeric: 'always' }\n * )\n * //=> 'in 1 day'\n *\n * @example\n * // Use the style option to force the function to use short values. Without setting it, the example would return \"in 2 years\".\n * intlFormatDistance(\n * new Date(1988, 3, 4, 11, 30, 0),\n * new Date(1986, 3, 4, 11, 30, 0),\n * { style: 'short' }\n * )\n * //=> 'in 2 yr'\n */\nexport function intlFormatDistance(laterDate, earlierDate, options) {\n let value = 0;\n let unit;\n\n const [laterDate_, earlierDate_] = normalizeDates(\n options?.in,\n laterDate,\n earlierDate,\n );\n\n if (!options?.unit) {\n // Get the unit based on diffInSeconds calculations if no unit is specified\n const diffInSeconds = differenceInSeconds(laterDate_, earlierDate_); // The smallest unit\n\n if (Math.abs(diffInSeconds) < secondsInMinute) {\n value = differenceInSeconds(laterDate_, earlierDate_);\n unit = \"second\";\n } else if (Math.abs(diffInSeconds) < secondsInHour) {\n value = differenceInMinutes(laterDate_, earlierDate_);\n unit = \"minute\";\n } else if (\n Math.abs(diffInSeconds) < secondsInDay &&\n Math.abs(differenceInCalendarDays(laterDate_, earlierDate_)) < 1\n ) {\n value = differenceInHours(laterDate_, earlierDate_);\n unit = \"hour\";\n } else if (\n Math.abs(diffInSeconds) < secondsInWeek &&\n (value = differenceInCalendarDays(laterDate_, earlierDate_)) &&\n Math.abs(value) < 7\n ) {\n unit = \"day\";\n } else if (Math.abs(diffInSeconds) < secondsInMonth) {\n value = differenceInCalendarWeeks(laterDate_, earlierDate_);\n unit = \"week\";\n } else if (Math.abs(diffInSeconds) < secondsInQuarter) {\n value = differenceInCalendarMonths(laterDate_, earlierDate_);\n unit = \"month\";\n } else if (Math.abs(diffInSeconds) < secondsInYear) {\n if (differenceInCalendarQuarters(laterDate_, earlierDate_) < 4) {\n // To filter out cases that are less than a year but match 4 quarters\n value = differenceInCalendarQuarters(laterDate_, earlierDate_);\n unit = \"quarter\";\n } else {\n value = differenceInCalendarYears(laterDate_, earlierDate_);\n unit = \"year\";\n }\n } else {\n value = differenceInCalendarYears(laterDate_, earlierDate_);\n unit = \"year\";\n }\n } else {\n // Get the value if unit is specified\n unit = options?.unit;\n if (unit === \"second\") {\n value = differenceInSeconds(laterDate_, earlierDate_);\n } else if (unit === \"minute\") {\n value = differenceInMinutes(laterDate_, earlierDate_);\n } else if (unit === \"hour\") {\n value = differenceInHours(laterDate_, earlierDate_);\n } else if (unit === \"day\") {\n value = differenceInCalendarDays(laterDate_, earlierDate_);\n } else if (unit === \"week\") {\n value = differenceInCalendarWeeks(laterDate_, earlierDate_);\n } else if (unit === \"month\") {\n value = differenceInCalendarMonths(laterDate_, earlierDate_);\n } else if (unit === \"quarter\") {\n value = differenceInCalendarQuarters(laterDate_, earlierDate_);\n } else if (unit === \"year\") {\n value = differenceInCalendarYears(laterDate_, earlierDate_);\n }\n }\n\n const rtf = new Intl.RelativeTimeFormat(options?.locale, {\n numeric: \"auto\",\n ...options,\n });\n\n return rtf.format(value, unit);\n}\n\n// Fallback for modularized imports:\nexport default intlFormatDistance;\n","import {\n millisecondsInHour,\n millisecondsInMinute,\n} from \"./constants.js\";\nimport { constructFrom } from \"./constructFrom.js\";\nimport { toDate } from \"./toDate.js\";\n\n/**\n * The {@link parseISO} function options.\n */\n\n/**\n * @name parseISO\n * @category Common Helpers\n * @summary Parse ISO string\n *\n * @description\n * Parse the given string in ISO 8601 format and return an instance of Date.\n *\n * Function accepts complete ISO 8601 formats as well as partial implementations.\n * ISO 8601: http://en.wikipedia.org/wiki/ISO_8601\n *\n * If the argument isn't a string, the function cannot parse the string or\n * the values are invalid, it returns Invalid Date.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param argument - The value to convert\n * @param options - An object with options\n *\n * @returns The parsed date in the local time zone\n *\n * @example\n * // Convert string '2014-02-11T11:30:30' to date:\n * const result = parseISO('2014-02-11T11:30:30')\n * //=> Tue Feb 11 2014 11:30:30\n *\n * @example\n * // Convert string '+02014101' to date,\n * // if the additional number of digits in the extended year format is 1:\n * const result = parseISO('+02014101', { additionalDigits: 1 })\n * //=> Fri Apr 11 2014 00:00:00\n */\nexport function parseISO(argument, options) {\n const invalidDate = () => constructFrom(options?.in, NaN);\n\n const additionalDigits = options?.additionalDigits ?? 2;\n const dateStrings = splitDateString(argument);\n\n let date;\n if (dateStrings.date) {\n const parseYearResult = parseYear(dateStrings.date, additionalDigits);\n date = parseDate(parseYearResult.restDateString, parseYearResult.year);\n }\n\n if (!date || isNaN(+date)) return invalidDate();\n\n const timestamp = +date;\n let time = 0;\n let offset;\n\n if (dateStrings.time) {\n time = parseTime(dateStrings.time);\n if (isNaN(time)) return invalidDate();\n }\n\n if (dateStrings.timezone) {\n offset = parseTimezone(dateStrings.timezone);\n if (isNaN(offset)) return invalidDate();\n } else {\n const tmpDate = new Date(timestamp + time);\n const result = toDate(0, options?.in);\n result.setFullYear(\n tmpDate.getUTCFullYear(),\n tmpDate.getUTCMonth(),\n tmpDate.getUTCDate(),\n );\n result.setHours(\n tmpDate.getUTCHours(),\n tmpDate.getUTCMinutes(),\n tmpDate.getUTCSeconds(),\n tmpDate.getUTCMilliseconds(),\n );\n return result;\n }\n\n return toDate(timestamp + time + offset, options?.in);\n}\n\nconst patterns = {\n dateTimeDelimiter: /[T ]/,\n timeZoneDelimiter: /[Z ]/i,\n timezone: /([Z+-].*)$/,\n};\n\nconst dateRegex =\n /^-?(?:(\\d{3})|(\\d{2})(?:-?(\\d{2}))?|W(\\d{2})(?:-?(\\d{1}))?|)$/;\nconst timeRegex =\n /^(\\d{2}(?:[.,]\\d*)?)(?::?(\\d{2}(?:[.,]\\d*)?))?(?::?(\\d{2}(?:[.,]\\d*)?))?$/;\nconst timezoneRegex = /^([+-])(\\d{2})(?::?(\\d{2}))?$/;\n\nfunction splitDateString(dateString) {\n const dateStrings = {};\n const array = dateString.split(patterns.dateTimeDelimiter);\n let timeString;\n\n // The regex match should only return at maximum two array elements.\n // [date], [time], or [date, time].\n if (array.length > 2) {\n return dateStrings;\n }\n\n if (/:/.test(array[0])) {\n timeString = array[0];\n } else {\n dateStrings.date = array[0];\n timeString = array[1];\n if (patterns.timeZoneDelimiter.test(dateStrings.date)) {\n dateStrings.date = dateString.split(patterns.timeZoneDelimiter)[0];\n timeString = dateString.substr(\n dateStrings.date.length,\n dateString.length,\n );\n }\n }\n\n if (timeString) {\n const token = patterns.timezone.exec(timeString);\n if (token) {\n dateStrings.time = timeString.replace(token[1], \"\");\n dateStrings.timezone = token[1];\n } else {\n dateStrings.time = timeString;\n }\n }\n\n return dateStrings;\n}\n\nfunction parseYear(dateString, additionalDigits) {\n const regex = new RegExp(\n \"^(?:(\\\\d{4}|[+-]\\\\d{\" +\n (4 + additionalDigits) +\n \"})|(\\\\d{2}|[+-]\\\\d{\" +\n (2 + additionalDigits) +\n \"})$)\",\n );\n\n const captures = dateString.match(regex);\n // Invalid ISO-formatted year\n if (!captures) return { year: NaN, restDateString: \"\" };\n\n const year = captures[1] ? parseInt(captures[1]) : null;\n const century = captures[2] ? parseInt(captures[2]) : null;\n\n // either year or century is null, not both\n return {\n year: century === null ? year : century * 100,\n restDateString: dateString.slice((captures[1] || captures[2]).length),\n };\n}\n\nfunction parseDate(dateString, year) {\n // Invalid ISO-formatted year\n if (year === null) return new Date(NaN);\n\n const captures = dateString.match(dateRegex);\n // Invalid ISO-formatted string\n if (!captures) return new Date(NaN);\n\n const isWeekDate = !!captures[4];\n const dayOfYear = parseDateUnit(captures[1]);\n const month = parseDateUnit(captures[2]) - 1;\n const day = parseDateUnit(captures[3]);\n const week = parseDateUnit(captures[4]);\n const dayOfWeek = parseDateUnit(captures[5]) - 1;\n\n if (isWeekDate) {\n if (!validateWeekDate(year, week, dayOfWeek)) {\n return new Date(NaN);\n }\n return dayOfISOWeekYear(year, week, dayOfWeek);\n } else {\n const date = new Date(0);\n if (\n !validateDate(year, month, day) ||\n !validateDayOfYearDate(year, dayOfYear)\n ) {\n return new Date(NaN);\n }\n date.setUTCFullYear(year, month, Math.max(dayOfYear, day));\n return date;\n }\n}\n\nfunction parseDateUnit(value) {\n return value ? parseInt(value) : 1;\n}\n\nfunction parseTime(timeString) {\n const captures = timeString.match(timeRegex);\n if (!captures) return NaN; // Invalid ISO-formatted time\n\n const hours = parseTimeUnit(captures[1]);\n const minutes = parseTimeUnit(captures[2]);\n const seconds = parseTimeUnit(captures[3]);\n\n if (!validateTime(hours, minutes, seconds)) {\n return NaN;\n }\n\n return (\n hours * millisecondsInHour + minutes * millisecondsInMinute + seconds * 1000\n );\n}\n\nfunction parseTimeUnit(value) {\n return (value && parseFloat(value.replace(\",\", \".\"))) || 0;\n}\n\nfunction parseTimezone(timezoneString) {\n if (timezoneString === \"Z\") return 0;\n\n const captures = timezoneString.match(timezoneRegex);\n if (!captures) return 0;\n\n const sign = captures[1] === \"+\" ? -1 : 1;\n const hours = parseInt(captures[2]);\n const minutes = (captures[3] && parseInt(captures[3])) || 0;\n\n if (!validateTimezone(hours, minutes)) {\n return NaN;\n }\n\n return sign * (hours * millisecondsInHour + minutes * millisecondsInMinute);\n}\n\nfunction dayOfISOWeekYear(isoWeekYear, week, day) {\n const date = new Date(0);\n date.setUTCFullYear(isoWeekYear, 0, 4);\n const fourthOfJanuaryDay = date.getUTCDay() || 7;\n const diff = (week - 1) * 7 + day + 1 - fourthOfJanuaryDay;\n date.setUTCDate(date.getUTCDate() + diff);\n return date;\n}\n\n// Validation functions\n\n// February is null to handle the leap year (using ||)\nconst daysInMonths = [31, null, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\n\nfunction isLeapYearIndex(year) {\n return year % 400 === 0 || (year % 4 === 0 && year % 100 !== 0);\n}\n\nfunction validateDate(year, month, date) {\n return (\n month >= 0 &&\n month <= 11 &&\n date >= 1 &&\n date <= (daysInMonths[month] || (isLeapYearIndex(year) ? 29 : 28))\n );\n}\n\nfunction validateDayOfYearDate(year, dayOfYear) {\n return dayOfYear >= 1 && dayOfYear <= (isLeapYearIndex(year) ? 366 : 365);\n}\n\nfunction validateWeekDate(_year, week, day) {\n return week >= 1 && week <= 53 && day >= 0 && day <= 6;\n}\n\nfunction validateTime(hours, minutes, seconds) {\n if (hours === 24) {\n return minutes === 0 && seconds === 0;\n }\n\n return (\n seconds >= 0 &&\n seconds < 60 &&\n minutes >= 0 &&\n minutes < 60 &&\n hours >= 0 &&\n hours < 25\n );\n}\n\nfunction validateTimezone(_hours, minutes) {\n return minutes >= 0 && minutes <= 59;\n}\n\n// Fallback for modularized imports:\nexport default parseISO;\n","// Copyright 2024, 2025 New Vector Ltd.\n// Copyright 2022-2024 The Matrix.org Foundation C.I.C.\n//\n// SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial\n// Please see LICENSE files in the repository root for full details.\n\nimport {\n differenceInHours,\n formatISO,\n intlFormat,\n intlFormatDistance,\n parseISO,\n} from \"date-fns\";\n\ntype Props = {\n className?: string;\n datetime: Date | string;\n now?: Date;\n};\n\nexport const formatDate = (datetime: Date): string =>\n intlFormat(datetime, {\n year: \"numeric\",\n month: \"short\",\n day: \"numeric\",\n weekday: \"short\",\n hour: \"numeric\",\n minute: \"numeric\",\n });\n\n/**\n * Formats a datetime\n * Uses distance when less than an hour ago\n * Else internationalised `Fri, 21 Jul 2023, 16:14`\n */\nexport const formatReadableDate = (datetime: Date, now: Date): string =>\n Math.abs(differenceInHours(now, datetime, { roundingMethod: \"round\" })) > 1\n ? formatDate(datetime)\n : intlFormatDistance(datetime, now);\n\nconst DateTime: React.FC = ({\n datetime: datetimeProps,\n now: nowProps,\n className,\n}) => {\n const datetime =\n typeof datetimeProps === \"string\" ? parseISO(datetimeProps) : datetimeProps;\n const now = nowProps || new Date();\n const text = formatReadableDate(datetime, now);\n\n return (\n \n );\n};\n\nexport default DateTime;\n","// Copyright 2024, 2025 New Vector Ltd.\n// Copyright 2023, 2024 The Matrix.org Foundation C.I.C.\n//\n// SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial\n// Please see LICENSE files in the repository root for full details.\n\nimport cx from \"classnames\";\nimport { differenceInSeconds, parseISO } from \"date-fns\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { formatDate, formatReadableDate } from \"../DateTime\";\n\nimport styles from \"./LastActive.module.css\";\n\n// 3 minutes\nconst ACTIVE_NOW_MAX_AGE = 60 * 3;\n/// 90 days\nconst INACTIVE_MIN_AGE = 60 * 60 * 24 * 90;\n\nconst LastActive: React.FC<{\n lastActive: Date | string;\n now?: Date | string;\n className?: string;\n}> = ({ lastActive: lastActiveProps, now: nowProps, className }) => {\n const { t } = useTranslation();\n\n const lastActive =\n typeof lastActiveProps === \"string\"\n ? parseISO(lastActiveProps)\n : lastActiveProps;\n\n const now = nowProps\n ? typeof nowProps === \"string\"\n ? parseISO(nowProps)\n : nowProps\n : new Date();\n\n const formattedDate = formatDate(lastActive);\n if (differenceInSeconds(now, lastActive) <= ACTIVE_NOW_MAX_AGE) {\n return (\n \n {t(\"frontend.last_active.active_now\")}\n \n );\n }\n if (differenceInSeconds(now, lastActive) > INACTIVE_MIN_AGE) {\n return (\n \n {t(\"frontend.last_active.inactive_90_days\")}\n \n );\n }\n const relativeDate = formatReadableDate(lastActive, now);\n return (\n \n {t(\"frontend.last_active.active_date\", { relativeDate })}\n \n );\n};\n\nexport default LastActive;\n"],"names":["badge","styles","Badge","children","kind","className","classes","classNames","jsx","Typography","daysInYear","millisecondsInWeek","millisecondsInDay","millisecondsInMinute","millisecondsInHour","secondsInHour","secondsInMinute","secondsInDay","secondsInWeek","secondsInYear","secondsInMonth","secondsInQuarter","constructFromSymbol","constructFrom","date","value","toDate","argument","context","defaultOptions","getDefaultOptions","startOfWeek","options","weekStartsOn","_date","day","diff","getTimezoneOffsetInMilliseconds","utcDate","normalizeDates","dates","normalize","startOfDay","differenceInCalendarDays","laterDate","earlierDate","laterDate_","earlierDate_","laterStartOfDay","earlierStartOfDay","laterTimestamp","earlierTimestamp","differenceInCalendarMonths","yearsDiff","monthsDiff","getQuarter","differenceInCalendarQuarters","quartersDiff","differenceInCalendarWeeks","laterStartOfWeek","earlierStartOfWeek","differenceInCalendarYears","getRoundingMethod","method","number","result","differenceInHours","differenceInMilliseconds","differenceInMinutes","dateLeft","dateRight","differenceInSeconds","addLeadingZeros","targetLength","sign","output","formatISO","date_","tzOffset","dateDelimiter","timeDelimiter","month","offset","absoluteOffset","hourOffset","minuteOffset","hour","minute","second","separator","time","intlFormat","formatOrLocale","localeOptions","formatOptions","isFormatOptions","opts","intlFormatDistance","unit","diffInSeconds","parseISO","invalidDate","dateStrings","splitDateString","parseYearResult","parseYear","parseDate","timestamp","parseTime","parseTimezone","tmpDate","patterns","dateRegex","timeRegex","timezoneRegex","dateString","array","timeString","token","additionalDigits","regex","captures","year","century","isWeekDate","dayOfYear","parseDateUnit","week","dayOfWeek","validateWeekDate","dayOfISOWeekYear","validateDate","validateDayOfYearDate","hours","parseTimeUnit","minutes","seconds","validateTime","timezoneString","validateTimezone","isoWeekYear","fourthOfJanuaryDay","daysInMonths","isLeapYearIndex","_year","_hours","formatDate","datetime","formatReadableDate","now","DateTime","datetimeProps","nowProps","text","ACTIVE_NOW_MAX_AGE","INACTIVE_MIN_AGE","LastActive","lastActiveProps","t","useTranslation","lastActive","formattedDate","cx","relativeDate"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25]} \ No newline at end of file diff --git a/mas/share/assets/LastActive-D4SP35FS.js.zz b/mas/share/assets/LastActive-D4SP35FS.js.zz new file mode 100644 index 0000000..29a98be Binary files /dev/null and b/mas/share/assets/LastActive-D4SP35FS.js.zz differ diff --git a/mas/share/assets/Link-Do_sTHM7.js b/mas/share/assets/Link-Do_sTHM7.js new file mode 100644 index 0000000..52f8253 --- /dev/null +++ b/mas/share/assets/Link-Do_sTHM7.js @@ -0,0 +1,2 @@ +import{ag as a,a8 as i}from"./main-CiAhdYQG.js";const o=a(i);export{o as L}; +//# sourceMappingURL=Link-Do_sTHM7.js.map diff --git a/mas/share/assets/Link-Do_sTHM7.js.map b/mas/share/assets/Link-Do_sTHM7.js.map new file mode 100644 index 0000000..432dd0f --- /dev/null +++ b/mas/share/assets/Link-Do_sTHM7.js.map @@ -0,0 +1 @@ +{"version":3,"file":"Link-Do_sTHM7.js","sources":["../src/components/Link.tsx"],"sourcesContent":["// Copyright 2024, 2025 New Vector Ltd.\n// Copyright 2023, 2024 The Matrix.org Foundation C.I.C.\n//\n// SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial\n// Please see LICENSE files in the repository root for full details.\n\nimport { createLink } from \"@tanstack/react-router\";\nimport { Link as CompoundLink } from \"@vector-im/compound-web\";\n\nexport const Link = createLink(CompoundLink);\n"],"names":["Link","createLink","CompoundLink"],"mappings":"gDASO,MAAMA,EAAOC,EAAWC,CAAY"} \ No newline at end of file diff --git a/mas/share/assets/Separator-C2iSg9zz.css b/mas/share/assets/Separator-C2iSg9zz.css new file mode 100644 index 0000000..990f49b --- /dev/null +++ b/mas/share/assets/Separator-C2iSg9zz.css @@ -0,0 +1 @@ +._separator_1qgmy_7{border-block-start:1px solid var(--cpd-color-bg-subtle-primary)}._section_1qgmy_11{border-block-start-width:2px} diff --git a/mas/share/assets/Separator-CVNE-7yB.js b/mas/share/assets/Separator-CVNE-7yB.js new file mode 100644 index 0000000..c477cee --- /dev/null +++ b/mas/share/assets/Separator-CVNE-7yB.js @@ -0,0 +1,2 @@ +import{r as e,j as n,w as c}from"./main-CiAhdYQG.js";const i="_separator_1qgmy_7",p="_section_1qgmy_11",s={separator:i,section:p},_=e.forwardRef(({kind:a,className:o,...r},t)=>n.jsx("div",{"aria-orientation":"horizontal",role:"separator",className:c(s.separator,a==="section"&&s.section,o),...r,ref:t}));export{_ as S}; +//# sourceMappingURL=Separator-CVNE-7yB.js.map diff --git a/mas/share/assets/Separator-CVNE-7yB.js.map b/mas/share/assets/Separator-CVNE-7yB.js.map new file mode 100644 index 0000000..035f609 --- /dev/null +++ b/mas/share/assets/Separator-CVNE-7yB.js.map @@ -0,0 +1 @@ +{"version":3,"file":"Separator-CVNE-7yB.js","sources":["../src/components/Separator/Separator.tsx"],"sourcesContent":["// Copyright 2025 New Vector Ltd.\n//\n// SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial\n// Please see LICENSE files in the repository root for full details.\n\n// biome-ignore-all lint/a11y/useFocusableInteractive: this is a false positive\n// biome-ignore-all lint/a11y/useAriaPropsForRole: this is a false positive\n// biome-ignore-all lint/a11y/useSemanticElements: I don't want to use an
    \n\nimport cx from \"classnames\";\nimport { forwardRef } from \"react\";\n\nimport styles from \"./Separator.module.css\";\n\ntype Props = {\n kind?: \"section\";\n} & React.HTMLAttributes;\n\nconst Separator = forwardRef(\n ({ kind, className, ...props }: Props, ref) => (\n \n ),\n);\n\nexport default Separator;\n"],"names":["Separator","forwardRef","kind","className","props","ref","jsx","cx","styles"],"mappings":"kIAkBMA,EAAYC,EAAAA,WAChB,CAAC,CAAE,KAAAC,EAAM,UAAAC,EAAW,GAAGC,CAAA,EAAgBC,IACrCC,EAAAA,IAAC,MAAA,CACC,mBAAiB,aACjB,KAAK,YACL,UAAWC,EACTC,EAAO,UACPN,IAAS,WAAaM,EAAO,QAC7BL,CAAA,EAED,GAAGC,EACJ,IAAAC,CAAA,CAAA,CAGN"} \ No newline at end of file diff --git a/mas/share/assets/SessionInfo-BtmlaGNW.js b/mas/share/assets/SessionInfo-BtmlaGNW.js new file mode 100644 index 0000000..f0ab8a6 --- /dev/null +++ b/mas/share/assets/SessionInfo-BtmlaGNW.js @@ -0,0 +1,2 @@ +import{r,j as e,w as o,T as i,u as n,t as l}from"./main-CiAhdYQG.js";import{I as u}from"./computer-Cx9wZ7Nf.js";import{H as f}from"./Heading-zTQC9Kqs.js";import{V as w,a}from"./VisualListItem-Dd-weqBc.js";import{S as g}from"./Separator-CVNE-7yB.js";function m(s,t){return e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",fill:"currentColor",viewBox:"0 0 24 24",ref:t,...s,children:e.jsx("path",{fillRule:"evenodd",d:"m12 4.236-6 3V12c0 5.156 4.239 7.254 6 7.898 1.761-.644 6-2.742 6-7.898V7.236zm-.894-1.789a2 2 0 0 1 1.788 0l6 3A2 2 0 0 1 20 7.236V12c0 6.742-5.773 9.246-7.51 9.846-.32.111-.66.111-.98 0C9.774 21.246 4 18.743 4 12V7.236a2 2 0 0 1 1.106-1.789z",clipRule:"evenodd"})})}m.displayName="AdminIcon";const j=r.forwardRef(m);function d(s,t){return e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",fill:"currentColor",viewBox:"0 0 24 24",ref:t,...s,children:e.jsx("path",{d:"m1.5 21.25 1.45-4.95a10.2 10.2 0 0 1-.712-2.1A10.2 10.2 0 0 1 2 12q0-2.075.788-3.9a10.1 10.1 0 0 1 2.137-3.175q1.35-1.35 3.175-2.137A9.7 9.7 0 0 1 12 2q2.075 0 3.9.788a10.1 10.1 0 0 1 3.175 2.137q1.35 1.35 2.137 3.175A9.7 9.7 0 0 1 22 12a9.7 9.7 0 0 1-.788 3.9 10.1 10.1 0 0 1-2.137 3.175q-1.35 1.35-3.175 2.137A9.7 9.7 0 0 1 12 22q-1.125 0-2.2-.238a10.2 10.2 0 0 1-2.1-.712L2.75 22.5a.94.94 0 0 1-1-.25.94.94 0 0 1-.25-1m2.45-1.2 3.2-.95a1 1 0 0 1 .275-.062q.15-.013.275-.013.225 0 .438.038.212.036.412.137a7.4 7.4 0 0 0 1.675.6Q11.1 20 12 20q3.35 0 5.675-2.325T20 12t-2.325-5.675T12 4 6.325 6.325 4 12q0 .9.2 1.775t.6 1.675q.176.325.188.688t-.088.712z"})})}d.displayName="ChatIcon";const I=r.forwardRef(d);function x(s,t){return e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",fill:"currentColor",viewBox:"0 0 24 24",ref:t,...s,children:e.jsx("path",{d:"m8.566 17-.944 4.094q-.086.406-.372.656t-.687.25q-.543 0-.887-.469a1.18 1.18 0 0 1-.2-1.031l.801-3.5H3.158q-.572 0-.916-.484a1.27 1.27 0 0 1-.2-1.078 1.12 1.12 0 0 1 1.116-.938H6.85l1.145-5h-3.12q-.57 0-.915-.484a1.27 1.27 0 0 1-.2-1.078A1.12 1.12 0 0 1 4.875 7h3.691l.945-4.094q.085-.406.372-.656.286-.25.686-.25.544 0 .887.469.345.468.2 1.031l-.8 3.5h4.578l.944-4.094q.085-.406.372-.656.286-.25.687-.25.543 0 .887.469t.2 1.031L17.723 7h3.119q.573 0 .916.484.343.485.2 1.079a1.12 1.12 0 0 1-1.116.937H17.15l-1.145 5h3.12q.57 0 .915.484.343.485.2 1.079a1.12 1.12 0 0 1-1.116.937h-3.691l-.944 4.094q-.087.406-.373.656t-.686.25q-.544 0-.887-.469a1.18 1.18 0 0 1-.2-1.031l.8-3.5zm.573-2.5h4.578l1.144-5h-4.578z"})})}x.displayName="RoomIcon";const q=r.forwardRef(x);function h(s,t){return e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",fill:"currentColor",viewBox:"0 0 24 24",ref:t,...s,children:e.jsx("path",{fillRule:"evenodd",d:"m5.07 20.965 16.141-8.07a1 1 0 0 0 0-1.79l-16.14-8.07c-.785-.392-1.658.342-1.406 1.182l2.249 7.496a1 1 0 0 1 0 .574l-2.249 7.496c-.252.84.621 1.574 1.405 1.182M6.246 5.859 18.528 12 6.246 18.141 7.788 13h4.462a1 1 0 1 0 0-2H7.788z",clipRule:"evenodd"})})}h.displayName="SendIcon";const v=r.forwardRef(h);function p(s,t){return e.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",fill:"currentColor",viewBox:"0 0 24 24",ref:t,...s,children:[e.jsx("path",{d:"M9.175 13.825Q10.35 15 12 15t2.825-1.175T16 11t-1.175-2.825T12 7 9.175 8.175 8 11t1.175 2.825m4.237-1.412A1.93 1.93 0 0 1 12 13q-.825 0-1.412-.588A1.93 1.93 0 0 1 10 11q0-.825.588-1.412A1.93 1.93 0 0 1 12 9q.825 0 1.412.588Q14 10.175 14 11t-.588 1.412"}),e.jsx("path",{d:"M22 12c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10m-2 0a8 8 0 1 0-16 0 8 8 0 0 0 16 0"}),e.jsx("path",{d:"M16.23 18.792a13 13 0 0 0-1.455-.455 11.6 11.6 0 0 0-5.55 0q-.73.18-1.455.455a8 8 0 0 1-1.729-1.454q1.336-.618 2.709-.95A13.8 13.8 0 0 1 12 16q1.65 0 3.25.387 1.373.333 2.709.95a8 8 0 0 1-1.73 1.455"})]})}p.displayName="UserProfileIcon";const S=r.forwardRef(p),A=()=>{const{t:s}=n();return e.jsx(a,{Icon:S,children:s("mas.scope.view_profile")})},N=()=>{const{t:s}=n();return e.jsx(a,{Icon:l,children:s("mas.scope.edit_profile")})},R=()=>{const{t:s}=n();return e.jsx(a,{Icon:u,children:s("mas.scope.manage_sessions")})},y=()=>{const{t:s}=n();return e.jsx(a,{Icon:I,children:s("mas.scope.view_messages")})},C=()=>{const{t:s}=n();return e.jsx(a,{Icon:v,children:s("mas.scope.send_messages")})},V=()=>{const{t:s}=n();return e.jsx(a,{Icon:q,destructive:!0,children:s("mas.scope.synapse_admin")})},z=()=>{const{t:s}=n();return e.jsx(a,{Icon:j,destructive:!0,children:s("mas.scope.mas_admin")})},M=({scope:s})=>e.jsx(a,{Icon:l,children:s}),D=({scope:s})=>{if(s.startsWith("urn:matrix:org.matrix.msc2967.client:device:"))return null;switch(s){case"openid":return e.jsx(A,{});case"urn:mas:graphql:*":return e.jsxs(e.Fragment,{children:[e.jsx(N,{}),e.jsx(R,{})]});case"urn:matrix:org.matrix.msc2967.client:api:*":return e.jsxs(e.Fragment,{children:[e.jsx(y,{}),e.jsx(C,{})]});case"urn:synapse:admin:*":return e.jsx(V,{});case"urn:mas:admin":return e.jsx(z,{});default:return e.jsx(M,{scope:s})}},P=({scope:s})=>{const t=s.split(" ");return e.jsx(w,{className:"mt-1",children:t.map(c=>e.jsx(D,{scope:c},c))})},b=({children:s,className:t})=>e.jsx("li",{className:o("flex flex-col min-w-0",t),children:s}),E=({children:s,className:t})=>e.jsx(i,{size:"sm",weight:"regular",as:"h5",className:o("text-secondary",t),children:s}),F=({children:s,className:t})=>e.jsx(i,{size:"md",weight:"regular",className:o("text-ellipsis overflow-hidden",t),children:s}),Q=({children:s,className:t})=>e.jsx("ul",{className:o("flex flex-wrap gap-x-10 gap-y-6",t),children:s}),U=({children:s,className:t})=>e.jsx("section",{className:o("flex flex-col gap-6",t),children:s}),k=({children:s,className:t})=>e.jsxs(e.Fragment,{children:[e.jsx(f,{as:"h4",size:"sm",weight:"semibold",className:t,children:s}),e.jsx(g,{className:"-mt-4",kind:"section"})]});export{U as D,A as S,k as a,Q as b,b as c,E as d,F as e,y as f,C as g,P as h}; +//# sourceMappingURL=SessionInfo-BtmlaGNW.js.map diff --git a/mas/share/assets/SessionInfo-BtmlaGNW.js.br b/mas/share/assets/SessionInfo-BtmlaGNW.js.br new file mode 100644 index 0000000..3c40b83 Binary files /dev/null and b/mas/share/assets/SessionInfo-BtmlaGNW.js.br differ diff --git a/mas/share/assets/SessionInfo-BtmlaGNW.js.gz b/mas/share/assets/SessionInfo-BtmlaGNW.js.gz new file mode 100644 index 0000000..05c5d94 Binary files /dev/null and b/mas/share/assets/SessionInfo-BtmlaGNW.js.gz differ diff --git a/mas/share/assets/SessionInfo-BtmlaGNW.js.map b/mas/share/assets/SessionInfo-BtmlaGNW.js.map new file mode 100644 index 0000000..1b471f5 --- /dev/null +++ b/mas/share/assets/SessionInfo-BtmlaGNW.js.map @@ -0,0 +1 @@ +{"version":3,"file":"SessionInfo-BtmlaGNW.js","sources":["../node_modules/@vector-im/compound-design-tokens/assets/web/icons/admin.js","../node_modules/@vector-im/compound-design-tokens/assets/web/icons/chat.js","../node_modules/@vector-im/compound-design-tokens/assets/web/icons/room.js","../node_modules/@vector-im/compound-design-tokens/assets/web/icons/send.js","../node_modules/@vector-im/compound-design-tokens/assets/web/icons/user-profile.js","../src/components/SessionDetail/SessionInfo.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction AdminIcon(props, ref) {\n return /*#__PURE__*/_jsx(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"1em\",\n height: \"1em\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n ref: ref,\n ...props,\n children: /*#__PURE__*/_jsx(\"path\", {\n fillRule: \"evenodd\",\n d: \"m12 4.236-6 3V12c0 5.156 4.239 7.254 6 7.898 1.761-.644 6-2.742 6-7.898V7.236zm-.894-1.789a2 2 0 0 1 1.788 0l6 3A2 2 0 0 1 20 7.236V12c0 6.742-5.773 9.246-7.51 9.846-.32.111-.66.111-.98 0C9.774 21.246 4 18.743 4 12V7.236a2 2 0 0 1 1.106-1.789z\",\n clipRule: \"evenodd\"\n })\n });\n}\n;\nAdminIcon.displayName = \"AdminIcon\";\nexport default forwardRef(AdminIcon);","import { forwardRef } from \"react\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction ChatIcon(props, ref) {\n return /*#__PURE__*/_jsx(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"1em\",\n height: \"1em\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n ref: ref,\n ...props,\n children: /*#__PURE__*/_jsx(\"path\", {\n d: \"m1.5 21.25 1.45-4.95a10.2 10.2 0 0 1-.712-2.1A10.2 10.2 0 0 1 2 12q0-2.075.788-3.9a10.1 10.1 0 0 1 2.137-3.175q1.35-1.35 3.175-2.137A9.7 9.7 0 0 1 12 2q2.075 0 3.9.788a10.1 10.1 0 0 1 3.175 2.137q1.35 1.35 2.137 3.175A9.7 9.7 0 0 1 22 12a9.7 9.7 0 0 1-.788 3.9 10.1 10.1 0 0 1-2.137 3.175q-1.35 1.35-3.175 2.137A9.7 9.7 0 0 1 12 22q-1.125 0-2.2-.238a10.2 10.2 0 0 1-2.1-.712L2.75 22.5a.94.94 0 0 1-1-.25.94.94 0 0 1-.25-1m2.45-1.2 3.2-.95a1 1 0 0 1 .275-.062q.15-.013.275-.013.225 0 .438.038.212.036.412.137a7.4 7.4 0 0 0 1.675.6Q11.1 20 12 20q3.35 0 5.675-2.325T20 12t-2.325-5.675T12 4 6.325 6.325 4 12q0 .9.2 1.775t.6 1.675q.176.325.188.688t-.088.712z\"\n })\n });\n}\n;\nChatIcon.displayName = \"ChatIcon\";\nexport default forwardRef(ChatIcon);","import { forwardRef } from \"react\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction RoomIcon(props, ref) {\n return /*#__PURE__*/_jsx(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"1em\",\n height: \"1em\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n ref: ref,\n ...props,\n children: /*#__PURE__*/_jsx(\"path\", {\n d: \"m8.566 17-.944 4.094q-.086.406-.372.656t-.687.25q-.543 0-.887-.469a1.18 1.18 0 0 1-.2-1.031l.801-3.5H3.158q-.572 0-.916-.484a1.27 1.27 0 0 1-.2-1.078 1.12 1.12 0 0 1 1.116-.938H6.85l1.145-5h-3.12q-.57 0-.915-.484a1.27 1.27 0 0 1-.2-1.078A1.12 1.12 0 0 1 4.875 7h3.691l.945-4.094q.085-.406.372-.656.286-.25.686-.25.544 0 .887.469.345.468.2 1.031l-.8 3.5h4.578l.944-4.094q.085-.406.372-.656.286-.25.687-.25.543 0 .887.469t.2 1.031L17.723 7h3.119q.573 0 .916.484.343.485.2 1.079a1.12 1.12 0 0 1-1.116.937H17.15l-1.145 5h3.12q.57 0 .915.484.343.485.2 1.079a1.12 1.12 0 0 1-1.116.937h-3.691l-.944 4.094q-.087.406-.373.656t-.686.25q-.544 0-.887-.469a1.18 1.18 0 0 1-.2-1.031l.8-3.5zm.573-2.5h4.578l1.144-5h-4.578z\"\n })\n });\n}\n;\nRoomIcon.displayName = \"RoomIcon\";\nexport default forwardRef(RoomIcon);","import { forwardRef } from \"react\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction SendIcon(props, ref) {\n return /*#__PURE__*/_jsx(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"1em\",\n height: \"1em\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n ref: ref,\n ...props,\n children: /*#__PURE__*/_jsx(\"path\", {\n fillRule: \"evenodd\",\n d: \"m5.07 20.965 16.141-8.07a1 1 0 0 0 0-1.79l-16.14-8.07c-.785-.392-1.658.342-1.406 1.182l2.249 7.496a1 1 0 0 1 0 .574l-2.249 7.496c-.252.84.621 1.574 1.405 1.182M6.246 5.859 18.528 12 6.246 18.141 7.788 13h4.462a1 1 0 1 0 0-2H7.788z\",\n clipRule: \"evenodd\"\n })\n });\n}\n;\nSendIcon.displayName = \"SendIcon\";\nexport default forwardRef(SendIcon);","import { forwardRef } from \"react\";\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nfunction UserProfileIcon(props, ref) {\n return /*#__PURE__*/_jsxs(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"1em\",\n height: \"1em\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n ref: ref,\n ...props,\n children: [/*#__PURE__*/_jsx(\"path\", {\n d: \"M9.175 13.825Q10.35 15 12 15t2.825-1.175T16 11t-1.175-2.825T12 7 9.175 8.175 8 11t1.175 2.825m4.237-1.412A1.93 1.93 0 0 1 12 13q-.825 0-1.412-.588A1.93 1.93 0 0 1 10 11q0-.825.588-1.412A1.93 1.93 0 0 1 12 9q.825 0 1.412.588Q14 10.175 14 11t-.588 1.412\"\n }), /*#__PURE__*/_jsx(\"path\", {\n d: \"M22 12c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10m-2 0a8 8 0 1 0-16 0 8 8 0 0 0 16 0\"\n }), /*#__PURE__*/_jsx(\"path\", {\n d: \"M16.23 18.792a13 13 0 0 0-1.455-.455 11.6 11.6 0 0 0-5.55 0q-.73.18-1.455.455a8 8 0 0 1-1.729-1.454q1.336-.618 2.709-.95A13.8 13.8 0 0 1 12 16q1.65 0 3.25.387 1.373.333 2.709.95a8 8 0 0 1-1.73 1.455\"\n })]\n });\n}\n;\nUserProfileIcon.displayName = \"UserProfileIcon\";\nexport default forwardRef(UserProfileIcon);","// Copyright 2025 New Vector Ltd.\n//\n// SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial\n// Please see LICENSE files in the repository root for full details.\n\nimport IconAdmin from \"@vector-im/compound-design-tokens/assets/web/icons/admin\";\nimport IconChat from \"@vector-im/compound-design-tokens/assets/web/icons/chat\";\nimport IconComputer from \"@vector-im/compound-design-tokens/assets/web/icons/computer\";\nimport IconInfo from \"@vector-im/compound-design-tokens/assets/web/icons/info\";\nimport IconRoom from \"@vector-im/compound-design-tokens/assets/web/icons/room\";\nimport IconSend from \"@vector-im/compound-design-tokens/assets/web/icons/send\";\nimport IconUserProfile from \"@vector-im/compound-design-tokens/assets/web/icons/user-profile\";\nimport {\n Heading,\n Text,\n VisualList,\n VisualListItem,\n} from \"@vector-im/compound-web\";\nimport cx from \"classnames\";\nimport type * as React from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport Separator from \"../Separator/Separator\";\n\nexport const ScopeViewProfile: React.FC = () => {\n const { t } = useTranslation();\n return (\n \n {t(\"mas.scope.view_profile\")}\n \n );\n};\n\nconst ScopeEditProfile: React.FC = () => {\n const { t } = useTranslation();\n return (\n \n {t(\"mas.scope.edit_profile\")}\n \n );\n};\n\nconst ScopeManageSessions: React.FC = () => {\n const { t } = useTranslation();\n return (\n \n {t(\"mas.scope.manage_sessions\")}\n \n );\n};\n\nexport const ScopeViewMessages: React.FC = () => {\n const { t } = useTranslation();\n return (\n \n {t(\"mas.scope.view_messages\")}\n \n );\n};\n\nexport const ScopeSendMessages: React.FC = () => {\n const { t } = useTranslation();\n return (\n \n {t(\"mas.scope.send_messages\")}\n \n );\n};\n\nconst ScopeSynapseAdmin: React.FC = () => {\n const { t } = useTranslation();\n return (\n \n {t(\"mas.scope.synapse_admin\")}\n \n );\n};\n\nconst ScopeMasAdmin: React.FC = () => {\n const { t } = useTranslation();\n return (\n \n {t(\"mas.scope.mas_admin\")}\n \n );\n};\n\nconst ScopeOther: React.FC<{ scope: string }> = ({ scope }) => {\n return {scope};\n};\n\nconst Scope: React.FC<{ scope: string }> = ({ scope }) => {\n // Filter out \"urn:matrix:org.matrix.msc2967.client:device:\"\n if (scope.startsWith(\"urn:matrix:org.matrix.msc2967.client:device:\")) {\n return null;\n }\n\n switch (scope) {\n case \"openid\":\n return ;\n case \"urn:mas:graphql:*\":\n return (\n <>\n \n \n \n );\n case \"urn:matrix:org.matrix.msc2967.client:api:*\":\n return (\n <>\n \n \n \n );\n case \"urn:synapse:admin:*\":\n return ;\n case \"urn:mas:admin\":\n return ;\n default:\n return ;\n }\n};\n\nexport const ScopeList: React.FC<{ scope: string }> = ({ scope }) => {\n const scopes = scope.split(\" \");\n return (\n \n {scopes.map((scope) => (\n \n ))}\n \n );\n};\n\nexport const Data: React.FC<\n React.PropsWithChildren<{ className?: string }>\n> = ({ children, className }) => (\n
  • {children}
  • \n);\n\nexport const DataLabel: React.FC<\n React.PropsWithChildren<{ className?: string }>\n> = ({ children, className }) => (\n \n {children}\n \n);\n\nexport const DataValue: React.FC<\n React.PropsWithChildren<{ className?: string }>\n> = ({ children, className }) => (\n \n {children}\n \n);\n\nexport const DataList: React.FC<\n React.PropsWithChildren<{ className?: string }>\n> = ({ children, className }) => (\n
      \n {children}\n
    \n);\n\nexport const DataSection: React.FC<\n React.PropsWithChildren<{ className?: string }>\n> = ({ children, className }) => (\n
    {children}
    \n);\n\nexport const DataSectionHeader: React.FC<\n React.PropsWithChildren<{ className?: string }>\n> = ({ children, className }) => (\n <>\n \n {children}\n \n \n \n);\n"],"names":["AdminIcon","props","ref","_jsx","IconAdmin","forwardRef","ChatIcon","IconChat","RoomIcon","IconRoom","SendIcon","IconSend","UserProfileIcon","_jsxs","IconUserProfile","ScopeViewProfile","t","useTranslation","VisualListItem","ScopeEditProfile","IconInfo","ScopeManageSessions","IconComputer","ScopeViewMessages","ScopeSendMessages","ScopeSynapseAdmin","jsx","ScopeMasAdmin","ScopeOther","scope","Scope","jsxs","Fragment","ScopeList","scopes","VisualList","Data","children","className","cx","DataLabel","Text","DataValue","DataList","DataSection","DataSectionHeader","Heading","Separator"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4]} \ No newline at end of file diff --git a/mas/share/assets/SessionInfo-BtmlaGNW.js.zz b/mas/share/assets/SessionInfo-BtmlaGNW.js.zz new file mode 100644 index 0000000..a4cfe27 Binary files /dev/null and b/mas/share/assets/SessionInfo-BtmlaGNW.js.zz differ diff --git a/mas/share/assets/Submit-DW2aiKTW.js b/mas/share/assets/Submit-DW2aiKTW.js new file mode 100644 index 0000000..f5f0aec --- /dev/null +++ b/mas/share/assets/Submit-DW2aiKTW.js @@ -0,0 +1,2 @@ +import{r as i,j as t,S as o,B as u}from"./main-CiAhdYQG.js";const m=i.forwardRef(function(r,s){return t.jsx(o,{asChild:!0,children:t.jsx(u,{type:"submit",ref:s,...r})})});export{m as S}; +//# sourceMappingURL=Submit-DW2aiKTW.js.map diff --git a/mas/share/assets/Submit-DW2aiKTW.js.map b/mas/share/assets/Submit-DW2aiKTW.js.map new file mode 100644 index 0000000..76f4ac0 --- /dev/null +++ b/mas/share/assets/Submit-DW2aiKTW.js.map @@ -0,0 +1 @@ +{"version":3,"file":"Submit-DW2aiKTW.js","sources":["../node_modules/@vector-im/compound-web/dist/components/Form/Submit.js"],"sourcesContent":["import { jsx } from \"react/jsx-runtime\";\nimport { forwardRef } from \"react\";\nimport { Submit as Submit$1 } from \"@radix-ui/react-form\";\nimport { Button } from \"../Button/Button.js\";\nconst Submit = forwardRef(\n function Submit2(props, ref) {\n return /* @__PURE__ */ jsx(Submit$1, { asChild: true, children: /* @__PURE__ */ jsx(Button, { type: \"submit\", ref, ...props }) });\n }\n);\nexport {\n Submit\n};\n//# sourceMappingURL=Submit.js.map\n"],"names":["Submit","forwardRef","props","ref","jsx","Submit$1","Button"],"mappings":"4DAIK,MAACA,EAASC,EAAAA,WACb,SAAiBC,EAAOC,EAAK,CAC3B,OAAuBC,EAAAA,IAAIC,EAAU,CAAE,QAAS,GAAM,SAA0BD,EAAAA,IAAIE,EAAQ,CAAE,KAAM,SAAU,IAAAH,EAAK,GAAGD,CAAK,CAAE,CAAC,CAAE,CAClI,CACF","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/mas/share/assets/Trans-CeobkUgR.js b/mas/share/assets/Trans-CeobkUgR.js new file mode 100644 index 0000000..28573bf --- /dev/null +++ b/mas/share/assets/Trans-CeobkUgR.js @@ -0,0 +1,2 @@ +import{al as H,am as M,an as Y,ao as U,r as A,ap as _,aq as w,ar as k,as as G}from"./main-CiAhdYQG.js";import{g as Q}from"./_commonjsHelpers-DaWZu8wl.js";var F,z;function K(){return z||(z=1,F={area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0}),F}var ee=K();const te=Q(ee);var ne=/\s([^'"/\s><]+?)[\s/>]|([^\s=]+)=\s?(".*?"|'.*?')/g;function B(e){var t={type:"tag",name:"",voidElement:!1,attrs:{},children:[]},n=e.match(/<\/?([^\s]+?)[/\s>]/);if(n&&(t.name=n[1],(te[n[1]]||e.charAt(e.length-2)==="/")&&(t.voidElement=!0),t.name.startsWith("!--"))){var r=e.indexOf("-->");return{type:"comment",comment:r!==-1?e.slice(4,r):""}}for(var i=new RegExp(ne),s=null;(s=i.exec(e))!==null;)if(s[0].trim())if(s[1]){var l=s[1].trim(),o=[l,""];l.indexOf("=")>-1&&(o=l.split("=")),t.attrs[o[0]]=o[1],i.lastIndex--}else s[2]&&(t.attrs[s[2]]=s[3].trim().substring(1,s[3].length-1));return t}var re=/<[a-zA-Z0-9\-\!\/](?:"[^"]*"|'[^']*'|[^'">])*>/g,se=/^\s*$/,ae=Object.create(null);function W(e,t){switch(t.type){case"text":return e+t.content;case"tag":return e+="<"+t.name+(t.attrs?(function(n){var r=[];for(var i in n)r.push(i+'="'+n[i]+'"');return r.length?" "+r.join(" "):""})(t.attrs):"")+(t.voidElement?"/>":">"),t.voidElement?e:e+t.children.reduce(W,"")+"";case"comment":return e+""}}var ie={parse:function(e,t){t||(t={}),t.components||(t.components=ae);var n,r=[],i=[],s=-1,l=!1;if(e.indexOf("<")!==0){var o=e.indexOf("<");r.push({type:"text",content:o===-1?e:e.substring(0,o)})}return e.replace(re,function(u,p){if(l){if(u!=="")return;l=!1}var f,E=u.charAt(1)!=="/",C=u.startsWith(" safe to skip those cases.\n if (lastMatch.pattern !== 'bruteforce') {\n // try adding m to this length-sequenceLength sequence.\n this.update(match, parseInt(sequenceLength, 10) + 1);\n }\n });\n }\n },\n // helper: step backwards through optimal.m starting at the end,\n // constructing the final optimal match sequence.\n unwind(passwordLength) {\n const optimalMatchSequence = [];\n let k = passwordLength - 1;\n // find the final best sequence length and score\n let sequenceLength = 0;\n // eslint-disable-next-line no-loss-of-precision\n let g = 2e308;\n const temp = this.optimal.g[k];\n // safety check for empty passwords\n if (temp) {\n Object.keys(temp).forEach(candidateSequenceLength => {\n const candidateMetricMatch = temp[candidateSequenceLength];\n if (candidateMetricMatch < g) {\n sequenceLength = parseInt(candidateSequenceLength, 10);\n g = candidateMetricMatch;\n }\n });\n }\n while (k >= 0) {\n const match = this.optimal.m[k][sequenceLength];\n optimalMatchSequence.unshift(match);\n k = match.i - 1;\n sequenceLength -= 1;\n }\n return optimalMatchSequence;\n }\n};\nvar scoring = {\n // ------------------------------------------------------------------------------\n // search --- most guessable match sequence -------------------------------------\n // ------------------------------------------------------------------------------\n //\n // takes a sequence of overlapping matches, returns the non-overlapping sequence with\n // minimum guesses. the following is a O(l_max * (n + m)) dynamic programming algorithm\n // for a length-n password with m candidate matches. l_max is the maximum optimal\n // sequence length spanning each prefix of the password. In practice it rarely exceeds 5 and the\n // search terminates rapidly.\n //\n // the optimal \"minimum guesses\" sequence is here defined to be the sequence that\n // minimizes the following function:\n //\n // g = sequenceLength! * Product(m.guesses for m in sequence) + D^(sequenceLength - 1)\n //\n // where sequenceLength is the length of the sequence.\n //\n // the factorial term is the number of ways to order sequenceLength patterns.\n //\n // the D^(sequenceLength-1) term is another length penalty, roughly capturing the idea that an\n // attacker will try lower-length sequences first before trying length-sequenceLength sequences.\n //\n // for example, consider a sequence that is date-repeat-dictionary.\n // - an attacker would need to try other date-repeat-dictionary combinations,\n // hence the product term.\n // - an attacker would need to try repeat-date-dictionary, dictionary-repeat-date,\n // ..., hence the factorial term.\n // - an attacker would also likely try length-1 (dictionary) and length-2 (dictionary-date)\n // sequences before length-3. assuming at minimum D guesses per pattern type,\n // D^(sequenceLength-1) approximates Sum(D^i for i in [1..sequenceLength-1]\n //\n // ------------------------------------------------------------------------------\n mostGuessableMatchSequence(password, matches, excludeAdditive = false) {\n scoringHelper.password = password;\n scoringHelper.excludeAdditive = excludeAdditive;\n const passwordLength = password.length;\n // partition matches into sublists according to ending index j\n let matchesByCoordinateJ = scoringHelper.fillArray(passwordLength, 'array');\n matches.forEach(match => {\n matchesByCoordinateJ[match.j].push(match);\n });\n // small detail: for deterministic output, sort each sublist by i.\n matchesByCoordinateJ = matchesByCoordinateJ.map(match => match.sort((m1, m2) => m1.i - m2.i));\n scoringHelper.optimal = {\n // optimal.m[k][sequenceLength] holds final match in the best length-sequenceLength\n // match sequence covering the\n // password prefix up to k, inclusive.\n // if there is no length-sequenceLength sequence that scores better (fewer guesses) than\n // a shorter match sequence spanning the same prefix,\n // optimal.m[k][sequenceLength] is undefined.\n m: scoringHelper.fillArray(passwordLength, 'object'),\n // same structure as optimal.m -- holds the product term Prod(m.guesses for m in sequence).\n // optimal.pi allows for fast (non-looping) updates to the minimization function.\n pi: scoringHelper.fillArray(passwordLength, 'object'),\n // same structure as optimal.m -- holds the overall metric.\n g: scoringHelper.fillArray(passwordLength, 'object')\n };\n for (let k = 0; k < passwordLength; k += 1) {\n matchesByCoordinateJ[k].forEach(match => {\n if (match.i > 0) {\n Object.keys(scoringHelper.optimal.m[match.i - 1]).forEach(sequenceLength => {\n scoringHelper.update(match, parseInt(sequenceLength, 10) + 1);\n });\n } else {\n scoringHelper.update(match, 1);\n }\n });\n scoringHelper.bruteforceUpdate(k);\n }\n const optimalMatchSequence = scoringHelper.unwind(passwordLength);\n const optimalSequenceLength = optimalMatchSequence.length;\n const guesses = this.getGuesses(password, optimalSequenceLength);\n return {\n password,\n guesses,\n guessesLog10: utils.log10(guesses),\n sequence: optimalMatchSequence\n };\n },\n getGuesses(password, optimalSequenceLength) {\n const passwordLength = password.length;\n let guesses = 0;\n if (password.length === 0) {\n guesses = 1;\n } else {\n guesses = scoringHelper.optimal.g[passwordLength - 1][optimalSequenceLength];\n }\n return guesses;\n }\n};\n\nexport { scoring as default };\n//# sourceMappingURL=index.esm.js.map\n","import scoring from '../../scoring/index.esm.js';\n\n/*\n *-------------------------------------------------------------------------------\n * repeats (aaa, abcabcabc) ------------------------------\n *-------------------------------------------------------------------------------\n */\nclass MatchRepeat {\n // eslint-disable-next-line max-statements\n match({\n password,\n omniMatch\n }) {\n const matches = [];\n let lastIndex = 0;\n while (lastIndex < password.length) {\n const greedyMatch = this.getGreedyMatch(password, lastIndex);\n const lazyMatch = this.getLazyMatch(password, lastIndex);\n if (greedyMatch == null) {\n break;\n }\n const {\n match,\n baseToken\n } = this.setMatchToken(greedyMatch, lazyMatch);\n if (match) {\n const j = match.index + match[0].length - 1;\n const baseGuesses = this.getBaseGuesses(baseToken, omniMatch);\n matches.push(this.normalizeMatch(baseToken, j, match, baseGuesses));\n lastIndex = j + 1;\n }\n }\n const hasPromises = matches.some(match => {\n return match instanceof Promise;\n });\n if (hasPromises) {\n return Promise.all(matches);\n }\n return matches;\n }\n // eslint-disable-next-line max-params\n normalizeMatch(baseToken, j, match, baseGuesses) {\n const baseMatch = {\n pattern: 'repeat',\n i: match.index,\n j,\n token: match[0],\n baseToken,\n baseGuesses: 0,\n repeatCount: match[0].length / baseToken.length\n };\n if (baseGuesses instanceof Promise) {\n return baseGuesses.then(resolvedBaseGuesses => {\n return {\n ...baseMatch,\n baseGuesses: resolvedBaseGuesses\n };\n });\n }\n return {\n ...baseMatch,\n baseGuesses\n };\n }\n getGreedyMatch(password, lastIndex) {\n const greedy = /(.+)\\1+/g;\n greedy.lastIndex = lastIndex;\n return greedy.exec(password);\n }\n getLazyMatch(password, lastIndex) {\n const lazy = /(.+?)\\1+/g;\n lazy.lastIndex = lastIndex;\n return lazy.exec(password);\n }\n setMatchToken(greedyMatch, lazyMatch) {\n const lazyAnchored = /^(.+?)\\1+$/;\n let match;\n let baseToken = '';\n if (lazyMatch && greedyMatch[0].length > lazyMatch[0].length) {\n // greedy beats lazy for 'aabaab'\n // greedy: [aabaab, aab]\n // lazy: [aa, a]\n match = greedyMatch;\n // greedy's repeated string might itself be repeated, eg.\n // aabaab in aabaabaabaab.\n // run an anchored lazy match on greedy's repeated string\n // to find the shortest repeated string\n const temp = lazyAnchored.exec(match[0]);\n if (temp) {\n baseToken = temp[1];\n }\n } else {\n // lazy beats greedy for 'aaaaa'\n // greedy: [aaaa, aa]\n // lazy: [aaaaa, a]\n match = lazyMatch;\n if (match) {\n baseToken = match[1];\n }\n }\n return {\n match,\n baseToken\n };\n }\n getBaseGuesses(baseToken, omniMatch) {\n const matches = omniMatch.match(baseToken);\n if (matches instanceof Promise) {\n return matches.then(resolvedMatches => {\n const baseAnalysis = scoring.mostGuessableMatchSequence(baseToken, resolvedMatches);\n return baseAnalysis.guesses;\n });\n }\n const baseAnalysis = scoring.mostGuessableMatchSequence(baseToken, matches);\n return baseAnalysis.guesses;\n }\n}\n\nexport { MatchRepeat as default };\n//# sourceMappingURL=matching.esm.js.map\n","import { ALL_LOWER, ALL_UPPER, ALL_DIGIT } from '../../data/const.esm.js';\n\n/*\n *-------------------------------------------------------------------------------\n * sequences (abcdef) ------------------------------\n *-------------------------------------------------------------------------------\n */\nclass MatchSequence {\n constructor() {\n this.MAX_DELTA = 5;\n }\n // eslint-disable-next-line max-statements\n match({\n password\n }) {\n /*\n * Identifies sequences by looking for repeated differences in unicode codepoint.\n * this allows skipping, such as 9753, and also matches some extended unicode sequences\n * such as Greek and Cyrillic alphabets.\n *\n * for example, consider the input 'abcdb975zy'\n *\n * password: a b c d b 9 7 5 z y\n * index: 0 1 2 3 4 5 6 7 8 9\n * delta: 1 1 1 -2 -41 -2 -2 69 1\n *\n * expected result:\n * [(i, j, delta), ...] = [(0, 3, 1), (5, 7, -2), (8, 9, 1)]\n */\n const result = [];\n if (password.length === 1) {\n return [];\n }\n let i = 0;\n let lastDelta = null;\n const passwordLength = password.length;\n for (let k = 1; k < passwordLength; k += 1) {\n const delta = password.charCodeAt(k) - password.charCodeAt(k - 1);\n if (lastDelta == null) {\n lastDelta = delta;\n }\n if (delta !== lastDelta) {\n const j = k - 1;\n this.update({\n i,\n j,\n delta: lastDelta,\n password,\n result\n });\n i = j;\n lastDelta = delta;\n }\n }\n this.update({\n i,\n j: passwordLength - 1,\n delta: lastDelta,\n password,\n result\n });\n return result;\n }\n update({\n i,\n j,\n delta,\n password,\n result\n }) {\n if (j - i > 1 || Math.abs(delta) === 1) {\n const absoluteDelta = Math.abs(delta);\n if (absoluteDelta > 0 && absoluteDelta <= this.MAX_DELTA) {\n const token = password.slice(i, +j + 1 || 9e9);\n const {\n sequenceName,\n sequenceSpace\n } = this.getSequence(token);\n return result.push({\n pattern: 'sequence',\n i,\n j,\n token: password.slice(i, +j + 1 || 9e9),\n sequenceName,\n sequenceSpace,\n ascending: delta > 0\n });\n }\n }\n return null;\n }\n getSequence(token) {\n // TODO conservatively stick with roman alphabet size.\n // (this could be improved)\n let sequenceName = 'unicode';\n let sequenceSpace = 26;\n if (ALL_LOWER.test(token)) {\n sequenceName = 'lower';\n sequenceSpace = 26;\n } else if (ALL_UPPER.test(token)) {\n sequenceName = 'upper';\n sequenceSpace = 26;\n } else if (ALL_DIGIT.test(token)) {\n sequenceName = 'digits';\n sequenceSpace = 10;\n }\n return {\n sequenceName,\n sequenceSpace\n };\n }\n}\n\nexport { MatchSequence as default };\n//# sourceMappingURL=matching.esm.js.map\n","import { extend, sorted } from '../../helper.esm.js';\nimport { zxcvbnOptions } from '../../Options.esm.js';\n\n/*\n * ------------------------------------------------------------------------------\n * spatial match (qwerty/dvorak/keypad and so on) -----------------------------------------\n * ------------------------------------------------------------------------------\n */\nclass MatchSpatial {\n constructor() {\n this.SHIFTED_RX = /[~!@#$%^&*()_+QWERTYUIOP{}|ASDFGHJKL:\"ZXCVBNM<>?]/;\n }\n match({\n password\n }) {\n const matches = [];\n Object.keys(zxcvbnOptions.graphs).forEach(graphName => {\n const graph = zxcvbnOptions.graphs[graphName];\n extend(matches, this.helper(password, graph, graphName));\n });\n return sorted(matches);\n }\n checkIfShifted(graphName, password, index) {\n if (!graphName.includes('keypad') &&\n // initial character is shifted\n this.SHIFTED_RX.test(password.charAt(index))) {\n return 1;\n }\n return 0;\n }\n // eslint-disable-next-line complexity, max-statements\n helper(password, graph, graphName) {\n let shiftedCount;\n const matches = [];\n let i = 0;\n const passwordLength = password.length;\n while (i < passwordLength - 1) {\n let j = i + 1;\n let lastDirection = null;\n let turns = 0;\n shiftedCount = this.checkIfShifted(graphName, password, i);\n // eslint-disable-next-line no-constant-condition\n while (true) {\n const prevChar = password.charAt(j - 1);\n const adjacents = graph[prevChar] || [];\n let found = false;\n let foundDirection = -1;\n let curDirection = -1;\n // consider growing pattern by one character if j hasn't gone over the edge.\n if (j < passwordLength) {\n const curChar = password.charAt(j);\n const adjacentsLength = adjacents.length;\n for (let k = 0; k < adjacentsLength; k += 1) {\n const adjacent = adjacents[k];\n curDirection += 1;\n // eslint-disable-next-line max-depth\n if (adjacent) {\n const adjacentIndex = adjacent.indexOf(curChar);\n // eslint-disable-next-line max-depth\n if (adjacentIndex !== -1) {\n found = true;\n foundDirection = curDirection;\n // eslint-disable-next-line max-depth\n if (adjacentIndex === 1) {\n // # index 1 in the adjacency means the key is shifted,\n // # 0 means unshifted: A vs a, % vs 5, etc.\n // # for example, 'q' is adjacent to the entry '2@'.\n // # @ is shifted w/ index 1, 2 is unshifted.\n shiftedCount += 1;\n }\n // eslint-disable-next-line max-depth\n if (lastDirection !== foundDirection) {\n // # adding a turn is correct even in the initial\n // case when last_direction is null:\n // # every spatial pattern starts with a turn.\n turns += 1;\n lastDirection = foundDirection;\n }\n break;\n }\n }\n }\n }\n // if the current pattern continued, extend j and try to grow again\n if (found) {\n j += 1;\n // otherwise push the pattern discovered so far, if any...\n } else {\n // don't consider length 1 or 2 chains.\n if (j - i > 2) {\n matches.push({\n pattern: 'spatial',\n i,\n j: j - 1,\n token: password.slice(i, j),\n graph: graphName,\n turns,\n shiftedCount\n });\n }\n // ...and then start a new search for the rest of the password.\n i = j;\n break;\n }\n }\n }\n return matches;\n }\n}\n\nexport { MatchSpatial as default };\n//# sourceMappingURL=matching.esm.js.map\n","import { SEPERATOR_CHARS } from '../../data/const.esm.js';\n\nconst separatorRegex = new RegExp(`[${SEPERATOR_CHARS.join('')}]`);\n/*\n *-------------------------------------------------------------------------------\n * separators (any semi-repeated special character) -----------------------------\n *-------------------------------------------------------------------------------\n */\nclass MatchSeparator {\n static getMostUsedSeparatorChar(password) {\n const mostUsedSeperators = [...password.split('').filter(c => separatorRegex.test(c)).reduce((memo, c) => {\n const m = memo.get(c);\n if (m) {\n memo.set(c, m + 1);\n } else {\n memo.set(c, 1);\n }\n return memo;\n }, new Map()).entries()].sort(([_a, a], [_b, b]) => b - a);\n if (!mostUsedSeperators.length) return undefined;\n const match = mostUsedSeperators[0];\n // If the special character is only used once, don't treat it like a separator\n if (match[1] < 2) return undefined;\n return match[0];\n }\n static getSeparatorRegex(separator) {\n return new RegExp(`([^${separator}\\n])(${separator})(?!${separator})`, 'g');\n // negative lookbehind can be added again in a few years when it is more supported by the browsers (currently 2023)\n // https://github.com/zxcvbn-ts/zxcvbn/issues/202\n // return new RegExp(`(? TODO resolve this type issue. This is because it is possible to be async\n repeat: MatchRepeat,\n sequence: MatchSequence,\n spatial: MatchSpatial,\n separator: MatchSeparator\n };\n }\n match(password) {\n const matches = [];\n const promises = [];\n const matchers = [...Object.keys(this.matchers), ...Object.keys(zxcvbnOptions.matchers)];\n matchers.forEach(key => {\n if (!this.matchers[key] && !zxcvbnOptions.matchers[key]) {\n return;\n }\n const Matcher = this.matchers[key] ? this.matchers[key] : zxcvbnOptions.matchers[key].Matching;\n const usedMatcher = new Matcher();\n const result = usedMatcher.match({\n password,\n omniMatch: this\n });\n if (result instanceof Promise) {\n result.then(response => {\n extend(matches, response);\n });\n promises.push(result);\n } else {\n extend(matches, result);\n }\n });\n if (promises.length > 0) {\n return new Promise((resolve, reject) => {\n Promise.all(promises).then(() => {\n resolve(sorted(matches));\n }).catch(error => {\n reject(error);\n });\n });\n }\n return sorted(matches);\n }\n}\n\nexport { Matching as default };\n//# sourceMappingURL=Matching.esm.js.map\n","import { zxcvbnOptions } from './Options.esm.js';\n\nconst SECOND = 1;\nconst MINUTE = SECOND * 60;\nconst HOUR = MINUTE * 60;\nconst DAY = HOUR * 24;\nconst MONTH = DAY * 31;\nconst YEAR = MONTH * 12;\nconst CENTURY = YEAR * 100;\nconst times = {\n second: SECOND,\n minute: MINUTE,\n hour: HOUR,\n day: DAY,\n month: MONTH,\n year: YEAR,\n century: CENTURY\n};\n/*\n * -------------------------------------------------------------------------------\n * Estimates time for an attacker ---------------------------------------------------------------\n * -------------------------------------------------------------------------------\n */\nclass TimeEstimates {\n translate(displayStr, value) {\n let key = displayStr;\n if (value !== undefined && value !== 1) {\n key += 's';\n }\n const {\n timeEstimation\n } = zxcvbnOptions.translations;\n return timeEstimation[key].replace('{base}', `${value}`);\n }\n estimateAttackTimes(guesses) {\n const crackTimesSeconds = {\n onlineThrottling100PerHour: guesses / (100 / 3600),\n onlineNoThrottling10PerSecond: guesses / 10,\n offlineSlowHashing1e4PerSecond: guesses / 1e4,\n offlineFastHashing1e10PerSecond: guesses / 1e10\n };\n const crackTimesDisplay = {\n onlineThrottling100PerHour: '',\n onlineNoThrottling10PerSecond: '',\n offlineSlowHashing1e4PerSecond: '',\n offlineFastHashing1e10PerSecond: ''\n };\n Object.keys(crackTimesSeconds).forEach(scenario => {\n const seconds = crackTimesSeconds[scenario];\n crackTimesDisplay[scenario] = this.displayTime(seconds);\n });\n return {\n crackTimesSeconds,\n crackTimesDisplay,\n score: this.guessesToScore(guesses)\n };\n }\n guessesToScore(guesses) {\n const DELTA = 5;\n if (guesses < 1e3 + DELTA) {\n // risky password: \"too guessable\"\n return 0;\n }\n if (guesses < 1e6 + DELTA) {\n // modest protection from throttled online attacks: \"very guessable\"\n return 1;\n }\n if (guesses < 1e8 + DELTA) {\n // modest protection from unthrottled online attacks: \"somewhat guessable\"\n return 2;\n }\n if (guesses < 1e10 + DELTA) {\n // modest protection from offline attacks: \"safely unguessable\"\n // assuming a salted, slow hash function like bcrypt, scrypt, PBKDF2, argon, etc\n return 3;\n }\n // strong protection from offline attacks under same scenario: \"very unguessable\"\n return 4;\n }\n displayTime(seconds) {\n let displayStr = 'centuries';\n let base;\n const timeKeys = Object.keys(times);\n const foundIndex = timeKeys.findIndex(time => seconds < times[time]);\n if (foundIndex > -1) {\n displayStr = timeKeys[foundIndex - 1];\n if (foundIndex !== 0) {\n base = Math.round(seconds / times[displayStr]);\n } else {\n displayStr = 'ltSecond';\n }\n }\n return this.translate(displayStr, base);\n }\n}\n\nexport { TimeEstimates as default };\n//# sourceMappingURL=TimeEstimates.esm.js.map\n","var bruteforceMatcher = (() => {\n return null;\n});\n\nexport { bruteforceMatcher as default };\n//# sourceMappingURL=feedback.esm.js.map\n","import { zxcvbnOptions } from '../../Options.esm.js';\n\nvar dateMatcher = (() => {\n return {\n warning: zxcvbnOptions.translations.warnings.dates,\n suggestions: [zxcvbnOptions.translations.suggestions.dates]\n };\n});\n\nexport { dateMatcher as default };\n//# sourceMappingURL=feedback.esm.js.map\n","import { zxcvbnOptions } from '../../Options.esm.js';\nimport { START_UPPER, ALL_UPPER_INVERTED } from '../../data/const.esm.js';\n\nconst getDictionaryWarningPassword = (match, isSoleMatch) => {\n let warning = null;\n if (isSoleMatch && !match.l33t && !match.reversed) {\n if (match.rank <= 10) {\n warning = zxcvbnOptions.translations.warnings.topTen;\n } else if (match.rank <= 100) {\n warning = zxcvbnOptions.translations.warnings.topHundred;\n } else {\n warning = zxcvbnOptions.translations.warnings.common;\n }\n } else if (match.guessesLog10 <= 4) {\n warning = zxcvbnOptions.translations.warnings.similarToCommon;\n }\n return warning;\n};\nconst getDictionaryWarningWikipedia = (match, isSoleMatch) => {\n let warning = null;\n if (isSoleMatch) {\n warning = zxcvbnOptions.translations.warnings.wordByItself;\n }\n return warning;\n};\nconst getDictionaryWarningNames = (match, isSoleMatch) => {\n if (isSoleMatch) {\n return zxcvbnOptions.translations.warnings.namesByThemselves;\n }\n return zxcvbnOptions.translations.warnings.commonNames;\n};\nconst getDictionaryWarning = (match, isSoleMatch) => {\n let warning = null;\n const dictName = match.dictionaryName;\n const isAName = dictName === 'lastnames' || dictName.toLowerCase().includes('firstnames');\n if (dictName === 'passwords') {\n warning = getDictionaryWarningPassword(match, isSoleMatch);\n } else if (dictName.includes('wikipedia')) {\n warning = getDictionaryWarningWikipedia(match, isSoleMatch);\n } else if (isAName) {\n warning = getDictionaryWarningNames(match, isSoleMatch);\n } else if (dictName === 'userInputs') {\n warning = zxcvbnOptions.translations.warnings.userInputs;\n }\n return warning;\n};\nvar dictionaryMatcher = ((match, isSoleMatch) => {\n const warning = getDictionaryWarning(match, isSoleMatch);\n const suggestions = [];\n const word = match.token;\n if (word.match(START_UPPER)) {\n suggestions.push(zxcvbnOptions.translations.suggestions.capitalization);\n } else if (word.match(ALL_UPPER_INVERTED) && word.toLowerCase() !== word) {\n suggestions.push(zxcvbnOptions.translations.suggestions.allUppercase);\n }\n if (match.reversed && match.token.length >= 4) {\n suggestions.push(zxcvbnOptions.translations.suggestions.reverseWords);\n }\n if (match.l33t) {\n suggestions.push(zxcvbnOptions.translations.suggestions.l33t);\n }\n return {\n warning,\n suggestions\n };\n});\n\nexport { dictionaryMatcher as default };\n//# sourceMappingURL=feedback.esm.js.map\n","import { zxcvbnOptions } from '../../Options.esm.js';\n\nvar regexMatcher = (match => {\n if (match.regexName === 'recentYear') {\n return {\n warning: zxcvbnOptions.translations.warnings.recentYears,\n suggestions: [zxcvbnOptions.translations.suggestions.recentYears, zxcvbnOptions.translations.suggestions.associatedYears]\n };\n }\n return {\n warning: null,\n suggestions: []\n };\n});\n\nexport { regexMatcher as default };\n//# sourceMappingURL=feedback.esm.js.map\n","import { zxcvbnOptions } from '../../Options.esm.js';\n\nvar repeatMatcher = (match => {\n let warning = zxcvbnOptions.translations.warnings.extendedRepeat;\n if (match.baseToken.length === 1) {\n warning = zxcvbnOptions.translations.warnings.simpleRepeat;\n }\n return {\n warning,\n suggestions: [zxcvbnOptions.translations.suggestions.repeated]\n };\n});\n\nexport { repeatMatcher as default };\n//# sourceMappingURL=feedback.esm.js.map\n","import { zxcvbnOptions } from '../../Options.esm.js';\n\nvar sequenceMatcher = (() => {\n return {\n warning: zxcvbnOptions.translations.warnings.sequences,\n suggestions: [zxcvbnOptions.translations.suggestions.sequences]\n };\n});\n\nexport { sequenceMatcher as default };\n//# sourceMappingURL=feedback.esm.js.map\n","import { zxcvbnOptions } from '../../Options.esm.js';\n\nvar spatialMatcher = (match => {\n let warning = zxcvbnOptions.translations.warnings.keyPattern;\n if (match.turns === 1) {\n warning = zxcvbnOptions.translations.warnings.straightRow;\n }\n return {\n warning,\n suggestions: [zxcvbnOptions.translations.suggestions.longerKeyboardPattern]\n };\n});\n\nexport { spatialMatcher as default };\n//# sourceMappingURL=feedback.esm.js.map\n","var separatorMatcher = (() => {\n // no suggestions\n return null;\n});\n\nexport { separatorMatcher as default };\n//# sourceMappingURL=feedback.esm.js.map\n","import { zxcvbnOptions } from './Options.esm.js';\nimport bruteforceMatcher from './matcher/bruteforce/feedback.esm.js';\nimport dateMatcher from './matcher/date/feedback.esm.js';\nimport dictionaryMatcher from './matcher/dictionary/feedback.esm.js';\nimport regexMatcher from './matcher/regex/feedback.esm.js';\nimport repeatMatcher from './matcher/repeat/feedback.esm.js';\nimport sequenceMatcher from './matcher/sequence/feedback.esm.js';\nimport spatialMatcher from './matcher/spatial/feedback.esm.js';\nimport separatorMatcher from './matcher/separator/feedback.esm.js';\n\nconst defaultFeedback = {\n warning: null,\n suggestions: []\n};\n/*\n * -------------------------------------------------------------------------------\n * Generate feedback ---------------------------------------------------------------\n * -------------------------------------------------------------------------------\n */\nclass Feedback {\n constructor() {\n this.matchers = {\n bruteforce: bruteforceMatcher,\n date: dateMatcher,\n dictionary: dictionaryMatcher,\n regex: regexMatcher,\n repeat: repeatMatcher,\n sequence: sequenceMatcher,\n spatial: spatialMatcher,\n separator: separatorMatcher\n };\n this.defaultFeedback = {\n warning: null,\n suggestions: []\n };\n this.setDefaultSuggestions();\n }\n setDefaultSuggestions() {\n this.defaultFeedback.suggestions.push(zxcvbnOptions.translations.suggestions.useWords, zxcvbnOptions.translations.suggestions.noNeed);\n }\n getFeedback(score, sequence) {\n if (sequence.length === 0) {\n return this.defaultFeedback;\n }\n if (score > 2) {\n return defaultFeedback;\n }\n const extraFeedback = zxcvbnOptions.translations.suggestions.anotherWord;\n const longestMatch = this.getLongestMatch(sequence);\n let feedback = this.getMatchFeedback(longestMatch, sequence.length === 1);\n if (feedback !== null && feedback !== undefined) {\n feedback.suggestions.unshift(extraFeedback);\n } else {\n feedback = {\n warning: null,\n suggestions: [extraFeedback]\n };\n }\n return feedback;\n }\n getLongestMatch(sequence) {\n let longestMatch = sequence[0];\n const slicedSequence = sequence.slice(1);\n slicedSequence.forEach(match => {\n if (match.token.length > longestMatch.token.length) {\n longestMatch = match;\n }\n });\n return longestMatch;\n }\n getMatchFeedback(match, isSoleMatch) {\n if (this.matchers[match.pattern]) {\n return this.matchers[match.pattern](match, isSoleMatch);\n }\n if (zxcvbnOptions.matchers[match.pattern] && 'feedback' in zxcvbnOptions.matchers[match.pattern]) {\n return zxcvbnOptions.matchers[match.pattern].feedback(match, isSoleMatch);\n }\n return defaultFeedback;\n }\n}\n\nexport { Feedback as default };\n//# sourceMappingURL=Feedback.esm.js.map\n","import Matching from './Matching.esm.js';\nimport scoring from './scoring/index.esm.js';\nimport TimeEstimates from './TimeEstimates.esm.js';\nimport Feedback from './Feedback.esm.js';\nimport { zxcvbnOptions } from './Options.esm.js';\nexport { Options } from './Options.esm.js';\nexport { default as debounce } from './debounce.esm.js';\n\nconst time = () => new Date().getTime();\nconst createReturnValue = (resolvedMatches, password, start) => {\n const feedback = new Feedback();\n const timeEstimates = new TimeEstimates();\n const matchSequence = scoring.mostGuessableMatchSequence(password, resolvedMatches);\n const calcTime = time() - start;\n const attackTimes = timeEstimates.estimateAttackTimes(matchSequence.guesses);\n return {\n calcTime,\n ...matchSequence,\n ...attackTimes,\n feedback: feedback.getFeedback(attackTimes.score, matchSequence.sequence)\n };\n};\nconst main = (password, userInputs) => {\n if (userInputs) {\n zxcvbnOptions.extendUserInputsDictionary(userInputs);\n }\n const matching = new Matching();\n return matching.match(password);\n};\nconst zxcvbn = (password, userInputs) => {\n const start = time();\n const matches = main(password, userInputs);\n if (matches instanceof Promise) {\n throw new Error('You are using a Promised matcher, please use `zxcvbnAsync` for it.');\n }\n return createReturnValue(matches, password, start);\n};\nconst zxcvbnAsync = async (password, userInputs) => {\n const usedPassword = password.substring(0, zxcvbnOptions.maxLength);\n const start = time();\n const matches = await main(usedPassword, userInputs);\n return createReturnValue(matches, usedPassword, start);\n};\n\nexport { zxcvbn, zxcvbnAsync, zxcvbnOptions };\n//# sourceMappingURL=index.esm.js.map\n","var tempAdjacencyGraphs = {\"azerty\":{\"0\":[\"ç9\",null,null,\")°\",\"pP\",\"oO\"],\"1\":[\"²~\",null,null,\"é2\",\"aA\",null],\"2\":[\"&1\",null,null,\"\\\"3\",\"zZ\",\"aA\"],\"3\":[\"é2\",null,null,\"'4\",\"eE\",\"zZ\"],\"4\":[\"\\\"3\",null,null,\"(5\",\"rR\",\"eE\"],\"5\":[\"'4\",null,null,\"-6\",\"tT\",\"rR\"],\"6\":[\"(5\",null,null,\"è7\",\"yY\",\"tT\"],\"7\":[\"-6\",null,null,\"_8\",\"uU\",\"yY\"],\"8\":[\"è7\",null,null,\"ç9\",\"iI\",\"uU\"],\"9\":[\"_8\",null,null,\"à0\",\"oO\",\"iI\"],\"²\":[null,null,null,\"&1\",null,null],\"~\":[null,null,null,\"&1\",null,null],\"&\":[\"²~\",null,null,\"é2\",\"aA\",null],\"é\":[\"&1\",null,null,\"\\\"3\",\"zZ\",\"aA\"],\"\\\"\":[\"pP\",\")°\",\"+=\",\"$£\",\"ù%\",\"mM\"],\"'\":[\"\\\"3\",null,null,\"(5\",\"rR\",\"eE\"],\"(\":[\"'4\",null,null,\"-6\",\"tT\",\"rR\"],\"-\":[\"(5\",null,null,\"è7\",\"yY\",\"tT\"],\"è\":[\"-6\",null,null,\"_8\",\"uU\",\"yY\"],\"_\":[\"è7\",null,null,\"ç9\",\"iI\",\"uU\"],\"ç\":[\"_8\",null,null,\"à0\",\"oO\",\"iI\"],\"à\":[\"ç9\",null,null,\")°\",\"pP\",\"oO\"],\")\":[\"à0\",null,null,\"+=\",\"^\\\"\",\"pP\"],\"°\":[\"à0\",null,null,\"+=\",\"^\\\"\",\"pP\"],\"+\":[\")°\",null,null,null,\"$£\",\"^\\\"\"],\"=\":[\")°\",null,null,null,\"$£\",\"^\\\"\"],\"a\":[null,\"&1\",\"é2\",\"zZ\",\"qQ\",null],\"A\":[null,\"&1\",\"é2\",\"zZ\",\"qQ\",null],\"z\":[\"aA\",\"é2\",\"\\\"3\",\"eE\",\"sS\",\"qQ\"],\"Z\":[\"aA\",\"é2\",\"\\\"3\",\"eE\",\"sS\",\"qQ\"],\"e\":[\"zZ\",\"\\\"3\",\"'4\",\"rR\",\"dD\",\"sS\"],\"E\":[\"zZ\",\"\\\"3\",\"'4\",\"rR\",\"dD\",\"sS\"],\"r\":[\"eE\",\"'4\",\"(5\",\"tT\",\"fF\",\"dD\"],\"R\":[\"eE\",\"'4\",\"(5\",\"tT\",\"fF\",\"dD\"],\"t\":[\"rR\",\"(5\",\"-6\",\"yY\",\"gG\",\"fF\"],\"T\":[\"rR\",\"(5\",\"-6\",\"yY\",\"gG\",\"fF\"],\"y\":[\"tT\",\"-6\",\"è7\",\"uU\",\"hH\",\"gG\"],\"Y\":[\"tT\",\"-6\",\"è7\",\"uU\",\"hH\",\"gG\"],\"u\":[\"yY\",\"è7\",\"_8\",\"iI\",\"jJ\",\"hH\"],\"U\":[\"yY\",\"è7\",\"_8\",\"iI\",\"jJ\",\"hH\"],\"i\":[\"uU\",\"_8\",\"ç9\",\"oO\",\"kK\",\"jJ\"],\"I\":[\"uU\",\"_8\",\"ç9\",\"oO\",\"kK\",\"jJ\"],\"o\":[\"iI\",\"ç9\",\"à0\",\"pP\",\"lL\",\"kK\"],\"O\":[\"iI\",\"ç9\",\"à0\",\"pP\",\"lL\",\"kK\"],\"p\":[\"oO\",\"à0\",\")°\",\"^\\\"\",\"mM\",\"lL\"],\"P\":[\"oO\",\"à0\",\")°\",\"^\\\"\",\"mM\",\"lL\"],\"^\":[\"pP\",\")°\",\"+=\",\"$£\",\"ù%\",\"mM\"],\"$\":[\"^\\\"\",\"+=\",null,null,\"*µ\",\"ù%\"],\"£\":[\"^\\\"\",\"+=\",null,null,\"*µ\",\"ù%\"],\"q\":[null,\"aA\",\"zZ\",\"sS\",\"wW\",\"<>\"],\"Q\":[null,\"aA\",\"zZ\",\"sS\",\"wW\",\"<>\"],\"s\":[\"qQ\",\"zZ\",\"eE\",\"dD\",\"xX\",\"wW\"],\"S\":[\"qQ\",\"zZ\",\"eE\",\"dD\",\"xX\",\"wW\"],\"d\":[\"sS\",\"eE\",\"rR\",\"fF\",\"cC\",\"xX\"],\"D\":[\"sS\",\"eE\",\"rR\",\"fF\",\"cC\",\"xX\"],\"f\":[\"dD\",\"rR\",\"tT\",\"gG\",\"vV\",\"cC\"],\"F\":[\"dD\",\"rR\",\"tT\",\"gG\",\"vV\",\"cC\"],\"g\":[\"fF\",\"tT\",\"yY\",\"hH\",\"bB\",\"vV\"],\"G\":[\"fF\",\"tT\",\"yY\",\"hH\",\"bB\",\"vV\"],\"h\":[\"gG\",\"yY\",\"uU\",\"jJ\",\"nN\",\"bB\"],\"H\":[\"gG\",\"yY\",\"uU\",\"jJ\",\"nN\",\"bB\"],\"j\":[\"hH\",\"uU\",\"iI\",\"kK\",\",?\",\"nN\"],\"J\":[\"hH\",\"uU\",\"iI\",\"kK\",\",?\",\"nN\"],\"k\":[\"jJ\",\"iI\",\"oO\",\"lL\",\";.\",\",?\"],\"K\":[\"jJ\",\"iI\",\"oO\",\"lL\",\";.\",\",?\"],\"l\":[\"kK\",\"oO\",\"pP\",\"mM\",\":/\",\";.\"],\"L\":[\"kK\",\"oO\",\"pP\",\"mM\",\":/\",\";.\"],\"m\":[\"lL\",\"pP\",\"^\\\"\",\"ù%\",\"!§\",\":/\"],\"M\":[\"lL\",\"pP\",\"^\\\"\",\"ù%\",\"!§\",\":/\"],\"ù\":[\"mM\",\"^\\\"\",\"$£\",\"*µ\",null,\"!§\"],\"%\":[\"mM\",\"^\\\"\",\"$£\",\"*µ\",null,\"!§\"],\"*\":[\"ù%\",\"$£\",null,null,null,null],\"µ\":[\"ù%\",\"$£\",null,null,null,null],\"<\":[null,null,\"qQ\",\"wW\",null,null],\">\":[null,null,\"qQ\",\"wW\",null,null],\"w\":[\"<>\",\"qQ\",\"sS\",\"xX\",null,null],\"W\":[\"<>\",\"qQ\",\"sS\",\"xX\",null,null],\"x\":[\"wW\",\"sS\",\"dD\",\"cC\",null,null],\"X\":[\"wW\",\"sS\",\"dD\",\"cC\",null,null],\"c\":[\"xX\",\"dD\",\"fF\",\"vV\",null,null],\"C\":[\"xX\",\"dD\",\"fF\",\"vV\",null,null],\"v\":[\"cC\",\"fF\",\"gG\",\"bB\",null,null],\"V\":[\"cC\",\"fF\",\"gG\",\"bB\",null,null],\"b\":[\"vV\",\"gG\",\"hH\",\"nN\",null,null],\"B\":[\"vV\",\"gG\",\"hH\",\"nN\",null,null],\"n\":[\"bB\",\"hH\",\"jJ\",\",?\",null,null],\"N\":[\"bB\",\"hH\",\"jJ\",\",?\",null,null],\",\":[\"nN\",\"jJ\",\"kK\",\";.\",null,null],\"?\":[\"nN\",\"jJ\",\"kK\",\";.\",null,null],\";\":[\",?\",\"kK\",\"lL\",\":/\",null,null],\".\":[\",?\",\"kK\",\"lL\",\":/\",null,null],\":\":[\";.\",\"lL\",\"mM\",\"!§\",null,null],\"/\":[\";.\",\"lL\",\"mM\",\"!§\",null,null],\"!\":[\":/\",\"mM\",\"ù%\",null,null,null],\"§\":[\":/\",\"mM\",\"ù%\",null,null,null]},\"dvorak\":{\"0\":[\"9(\",null,null,\"[{\",\"lL\",\"rR\"],\"1\":[\"`~\",null,null,\"2@\",\"'\\\"\",null],\"2\":[\"1!\",null,null,\"3#\",\",<\",\"'\\\"\"],\"3\":[\"2@\",null,null,\"4$\",\".>\",\",<\"],\"4\":[\"3#\",null,null,\"5%\",\"pP\",\".>\"],\"5\":[\"4$\",null,null,\"6^\",\"yY\",\"pP\"],\"6\":[\"5%\",null,null,\"7&\",\"fF\",\"yY\"],\"7\":[\"6^\",null,null,\"8*\",\"gG\",\"fF\"],\"8\":[\"7&\",null,null,\"9(\",\"cC\",\"gG\"],\"9\":[\"8*\",null,null,\"0)\",\"rR\",\"cC\"],\"`\":[null,null,null,\"1!\",null,null],\"~\":[null,null,null,\"1!\",null,null],\"!\":[\"`~\",null,null,\"2@\",\"'\\\"\",null],\"@\":[\"1!\",null,null,\"3#\",\",<\",\"'\\\"\"],\"#\":[\"2@\",null,null,\"4$\",\".>\",\",<\"],\"$\":[\"3#\",null,null,\"5%\",\"pP\",\".>\"],\"%\":[\"4$\",null,null,\"6^\",\"yY\",\"pP\"],\"^\":[\"5%\",null,null,\"7&\",\"fF\",\"yY\"],\"&\":[\"6^\",null,null,\"8*\",\"gG\",\"fF\"],\"*\":[\"7&\",null,null,\"9(\",\"cC\",\"gG\"],\"(\":[\"8*\",null,null,\"0)\",\"rR\",\"cC\"],\")\":[\"9(\",null,null,\"[{\",\"lL\",\"rR\"],\"[\":[\"0)\",null,null,\"]}\",\"/?\",\"lL\"],\"{\":[\"0)\",null,null,\"]}\",\"/?\",\"lL\"],\"]\":[\"[{\",null,null,null,\"=+\",\"/?\"],\"}\":[\"[{\",null,null,null,\"=+\",\"/?\"],\"'\":[null,\"1!\",\"2@\",\",<\",\"aA\",null],\"\\\"\":[null,\"1!\",\"2@\",\",<\",\"aA\",null],\",\":[\"'\\\"\",\"2@\",\"3#\",\".>\",\"oO\",\"aA\"],\"<\":[\"'\\\"\",\"2@\",\"3#\",\".>\",\"oO\",\"aA\"],\".\":[\",<\",\"3#\",\"4$\",\"pP\",\"eE\",\"oO\"],\">\":[\",<\",\"3#\",\"4$\",\"pP\",\"eE\",\"oO\"],\"p\":[\".>\",\"4$\",\"5%\",\"yY\",\"uU\",\"eE\"],\"P\":[\".>\",\"4$\",\"5%\",\"yY\",\"uU\",\"eE\"],\"y\":[\"pP\",\"5%\",\"6^\",\"fF\",\"iI\",\"uU\"],\"Y\":[\"pP\",\"5%\",\"6^\",\"fF\",\"iI\",\"uU\"],\"f\":[\"yY\",\"6^\",\"7&\",\"gG\",\"dD\",\"iI\"],\"F\":[\"yY\",\"6^\",\"7&\",\"gG\",\"dD\",\"iI\"],\"g\":[\"fF\",\"7&\",\"8*\",\"cC\",\"hH\",\"dD\"],\"G\":[\"fF\",\"7&\",\"8*\",\"cC\",\"hH\",\"dD\"],\"c\":[\"gG\",\"8*\",\"9(\",\"rR\",\"tT\",\"hH\"],\"C\":[\"gG\",\"8*\",\"9(\",\"rR\",\"tT\",\"hH\"],\"r\":[\"cC\",\"9(\",\"0)\",\"lL\",\"nN\",\"tT\"],\"R\":[\"cC\",\"9(\",\"0)\",\"lL\",\"nN\",\"tT\"],\"l\":[\"rR\",\"0)\",\"[{\",\"/?\",\"sS\",\"nN\"],\"L\":[\"rR\",\"0)\",\"[{\",\"/?\",\"sS\",\"nN\"],\"/\":[\"lL\",\"[{\",\"]}\",\"=+\",\"-_\",\"sS\"],\"?\":[\"lL\",\"[{\",\"]}\",\"=+\",\"-_\",\"sS\"],\"=\":[\"/?\",\"]}\",null,\"\\\\|\",null,\"-_\"],\"+\":[\"/?\",\"]}\",null,\"\\\\|\",null,\"-_\"],\"\\\\\":[\"=+\",null,null,null,null,null],\"|\":[\"=+\",null,null,null,null,null],\"a\":[null,\"'\\\"\",\",<\",\"oO\",\";:\",null],\"A\":[null,\"'\\\"\",\",<\",\"oO\",\";:\",null],\"o\":[\"aA\",\",<\",\".>\",\"eE\",\"qQ\",\";:\"],\"O\":[\"aA\",\",<\",\".>\",\"eE\",\"qQ\",\";:\"],\"e\":[\"oO\",\".>\",\"pP\",\"uU\",\"jJ\",\"qQ\"],\"E\":[\"oO\",\".>\",\"pP\",\"uU\",\"jJ\",\"qQ\"],\"u\":[\"eE\",\"pP\",\"yY\",\"iI\",\"kK\",\"jJ\"],\"U\":[\"eE\",\"pP\",\"yY\",\"iI\",\"kK\",\"jJ\"],\"i\":[\"uU\",\"yY\",\"fF\",\"dD\",\"xX\",\"kK\"],\"I\":[\"uU\",\"yY\",\"fF\",\"dD\",\"xX\",\"kK\"],\"d\":[\"iI\",\"fF\",\"gG\",\"hH\",\"bB\",\"xX\"],\"D\":[\"iI\",\"fF\",\"gG\",\"hH\",\"bB\",\"xX\"],\"h\":[\"dD\",\"gG\",\"cC\",\"tT\",\"mM\",\"bB\"],\"H\":[\"dD\",\"gG\",\"cC\",\"tT\",\"mM\",\"bB\"],\"t\":[\"hH\",\"cC\",\"rR\",\"nN\",\"wW\",\"mM\"],\"T\":[\"hH\",\"cC\",\"rR\",\"nN\",\"wW\",\"mM\"],\"n\":[\"tT\",\"rR\",\"lL\",\"sS\",\"vV\",\"wW\"],\"N\":[\"tT\",\"rR\",\"lL\",\"sS\",\"vV\",\"wW\"],\"s\":[\"nN\",\"lL\",\"/?\",\"-_\",\"zZ\",\"vV\"],\"S\":[\"nN\",\"lL\",\"/?\",\"-_\",\"zZ\",\"vV\"],\"-\":[\"sS\",\"/?\",\"=+\",null,null,\"zZ\"],\"_\":[\"sS\",\"/?\",\"=+\",null,null,\"zZ\"],\";\":[null,\"aA\",\"oO\",\"qQ\",null,null],\":\":[null,\"aA\",\"oO\",\"qQ\",null,null],\"q\":[\";:\",\"oO\",\"eE\",\"jJ\",null,null],\"Q\":[\";:\",\"oO\",\"eE\",\"jJ\",null,null],\"j\":[\"qQ\",\"eE\",\"uU\",\"kK\",null,null],\"J\":[\"qQ\",\"eE\",\"uU\",\"kK\",null,null],\"k\":[\"jJ\",\"uU\",\"iI\",\"xX\",null,null],\"K\":[\"jJ\",\"uU\",\"iI\",\"xX\",null,null],\"x\":[\"kK\",\"iI\",\"dD\",\"bB\",null,null],\"X\":[\"kK\",\"iI\",\"dD\",\"bB\",null,null],\"b\":[\"xX\",\"dD\",\"hH\",\"mM\",null,null],\"B\":[\"xX\",\"dD\",\"hH\",\"mM\",null,null],\"m\":[\"bB\",\"hH\",\"tT\",\"wW\",null,null],\"M\":[\"bB\",\"hH\",\"tT\",\"wW\",null,null],\"w\":[\"mM\",\"tT\",\"nN\",\"vV\",null,null],\"W\":[\"mM\",\"tT\",\"nN\",\"vV\",null,null],\"v\":[\"wW\",\"nN\",\"sS\",\"zZ\",null,null],\"V\":[\"wW\",\"nN\",\"sS\",\"zZ\",null,null],\"z\":[\"vV\",\"sS\",\"-_\",null,null,null],\"Z\":[\"vV\",\"sS\",\"-_\",null,null,null]},\"keypad\":{\"0\":[null,\"1\",\"2\",\"3\",\".\",null,null,null],\"1\":[null,null,\"4\",\"5\",\"2\",\"0\",null,null],\"2\":[\"1\",\"4\",\"5\",\"6\",\"3\",\".\",\"0\",null],\"3\":[\"2\",\"5\",\"6\",null,null,null,\".\",\"0\"],\"4\":[null,null,\"7\",\"8\",\"5\",\"2\",\"1\",null],\"5\":[\"4\",\"7\",\"8\",\"9\",\"6\",\"3\",\"2\",\"1\"],\"6\":[\"5\",\"8\",\"9\",\"+\",null,null,\"3\",\"2\"],\"7\":[null,null,null,\"/\",\"8\",\"5\",\"4\",null],\"8\":[\"7\",null,\"/\",\"*\",\"9\",\"6\",\"5\",\"4\"],\"9\":[\"8\",\"/\",\"*\",\"-\",\"+\",null,\"6\",\"5\"],\"/\":[null,null,null,null,\"*\",\"9\",\"8\",\"7\"],\"*\":[\"/\",null,null,null,\"-\",\"+\",\"9\",\"8\"],\"-\":[\"*\",null,null,null,null,null,\"+\",\"9\"],\"+\":[\"9\",\"*\",\"-\",null,null,null,null,\"6\"],\".\":[\"0\",\"2\",\"3\",null,null,null,null,null]},\"keypadMac\":{\"0\":[null,\"1\",\"2\",\"3\",\".\",null,null,null],\"1\":[null,null,\"4\",\"5\",\"2\",\"0\",null,null],\"2\":[\"1\",\"4\",\"5\",\"6\",\"3\",\".\",\"0\",null],\"3\":[\"2\",\"5\",\"6\",\"+\",null,null,\".\",\"0\"],\"4\":[null,null,\"7\",\"8\",\"5\",\"2\",\"1\",null],\"5\":[\"4\",\"7\",\"8\",\"9\",\"6\",\"3\",\"2\",\"1\"],\"6\":[\"5\",\"8\",\"9\",\"-\",\"+\",null,\"3\",\"2\"],\"7\":[null,null,null,\"=\",\"8\",\"5\",\"4\",null],\"8\":[\"7\",null,\"=\",\"/\",\"9\",\"6\",\"5\",\"4\"],\"9\":[\"8\",\"=\",\"/\",\"*\",\"-\",\"+\",\"6\",\"5\"],\"=\":[null,null,null,null,\"/\",\"9\",\"8\",\"7\"],\"/\":[\"=\",null,null,null,\"*\",\"-\",\"9\",\"8\"],\"*\":[\"/\",null,null,null,null,null,\"-\",\"9\"],\"-\":[\"9\",\"/\",\"*\",null,null,null,\"+\",\"6\"],\"+\":[\"6\",\"9\",\"-\",null,null,null,null,\"3\"],\".\":[\"0\",\"2\",\"3\",null,null,null,null,null]},\"qwerty\":{\"0\":[\"9(\",null,null,\"-_\",\"pP\",\"oO\"],\"1\":[\"`~\",null,null,\"2@\",\"qQ\",null],\"2\":[\"1!\",null,null,\"3#\",\"wW\",\"qQ\"],\"3\":[\"2@\",null,null,\"4$\",\"eE\",\"wW\"],\"4\":[\"3#\",null,null,\"5%\",\"rR\",\"eE\"],\"5\":[\"4$\",null,null,\"6^\",\"tT\",\"rR\"],\"6\":[\"5%\",null,null,\"7&\",\"yY\",\"tT\"],\"7\":[\"6^\",null,null,\"8*\",\"uU\",\"yY\"],\"8\":[\"7&\",null,null,\"9(\",\"iI\",\"uU\"],\"9\":[\"8*\",null,null,\"0)\",\"oO\",\"iI\"],\"`\":[null,null,null,\"1!\",null,null],\"~\":[null,null,null,\"1!\",null,null],\"!\":[\"`~\",null,null,\"2@\",\"qQ\",null],\"@\":[\"1!\",null,null,\"3#\",\"wW\",\"qQ\"],\"#\":[\"2@\",null,null,\"4$\",\"eE\",\"wW\"],\"$\":[\"3#\",null,null,\"5%\",\"rR\",\"eE\"],\"%\":[\"4$\",null,null,\"6^\",\"tT\",\"rR\"],\"^\":[\"5%\",null,null,\"7&\",\"yY\",\"tT\"],\"&\":[\"6^\",null,null,\"8*\",\"uU\",\"yY\"],\"*\":[\"7&\",null,null,\"9(\",\"iI\",\"uU\"],\"(\":[\"8*\",null,null,\"0)\",\"oO\",\"iI\"],\")\":[\"9(\",null,null,\"-_\",\"pP\",\"oO\"],\"-\":[\"0)\",null,null,\"=+\",\"[{\",\"pP\"],\"_\":[\"0)\",null,null,\"=+\",\"[{\",\"pP\"],\"=\":[\"-_\",null,null,null,\"]}\",\"[{\"],\"+\":[\"-_\",null,null,null,\"]}\",\"[{\"],\"q\":[null,\"1!\",\"2@\",\"wW\",\"aA\",null],\"Q\":[null,\"1!\",\"2@\",\"wW\",\"aA\",null],\"w\":[\"qQ\",\"2@\",\"3#\",\"eE\",\"sS\",\"aA\"],\"W\":[\"qQ\",\"2@\",\"3#\",\"eE\",\"sS\",\"aA\"],\"e\":[\"wW\",\"3#\",\"4$\",\"rR\",\"dD\",\"sS\"],\"E\":[\"wW\",\"3#\",\"4$\",\"rR\",\"dD\",\"sS\"],\"r\":[\"eE\",\"4$\",\"5%\",\"tT\",\"fF\",\"dD\"],\"R\":[\"eE\",\"4$\",\"5%\",\"tT\",\"fF\",\"dD\"],\"t\":[\"rR\",\"5%\",\"6^\",\"yY\",\"gG\",\"fF\"],\"T\":[\"rR\",\"5%\",\"6^\",\"yY\",\"gG\",\"fF\"],\"y\":[\"tT\",\"6^\",\"7&\",\"uU\",\"hH\",\"gG\"],\"Y\":[\"tT\",\"6^\",\"7&\",\"uU\",\"hH\",\"gG\"],\"u\":[\"yY\",\"7&\",\"8*\",\"iI\",\"jJ\",\"hH\"],\"U\":[\"yY\",\"7&\",\"8*\",\"iI\",\"jJ\",\"hH\"],\"i\":[\"uU\",\"8*\",\"9(\",\"oO\",\"kK\",\"jJ\"],\"I\":[\"uU\",\"8*\",\"9(\",\"oO\",\"kK\",\"jJ\"],\"o\":[\"iI\",\"9(\",\"0)\",\"pP\",\"lL\",\"kK\"],\"O\":[\"iI\",\"9(\",\"0)\",\"pP\",\"lL\",\"kK\"],\"p\":[\"oO\",\"0)\",\"-_\",\"[{\",\";:\",\"lL\"],\"P\":[\"oO\",\"0)\",\"-_\",\"[{\",\";:\",\"lL\"],\"[\":[\"pP\",\"-_\",\"=+\",\"]}\",\"'\\\"\",\";:\"],\"{\":[\"pP\",\"-_\",\"=+\",\"]}\",\"'\\\"\",\";:\"],\"]\":[\"[{\",\"=+\",null,\"\\\\|\",null,\"'\\\"\"],\"}\":[\"[{\",\"=+\",null,\"\\\\|\",null,\"'\\\"\"],\"\\\\\":[\"]}\",null,null,null,null,null],\"|\":[\"]}\",null,null,null,null,null],\"a\":[null,\"qQ\",\"wW\",\"sS\",\"zZ\",null],\"A\":[null,\"qQ\",\"wW\",\"sS\",\"zZ\",null],\"s\":[\"aA\",\"wW\",\"eE\",\"dD\",\"xX\",\"zZ\"],\"S\":[\"aA\",\"wW\",\"eE\",\"dD\",\"xX\",\"zZ\"],\"d\":[\"sS\",\"eE\",\"rR\",\"fF\",\"cC\",\"xX\"],\"D\":[\"sS\",\"eE\",\"rR\",\"fF\",\"cC\",\"xX\"],\"f\":[\"dD\",\"rR\",\"tT\",\"gG\",\"vV\",\"cC\"],\"F\":[\"dD\",\"rR\",\"tT\",\"gG\",\"vV\",\"cC\"],\"g\":[\"fF\",\"tT\",\"yY\",\"hH\",\"bB\",\"vV\"],\"G\":[\"fF\",\"tT\",\"yY\",\"hH\",\"bB\",\"vV\"],\"h\":[\"gG\",\"yY\",\"uU\",\"jJ\",\"nN\",\"bB\"],\"H\":[\"gG\",\"yY\",\"uU\",\"jJ\",\"nN\",\"bB\"],\"j\":[\"hH\",\"uU\",\"iI\",\"kK\",\"mM\",\"nN\"],\"J\":[\"hH\",\"uU\",\"iI\",\"kK\",\"mM\",\"nN\"],\"k\":[\"jJ\",\"iI\",\"oO\",\"lL\",\",<\",\"mM\"],\"K\":[\"jJ\",\"iI\",\"oO\",\"lL\",\",<\",\"mM\"],\"l\":[\"kK\",\"oO\",\"pP\",\";:\",\".>\",\",<\"],\"L\":[\"kK\",\"oO\",\"pP\",\";:\",\".>\",\",<\"],\";\":[\"lL\",\"pP\",\"[{\",\"'\\\"\",\"/?\",\".>\"],\":\":[\"lL\",\"pP\",\"[{\",\"'\\\"\",\"/?\",\".>\"],\"'\":[\";:\",\"[{\",\"]}\",null,null,\"/?\"],\"\\\"\":[\";:\",\"[{\",\"]}\",null,null,\"/?\"],\"z\":[null,\"aA\",\"sS\",\"xX\",null,null],\"Z\":[null,\"aA\",\"sS\",\"xX\",null,null],\"x\":[\"zZ\",\"sS\",\"dD\",\"cC\",null,null],\"X\":[\"zZ\",\"sS\",\"dD\",\"cC\",null,null],\"c\":[\"xX\",\"dD\",\"fF\",\"vV\",null,null],\"C\":[\"xX\",\"dD\",\"fF\",\"vV\",null,null],\"v\":[\"cC\",\"fF\",\"gG\",\"bB\",null,null],\"V\":[\"cC\",\"fF\",\"gG\",\"bB\",null,null],\"b\":[\"vV\",\"gG\",\"hH\",\"nN\",null,null],\"B\":[\"vV\",\"gG\",\"hH\",\"nN\",null,null],\"n\":[\"bB\",\"hH\",\"jJ\",\"mM\",null,null],\"N\":[\"bB\",\"hH\",\"jJ\",\"mM\",null,null],\"m\":[\"nN\",\"jJ\",\"kK\",\",<\",null,null],\"M\":[\"nN\",\"jJ\",\"kK\",\",<\",null,null],\",\":[\"mM\",\"kK\",\"lL\",\".>\",null,null],\"<\":[\"mM\",\"kK\",\"lL\",\".>\",null,null],\".\":[\",<\",\"lL\",\";:\",\"/?\",null,null],\">\":[\",<\",\"lL\",\";:\",\"/?\",null,null],\"/\":[\".>\",\";:\",\"'\\\"\",null,null,null],\"?\":[\".>\",\";:\",\"'\\\"\",null,null,null]},\"qwertz\":{\"0\":[\"9)\",null,null,\"ß?\",\"pP\",\"oO\"],\"1\":[\"^°\",null,null,\"2\\\"\",\"qQ\",null],\"2\":[\"1!\",null,null,\"3§\",\"wW\",\"qQ\"],\"3\":[\"2\\\"\",null,null,\"4$\",\"eE\",\"wW\"],\"4\":[\"3§\",null,null,\"5%\",\"rR\",\"eE\"],\"5\":[\"4$\",null,null,\"6&\",\"tT\",\"rR\"],\"6\":[\"5%\",null,null,\"7/\",\"zZ\",\"tT\"],\"7\":[\"6&\",null,null,\"8(\",\"uU\",\"zZ\"],\"8\":[\"7/\",null,null,\"9)\",\"iI\",\"uU\"],\"9\":[\"8(\",null,null,\"0=\",\"oO\",\"iI\"],\"^\":[null,null,null,\"1!\",null,null],\"°\":[null,null,null,\"1!\",null,null],\"!\":[\"^°\",null,null,\"2\\\"\",\"qQ\",null],\"\\\"\":[\"1!\",null,null,\"3§\",\"wW\",\"qQ\"],\"§\":[\"2\\\"\",null,null,\"4$\",\"eE\",\"wW\"],\"$\":[\"3§\",null,null,\"5%\",\"rR\",\"eE\"],\"%\":[\"4$\",null,null,\"6&\",\"tT\",\"rR\"],\"&\":[\"5%\",null,null,\"7/\",\"zZ\",\"tT\"],\"/\":[\"6&\",null,null,\"8(\",\"uU\",\"zZ\"],\"(\":[\"7/\",null,null,\"9)\",\"iI\",\"uU\"],\")\":[\"8(\",null,null,\"0=\",\"oO\",\"iI\"],\"=\":[\"9)\",null,null,\"ß?\",\"pP\",\"oO\"],\"ß\":[\"0=\",null,null,\"´`\",\"üÜ\",\"pP\"],\"?\":[\"0=\",null,null,\"´`\",\"üÜ\",\"pP\"],\"´\":[\"ß?\",null,null,null,\"+*\",\"üÜ\"],\"`\":[\"ß?\",null,null,null,\"+*\",\"üÜ\"],\"q\":[null,\"1!\",\"2\\\"\",\"wW\",\"aA\",null],\"Q\":[null,\"1!\",\"2\\\"\",\"wW\",\"aA\",null],\"w\":[\"qQ\",\"2\\\"\",\"3§\",\"eE\",\"sS\",\"aA\"],\"W\":[\"qQ\",\"2\\\"\",\"3§\",\"eE\",\"sS\",\"aA\"],\"e\":[\"wW\",\"3§\",\"4$\",\"rR\",\"dD\",\"sS\"],\"E\":[\"wW\",\"3§\",\"4$\",\"rR\",\"dD\",\"sS\"],\"r\":[\"eE\",\"4$\",\"5%\",\"tT\",\"fF\",\"dD\"],\"R\":[\"eE\",\"4$\",\"5%\",\"tT\",\"fF\",\"dD\"],\"t\":[\"rR\",\"5%\",\"6&\",\"zZ\",\"gG\",\"fF\"],\"T\":[\"rR\",\"5%\",\"6&\",\"zZ\",\"gG\",\"fF\"],\"z\":[\"tT\",\"6&\",\"7/\",\"uU\",\"hH\",\"gG\"],\"Z\":[\"tT\",\"6&\",\"7/\",\"uU\",\"hH\",\"gG\"],\"u\":[\"zZ\",\"7/\",\"8(\",\"iI\",\"jJ\",\"hH\"],\"U\":[\"zZ\",\"7/\",\"8(\",\"iI\",\"jJ\",\"hH\"],\"i\":[\"uU\",\"8(\",\"9)\",\"oO\",\"kK\",\"jJ\"],\"I\":[\"uU\",\"8(\",\"9)\",\"oO\",\"kK\",\"jJ\"],\"o\":[\"iI\",\"9)\",\"0=\",\"pP\",\"lL\",\"kK\"],\"O\":[\"iI\",\"9)\",\"0=\",\"pP\",\"lL\",\"kK\"],\"p\":[\"oO\",\"0=\",\"ß?\",\"üÜ\",\"öÖ\",\"lL\"],\"P\":[\"oO\",\"0=\",\"ß?\",\"üÜ\",\"öÖ\",\"lL\"],\"ü\":[\"pP\",\"ß?\",\"´`\",\"+*\",\"äÄ\",\"öÖ\"],\"Ü\":[\"pP\",\"ß?\",\"´`\",\"+*\",\"äÄ\",\"öÖ\"],\"+\":[\"üÜ\",\"´`\",null,null,\"#'\",\"äÄ\"],\"*\":[\"üÜ\",\"´`\",null,null,\"#'\",\"äÄ\"],\"a\":[null,\"qQ\",\"wW\",\"sS\",\"yY\",\"<>\"],\"A\":[null,\"qQ\",\"wW\",\"sS\",\"yY\",\"<>\"],\"s\":[\"aA\",\"wW\",\"eE\",\"dD\",\"xX\",\"yY\"],\"S\":[\"aA\",\"wW\",\"eE\",\"dD\",\"xX\",\"yY\"],\"d\":[\"sS\",\"eE\",\"rR\",\"fF\",\"cC\",\"xX\"],\"D\":[\"sS\",\"eE\",\"rR\",\"fF\",\"cC\",\"xX\"],\"f\":[\"dD\",\"rR\",\"tT\",\"gG\",\"vV\",\"cC\"],\"F\":[\"dD\",\"rR\",\"tT\",\"gG\",\"vV\",\"cC\"],\"g\":[\"fF\",\"tT\",\"zZ\",\"hH\",\"bB\",\"vV\"],\"G\":[\"fF\",\"tT\",\"zZ\",\"hH\",\"bB\",\"vV\"],\"h\":[\"gG\",\"zZ\",\"uU\",\"jJ\",\"nN\",\"bB\"],\"H\":[\"gG\",\"zZ\",\"uU\",\"jJ\",\"nN\",\"bB\"],\"j\":[\"hH\",\"uU\",\"iI\",\"kK\",\"mM\",\"nN\"],\"J\":[\"hH\",\"uU\",\"iI\",\"kK\",\"mM\",\"nN\"],\"k\":[\"jJ\",\"iI\",\"oO\",\"lL\",\",;\",\"mM\"],\"K\":[\"jJ\",\"iI\",\"oO\",\"lL\",\",;\",\"mM\"],\"l\":[\"kK\",\"oO\",\"pP\",\"öÖ\",\".:\",\",;\"],\"L\":[\"kK\",\"oO\",\"pP\",\"öÖ\",\".:\",\",;\"],\"ö\":[\"lL\",\"pP\",\"üÜ\",\"äÄ\",\"-_\",\".:\"],\"Ö\":[\"lL\",\"pP\",\"üÜ\",\"äÄ\",\"-_\",\".:\"],\"ä\":[\"öÖ\",\"üÜ\",\"+*\",\"#'\",null,\"-_\"],\"Ä\":[\"öÖ\",\"üÜ\",\"+*\",\"#'\",null,\"-_\"],\"#\":[\"äÄ\",\"+*\",null,null,null,null],\"'\":[\"äÄ\",\"+*\",null,null,null,null],\"<\":[null,null,\"aA\",\"yY\",null,null],\">\":[null,null,\"aA\",\"yY\",null,null],\"y\":[\"<>\",\"aA\",\"sS\",\"xX\",null,null],\"Y\":[\"<>\",\"aA\",\"sS\",\"xX\",null,null],\"x\":[\"yY\",\"sS\",\"dD\",\"cC\",null,null],\"X\":[\"yY\",\"sS\",\"dD\",\"cC\",null,null],\"c\":[\"xX\",\"dD\",\"fF\",\"vV\",null,null],\"C\":[\"xX\",\"dD\",\"fF\",\"vV\",null,null],\"v\":[\"cC\",\"fF\",\"gG\",\"bB\",null,null],\"V\":[\"cC\",\"fF\",\"gG\",\"bB\",null,null],\"b\":[\"vV\",\"gG\",\"hH\",\"nN\",null,null],\"B\":[\"vV\",\"gG\",\"hH\",\"nN\",null,null],\"n\":[\"bB\",\"hH\",\"jJ\",\"mM\",null,null],\"N\":[\"bB\",\"hH\",\"jJ\",\"mM\",null,null],\"m\":[\"nN\",\"jJ\",\"kK\",\",;\",null,null],\"M\":[\"nN\",\"jJ\",\"kK\",\",;\",null,null],\",\":[\"mM\",\"kK\",\"lL\",\".:\",null,null],\";\":[\"mM\",\"kK\",\"lL\",\".:\",null,null],\".\":[\",;\",\"lL\",\"öÖ\",\"-_\",null,null],\":\":[\",;\",\"lL\",\"öÖ\",\"-_\",null,null],\"-\":[\".:\",\"öÖ\",\"äÄ\",null,null,null],\"_\":[\".:\",\"öÖ\",\"äÄ\",null,null,null]}};\n\nexport { tempAdjacencyGraphs as default };\n//# sourceMappingURL=adjacencyGraphs.json.esm.js.map\n","import tempAdjacencyGraphs from './adjacencyGraphs.json.esm.js';\nimport diceware from './diceware.json.esm.js';\nimport passwords from './passwords.json.esm.js';\n\nconst dictionary = {\n diceware,\n passwords\n};\n// reinit the variable because the typescript compile will otherwise just reexport the json file which will break as it's a json file\nconst adjacencyGraphs = tempAdjacencyGraphs;\n\nexport { adjacencyGraphs, dictionary };\n//# sourceMappingURL=index.esm.js.map\n","// Copyright 2024, 2025 New Vector Ltd.\n// Copyright 2024 The Matrix.org Foundation C.I.C.\n//\n// SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial\n// Please see LICENSE files in the repository root for full details.\n\nimport { zxcvbnAsync, zxcvbnOptions } from \"@zxcvbn-ts/core\";\nimport * as zxcvbnCommonPackage from \"@zxcvbn-ts/language-common\";\nimport type { TFunction } from \"i18next\";\n\nimport wikipedia from \"./enwiki.json\";\nimport namesf from \"./namesf.json\";\nimport namesm from \"./namesm.json\";\nimport namess from \"./namess.json\";\nimport passwords from \"./passwords.json\";\nimport ustvfilm from \"./ustvfilm.json\";\n\n// These are the dictionaries from zxcvbn-rs, but repackaged\nconst dictionary = {\n wikipedia,\n passwords,\n namesm,\n namesf,\n namess,\n ustvfilm,\n};\n\n// This is the l33tspeak table from zxcvbn-rs, but repackaged\nconst l33tTable = {\n a: [\"4\", \"@\"],\n b: [\"8\"],\n c: [\"(\", \"{\", \"[\", \"<\"],\n e: [\"3\"],\n g: [\"6\", \"9\"],\n i: [\"1\", \"!\", \"|\"],\n l: [\"1\", \"|\", \"7\"],\n o: [\"0\"],\n s: [\"$\", \"5\"],\n t: [\"+\", \"7\"],\n x: [\"%\"],\n z: [\"2\"],\n};\n\n// These are the same keyboard adjacency graphs as from zxcvbn-rs.\n// I haven't checked both libraries thoroughly for accuracy\nconst { qwerty, dvorak, keypad, keypadMac } =\n zxcvbnCommonPackage.adjacencyGraphs;\n\n// These are the options for zxcvbn-ts to make it behave as close to zxcvbn-rs\n// as I can manage. In practice there is still a small divergence.\nconst options = {\n graphs: { qwerty, dvorak, keypad, keypadMac },\n dictionary,\n l33tTable,\n};\n\nzxcvbnOptions.setOptions(options);\n\nexport interface PasswordComplexity {\n /** Score between 0 and 4 */\n score: number;\n\n /** Localised score text */\n scoreText: string;\n\n /** Localised suggestions for improvement */\n improvementsText: string[];\n}\n\n/** Estimates the complexity of a password. */\nexport async function estimatePasswordComplexity(\n password: string,\n t: TFunction,\n): Promise {\n const scorerResult = await zxcvbnAsync(password);\n\n const improvementsText = [];\n if (scorerResult.feedback.warning !== null) {\n const translated = translateWarning(scorerResult.feedback.warning, t);\n if (translated) {\n improvementsText.push(translated);\n }\n }\n for (const suggestion of scorerResult.feedback.suggestions) {\n const translated = translateSuggestion(suggestion, t);\n if (translated) {\n improvementsText.push(translated);\n }\n }\n\n return {\n score: scorerResult.score,\n scoreText: translateScore(scorerResult.score, t),\n improvementsText,\n };\n}\n\n/** Returns a translated string corresponding to the 0 to 4 score. */\nfunction translateScore(score: 0 | 1 | 2 | 3 | 4, t: TFunction): string {\n switch (score) {\n case 0:\n return t(\"frontend.password_strength.score.0\");\n case 1:\n return t(\"frontend.password_strength.score.1\");\n case 2:\n return t(\"frontend.password_strength.score.2\");\n case 3:\n return t(\"frontend.password_strength.score.3\");\n case 4:\n return t(\"frontend.password_strength.score.4\");\n }\n}\n\n/** Returns a translated string corresponding to a password improvement suggestion from zxcvbn-ts. */\nfunction translateSuggestion(\n suggestionCode: string,\n t: TFunction,\n): string | undefined {\n switch (suggestionCode) {\n case \"allUppercase\":\n return t(\"frontend.password_strength.suggestion.all_uppercase\");\n case \"anotherWord\":\n return t(\"frontend.password_strength.suggestion.another_word\");\n case \"associatedYears\":\n return t(\"frontend.password_strength.suggestion.associated_years\");\n case \"capitalization\":\n return t(\"frontend.password_strength.suggestion.capitalization\");\n case \"dates\":\n return t(\"frontend.password_strength.suggestion.dates\");\n case \"l33t\":\n return t(\"frontend.password_strength.suggestion.l33t\");\n case \"longerKeyboardPattern\":\n return t(\"frontend.password_strength.suggestion.longer_keyboard_pattern\");\n case \"noNeed\":\n return t(\"frontend.password_strength.suggestion.no_need\");\n case \"pwned\":\n return t(\"frontend.password_strength.suggestion.pwned\");\n case \"recentYears\":\n return t(\"frontend.password_strength.suggestion.recent_years\");\n case \"repeated\":\n return t(\"frontend.password_strength.suggestion.repeated\");\n case \"reverseWords\":\n return t(\"frontend.password_strength.suggestion.reverse_words\");\n case \"sequences\":\n return t(\"frontend.password_strength.suggestion.sequences\");\n case \"useWords\":\n return t(\"frontend.password_strength.suggestion.use_words\");\n }\n}\n\n/** Returns a translated string corresponding to a weak password warning from zxcvbn-ts. */\nfunction translateWarning(\n warningCode: string,\n t: TFunction,\n): string | undefined {\n switch (warningCode) {\n case \"commonNames\":\n return t(\"frontend.password_strength.warning.common_names\");\n case \"common\":\n return t(\"frontend.password_strength.warning.common\");\n case \"dates\":\n return t(\"frontend.password_strength.warning.dates\");\n case \"extendedRepeat\":\n return t(\"frontend.password_strength.warning.extended_repeat\");\n case \"keyPattern\":\n return t(\"frontend.password_strength.warning.key_pattern\");\n case \"namesByThemselves\":\n return t(\"frontend.password_strength.warning.names_by_themselves\");\n case \"pwned\":\n return t(\"frontend.password_strength.warning.pwned\");\n case \"recentYears\":\n return t(\"frontend.password_strength.warning.recent_years\");\n case \"sequences\":\n return t(\"frontend.password_strength.warning.sequences\");\n case \"similarToCommon\":\n return t(\"frontend.password_strength.warning.similar_to_common\");\n case \"simpleRepeat\":\n return t(\"frontend.password_strength.warning.simple_repeat\");\n case \"straightRow\":\n return t(\"frontend.password_strength.warning.straight_row\");\n case \"topHundred\":\n return t(\"frontend.password_strength.warning.top_hundred\");\n case \"topTen\":\n return t(\"frontend.password_strength.warning.top_ten\");\n case \"userInputs\":\n return t(\"frontend.password_strength.warning.user_inputs\");\n case \"wordByItself\":\n return t(\"frontend.password_strength.warning.word_by_itself\");\n }\n}\n"],"names":["extend","listToExtend","list","sorted","matches","m1","m2","buildRankedDictionary","orderedList","result","counter","word","dateSplits","DATE_MAX_YEAR","DATE_MIN_YEAR","DATE_SPLITS","BRUTEFORCE_CARDINALITY","MIN_GUESSES_BEFORE_GROWING_SEQUENCE","MIN_SUBMATCH_GUESSES_SINGLE_CHAR","MIN_SUBMATCH_GUESSES_MULTI_CHAR","MIN_YEAR_SPACE","START_UPPER","END_UPPER","ALL_UPPER","ALL_UPPER_INVERTED","ALL_LOWER","ALL_LOWER_INVERTED","ONE_LOWER","ONE_UPPER","ALPHA_INVERTED","ALL_DIGIT","REFERENCE_YEAR","REGEXEN","SEPERATOR_CHARS","SEPERATOR_CHAR_COUNT","MatchDate","password","filteredMatches","maybeDateWithSeparator","i","j","token","regexMatch","dmy","maybeDateNoSeparator","metric","candidate","candidates","index","k","l","bestCandidate","minDistance","distance","match","isSubmatch","matchesLength","o","otherMatch","integers","over12","over31","under1","len1","int","possibleYearSplits","possibleYearSplitsLength","y","rest","dm","temp","data","day","month","year","peq","myers_32","a","b","n","m","lst","pv","mv","sc","eq","xv","myers_x","mhc","phc","hsize","vsize","start","vlen","pb","mb","xh","ph","mh","score","tmp","getUsedThreshold","entry","threshold","isPasswordToShort","isThresholdLongerThanPassword","findLevenshteinDistance","rankedDictionary","foundDistance","found","usedThreshold","foundEntryDistance","isInThreshold","l33tTable","translationKeys","TrieNode","parents","key","subs","firstChar","cur","c","child","l33tTableToTrieNode","triNode","letter","substitutions","substitution","Options","options","translations","valid","type","translationType","rankedDictionaries","rankedDictionariesMaxWorkSize","name","el","sanitizedInputs","input","inputType","dictionary","newList","matcher","zxcvbnOptions","MatchReverse","defaultMatch","passwordReversed","CleanPasswords","substr","limit","trieRoot","nodes","character","onlyFullSub","isFullSub","subIndex","changes","lastSubLetter","consecutiveSubCount","hasSubs","sub","newSubs","getCleanPasswords","getExtras","passwordWithSubs","iUnsubbed","value","change","usedChanges","jUnsubbed","filtered","subDisplay","t","MatchL33t","newMatch","l33tMatch","subbedPasswords","hasFullMatch","isFullSubstitution","subbedPassword","matchedDictionary","extras","alreadyIncluded","MatchDictionary","useLevenshtein","passwordLength","passwordLower","dictionaryName","rankedDict","longestDictionaryWordSize","searchWidth","searchEnd","usedPassword","isInDictionary","foundLevenshteinDistance","isFullPassword","isLevenshteinMatch","usedRankPassword","rank","MatchRegex","regexes","regex","utils","count","coEff","num","rval","bruteforceMatcher","guesses","minGuesses","dateMatcher","separator","getVariations","cleanedWord","wordArray","upperCaseCount","char","lowerCaseCount","variations","variationLength","uppercaseVariant","commonCases","commonCasesLength","countSubstring","string","substring","pos","getCounts","tokenLower","subbedCount","unsubbedCount","l33tVariant","l33t","p","possibilities","dictionaryMatcher","reversed","baseGuesses","uppercaseVariations","l33tVariations","reversedVariations","calculation","regexMatcher","regexName","charClassBases","repeatMatcher","repeatCount","sequenceMatcher","ascending","firstChr","calcAverageDegree","graph","average","neighbors","estimatePossiblePatterns","turns","startingPosition","averageDegree","tokenLength","possibleTurns","spatialMatcher","shiftedCount","unShiftedCount","shiftedVariations","separatorMatcher","getMinGuesses","matchers","getScoring","estimateGuesses","extraData","estimationResult","matchGuesses","scoringHelper","size","valueType","sequenceLength","estimatedMatch","pi","g","shouldSkip","competingPatternLength","competingMetricMatch","passwordCharIndex","optimalMatchSequence","candidateSequenceLength","candidateMetricMatch","scoring","excludeAdditive","matchesByCoordinateJ","optimalSequenceLength","MatchRepeat","omniMatch","lastIndex","greedyMatch","lazyMatch","baseToken","baseMatch","resolvedBaseGuesses","greedy","lazy","lazyAnchored","resolvedMatches","MatchSequence","lastDelta","delta","absoluteDelta","sequenceName","sequenceSpace","MatchSpatial","graphName","lastDirection","prevChar","adjacents","foundDirection","curDirection","curChar","adjacentsLength","adjacent","adjacentIndex","separatorRegex","MatchSeparator","mostUsedSeperators","memo","_a","_b","mostUsedSpecial","isSeparator","Matching","promises","Matcher","response","resolve","reject","error","SECOND","MINUTE","HOUR","DAY","MONTH","YEAR","CENTURY","times","TimeEstimates","displayStr","timeEstimation","crackTimesSeconds","crackTimesDisplay","scenario","seconds","base","timeKeys","foundIndex","time","getDictionaryWarningPassword","isSoleMatch","warning","getDictionaryWarningWikipedia","getDictionaryWarningNames","getDictionaryWarning","dictName","isAName","suggestions","defaultFeedback","Feedback","sequence","extraFeedback","longestMatch","feedback","createReturnValue","timeEstimates","matchSequence","calcTime","attackTimes","main","userInputs","zxcvbnAsync","tempAdjacencyGraphs","adjacencyGraphs","wikipedia","passwords","namesm","namesf","namess","ustvfilm","qwerty","dvorak","keypad","keypadMac","zxcvbnCommonPackage.adjacencyGraphs","estimatePasswordComplexity","scorerResult","improvementsText","translated","translateWarning","suggestion","translateSuggestion","translateScore","suggestionCode","warningCode"],"mappings":"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AAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAM,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAK,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAM,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAK,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAK,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAM,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAM,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,MAAM,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,MAAM,KAAK,IAAI,EAAE,KAAK,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAM,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAM,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,CAAC,EAAE,OAAS,CAAC,EAAI,CAAC,KAAK,IAAI,IAAI,IAAI,IAAI,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,EAAE,EAAI,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE,EAAI,CAAC,IAAI,IAAI,IAAI,KAAK,KAAK,KAAK,IAAI,GAAG,EAAE,EAAI,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE,EAAI,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,GAAG,EAAE,EAAI,CAAC,IAAI,IAAI,IAAI,IAAI,KAAK,KAAK,IAAI,GAAG,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE,EAAI,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,GAAG,EAAE,EAAI,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,GAAG,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,IAAI,IAAI,IAAI,GAAG,EAAE,IAAI,CAAC,IAAI,KAAK,KAAK,KAAK,IAAI,IAAI,IAAI,GAAG,EAAE,IAAI,CAAC,IAAI,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,KAAK,KAAK,KAAK,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,KAAK,KAAK,KAAK,IAAI,CAAC,EAAE,UAAY,CAAC,EAAI,CAAC,KAAK,IAAI,IAAI,IAAI,IAAI,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,EAAE,EAAI,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE,EAAI,CAAC,IAAI,IAAI,IAAI,IAAI,KAAK,KAAK,IAAI,GAAG,EAAE,EAAI,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE,EAAI,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,GAAG,EAAE,EAAI,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,GAAG,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE,EAAI,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,GAAG,EAAE,EAAI,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,GAAG,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,IAAI,IAAI,IAAI,GAAG,EAAE,IAAI,CAAC,IAAI,KAAK,KAAK,KAAK,IAAI,IAAI,IAAI,GAAG,EAAE,IAAI,CAAC,IAAI,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,KAAK,KAAK,IAAI,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,KAAK,KAAK,KAAK,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,KAAK,KAAK,KAAK,IAAI,CAAC,EAAE,OAAS,CAAC,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAM,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAM,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,MAAM,KAAK,IAAK,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,MAAM,KAAK,IAAK,EAAE,KAAK,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAM,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAM,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAK,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,EAAI,CAAC,KAAK,KAAK,K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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46]} \ No newline at end of file diff --git a/mas/share/assets/index-CAYJKexB.js.zz b/mas/share/assets/index-CAYJKexB.js.zz new file mode 100644 index 0000000..8e6ba43 Binary files /dev/null and b/mas/share/assets/index-CAYJKexB.js.zz differ diff --git a/mas/share/assets/inter-cyrillic-400-normal-HOLc17fK.woff b/mas/share/assets/inter-cyrillic-400-normal-HOLc17fK.woff new file mode 100644 index 0000000..6bd8b02 Binary files /dev/null and b/mas/share/assets/inter-cyrillic-400-normal-HOLc17fK.woff differ diff --git a/mas/share/assets/inter-cyrillic-400-normal-obahsSVq.woff2 b/mas/share/assets/inter-cyrillic-400-normal-obahsSVq.woff2 new file mode 100644 index 0000000..e7583fc Binary files /dev/null and b/mas/share/assets/inter-cyrillic-400-normal-obahsSVq.woff2 differ diff --git a/mas/share/assets/inter-cyrillic-500-normal-BasfLYem.woff2 b/mas/share/assets/inter-cyrillic-500-normal-BasfLYem.woff2 new file mode 100644 index 0000000..dd14bcf Binary files /dev/null and b/mas/share/assets/inter-cyrillic-500-normal-BasfLYem.woff2 differ diff --git a/mas/share/assets/inter-cyrillic-500-normal-CxZf_p3X.woff b/mas/share/assets/inter-cyrillic-500-normal-CxZf_p3X.woff new file mode 100644 index 0000000..c8aa26e Binary files /dev/null and b/mas/share/assets/inter-cyrillic-500-normal-CxZf_p3X.woff differ diff --git a/mas/share/assets/inter-cyrillic-600-normal-4D_pXhcN.woff b/mas/share/assets/inter-cyrillic-600-normal-4D_pXhcN.woff new file mode 100644 index 0000000..10ec579 Binary files /dev/null and b/mas/share/assets/inter-cyrillic-600-normal-4D_pXhcN.woff differ diff --git a/mas/share/assets/inter-cyrillic-600-normal-CWCymEST.woff2 b/mas/share/assets/inter-cyrillic-600-normal-CWCymEST.woff2 new file mode 100644 index 0000000..e250ef0 Binary files /dev/null and b/mas/share/assets/inter-cyrillic-600-normal-CWCymEST.woff2 differ diff --git a/mas/share/assets/inter-cyrillic-700-normal-CjBOestx.woff2 b/mas/share/assets/inter-cyrillic-700-normal-CjBOestx.woff2 new file mode 100644 index 0000000..781e4b4 Binary files /dev/null and b/mas/share/assets/inter-cyrillic-700-normal-CjBOestx.woff2 differ diff --git a/mas/share/assets/inter-cyrillic-700-normal-DrXBdSj3.woff b/mas/share/assets/inter-cyrillic-700-normal-DrXBdSj3.woff new file mode 100644 index 0000000..46451f1 Binary files /dev/null and b/mas/share/assets/inter-cyrillic-700-normal-DrXBdSj3.woff differ diff --git a/mas/share/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2 b/mas/share/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2 new file mode 100644 index 0000000..4ee0d27 Binary files /dev/null and b/mas/share/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2 differ diff --git a/mas/share/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff b/mas/share/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff new file mode 100644 index 0000000..6b6dc78 Binary files /dev/null and b/mas/share/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff differ diff --git a/mas/share/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2 b/mas/share/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2 new file mode 100644 index 0000000..c21492c Binary files /dev/null and b/mas/share/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2 differ diff --git a/mas/share/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff b/mas/share/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff new file mode 100644 index 0000000..e5c7962 Binary files /dev/null and b/mas/share/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff differ diff --git a/mas/share/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff b/mas/share/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff new file mode 100644 index 0000000..7b24dd8 Binary files /dev/null and b/mas/share/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff differ diff --git a/mas/share/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2 b/mas/share/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2 new file mode 100644 index 0000000..e00289e Binary files /dev/null and b/mas/share/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2 differ diff --git a/mas/share/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2 b/mas/share/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2 new file mode 100644 index 0000000..1a5c3ce Binary files /dev/null and b/mas/share/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2 differ diff --git a/mas/share/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff b/mas/share/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff new file mode 100644 index 0000000..6fb2700 Binary files /dev/null and b/mas/share/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff differ diff --git a/mas/share/assets/inter-greek-400-normal-B4URO6DV.woff2 b/mas/share/assets/inter-greek-400-normal-B4URO6DV.woff2 new file mode 100644 index 0000000..e7103fb Binary files /dev/null and b/mas/share/assets/inter-greek-400-normal-B4URO6DV.woff2 differ diff --git a/mas/share/assets/inter-greek-400-normal-q2sYcFCs.woff b/mas/share/assets/inter-greek-400-normal-q2sYcFCs.woff new file mode 100644 index 0000000..c0c36e2 Binary files /dev/null and b/mas/share/assets/inter-greek-400-normal-q2sYcFCs.woff differ diff --git a/mas/share/assets/inter-greek-500-normal-BIZE56-Y.woff2 b/mas/share/assets/inter-greek-500-normal-BIZE56-Y.woff2 new file mode 100644 index 0000000..730be94 Binary files /dev/null and b/mas/share/assets/inter-greek-500-normal-BIZE56-Y.woff2 differ diff --git a/mas/share/assets/inter-greek-500-normal-Xzm54t5V.woff b/mas/share/assets/inter-greek-500-normal-Xzm54t5V.woff new file mode 100644 index 0000000..b4ebbd9 Binary files /dev/null and b/mas/share/assets/inter-greek-500-normal-Xzm54t5V.woff differ diff --git a/mas/share/assets/inter-greek-600-normal-BZpKdvQh.woff b/mas/share/assets/inter-greek-600-normal-BZpKdvQh.woff new file mode 100644 index 0000000..ae72058 Binary files /dev/null and b/mas/share/assets/inter-greek-600-normal-BZpKdvQh.woff differ diff --git a/mas/share/assets/inter-greek-600-normal-plRanbMR.woff2 b/mas/share/assets/inter-greek-600-normal-plRanbMR.woff2 new file mode 100644 index 0000000..479b547 Binary files /dev/null and b/mas/share/assets/inter-greek-600-normal-plRanbMR.woff2 differ diff --git a/mas/share/assets/inter-greek-700-normal-BUv2fZ6O.woff b/mas/share/assets/inter-greek-700-normal-BUv2fZ6O.woff new file mode 100644 index 0000000..1d428f5 Binary files /dev/null and b/mas/share/assets/inter-greek-700-normal-BUv2fZ6O.woff differ diff --git a/mas/share/assets/inter-greek-700-normal-C3JjAnD8.woff2 b/mas/share/assets/inter-greek-700-normal-C3JjAnD8.woff2 new file mode 100644 index 0000000..3a9fc0b Binary files /dev/null and b/mas/share/assets/inter-greek-700-normal-C3JjAnD8.woff2 differ diff --git a/mas/share/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2 b/mas/share/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2 new file mode 100644 index 0000000..7cb1d6b Binary files /dev/null and b/mas/share/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2 differ diff --git a/mas/share/assets/inter-greek-ext-400-normal-KugGGMne.woff b/mas/share/assets/inter-greek-ext-400-normal-KugGGMne.woff new file mode 100644 index 0000000..96f1f60 Binary files /dev/null and b/mas/share/assets/inter-greek-ext-400-normal-KugGGMne.woff differ diff --git a/mas/share/assets/inter-greek-ext-500-normal-2j5mBUwD.woff b/mas/share/assets/inter-greek-ext-500-normal-2j5mBUwD.woff new file mode 100644 index 0000000..713c500 Binary files /dev/null and b/mas/share/assets/inter-greek-ext-500-normal-2j5mBUwD.woff differ diff --git a/mas/share/assets/inter-greek-ext-500-normal-C4iEst2y.woff2 b/mas/share/assets/inter-greek-ext-500-normal-C4iEst2y.woff2 new file mode 100644 index 0000000..4062b66 Binary files /dev/null and b/mas/share/assets/inter-greek-ext-500-normal-C4iEst2y.woff2 differ diff --git a/mas/share/assets/inter-greek-ext-600-normal-B8X0CLgF.woff b/mas/share/assets/inter-greek-ext-600-normal-B8X0CLgF.woff new file mode 100644 index 0000000..b3d15d1 Binary files /dev/null and b/mas/share/assets/inter-greek-ext-600-normal-B8X0CLgF.woff differ diff --git a/mas/share/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2 b/mas/share/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2 new file mode 100644 index 0000000..83e7de9 Binary files /dev/null and b/mas/share/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2 differ diff --git a/mas/share/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff b/mas/share/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff new file mode 100644 index 0000000..e36fd56 Binary files /dev/null and b/mas/share/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff differ diff --git a/mas/share/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2 b/mas/share/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2 new file mode 100644 index 0000000..af7bcba Binary files /dev/null and b/mas/share/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2 differ diff --git a/mas/share/assets/inter-latin-400-normal-C38fXH4l.woff2 b/mas/share/assets/inter-latin-400-normal-C38fXH4l.woff2 new file mode 100644 index 0000000..f15b025 Binary files /dev/null and b/mas/share/assets/inter-latin-400-normal-C38fXH4l.woff2 differ diff --git a/mas/share/assets/inter-latin-400-normal-CyCys3Eg.woff b/mas/share/assets/inter-latin-400-normal-CyCys3Eg.woff new file mode 100644 index 0000000..2f21ed4 Binary files /dev/null and b/mas/share/assets/inter-latin-400-normal-CyCys3Eg.woff differ diff --git a/mas/share/assets/inter-latin-500-normal-BL9OpVg8.woff b/mas/share/assets/inter-latin-500-normal-BL9OpVg8.woff new file mode 100644 index 0000000..07775a3 Binary files /dev/null and b/mas/share/assets/inter-latin-500-normal-BL9OpVg8.woff differ diff --git a/mas/share/assets/inter-latin-500-normal-Cerq10X2.woff2 b/mas/share/assets/inter-latin-500-normal-Cerq10X2.woff2 new file mode 100644 index 0000000..54f0a59 Binary files /dev/null and b/mas/share/assets/inter-latin-500-normal-Cerq10X2.woff2 differ diff --git a/mas/share/assets/inter-latin-600-normal-CiBQ2DWP.woff b/mas/share/assets/inter-latin-600-normal-CiBQ2DWP.woff new file mode 100644 index 0000000..323fa67 Binary files /dev/null and b/mas/share/assets/inter-latin-600-normal-CiBQ2DWP.woff differ diff --git a/mas/share/assets/inter-latin-600-normal-LgqL8muc.woff2 b/mas/share/assets/inter-latin-600-normal-LgqL8muc.woff2 new file mode 100644 index 0000000..d189794 Binary files /dev/null and b/mas/share/assets/inter-latin-600-normal-LgqL8muc.woff2 differ diff --git a/mas/share/assets/inter-latin-700-normal-BLAVimhd.woff b/mas/share/assets/inter-latin-700-normal-BLAVimhd.woff new file mode 100644 index 0000000..161b01e Binary files /dev/null and b/mas/share/assets/inter-latin-700-normal-BLAVimhd.woff differ diff --git a/mas/share/assets/inter-latin-700-normal-Yt3aPRUw.woff2 b/mas/share/assets/inter-latin-700-normal-Yt3aPRUw.woff2 new file mode 100644 index 0000000..a68fb10 Binary files /dev/null and b/mas/share/assets/inter-latin-700-normal-Yt3aPRUw.woff2 differ diff --git a/mas/share/assets/inter-latin-ext-400-normal-77YHD8bZ.woff b/mas/share/assets/inter-latin-ext-400-normal-77YHD8bZ.woff new file mode 100644 index 0000000..0238739 Binary files /dev/null and b/mas/share/assets/inter-latin-ext-400-normal-77YHD8bZ.woff differ diff --git a/mas/share/assets/inter-latin-ext-400-normal-C1nco2VV.woff2 b/mas/share/assets/inter-latin-ext-400-normal-C1nco2VV.woff2 new file mode 100644 index 0000000..5243e4b Binary files /dev/null and b/mas/share/assets/inter-latin-ext-400-normal-C1nco2VV.woff2 differ diff --git a/mas/share/assets/inter-latin-ext-500-normal-BxGbmqWO.woff b/mas/share/assets/inter-latin-ext-500-normal-BxGbmqWO.woff new file mode 100644 index 0000000..e6a577e Binary files /dev/null and b/mas/share/assets/inter-latin-ext-500-normal-BxGbmqWO.woff differ diff --git a/mas/share/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2 b/mas/share/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2 new file mode 100644 index 0000000..2ab7ebf Binary files /dev/null and b/mas/share/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2 differ diff --git a/mas/share/assets/inter-latin-ext-600-normal-CIVaiw4L.woff b/mas/share/assets/inter-latin-ext-600-normal-CIVaiw4L.woff new file mode 100644 index 0000000..74b454b Binary files /dev/null and b/mas/share/assets/inter-latin-ext-600-normal-CIVaiw4L.woff differ diff --git a/mas/share/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2 b/mas/share/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2 new file mode 100644 index 0000000..bad65d4 Binary files /dev/null and b/mas/share/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2 differ diff --git a/mas/share/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2 b/mas/share/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2 new file mode 100644 index 0000000..c9507e3 Binary files /dev/null and b/mas/share/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2 differ diff --git a/mas/share/assets/inter-latin-ext-700-normal-TidjK2hL.woff b/mas/share/assets/inter-latin-ext-700-normal-TidjK2hL.woff new file mode 100644 index 0000000..b4517fc Binary files /dev/null and b/mas/share/assets/inter-latin-ext-700-normal-TidjK2hL.woff differ diff --git a/mas/share/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff b/mas/share/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff new file mode 100644 index 0000000..ff3f8f1 Binary files /dev/null and b/mas/share/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff differ diff --git a/mas/share/assets/inter-vietnamese-400-normal-DMkecbls.woff2 b/mas/share/assets/inter-vietnamese-400-normal-DMkecbls.woff2 new file mode 100644 index 0000000..ba7767f Binary files /dev/null and b/mas/share/assets/inter-vietnamese-400-normal-DMkecbls.woff2 differ diff --git a/mas/share/assets/inter-vietnamese-500-normal-DOriooB6.woff2 b/mas/share/assets/inter-vietnamese-500-normal-DOriooB6.woff2 new file mode 100644 index 0000000..abe88f5 Binary files /dev/null and b/mas/share/assets/inter-vietnamese-500-normal-DOriooB6.woff2 differ diff --git a/mas/share/assets/inter-vietnamese-500-normal-mJboJaSs.woff b/mas/share/assets/inter-vietnamese-500-normal-mJboJaSs.woff new file mode 100644 index 0000000..87a9d4d Binary files /dev/null and b/mas/share/assets/inter-vietnamese-500-normal-mJboJaSs.woff differ diff --git a/mas/share/assets/inter-vietnamese-600-normal-BuLX-rYi.woff b/mas/share/assets/inter-vietnamese-600-normal-BuLX-rYi.woff new file mode 100644 index 0000000..264f0f5 Binary files /dev/null and b/mas/share/assets/inter-vietnamese-600-normal-BuLX-rYi.woff differ diff --git a/mas/share/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2 b/mas/share/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2 new file mode 100644 index 0000000..e7b7814 Binary files /dev/null and b/mas/share/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2 differ diff --git a/mas/share/assets/inter-vietnamese-700-normal-BZaoP0fm.woff b/mas/share/assets/inter-vietnamese-700-normal-BZaoP0fm.woff new file mode 100644 index 0000000..26d92ec Binary files /dev/null and b/mas/share/assets/inter-vietnamese-700-normal-BZaoP0fm.woff differ diff --git a/mas/share/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2 b/mas/share/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2 new file mode 100644 index 0000000..38c516e Binary files /dev/null and b/mas/share/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2 differ diff --git a/mas/share/assets/main-BZ6mghsg.css b/mas/share/assets/main-BZ6mghsg.css new file mode 100644 index 0000000..3ee03c7 --- /dev/null +++ b/mas/share/assets/main-BZ6mghsg.css @@ -0,0 +1 @@ +._details_10519_8{font:var(--cpd-font-body-sm-regular);background:var(--cpd-color-bg-critical-subtle);border:1px solid var(--cpd-color-border-critical-subtle);padding:var(--cpd-space-4x);text-align:initial}._page-heading_y4b3u_8{display:flex;flex-direction:column;gap:var(--cpd-space-4x);margin-block-start:var(--cpd-space-4x)}._page-heading_y4b3u_8 ._icon_y4b3u_16{display:flex;align-items:center;justify-content:center;align-self:center;height:var(--cpd-space-16x);width:var(--cpd-space-16x);padding:var(--cpd-space-2x);background-color:var(--cpd-color-bg-subtle-secondary);border-radius:var(--cpd-space-2x)}._invalid_y4b3u_28:is(._page-heading_y4b3u_8 ._icon_y4b3u_16){background-color:var(--cpd-color-bg-critical-subtle)}._invalid_y4b3u_28:is(._page-heading_y4b3u_8 ._icon_y4b3u_16) svg{color:var(--cpd-color-icon-critical-primary)}._success_y4b3u_36:is(._page-heading_y4b3u_8 ._icon_y4b3u_16){background-color:var(--cpd-color-bg-success-subtle)}._success_y4b3u_36:is(._page-heading_y4b3u_8 ._icon_y4b3u_16) svg{color:var(--cpd-color-icon-success-primary)}:is(._page-heading_y4b3u_8 ._icon_y4b3u_16) svg{height:var(--cpd-space-8x);width:var(--cpd-space-8x);color:var(--cpd-color-icon-secondary)}._page-heading_y4b3u_8 ._header_y4b3u_51{display:flex;flex-direction:column;gap:var(--cpd-space-2x);text-align:center}:is(._page-heading_y4b3u_8 ._header_y4b3u_51) ._title_y4b3u_57{font:var(--cpd-font-heading-md-semibold);letter-spacing:var(--cpd-font-letter-spacing-heading-xl);color:var(--cpd-color-text-primary);text-wrap:balance}:is(._page-heading_y4b3u_8 ._header_y4b3u_51) ._text_y4b3u_64{font:var(--cpd-font-body-lg-regular);letter-spacing:var(--cpd-font-letter-spacing-body-lg);color:var(--cpd-color-text-secondary);text-wrap:balance}:is(:is(._page-heading_y4b3u_8 ._header_y4b3u_51) ._text_y4b3u_64) em{font-style:normal;color:var(--cpd-color-text-primary)}@media screen and (min-width: 768px){._page-heading_y4b3u_8{margin-block-start:var(--cpd-space-8x)}}._legal-footer_1n9he_8{display:flex;flex-direction:column;gap:var(--cpd-space-2x);margin-block-start:auto;font:var(--cpd-font-body-sm-regular);letter-spacing:var(--cpd-font-letter-spacing-body-sm)}._legal-footer_1n9he_8 nav{display:flex;gap:var(--cpd-space-2x);align-items:center;justify-content:center;text-align:center}:is(._legal-footer_1n9he_8 nav) ._separator_1n9he_24{color:var(--cpd-color-text-secondary)}._legal-footer_1n9he_8 ._imprint_1n9he_29{color:var(--cpd-color-text-secondary);text-align:center}._layout-container_71fyu_8{--target-width: 378px;--inline-padding: var(--cpd-space-4x);box-sizing:border-box;display:flex;flex-direction:column;max-width:calc(var(--target-width) + var(--inline-padding) * 2);min-height:100vh;min-height:100svh;margin:0 auto;padding-inline:var(--inline-padding);padding-block:var(--cpd-space-8x);gap:var(--cpd-space-8x)}._layout-container_71fyu_8._consent_71fyu_27{--target-width: 460px}._layout-container_71fyu_8._wide_71fyu_31{--target-width: 520px}@media screen and (min-width: 768px){._layout-container_71fyu_8{padding-block:var(--cpd-space-12x)}}@keyframes _spin_a0mwm_1{to{transform:rotate(360deg)}}:root{--size: var(--cpd-space-16x)}._inline_a0mwm_18{display:inline;margin-right:var(--cpd-space-4x)}._inline_a0mwm_18 ._loading-spinner-inner_a0mwm_22{height:var(--cpd-space-4x);width:var(--cpd-space-4x)}._mini_a0mwm_28{margin-right:var(--cpd-space-4x)}._mini_a0mwm_28 ._loading-spinner-inner_a0mwm_22{height:var(--cpd-space-8x);width:var(--cpd-space-8x)}._loading-spinner-inner_a0mwm_22{height:var(--cpd-space-16x);width:var(--cpd-space-16x);display:inline;animation:_spin_a0mwm_1 1s linear infinite;fill:var(--cpd-color-icon-primary)}._loading-screen_1v9q3_8{display:flex;min-height:100vh;min-height:100svh;justify-content:center;align-items:center}._overlay_z12vs_8,._scroll-container_z12vs_9{position:fixed;inset:0;background:#030c1b87}._scroll-container_z12vs_9{overflow-y:auto}._container_z12vs_19{display:flex;align-items:center;justify-content:center;min-height:100svh}._dialog_z12vs_26{position:relative;margin:var(--cpd-space-4x);min-width:0;flex:0 1 520px}._body_z12vs_34{display:flex;flex-direction:column;gap:var(--cpd-space-4x);background:var(--cpd-color-bg-canvas-default)}._title_z12vs_41{font:var(--cpd-font-heading-md-semibold);letter-spacing:var(--cpd-font-letter-spacing-heading-md);color:var(--cpd-color-text-primary);margin-block-start:var(--cpd-space-4x)}._dialog_z12vs_26 ._body_z12vs_34{padding:var(--cpd-space-4x) var(--cpd-space-10x) var(--cpd-space-10x)}._dialog_z12vs_26 ._title_z12vs_41{padding-inline-end:var(--cpd-space-7x)}._dialog_z12vs_26 ._close_z12vs_58{position:absolute;inset-block-start:var(--cpd-space-7x);inset-inline-end:var(--cpd-space-7x);padding:var(--cpd-space-1x);border-radius:var(--cpd-radius-pill-effect);background:var(--cpd-color-bg-subtle-secondary);color:var(--cpd-color-icon-secondary)}:is(._dialog_z12vs_26 ._close_z12vs_58)>svg{inline-size:var(--cpd-space-5x);block-size:var(--cpd-space-5x)}:is(._dialog_z12vs_26 ._close_z12vs_58):hover{background:var(--cpd-color-bg-subtle-primary);color:var(--cpd-color-icon-primary)}._drawer_z12vs_78{position:fixed;background:var(--cpd-color-bg-canvas-default);inset-block-end:0;inset-inline:0;padding-inline:max(0px,calc((100% - 520px)/2));border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);display:flex;flex-direction:column;overflow:hidden;contain:paint;max-block-size:calc(100vh - var(--cpd-space-4x));max-block-size:calc(100svh - var(--cpd-space-4x));--border-radius: 28px;--handle-block-size: 4px;--handle-inline-size: 32px;--handle-inset-block-start: var(--cpd-space-4x);--handle-inset-block-end: 0px}._drawer_z12vs_78[data-platform=ios]{--border-radius: 10px;--handle-block-size: 5px;--handle-inline-size: 36px;--handle-inset-block-start: var(--cpd-space-1-5x);--handle-inset-block-end: 1px}._drawer_z12vs_78 ._body_z12vs_34{overflow-y:auto;scrollbar-width:none;padding-inline:var(--cpd-space-4x);margin-block-start:var(--cpd-space-2x);padding-block-start:var(--cpd-space-4x);padding-block-end:var(--cpd-space-12x)}._drawer_z12vs_78 ._handle_z12vs_126{align-self:center;block-size:var(--handle-block-size);inline-size:var(--handle-inline-size);margin-block-start:var(--handle-inset-block-start);margin-block-end:var(--handle-inset-block-end);background:var(--cpd-color-icon-secondary);border-radius:var(--cpd-radius-pill-effect)}._user-email_q0ko9_8{display:flex;flex-direction:column;align-items:flex-start;gap:var(--cpd-space-2x)}._user-email-line_q0ko9_15{display:flex;align-self:stretch;gap:var(--cpd-space-2x)}._user-email-delete-icon_q0ko9_21{color:var(--cpd-color-icon-critical-primary)}button[disabled] ._user-email-delete-icon_q0ko9_21{color:var(--cpd-color-icon-disabled)}._user-email-field_q0ko9_29{flex:1}._user-email-unverified_q0ko9_33{color:var(--cpd-color-text-critical-primary)}._email-modal-box_q0ko9_37{display:flex;align-items:center;gap:var(--cpd-space-4x);border-radius:var(--cpd-space-4x);border:1px solid var(--cpd-color-gray-400);padding:var(--cpd-space-3x);font:var(--cpd-font-body-md-semibold)}._email-modal-box_q0ko9_37>svg{color:var(--cpd-color-icon-secondary);background-color:var(--cpd-color-bg-subtle-secondary);padding:var(--cpd-space-2x);border-radius:var(--cpd-space-2x);inline-size:var(--cpd-space-10x);block-size:var(--cpd-space-10x)}._link_q0ko9_56{display:inline-block;text-decoration:underline;color:var(--cpd-color-text-primary);font-weight:var(--cpd-font-weight-medium);border-radius:var(--cpd-radius-pill-effect);padding-inline:.25rem}._link_q0ko9_56:hover{background:var(--cpd-color-gray-300)}._link_q0ko9_56:active{background:var(--cpd-color-text-primary);color:var(--cpd-color-text-on-solid-primary)} diff --git a/mas/share/assets/main-BZ6mghsg.css.br b/mas/share/assets/main-BZ6mghsg.css.br new file mode 100644 index 0000000..0db98bd Binary files /dev/null and b/mas/share/assets/main-BZ6mghsg.css.br differ diff --git a/mas/share/assets/main-BZ6mghsg.css.gz b/mas/share/assets/main-BZ6mghsg.css.gz new file mode 100644 index 0000000..5ffcc1f Binary files /dev/null and b/mas/share/assets/main-BZ6mghsg.css.gz differ diff --git a/mas/share/assets/main-BZ6mghsg.css.zz b/mas/share/assets/main-BZ6mghsg.css.zz new file mode 100644 index 0000000..f7cf7b1 Binary files /dev/null and b/mas/share/assets/main-BZ6mghsg.css.zz differ diff --git a/mas/share/assets/main-CiAhdYQG.js b/mas/share/assets/main-CiAhdYQG.js new file mode 100644 index 0000000..072a6af --- /dev/null +++ b/mas/share/assets/main-CiAhdYQG.js @@ -0,0 +1,1274 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./reset-cross-signing-DUdBxwlo.js","./_commonjsHelpers-DaWZu8wl.js","./shared-YTyIDgVY.css","./reset-cross-signing-CrU1fIYQ.js","./_account-BMDlqbFy.js","./Heading-zTQC9Kqs.js","./edit-DvN6hAeY.js","./Avatar-B3RWCmae.js","./Submit-DW2aiKTW.js","./_account-Bo4jHeuD.css","./reset-cross-signing.index-d3QQKAON.js","./check-Cx46Fv0J.js","./VisualListItem-Dd-weqBc.js","./ButtonLink-kWcKQZoZ.js","./ButtonLink-C4AMHHR_.css","./_account.index-Bgj2uEUe.js","./Separator-CVNE-7yB.js","./Separator-C2iSg9zz.css","./Trans-CeobkUgR.js","./EndBrowserSessionButton-DXsnVcVV.js","./computer-Cx9wZ7Nf.js","./computer-5n3hJ_65.css","./EndBrowserSessionButton-b2eg7MjM.css","./_account-D5pwwkVm.css","./sessions._id-dTqvDSLk.js","./LastActive-D4SP35FS.js","./LastActive-C9wo4AOG.css","./SessionInfo-BtmlaGNW.js","./EndOAuth2SessionButton-CPWjVtc_.js","./sessions-ED42EOQL.css","./sessions._id-DOQcjR__.js","./Link-Do_sTHM7.js","./reset-cross-signing.success-Mba-aBLI.js","./reset-cross-signing.cancelled-oBzzErte.js","./devices._-BA2mLuaB.js","./clients._id-CBcE7ZJr.js","./clients-Dttfz2sD.css","./password.recovery.index-BypsELRF.js","./password_changes-DaEmI9Wm.js","./password.change.index-DN6W0rA5.js","./_account.sessions.index-ChqhRgNC.js","./Filter-_9i8iQpA.js","./Filter-lwtJLR9L.css","./_account.sessions-CQQxPQtC.css","./_account.plan.index-az7l7N5p.js","./password.change.success-BWTRx3Zp.js","./emails._id.verify-BEvFlfcg.js","./arrow-left-BJ2z0Kiz.js","./emails._id.in-use-CSU8U9sW.js","./_account.sessions.browsers-DNRESZGR.js"])))=>i.map(i=>d[i]); +import{g as Nh}from"./_commonjsHelpers-DaWZu8wl.js";/* empty css */function gE(t,i){for(var a=0;ar[l]})}}}return Object.freeze(Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}))}var ld={exports:{}},Ir={};var dy;function vE(){if(dy)return Ir;dy=1;var t=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function a(r,l,u){var f=null;if(u!==void 0&&(f=""+u),l.key!==void 0&&(f=""+l.key),"key"in l){u={};for(var d in l)d!=="key"&&(u[d]=l[d])}else u=l;return l=u.ref,{$$typeof:t,type:r,key:f,ref:l!==void 0?l:null,props:u}}return Ir.Fragment=i,Ir.jsx=a,Ir.jsxs=a,Ir}var hy;function yE(){return hy||(hy=1,ld.exports=vE()),ld.exports}var R=yE(),ks=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(t){return this.listeners.add(t),this.onSubscribe(),()=>{this.listeners.delete(t),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},SE={setTimeout:(t,i)=>setTimeout(t,i),clearTimeout:t=>clearTimeout(t),setInterval:(t,i)=>setInterval(t,i),clearInterval:t=>clearInterval(t)},bE=class{#e=SE;#t=!1;setTimeoutProvider(t){this.#e=t}setTimeout(t,i){return this.#e.setTimeout(t,i)}clearTimeout(t){this.#e.clearTimeout(t)}setInterval(t,i){return this.#e.setInterval(t,i)}clearInterval(t){this.#e.clearInterval(t)}},wa=new bE;function _E(t){setTimeout(t,0)}var Aa=typeof window>"u"||"Deno"in globalThis;function Mt(){}function wE(t,i){return typeof t=="function"?t(i):t}function Jd(t){return typeof t=="number"&&t>=0&&t!==1/0}function rS(t,i){return Math.max(t+(i||0)-Date.now(),0)}function Xi(t,i){return typeof t=="function"?t(i):t}function bn(t,i){return typeof t=="function"?t(i):t}function my(t,i){const{type:a="all",exact:r,fetchStatus:l,predicate:u,queryKey:f,stale:d}=t;if(f){if(r){if(i.queryHash!==Lh(f,i.options))return!1}else if(!so(i.queryKey,f))return!1}if(a!=="all"){const m=i.isActive();if(a==="active"&&!m||a==="inactive"&&m)return!1}return!(typeof d=="boolean"&&i.isStale()!==d||l&&l!==i.state.fetchStatus||u&&!u(i))}function py(t,i){const{exact:a,status:r,predicate:l,mutationKey:u}=t;if(u){if(!i.options.mutationKey)return!1;if(a){if(Ta(i.options.mutationKey)!==Ta(u))return!1}else if(!so(i.options.mutationKey,u))return!1}return!(r&&i.state.status!==r||l&&!l(i))}function Lh(t,i){return(i?.queryKeyHashFn||Ta)(t)}function Ta(t){return JSON.stringify(t,(i,a)=>Wd(a)?Object.keys(a).sort().reduce((r,l)=>(r[l]=a[l],r),{}):a)}function so(t,i){return t===i?!0:typeof t!=typeof i?!1:t&&i&&typeof t=="object"&&typeof i=="object"?Object.keys(i).every(a=>so(t[a],i[a])):!1}var EE=Object.prototype.hasOwnProperty;function oS(t,i){if(t===i)return t;const a=gy(t)&&gy(i);if(!a&&!(Wd(t)&&Wd(i)))return i;const l=(a?t:Object.keys(t)).length,u=a?i:Object.keys(i),f=u.length,d=a?new Array(f):{};let m=0;for(let p=0;p{wa.setTimeout(i,t)})}function eh(t,i,a){return typeof a.structuralSharing=="function"?a.structuralSharing(t,i):a.structuralSharing!==!1?oS(t,i):i}function RE(t,i,a=0){const r=[...t,i];return a&&r.length>a?r.slice(1):r}function xE(t,i,a=0){const r=[i,...t];return a&&r.length>a?r.slice(0,-1):r}var Uh=Symbol();function lS(t,i){return!t.queryFn&&i?.initialPromise?()=>i.initialPromise:!t.queryFn||t.queryFn===Uh?()=>Promise.reject(new Error(`Missing queryFn: '${t.queryHash}'`)):t.queryFn}function uS(t,i){return typeof t=="function"?t(...i):!!t}var AE=class extends ks{#e;#t;#n;constructor(){super(),this.#n=t=>{if(!Aa&&window.addEventListener){const i=()=>t();return window.addEventListener("visibilitychange",i,!1),()=>{window.removeEventListener("visibilitychange",i)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(t){this.#n=t,this.#t?.(),this.#t=t(i=>{typeof i=="boolean"?this.setFocused(i):this.onFocus()})}setFocused(t){this.#e!==t&&(this.#e=t,this.onFocus())}onFocus(){const t=this.isFocused();this.listeners.forEach(i=>{i(t)})}isFocused(){return typeof this.#e=="boolean"?this.#e:globalThis.document?.visibilityState!=="hidden"}},jh=new AE;function th(){let t,i;const a=new Promise((l,u)=>{t=l,i=u});a.status="pending",a.catch(()=>{});function r(l){Object.assign(a,l),delete a.resolve,delete a.reject}return a.resolve=l=>{r({status:"fulfilled",value:l}),t(l)},a.reject=l=>{r({status:"rejected",reason:l}),i(l)},a}var TE=_E;function OE(){let t=[],i=0,a=d=>{d()},r=d=>{d()},l=TE;const u=d=>{i?t.push(d):l(()=>{a(d)})},f=()=>{const d=t;t=[],d.length&&l(()=>{r(()=>{d.forEach(m=>{a(m)})})})};return{batch:d=>{let m;i++;try{m=d()}finally{i--,i||f()}return m},batchCalls:d=>(...m)=>{u(()=>{d(...m)})},schedule:u,setNotifyFunction:d=>{a=d},setBatchNotifyFunction:d=>{r=d},setScheduler:d=>{l=d}}}var ct=OE(),DE=class extends ks{#e=!0;#t;#n;constructor(){super(),this.#n=t=>{if(!Aa&&window.addEventListener){const i=()=>t(!0),a=()=>t(!1);return window.addEventListener("online",i,!1),window.addEventListener("offline",a,!1),()=>{window.removeEventListener("online",i),window.removeEventListener("offline",a)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(t){this.#n=t,this.#t?.(),this.#t=t(this.setOnline.bind(this))}setOnline(t){this.#e!==t&&(this.#e=t,this.listeners.forEach(a=>{a(t)}))}isOnline(){return this.#e}},ru=new DE;function ME(t){return Math.min(1e3*2**t,3e4)}function cS(t){return(t??"online")==="online"?ru.isOnline():!0}var nh=class extends Error{constructor(t){super("CancelledError"),this.revert=t?.revert,this.silent=t?.silent}};function fS(t){let i=!1,a=0,r;const l=th(),u=()=>l.status!=="pending",f=w=>{if(!u()){const x=new nh(w);S(x),t.onCancel?.(x)}},d=()=>{i=!0},m=()=>{i=!1},p=()=>jh.isFocused()&&(t.networkMode==="always"||ru.isOnline())&&t.canRun(),v=()=>cS(t.networkMode)&&t.canRun(),g=w=>{u()||(r?.(),l.resolve(w))},S=w=>{u()||(r?.(),l.reject(w))},b=()=>new Promise(w=>{r=x=>{(u()||p())&&w(x)},t.onPause?.()}).then(()=>{r=void 0,u()||t.onContinue?.()}),E=()=>{if(u())return;let w;const x=a===0?t.initialPromise:void 0;try{w=x??t.fn()}catch(A){w=Promise.reject(A)}Promise.resolve(w).then(g).catch(A=>{if(u())return;const D=t.retry??(Aa?0:3),U=t.retryDelay??ME,N=typeof U=="function"?U(a,A):U,k=D===!0||typeof D=="number"&&ap()?void 0:b()).then(()=>{i?S(A):E()})})};return{promise:l,status:()=>l.status,cancel:f,continue:()=>(r?.(),l),cancelRetry:d,continueRetry:m,canStart:v,start:()=>(v()?E():b().then(E),l)}}var dS=class{#e;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),Jd(this.gcTime)&&(this.#e=wa.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(t){this.gcTime=Math.max(this.gcTime||0,t??(Aa?1/0:300*1e3))}clearGcTimeout(){this.#e&&(wa.clearTimeout(this.#e),this.#e=void 0)}},NE=class extends dS{#e;#t;#n;#a;#i;#r;#o;constructor(t){super(),this.#o=!1,this.#r=t.defaultOptions,this.setOptions(t.options),this.observers=[],this.#a=t.client,this.#n=this.#a.getQueryCache(),this.queryKey=t.queryKey,this.queryHash=t.queryHash,this.#e=Sy(this.options),this.state=t.state??this.#e,this.scheduleGc()}get meta(){return this.options.meta}get promise(){return this.#i?.promise}setOptions(t){if(this.options={...this.#r,...t},this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){const i=Sy(this.options);i.data!==void 0&&(this.setState(yy(i.data,i.dataUpdatedAt)),this.#e=i)}}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&this.#n.remove(this)}setData(t,i){const a=eh(this.state.data,t,this.options);return this.#s({data:a,type:"success",dataUpdatedAt:i?.updatedAt,manual:i?.manual}),a}setState(t,i){this.#s({type:"setState",state:t,setStateOptions:i})}cancel(t){const i=this.#i?.promise;return this.#i?.cancel(t),i?i.then(Mt).catch(Mt):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}reset(){this.destroy(),this.setState(this.#e)}isActive(){return this.observers.some(t=>bn(t.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===Uh||this.state.dataUpdateCount+this.state.errorUpdateCount===0}isStatic(){return this.getObserversCount()>0?this.observers.some(t=>Xi(t.options.staleTime,this)==="static"):!1}isStale(){return this.getObserversCount()>0?this.observers.some(t=>t.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(t=0){return this.state.data===void 0?!0:t==="static"?!1:this.state.isInvalidated?!0:!rS(this.state.dataUpdatedAt,t)}onFocus(){this.observers.find(i=>i.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),this.#i?.continue()}onOnline(){this.observers.find(i=>i.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),this.#i?.continue()}addObserver(t){this.observers.includes(t)||(this.observers.push(t),this.clearGcTimeout(),this.#n.notify({type:"observerAdded",query:this,observer:t}))}removeObserver(t){this.observers.includes(t)&&(this.observers=this.observers.filter(i=>i!==t),this.observers.length||(this.#i&&(this.#o?this.#i.cancel({revert:!0}):this.#i.cancelRetry()),this.scheduleGc()),this.#n.notify({type:"observerRemoved",query:this,observer:t}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||this.#s({type:"invalidate"})}async fetch(t,i){if(this.state.fetchStatus!=="idle"&&this.#i?.status()!=="rejected"){if(this.state.data!==void 0&&i?.cancelRefetch)this.cancel({silent:!0});else if(this.#i)return this.#i.continueRetry(),this.#i.promise}if(t&&this.setOptions(t),!this.options.queryFn){const d=this.observers.find(m=>m.options.queryFn);d&&this.setOptions(d.options)}const a=new AbortController,r=d=>{Object.defineProperty(d,"signal",{enumerable:!0,get:()=>(this.#o=!0,a.signal)})},l=()=>{const d=lS(this.options,i),p=(()=>{const v={client:this.#a,queryKey:this.queryKey,meta:this.meta};return r(v),v})();return this.#o=!1,this.options.persister?this.options.persister(d,p,this):d(p)},f=(()=>{const d={fetchOptions:i,options:this.options,queryKey:this.queryKey,client:this.#a,state:this.state,fetchFn:l};return r(d),d})();this.options.behavior?.onFetch(f,this),this.#t=this.state,(this.state.fetchStatus==="idle"||this.state.fetchMeta!==f.fetchOptions?.meta)&&this.#s({type:"fetch",meta:f.fetchOptions?.meta}),this.#i=fS({initialPromise:i?.initialPromise,fn:f.fetchFn,onCancel:d=>{d instanceof nh&&d.revert&&this.setState({...this.#t,fetchStatus:"idle"}),a.abort()},onFail:(d,m)=>{this.#s({type:"failed",failureCount:d,error:m})},onPause:()=>{this.#s({type:"pause"})},onContinue:()=>{this.#s({type:"continue"})},retry:f.options.retry,retryDelay:f.options.retryDelay,networkMode:f.options.networkMode,canRun:()=>!0});try{const d=await this.#i.start();if(d===void 0)throw new Error(`${this.queryHash} data is undefined`);return this.setData(d),this.#n.config.onSuccess?.(d,this),this.#n.config.onSettled?.(d,this.state.error,this),d}catch(d){if(d instanceof nh){if(d.silent)return this.#i.promise;if(d.revert){if(this.state.data===void 0)throw d;return this.state.data}}throw this.#s({type:"error",error:d}),this.#n.config.onError?.(d,this),this.#n.config.onSettled?.(this.state.data,d,this),d}finally{this.scheduleGc()}}#s(t){const i=a=>{switch(t.type){case"failed":return{...a,fetchFailureCount:t.failureCount,fetchFailureReason:t.error};case"pause":return{...a,fetchStatus:"paused"};case"continue":return{...a,fetchStatus:"fetching"};case"fetch":return{...a,...hS(a.data,this.options),fetchMeta:t.meta??null};case"success":const r={...a,...yy(t.data,t.dataUpdatedAt),dataUpdateCount:a.dataUpdateCount+1,...!t.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};return this.#t=t.manual?r:void 0,r;case"error":const l=t.error;return{...a,error:l,errorUpdateCount:a.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:a.fetchFailureCount+1,fetchFailureReason:l,fetchStatus:"idle",status:"error"};case"invalidate":return{...a,isInvalidated:!0};case"setState":return{...a,...t.state}}};this.state=i(this.state),ct.batch(()=>{this.observers.forEach(a=>{a.onQueryUpdate()}),this.#n.notify({query:this,type:"updated",action:t})})}};function hS(t,i){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:cS(i.networkMode)?"fetching":"paused",...t===void 0&&{error:null,status:"pending"}}}function yy(t,i){return{data:t,dataUpdatedAt:i??Date.now(),error:null,isInvalidated:!1,status:"success"}}function Sy(t){const i=typeof t.initialData=="function"?t.initialData():t.initialData,a=i!==void 0,r=a?typeof t.initialDataUpdatedAt=="function"?t.initialDataUpdatedAt():t.initialDataUpdatedAt:0;return{data:i,dataUpdateCount:0,dataUpdatedAt:a?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:a?"success":"pending",fetchStatus:"idle"}}var LE=class extends ks{constructor(t,i){super(),this.options=i,this.#e=t,this.#s=null,this.#o=th(),this.bindMethods(),this.setOptions(i)}#e;#t=void 0;#n=void 0;#a=void 0;#i;#r;#o;#s;#p;#d;#h;#u;#c;#l;#m=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(this.#t.addObserver(this),by(this.#t,this.options)?this.#f():this.updateResult(),this.#S())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return ih(this.#t,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return ih(this.#t,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#b(),this.#_(),this.#t.removeObserver(this)}setOptions(t){const i=this.options,a=this.#t;if(this.options=this.#e.defaultQueryOptions(t),this.options.enabled!==void 0&&typeof this.options.enabled!="boolean"&&typeof this.options.enabled!="function"&&typeof bn(this.options.enabled,this.#t)!="boolean")throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");this.#w(),this.#t.setOptions(this.options),i._defaulted&&!su(this.options,i)&&this.#e.getQueryCache().notify({type:"observerOptionsUpdated",query:this.#t,observer:this});const r=this.hasListeners();r&&_y(this.#t,a,this.options,i)&&this.#f(),this.updateResult(),r&&(this.#t!==a||bn(this.options.enabled,this.#t)!==bn(i.enabled,this.#t)||Xi(this.options.staleTime,this.#t)!==Xi(i.staleTime,this.#t))&&this.#g();const l=this.#v();r&&(this.#t!==a||bn(this.options.enabled,this.#t)!==bn(i.enabled,this.#t)||l!==this.#l)&&this.#y(l)}getOptimisticResult(t){const i=this.#e.getQueryCache().build(this.#e,t),a=this.createResult(i,t);return jE(this,a)&&(this.#a=a,this.#r=this.options,this.#i=this.#t.state),a}getCurrentResult(){return this.#a}trackResult(t,i){return new Proxy(t,{get:(a,r)=>(this.trackProp(r),i?.(r),r==="promise"&&(this.trackProp("data"),!this.options.experimental_prefetchInRender&&this.#o.status==="pending"&&this.#o.reject(new Error("experimental_prefetchInRender feature flag is not enabled"))),Reflect.get(a,r))})}trackProp(t){this.#m.add(t)}getCurrentQuery(){return this.#t}refetch({...t}={}){return this.fetch({...t})}fetchOptimistic(t){const i=this.#e.defaultQueryOptions(t),a=this.#e.getQueryCache().build(this.#e,i);return a.fetch().then(()=>this.createResult(a,i))}fetch(t){return this.#f({...t,cancelRefetch:t.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#a))}#f(t){this.#w();let i=this.#t.fetch(this.options,t);return t?.throwOnError||(i=i.catch(Mt)),i}#g(){this.#b();const t=Xi(this.options.staleTime,this.#t);if(Aa||this.#a.isStale||!Jd(t))return;const a=rS(this.#a.dataUpdatedAt,t)+1;this.#u=wa.setTimeout(()=>{this.#a.isStale||this.updateResult()},a)}#v(){return(typeof this.options.refetchInterval=="function"?this.options.refetchInterval(this.#t):this.options.refetchInterval)??!1}#y(t){this.#_(),this.#l=t,!(Aa||bn(this.options.enabled,this.#t)===!1||!Jd(this.#l)||this.#l===0)&&(this.#c=wa.setInterval(()=>{(this.options.refetchIntervalInBackground||jh.isFocused())&&this.#f()},this.#l))}#S(){this.#g(),this.#y(this.#v())}#b(){this.#u&&(wa.clearTimeout(this.#u),this.#u=void 0)}#_(){this.#c&&(wa.clearInterval(this.#c),this.#c=void 0)}createResult(t,i){const a=this.#t,r=this.options,l=this.#a,u=this.#i,f=this.#r,m=t!==a?t.state:this.#n,{state:p}=t;let v={...p},g=!1,S;if(i._optimisticResults){const B=this.hasListeners(),Q=!B&&by(t,i),P=B&&_y(t,a,i,r);(Q||P)&&(v={...v,...hS(p.data,t.options)}),i._optimisticResults==="isRestoring"&&(v.fetchStatus="idle")}let{error:b,errorUpdatedAt:E,status:w}=v;S=v.data;let x=!1;if(i.placeholderData!==void 0&&S===void 0&&w==="pending"){let B;l?.isPlaceholderData&&i.placeholderData===f?.placeholderData?(B=l.data,x=!0):B=typeof i.placeholderData=="function"?i.placeholderData(this.#h?.state.data,this.#h):i.placeholderData,B!==void 0&&(w="success",S=eh(l?.data,B,i),g=!0)}if(i.select&&S!==void 0&&!x)if(l&&S===u?.data&&i.select===this.#p)S=this.#d;else try{this.#p=i.select,S=i.select(S),S=eh(l?.data,S,i),this.#d=S,this.#s=null}catch(B){this.#s=B}this.#s&&(b=this.#s,S=this.#d,E=Date.now(),w="error");const A=v.fetchStatus==="fetching",D=w==="pending",U=w==="error",N=D&&A,k=S!==void 0,M={status:w,fetchStatus:v.fetchStatus,isPending:D,isSuccess:w==="success",isError:U,isInitialLoading:N,isLoading:N,data:S,dataUpdatedAt:v.dataUpdatedAt,error:b,errorUpdatedAt:E,failureCount:v.fetchFailureCount,failureReason:v.fetchFailureReason,errorUpdateCount:v.errorUpdateCount,isFetched:v.dataUpdateCount>0||v.errorUpdateCount>0,isFetchedAfterMount:v.dataUpdateCount>m.dataUpdateCount||v.errorUpdateCount>m.errorUpdateCount,isFetching:A,isRefetching:A&&!D,isLoadingError:U&&!k,isPaused:v.fetchStatus==="paused",isPlaceholderData:g,isRefetchError:U&&k,isStale:Ph(t,i),refetch:this.refetch,promise:this.#o,isEnabled:bn(i.enabled,t)!==!1};if(this.options.experimental_prefetchInRender){const B=ee=>{M.status==="error"?ee.reject(M.error):M.data!==void 0&&ee.resolve(M.data)},Q=()=>{const ee=this.#o=M.promise=th();B(ee)},P=this.#o;switch(P.status){case"pending":t.queryHash===a.queryHash&&B(P);break;case"fulfilled":(M.status==="error"||M.data!==P.value)&&Q();break;case"rejected":(M.status!=="error"||M.error!==P.reason)&&Q();break}}return M}updateResult(){const t=this.#a,i=this.createResult(this.#t,this.options);if(this.#i=this.#t.state,this.#r=this.options,this.#i.data!==void 0&&(this.#h=this.#t),su(i,t))return;this.#a=i;const a=()=>{if(!t)return!0;const{notifyOnChangeProps:r}=this.options,l=typeof r=="function"?r():r;if(l==="all"||!l&&!this.#m.size)return!0;const u=new Set(l??this.#m);return this.options.throwOnError&&u.add("error"),Object.keys(this.#a).some(f=>{const d=f;return this.#a[d]!==t[d]&&u.has(d)})};this.#E({listeners:a()})}#w(){const t=this.#e.getQueryCache().build(this.#e,this.options);if(t===this.#t)return;const i=this.#t;this.#t=t,this.#n=t.state,this.hasListeners()&&(i?.removeObserver(this),t.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#S()}#E(t){ct.batch(()=>{t.listeners&&this.listeners.forEach(i=>{i(this.#a)}),this.#e.getQueryCache().notify({query:this.#t,type:"observerResultsUpdated"})})}};function UE(t,i){return bn(i.enabled,t)!==!1&&t.state.data===void 0&&!(t.state.status==="error"&&i.retryOnMount===!1)}function by(t,i){return UE(t,i)||t.state.data!==void 0&&ih(t,i,i.refetchOnMount)}function ih(t,i,a){if(bn(i.enabled,t)!==!1&&Xi(i.staleTime,t)!=="static"){const r=typeof a=="function"?a(t):a;return r==="always"||r!==!1&&Ph(t,i)}return!1}function _y(t,i,a,r){return(t!==i||bn(r.enabled,t)===!1)&&(!a.suspense||t.state.status!=="error")&&Ph(t,a)}function Ph(t,i){return bn(i.enabled,t)!==!1&&t.isStaleByTime(Xi(i.staleTime,t))}function jE(t,i){return!su(t.getCurrentResult(),i)}function wy(t){return{onFetch:(i,a)=>{const r=i.options,l=i.fetchOptions?.meta?.fetchMore?.direction,u=i.state.data?.pages||[],f=i.state.data?.pageParams||[];let d={pages:[],pageParams:[]},m=0;const p=async()=>{let v=!1;const g=E=>{Object.defineProperty(E,"signal",{enumerable:!0,get:()=>(i.signal.aborted?v=!0:i.signal.addEventListener("abort",()=>{v=!0}),i.signal)})},S=lS(i.options,i.fetchOptions),b=async(E,w,x)=>{if(v)return Promise.reject();if(w==null&&E.pages.length)return Promise.resolve(E);const D=(()=>{const G={client:i.client,queryKey:i.queryKey,pageParam:w,direction:x?"backward":"forward",meta:i.options.meta};return g(G),G})(),U=await S(D),{maxPages:N}=i.options,k=x?xE:RE;return{pages:k(E.pages,U,N),pageParams:k(E.pageParams,w,N)}};if(l&&u.length){const E=l==="backward",w=E?PE:Ey,x={pages:u,pageParams:f},A=w(r,x);d=await b(x,A,E)}else{const E=t??u.length;do{const w=m===0?f[0]??r.initialPageParam:Ey(r,d);if(m>0&&w==null)break;d=await b(d,w),m++}while(mi.options.persister?.(p,{client:i.client,queryKey:i.queryKey,meta:i.options.meta,signal:i.signal},a):i.fetchFn=p}}}function Ey(t,{pages:i,pageParams:a}){const r=i.length-1;return i.length>0?t.getNextPageParam(i[r],i,a[r],a):void 0}function PE(t,{pages:i,pageParams:a}){return i.length>0?t.getPreviousPageParam?.(i[0],i,a[0],a):void 0}var zE=class extends dS{#e;#t;#n;#a;constructor(t){super(),this.#e=t.client,this.mutationId=t.mutationId,this.#n=t.mutationCache,this.#t=[],this.state=t.state||mS(),this.setOptions(t.options),this.scheduleGc()}setOptions(t){this.options=t,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(t){this.#t.includes(t)||(this.#t.push(t),this.clearGcTimeout(),this.#n.notify({type:"observerAdded",mutation:this,observer:t}))}removeObserver(t){this.#t=this.#t.filter(i=>i!==t),this.scheduleGc(),this.#n.notify({type:"observerRemoved",mutation:this,observer:t})}optionalRemove(){this.#t.length||(this.state.status==="pending"?this.scheduleGc():this.#n.remove(this))}continue(){return this.#a?.continue()??this.execute(this.state.variables)}async execute(t){const i=()=>{this.#i({type:"continue"})},a={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};this.#a=fS({fn:()=>this.options.mutationFn?this.options.mutationFn(t,a):Promise.reject(new Error("No mutationFn found")),onFail:(u,f)=>{this.#i({type:"failed",failureCount:u,error:f})},onPause:()=>{this.#i({type:"pause"})},onContinue:i,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#n.canRun(this)});const r=this.state.status==="pending",l=!this.#a.canStart();try{if(r)i();else{this.#i({type:"pending",variables:t,isPaused:l}),await this.#n.config.onMutate?.(t,this,a);const f=await this.options.onMutate?.(t,a);f!==this.state.context&&this.#i({type:"pending",context:f,variables:t,isPaused:l})}const u=await this.#a.start();return await this.#n.config.onSuccess?.(u,t,this.state.context,this,a),await this.options.onSuccess?.(u,t,this.state.context,a),await this.#n.config.onSettled?.(u,null,this.state.variables,this.state.context,this,a),await this.options.onSettled?.(u,null,t,this.state.context,a),this.#i({type:"success",data:u}),u}catch(u){try{throw await this.#n.config.onError?.(u,t,this.state.context,this,a),await this.options.onError?.(u,t,this.state.context,a),await this.#n.config.onSettled?.(void 0,u,this.state.variables,this.state.context,this,a),await this.options.onSettled?.(void 0,u,t,this.state.context,a),u}finally{this.#i({type:"error",error:u})}}finally{this.#n.runNext(this)}}#i(t){const i=a=>{switch(t.type){case"failed":return{...a,failureCount:t.failureCount,failureReason:t.error};case"pause":return{...a,isPaused:!0};case"continue":return{...a,isPaused:!1};case"pending":return{...a,context:t.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:t.isPaused,status:"pending",variables:t.variables,submittedAt:Date.now()};case"success":return{...a,data:t.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...a,data:void 0,error:t.error,failureCount:a.failureCount+1,failureReason:t.error,isPaused:!1,status:"error"}}};this.state=i(this.state),ct.batch(()=>{this.#t.forEach(a=>{a.onMutationUpdate(t)}),this.#n.notify({mutation:this,type:"updated",action:t})})}};function mS(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var $E=class extends ks{constructor(t={}){super(),this.config=t,this.#e=new Set,this.#t=new Map,this.#n=0}#e;#t;#n;build(t,i,a){const r=new zE({client:t,mutationCache:this,mutationId:++this.#n,options:t.defaultMutationOptions(i),state:a});return this.add(r),r}add(t){this.#e.add(t);const i=Ul(t);if(typeof i=="string"){const a=this.#t.get(i);a?a.push(t):this.#t.set(i,[t])}this.notify({type:"added",mutation:t})}remove(t){if(this.#e.delete(t)){const i=Ul(t);if(typeof i=="string"){const a=this.#t.get(i);if(a)if(a.length>1){const r=a.indexOf(t);r!==-1&&a.splice(r,1)}else a[0]===t&&this.#t.delete(i)}}this.notify({type:"removed",mutation:t})}canRun(t){const i=Ul(t);if(typeof i=="string"){const r=this.#t.get(i)?.find(l=>l.state.status==="pending");return!r||r===t}else return!0}runNext(t){const i=Ul(t);return typeof i=="string"?this.#t.get(i)?.find(r=>r!==t&&r.state.isPaused)?.continue()??Promise.resolve():Promise.resolve()}clear(){ct.batch(()=>{this.#e.forEach(t=>{this.notify({type:"removed",mutation:t})}),this.#e.clear(),this.#t.clear()})}getAll(){return Array.from(this.#e)}find(t){const i={exact:!0,...t};return this.getAll().find(a=>py(i,a))}findAll(t={}){return this.getAll().filter(i=>py(t,i))}notify(t){ct.batch(()=>{this.listeners.forEach(i=>{i(t)})})}resumePausedMutations(){const t=this.getAll().filter(i=>i.state.isPaused);return ct.batch(()=>Promise.all(t.map(i=>i.continue().catch(Mt))))}};function Ul(t){return t.options.scope?.id}var BE=class extends ks{#e;#t=void 0;#n;#a;constructor(i,a){super(),this.#e=i,this.setOptions(a),this.bindMethods(),this.#i()}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(i){const a=this.options;this.options=this.#e.defaultMutationOptions(i),su(this.options,a)||this.#e.getMutationCache().notify({type:"observerOptionsUpdated",mutation:this.#n,observer:this}),a?.mutationKey&&this.options.mutationKey&&Ta(a.mutationKey)!==Ta(this.options.mutationKey)?this.reset():this.#n?.state.status==="pending"&&this.#n.setOptions(this.options)}onUnsubscribe(){this.hasListeners()||this.#n?.removeObserver(this)}onMutationUpdate(i){this.#i(),this.#r(i)}getCurrentResult(){return this.#t}reset(){this.#n?.removeObserver(this),this.#n=void 0,this.#i(),this.#r()}mutate(i,a){return this.#a=a,this.#n?.removeObserver(this),this.#n=this.#e.getMutationCache().build(this.#e,this.options),this.#n.addObserver(this),this.#n.execute(i)}#i(){const i=this.#n?.state??mS();this.#t={...i,isPending:i.status==="pending",isSuccess:i.status==="success",isError:i.status==="error",isIdle:i.status==="idle",mutate:this.mutate,reset:this.reset}}#r(i){ct.batch(()=>{if(this.#a&&this.hasListeners()){const a=this.#t.variables,r=this.#t.context,l={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};i?.type==="success"?(this.#a.onSuccess?.(i.data,a,r,l),this.#a.onSettled?.(i.data,null,a,r,l)):i?.type==="error"&&(this.#a.onError?.(i.error,a,r,l),this.#a.onSettled?.(void 0,i.error,a,r,l))}this.listeners.forEach(a=>{a(this.#t)})})}},qE=class extends ks{constructor(t={}){super(),this.config=t,this.#e=new Map}#e;build(t,i,a){const r=i.queryKey,l=i.queryHash??Lh(r,i);let u=this.get(l);return u||(u=new NE({client:t,queryKey:r,queryHash:l,options:t.defaultQueryOptions(i),state:a,defaultOptions:t.getQueryDefaults(r)}),this.add(u)),u}add(t){this.#e.has(t.queryHash)||(this.#e.set(t.queryHash,t),this.notify({type:"added",query:t}))}remove(t){const i=this.#e.get(t.queryHash);i&&(t.destroy(),i===t&&this.#e.delete(t.queryHash),this.notify({type:"removed",query:t}))}clear(){ct.batch(()=>{this.getAll().forEach(t=>{this.remove(t)})})}get(t){return this.#e.get(t)}getAll(){return[...this.#e.values()]}find(t){const i={exact:!0,...t};return this.getAll().find(a=>my(i,a))}findAll(t={}){const i=this.getAll();return Object.keys(t).length>0?i.filter(a=>my(t,a)):i}notify(t){ct.batch(()=>{this.listeners.forEach(i=>{i(t)})})}onFocus(){ct.batch(()=>{this.getAll().forEach(t=>{t.onFocus()})})}onOnline(){ct.batch(()=>{this.getAll().forEach(t=>{t.onOnline()})})}},IE=class{#e;#t;#n;#a;#i;#r;#o;#s;constructor(t={}){this.#e=t.queryCache||new qE,this.#t=t.mutationCache||new $E,this.#n=t.defaultOptions||{},this.#a=new Map,this.#i=new Map,this.#r=0}mount(){this.#r++,this.#r===1&&(this.#o=jh.subscribe(async t=>{t&&(await this.resumePausedMutations(),this.#e.onFocus())}),this.#s=ru.subscribe(async t=>{t&&(await this.resumePausedMutations(),this.#e.onOnline())}))}unmount(){this.#r--,this.#r===0&&(this.#o?.(),this.#o=void 0,this.#s?.(),this.#s=void 0)}isFetching(t){return this.#e.findAll({...t,fetchStatus:"fetching"}).length}isMutating(t){return this.#t.findAll({...t,status:"pending"}).length}getQueryData(t){const i=this.defaultQueryOptions({queryKey:t});return this.#e.get(i.queryHash)?.state.data}ensureQueryData(t){const i=this.defaultQueryOptions(t),a=this.#e.build(this,i),r=a.state.data;return r===void 0?this.fetchQuery(t):(t.revalidateIfStale&&a.isStaleByTime(Xi(i.staleTime,a))&&this.prefetchQuery(i),Promise.resolve(r))}getQueriesData(t){return this.#e.findAll(t).map(({queryKey:i,state:a})=>{const r=a.data;return[i,r]})}setQueryData(t,i,a){const r=this.defaultQueryOptions({queryKey:t}),u=this.#e.get(r.queryHash)?.state.data,f=wE(i,u);if(f!==void 0)return this.#e.build(this,r).setData(f,{...a,manual:!0})}setQueriesData(t,i,a){return ct.batch(()=>this.#e.findAll(t).map(({queryKey:r})=>[r,this.setQueryData(r,i,a)]))}getQueryState(t){const i=this.defaultQueryOptions({queryKey:t});return this.#e.get(i.queryHash)?.state}removeQueries(t){const i=this.#e;ct.batch(()=>{i.findAll(t).forEach(a=>{i.remove(a)})})}resetQueries(t,i){const a=this.#e;return ct.batch(()=>(a.findAll(t).forEach(r=>{r.reset()}),this.refetchQueries({type:"active",...t},i)))}cancelQueries(t,i={}){const a={revert:!0,...i},r=ct.batch(()=>this.#e.findAll(t).map(l=>l.cancel(a)));return Promise.all(r).then(Mt).catch(Mt)}invalidateQueries(t,i={}){return ct.batch(()=>(this.#e.findAll(t).forEach(a=>{a.invalidate()}),t?.refetchType==="none"?Promise.resolve():this.refetchQueries({...t,type:t?.refetchType??t?.type??"active"},i)))}refetchQueries(t,i={}){const a={...i,cancelRefetch:i.cancelRefetch??!0},r=ct.batch(()=>this.#e.findAll(t).filter(l=>!l.isDisabled()&&!l.isStatic()).map(l=>{let u=l.fetch(void 0,a);return a.throwOnError||(u=u.catch(Mt)),l.state.fetchStatus==="paused"?Promise.resolve():u}));return Promise.all(r).then(Mt)}fetchQuery(t){const i=this.defaultQueryOptions(t);i.retry===void 0&&(i.retry=!1);const a=this.#e.build(this,i);return a.isStaleByTime(Xi(i.staleTime,a))?a.fetch(i):Promise.resolve(a.state.data)}prefetchQuery(t){return this.fetchQuery(t).then(Mt).catch(Mt)}fetchInfiniteQuery(t){return t.behavior=wy(t.pages),this.fetchQuery(t)}prefetchInfiniteQuery(t){return this.fetchInfiniteQuery(t).then(Mt).catch(Mt)}ensureInfiniteQueryData(t){return t.behavior=wy(t.pages),this.ensureQueryData(t)}resumePausedMutations(){return ru.isOnline()?this.#t.resumePausedMutations():Promise.resolve()}getQueryCache(){return this.#e}getMutationCache(){return this.#t}getDefaultOptions(){return this.#n}setDefaultOptions(t){this.#n=t}setQueryDefaults(t,i){this.#a.set(Ta(t),{queryKey:t,defaultOptions:i})}getQueryDefaults(t){const i=[...this.#a.values()],a={};return i.forEach(r=>{so(t,r.queryKey)&&Object.assign(a,r.defaultOptions)}),a}setMutationDefaults(t,i){this.#i.set(Ta(t),{mutationKey:t,defaultOptions:i})}getMutationDefaults(t){const i=[...this.#i.values()],a={};return i.forEach(r=>{so(t,r.mutationKey)&&Object.assign(a,r.defaultOptions)}),a}defaultQueryOptions(t){if(t._defaulted)return t;const i={...this.#n.queries,...this.getQueryDefaults(t.queryKey),...t,_defaulted:!0};return i.queryHash||(i.queryHash=Lh(i.queryKey,i)),i.refetchOnReconnect===void 0&&(i.refetchOnReconnect=i.networkMode!=="always"),i.throwOnError===void 0&&(i.throwOnError=!!i.suspense),!i.networkMode&&i.persister&&(i.networkMode="offlineFirst"),i.queryFn===Uh&&(i.enabled=!1),i}defaultMutationOptions(t){return t?._defaulted?t:{...this.#n.mutations,...t?.mutationKey&&this.getMutationDefaults(t.mutationKey),...t,_defaulted:!0}}clear(){this.#e.clear(),this.#t.clear()}},ud={exports:{}},Se={};var Cy;function FE(){if(Cy)return Se;Cy=1;var t=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),a=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),l=Symbol.for("react.profiler"),u=Symbol.for("react.consumer"),f=Symbol.for("react.context"),d=Symbol.for("react.forward_ref"),m=Symbol.for("react.suspense"),p=Symbol.for("react.memo"),v=Symbol.for("react.lazy"),g=Symbol.for("react.activity"),S=Symbol.iterator;function b(O){return O===null||typeof O!="object"?null:(O=S&&O[S]||O["@@iterator"],typeof O=="function"?O:null)}var E={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},w=Object.assign,x={};function A(O,H,te){this.props=O,this.context=H,this.refs=x,this.updater=te||E}A.prototype.isReactComponent={},A.prototype.setState=function(O,H){if(typeof O!="object"&&typeof O!="function"&&O!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,O,H,"setState")},A.prototype.forceUpdate=function(O){this.updater.enqueueForceUpdate(this,O,"forceUpdate")};function D(){}D.prototype=A.prototype;function U(O,H,te){this.props=O,this.context=H,this.refs=x,this.updater=te||E}var N=U.prototype=new D;N.constructor=U,w(N,A.prototype),N.isPureReactComponent=!0;var k=Array.isArray;function G(){}var M={H:null,A:null,T:null,S:null},B=Object.prototype.hasOwnProperty;function Q(O,H,te){var ae=te.ref;return{$$typeof:t,type:O,key:H,ref:ae!==void 0?ae:null,props:te}}function P(O,H){return Q(O.type,H,O.props)}function ee(O){return typeof O=="object"&&O!==null&&O.$$typeof===t}function ne(O){var H={"=":"=0",":":"=2"};return"$"+O.replace(/[=:]/g,function(te){return H[te]})}var X=/\/+/g;function Z(O,H){return typeof O=="object"&&O!==null&&O.key!=null?ne(""+O.key):H.toString(36)}function oe(O){switch(O.status){case"fulfilled":return O.value;case"rejected":throw O.reason;default:switch(typeof O.status=="string"?O.then(G,G):(O.status="pending",O.then(function(H){O.status==="pending"&&(O.status="fulfilled",O.value=H)},function(H){O.status==="pending"&&(O.status="rejected",O.reason=H)})),O.status){case"fulfilled":return O.value;case"rejected":throw O.reason}}throw O}function j(O,H,te,ae,le){var fe=typeof O;(fe==="undefined"||fe==="boolean")&&(O=null);var ge=!1;if(O===null)ge=!0;else switch(fe){case"bigint":case"string":case"number":ge=!0;break;case"object":switch(O.$$typeof){case t:case i:ge=!0;break;case v:return ge=O._init,j(ge(O._payload),H,te,ae,le)}}if(ge)return le=le(O),ge=ae===""?"."+Z(O,0):ae,k(le)?(te="",ge!=null&&(te=ge.replace(X,"$&/")+"/"),j(le,H,te,"",function(xt){return xt})):le!=null&&(ee(le)&&(le=P(le,te+(le.key==null||O&&O.key===le.key?"":(""+le.key).replace(X,"$&/")+"/")+ge)),H.push(le)),1;ge=0;var Fe=ae===""?".":ae+":";if(k(O))for(var Te=0;Te{const i=_.useContext(pS);if(!i)throw new Error("No QueryClient set, use QueryClientProvider to set one");return i},HE=({client:t,children:i})=>(_.useEffect(()=>(t.mount(),()=>{t.unmount()}),[t]),R.jsx(pS.Provider,{value:t,children:i})),gS=_.createContext(!1),VE=()=>_.useContext(gS);gS.Provider;function kE(){let t=!1;return{clearReset:()=>{t=!1},reset:()=>{t=!0},isReset:()=>t}}var QE=_.createContext(kE()),YE=()=>_.useContext(QE),GE=(t,i)=>{(t.suspense||t.throwOnError||t.experimental_prefetchInRender)&&(i.isReset()||(t.retryOnMount=!1))},KE=t=>{_.useEffect(()=>{t.clearReset()},[t])},XE=({result:t,errorResetBoundary:i,throwOnError:a,query:r,suspense:l})=>t.isError&&!i.isReset()&&!t.isFetching&&r&&(l&&t.data===void 0||uS(a,[t.error,r])),ZE=(t,i)=>i.state.data===void 0,JE=t=>{if(t.suspense){const a=l=>l==="static"?l:Math.max(l??1e3,1e3),r=t.staleTime;t.staleTime=typeof r=="function"?(...l)=>a(r(...l)):a(r),typeof t.gcTime=="number"&&(t.gcTime=Math.max(t.gcTime,1e3))}},WE=(t,i)=>t.isLoading&&t.isFetching&&!i,eC=(t,i)=>t?.suspense&&i.isPending,xy=(t,i,a)=>i.fetchOptimistic(t).catch(()=>{a.clearReset()});function tC(t,i,a){const r=VE(),l=YE(),u=zh(),f=u.defaultQueryOptions(t);u.getDefaultOptions().queries?._experimental_beforeQuery?.(f),f._optimisticResults=r?"isRestoring":"optimistic",JE(f),GE(f,l),KE(l);const d=!u.getQueryCache().get(f.queryHash),[m]=_.useState(()=>new i(u,f)),p=m.getOptimisticResult(f),v=!r&&t.subscribed!==!1;if(_.useSyncExternalStore(_.useCallback(g=>{const S=v?m.subscribe(ct.batchCalls(g)):Mt;return m.updateResult(),S},[m,v]),()=>m.getCurrentResult(),()=>m.getCurrentResult()),_.useEffect(()=>{m.setOptions(f)},[f,m]),eC(f,p))throw xy(f,m,l);if(XE({result:p,errorResetBoundary:l,throwOnError:f.throwOnError,query:u.getQueryCache().get(f.queryHash),suspense:f.suspense}))throw p.error;return u.getDefaultOptions().queries?._experimental_afterQuery?.(f,p),f.experimental_prefetchInRender&&!Aa&&WE(p,r)&&(d?xy(f,m,l):u.getQueryCache().get(f.queryHash)?.promise)?.catch(Mt).finally(()=>{m.updateResult()}),f.notifyOnChangeProps?p:m.trackResult(p)}function vS(t,i){return tC({...t,enabled:!0,suspense:!0,throwOnError:ZE,placeholderData:void 0},LE)}function T7(t){return t}function nC(t,i){const a=zh(),[r]=_.useState(()=>new BE(a,t));_.useEffect(()=>{r.setOptions(t)},[r,t]);const l=_.useSyncExternalStore(_.useCallback(f=>r.subscribe(ct.batchCalls(f)),[r]),()=>r.getCurrentResult(),()=>r.getCurrentResult()),u=_.useCallback((f,d)=>{r.mutate(f,d).catch(Mt)},[r]);if(l.error&&uS(r.options.throwOnError,[l.error]))throw l.error;return{...l,mutate:u,mutateAsync:l.mutate}}var iC="Invariant failed";function Si(t,i){if(!t)throw new Error(iC)}const Ds=new WeakMap,Xl=new WeakMap,ou={current:[]};let cd=!1,eo=0;const Xr=new Set,jl=new Map;function yS(t){const i=Array.from(t).sort((a,r)=>a instanceof Ms&&a.options.deps.includes(r)?1:r instanceof Ms&&r.options.deps.includes(a)?-1:0);for(const a of i){if(ou.current.includes(a))continue;ou.current.push(a),a.recompute();const r=Xl.get(a);if(r)for(const l of r){const u=Ds.get(l);u&&yS(u)}}}function aC(t){t.listeners.forEach(i=>i({prevVal:t.prevState,currentVal:t.state}))}function sC(t){t.listeners.forEach(i=>i({prevVal:t.prevState,currentVal:t.state}))}function SS(t){if(eo>0&&!jl.has(t)&&jl.set(t,t.prevState),Xr.add(t),!(eo>0)&&!cd)try{for(cd=!0;Xr.size>0;){const i=Array.from(Xr);Xr.clear();for(const a of i){const r=jl.get(a)??a.prevState;a.prevState=r,aC(a)}for(const a of i){const r=Ds.get(a);r&&(ou.current.push(a),yS(r))}for(const a of i){const r=Ds.get(a);if(r)for(const l of r)sC(l)}}}finally{cd=!1,ou.current=[],jl.clear()}}function to(t){eo++;try{t()}finally{if(eo--,eo===0){const i=Array.from(Xr)[0];i&&SS(i)}}}function rC(t){return typeof t=="function"}class ah{constructor(i,a){this.listeners=new Set,this.subscribe=r=>{var l,u;this.listeners.add(r);const f=(u=(l=this.options)==null?void 0:l.onSubscribe)==null?void 0:u.call(l,r,this);return()=>{this.listeners.delete(r),f?.()}},this.prevState=i,this.state=i,this.options=a}setState(i){var a,r,l;this.prevState=this.state,(a=this.options)!=null&&a.updateFn?this.state=this.options.updateFn(this.prevState)(i):rC(i)?this.state=i(this.prevState):this.state=i,(l=(r=this.options)==null?void 0:r.onUpdate)==null||l.call(r),SS(this)}}class Ms{constructor(i){this.listeners=new Set,this._subscriptions=[],this.lastSeenDepValues=[],this.getDepVals=()=>{const a=[],r=[];for(const l of this.options.deps)a.push(l.prevState),r.push(l.state);return this.lastSeenDepValues=r,{prevDepVals:a,currDepVals:r,prevVal:this.prevState??void 0}},this.recompute=()=>{var a,r;this.prevState=this.state;const{prevDepVals:l,currDepVals:u,prevVal:f}=this.getDepVals();this.state=this.options.fn({prevDepVals:l,currDepVals:u,prevVal:f}),(r=(a=this.options).onUpdate)==null||r.call(a)},this.checkIfRecalculationNeededDeeply=()=>{for(const u of this.options.deps)u instanceof Ms&&u.checkIfRecalculationNeededDeeply();let a=!1;const r=this.lastSeenDepValues,{currDepVals:l}=this.getDepVals();for(let u=0;u(this.registerOnGraph(),this.checkIfRecalculationNeededDeeply(),()=>{this.unregisterFromGraph();for(const a of this._subscriptions)a()}),this.subscribe=a=>{var r,l;this.listeners.add(a);const u=(l=(r=this.options).onSubscribe)==null?void 0:l.call(r,a,this);return()=>{this.listeners.delete(a),u?.()}},this.options=i,this.state=i.fn({prevDepVals:void 0,prevVal:void 0,currDepVals:this.getDepVals().currDepVals})}registerOnGraph(i=this.options.deps){for(const a of i)if(a instanceof Ms)a.registerOnGraph(),this.registerOnGraph(a.options.deps);else if(a instanceof ah){let r=Ds.get(a);r||(r=new Set,Ds.set(a,r)),r.add(this);let l=Xl.get(this);l||(l=new Set,Xl.set(this,l)),l.add(a)}}unregisterFromGraph(i=this.options.deps){for(const a of i)if(a instanceof Ms)this.unregisterFromGraph(a.options.deps);else if(a instanceof ah){const r=Ds.get(a);r&&r.delete(this);const l=Xl.get(this);l&&l.delete(a)}}}const Zi="__TSR_index",Ay="popstate",Ty="beforeunload";function bS(t){let i=t.getLocation();const a=new Set,r=f=>{i=t.getLocation(),a.forEach(d=>d({location:i,action:f}))},l=f=>{t.notifyOnIndexChange??!0?r(f):i=t.getLocation()},u=async({task:f,navigateOpts:d,...m})=>{var p,v;if(d?.ignoreBlocker??!1){f();return}const S=((p=t.getBlockers)==null?void 0:p.call(t))??[],b=m.type==="PUSH"||m.type==="REPLACE";if(typeof document<"u"&&S.length&&b)for(const E of S){const w=ro(m.path,m.state);if(await E.blockerFn({currentLocation:i,nextLocation:w,action:m.type})){(v=t.onBlocked)==null||v.call(t);return}}f()};return{get location(){return i},get length(){return t.getLength()},subscribers:a,subscribe:f=>(a.add(f),()=>{a.delete(f)}),push:(f,d,m)=>{const p=i.state[Zi];d=sh(p+1,d),u({task:()=>{t.pushState(f,d),r({type:"PUSH"})},navigateOpts:m,type:"PUSH",path:f,state:d})},replace:(f,d,m)=>{const p=i.state[Zi];d=sh(p,d),u({task:()=>{t.replaceState(f,d),r({type:"REPLACE"})},navigateOpts:m,type:"REPLACE",path:f,state:d})},go:(f,d)=>{u({task:()=>{t.go(f),l({type:"GO",index:f})},navigateOpts:d,type:"GO"})},back:f=>{u({task:()=>{t.back(f?.ignoreBlocker??!1),l({type:"BACK"})},navigateOpts:f,type:"BACK"})},forward:f=>{u({task:()=>{t.forward(f?.ignoreBlocker??!1),l({type:"FORWARD"})},navigateOpts:f,type:"FORWARD"})},canGoBack:()=>i.state[Zi]!==0,createHref:f=>t.createHref(f),block:f=>{var d;if(!t.setBlockers)return()=>{};const m=((d=t.getBlockers)==null?void 0:d.call(t))??[];return t.setBlockers([...m,f]),()=>{var p,v;const g=((p=t.getBlockers)==null?void 0:p.call(t))??[];(v=t.setBlockers)==null||v.call(t,g.filter(S=>S!==f))}},flush:()=>{var f;return(f=t.flush)==null?void 0:f.call(t)},destroy:()=>{var f;return(f=t.destroy)==null?void 0:f.call(t)},notify:r}}function sh(t,i){i||(i={});const a=$h();return{...i,key:a,__TSR_key:a,[Zi]:t}}function oC(t){var i,a;const r=typeof document<"u"?window:void 0,l=r.history.pushState,u=r.history.replaceState;let f=[];const d=()=>f,m=P=>f=P,p=(P=>P),v=(()=>ro(`${r.location.pathname}${r.location.search}${r.location.hash}`,r.history.state));if(!((i=r.history.state)!=null&&i.__TSR_key)&&!((a=r.history.state)!=null&&a.key)){const P=$h();r.history.replaceState({[Zi]:0,key:P,__TSR_key:P},"")}let g=v(),S,b=!1,E=!1,w=!1,x=!1;const A=()=>g;let D,U;const N=()=>{D&&(Q._ignoreSubscribers=!0,(D.isPush?r.history.pushState:r.history.replaceState)(D.state,"",D.href),Q._ignoreSubscribers=!1,D=void 0,U=void 0,S=void 0)},k=(P,ee,ne)=>{const X=p(ee);U||(S=g),g=ro(ee,ne),D={href:X,state:ne,isPush:D?.isPush||P==="push"},U||(U=Promise.resolve().then(()=>N()))},G=P=>{g=v(),Q.notify({type:P})},M=async()=>{if(E){E=!1;return}const P=v(),ee=P.state[Zi]-g.state[Zi],ne=ee===1,X=ee===-1,Z=!ne&&!X||b;b=!1;const oe=Z?"GO":X?"BACK":"FORWARD",j=Z?{type:"GO",index:ee}:{type:X?"BACK":"FORWARD"};if(w)w=!1;else{const $=d();if(typeof document<"u"&&$.length){for(const q of $)if(await q.blockerFn({currentLocation:g,nextLocation:P,action:oe})){E=!0,r.history.go(1),Q.notify(j);return}}}g=v(),Q.notify(j)},B=P=>{if(x){x=!1;return}let ee=!1;const ne=d();if(typeof document<"u"&&ne.length)for(const X of ne){const Z=X.enableBeforeUnload??!0;if(Z===!0){ee=!0;break}if(typeof Z=="function"&&Z()===!0){ee=!0;break}}if(ee)return P.preventDefault(),P.returnValue=""},Q=bS({getLocation:A,getLength:()=>r.history.length,pushState:(P,ee)=>k("push",P,ee),replaceState:(P,ee)=>k("replace",P,ee),back:P=>(P&&(w=!0),x=!0,r.history.back()),forward:P=>{P&&(w=!0),x=!0,r.history.forward()},go:P=>{b=!0,r.history.go(P)},createHref:P=>p(P),flush:N,destroy:()=>{r.history.pushState=l,r.history.replaceState=u,r.removeEventListener(Ty,B,{capture:!0}),r.removeEventListener(Ay,M)},onBlocked:()=>{S&&g!==S&&(g=S)},getBlockers:d,setBlockers:m,notifyOnIndexChange:!1});return r.addEventListener(Ty,B,{capture:!0}),r.addEventListener(Ay,M),r.history.pushState=function(...P){const ee=l.apply(r.history,P);return Q._ignoreSubscribers||G("PUSH"),ee},r.history.replaceState=function(...P){const ee=u.apply(r.history,P);return Q._ignoreSubscribers||G("REPLACE"),ee},Q}function lC(t={initialEntries:["/"]}){const i=t.initialEntries;let a=t.initialIndex?Math.min(Math.max(t.initialIndex,0),i.length-1):i.length-1;const r=i.map((u,f)=>sh(f,void 0));return bS({getLocation:()=>ro(i[a],r[a]),getLength:()=>i.length,pushState:(u,f)=>{a{r[a]=f,i[a]=u},back:()=>{a=Math.max(a-1,0)},forward:()=>{a=Math.min(a+1,i.length-1)},go:u=>{a=Math.min(Math.max(a+u,0),i.length-1)},createHref:u=>u})}function ro(t,i){const a=t.indexOf("#"),r=t.indexOf("?"),l=$h();return{href:t,pathname:t.substring(0,a>0?r>0?Math.min(a,r):a:r>0?r:t.length),hash:a>-1?t.substring(a):"",search:r>-1?t.slice(r,a===-1?void 0:a):"",state:i||{[Zi]:0,key:l,__TSR_key:l}}}function $h(){return(Math.random()+1).toString(36).substring(7)}function rh(t){return t[t.length-1]}function uC(t){return typeof t=="function"}function Ea(t,i){return uC(t)?t(i):t}const cC=Object.prototype.hasOwnProperty;function Sn(t,i){if(t===i)return t;const a=i,r=My(t)&&My(a);if(!r&&!(lu(t)&&lu(a)))return a;const l=r?t:Oy(t);if(!l)return a;const u=r?a:Oy(a);if(!u)return a;const f=l.length,d=u.length,m=r?new Array(d):{};let p=0;for(let v=0;v"u")return!0;const a=i.prototype;return!(!Dy(a)||!a.hasOwnProperty("isPrototypeOf"))}function Dy(t){return Object.prototype.toString.call(t)==="[object Object]"}function My(t){return Array.isArray(t)&&t.length===Object.keys(t).length}function Ca(t,i,a){if(t===i)return!0;if(typeof t!=typeof i)return!1;if(Array.isArray(t)&&Array.isArray(i)){if(t.length!==i.length)return!1;for(let r=0,l=t.length;rl||!Ca(t[f],i[f],a)))return!1;return l===u}return!1}function js(t){let i,a;const r=new Promise((l,u)=>{i=l,a=u});return r.status="pending",r.resolve=l=>{r.status="resolved",r.value=l,i(l),t?.(l)},r.reject=l=>{r.status="rejected",a(l)},r}function fC(t){return typeof t?.message!="string"?!1:t.message.startsWith("Failed to fetch dynamically imported module")||t.message.startsWith("error loading dynamically imported module")||t.message.startsWith("Importing a module script failed")}function Ji(t){return!!(t&&typeof t=="object"&&typeof t.then=="function")}const Fn=0,Oa=1,Ps=2,zs=3;function vi(t){return Bh(t.filter(i=>i!==void 0).join("/"))}function Bh(t){return t.replace(/\/{2,}/g,"/")}function qh(t){return t==="/"?t:t.replace(/^\/{1,}/,"")}function $s(t){return t==="/"?t:t.replace(/\/{1,}$/,"")}function fd(t){return $s(qh(t))}function uu(t,i){return t?.endsWith("/")&&t!=="/"&&t!==`${i}/`?t.slice(0,-1):t}function dC(t,i,a){return uu(t,a)===uu(i,a)}function hC(t){const{type:i,value:a}=t;if(i===Fn)return a;const{prefixSegment:r,suffixSegment:l}=t;if(i===Oa){const u=a.substring(1);if(r&&l)return`${r}{$${u}}${l}`;if(r)return`${r}{$${u}}`;if(l)return`{$${u}}${l}`}if(i===zs){const u=a.substring(1);return r&&l?`${r}{-$${u}}${l}`:r?`${r}{-$${u}}`:l?`{-$${u}}${l}`:`{-$${u}}`}if(i===Ps){if(r&&l)return`${r}{$}${l}`;if(r)return`${r}{$}`;if(l)return`{$}${l}`}return a}function mC({basepath:t,base:i,to:a,trailingSlash:r="never",caseSensitive:l,parseCache:u}){var f;i=cu(t,i,l),a=cu(t,a,l);let d=Bs(i,u).slice();const m=Bs(a,u);d.length>1&&((f=rh(d))==null?void 0:f.value)==="/"&&d.pop();for(let g=0,S=m.length;g1&&(rh(d).value==="/"?r==="never"&&d.pop():r==="always"&&d.push({type:Fn,value:"/"}));const p=d.map(hC);return vi([t,...p])}const Bs=(t,i)=>{if(!t)return[];const a=i?.get(t);if(a)return a;const r=bC(t);return i?.set(t,r),r},pC=/^\$.{1,}$/,gC=/^(.*?)\{(\$[a-zA-Z_$][a-zA-Z0-9_$]*)\}(.*)$/,vC=/^(.*?)\{-(\$[a-zA-Z_$][a-zA-Z0-9_$]*)\}(.*)$/,yC=/^\$$/,SC=/^(.*?)\{\$\}(.*)$/;function bC(t){t=Bh(t);const i=[];if(t.slice(0,1)==="/"&&(t=t.substring(1),i.push({type:Fn,value:"/"})),!t)return i;const a=t.split("/").filter(Boolean);return i.push(...a.map(r=>{const l=r.match(SC);if(l){const d=l[1],m=l[2];return{type:Ps,value:"$",prefixSegment:d||void 0,suffixSegment:m||void 0}}const u=r.match(vC);if(u){const d=u[1],m=u[2],p=u[3];return{type:zs,value:m,prefixSegment:d||void 0,suffixSegment:p||void 0}}const f=r.match(gC);if(f){const d=f[1],m=f[2],p=f[3];return{type:Oa,value:""+m,prefixSegment:d||void 0,suffixSegment:p||void 0}}if(pC.test(r)){const d=r.substring(1);return{type:Oa,value:"$"+d,prefixSegment:void 0,suffixSegment:void 0}}return yC.test(r)?{type:Ps,value:"$",prefixSegment:void 0,suffixSegment:void 0}:{type:Fn,value:r.includes("%25")?r.split("%25").map(d=>decodeURI(d)).join("%25"):decodeURI(r)}})),t.slice(-1)==="/"&&(t=t.substring(1),i.push({type:Fn,value:"/"})),i}function Pl({path:t,params:i,leaveWildcards:a,leaveParams:r,decodeCharMap:l,parseCache:u}){const f=Bs(t,u);function d(g){const S=i[g],b=typeof S=="string";return g==="*"||g==="_splat"?b?encodeURI(S):S:b?_C(S,l):S}let m=!1;const p={},v=vi(f.map(g=>{if(g.type===Fn)return g.value;if(g.type===Ps){p._splat=i._splat,p["*"]=i._splat;const S=g.prefixSegment||"",b=g.suffixSegment||"";if(!("_splat"in i))return m=!0,a?`${S}${g.value}${b}`:S||b?`${S}${b}`:void 0;const E=d("_splat");return a?`${S}${g.value}${E??""}${b}`:`${S}${E}${b}`}if(g.type===Oa){const S=g.value.substring(1);!m&&!(S in i)&&(m=!0),p[S]=i[S];const b=g.prefixSegment||"",E=g.suffixSegment||"";if(r){const w=d(g.value);return`${b}${g.value}${w??""}${E}`}return`${b}${d(S)??"undefined"}${E}`}if(g.type===zs){const S=g.value.substring(1),b=g.prefixSegment||"",E=g.suffixSegment||"";if(!(S in i)||i[S]==null)return a?`${b}${S}${E}`:b||E?`${b}${E}`:void 0;if(p[S]=i[S],r){const w=d(g.value);return`${b}${g.value}${w??""}${E}`}return a?`${b}${S}${d(S)??""}${E}`:`${b}${d(S)??""}${E}`}return g.value}));return{usedParams:p,interpolatedPath:v,isMissingParams:m}}function _C(t,i){let a=encodeURIComponent(t);if(i)for(const[r,l]of i)a=a.replaceAll(r,l);return a}function oh(t,i,a,r){const l=wC(t,i,a,r);if(!(a.to&&!l))return l??{}}function cu(t,i,a=!1){const r=a?t:t.toLowerCase(),l=a?i:i.toLowerCase();switch(!0){case r==="/":return i;case l===r:return"";case i.lengthD.value)));E&&A.startsWith(E)&&(A=A.slice(E.length)),w&&A.endsWith(w)&&(A=A.slice(0,A.length-w.length)),b=A}else b=decodeURI(vi(S.map(E=>E.value)));return a["*"]=b,a._splat=b,!0}if(g.type===Fn){if(g.value==="/"&&!v?.value){p++;continue}if(v){if(l){if(g.value!==v.value)return!1}else if(g.value.toLowerCase()!==v.value.toLowerCase())return!1;m++,p++;continue}else return!1}if(g.type===Oa){if(!v||v.value==="/")return!1;let S="",b=!1;if(g.prefixSegment||g.suffixSegment){const E=g.prefixSegment||"",w=g.suffixSegment||"",x=v.value;if(E&&!x.startsWith(E)||w&&!x.endsWith(w))return!1;let A=x;E&&A.startsWith(E)&&(A=A.slice(E.length)),w&&A.endsWith(w)&&(A=A.slice(0,A.length-w.length)),S=decodeURIComponent(A),b=!0}else S=decodeURIComponent(v.value),b=!0;b&&(a[g.value.substring(1)]=S,m++),p++;continue}if(g.type===zs){if(!v){p++;continue}if(v.value==="/"){p++;continue}let S="",b=!1;if(g.prefixSegment||g.suffixSegment){const E=g.prefixSegment||"",w=g.suffixSegment||"",x=v.value;if((!E||x.startsWith(E))&&(!w||x.endsWith(w))){let A=x;E&&A.startsWith(E)&&(A=A.slice(E.length)),w&&A.endsWith(w)&&(A=A.slice(0,A.length-w.length)),S=decodeURIComponent(A),b=!0}}else{let E=!0;for(let w=p+1;w=i.length)return a["**"]=vi(t.slice(m).map(S=>S.value)),!!r&&((f=i[i.length-1])==null?void 0:f.value)!=="/";if(p=t.length){for(let S=p;S{var u;if(r.isRoot||!r.path)return;const f=qh(r.fullPath);let d=Bs(f),m=0;for(;d.length>m+1&&((u=d[m])==null?void 0:u.value)==="/";)m++;m>0&&(d=d.slice(m));let p=0,v=!1;const g=d.map((S,b)=>{if(S.value==="/")return CC;if(S.type===Fn)return RC;let E;S.type===Oa?E=xC:S.type===zs?(E=AC,p++):E=TC;for(let w=b+1;w{const u=Math.min(r.scores.length,l.scores.length);for(let f=0;fl.parsed[f].value?1:-1;return r.index-l.index}).map((r,l)=>(r.child.rank=l,r.child))}function UC({routeTree:t,initRoute:i}){const a={},r={},l=f=>{f.forEach((d,m)=>{i?.(d,m);const p=a[d.id];if(Si(!p,`Duplicate routes found with id: ${String(d.id)}`),a[d.id]=d,!d.isRoot&&d.path){const g=$s(d.fullPath);(!r[g]||d.fullPath.endsWith("/"))&&(r[g]=d)}const v=d.children;v?.length&&l(v)})};l([t]);const u=LC(Object.values(a));return{routesById:a,routesByPath:r,flatRoutes:u}}function qs(t={}){if(t.isNotFound=!0,t.throw)throw t;return t}function Vn(t){return!!t?.isNotFound}function jC(){try{if(typeof window<"u"&&typeof window.sessionStorage=="object")return window.sessionStorage}catch{}}const fu="tsr-scroll-restoration-v1_3",PC=(t,i)=>{let a;return(...r)=>{a||(a=setTimeout(()=>{t(...r),a=null},i))}};function zC(){const t=jC();if(!t)return;const i=t.getItem(fu);let a=i?JSON.parse(i):{};return{state:a,set:r=>(a=Ea(r,a)||a,t.setItem(fu,JSON.stringify(a)))}}const dd=zC(),lh=t=>t.state.__TSR_key||t.href;function $C(t){const i=[];let a;for(;a=t.parentNode;)i.push(`${t.tagName}:nth-child(${Array.prototype.indexOf.call(a.children,t)+1})`),t=a;return`${i.reverse().join(" > ")}`.toLowerCase()}let du=!1;function _S({storageKey:t,key:i,behavior:a,shouldScrollRestoration:r,scrollToTopSelectors:l,location:u}){var f,d;let m;try{m=JSON.parse(sessionStorage.getItem(t)||"{}")}catch(g){console.error(g);return}const p=i||((f=window.history.state)==null?void 0:f.key),v=m[p];du=!0;e:{if(r&&v&&Object.keys(v).length>0){for(const b in v){const E=v[b];if(b==="window")window.scrollTo({top:E.scrollY,left:E.scrollX,behavior:a});else if(b){const w=document.querySelector(b);w&&(w.scrollLeft=E.scrollX,w.scrollTop=E.scrollY)}}break e}const g=(u??window.location).hash.split("#",2)[1];if(g){const b=((d=window.history.state)==null?void 0:d.__hashScrollIntoViewOptions)??!0;if(b){const E=document.getElementById(g);E&&E.scrollIntoView(b)}break e}const S={top:0,left:0,behavior:a};if(window.scrollTo(S),l)for(const b of l){if(b==="window")continue;const E=typeof b=="function"?b():document.querySelector(b);E&&E.scrollTo(S)}}du=!1}function BC(t,i){if(dd===void 0||((t.options.scrollRestoration??!1)&&(t.isScrollRestoring=!0),typeof document>"u"||t.isScrollRestorationSetup))return;t.isScrollRestorationSetup=!0,du=!1;const r=t.options.getScrollRestorationKey||lh;window.history.scrollRestoration="manual";const l=u=>{if(du||!t.isScrollRestoring)return;let f="";if(u.target===document||u.target===window)f="window";else{const m=u.target.getAttribute("data-scroll-restoration-id");m?f=`[data-scroll-restoration-id="${m}"]`:f=$C(u.target)}const d=r(t.state.location);dd.set(m=>{const p=m[d]||(m[d]={}),v=p[f]||(p[f]={});if(f==="window")v.scrollX=window.scrollX||0,v.scrollY=window.scrollY||0;else if(f){const g=document.querySelector(f);g&&(v.scrollX=g.scrollLeft||0,v.scrollY=g.scrollTop||0)}return m})};typeof document<"u"&&document.addEventListener("scroll",PC(l,100),!0),t.subscribe("onRendered",u=>{const f=r(u.toLocation);if(!t.resetNextScroll){t.resetNextScroll=!0;return}_S({storageKey:fu,key:f,behavior:t.options.scrollRestorationBehavior,shouldScrollRestoration:t.isScrollRestoring,scrollToTopSelectors:t.options.scrollToTopSelectors,location:t.history.location}),t.isScrollRestoring&&dd.set(d=>(d[f]||(d[f]={}),d))})}function qC(t){if(typeof document<"u"&&document.querySelector){const i=t.state.location.state.__hashScrollIntoViewOptions??!0;if(i&&t.state.location.hash!==""){const a=document.getElementById(t.state.location.hash);a&&a.scrollIntoView(i)}}}function IC(t,i=String){const a=new URLSearchParams;for(const r in t){const l=t[r];l!==void 0&&a.set(r,i(l))}return a.toString()}function hd(t){return t?t==="false"?!1:t==="true"?!0:+t*0===0&&+t+""===t?+t:t:""}function FC(t){const i=new URLSearchParams(t),a={};for(const[r,l]of i.entries()){const u=a[r];u==null?a[r]=hd(l):Array.isArray(u)?u.push(hd(l)):a[r]=[u,hd(l)]}return a}const HC=kC(JSON.parse),VC=QC(JSON.stringify,JSON.parse);function kC(t){return i=>{i[0]==="?"&&(i=i.substring(1));const a=FC(i);for(const r in a){const l=a[r];if(typeof l=="string")try{a[r]=t(l)}catch{}}return a}}function QC(t,i){const a=typeof i=="function";function r(l){if(typeof l=="object"&&l!==null)try{return t(l)}catch{}else if(a&&typeof l=="string")try{return i(l),t(l)}catch{}return l}return l=>{const u=IC(l,r);return u?`?${u}`:""}}const _n="__root__";function en(t){if(t.statusCode=t.statusCode||t.code||307,!t.reloadDocument&&typeof t.href=="string")try{new URL(t.href),t.reloadDocument=!0}catch{}const i=new Headers(t.headers);t.href&&i.get("Location")===null&&i.set("Location",t.href);const a=new Response(null,{status:t.statusCode,headers:i});if(a.options=t,t.throw)throw a;return a}function Bn(t){return t instanceof Response&&!!t.options}function YC(t){const i=new Map;let a,r;const l=u=>{u.next&&(u.prev?(u.prev.next=u.next,u.next.prev=u.prev,u.next=void 0,r&&(r.next=u,u.prev=r)):(u.next.prev=void 0,a=u.next,u.next=void 0,r&&(u.prev=r,r.next=u)),r=u)};return{get(u){const f=i.get(u);if(f)return l(f),f.value},set(u,f){if(i.size>=t&&a){const m=a;i.delete(m.key),m.next&&(a=m.next,m.next.prev=void 0),m===r&&(r=void 0)}const d=i.get(u);if(d)d.value=f,l(d);else{const m={key:u,value:f,prev:r};r&&(r.next=m),r=m,a||(a=m),i.set(u,m)}}}}const Zl=t=>{var i;if(!t.rendered)return t.rendered=!0,(i=t.onReady)==null?void 0:i.call(t)},Au=(t,i)=>!!(t.preload&&!t.router.state.matches.some(a=>a.id===i)),wS=(t,i)=>{var a;const r=t.router.routesById[i.routeId??""]??t.router.routeTree;!r.options.notFoundComponent&&((a=t.router.options)!=null&&a.defaultNotFoundComponent)&&(r.options.notFoundComponent=t.router.options.defaultNotFoundComponent),Si(r.options.notFoundComponent);const l=t.matches.find(u=>u.routeId===r.id);Si(l,"Could not find match for route: "+r.id),t.updateMatch(l.id,u=>({...u,status:"notFound",error:i,isFetching:!1})),i.routerCode==="BEFORE_LOAD"&&r.parentRoute&&(i.routeId=r.parentRoute.id,wS(t,i))},Gi=(t,i,a)=>{var r,l,u;if(!(!Bn(a)&&!Vn(a))){if(Bn(a)&&a.redirectHandled&&!a.options.reloadDocument)throw a;if(i){(r=i._nonReactive.beforeLoadPromise)==null||r.resolve(),(l=i._nonReactive.loaderPromise)==null||l.resolve(),i._nonReactive.beforeLoadPromise=void 0,i._nonReactive.loaderPromise=void 0;const f=Bn(a)?"redirected":"notFound";t.updateMatch(i.id,d=>({...d,status:f,isFetching:!1,error:a})),Vn(a)&&!a.routeId&&(a.routeId=i.routeId),(u=i._nonReactive.loadPromise)==null||u.resolve()}throw Bn(a)?(t.rendered=!0,a.options._fromLocation=t.location,a.redirectHandled=!0,a=t.router.resolveRedirect(a),a):(wS(t,a),a)}},ES=(t,i)=>{const a=t.router.getMatch(i);return!!(!t.router.isServer&&a._nonReactive.dehydrated||t.router.isServer&&a.ssr===!1)},Fr=(t,i,a,r)=>{var l,u;const{id:f,routeId:d}=t.matches[i],m=t.router.looseRoutesById[d];if(a instanceof Promise)throw a;a.routerCode=r,t.firstBadMatchIndex??(t.firstBadMatchIndex=i),Gi(t,t.router.getMatch(f),a);try{(u=(l=m.options).onError)==null||u.call(l,a)}catch(p){a=p,Gi(t,t.router.getMatch(f),a)}t.updateMatch(f,p=>{var v,g;return(v=p._nonReactive.beforeLoadPromise)==null||v.resolve(),p._nonReactive.beforeLoadPromise=void 0,(g=p._nonReactive.loadPromise)==null||g.resolve(),{...p,error:a,status:"error",isFetching:!1,updatedAt:Date.now(),abortController:new AbortController}})},GC=(t,i,a,r)=>{var l;const u=t.router.getMatch(i),f=(l=t.matches[a-1])==null?void 0:l.id,d=f?t.router.getMatch(f):void 0;if(t.router.isShell()){u.ssr=i===_n;return}if(d?.ssr===!1){u.ssr=!1;return}const m=E=>E===!0&&d?.ssr==="data-only"?"data-only":E,p=t.router.options.defaultSsr??!0;if(r.options.ssr===void 0){u.ssr=m(p);return}if(typeof r.options.ssr!="function"){u.ssr=m(r.options.ssr);return}const{search:v,params:g}=u,S={search:zl(v,u.searchError),params:zl(g,u.paramsError),location:t.location,matches:t.matches.map(E=>({index:E.index,pathname:E.pathname,fullPath:E.fullPath,staticData:E.staticData,id:E.id,routeId:E.routeId,search:zl(E.search,E.searchError),params:zl(E.params,E.paramsError),ssr:E.ssr}))},b=r.options.ssr(S);if(Ji(b))return b.then(E=>{u.ssr=m(E??p)});u.ssr=m(b??p)},CS=(t,i,a,r)=>{var l;if(r._nonReactive.pendingTimeout!==void 0)return;const u=a.options.pendingMs??t.router.options.defaultPendingMs;if(!!(t.onReady&&!t.router.isServer&&!Au(t,i)&&(a.options.loader||a.options.beforeLoad||AS(a))&&typeof u=="number"&&u!==1/0&&(a.options.pendingComponent??((l=t.router.options)==null?void 0:l.defaultPendingComponent)))){const d=setTimeout(()=>{Zl(t)},u);r._nonReactive.pendingTimeout=d}},KC=(t,i,a)=>{const r=t.router.getMatch(i);if(!r._nonReactive.beforeLoadPromise&&!r._nonReactive.loaderPromise)return;CS(t,i,a,r);const l=()=>{const u=t.router.getMatch(i);u.preload&&(u.status==="redirected"||u.status==="notFound")&&Gi(t,u,u.error)};return r._nonReactive.beforeLoadPromise?r._nonReactive.beforeLoadPromise.then(l):l()},XC=(t,i,a,r)=>{var l;const u=t.router.getMatch(i),f=u._nonReactive.loadPromise;u._nonReactive.loadPromise=js(()=>{f?.resolve()});const{paramsError:d,searchError:m}=u;d&&Fr(t,a,d,"PARSE_PARAMS"),m&&Fr(t,a,m,"VALIDATE_SEARCH"),CS(t,i,r,u);const p=new AbortController,v=(l=t.matches[a-1])==null?void 0:l.id,g=v?t.router.getMatch(v):void 0,b={...g?.context??t.router.options.context??void 0,...u.__routeContext};let E=!1;const w=()=>{E||(E=!0,t.updateMatch(i,B=>({...B,isFetching:"beforeLoad",fetchCount:B.fetchCount+1,abortController:p,context:b})))},x=()=>{var B;(B=u._nonReactive.beforeLoadPromise)==null||B.resolve(),u._nonReactive.beforeLoadPromise=void 0,t.updateMatch(i,Q=>({...Q,isFetching:!1}))};if(!r.options.beforeLoad){to(()=>{w(),x()});return}u._nonReactive.beforeLoadPromise=js();const{search:A,params:D,cause:U}=u,N=Au(t,i),k={search:A,abortController:p,params:D,preload:N,context:b,location:t.location,navigate:B=>t.router.navigate({...B,_fromLocation:t.location}),buildLocation:t.router.buildLocation,cause:N?"preload":U,matches:t.matches},G=B=>{if(B===void 0){to(()=>{w(),x()});return}(Bn(B)||Vn(B))&&(w(),Fr(t,a,B,"BEFORE_LOAD")),to(()=>{w(),t.updateMatch(i,Q=>({...Q,__beforeLoadContext:B,context:{...Q.context,...B}})),x()})};let M;try{if(M=r.options.beforeLoad(k),Ji(M))return w(),M.catch(B=>{Fr(t,a,B,"BEFORE_LOAD")}).then(G)}catch(B){w(),Fr(t,a,B,"BEFORE_LOAD")}G(M)},ZC=(t,i)=>{const{id:a,routeId:r}=t.matches[i],l=t.router.looseRoutesById[r],u=()=>{if(t.router.isServer){const m=GC(t,a,i,l);if(Ji(m))return m.then(f)}return f()},f=()=>{if(ES(t,a))return;const m=KC(t,a,l);return Ji(m)?m.then(d):d()},d=()=>XC(t,a,i,l);return u()},no=(t,i,a)=>{var r,l,u,f,d,m;const p=t.router.getMatch(i);if(!p||!a.options.head&&!a.options.scripts&&!a.options.headers)return;const v={matches:t.matches,match:p,params:p.params,loaderData:p.loaderData};return Promise.all([(l=(r=a.options).head)==null?void 0:l.call(r,v),(f=(u=a.options).scripts)==null?void 0:f.call(u,v),(m=(d=a.options).headers)==null?void 0:m.call(d,v)]).then(([g,S,b])=>{const E=g?.meta,w=g?.links,x=g?.scripts,A=g?.styles;return{meta:E,links:w,headScripts:x,headers:b,scripts:S,styles:A}})},RS=(t,i,a,r)=>{const l=t.matchPromises[a-1],{params:u,loaderDeps:f,abortController:d,context:m,cause:p}=t.router.getMatch(i),v=Au(t,i);return{params:u,deps:f,preload:!!v,parentMatchPromise:l,abortController:d,context:m,location:t.location,navigate:g=>t.router.navigate({...g,_fromLocation:t.location}),cause:v?"preload":p,route:r}},jy=async(t,i,a,r)=>{var l,u,f,d;try{const m=t.router.getMatch(i);try{(!t.router.isServer||m.ssr===!0)&&xS(r);const p=(u=(l=r.options).loader)==null?void 0:u.call(l,RS(t,i,a,r)),v=r.options.loader&&Ji(p);if(!!(v||r._lazyPromise||r._componentsPromise||r.options.head||r.options.scripts||r.options.headers||m._nonReactive.minPendingPromise)&&t.updateMatch(i,w=>({...w,isFetching:"loader"})),r.options.loader){const w=v?await p:p;Gi(t,t.router.getMatch(i),w),w!==void 0&&t.updateMatch(i,x=>({...x,loaderData:w}))}r._lazyPromise&&await r._lazyPromise;const S=no(t,i,r),b=S?await S:void 0,E=m._nonReactive.minPendingPromise;E&&await E,r._componentsPromise&&await r._componentsPromise,t.updateMatch(i,w=>({...w,error:void 0,status:"success",isFetching:!1,updatedAt:Date.now(),...b}))}catch(p){let v=p;const g=m._nonReactive.minPendingPromise;g&&await g,Gi(t,t.router.getMatch(i),p);try{(d=(f=r.options).onError)==null||d.call(f,p)}catch(E){v=E,Gi(t,t.router.getMatch(i),E)}const S=no(t,i,r),b=S?await S:void 0;t.updateMatch(i,E=>({...E,error:v,status:"error",isFetching:!1,...b}))}}catch(m){const p=t.router.getMatch(i);if(p){const v=no(t,i,r);if(v){const g=await v;t.updateMatch(i,S=>({...S,...g}))}p._nonReactive.loaderPromise=void 0}Gi(t,p,m)}},JC=async(t,i)=>{var a,r;const{id:l,routeId:u}=t.matches[i];let f=!1,d=!1;const m=t.router.looseRoutesById[u];if(ES(t,l)){if(t.router.isServer){const g=no(t,l,m);if(g){const S=await g;t.updateMatch(l,b=>({...b,...S}))}return t.router.getMatch(l)}}else{const g=t.router.getMatch(l);if(g._nonReactive.loaderPromise){if(g.status==="success"&&!t.sync&&!g.preload)return g;await g._nonReactive.loaderPromise;const S=t.router.getMatch(l);S.error&&Gi(t,S,S.error)}else{const S=Date.now()-g.updatedAt,b=Au(t,l),E=b?m.options.preloadStaleTime??t.router.options.defaultPreloadStaleTime??3e4:m.options.staleTime??t.router.options.defaultStaleTime??0,w=m.options.shouldReload,x=typeof w=="function"?w(RS(t,l,i,m)):w,A=!!b&&!t.router.state.matches.some(k=>k.id===l),D=t.router.getMatch(l);D._nonReactive.loaderPromise=js(),A!==D.preload&&t.updateMatch(l,k=>({...k,preload:A}));const{status:U,invalid:N}=D;if(f=U==="success"&&(N||(x??S>E)),!(b&&m.options.preload===!1))if(f&&!t.sync)d=!0,(async()=>{var k,G;try{await jy(t,l,i,m);const M=t.router.getMatch(l);(k=M._nonReactive.loaderPromise)==null||k.resolve(),(G=M._nonReactive.loadPromise)==null||G.resolve(),M._nonReactive.loaderPromise=void 0}catch(M){Bn(M)&&await t.router.navigate(M.options)}})();else if(U!=="success"||f&&t.sync)await jy(t,l,i,m);else{const k=no(t,l,m);if(k){const G=await k;t.updateMatch(l,M=>({...M,...G}))}}}}const p=t.router.getMatch(l);d||((a=p._nonReactive.loaderPromise)==null||a.resolve(),(r=p._nonReactive.loadPromise)==null||r.resolve()),clearTimeout(p._nonReactive.pendingTimeout),p._nonReactive.pendingTimeout=void 0,d||(p._nonReactive.loaderPromise=void 0),p._nonReactive.dehydrated=void 0;const v=d?p.isFetching:!1;return v!==p.isFetching||p.invalid!==!1?(t.updateMatch(l,g=>({...g,isFetching:v,invalid:!1})),t.router.getMatch(l)):p};async function Py(t){const i=Object.assign(t,{matchPromises:[]});!i.router.isServer&&i.router.state.matches.some(a=>a._forcePending)&&Zl(i);try{for(let l=0;l{const{id:a,...r}=i.options;Object.assign(t.options,r),t._lazyLoaded=!0,t._lazyPromise=void 0}):t._lazyLoaded=!0),!t._componentsLoaded&&t._componentsPromise===void 0){const i=()=>{var a;const r=[];for(const l of TS){const u=(a=t.options[l])==null?void 0:a.preload;u&&r.push(u())}if(r.length)return Promise.all(r).then(()=>{t._componentsLoaded=!0,t._componentsPromise=void 0});t._componentsLoaded=!0,t._componentsPromise=void 0};t._componentsPromise=t._lazyPromise?t._lazyPromise.then(i):i()}return t._componentsPromise}function zl(t,i){return i?{status:"error",error:i}:{status:"success",value:t}}function AS(t){var i;for(const a of TS)if((i=t.options[a])!=null&&i.preload)return!0;return!1}const TS=["component","errorComponent","pendingComponent","notFoundComponent"];function Ra(t){const i=t.resolvedLocation,a=t.location,r=i?.pathname!==a.pathname,l=i?.href!==a.href,u=i?.hash!==a.hash;return{fromLocation:i,toLocation:a,pathChanged:r,hrefChanged:l,hashChanged:u}}class WC{constructor(i){this.tempLocationKey=`${Math.round(Math.random()*1e7)}`,this.resetNextScroll=!0,this.shouldViewTransition=void 0,this.isViewTransitionTypesSupported=void 0,this.subscribers=new Set,this.isScrollRestoring=!1,this.isScrollRestorationSetup=!1,this.startTransition=a=>a(),this.update=a=>{var r;a.notFoundRoute&&console.warn("The notFoundRoute API is deprecated and will be removed in the next major version. See https://tanstack.com/router/v1/docs/framework/react/guide/not-found-errors#migrating-from-notfoundroute for more info.");const l=this.options;this.options={...this.options,...a},this.isServer=this.options.isServer??typeof document>"u",this.pathParamsDecodeCharMap=this.options.pathParamsAllowedCharacters?new Map(this.options.pathParamsAllowedCharacters.map(u=>[encodeURIComponent(u),u])):void 0,(!this.basepath||a.basepath&&a.basepath!==l.basepath)&&(a.basepath===void 0||a.basepath===""||a.basepath==="/"?this.basepath="/":this.basepath=`/${fd(a.basepath)}`),(!this.history||this.options.history&&this.options.history!==this.history)&&(this.history=this.options.history??(this.isServer?lC({initialEntries:[this.basepath||"/"]}):oC()),this.updateLatestLocation()),this.options.routeTree!==this.routeTree&&(this.routeTree=this.options.routeTree,this.buildRouteTree()),this.__store||(this.__store=new ah(tR(this.latestLocation),{onUpdate:()=>{this.__store.state={...this.state,cachedMatches:this.state.cachedMatches.filter(u=>!["redirected"].includes(u.status))}}}),BC(this)),typeof window<"u"&&"CSS"in window&&typeof((r=window.CSS)==null?void 0:r.supports)=="function"&&(this.isViewTransitionTypesSupported=window.CSS.supports("selector(:active-view-transition-type(a)"))},this.updateLatestLocation=()=>{this.latestLocation=this.parseLocation(this.history.location,this.latestLocation)},this.buildRouteTree=()=>{const{routesById:a,routesByPath:r,flatRoutes:l}=UC({routeTree:this.routeTree,initRoute:(f,d)=>{f.init({originalIndex:d})}});this.routesById=a,this.routesByPath=r,this.flatRoutes=l;const u=this.options.notFoundRoute;u&&(u.init({originalIndex:99999999999}),this.routesById[u.id]=u)},this.subscribe=(a,r)=>{const l={eventType:a,fn:r};return this.subscribers.add(l),()=>{this.subscribers.delete(l)}},this.emit=a=>{this.subscribers.forEach(r=>{r.eventType===a.type&&r.fn(a)})},this.parseLocation=(a,r)=>{const l=({pathname:m,search:p,hash:v,state:g})=>{const S=this.options.parseSearch(p),b=this.options.stringifySearch(S);return{pathname:m,searchStr:b,search:Sn(r?.search,S),hash:v.split("#").reverse()[0]??"",href:`${m}${b}${v}`,state:Sn(r?.state,g)}},u=l(a),{__tempLocation:f,__tempKey:d}=u.state;if(f&&(!d||d===this.tempLocationKey)){const m=l(f);return m.state.key=u.state.key,m.state.__TSR_key=u.state.__TSR_key,delete m.state.__tempLocation,{...m,maskedLocation:u}}return u},this.resolvePathWithBase=(a,r)=>mC({basepath:this.basepath,base:a,to:Bh(r),trailingSlash:this.options.trailingSlash,caseSensitive:this.options.caseSensitive,parseCache:this.parsePathnameCache}),this.matchRoutes=(a,r,l)=>typeof a=="string"?this.matchRoutesInternal({pathname:a,search:r},l):this.matchRoutesInternal(a,r),this.parsePathnameCache=YC(1e3),this.getMatchedRoutes=(a,r)=>nR({pathname:a,routePathname:r,basepath:this.basepath,caseSensitive:this.options.caseSensitive,routesByPath:this.routesByPath,routesById:this.routesById,flatRoutes:this.flatRoutes,parseCache:this.parsePathnameCache}),this.cancelMatch=a=>{const r=this.getMatch(a);r&&(r.abortController.abort(),clearTimeout(r._nonReactive.pendingTimeout),r._nonReactive.pendingTimeout=void 0)},this.cancelMatches=()=>{var a;(a=this.state.pendingMatches)==null||a.forEach(r=>{this.cancelMatch(r.id)})},this.buildLocation=a=>{const r=(u={})=>{var f,d;const m=u._fromLocation||this.latestLocation,p=this.matchRoutes(m,{_buildLocation:!0}),v=rh(p);u.from;const g=u.unsafeRelative==="path"?m.pathname:u.from??v.fullPath,S=this.resolvePathWithBase(g,"."),b=v.search,E={...v.params},w=u.to?this.resolvePathWithBase(S,`${u.to}`):this.resolvePathWithBase(S,"."),x=u.params===!1||u.params===null?{}:(u.params??!0)===!0?E:Object.assign(E,Ea(u.params,E)),A=Pl({path:w,params:x,parseCache:this.parsePathnameCache}).interpolatedPath,D=this.matchRoutes(A,void 0,{_buildLocation:!0}).map(Q=>this.looseRoutesById[Q.routeId]);if(Object.keys(x).length>0)for(const Q of D){const P=((f=Q.options.params)==null?void 0:f.stringify)??Q.options.stringifyParams;P&&Object.assign(x,P(x))}const U=Pl({path:w,params:x,leaveWildcards:!1,leaveParams:a.leaveParams,decodeCharMap:this.pathParamsDecodeCharMap,parseCache:this.parsePathnameCache}).interpolatedPath;let N=b;if(a._includeValidateSearch&&((d=this.options.search)!=null&&d.strict)){const Q={};D.forEach(P=>{if(P.options.validateSearch)try{Object.assign(Q,uh(P.options.validateSearch,{...Q,...N}))}catch{}}),N=Q}N=iR({search:N,dest:u,destRoutes:D,_includeValidateSearch:a._includeValidateSearch}),N=Sn(b,N);const k=this.options.stringifySearch(N),G=u.hash===!0?m.hash:u.hash?Ea(u.hash,m.hash):void 0,M=G?`#${G}`:"";let B=u.state===!0?m.state:u.state?Ea(u.state,m.state):{};return B=Sn(m.state,B),{pathname:U,search:N,searchStr:k,state:B,hash:G??"",href:`${U}${k}${M}`,unmaskOnReload:u.unmaskOnReload}},l=(u={},f)=>{var d;const m=r(u);let p=f?r(f):void 0;if(!p){let v={};const g=(d=this.options.routeMasks)==null?void 0:d.find(S=>{const b=oh(this.basepath,m.pathname,{to:S.from,caseSensitive:!1,fuzzy:!1},this.parsePathnameCache);return b?(v=b,!0):!1});if(g){const{from:S,...b}=g;f={from:a.from,...b,params:v},p=r(f)}}return p&&(m.maskedLocation=p),m};return a.mask?l(a,{from:a.from,...a.mask}):l(a)},this.commitLocation=({viewTransition:a,ignoreBlocker:r,...l})=>{const u=()=>{const m=["key","__TSR_key","__TSR_index","__hashScrollIntoViewOptions"];m.forEach(v=>{l.state[v]=this.latestLocation.state[v]});const p=Ca(l.state,this.latestLocation.state);return m.forEach(v=>{delete l.state[v]}),p},f=this.latestLocation.href===l.href,d=this.commitLocationPromise;if(this.commitLocationPromise=js(()=>{d?.resolve()}),f&&u())this.load();else{let{maskedLocation:m,hashScrollIntoView:p,...v}=l;m&&(v={...m,state:{...m.state,__tempKey:void 0,__tempLocation:{...v,search:v.searchStr,state:{...v.state,__tempKey:void 0,__tempLocation:void 0,__TSR_key:void 0,key:void 0}}}},(v.unmaskOnReload??this.options.unmaskOnReload??!1)&&(v.state.__tempKey=this.tempLocationKey)),v.state.__hashScrollIntoViewOptions=p??this.options.defaultHashScrollIntoView??!0,this.shouldViewTransition=a,this.history[l.replace?"replace":"push"](v.href,v.state,{ignoreBlocker:r})}return this.resetNextScroll=l.resetScroll??!0,this.history.subscribers.size||this.load(),this.commitLocationPromise},this.buildAndCommitLocation=({replace:a,resetScroll:r,hashScrollIntoView:l,viewTransition:u,ignoreBlocker:f,href:d,...m}={})=>{if(d){const v=this.history.location.state.__TSR_index,g=ro(d,{__TSR_index:a?v:v+1});m.to=g.pathname,m.search=this.options.parseSearch(g.search),m.hash=g.hash.slice(1)}const p=this.buildLocation({...m,_includeValidateSearch:!0});return this.commitLocation({...p,viewTransition:u,replace:a,resetScroll:r,hashScrollIntoView:l,ignoreBlocker:f})},this.navigate=({to:a,reloadDocument:r,href:l,...u})=>{if(!r&&l)try{new URL(`${l}`),r=!0}catch{}if(r){if(!l){const f=this.buildLocation({to:a,...u});l=this.history.createHref(f.href)}return u.replace?window.location.replace(l):window.location.href=l,Promise.resolve()}return this.buildAndCommitLocation({...u,href:l,to:a,_isNavigate:!0})},this.beforeLoad=()=>{if(this.cancelMatches(),this.updateLatestLocation(),this.isServer){const r=this.buildLocation({to:this.latestLocation.pathname,search:!0,params:!0,hash:!0,state:!0,_includeValidateSearch:!0}),l=u=>{try{return encodeURI(decodeURI(u))}catch{return u}};if(fd(l(this.latestLocation.href))!==fd(l(r.href)))throw en({href:r.href})}const a=this.matchRoutes(this.latestLocation);this.__store.setState(r=>({...r,status:"pending",statusCode:200,isLoading:!0,location:this.latestLocation,pendingMatches:a,cachedMatches:r.cachedMatches.filter(l=>!a.some(u=>u.id===l.id))}))},this.load=async a=>{let r,l,u;for(u=new Promise(f=>{this.startTransition(async()=>{var d;try{this.beforeLoad();const m=this.latestLocation,p=this.state.resolvedLocation;this.state.redirect||this.emit({type:"onBeforeNavigate",...Ra({resolvedLocation:p,location:m})}),this.emit({type:"onBeforeLoad",...Ra({resolvedLocation:p,location:m})}),await Py({router:this,sync:a?.sync,matches:this.state.pendingMatches,location:m,updateMatch:this.updateMatch,onReady:async()=>{this.startViewTransition(async()=>{let v,g,S;to(()=>{this.__store.setState(b=>{const E=b.matches,w=b.pendingMatches||b.matches;return v=E.filter(x=>!w.some(A=>A.id===x.id)),g=w.filter(x=>!E.some(A=>A.id===x.id)),S=E.filter(x=>w.some(A=>A.id===x.id)),{...b,isLoading:!1,loadedAt:Date.now(),matches:w,pendingMatches:void 0,cachedMatches:[...b.cachedMatches,...v.filter(x=>x.status!=="error")]}}),this.clearExpiredCache()}),[[v,"onLeave"],[g,"onEnter"],[S,"onStay"]].forEach(([b,E])=>{b.forEach(w=>{var x,A;(A=(x=this.looseRoutesById[w.routeId].options)[E])==null||A.call(x,w)})})})}})}catch(m){Bn(m)?(r=m,this.isServer||this.navigate({...r.options,replace:!0,ignoreBlocker:!0})):Vn(m)&&(l=m),this.__store.setState(p=>({...p,statusCode:r?r.status:l?404:p.matches.some(v=>v.status==="error")?500:200,redirect:r}))}this.latestLoadPromise===u&&((d=this.commitLocationPromise)==null||d.resolve(),this.latestLoadPromise=void 0,this.commitLocationPromise=void 0),f()})}),this.latestLoadPromise=u,await u;this.latestLoadPromise&&u!==this.latestLoadPromise;)await this.latestLoadPromise;this.hasNotFoundMatch()&&this.__store.setState(f=>({...f,statusCode:404}))},this.startViewTransition=a=>{const r=this.shouldViewTransition??this.options.defaultViewTransition;if(delete this.shouldViewTransition,r&&typeof document<"u"&&"startViewTransition"in document&&typeof document.startViewTransition=="function"){let l;if(typeof r=="object"&&this.isViewTransitionTypesSupported){const u=this.latestLocation,f=this.state.resolvedLocation,d=typeof r.types=="function"?r.types(Ra({resolvedLocation:f,location:u})):r.types;l={update:a,types:d}}else l=a;document.startViewTransition(l)}else a()},this.updateMatch=(a,r)=>{var l;const u=(l=this.state.pendingMatches)!=null&&l.some(f=>f.id===a)?"pendingMatches":this.state.matches.some(f=>f.id===a)?"matches":this.state.cachedMatches.some(f=>f.id===a)?"cachedMatches":"";u&&this.__store.setState(f=>{var d;return{...f,[u]:(d=f[u])==null?void 0:d.map(m=>m.id===a?r(m):m)}})},this.getMatch=a=>{var r;const l=u=>u.id===a;return this.state.cachedMatches.find(l)??((r=this.state.pendingMatches)==null?void 0:r.find(l))??this.state.matches.find(l)},this.invalidate=a=>{const r=l=>{var u;return((u=a?.filter)==null?void 0:u.call(a,l))??!0?{...l,invalid:!0,...a?.forcePending||l.status==="error"?{status:"pending",error:void 0}:void 0}:l};return this.__store.setState(l=>{var u;return{...l,matches:l.matches.map(r),cachedMatches:l.cachedMatches.map(r),pendingMatches:(u=l.pendingMatches)==null?void 0:u.map(r)}}),this.shouldViewTransition=!1,this.load({sync:a?.sync})},this.resolveRedirect=a=>(a.options.href||(a.options.href=this.buildLocation(a.options).href,a.headers.set("Location",a.options.href)),a.headers.get("Location")||a.headers.set("Location",a.options.href),a),this.clearCache=a=>{const r=a?.filter;r!==void 0?this.__store.setState(l=>({...l,cachedMatches:l.cachedMatches.filter(u=>!r(u))})):this.__store.setState(l=>({...l,cachedMatches:[]}))},this.clearExpiredCache=()=>{const a=r=>{const l=this.looseRoutesById[r.routeId];if(!l.options.loader)return!0;const u=(r.preload?l.options.preloadGcTime??this.options.defaultPreloadGcTime:l.options.gcTime??this.options.defaultGcTime)??300*1e3;return r.status==="error"?!0:Date.now()-r.updatedAt>=u};this.clearCache({filter:a})},this.loadRouteChunk=xS,this.preloadRoute=async a=>{const r=this.buildLocation(a);let l=this.matchRoutes(r,{throwOnError:!0,preload:!0,dest:a});const u=new Set([...this.state.matches,...this.state.pendingMatches??[]].map(d=>d.id)),f=new Set([...u,...this.state.cachedMatches.map(d=>d.id)]);to(()=>{l.forEach(d=>{f.has(d.id)||this.__store.setState(m=>({...m,cachedMatches:[...m.cachedMatches,d]}))})});try{return l=await Py({router:this,matches:l,location:r,preload:!0,updateMatch:(d,m)=>{u.has(d)?l=l.map(p=>p.id===d?m(p):p):this.updateMatch(d,m)}}),l}catch(d){if(Bn(d))return d.options.reloadDocument?void 0:await this.preloadRoute({...d.options,_fromLocation:r});Vn(d)||console.error(d);return}},this.matchRoute=(a,r)=>{const l={...a,to:a.to?this.resolvePathWithBase(a.from||"",a.to):void 0,params:a.params||{},leaveParams:!0},u=this.buildLocation(l);if(r?.pending&&this.state.status!=="pending")return!1;const d=(r?.pending===void 0?!this.state.isLoading:r.pending)?this.latestLocation:this.state.resolvedLocation||this.state.location,m=oh(this.basepath,d.pathname,{...r,to:u.pathname},this.parsePathnameCache);return!m||a.params&&!Ca(m,a.params,{partial:!0})?!1:m&&(r?.includeSearch??!0)?Ca(d.search,u.search,{partial:!0})?m:!1:m},this.hasNotFoundMatch=()=>this.__store.state.matches.some(a=>a.status==="notFound"||a.globalNotFound),this.update({defaultPreloadDelay:50,defaultPendingMs:1e3,defaultPendingMinMs:500,context:void 0,...i,caseSensitive:i.caseSensitive??!1,notFoundMode:i.notFoundMode??"fuzzy",stringifySearch:i.stringifySearch??VC,parseSearch:i.parseSearch??HC}),typeof document<"u"&&(self.__TSR_ROUTER__=this)}isShell(){return!!this.options.isShell}isPrerendering(){return!!this.options.isPrerendering}get state(){return this.__store.state}get looseRoutesById(){return this.routesById}matchRoutesInternal(i,a){var r;const{foundRoute:l,matchedRoutes:u,routeParams:f}=this.getMatchedRoutes(i.pathname,(r=a?.dest)==null?void 0:r.to);let d=!1;(l?l.path!=="/"&&f["**"]:$s(i.pathname))&&(this.options.notFoundRoute?u.push(this.options.notFoundRoute):d=!0);const m=(()=>{if(d){if(this.options.notFoundMode!=="root")for(let g=u.length-1;g>=0;g--){const S=u[g];if(S.children)return S.id}return _n}})(),p=[],v=g=>g?.id?g.context??this.options.context??void 0:this.options.context??void 0;return u.forEach((g,S)=>{var b,E,w;const x=p[S-1],[A,D,U]=(()=>{const j=x?.search??i.search,$=x?._strictSearch??void 0;try{const q=uh(g.options.validateSearch,{...j})??void 0;return[{...j,...q},{...$,...q},void 0]}catch(q){let ie=q;if(q instanceof hu||(ie=new hu(q.message,{cause:q})),a?.throwOnError)throw ie;return[j,{},ie]}})(),N=((E=(b=g.options).loaderDeps)==null?void 0:E.call(b,{search:A}))??"",k=N?JSON.stringify(N):"",{interpolatedPath:G,usedParams:M}=Pl({path:g.fullPath,params:f,decodeCharMap:this.pathParamsDecodeCharMap}),B=Pl({path:g.id,params:f,leaveWildcards:!0,decodeCharMap:this.pathParamsDecodeCharMap,parseCache:this.parsePathnameCache}).interpolatedPath+k,Q=this.getMatch(B),P=this.state.matches.find(j=>j.routeId===g.id),ee=Q?._strictParams??M;let ne;if(!Q){const j=((w=g.options.params)==null?void 0:w.parse)??g.options.parseParams;if(j)try{Object.assign(ee,j(ee))}catch($){if(ne=new eR($.message,{cause:$}),a?.throwOnError)throw ne}}Object.assign(f,ee);const X=P?"stay":"enter";let Z;if(Q)Z={...Q,cause:X,params:P?Sn(P.params,f):f,_strictParams:ee,search:Sn(P?P.search:Q.search,A),_strictSearch:D};else{const j=g.options.loader||g.options.beforeLoad||g.lazyFn||AS(g)?"pending":"success";Z={id:B,index:S,routeId:g.id,params:P?Sn(P.params,f):f,_strictParams:ee,pathname:vi([this.basepath,G]),updatedAt:Date.now(),search:P?Sn(P.search,A):A,_strictSearch:D,searchError:void 0,status:j,isFetching:!1,error:void 0,paramsError:ne,__routeContext:void 0,_nonReactive:{loadPromise:js()},__beforeLoadContext:void 0,context:{},abortController:new AbortController,fetchCount:0,cause:X,loaderDeps:P?Sn(P.loaderDeps,N):N,invalid:!1,preload:!1,links:void 0,scripts:void 0,headScripts:void 0,meta:void 0,staticData:g.options.staticData||{},fullPath:g.fullPath}}a?.preload||(Z.globalNotFound=m===g.id),Z.searchError=U;const oe=v(x);Z.context={...oe,...Z.__routeContext,...Z.__beforeLoadContext},p.push(Z)}),p.forEach((g,S)=>{const b=this.looseRoutesById[g.routeId];if(!this.getMatch(g.id)&&a?._buildLocation!==!0){const w=p[S-1],x=v(w);if(b.options.context){const A={deps:g.loaderDeps,params:g.params,context:x??{},location:i,navigate:D=>this.navigate({...D,_fromLocation:i}),buildLocation:this.buildLocation,cause:g.cause,abortController:g.abortController,preload:!!g.preload,matches:p};g.__routeContext=b.options.context(A)??void 0}g.context={...x,...g.__routeContext,...g.__beforeLoadContext}}}),p}}class hu extends Error{}class eR extends Error{}function tR(t){return{loadedAt:0,isLoading:!1,isTransitioning:!1,status:"idle",resolvedLocation:void 0,location:t,matches:[],pendingMatches:[],cachedMatches:[],statusCode:200}}function uh(t,i){if(t==null)return{};if("~standard"in t){const a=t["~standard"].validate(i);if(a instanceof Promise)throw new hu("Async validation not supported");if(a.issues)throw new hu(JSON.stringify(a.issues,void 0,2),{cause:a});return a.value}return"parse"in t?t.parse(i):typeof t=="function"?t(i):{}}function nR({pathname:t,routePathname:i,basepath:a,caseSensitive:r,routesByPath:l,routesById:u,flatRoutes:f,parseCache:d}){let m={};const p=$s(t),v=E=>{var w;return oh(a,p,{to:E.fullPath,caseSensitive:((w=E.options)==null?void 0:w.caseSensitive)??r,fuzzy:!0},d)};let g=i!==void 0?l[i]:void 0;if(g)m=v(g);else{let E;for(const w of f){const x=v(w);if(x)if(w.path!=="/"&&x["**"])E||(E={foundRoute:w,routeParams:x});else{g=w,m=x;break}}!g&&E&&(g=E.foundRoute,m=E.routeParams)}let S=g||u[_n];const b=[S];for(;S.parentRoute;)S=S.parentRoute,b.push(S);return b.reverse(),{matchedRoutes:b,routeParams:m,foundRoute:g}}function iR({search:t,dest:i,destRoutes:a,_includeValidateSearch:r}){const l=a.reduce((d,m)=>{var p;const v=[];if("search"in m.options)(p=m.options.search)!=null&&p.middlewares&&v.push(...m.options.search.middlewares);else if(m.options.preSearchFilters||m.options.postSearchFilters){const g=({search:S,next:b})=>{let E=S;"preSearchFilters"in m.options&&m.options.preSearchFilters&&(E=m.options.preSearchFilters.reduce((x,A)=>A(x),S));const w=b(E);return"postSearchFilters"in m.options&&m.options.postSearchFilters?m.options.postSearchFilters.reduce((x,A)=>A(x),w):w};v.push(g)}if(r&&m.options.validateSearch){const g=({search:S,next:b})=>{const E=b(S);try{return{...E,...uh(m.options.validateSearch,E)??void 0}}catch{return E}};v.push(g)}return d.concat(v)},[])??[],u=({search:d})=>i.search?i.search===!0?d:Ea(i.search,d):{};l.push(u);const f=(d,m)=>{if(d>=l.length)return m;const p=l[d];return p({search:m,next:g=>f(d+1,g)})};return f(0,t)}const aR="Error preloading route! ☝️";class OS{constructor(i){if(this.init=a=>{var r,l;this.originalIndex=a.originalIndex;const u=this.options,f=!u?.path&&!u?.id;this.parentRoute=(l=(r=this.options).getParentRoute)==null?void 0:l.call(r),f?this._path=_n:this.parentRoute||Si(!1);let d=f?_n:u?.path;d&&d!=="/"&&(d=qh(d));const m=u?.id||d;let p=f?_n:vi([this.parentRoute.id===_n?"":this.parentRoute.id,m]);d===_n&&(d="/"),p!==_n&&(p=vi(["/",p]));const v=p===_n?"/":vi([this.parentRoute.fullPath,d]);this._path=d,this._id=p,this._fullPath=v,this._to=v},this.clone=a=>{this._path=a._path,this._id=a._id,this._fullPath=a._fullPath,this._to=a._to,this.options.getParentRoute=a.options.getParentRoute,this.children=a.children},this.addChildren=a=>this._addFileChildren(a),this._addFileChildren=a=>(Array.isArray(a)&&(this.children=a),typeof a=="object"&&a!==null&&(this.children=Object.values(a)),this),this._addFileTypes=()=>this,this.updateLoader=a=>(Object.assign(this.options,a),this),this.update=a=>(Object.assign(this.options,a),this),this.lazy=a=>(this.lazyFn=a,this),this.options=i||{},this.isRoot=!i?.getParentRoute,i?.id&&i?.path)throw new Error("Route cannot have both an 'id' and a 'path' option.")}get to(){return this._to}get id(){return this._id}get path(){return this._path}get fullPath(){return this._fullPath}}class sR extends OS{constructor(i){super(i)}}function Ih(t){const i=t.errorComponent??Tu;return R.jsx(rR,{getResetKey:t.getResetKey,onCatch:t.onCatch,children:({error:a,reset:r})=>a?_.createElement(i,{error:a,reset:r}):t.children})}class rR extends _.Component{constructor(){super(...arguments),this.state={error:null}}static getDerivedStateFromProps(i){return{resetKey:i.getResetKey()}}static getDerivedStateFromError(i){return{error:i}}reset(){this.setState({error:null})}componentDidUpdate(i,a){a.error&&a.resetKey!==this.state.resetKey&&this.reset()}componentDidCatch(i,a){this.props.onCatch&&this.props.onCatch(i,a)}render(){return this.props.children({error:this.state.resetKey!==this.props.getResetKey()?null:this.state.error,reset:()=>{this.reset()}})}}function Tu({error:t}){const[i,a]=_.useState(!1);return R.jsxs("div",{style:{padding:".5rem",maxWidth:"100%"},children:[R.jsxs("div",{style:{display:"flex",alignItems:"center",gap:".5rem"},children:[R.jsx("strong",{style:{fontSize:"1rem"},children:"Something went wrong!"}),R.jsx("button",{style:{appearance:"none",fontSize:".6em",border:"1px solid currentColor",padding:".1rem .2rem",fontWeight:"bold",borderRadius:".25rem"},onClick:()=>a(r=>!r),children:i?"Hide Error":"Show Error"})]}),R.jsx("div",{style:{height:".25rem"}}),i?R.jsx("div",{children:R.jsx("pre",{style:{fontSize:".7em",border:"1px solid red",borderRadius:".25rem",padding:".3rem",color:"red",overflow:"auto"},children:t.message?R.jsx("code",{children:t.message}):null})}):null]})}function oR({children:t,fallback:i=null}){return lR()?R.jsx(re.Fragment,{children:t}):R.jsx(re.Fragment,{children:i})}function lR(){return re.useSyncExternalStore(uR,()=>!0,()=>!1)}function uR(){return()=>{}}var md={exports:{}},pd={},gd={exports:{}},vd={};var zy;function cR(){if(zy)return vd;zy=1;var t=mo();function i(g,S){return g===S&&(g!==0||1/g===1/S)||g!==g&&S!==S}var a=typeof Object.is=="function"?Object.is:i,r=t.useState,l=t.useEffect,u=t.useLayoutEffect,f=t.useDebugValue;function d(g,S){var b=S(),E=r({inst:{value:b,getSnapshot:S}}),w=E[0].inst,x=E[1];return u(function(){w.value=b,w.getSnapshot=S,m(w)&&x({inst:w})},[g,b,S]),l(function(){return m(w)&&x({inst:w}),g(function(){m(w)&&x({inst:w})})},[g]),f(b),b}function m(g){var S=g.getSnapshot;g=g.value;try{var b=S();return!a(g,b)}catch{return!0}}function p(g,S){return S()}var v=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?p:d;return vd.useSyncExternalStore=t.useSyncExternalStore!==void 0?t.useSyncExternalStore:v,vd}var $y;function DS(){return $y||($y=1,gd.exports=cR()),gd.exports}var By;function fR(){if(By)return pd;By=1;var t=mo(),i=DS();function a(p,v){return p===v&&(p!==0||1/p===1/v)||p!==p&&v!==v}var r=typeof Object.is=="function"?Object.is:a,l=i.useSyncExternalStore,u=t.useRef,f=t.useEffect,d=t.useMemo,m=t.useDebugValue;return pd.useSyncExternalStoreWithSelector=function(p,v,g,S,b){var E=u(null);if(E.current===null){var w={hasValue:!1,value:null};E.current=w}else w=E.current;E=d(function(){function A(G){if(!D){if(D=!0,U=G,G=S(G),b!==void 0&&w.hasValue){var M=w.value;if(b(M,G))return N=M}return N=G}if(M=N,r(U,G))return M;var B=S(G);return b!==void 0&&b(M,B)?(U=G,M):(U=G,N=B)}var D=!1,U,N,k=g===void 0?null:g;return[function(){return A(v())},k===null?void 0:function(){return A(k())}]},[v,g,S,b]);var x=l(p,E[0],E[1]);return f(function(){w.hasValue=!0,w.value=x},[x]),m(x),x},pd}var qy;function dR(){return qy||(qy=1,md.exports=fR()),md.exports}var hR=dR();function mR(t,i=a=>a){return hR.useSyncExternalStoreWithSelector(t.subscribe,()=>t.state,()=>t.state,i,pR)}function pR(t,i){if(Object.is(t,i))return!0;if(typeof t!="object"||t===null||typeof i!="object"||i===null)return!1;if(t instanceof Map&&i instanceof Map){if(t.size!==i.size)return!1;for(const[r,l]of t)if(!i.has(r)||!Object.is(l,i.get(r)))return!1;return!0}if(t instanceof Set&&i instanceof Set){if(t.size!==i.size)return!1;for(const r of t)if(!i.has(r))return!1;return!0}if(t instanceof Date&&i instanceof Date)return t.getTime()===i.getTime();const a=Iy(t);if(a.length!==Iy(i).length)return!1;for(let r=0;r"u"?yd:window.__TSR_ROUTER_CONTEXT__?window.__TSR_ROUTER_CONTEXT__:(window.__TSR_ROUTER_CONTEXT__=yd,yd)}function sn(t){const i=_.useContext(MS());return t?.warn,i}function Ht(t){const i=sn({warn:t?.router===void 0}),a=t?.router||i,r=_.useRef(void 0);return mR(a.__store,l=>{if(t?.select){if(t.structuralSharing??a.options.defaultStructuralSharing){const u=Sn(r.current,t.select(l));return r.current=u,u}return t.select(l)}return l})}const Ou=_.createContext(void 0),gR=_.createContext(void 0);function kn(t){const i=_.useContext(t.from?gR:Ou);return Ht({select:r=>{const l=r.matches.find(u=>t.from?t.from===u.routeId:u.id===i);if(Si(!((t.shouldThrow??!0)&&!l),`Could not find ${t.from?`an active match from "${t.from}"`:"a nearest match!"}`),l!==void 0)return t.select?t.select(l):l},structuralSharing:t.structuralSharing})}function Fh(t){return kn({from:t.from,strict:t.strict,structuralSharing:t.structuralSharing,select:i=>t.select?t.select(i.loaderData):i.loaderData})}function Hh(t){const{select:i,...a}=t;return kn({...a,select:r=>i?i(r.loaderDeps):r.loaderDeps})}function Vh(t){return kn({from:t.from,shouldThrow:t.shouldThrow,structuralSharing:t.structuralSharing,strict:t.strict,select:i=>{const a=t.strict===!1?i.params:i._strictParams;return t.select?t.select(a):a}})}function kh(t){return kn({from:t.from,strict:t.strict,shouldThrow:t.shouldThrow,structuralSharing:t.structuralSharing,select:i=>t.select?t.select(i.search):i.search})}function Du(t){const i=sn();return _.useCallback(a=>i.navigate({...a,from:a.from??t?.from}),[t?.from,i])}function O7(t){const i=sn(),a=Du(),r=_.useRef(null);return _.useEffect(()=>{r.current!==t&&(a(t),r.current=t)},[i,t,a]),null}var Sd={exports:{}},Ct={};var Fy;function vR(){if(Fy)return Ct;Fy=1;var t=mo();function i(m){var p="https://react.dev/errors/"+m;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(t)}catch(i){console.error(i)}}return t(),Sd.exports=vR(),Sd.exports}var Qs=NS();const yR=Nh(Qs),$l=typeof window<"u"?_.useLayoutEffect:_.useEffect;function bd(t){const i=_.useRef({value:t,prev:null}),a=i.current.value;return t!==a&&(i.current={value:t,prev:a}),i.current.prev}function SR(t,i,a={},r={}){_.useEffect(()=>{if(!t.current||r.disabled||typeof IntersectionObserver!="function")return;const l=new IntersectionObserver(([u])=>{i(u)},a);return l.observe(t.current),()=>{l.disconnect()}},[i,a,r.disabled,t])}function bR(t){const i=_.useRef(null);return _.useImperativeHandle(t,()=>i.current,[]),i}function _R(t,i){const a=sn(),[r,l]=_.useState(!1),u=_.useRef(!1),f=bR(i),{activeProps:d,inactiveProps:m,activeOptions:p,to:v,preload:g,preloadDelay:S,hashScrollIntoView:b,replace:E,startTransition:w,resetScroll:x,viewTransition:A,children:D,target:U,disabled:N,style:k,className:G,onClick:M,onFocus:B,onMouseEnter:Q,onMouseLeave:P,onTouchStart:ee,ignoreBlocker:ne,params:X,search:Z,hash:oe,state:j,mask:$,reloadDocument:q,unsafeRelative:ie,from:se,_fromLocation:O,...H}=t,te=_.useMemo(()=>{try{return new URL(v),"external"}catch{}return"internal"},[v]),ae=Ht({select:je=>je.location.search,structuralSharing:!0}),le=t.from,fe=_.useMemo(()=>({...t,from:le}),[a,ae,le,t._fromLocation,t.hash,t.to,t.search,t.params,t.state,t.mask,t.unsafeRelative]),ge=_.useMemo(()=>a.buildLocation({...fe}),[a,fe]),Fe=te==="external",Te=t.reloadDocument||Fe?!1:g??a.options.defaultPreload,xt=S??a.options.defaultPreloadDelay??0,gt=Ht({select:je=>{if(Fe)return!1;if(p?.exact){if(!dC(je.location.pathname,ge.pathname,a.basepath))return!1}else{const Ue=uu(je.location.pathname,a.basepath),Qt=uu(ge.pathname,a.basepath);if(!(Ue.startsWith(Qt)&&(Ue.length===Qt.length||Ue[Qt.length]==="/")))return!1}return(p?.includeSearch??!0)&&!Ca(je.location.search,ge.search,{partial:!p?.exact,ignoreUndefined:!p?.explicitUndefined})?!1:p?.includeHash?je.location.hash===ge.hash:!0}}),Et=_.useCallback(()=>{a.preloadRoute({...fe}).catch(je=>{console.warn(je),console.warn(aR)})},[a,fe]),Kn=_.useCallback(je=>{je?.isIntersecting&&Et()},[Et]);SR(f,Kn,xR,{disabled:!!N||Te!=="viewport"}),_.useEffect(()=>{u.current||!N&&Te==="render"&&(Et(),u.current=!0)},[N,Et,Te]);const me=je=>{if(!N&&!AR(je)&&!je.defaultPrevented&&(!U||U==="_self")&&je.button===0){je.preventDefault(),Qs.flushSync(()=>{l(!0)});const Ue=a.subscribe("onResolved",()=>{Ue(),l(!1)});a.navigate({...fe,replace:E,resetScroll:x,hashScrollIntoView:b,startTransition:w,viewTransition:A,ignoreBlocker:ne})}};if(Fe)return{...H,ref:f,type:te,href:v,...D&&{children:D},...U&&{target:U},...N&&{disabled:N},...k&&{style:k},...G&&{className:G},...M&&{onClick:M},...B&&{onFocus:B},...Q&&{onMouseEnter:Q},...P&&{onMouseLeave:P},...ee&&{onTouchStart:ee}};const Xn=je=>{N||Te&&Et()},_i=Xn,ea=je=>{if(!(N||!Te))if(!xt)Et();else{const Ue=je.target;if(Hr.has(Ue))return;const Qt=setTimeout(()=>{Hr.delete(Ue),Et()},xt);Hr.set(Ue,Qt)}},za=je=>{if(N||!Te||!xt)return;const Ue=je.target,Qt=Hr.get(Ue);Qt&&(clearTimeout(Qt),Hr.delete(Ue))},On=gt?Ea(d,{})??wR:_d,At=gt?_d:Ea(m,{})??_d,Zn=[G,On.className,At.className].filter(Boolean).join(" "),$a=(k||On.style||At.style)&&{...k,...On.style,...At.style};return{...H,...On,...At,href:N?void 0:ge.maskedLocation?a.history.createHref(ge.maskedLocation.href):a.history.createHref(ge.href),ref:f,onClick:Vr([M,me]),onFocus:Vr([B,Xn]),onMouseEnter:Vr([Q,ea]),onMouseLeave:Vr([P,za]),onTouchStart:Vr([ee,_i]),disabled:!!N,target:U,...$a&&{style:$a},...Zn&&{className:Zn},...N&&ER,...gt&&CR,...r&&RR}}const _d={},wR={className:"active"},ER={role:"link","aria-disabled":!0},CR={"data-status":"active","aria-current":"page"},RR={"data-transitioning":"transitioning"},Hr=new WeakMap,xR={rootMargin:"100px"},Vr=t=>i=>{t.filter(Boolean).forEach(a=>{i.defaultPrevented||a(i)})};function D7(t){return _.forwardRef(function(a,r){return R.jsx(Qh,{...a,_asChild:t,ref:r})})}const Qh=_.forwardRef((t,i)=>{const{_asChild:a,...r}=t,{type:l,ref:u,...f}=_R(r,i),d=typeof r.children=="function"?r.children({isActive:f["data-status"]==="active"}):r.children;return a===void 0&&delete f.disabled,_.createElement(a||"a",{...f,ref:u},d)});function AR(t){return!!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)}let TR=class extends OS{constructor(i){super(i),this.useMatch=a=>kn({select:a?.select,from:this.id,structuralSharing:a?.structuralSharing}),this.useRouteContext=a=>kn({...a,from:this.id,select:r=>a?.select?a.select(r.context):r.context}),this.useSearch=a=>kh({select:a?.select,structuralSharing:a?.structuralSharing,from:this.id}),this.useParams=a=>Vh({select:a?.select,structuralSharing:a?.structuralSharing,from:this.id}),this.useLoaderDeps=a=>Hh({...a,from:this.id}),this.useLoaderData=a=>Fh({...a,from:this.id}),this.useNavigate=()=>Du({from:this.fullPath}),this.Link=re.forwardRef((a,r)=>R.jsx(Qh,{ref:r,from:this.fullPath,...a})),this.$$typeof=Symbol.for("react.memo")}};function OR(t){return new TR(t)}function DR(){return t=>NR(t)}class MR extends sR{constructor(i){super(i),this.useMatch=a=>kn({select:a?.select,from:this.id,structuralSharing:a?.structuralSharing}),this.useRouteContext=a=>kn({...a,from:this.id,select:r=>a?.select?a.select(r.context):r.context}),this.useSearch=a=>kh({select:a?.select,structuralSharing:a?.structuralSharing,from:this.id}),this.useParams=a=>Vh({select:a?.select,structuralSharing:a?.structuralSharing,from:this.id}),this.useLoaderDeps=a=>Hh({...a,from:this.id}),this.useLoaderData=a=>Fh({...a,from:this.id}),this.useNavigate=()=>Du({from:this.fullPath}),this.Link=re.forwardRef((a,r)=>R.jsx(Qh,{ref:r,from:this.fullPath,...a})),this.$$typeof=Symbol.for("react.memo")}}function NR(t){return new MR(t)}function ft(t){return typeof t=="object"?new Vy(t,{silent:!0}).createRoute(t):new Vy(t,{silent:!0}).createRoute}class Vy{constructor(i,a){this.path=i,this.createRoute=r=>{this.silent;const l=OR(r);return l.isRoot=!1,l},this.silent=a?.silent}}class ky{constructor(i){this.useMatch=a=>kn({select:a?.select,from:this.options.id,structuralSharing:a?.structuralSharing}),this.useRouteContext=a=>kn({from:this.options.id,select:r=>a?.select?a.select(r.context):r.context}),this.useSearch=a=>kh({select:a?.select,structuralSharing:a?.structuralSharing,from:this.options.id}),this.useParams=a=>Vh({select:a?.select,structuralSharing:a?.structuralSharing,from:this.options.id}),this.useLoaderDeps=a=>Hh({...a,from:this.options.id}),this.useLoaderData=a=>Fh({...a,from:this.options.id}),this.useNavigate=()=>{const a=sn();return Du({from:a.routesById[this.options.id].fullPath})},this.options=i,this.$$typeof=Symbol.for("react.memo")}}function Qy(t){return typeof t=="object"?new ky(t):i=>new ky({id:t,...i})}function dt(t,i){let a,r,l,u;const f=()=>(a||(a=t().then(m=>{a=void 0,r=m[i??"default"]}).catch(m=>{if(l=m,fC(l)&&l instanceof Error&&typeof window<"u"&&typeof sessionStorage<"u"){const p=`tanstack_router_reload:${l.message}`;sessionStorage.getItem(p)||(sessionStorage.setItem(p,"1"),u=!0)}})),a),d=function(p){if(u)throw window.location.reload(),new Promise(()=>{});if(l)throw l;if(!r)throw f();return _.createElement(r,p)};return d.preload=f,d}function LR(){const t=sn(),i=_.useRef({router:t,mounted:!1}),[a,r]=_.useState(!1),{hasPendingMatches:l,isLoading:u}=Ht({select:g=>({isLoading:g.isLoading,hasPendingMatches:g.matches.some(S=>S.status==="pending")}),structuralSharing:!0}),f=bd(u),d=u||a||l,m=bd(d),p=u||l,v=bd(p);return t.startTransition=g=>{r(!0),_.startTransition(()=>{g(),r(!1)})},_.useEffect(()=>{const g=t.history.subscribe(t.load),S=t.buildLocation({to:t.latestLocation.pathname,search:!0,params:!0,hash:!0,state:!0,_includeValidateSearch:!0});return $s(t.latestLocation.href)!==$s(S.href)&&t.commitLocation({...S,replace:!0}),()=>{g()}},[t,t.history]),$l(()=>{if(typeof window<"u"&&t.ssr||i.current.router===t&&i.current.mounted)return;i.current={router:t,mounted:!0},(async()=>{try{await t.load()}catch(S){console.error(S)}})()},[t]),$l(()=>{f&&!u&&t.emit({type:"onLoad",...Ra(t.state)})},[f,t,u]),$l(()=>{v&&!p&&t.emit({type:"onBeforeRouteMount",...Ra(t.state)})},[p,v,t]),$l(()=>{m&&!d&&(t.emit({type:"onResolved",...Ra(t.state)}),t.__store.setState(g=>({...g,status:"idle",resolvedLocation:g.location})),qC(t))},[d,m,t]),null}function UR(t){const i=Ht({select:a=>`not-found-${a.location.pathname}-${a.status}`});return R.jsx(Ih,{getResetKey:()=>i,onCatch:(a,r)=>{var l;if(Vn(a))(l=t.onCatch)==null||l.call(t,a,r);else throw a},errorComponent:({error:a})=>{var r;if(Vn(a))return(r=t.fallback)==null?void 0:r.call(t,a);throw a},children:t.children})}function jR(){return R.jsx("p",{children:"Not Found"})}function Ts(t){return R.jsx(R.Fragment,{children:t.children})}function LS(t,i,a){return i.options.notFoundComponent?R.jsx(i.options.notFoundComponent,{data:a}):t.options.defaultNotFoundComponent?R.jsx(t.options.defaultNotFoundComponent,{data:a}):R.jsx(jR,{})}function PR({children:t}){return typeof document<"u"?null:R.jsx("script",{className:"$tsr",dangerouslySetInnerHTML:{__html:[t].filter(Boolean).join(` +`)}})}function zR(){const t=sn(),a=(t.options.getScrollRestorationKey||lh)(t.latestLocation),r=a!==lh(t.latestLocation)?a:void 0;if(!t.isScrollRestoring||!t.isServer)return null;const l={storageKey:fu,shouldScrollRestoration:!0};return r&&(l.key=r),R.jsx(PR,{children:`(${_S.toString()})(${JSON.stringify(l)})`})}const US=_.memo(function({matchId:i}){var a,r;const l=sn(),u=Ht({select:U=>{const N=U.matches.find(k=>k.id===i);return Si(N),{routeId:N.routeId,ssr:N.ssr,_displayPending:N._displayPending}},structuralSharing:!0}),f=l.routesById[u.routeId],d=f.options.pendingComponent??l.options.defaultPendingComponent,m=d?R.jsx(d,{}):null,p=f.options.errorComponent??l.options.defaultErrorComponent,v=f.options.onCatch??l.options.defaultOnCatch,g=f.isRoot?f.options.notFoundComponent??((a=l.options.notFoundRoute)==null?void 0:a.options.component):f.options.notFoundComponent,S=u.ssr===!1||u.ssr==="data-only",b=(!f.isRoot||f.options.wrapInSuspense||S)&&(f.options.wrapInSuspense??d??(((r=f.options.errorComponent)==null?void 0:r.preload)||S))?_.Suspense:Ts,E=p?Ih:Ts,w=g?UR:Ts,x=Ht({select:U=>U.loadedAt}),A=Ht({select:U=>{var N;const k=U.matches.findIndex(G=>G.id===i);return(N=U.matches[k-1])==null?void 0:N.routeId}}),D=f.isRoot?f.options.shellComponent??Ts:Ts;return R.jsxs(D,{children:[R.jsx(Ou.Provider,{value:i,children:R.jsx(b,{fallback:m,children:R.jsx(E,{getResetKey:()=>x,errorComponent:p||Tu,onCatch:(U,N)=>{if(Vn(U))throw U;v?.(U,N)},children:R.jsx(w,{fallback:U=>{if(!g||U.routeId&&U.routeId!==u.routeId||!U.routeId&&!f.isRoot)throw U;return _.createElement(g,U)},children:S||u._displayPending?R.jsx(oR,{fallback:m,children:R.jsx(Yy,{matchId:i})}):R.jsx(Yy,{matchId:i})})})})}),A===_n&&l.options.scrollRestoration?R.jsxs(R.Fragment,{children:[R.jsx($R,{}),R.jsx(zR,{})]}):null]})});function $R(){const t=sn(),i=_.useRef(void 0);return R.jsx("script",{suppressHydrationWarning:!0,ref:a=>{a&&(i.current===void 0||i.current.href!==t.latestLocation.href)&&(t.emit({type:"onRendered",...Ra(t.state)}),i.current=t.latestLocation)}},t.latestLocation.state.__TSR_key)}const Yy=_.memo(function({matchId:i}){var a,r,l,u;const f=sn(),{match:d,key:m,routeId:p}=Ht({select:S=>{const b=S.matches.find(D=>D.id===i),E=b.routeId,w=f.routesById[E].options.remountDeps??f.options.defaultRemountDeps,x=w?.({routeId:E,loaderDeps:b.loaderDeps,params:b._strictParams,search:b._strictSearch});return{key:x?JSON.stringify(x):void 0,routeId:E,match:{id:b.id,status:b.status,error:b.error,_forcePending:b._forcePending,_displayPending:b._displayPending}}},structuralSharing:!0}),v=f.routesById[p],g=_.useMemo(()=>{const S=v.options.component??f.options.defaultComponent;return S?R.jsx(S,{},m):R.jsx(jS,{})},[m,v.options.component,f.options.defaultComponent]);if(d._displayPending)throw(a=f.getMatch(d.id))==null?void 0:a._nonReactive.displayPendingPromise;if(d._forcePending)throw(r=f.getMatch(d.id))==null?void 0:r._nonReactive.minPendingPromise;if(d.status==="pending"){const S=v.options.pendingMinMs??f.options.defaultPendingMinMs;if(S){const b=f.getMatch(d.id);if(b&&!b._nonReactive.minPendingPromise&&!f.isServer){const E=js();b._nonReactive.minPendingPromise=E,setTimeout(()=>{E.resolve(),b._nonReactive.minPendingPromise=void 0},S)}}throw(l=f.getMatch(d.id))==null?void 0:l._nonReactive.loadPromise}if(d.status==="notFound")return Si(Vn(d.error)),LS(f,v,d.error);if(d.status==="redirected")throw Si(Bn(d.error)),(u=f.getMatch(d.id))==null?void 0:u._nonReactive.loadPromise;if(d.status==="error"){if(f.isServer){const S=(v.options.errorComponent??f.options.defaultErrorComponent)||Tu;return R.jsx(S,{error:d.error,reset:void 0,info:{componentStack:""}})}throw d.error}return g}),jS=_.memo(function(){const i=sn(),a=_.useContext(Ou),r=Ht({select:p=>{var v;return(v=p.matches.find(g=>g.id===a))==null?void 0:v.routeId}}),l=i.routesById[r],u=Ht({select:p=>{const g=p.matches.find(S=>S.id===a);return Si(g),g.globalNotFound}}),f=Ht({select:p=>{var v;const g=p.matches,S=g.findIndex(b=>b.id===a);return(v=g[S+1])==null?void 0:v.id}}),d=i.options.defaultPendingComponent?R.jsx(i.options.defaultPendingComponent,{}):null;if(u)return LS(i,l,void 0);if(!f)return null;const m=R.jsx(US,{matchId:f});return a===_n?R.jsx(_.Suspense,{fallback:d,children:m}):m});function BR(){const t=sn(),i=t.options.defaultPendingComponent?R.jsx(t.options.defaultPendingComponent,{}):null,a=t.isServer||typeof document<"u"&&t.ssr?Ts:_.Suspense,r=R.jsxs(a,{fallback:i,children:[!t.isServer&&R.jsx(LR,{}),R.jsx(qR,{})]});return t.options.InnerWrap?R.jsx(t.options.InnerWrap,{children:r}):r}function qR(){const t=sn(),i=Ht({select:l=>{var u;return(u=l.matches[0])==null?void 0:u.id}}),a=Ht({select:l=>l.loadedAt}),r=i?R.jsx(US,{matchId:i}):null;return R.jsx(Ou.Provider,{value:i,children:t.options.disableGlobalCatchBoundary?r:R.jsx(Ih,{getResetKey:()=>a,errorComponent:Tu,onCatch:l=>{l.message||l.toString()},children:r})})}const IR=t=>new FR(t);class FR extends WC{constructor(i){super(i)}}typeof globalThis<"u"?(globalThis.createFileRoute=ft,globalThis.createLazyFileRoute=Qy):typeof window<"u"&&(window.createFileRoute=ft,window.createLazyFileRoute=Qy);function HR({router:t,children:i,...a}){Object.keys(a).length>0&&t.update({...t.options,...a,context:{...t.options.context,...a.context}});const r=MS(),l=R.jsx(r.Provider,{value:t,children:i});return t.options.Wrap?R.jsx(t.options.Wrap,{children:l}):l}function VR({router:t,...i}){return R.jsx(HR,{router:t,...i,children:R.jsx(BR,{})})}var wd={exports:{}};var Gy;function kR(){return Gy||(Gy=1,(function(t){(function(){var i={}.hasOwnProperty;function a(){for(var u="",f=0;f{const d=t||"p";return R.jsx(d,{...f,className:et(Ky.typography,Ky[`font-${a}-${l}-${r}`],u),children:i})},Xy=({as:t="p",children:i,...a})=>R.jsx(ex,{as:t,type:"body",...a,children:i}),tx="_destructive_1pz9o_95",Ed={"icon-button":"_icon-button_1pz9o_8","no-background":"_no-background_1pz9o_42",destructive:tx},IS=_.forwardRef(function({as:i,children:a,className:r,disabled:l,...u},f){const d=i||"button",{onClick:m,onSubmit:p,onPointerDown:v,onPointerUp:g,onKeyDown:S,onKeyUp:b,onKeyPress:E,...w}=u,x=l?{}:{onClick:m,onSubmit:p,onPointerDown:v,onPointerUp:g,onKeyDown:S,onKeyUp:b,onKeyPress:E};return R.jsx(d,{ref:f,className:r,role:i==="a"?"link":"button",tabIndex:0,"aria-disabled":l,...w,...x,children:a})}),nx={"indicator-icon":"_indicator-icon_zr2a0_17"},ix=_.forwardRef(function({children:i,className:a,size:r="100%",colour:l,indicator:u},f){const d=et(nx["indicator-icon"],a);return R.jsx("div",{ref:f,className:d,"data-indicator":u,style:{"--cpd-icon-button-size":r,"--cpd-color-icon-tertiary":l},children:re.Children.only(i)})}),FS=_.createContext(null);function Gh(){const t=_.useContext(FS);if(t==null)throw new Error("Tooltip components must be wrapped in ");return t}function Mu(){return typeof window<"u"}function Ys(t){return Kh(t)?(t.nodeName||"").toLowerCase():"#document"}function Vt(t){var i;return(t==null||(i=t.ownerDocument)==null?void 0:i.defaultView)||window}function Yn(t){var i;return(i=(Kh(t)?t.ownerDocument:t.document)||window.document)==null?void 0:i.documentElement}function Kh(t){return Mu()?t instanceof Node||t instanceof Vt(t).Node:!1}function Qe(t){return Mu()?t instanceof Element||t instanceof Vt(t).Element:!1}function nn(t){return Mu()?t instanceof HTMLElement||t instanceof Vt(t).HTMLElement:!1}function ch(t){return!Mu()||typeof ShadowRoot>"u"?!1:t instanceof ShadowRoot||t instanceof Vt(t).ShadowRoot}const ax=new Set(["inline","contents"]);function po(t){const{overflow:i,overflowX:a,overflowY:r,display:l}=an(t);return/auto|scroll|overlay|hidden|clip/.test(i+r+a)&&!ax.has(l)}const sx=new Set(["table","td","th"]);function rx(t){return sx.has(Ys(t))}const ox=[":popover-open",":modal"];function Nu(t){return ox.some(i=>{try{return t.matches(i)}catch{return!1}})}const lx=["transform","translate","scale","rotate","perspective"],ux=["transform","translate","scale","rotate","perspective","filter"],cx=["paint","layout","strict","content"];function Xh(t){const i=Lu(),a=Qe(t)?an(t):t;return lx.some(r=>a[r]?a[r]!=="none":!1)||(a.containerType?a.containerType!=="normal":!1)||!i&&(a.backdropFilter?a.backdropFilter!=="none":!1)||!i&&(a.filter?a.filter!=="none":!1)||ux.some(r=>(a.willChange||"").includes(r))||cx.some(r=>(a.contain||"").includes(r))}function fx(t){let i=bi(t);for(;nn(i)&&!yi(i);){if(Xh(i))return i;if(Nu(i))return null;i=bi(i)}return null}function Lu(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const dx=new Set(["html","body","#document"]);function yi(t){return dx.has(Ys(t))}function an(t){return Vt(t).getComputedStyle(t)}function Uu(t){return Qe(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function bi(t){if(Ys(t)==="html")return t;const i=t.assignedSlot||t.parentNode||ch(t)&&t.host||Yn(t);return ch(i)?i.host:i}function HS(t){const i=bi(t);return yi(i)?t.ownerDocument?t.ownerDocument.body:t.body:nn(i)&&po(i)?i:HS(i)}function Wi(t,i,a){var r;i===void 0&&(i=[]),a===void 0&&(a=!0);const l=HS(t),u=l===((r=t.ownerDocument)==null?void 0:r.body),f=Vt(l);if(u){const d=fh(f);return i.concat(f,f.visualViewport||[],po(l)?l:[],d&&a?Wi(d):[])}return i.concat(l,Wi(l,[],a))}function fh(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}const Is=Math.min,xa=Math.max,mu=Math.round,Bl=Math.floor,Hn=t=>({x:t,y:t}),hx={left:"right",right:"left",bottom:"top",top:"bottom"},mx={start:"end",end:"start"};function dh(t,i,a){return xa(t,Is(i,a))}function go(t,i){return typeof t=="function"?t(i):t}function Da(t){return t.split("-")[0]}function vo(t){return t.split("-")[1]}function VS(t){return t==="x"?"y":"x"}function Zh(t){return t==="y"?"height":"width"}const px=new Set(["top","bottom"]);function Ki(t){return px.has(Da(t))?"y":"x"}function Jh(t){return VS(Ki(t))}function gx(t,i,a){a===void 0&&(a=!1);const r=vo(t),l=Jh(t),u=Zh(l);let f=l==="x"?r===(a?"end":"start")?"right":"left":r==="start"?"bottom":"top";return i.reference[u]>i.floating[u]&&(f=pu(f)),[f,pu(f)]}function vx(t){const i=pu(t);return[hh(t),i,hh(i)]}function hh(t){return t.replace(/start|end/g,i=>mx[i])}const Zy=["left","right"],Jy=["right","left"],yx=["top","bottom"],Sx=["bottom","top"];function bx(t,i,a){switch(t){case"top":case"bottom":return a?i?Jy:Zy:i?Zy:Jy;case"left":case"right":return i?yx:Sx;default:return[]}}function _x(t,i,a,r){const l=vo(t);let u=bx(Da(t),a==="start",r);return l&&(u=u.map(f=>f+"-"+l),i&&(u=u.concat(u.map(hh)))),u}function pu(t){return t.replace(/left|right|bottom|top/g,i=>hx[i])}function wx(t){return{top:0,right:0,bottom:0,left:0,...t}}function kS(t){return typeof t!="number"?wx(t):{top:t,right:t,bottom:t,left:t}}function gu(t){const{x:i,y:a,width:r,height:l}=t;return{width:r,height:l,top:a,left:i,right:i+r,bottom:a+l,x:i,y:a}}var Ex=["input:not([inert])","select:not([inert])","textarea:not([inert])","a[href]:not([inert])","button:not([inert])","[tabindex]:not(slot):not([inert])","audio[controls]:not([inert])","video[controls]:not([inert])",'[contenteditable]:not([contenteditable="false"]):not([inert])',"details>summary:first-of-type:not([inert])","details:not([inert])"],mh=Ex.join(","),QS=typeof Element>"u",oo=QS?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,vu=!QS&&Element.prototype.getRootNode?function(t){var i;return t==null||(i=t.getRootNode)===null||i===void 0?void 0:i.call(t)}:function(t){return t?.ownerDocument},yu=function t(i,a){var r;a===void 0&&(a=!0);var l=i==null||(r=i.getAttribute)===null||r===void 0?void 0:r.call(i,"inert"),u=l===""||l==="true",f=u||a&&i&&t(i.parentNode);return f},Cx=function(i){var a,r=i==null||(a=i.getAttribute)===null||a===void 0?void 0:a.call(i,"contenteditable");return r===""||r==="true"},Rx=function(i,a,r){if(yu(i))return[];var l=Array.prototype.slice.apply(i.querySelectorAll(mh));return a&&oo.call(i,mh)&&l.unshift(i),l=l.filter(r),l},xx=function t(i,a,r){for(var l=[],u=Array.from(i);u.length;){var f=u.shift();if(!yu(f,!1))if(f.tagName==="SLOT"){var d=f.assignedElements(),m=d.length?d:f.children,p=t(m,!0,r);r.flatten?l.push.apply(l,p):l.push({scopeParent:f,candidates:p})}else{var v=oo.call(f,mh);v&&r.filter(f)&&(a||!i.includes(f))&&l.push(f);var g=f.shadowRoot||typeof r.getShadowRoot=="function"&&r.getShadowRoot(f),S=!yu(g,!1)&&(!r.shadowRootFilter||r.shadowRootFilter(f));if(g&&S){var b=t(g===!0?f.children:g.children,!0,r);r.flatten?l.push.apply(l,b):l.push({scopeParent:f,candidates:b})}else u.unshift.apply(u,f.children)}}return l},YS=function(i){return!isNaN(parseInt(i.getAttribute("tabindex"),10))},GS=function(i){if(!i)throw new Error("No node provided");return i.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(i.tagName)||Cx(i))&&!YS(i)?0:i.tabIndex},Ax=function(i,a){var r=GS(i);return r<0&&a&&!YS(i)?0:r},Tx=function(i,a){return i.tabIndex===a.tabIndex?i.documentOrder-a.documentOrder:i.tabIndex-a.tabIndex},KS=function(i){return i.tagName==="INPUT"},Ox=function(i){return KS(i)&&i.type==="hidden"},Dx=function(i){var a=i.tagName==="DETAILS"&&Array.prototype.slice.apply(i.children).some(function(r){return r.tagName==="SUMMARY"});return a},Mx=function(i,a){for(var r=0;rsummary:first-of-type"),f=u?i.parentElement:i;if(oo.call(f,"details:not([open]) *"))return!0;if(!r||r==="full"||r==="legacy-full"){if(typeof l=="function"){for(var d=i;i;){var m=i.parentElement,p=vu(i);if(m&&!m.shadowRoot&&l(m)===!0)return Wy(i);i.assignedSlot?i=i.assignedSlot:!m&&p!==i.ownerDocument?i=p.host:i=m}i=d}if(jx(i))return!i.getClientRects().length;if(r!=="legacy-full")return!0}else if(r==="non-zero-area")return Wy(i);return!1},zx=function(i){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(i.tagName))for(var a=i.parentElement;a;){if(a.tagName==="FIELDSET"&&a.disabled){for(var r=0;r=0)},qx=function t(i){var a=[],r=[];return i.forEach(function(l,u){var f=!!l.scopeParent,d=f?l.scopeParent:l,m=Ax(d,f),p=f?t(l.candidates):d;m===0?f?a.push.apply(a,p):a.push(d):r.push({documentOrder:u,tabIndex:m,item:l,isScope:f,content:p})}),r.sort(Tx).reduce(function(l,u){return u.isScope?l.push.apply(l,u.content):l.push(u.content),l},[]).concat(a)},XS=function(i,a){a=a||{};var r;return a.getShadowRoot?r=xx([i],a.includeContainer,{filter:e0.bind(null,a),flatten:!1,getShadowRoot:a.getShadowRoot,shadowRootFilter:Bx}):r=Rx(i,a.includeContainer,e0.bind(null,a)),qx(r)};function Ix(){const t=navigator.userAgentData;return t!=null&&t.platform?t.platform:navigator.platform}function Fx(){const t=navigator.userAgentData;return t&&Array.isArray(t.brands)?t.brands.map(i=>{let{brand:a,version:r}=i;return a+"/"+r}).join(" "):navigator.userAgent}function ZS(){return/apple/i.test(navigator.vendor)}function Hx(){return Ix().toLowerCase().startsWith("mac")&&!navigator.maxTouchPoints}function Vx(){return Fx().includes("jsdom/")}const t0="data-floating-ui-focusable",kx="input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])";function ph(t){let i=t.activeElement;for(;((a=i)==null||(a=a.shadowRoot)==null?void 0:a.activeElement)!=null;){var a;i=i.shadowRoot.activeElement}return i}function Fs(t,i){if(!t||!i)return!1;const a=i.getRootNode==null?void 0:i.getRootNode();if(t.contains(i))return!0;if(a&&ch(a)){let r=i;for(;r;){if(t===r)return!0;r=r.parentNode||r.host}}return!1}function Os(t){return"composedPath"in t?t.composedPath()[0]:t.target}function Cd(t,i){if(i==null)return!1;if("composedPath"in t)return t.composedPath().includes(i);const a=t;return a.target!=null&&i.contains(a.target)}function Qx(t){return t.matches("html,body")}function qn(t){return t?.ownerDocument||document}function Yx(t){return nn(t)&&t.matches(kx)}function Gx(t){if(!t||Vx())return!0;try{return t.matches(":focus-visible")}catch{return!0}}function Kx(t){return t?t.hasAttribute(t0)?t:t.querySelector("["+t0+"]")||t:null}function Jl(t,i,a){return a===void 0&&(a=!0),t.filter(l=>{var u;return l.parentId===i&&(!a||((u=l.context)==null?void 0:u.open))}).flatMap(l=>[l,...Jl(t,l.id,a)])}function Xx(t){return"nativeEvent"in t}function gh(t,i){const a=["mouse","pen"];return a.push("",void 0),a.includes(t)}var Zx=typeof document<"u",Jx=function(){},Nt=Zx?_.useLayoutEffect:Jx;const Wx={...xu};function ql(t){const i=_.useRef(t);return Nt(()=>{i.current=t}),i}const eA=Wx.useInsertionEffect,tA=eA||(t=>t());function zn(t){const i=_.useRef(()=>{});return tA(()=>{i.current=t}),_.useCallback(function(){for(var a=arguments.length,r=new Array(a),l=0;l({getShadowRoot:!0,displayCheck:typeof ResizeObserver=="function"&&ResizeObserver.toString().includes("[native code]")?"full":"none"});function WS(t,i){const a=XS(t,JS()),r=a.length;if(r===0)return;const l=ph(qn(t)),u=a.indexOf(l),f=u===-1?i===1?0:r-1:u+i;return a[f]}function nA(t){return WS(qn(t).body,1)||t}function iA(t){return WS(qn(t).body,-1)||t}function Rd(t,i){const a=i||t.currentTarget,r=t.relatedTarget;return!r||!Fs(a,r)}function aA(t){XS(t,JS()).forEach(a=>{a.dataset.tabindex=a.getAttribute("tabindex")||"",a.setAttribute("tabindex","-1")})}function n0(t){t.querySelectorAll("[data-tabindex]").forEach(a=>{const r=a.dataset.tabindex;delete a.dataset.tabindex,r?a.setAttribute("tabindex",r):a.removeAttribute("tabindex")})}function i0(t,i,a){let{reference:r,floating:l}=t;const u=Ki(i),f=Jh(i),d=Zh(f),m=Da(i),p=u==="y",v=r.x+r.width/2-l.width/2,g=r.y+r.height/2-l.height/2,S=r[d]/2-l[d]/2;let b;switch(m){case"top":b={x:v,y:r.y-l.height};break;case"bottom":b={x:v,y:r.y+r.height};break;case"right":b={x:r.x+r.width,y:g};break;case"left":b={x:r.x-l.width,y:g};break;default:b={x:r.x,y:r.y}}switch(vo(i)){case"start":b[f]-=S*(a&&p?-1:1);break;case"end":b[f]+=S*(a&&p?-1:1);break}return b}const sA=async(t,i,a)=>{const{placement:r="bottom",strategy:l="absolute",middleware:u=[],platform:f}=a,d=u.filter(Boolean),m=await(f.isRTL==null?void 0:f.isRTL(i));let p=await f.getElementRects({reference:t,floating:i,strategy:l}),{x:v,y:g}=i0(p,r,m),S=r,b={},E=0;for(let w=0;w({name:"arrow",options:t,async fn(i){const{x:a,y:r,placement:l,rects:u,platform:f,elements:d,middlewareData:m}=i,{element:p,padding:v=0}=go(t,i)||{};if(p==null)return{};const g=kS(v),S={x:a,y:r},b=Jh(l),E=Zh(b),w=await f.getDimensions(p),x=b==="y",A=x?"top":"left",D=x?"bottom":"right",U=x?"clientHeight":"clientWidth",N=u.reference[E]+u.reference[b]-S[b]-u.floating[E],k=S[b]-u.reference[b],G=await(f.getOffsetParent==null?void 0:f.getOffsetParent(p));let M=G?G[U]:0;(!M||!await(f.isElement==null?void 0:f.isElement(G)))&&(M=d.floating[U]||u.floating[E]);const B=N/2-k/2,Q=M/2-w[E]/2-1,P=Is(g[A],Q),ee=Is(g[D],Q),ne=P,X=M-w[E]-ee,Z=M/2-w[E]/2+B,oe=dh(ne,Z,X),j=!m.arrow&&vo(l)!=null&&Z!==oe&&u.reference[E]/2-(ZZ<=0)){var ee,ne;const Z=(((ee=u.flip)==null?void 0:ee.index)||0)+1,oe=M[Z];if(oe&&(!(g==="alignment"?D!==Ki(oe):!1)||P.every(q=>Ki(q.placement)===D?q.overflows[0]>0:!0)))return{data:{index:Z,overflows:P},reset:{placement:oe}};let j=(ne=P.filter($=>$.overflows[0]<=0).sort(($,q)=>$.overflows[1]-q.overflows[1])[0])==null?void 0:ne.placement;if(!j)switch(b){case"bestFit":{var X;const $=(X=P.filter(q=>{if(G){const ie=Ki(q.placement);return ie===D||ie==="y"}return!0}).map(q=>[q.placement,q.overflows.filter(ie=>ie>0).reduce((ie,se)=>ie+se,0)]).sort((q,ie)=>q[1]-ie[1])[0])==null?void 0:X[0];$&&(j=$);break}case"initialPlacement":j=d;break}if(l!==j)return{reset:{placement:j}}}return{}}}},lA=new Set(["left","top"]);async function uA(t,i){const{placement:a,platform:r,elements:l}=t,u=await(r.isRTL==null?void 0:r.isRTL(l.floating)),f=Da(a),d=vo(a),m=Ki(a)==="y",p=lA.has(f)?-1:1,v=u&&m?-1:1,g=go(i,t);let{mainAxis:S,crossAxis:b,alignmentAxis:E}=typeof g=="number"?{mainAxis:g,crossAxis:0,alignmentAxis:null}:{mainAxis:g.mainAxis||0,crossAxis:g.crossAxis||0,alignmentAxis:g.alignmentAxis};return d&&typeof E=="number"&&(b=d==="end"?E*-1:E),m?{x:b*v,y:S*p}:{x:S*p,y:b*v}}const cA=function(t){return t===void 0&&(t=0),{name:"offset",options:t,async fn(i){var a,r;const{x:l,y:u,placement:f,middlewareData:d}=i,m=await uA(i,t);return f===((a=d.offset)==null?void 0:a.placement)&&(r=d.arrow)!=null&&r.alignmentOffset?{}:{x:l+m.x,y:u+m.y,data:{...m,placement:f}}}}},fA=function(t){return t===void 0&&(t={}),{name:"shift",options:t,async fn(i){const{x:a,y:r,placement:l}=i,{mainAxis:u=!0,crossAxis:f=!1,limiter:d={fn:x=>{let{x:A,y:D}=x;return{x:A,y:D}}},...m}=go(t,i),p={x:a,y:r},v=await eb(i,m),g=Ki(Da(l)),S=VS(g);let b=p[S],E=p[g];if(u){const x=S==="y"?"top":"left",A=S==="y"?"bottom":"right",D=b+v[x],U=b-v[A];b=dh(D,b,U)}if(f){const x=g==="y"?"top":"left",A=g==="y"?"bottom":"right",D=E+v[x],U=E-v[A];E=dh(D,E,U)}const w=d.fn({...i,[S]:b,[g]:E});return{...w,data:{x:w.x-a,y:w.y-r,enabled:{[S]:u,[g]:f}}}}}};function tb(t){const i=an(t);let a=parseFloat(i.width)||0,r=parseFloat(i.height)||0;const l=nn(t),u=l?t.offsetWidth:a,f=l?t.offsetHeight:r,d=mu(a)!==u||mu(r)!==f;return d&&(a=u,r=f),{width:a,height:r,$:d}}function Wh(t){return Qe(t)?t:t.contextElement}function Ns(t){const i=Wh(t);if(!nn(i))return Hn(1);const a=i.getBoundingClientRect(),{width:r,height:l,$:u}=tb(i);let f=(u?mu(a.width):a.width)/r,d=(u?mu(a.height):a.height)/l;return(!f||!Number.isFinite(f))&&(f=1),(!d||!Number.isFinite(d))&&(d=1),{x:f,y:d}}const dA=Hn(0);function nb(t){const i=Vt(t);return!Lu()||!i.visualViewport?dA:{x:i.visualViewport.offsetLeft,y:i.visualViewport.offsetTop}}function hA(t,i,a){return i===void 0&&(i=!1),!a||i&&a!==Vt(t)?!1:i}function Ma(t,i,a,r){i===void 0&&(i=!1),a===void 0&&(a=!1);const l=t.getBoundingClientRect(),u=Wh(t);let f=Hn(1);i&&(r?Qe(r)&&(f=Ns(r)):f=Ns(t));const d=hA(u,a,r)?nb(u):Hn(0);let m=(l.left+d.x)/f.x,p=(l.top+d.y)/f.y,v=l.width/f.x,g=l.height/f.y;if(u){const S=Vt(u),b=r&&Qe(r)?Vt(r):r;let E=S,w=fh(E);for(;w&&r&&b!==E;){const x=Ns(w),A=w.getBoundingClientRect(),D=an(w),U=A.left+(w.clientLeft+parseFloat(D.paddingLeft))*x.x,N=A.top+(w.clientTop+parseFloat(D.paddingTop))*x.y;m*=x.x,p*=x.y,v*=x.x,g*=x.y,m+=U,p+=N,E=Vt(w),w=fh(E)}}return gu({width:v,height:g,x:m,y:p})}function ju(t,i){const a=Uu(t).scrollLeft;return i?i.left+a:Ma(Yn(t)).left+a}function ib(t,i){const a=t.getBoundingClientRect(),r=a.left+i.scrollLeft-ju(t,a),l=a.top+i.scrollTop;return{x:r,y:l}}function mA(t){let{elements:i,rect:a,offsetParent:r,strategy:l}=t;const u=l==="fixed",f=Yn(r),d=i?Nu(i.floating):!1;if(r===f||d&&u)return a;let m={scrollLeft:0,scrollTop:0},p=Hn(1);const v=Hn(0),g=nn(r);if((g||!g&&!u)&&((Ys(r)!=="body"||po(f))&&(m=Uu(r)),nn(r))){const b=Ma(r);p=Ns(r),v.x=b.x+r.clientLeft,v.y=b.y+r.clientTop}const S=f&&!g&&!u?ib(f,m):Hn(0);return{width:a.width*p.x,height:a.height*p.y,x:a.x*p.x-m.scrollLeft*p.x+v.x+S.x,y:a.y*p.y-m.scrollTop*p.y+v.y+S.y}}function pA(t){return Array.from(t.getClientRects())}function gA(t){const i=Yn(t),a=Uu(t),r=t.ownerDocument.body,l=xa(i.scrollWidth,i.clientWidth,r.scrollWidth,r.clientWidth),u=xa(i.scrollHeight,i.clientHeight,r.scrollHeight,r.clientHeight);let f=-a.scrollLeft+ju(t);const d=-a.scrollTop;return an(r).direction==="rtl"&&(f+=xa(i.clientWidth,r.clientWidth)-l),{width:l,height:u,x:f,y:d}}const a0=25;function vA(t,i){const a=Vt(t),r=Yn(t),l=a.visualViewport;let u=r.clientWidth,f=r.clientHeight,d=0,m=0;if(l){u=l.width,f=l.height;const v=Lu();(!v||v&&i==="fixed")&&(d=l.offsetLeft,m=l.offsetTop)}const p=ju(r);if(p<=0){const v=r.ownerDocument,g=v.body,S=getComputedStyle(g),b=v.compatMode==="CSS1Compat"&&parseFloat(S.marginLeft)+parseFloat(S.marginRight)||0,E=Math.abs(r.clientWidth-g.clientWidth-b);E<=a0&&(u-=E)}else p<=a0&&(u+=p);return{width:u,height:f,x:d,y:m}}const yA=new Set(["absolute","fixed"]);function SA(t,i){const a=Ma(t,!0,i==="fixed"),r=a.top+t.clientTop,l=a.left+t.clientLeft,u=nn(t)?Ns(t):Hn(1),f=t.clientWidth*u.x,d=t.clientHeight*u.y,m=l*u.x,p=r*u.y;return{width:f,height:d,x:m,y:p}}function s0(t,i,a){let r;if(i==="viewport")r=vA(t,a);else if(i==="document")r=gA(Yn(t));else if(Qe(i))r=SA(i,a);else{const l=nb(t);r={x:i.x-l.x,y:i.y-l.y,width:i.width,height:i.height}}return gu(r)}function ab(t,i){const a=bi(t);return a===i||!Qe(a)||yi(a)?!1:an(a).position==="fixed"||ab(a,i)}function bA(t,i){const a=i.get(t);if(a)return a;let r=Wi(t,[],!1).filter(d=>Qe(d)&&Ys(d)!=="body"),l=null;const u=an(t).position==="fixed";let f=u?bi(t):t;for(;Qe(f)&&!yi(f);){const d=an(f),m=Xh(f);!m&&d.position==="fixed"&&(l=null),(u?!m&&!l:!m&&d.position==="static"&&!!l&&yA.has(l.position)||po(f)&&!m&&ab(t,f))?r=r.filter(v=>v!==f):l=d,f=bi(f)}return i.set(t,r),r}function _A(t){let{element:i,boundary:a,rootBoundary:r,strategy:l}=t;const f=[...a==="clippingAncestors"?Nu(i)?[]:bA(i,this._c):[].concat(a),r],d=f[0],m=f.reduce((p,v)=>{const g=s0(i,v,l);return p.top=xa(g.top,p.top),p.right=Is(g.right,p.right),p.bottom=Is(g.bottom,p.bottom),p.left=xa(g.left,p.left),p},s0(i,d,l));return{width:m.right-m.left,height:m.bottom-m.top,x:m.left,y:m.top}}function wA(t){const{width:i,height:a}=tb(t);return{width:i,height:a}}function EA(t,i,a){const r=nn(i),l=Yn(i),u=a==="fixed",f=Ma(t,!0,u,i);let d={scrollLeft:0,scrollTop:0};const m=Hn(0);function p(){m.x=ju(l)}if(r||!r&&!u)if((Ys(i)!=="body"||po(l))&&(d=Uu(i)),r){const b=Ma(i,!0,u,i);m.x=b.x+i.clientLeft,m.y=b.y+i.clientTop}else l&&p();u&&!r&&l&&p();const v=l&&!r&&!u?ib(l,d):Hn(0),g=f.left+d.scrollLeft-m.x-v.x,S=f.top+d.scrollTop-m.y-v.y;return{x:g,y:S,width:f.width,height:f.height}}function xd(t){return an(t).position==="static"}function r0(t,i){if(!nn(t)||an(t).position==="fixed")return null;if(i)return i(t);let a=t.offsetParent;return Yn(t)===a&&(a=a.ownerDocument.body),a}function sb(t,i){const a=Vt(t);if(Nu(t))return a;if(!nn(t)){let l=bi(t);for(;l&&!yi(l);){if(Qe(l)&&!xd(l))return l;l=bi(l)}return a}let r=r0(t,i);for(;r&&rx(r)&&xd(r);)r=r0(r,i);return r&&yi(r)&&xd(r)&&!Xh(r)?a:r||fx(t)||a}const CA=async function(t){const i=this.getOffsetParent||sb,a=this.getDimensions,r=await a(t.floating);return{reference:EA(t.reference,await i(t.floating),t.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function RA(t){return an(t).direction==="rtl"}const xA={convertOffsetParentRelativeRectToViewportRelativeRect:mA,getDocumentElement:Yn,getClippingRect:_A,getOffsetParent:sb,getElementRects:CA,getClientRects:pA,getDimensions:wA,getScale:Ns,isElement:Qe,isRTL:RA};function rb(t,i){return t.x===i.x&&t.y===i.y&&t.width===i.width&&t.height===i.height}function AA(t,i){let a=null,r;const l=Yn(t);function u(){var d;clearTimeout(r),(d=a)==null||d.disconnect(),a=null}function f(d,m){d===void 0&&(d=!1),m===void 0&&(m=1),u();const p=t.getBoundingClientRect(),{left:v,top:g,width:S,height:b}=p;if(d||i(),!S||!b)return;const E=Bl(g),w=Bl(l.clientWidth-(v+S)),x=Bl(l.clientHeight-(g+b)),A=Bl(v),U={rootMargin:-E+"px "+-w+"px "+-x+"px "+-A+"px",threshold:xa(0,Is(1,m))||1};let N=!0;function k(G){const M=G[0].intersectionRatio;if(M!==m){if(!N)return f();M?f(!1,M):r=setTimeout(()=>{f(!1,1e-7)},1e3)}M===1&&!rb(p,t.getBoundingClientRect())&&f(),N=!1}try{a=new IntersectionObserver(k,{...U,root:l.ownerDocument})}catch{a=new IntersectionObserver(k,U)}a.observe(t)}return f(!0),u}function TA(t,i,a,r){r===void 0&&(r={});const{ancestorScroll:l=!0,ancestorResize:u=!0,elementResize:f=typeof ResizeObserver=="function",layoutShift:d=typeof IntersectionObserver=="function",animationFrame:m=!1}=r,p=Wh(t),v=l||u?[...p?Wi(p):[],...Wi(i)]:[];v.forEach(A=>{l&&A.addEventListener("scroll",a,{passive:!0}),u&&A.addEventListener("resize",a)});const g=p&&d?AA(p,a):null;let S=-1,b=null;f&&(b=new ResizeObserver(A=>{let[D]=A;D&&D.target===p&&b&&(b.unobserve(i),cancelAnimationFrame(S),S=requestAnimationFrame(()=>{var U;(U=b)==null||U.observe(i)})),a()}),p&&!m&&b.observe(p),b.observe(i));let E,w=m?Ma(t):null;m&&x();function x(){const A=Ma(t);w&&!rb(w,A)&&a(),w=A,E=requestAnimationFrame(x)}return a(),()=>{var A;v.forEach(D=>{l&&D.removeEventListener("scroll",a),u&&D.removeEventListener("resize",a)}),g?.(),(A=b)==null||A.disconnect(),b=null,m&&cancelAnimationFrame(E)}}const OA=cA,DA=fA,MA=oA,o0=rA,NA=(t,i,a)=>{const r=new Map,l={platform:xA,...a},u={...l.platform,_c:r};return sA(t,i,{...l,platform:u})};var LA=typeof document<"u",UA=function(){},Wl=LA?_.useLayoutEffect:UA;function Su(t,i){if(t===i)return!0;if(typeof t!=typeof i)return!1;if(typeof t=="function"&&t.toString()===i.toString())return!0;let a,r,l;if(t&&i&&typeof t=="object"){if(Array.isArray(t)){if(a=t.length,a!==i.length)return!1;for(r=a;r--!==0;)if(!Su(t[r],i[r]))return!1;return!0}if(l=Object.keys(t),a=l.length,a!==Object.keys(i).length)return!1;for(r=a;r--!==0;)if(!{}.hasOwnProperty.call(i,l[r]))return!1;for(r=a;r--!==0;){const u=l[r];if(!(u==="_owner"&&t.$$typeof)&&!Su(t[u],i[u]))return!1}return!0}return t!==t&&i!==i}function ob(t){return typeof window>"u"?1:(t.ownerDocument.defaultView||window).devicePixelRatio||1}function l0(t,i){const a=ob(t);return Math.round(i*a)/a}function Ad(t){const i=_.useRef(t);return Wl(()=>{i.current=t}),i}function jA(t){t===void 0&&(t={});const{placement:i="bottom",strategy:a="absolute",middleware:r=[],platform:l,elements:{reference:u,floating:f}={},transform:d=!0,whileElementsMounted:m,open:p}=t,[v,g]=_.useState({x:0,y:0,strategy:a,placement:i,middlewareData:{},isPositioned:!1}),[S,b]=_.useState(r);Su(S,r)||b(r);const[E,w]=_.useState(null),[x,A]=_.useState(null),D=_.useCallback(q=>{q!==G.current&&(G.current=q,w(q))},[]),U=_.useCallback(q=>{q!==M.current&&(M.current=q,A(q))},[]),N=u||E,k=f||x,G=_.useRef(null),M=_.useRef(null),B=_.useRef(v),Q=m!=null,P=Ad(m),ee=Ad(l),ne=Ad(p),X=_.useCallback(()=>{if(!G.current||!M.current)return;const q={placement:i,strategy:a,middleware:S};ee.current&&(q.platform=ee.current),NA(G.current,M.current,q).then(ie=>{const se={...ie,isPositioned:ne.current!==!1};Z.current&&!Su(B.current,se)&&(B.current=se,Qs.flushSync(()=>{g(se)}))})},[S,i,a,ee,ne]);Wl(()=>{p===!1&&B.current.isPositioned&&(B.current.isPositioned=!1,g(q=>({...q,isPositioned:!1})))},[p]);const Z=_.useRef(!1);Wl(()=>(Z.current=!0,()=>{Z.current=!1}),[]),Wl(()=>{if(N&&(G.current=N),k&&(M.current=k),N&&k){if(P.current)return P.current(N,k,X);X()}},[N,k,X,P,Q]);const oe=_.useMemo(()=>({reference:G,floating:M,setReference:D,setFloating:U}),[D,U]),j=_.useMemo(()=>({reference:N,floating:k}),[N,k]),$=_.useMemo(()=>{const q={position:a,left:0,top:0};if(!j.floating)return q;const ie=l0(j.floating,v.x),se=l0(j.floating,v.y);return d?{...q,transform:"translate("+ie+"px, "+se+"px)",...ob(j.floating)>=1.5&&{willChange:"transform"}}:{position:a,left:ie,top:se}},[a,d,j.floating,v.x,v.y]);return _.useMemo(()=>({...v,update:X,refs:oe,elements:j,floatingStyles:$}),[v,X,oe,j,$])}const PA=t=>{function i(a){return{}.hasOwnProperty.call(a,"current")}return{name:"arrow",options:t,fn(a){const{element:r,padding:l}=typeof t=="function"?t(a):t;return r&&i(r)?r.current!=null?o0({element:r.current,padding:l}).fn(a):{}:r?o0({element:r,padding:l}).fn(a):{}}}},zA=(t,i)=>({...OA(t),options:[t,i]}),$A=(t,i)=>({...DA(t),options:[t,i]}),BA=(t,i)=>({...MA(t),options:[t,i]}),qA=(t,i)=>({...PA(t),options:[t,i]});function IA(t){const i=_.useRef(void 0),a=_.useCallback(r=>{const l=t.map(u=>{if(u!=null){if(typeof u=="function"){const f=u,d=f(r);return typeof d=="function"?d:()=>{f(null)}}return u.current=r,()=>{u.current=null}}});return()=>{l.forEach(u=>u?.())}},t);return _.useMemo(()=>t.every(r=>r==null)?null:r=>{i.current&&(i.current(),i.current=void 0),r!=null&&(i.current=a(r))},t)}const FA="data-floating-ui-focusable",u0="active",c0="selected",HA={...xu};let f0=!1,VA=0;const d0=()=>"floating-ui-"+Math.random().toString(36).slice(2,6)+VA++;function kA(){const[t,i]=_.useState(()=>f0?d0():void 0);return Nt(()=>{t==null&&i(d0())},[]),_.useEffect(()=>{f0=!0},[]),t}const QA=HA.useId,Hs=QA||kA,YA=_.forwardRef(function(i,a){const{context:{placement:r,elements:{floating:l},middlewareData:{arrow:u,shift:f}},width:d=14,height:m=7,tipRadius:p=0,strokeWidth:v=0,staticOffset:g,stroke:S,d:b,style:{transform:E,...w}={},...x}=i,A=Hs(),[D,U]=_.useState(!1);if(Nt(()=>{if(!l)return;an(l).direction==="rtl"&&U(!0)},[l]),!l)return null;const[N,k]=r.split("-"),G=N==="top"||N==="bottom";let M=g;(G&&f!=null&&f.x||!G&&f!=null&&f.y)&&(M=null);const B=v*2,Q=B/2,P=d/2*(p/-8+1),ee=m/2*p/4,ne=!!b,X=M&&k==="end"?"bottom":"top";let Z=M&&k==="end"?"right":"left";M&&D&&(Z=k==="end"?"left":"right");const oe=u?.x!=null?M||u.x:"",j=u?.y!=null?M||u.y:"",$=b||"M0,0"+(" H"+d)+(" L"+(d-P)+","+(m-ee))+(" Q"+d/2+","+m+" "+P+","+(m-ee))+" Z",q={top:ne?"rotate(180deg)":"",left:ne?"rotate(90deg)":"rotate(-90deg)",bottom:ne?"":"rotate(180deg)",right:ne?"rotate(-90deg)":"rotate(90deg)"}[N];return R.jsxs("svg",{...x,"aria-hidden":!0,ref:a,width:ne?d:d+B,height:d,viewBox:"0 0 "+d+" "+(m>d?m:d),style:{position:"absolute",pointerEvents:"none",[Z]:oe,[X]:j,[N]:G||ne?"100%":"calc(100% - "+B/2+"px)",transform:[q,E].filter(ie=>!!ie).join(" "),...w},children:[B>0&&R.jsx("path",{clipPath:"url(#"+A+")",fill:"none",stroke:S,strokeWidth:B+(b?0:1),d:$}),R.jsx("path",{stroke:B&&!b?x.fill:"none",d:$}),R.jsx("clipPath",{id:A,children:R.jsx("rect",{x:-Q,y:Q*(ne?-1:1),width:d+B,height:d})})]})});function GA(){const t=new Map;return{emit(i,a){var r;(r=t.get(i))==null||r.forEach(l=>l(a))},on(i,a){t.has(i)||t.set(i,new Set),t.get(i).add(a)},off(i,a){var r;(r=t.get(i))==null||r.delete(a)}}}const KA=_.createContext(null),XA=_.createContext(null),em=()=>{var t;return((t=_.useContext(KA))==null?void 0:t.id)||null},tm=()=>_.useContext(XA);function yo(t){return"data-floating-ui-"+t}function yn(t){t.current!==-1&&(clearTimeout(t.current),t.current=-1)}const h0=yo("safe-polygon");function eu(t,i,a){if(a&&!gh(a))return 0;if(typeof t=="number")return t;if(typeof t=="function"){const r=t();return typeof r=="number"?r:r?.[i]}return t?.[i]}function Td(t){return typeof t=="function"?t():t}function ZA(t,i){i===void 0&&(i={});const{open:a,onOpenChange:r,dataRef:l,events:u,elements:f}=t,{enabled:d=!0,delay:m=0,handleClose:p=null,mouseOnly:v=!1,restMs:g=0,move:S=!0}=i,b=tm(),E=em(),w=ql(p),x=ql(m),A=ql(a),D=ql(g),U=_.useRef(),N=_.useRef(-1),k=_.useRef(),G=_.useRef(-1),M=_.useRef(!0),B=_.useRef(!1),Q=_.useRef(()=>{}),P=_.useRef(!1),ee=zn(()=>{var $;const q=($=l.current.openEvent)==null?void 0:$.type;return q?.includes("mouse")&&q!=="mousedown"});_.useEffect(()=>{if(!d)return;function $(q){let{open:ie}=q;ie||(yn(N),yn(G),M.current=!0,P.current=!1)}return u.on("openchange",$),()=>{u.off("openchange",$)}},[d,u]),_.useEffect(()=>{if(!d||!w.current||!a)return;function $(ie){ee()&&r(!1,ie,"hover")}const q=qn(f.floating).documentElement;return q.addEventListener("mouseleave",$),()=>{q.removeEventListener("mouseleave",$)}},[f.floating,a,r,d,w,ee]);const ne=_.useCallback(function($,q,ie){q===void 0&&(q=!0),ie===void 0&&(ie="hover");const se=eu(x.current,"close",U.current);se&&!k.current?(yn(N),N.current=window.setTimeout(()=>r(!1,$,ie),se)):q&&(yn(N),r(!1,$,ie))},[x,r]),X=zn(()=>{Q.current(),k.current=void 0}),Z=zn(()=>{if(B.current){const $=qn(f.floating).body;$.style.pointerEvents="",$.removeAttribute(h0),B.current=!1}}),oe=zn(()=>l.current.openEvent?["click","mousedown"].includes(l.current.openEvent.type):!1);_.useEffect(()=>{if(!d)return;function $(H){if(yn(N),M.current=!1,v&&!gh(U.current)||Td(D.current)>0&&!eu(x.current,"open"))return;const te=eu(x.current,"open",U.current);te?N.current=window.setTimeout(()=>{A.current||r(!0,H,"hover")},te):a||r(!0,H,"hover")}function q(H){if(oe()){Z();return}Q.current();const te=qn(f.floating);if(yn(G),P.current=!1,w.current&&l.current.floatingContext){a||yn(N),k.current=w.current({...l.current.floatingContext,tree:b,x:H.clientX,y:H.clientY,onClose(){Z(),X(),oe()||ne(H,!0,"safe-polygon")}});const le=k.current;te.addEventListener("mousemove",le),Q.current=()=>{te.removeEventListener("mousemove",le)};return}(U.current==="touch"?!Fs(f.floating,H.relatedTarget):!0)&&ne(H)}function ie(H){oe()||l.current.floatingContext&&(w.current==null||w.current({...l.current.floatingContext,tree:b,x:H.clientX,y:H.clientY,onClose(){Z(),X(),oe()||ne(H)}})(H))}function se(){yn(N)}function O(H){oe()||ne(H,!1)}if(Qe(f.domReference)){const H=f.domReference,te=f.floating;return a&&H.addEventListener("mouseleave",ie),S&&H.addEventListener("mousemove",$,{once:!0}),H.addEventListener("mouseenter",$),H.addEventListener("mouseleave",q),te&&(te.addEventListener("mouseleave",ie),te.addEventListener("mouseenter",se),te.addEventListener("mouseleave",O)),()=>{a&&H.removeEventListener("mouseleave",ie),S&&H.removeEventListener("mousemove",$),H.removeEventListener("mouseenter",$),H.removeEventListener("mouseleave",q),te&&(te.removeEventListener("mouseleave",ie),te.removeEventListener("mouseenter",se),te.removeEventListener("mouseleave",O))}}},[f,d,t,v,S,ne,X,Z,r,a,A,b,x,w,l,oe,D]),Nt(()=>{var $;if(d&&a&&($=w.current)!=null&&($=$.__options)!=null&&$.blockPointerEvents&&ee()){B.current=!0;const ie=f.floating;if(Qe(f.domReference)&&ie){var q;const se=qn(f.floating).body;se.setAttribute(h0,"");const O=f.domReference,H=b==null||(q=b.nodesRef.current.find(te=>te.id===E))==null||(q=q.context)==null?void 0:q.elements.floating;return H&&(H.style.pointerEvents=""),se.style.pointerEvents="none",O.style.pointerEvents="auto",ie.style.pointerEvents="auto",()=>{se.style.pointerEvents="",O.style.pointerEvents="",ie.style.pointerEvents=""}}}},[d,a,E,f,b,w,ee]),Nt(()=>{a||(U.current=void 0,P.current=!1,X(),Z())},[a,X,Z]),_.useEffect(()=>()=>{X(),yn(N),yn(G),Z()},[d,f.domReference,X,Z]);const j=_.useMemo(()=>{function $(q){U.current=q.pointerType}return{onPointerDown:$,onPointerEnter:$,onMouseMove(q){const{nativeEvent:ie}=q;function se(){!M.current&&!A.current&&r(!0,ie,"hover")}v&&!gh(U.current)||a||Td(D.current)===0||P.current&&q.movementX**2+q.movementY**2<2||(yn(G),U.current==="touch"?se():(P.current=!0,G.current=window.setTimeout(se,Td(D.current))))}}},[v,r,a,A,D]);return _.useMemo(()=>d?{reference:j}:{},[d,j])}const vh=()=>{},lb=_.createContext({delay:0,initialDelay:0,timeoutMs:0,currentId:null,setCurrentId:vh,setState:vh,isInstantPhase:!1}),JA=()=>_.useContext(lb);function WA(t){const{children:i,delay:a,timeoutMs:r=0}=t,[l,u]=_.useReducer((m,p)=>({...m,...p}),{delay:a,timeoutMs:r,initialDelay:a,currentId:null,isInstantPhase:!1}),f=_.useRef(null),d=_.useCallback(m=>{u({currentId:m})},[]);return Nt(()=>{l.currentId?f.current===null?f.current=l.currentId:l.isInstantPhase||u({isInstantPhase:!0}):(l.isInstantPhase&&u({isInstantPhase:!1}),f.current=null)},[l.currentId,l.isInstantPhase]),R.jsx(lb.Provider,{value:_.useMemo(()=>({...l,setState:u,setCurrentId:d}),[l,d]),children:i})}function e2(t,i){i===void 0&&(i={});const{open:a,onOpenChange:r,floatingId:l}=t,{id:u,enabled:f=!0}=i,d=u??l,m=JA(),{currentId:p,setCurrentId:v,initialDelay:g,setState:S,timeoutMs:b}=m;return Nt(()=>{f&&p&&(S({delay:{open:1,close:eu(g,"close")}}),p!==d&&r(!1))},[f,d,r,S,p,g]),Nt(()=>{function E(){r(!1),S({delay:g,currentId:null})}if(f&&p&&!a&&p===d){if(b){const w=window.setTimeout(E,b);return()=>{clearTimeout(w)}}E()}},[f,a,S,p,d,r,g,b]),Nt(()=>{f&&(v===vh||!a||v(d))},[f,a,v,d]),m}const ub={border:0,clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:0,position:"fixed",whiteSpace:"nowrap",width:"1px",top:0,left:0},m0=_.forwardRef(function(i,a){const[r,l]=_.useState();Nt(()=>{ZS()&&l("button")},[]);const u={ref:a,tabIndex:0,role:r,"aria-hidden":r?void 0:!0,[yo("focus-guard")]:"",style:ub};return R.jsx("span",{...i,...u})}),cb=_.createContext(null),p0=yo("portal");function t2(t){t===void 0&&(t={});const{id:i,root:a}=t,r=Hs(),l=i2(),[u,f]=_.useState(null),d=_.useRef(null);return Nt(()=>()=>{u?.remove(),queueMicrotask(()=>{d.current=null})},[u]),Nt(()=>{if(!r||d.current)return;const m=i?document.getElementById(i):null;if(!m)return;const p=document.createElement("div");p.id=r,p.setAttribute(p0,""),m.appendChild(p),d.current=p,f(p)},[i,r]),Nt(()=>{if(a===null||!r||d.current)return;let m=a||l?.portalNode;m&&!Kh(m)&&(m=m.current),m=m||document.body;let p=null;i&&(p=document.createElement("div"),p.id=i,m.appendChild(p));const v=document.createElement("div");v.id=r,v.setAttribute(p0,""),m=p||m,m.appendChild(v),d.current=v,f(v)},[i,a,r,l]),u}function n2(t){const{children:i,id:a,root:r,preserveTabOrder:l=!0}=t,u=t2({id:a,root:r}),[f,d]=_.useState(null),m=_.useRef(null),p=_.useRef(null),v=_.useRef(null),g=_.useRef(null),S=f?.modal,b=f?.open,E=!!f&&!f.modal&&f.open&&l&&!!(r||u);return _.useEffect(()=>{if(!u||!l||S)return;function w(x){u&&Rd(x)&&(x.type==="focusin"?n0:aA)(u)}return u.addEventListener("focusin",w,!0),u.addEventListener("focusout",w,!0),()=>{u.removeEventListener("focusin",w,!0),u.removeEventListener("focusout",w,!0)}},[u,l,S]),_.useEffect(()=>{u&&(b||n0(u))},[b,u]),R.jsxs(cb.Provider,{value:_.useMemo(()=>({preserveTabOrder:l,beforeOutsideRef:m,afterOutsideRef:p,beforeInsideRef:v,afterInsideRef:g,portalNode:u,setFocusManagerState:d}),[l,u]),children:[E&&u&&R.jsx(m0,{"data-type":"outside",ref:m,onFocus:w=>{if(Rd(w,u)){var x;(x=v.current)==null||x.focus()}else{const A=f?f.domReference:null,D=iA(A);D?.focus()}}}),E&&u&&R.jsx("span",{"aria-owns":u.id,style:ub}),u&&Qs.createPortal(i,u),E&&u&&R.jsx(m0,{"data-type":"outside",ref:p,onFocus:w=>{if(Rd(w,u)){var x;(x=g.current)==null||x.focus()}else{const A=f?f.domReference:null,D=nA(A);D?.focus(),f?.closeOnFocusOut&&f?.onOpenChange(!1,w.nativeEvent,"focus-out")}}})]})}const i2=()=>_.useContext(cb),a2={pointerdown:"onPointerDown",mousedown:"onMouseDown",click:"onClick"},s2={pointerdown:"onPointerDownCapture",mousedown:"onMouseDownCapture",click:"onClickCapture"},g0=t=>{var i,a;return{escapeKey:typeof t=="boolean"?t:(i=t?.escapeKey)!=null?i:!1,outsidePress:typeof t=="boolean"?t:(a=t?.outsidePress)!=null?a:!0}};function r2(t,i){i===void 0&&(i={});const{open:a,onOpenChange:r,elements:l,dataRef:u}=t,{enabled:f=!0,escapeKey:d=!0,outsidePress:m=!0,outsidePressEvent:p="pointerdown",referencePress:v=!1,referencePressEvent:g="pointerdown",ancestorScroll:S=!1,bubbles:b,capture:E}=i,w=tm(),x=zn(typeof m=="function"?m:()=>!1),A=typeof m=="function"?x:m,D=_.useRef(!1),{escapeKey:U,outsidePress:N}=g0(b),{escapeKey:k,outsidePress:G}=g0(E),M=_.useRef(!1),B=zn(Z=>{var oe;if(!a||!f||!d||Z.key!=="Escape"||M.current)return;const j=(oe=u.current.floatingContext)==null?void 0:oe.nodeId,$=w?Jl(w.nodesRef.current,j):[];if(!U&&(Z.stopPropagation(),$.length>0)){let q=!0;if($.forEach(ie=>{var se;if((se=ie.context)!=null&&se.open&&!ie.context.dataRef.current.__escapeKeyBubbles){q=!1;return}}),!q)return}r(!1,Xx(Z)?Z.nativeEvent:Z,"escape-key")}),Q=zn(Z=>{var oe;const j=()=>{var $;B(Z),($=Os(Z))==null||$.removeEventListener("keydown",j)};(oe=Os(Z))==null||oe.addEventListener("keydown",j)}),P=zn(Z=>{var oe;const j=u.current.insideReactTree;u.current.insideReactTree=!1;const $=D.current;if(D.current=!1,p==="click"&&$||j||typeof A=="function"&&!A(Z))return;const q=Os(Z),ie="["+yo("inert")+"]",se=qn(l.floating).querySelectorAll(ie);let O=Qe(q)?q:null;for(;O&&!yi(O);){const le=bi(O);if(yi(le)||!Qe(le))break;O=le}if(se.length&&Qe(q)&&!Qx(q)&&!Fs(q,l.floating)&&Array.from(se).every(le=>!Fs(O,le)))return;if(nn(q)&&X){const le=yi(q),fe=an(q),ge=/auto|scroll/,Fe=le||ge.test(fe.overflowX),Te=le||ge.test(fe.overflowY),xt=Fe&&q.clientWidth>0&&q.scrollWidth>q.clientWidth,gt=Te&&q.clientHeight>0&&q.scrollHeight>q.clientHeight,Et=fe.direction==="rtl",Kn=gt&&(Et?Z.offsetX<=q.offsetWidth-q.clientWidth:Z.offsetX>q.clientWidth),me=xt&&Z.offsetY>q.clientHeight;if(Kn||me)return}const H=(oe=u.current.floatingContext)==null?void 0:oe.nodeId,te=w&&Jl(w.nodesRef.current,H).some(le=>{var fe;return Cd(Z,(fe=le.context)==null?void 0:fe.elements.floating)});if(Cd(Z,l.floating)||Cd(Z,l.domReference)||te)return;const ae=w?Jl(w.nodesRef.current,H):[];if(ae.length>0){let le=!0;if(ae.forEach(fe=>{var ge;if((ge=fe.context)!=null&&ge.open&&!fe.context.dataRef.current.__outsidePressBubbles){le=!1;return}}),!le)return}r(!1,Z,"outside-press")}),ee=zn(Z=>{var oe;const j=()=>{var $;P(Z),($=Os(Z))==null||$.removeEventListener(p,j)};(oe=Os(Z))==null||oe.addEventListener(p,j)});_.useEffect(()=>{if(!a||!f)return;u.current.__escapeKeyBubbles=U,u.current.__outsidePressBubbles=N;let Z=-1;function oe(se){r(!1,se,"ancestor-scroll")}function j(){window.clearTimeout(Z),M.current=!0}function $(){Z=window.setTimeout(()=>{M.current=!1},Lu()?5:0)}const q=qn(l.floating);d&&(q.addEventListener("keydown",k?Q:B,k),q.addEventListener("compositionstart",j),q.addEventListener("compositionend",$)),A&&q.addEventListener(p,G?ee:P,G);let ie=[];return S&&(Qe(l.domReference)&&(ie=Wi(l.domReference)),Qe(l.floating)&&(ie=ie.concat(Wi(l.floating))),!Qe(l.reference)&&l.reference&&l.reference.contextElement&&(ie=ie.concat(Wi(l.reference.contextElement)))),ie=ie.filter(se=>{var O;return se!==((O=q.defaultView)==null?void 0:O.visualViewport)}),ie.forEach(se=>{se.addEventListener("scroll",oe,{passive:!0})}),()=>{d&&(q.removeEventListener("keydown",k?Q:B,k),q.removeEventListener("compositionstart",j),q.removeEventListener("compositionend",$)),A&&q.removeEventListener(p,G?ee:P,G),ie.forEach(se=>{se.removeEventListener("scroll",oe)}),window.clearTimeout(Z)}},[u,l,d,A,p,a,r,S,f,U,N,B,k,Q,P,G,ee]),_.useEffect(()=>{u.current.insideReactTree=!1},[u,A,p]);const ne=_.useMemo(()=>({onKeyDown:B,...v&&{[a2[g]]:Z=>{r(!1,Z.nativeEvent,"reference-press")},...g!=="click"&&{onClick(Z){r(!1,Z.nativeEvent,"reference-press")}}}}),[B,r,v,g]),X=_.useMemo(()=>({onKeyDown:B,onMouseDown(){D.current=!0},onMouseUp(){D.current=!0},[s2[p]]:()=>{u.current.insideReactTree=!0}}),[B,p,u]);return _.useMemo(()=>f?{reference:ne,floating:X}:{},[f,ne,X])}function o2(t){const{open:i=!1,onOpenChange:a,elements:r}=t,l=Hs(),u=_.useRef({}),[f]=_.useState(()=>GA()),d=em()!=null,[m,p]=_.useState(r.reference),v=zn((b,E,w)=>{u.current.openEvent=b?E:void 0,f.emit("openchange",{open:b,event:E,reason:w,nested:d}),a?.(b,E,w)}),g=_.useMemo(()=>({setPositionReference:p}),[]),S=_.useMemo(()=>({reference:m||r.reference||null,floating:r.floating||null,domReference:r.reference}),[m,r.reference,r.floating]);return _.useMemo(()=>({dataRef:u,open:i,onOpenChange:v,elements:S,events:f,floatingId:l,refs:g}),[i,v,S,f,l,g])}function l2(t){t===void 0&&(t={});const{nodeId:i}=t,a=o2({...t,elements:{reference:null,floating:null,...t.elements}}),r=t.rootContext||a,l=r.elements,[u,f]=_.useState(null),[d,m]=_.useState(null),v=l?.domReference||u,g=_.useRef(null),S=tm();Nt(()=>{v&&(g.current=v)},[v]);const b=jA({...t,elements:{...l,...d&&{reference:d}}}),E=_.useCallback(U=>{const N=Qe(U)?{getBoundingClientRect:()=>U.getBoundingClientRect(),getClientRects:()=>U.getClientRects(),contextElement:U}:U;m(N),b.refs.setReference(N)},[b.refs]),w=_.useCallback(U=>{(Qe(U)||U===null)&&(g.current=U,f(U)),(Qe(b.refs.reference.current)||b.refs.reference.current===null||U!==null&&!Qe(U))&&b.refs.setReference(U)},[b.refs]),x=_.useMemo(()=>({...b.refs,setReference:w,setPositionReference:E,domReference:g}),[b.refs,w,E]),A=_.useMemo(()=>({...b.elements,domReference:v}),[b.elements,v]),D=_.useMemo(()=>({...b,...r,refs:x,elements:A,nodeId:i}),[b,x,A,i,r]);return Nt(()=>{r.dataRef.current.floatingContext=D;const U=S?.nodesRef.current.find(N=>N.id===i);U&&(U.context=D)}),_.useMemo(()=>({...b,context:D,refs:x,elements:A}),[b,x,A,D])}function Od(){return Hx()&&ZS()}function u2(t,i){i===void 0&&(i={});const{open:a,onOpenChange:r,events:l,dataRef:u,elements:f}=t,{enabled:d=!0,visibleOnly:m=!0}=i,p=_.useRef(!1),v=_.useRef(-1),g=_.useRef(!0);_.useEffect(()=>{if(!d)return;const b=Vt(f.domReference);function E(){!a&&nn(f.domReference)&&f.domReference===ph(qn(f.domReference))&&(p.current=!0)}function w(){g.current=!0}function x(){g.current=!1}return b.addEventListener("blur",E),Od()&&(b.addEventListener("keydown",w,!0),b.addEventListener("pointerdown",x,!0)),()=>{b.removeEventListener("blur",E),Od()&&(b.removeEventListener("keydown",w,!0),b.removeEventListener("pointerdown",x,!0))}},[f.domReference,a,d]),_.useEffect(()=>{if(!d)return;function b(E){let{reason:w}=E;(w==="reference-press"||w==="escape-key")&&(p.current=!0)}return l.on("openchange",b),()=>{l.off("openchange",b)}},[l,d]),_.useEffect(()=>()=>{yn(v)},[]);const S=_.useMemo(()=>({onMouseLeave(){p.current=!1},onFocus(b){if(p.current)return;const E=Os(b.nativeEvent);if(m&&Qe(E)){if(Od()&&!b.relatedTarget){if(!g.current&&!Yx(E))return}else if(!Gx(E))return}r(!0,b.nativeEvent,"focus")},onBlur(b){p.current=!1;const E=b.relatedTarget,w=b.nativeEvent,x=Qe(E)&&E.hasAttribute(yo("focus-guard"))&&E.getAttribute("data-type")==="outside";v.current=window.setTimeout(()=>{var A;const D=ph(f.domReference?f.domReference.ownerDocument:document);!E&&D===f.domReference||Fs((A=u.current.floatingContext)==null?void 0:A.refs.floating.current,D)||Fs(f.domReference,D)||x||r(!1,w,"focus")})}}),[u,f.domReference,r,m]);return _.useMemo(()=>d?{reference:S}:{},[d,S])}function Dd(t,i,a){const r=new Map,l=a==="item";let u=t;if(l&&t){const{[u0]:f,[c0]:d,...m}=t;u=m}return{...a==="floating"&&{tabIndex:-1,[FA]:""},...u,...i.map(f=>{const d=f?f[a]:null;return typeof d=="function"?t?d(t):null:d}).concat(t).reduce((f,d)=>(d&&Object.entries(d).forEach(m=>{let[p,v]=m;if(!(l&&[u0,c0].includes(p)))if(p.indexOf("on")===0){if(r.has(p)||r.set(p,[]),typeof v=="function"){var g;(g=r.get(p))==null||g.push(v),f[p]=function(){for(var S,b=arguments.length,E=new Array(b),w=0;wx(...E)).find(x=>x!==void 0)}}}else f[p]=v}),f),{})}}function c2(t){t===void 0&&(t=[]);const i=t.map(d=>d?.reference),a=t.map(d=>d?.floating),r=t.map(d=>d?.item),l=_.useCallback(d=>Dd(d,t,"reference"),i),u=_.useCallback(d=>Dd(d,t,"floating"),a),f=_.useCallback(d=>Dd(d,t,"item"),r);return _.useMemo(()=>({getReferenceProps:l,getFloatingProps:u,getItemProps:f}),[l,u,f])}const f2=new Map([["select","listbox"],["combobox","listbox"],["label",!1]]);function d2(t,i){var a,r;i===void 0&&(i={});const{open:l,elements:u,floatingId:f}=t,{enabled:d=!0,role:m="dialog"}=i,p=Hs(),v=((a=u.domReference)==null?void 0:a.id)||p,g=_.useMemo(()=>{var D;return((D=Kx(u.floating))==null?void 0:D.id)||f},[u.floating,f]),S=(r=f2.get(m))!=null?r:m,E=em()!=null,w=_.useMemo(()=>S==="tooltip"||m==="label"?{["aria-"+(m==="label"?"labelledby":"describedby")]:l?g:void 0}:{"aria-expanded":l?"true":"false","aria-haspopup":S==="alertdialog"?"dialog":S,"aria-controls":l?g:void 0,...S==="listbox"&&{role:"combobox"},...S==="menu"&&{id:v},...S==="menu"&&E&&{role:"menuitem"},...m==="select"&&{"aria-autocomplete":"none"},...m==="combobox"&&{"aria-autocomplete":"list"}},[S,g,E,l,v,m]),x=_.useMemo(()=>{const D={id:g,...S&&{role:S}};return S==="tooltip"||m==="label"?D:{...D,...S==="menu"&&{"aria-labelledby":v}}},[S,g,v,m]),A=_.useCallback(D=>{let{active:U,selected:N}=D;const k={role:"option",...U&&{id:g+"-fui-option"}};switch(m){case"select":case"combobox":return{...k,"aria-selected":N}}return{}},[g,m]);return _.useMemo(()=>d?{reference:w,floating:x,item:A}:{},[d,w,x,A])}const h2="_tooltip_6ode6_8",m2="_invisible_6ode6_21",p2="_caption_6ode6_28",g2="_arrow_6ode6_33",tu={tooltip:h2,invisible:m2,caption:p2,arrow:g2},fb={open:300,close:0},db=({children:t})=>R.jsx(WA,{delay:fb,timeoutMs:300,children:t});db.displayName="TooltipProvider";function v2({open:t,disabled:i=!1,onOpenChange:a,placement:r="bottom",isTriggerInteractive:l,caption:u,"aria-atomic":f,"aria-live":d,...m}){const p=Hs(),v=Hs(),g=_.useRef(null),[S,b]=_.useState(!1),E=i?!1:t??S,w=(X,Z,oe)=>{a?.(X,Z,oe),t===void 0&&b(X)},x=l2({placement:r,open:E,onOpenChange:w,whileElementsMounted:TA,middleware:[zA(6),BA({crossAxis:r.includes("-"),fallbackAxisSideDirection:"start",padding:5}),$A({padding:5}),qA({element:g})]}),A=x.context,{delay:D,initialDelay:U}=e2(A);if(U!==fb)throw new Error("Tooltips must be wrapped in a global ");const N=ZA(A,{move:!1,enabled:t===void 0,delay:l?D:{},mouseOnly:!0}),k=u2(A,{enabled:t===void 0}),G=_.useRef(void 0);_.useEffect(()=>()=>window.clearTimeout(G.current),[]);const M=_.useMemo(()=>{const X=()=>{G.current===void 0?G.current=window.setTimeout(()=>{w(!1),G.current=void 0},1500):window.clearTimeout(G.current)};return{reference:{onTouchStart:()=>{G.current!==void 0&&window.clearTimeout(G.current),G.current=window.setTimeout(()=>{w(!0),G.current=void 0},500)},onTouchEnd:X,onTouchCancel:X}}},[]),B=r2(A),Q="label"in m?"label":"description",P=d2(A,{enabled:Q==="description",role:"tooltip"}),ee=_.useMemo(()=>Q==="label"?{reference:{"aria-labelledby":p,"aria-describedby":u?v:void 0}}:{},[Q,p,v]),ne=c2([N,k,M,B,P,ee]);return _.useMemo(()=>({labelId:p,captionId:u?v:void 0,caption:u,purpose:Q,open:E,setOpen:w,tooltipProps:{"aria-atomic":f,"aria-live":d},...ne,...x,arrowRef:g}),[p,v,u,P,E,w,ne,x,g])}const y2=t=>"label"in t&&!!t.label;function Pu({children:t,isTriggerInteractive:i=!0,nonInteractiveTriggerTabIndex:a=0,...r}){const l=v2({isTriggerInteractive:i,...r});return R.jsxs(FS.Provider,{value:l,children:[R.jsx(_2,{isTriggerInteractive:i,nonInteractiveTriggerTabIndex:a,children:t}),R.jsxs(b2,{children:[R.jsx("span",{id:l.labelId,children:y2(r)?r.label:r.description}),R.jsx(S2,{})]})]})}function S2(){const{caption:t,captionId:i}=Gh();if(!t)return null;const r=typeof t=="string"?"span":"div";return R.jsx(r,{id:i,className:et(tu.caption,"cpd-theme-dark"),children:t})}function b2({children:t}){const{context:i,open:a,arrowRef:r,purpose:l,...u}=Gh();return!a&&l!=="label"?null:R.jsx(n2,{children:R.jsxs("div",{ref:u.refs.setFloating,style:u.floatingStyles,...u.tooltipProps,...u.getFloatingProps(),className:et(tu.tooltip,{[tu.invisible]:l==="label"&&!a}),children:[R.jsx(YA,{ref:r,context:i,width:10,height:6,className:tu.arrow}),t]})})}const _2=({children:t,isTriggerInteractive:i,nonInteractiveTriggerTabIndex:a})=>{const r=Gh(),l=t?.ref,u=IA([r.refs.setReference,l]),f=_.useMemo(()=>{if(_.isValidElement(t))if(i){const d=r.getReferenceProps({...typeof t.props=="object"?t.props:{},ref:u});return _.cloneElement(t,d)}else{const d=r.getReferenceProps({ref:u,tabIndex:a}),{"aria-labelledby":m,"aria-describedby":p,...v}=d;return R.jsx("span",{tabIndex:a,...v,children:_.cloneElement(t,{"aria-labelledby":m,"aria-describedby":p})})}},[r,u,t]);if(!f)throw new Error("Tooltip anchor must be a single valid React element");return f},hb=_.forwardRef(function({kind:i="primary",children:a,className:r,indicator:l,size:u="32px",style:f,disabled:d,destructive:m,tooltip:p,noBackground:v=!1,...g},S){const b=et(Ed["icon-button"],r,{[Ed.destructive]:m,[Ed["no-background"]]:v}),E=R.jsx(IS,{as:"button",ref:S,className:b,style:{"--cpd-icon-button-size":u,...f},disabled:d,...g,"data-indicator":l,"data-kind":i,children:R.jsx(ix,{indicator:l,colour:d?"var(--cpd-color-icon-disabled)":void 0,children:re.Children.only(a)})});return p?R.jsx(Pu,{label:p,children:E}):E}),w2=({type:t,title:i,children:a,className:r,actions:l,onClose:u,...f})=>{const d=et(Es.alert,r),m=_.useCallback(p=>{switch(t){case"critical":return R.jsx(Yh,{...p});case"info":return R.jsx(GR,{...p});case"success":return R.jsx(YR,{...p})}},[t]);return R.jsxs("div",{...f,className:d,"data-type":t,children:[m({width:24,height:24,className:Es.icon,"aria-hidden":!0}),R.jsxs("div",{className:Es.content,children:[R.jsxs("div",{className:Es["text-content"],children:[R.jsx(Xy,{size:"md",weight:"semibold",children:i}),R.jsx(Xy,{size:"sm",weight:"regular",children:a})]}),l&&R.jsx("div",{className:Es.actions,children:l})]}),u&&R.jsx(hb,{onClick:u,"aria-label":"Close",role:"button",className:Es.close,children:R.jsx(qS,{})})]})};function tn(t,i,{checkForDefaultPrevented:a=!0}={}){return function(l){if(t?.(l),a===!1||!l.defaultPrevented)return i?.(l)}}function E2(t,i){const a=_.createContext(i),r=u=>{const{children:f,...d}=u,m=_.useMemo(()=>d,Object.values(d));return R.jsx(a.Provider,{value:m,children:f})};r.displayName=t+"Provider";function l(u){const f=_.useContext(a);if(f)return f;if(i!==void 0)return i;throw new Error(`\`${u}\` must be used within \`${t}\``)}return[r,l]}function mb(t,i=[]){let a=[];function r(u,f){const d=_.createContext(f),m=a.length;a=[...a,f];const p=g=>{const{scope:S,children:b,...E}=g,w=S?.[t]?.[m]||d,x=_.useMemo(()=>E,Object.values(E));return R.jsx(w.Provider,{value:x,children:b})};p.displayName=u+"Provider";function v(g,S){const b=S?.[t]?.[m]||d,E=_.useContext(b);if(E)return E;if(f!==void 0)return f;throw new Error(`\`${g}\` must be used within \`${u}\``)}return[p,v]}const l=()=>{const u=a.map(f=>_.createContext(f));return function(d){const m=d?.[t]||u;return _.useMemo(()=>({[`__scope${t}`]:{...d,[t]:m}}),[d,m])}};return l.scopeName=t,[r,C2(l,...i)]}function C2(...t){const i=t[0];if(t.length===1)return i;const a=()=>{const r=t.map(l=>({useScope:l(),scopeName:l.scopeName}));return function(u){const f=r.reduce((d,{useScope:m,scopeName:p})=>{const g=m(u)[`__scope${p}`];return{...d,...g}},{});return _.useMemo(()=>({[`__scope${i.scopeName}`]:f}),[f])}};return a.scopeName=i.scopeName,a}function v0(t,i){if(typeof t=="function")return t(i);t!=null&&(t.current=i)}function pb(...t){return i=>{let a=!1;const r=t.map(l=>{const u=v0(l,i);return!a&&typeof u=="function"&&(a=!0),u});if(a)return()=>{for(let l=0;l{const{children:u,...f}=r,d=_.Children.toArray(u),m=d.find(A2);if(m){const p=m.props.children,v=d.map(g=>g===m?_.Children.count(p)>1?_.Children.only(null):_.isValidElement(p)?p.props.children:null:g);return R.jsx(i,{...f,ref:l,children:_.isValidElement(p)?_.cloneElement(p,void 0,v):null})}return R.jsx(i,{...f,ref:l,children:u})});return a.displayName=`${t}.Slot`,a}function R2(t){const i=_.forwardRef((a,r)=>{const{children:l,...u}=a;if(_.isValidElement(l)){const f=O2(l),d=T2(u,l.props);return l.type!==_.Fragment&&(d.ref=r?pb(r,f):f),_.cloneElement(l,d)}return _.Children.count(l)>1?_.Children.only(null):null});return i.displayName=`${t}.SlotClone`,i}var x2=Symbol("radix.slottable");function A2(t){return _.isValidElement(t)&&typeof t.type=="function"&&"__radixId"in t.type&&t.type.__radixId===x2}function T2(t,i){const a={...i};for(const r in i){const l=t[r],u=i[r];/^on[A-Z]/.test(r)?l&&u?a[r]=(...d)=>{const m=u(...d);return l(...d),m}:l&&(a[r]=l):r==="style"?a[r]={...l,...u}:r==="className"&&(a[r]=[l,u].filter(Boolean).join(" "))}return{...t,...a}}function O2(t){let i=Object.getOwnPropertyDescriptor(t.props,"ref")?.get,a=i&&"isReactWarning"in i&&i.isReactWarning;return a?t.ref:(i=Object.getOwnPropertyDescriptor(t,"ref")?.get,a=i&&"isReactWarning"in i&&i.isReactWarning,a?t.props.ref:t.props.ref||t.ref)}var D2=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],Lt=D2.reduce((t,i)=>{const a=gb(`Primitive.${i}`),r=_.forwardRef((l,u)=>{const{asChild:f,...d}=l,m=f?a:i;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),R.jsx(m,{...d,ref:u})});return r.displayName=`Primitive.${i}`,{...t,[i]:r}},{});function M2(t,i){t&&Qs.flushSync(()=>t.dispatchEvent(i))}function lo(t){const i=_.useRef(t);return _.useEffect(()=>{i.current=t}),_.useMemo(()=>(...a)=>i.current?.(...a),[])}function N2(t,i=globalThis?.document){const a=lo(t);_.useEffect(()=>{const r=l=>{l.key==="Escape"&&a(l)};return i.addEventListener("keydown",r,{capture:!0}),()=>i.removeEventListener("keydown",r,{capture:!0})},[a,i])}var L2="DismissableLayer",yh="dismissableLayer.update",U2="dismissableLayer.pointerDownOutside",j2="dismissableLayer.focusOutside",y0,vb=_.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),yb=_.forwardRef((t,i)=>{const{disableOutsidePointerEvents:a=!1,onEscapeKeyDown:r,onPointerDownOutside:l,onFocusOutside:u,onInteractOutside:f,onDismiss:d,...m}=t,p=_.useContext(vb),[v,g]=_.useState(null),S=v?.ownerDocument??globalThis?.document,[,b]=_.useState({}),E=Gn(i,M=>g(M)),w=Array.from(p.layers),[x]=[...p.layersWithOutsidePointerEventsDisabled].slice(-1),A=w.indexOf(x),D=v?w.indexOf(v):-1,U=p.layersWithOutsidePointerEventsDisabled.size>0,N=D>=A,k=$2(M=>{const B=M.target,Q=[...p.branches].some(P=>P.contains(B));!N||Q||(l?.(M),f?.(M),M.defaultPrevented||d?.())},S),G=B2(M=>{const B=M.target;[...p.branches].some(P=>P.contains(B))||(u?.(M),f?.(M),M.defaultPrevented||d?.())},S);return N2(M=>{D===p.layers.size-1&&(r?.(M),!M.defaultPrevented&&d&&(M.preventDefault(),d()))},S),_.useEffect(()=>{if(v)return a&&(p.layersWithOutsidePointerEventsDisabled.size===0&&(y0=S.body.style.pointerEvents,S.body.style.pointerEvents="none"),p.layersWithOutsidePointerEventsDisabled.add(v)),p.layers.add(v),S0(),()=>{a&&p.layersWithOutsidePointerEventsDisabled.size===1&&(S.body.style.pointerEvents=y0)}},[v,S,a,p]),_.useEffect(()=>()=>{v&&(p.layers.delete(v),p.layersWithOutsidePointerEventsDisabled.delete(v),S0())},[v,p]),_.useEffect(()=>{const M=()=>b({});return document.addEventListener(yh,M),()=>document.removeEventListener(yh,M)},[]),R.jsx(Lt.div,{...m,ref:E,style:{pointerEvents:U?N?"auto":"none":void 0,...t.style},onFocusCapture:tn(t.onFocusCapture,G.onFocusCapture),onBlurCapture:tn(t.onBlurCapture,G.onBlurCapture),onPointerDownCapture:tn(t.onPointerDownCapture,k.onPointerDownCapture)})});yb.displayName=L2;var P2="DismissableLayerBranch",z2=_.forwardRef((t,i)=>{const a=_.useContext(vb),r=_.useRef(null),l=Gn(i,r);return _.useEffect(()=>{const u=r.current;if(u)return a.branches.add(u),()=>{a.branches.delete(u)}},[a.branches]),R.jsx(Lt.div,{...t,ref:l})});z2.displayName=P2;function $2(t,i=globalThis?.document){const a=lo(t),r=_.useRef(!1),l=_.useRef(()=>{});return _.useEffect(()=>{const u=d=>{if(d.target&&!r.current){let m=function(){Sb(U2,a,p,{discrete:!0})};const p={originalEvent:d};d.pointerType==="touch"?(i.removeEventListener("click",l.current),l.current=m,i.addEventListener("click",l.current,{once:!0})):m()}else i.removeEventListener("click",l.current);r.current=!1},f=window.setTimeout(()=>{i.addEventListener("pointerdown",u)},0);return()=>{window.clearTimeout(f),i.removeEventListener("pointerdown",u),i.removeEventListener("click",l.current)}},[i,a]),{onPointerDownCapture:()=>r.current=!0}}function B2(t,i=globalThis?.document){const a=lo(t),r=_.useRef(!1);return _.useEffect(()=>{const l=u=>{u.target&&!r.current&&Sb(j2,a,{originalEvent:u},{discrete:!1})};return i.addEventListener("focusin",l),()=>i.removeEventListener("focusin",l)},[i,a]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function S0(){const t=new CustomEvent(yh);document.dispatchEvent(t)}function Sb(t,i,a,{discrete:r}){const l=a.originalEvent.target,u=new CustomEvent(t,{bubbles:!1,cancelable:!0,detail:a});i&&l.addEventListener(t,i,{once:!0}),r?M2(l,u):l.dispatchEvent(u)}var Md=0;function q2(){_.useEffect(()=>{const t=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",t[0]??b0()),document.body.insertAdjacentElement("beforeend",t[1]??b0()),Md++,()=>{Md===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(i=>i.remove()),Md--}},[])}function b0(){const t=document.createElement("span");return t.setAttribute("data-radix-focus-guard",""),t.tabIndex=0,t.style.outline="none",t.style.opacity="0",t.style.position="fixed",t.style.pointerEvents="none",t}var Nd="focusScope.autoFocusOnMount",Ld="focusScope.autoFocusOnUnmount",_0={bubbles:!1,cancelable:!0},I2="FocusScope",bb=_.forwardRef((t,i)=>{const{loop:a=!1,trapped:r=!1,onMountAutoFocus:l,onUnmountAutoFocus:u,...f}=t,[d,m]=_.useState(null),p=lo(l),v=lo(u),g=_.useRef(null),S=Gn(i,w=>m(w)),b=_.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;_.useEffect(()=>{if(r){let w=function(U){if(b.paused||!d)return;const N=U.target;d.contains(N)?g.current=N:Yi(g.current,{select:!0})},x=function(U){if(b.paused||!d)return;const N=U.relatedTarget;N!==null&&(d.contains(N)||Yi(g.current,{select:!0}))},A=function(U){if(document.activeElement===document.body)for(const k of U)k.removedNodes.length>0&&Yi(d)};document.addEventListener("focusin",w),document.addEventListener("focusout",x);const D=new MutationObserver(A);return d&&D.observe(d,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",w),document.removeEventListener("focusout",x),D.disconnect()}}},[r,d,b.paused]),_.useEffect(()=>{if(d){E0.add(b);const w=document.activeElement;if(!d.contains(w)){const A=new CustomEvent(Nd,_0);d.addEventListener(Nd,p),d.dispatchEvent(A),A.defaultPrevented||(F2(Y2(_b(d)),{select:!0}),document.activeElement===w&&Yi(d))}return()=>{d.removeEventListener(Nd,p),setTimeout(()=>{const A=new CustomEvent(Ld,_0);d.addEventListener(Ld,v),d.dispatchEvent(A),A.defaultPrevented||Yi(w??document.body,{select:!0}),d.removeEventListener(Ld,v),E0.remove(b)},0)}}},[d,p,v,b]);const E=_.useCallback(w=>{if(!a&&!r||b.paused)return;const x=w.key==="Tab"&&!w.altKey&&!w.ctrlKey&&!w.metaKey,A=document.activeElement;if(x&&A){const D=w.currentTarget,[U,N]=H2(D);U&&N?!w.shiftKey&&A===N?(w.preventDefault(),a&&Yi(U,{select:!0})):w.shiftKey&&A===U&&(w.preventDefault(),a&&Yi(N,{select:!0})):A===D&&w.preventDefault()}},[a,r,b.paused]);return R.jsx(Lt.div,{tabIndex:-1,...f,ref:S,onKeyDown:E})});bb.displayName=I2;function F2(t,{select:i=!1}={}){const a=document.activeElement;for(const r of t)if(Yi(r,{select:i}),document.activeElement!==a)return}function H2(t){const i=_b(t),a=w0(i,t),r=w0(i.reverse(),t);return[a,r]}function _b(t){const i=[],a=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const l=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||l?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;a.nextNode();)i.push(a.currentNode);return i}function w0(t,i){for(const a of t)if(!V2(a,{upTo:i}))return a}function V2(t,{upTo:i}){if(getComputedStyle(t).visibility==="hidden")return!0;for(;t;){if(i!==void 0&&t===i)return!1;if(getComputedStyle(t).display==="none")return!0;t=t.parentElement}return!1}function k2(t){return t instanceof HTMLInputElement&&"select"in t}function Yi(t,{select:i=!1}={}){if(t&&t.focus){const a=document.activeElement;t.focus({preventScroll:!0}),t!==a&&k2(t)&&i&&t.select()}}var E0=Q2();function Q2(){let t=[];return{add(i){const a=t[0];i!==a&&a?.pause(),t=C0(t,i),t.unshift(i)},remove(i){t=C0(t,i),t[0]?.resume()}}}function C0(t,i){const a=[...t],r=a.indexOf(i);return r!==-1&&a.splice(r,1),a}function Y2(t){return t.filter(i=>i.tagName!=="A")}var uo=globalThis?.document?_.useLayoutEffect:()=>{},G2=xu[" useId ".trim().toString()]||(()=>{}),K2=0;function Ls(t){const[i,a]=_.useState(G2());return uo(()=>{a(r=>r??String(K2++))},[t]),t||(i?`radix-${i}`:"")}var X2="Portal",wb=_.forwardRef((t,i)=>{const{container:a,...r}=t,[l,u]=_.useState(!1);uo(()=>u(!0),[]);const f=a||l&&globalThis?.document?.body;return f?yR.createPortal(R.jsx(Lt.div,{...r,ref:i}),f):null});wb.displayName=X2;function Z2(t,i){return _.useReducer((a,r)=>i[a][r]??a,t)}var zu=t=>{const{present:i,children:a}=t,r=J2(i),l=typeof a=="function"?a({present:r.isPresent}):_.Children.only(a),u=Gn(r.ref,W2(l));return typeof a=="function"||r.isPresent?_.cloneElement(l,{ref:u}):null};zu.displayName="Presence";function J2(t){const[i,a]=_.useState(),r=_.useRef(null),l=_.useRef(t),u=_.useRef("none"),f=t?"mounted":"unmounted",[d,m]=Z2(f,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return _.useEffect(()=>{const p=Il(r.current);u.current=d==="mounted"?p:"none"},[d]),uo(()=>{const p=r.current,v=l.current;if(v!==t){const S=u.current,b=Il(p);t?m("MOUNT"):b==="none"||p?.display==="none"?m("UNMOUNT"):m(v&&S!==b?"ANIMATION_OUT":"UNMOUNT"),l.current=t}},[t,m]),uo(()=>{if(i){let p;const v=i.ownerDocument.defaultView??window,g=b=>{const w=Il(r.current).includes(CSS.escape(b.animationName));if(b.target===i&&w&&(m("ANIMATION_END"),!l.current)){const x=i.style.animationFillMode;i.style.animationFillMode="forwards",p=v.setTimeout(()=>{i.style.animationFillMode==="forwards"&&(i.style.animationFillMode=x)})}},S=b=>{b.target===i&&(u.current=Il(r.current))};return i.addEventListener("animationstart",S),i.addEventListener("animationcancel",g),i.addEventListener("animationend",g),()=>{v.clearTimeout(p),i.removeEventListener("animationstart",S),i.removeEventListener("animationcancel",g),i.removeEventListener("animationend",g)}}else m("ANIMATION_END")},[i,m]),{isPresent:["mounted","unmountSuspended"].includes(d),ref:_.useCallback(p=>{r.current=p?getComputedStyle(p):null,a(p)},[])}}function Il(t){return t?.animationName||"none"}function W2(t){let i=Object.getOwnPropertyDescriptor(t.props,"ref")?.get,a=i&&"isReactWarning"in i&&i.isReactWarning;return a?t.ref:(i=Object.getOwnPropertyDescriptor(t,"ref")?.get,a=i&&"isReactWarning"in i&&i.isReactWarning,a?t.props.ref:t.props.ref||t.ref)}var eT=xu[" useInsertionEffect ".trim().toString()]||uo;function tT({prop:t,defaultProp:i,onChange:a=()=>{},caller:r}){const[l,u,f]=nT({defaultProp:i,onChange:a}),d=t!==void 0,m=d?t:l;{const v=_.useRef(t!==void 0);_.useEffect(()=>{const g=v.current;g!==d&&console.warn(`${r} is changing from ${g?"controlled":"uncontrolled"} to ${d?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),v.current=d},[d,r])}const p=_.useCallback(v=>{if(d){const g=iT(v)?v(t):v;g!==t&&f.current?.(g)}else u(v)},[d,t,u,f]);return[m,p]}function nT({defaultProp:t,onChange:i}){const[a,r]=_.useState(t),l=_.useRef(a),u=_.useRef(i);return eT(()=>{u.current=i},[i]),_.useEffect(()=>{l.current!==a&&(u.current?.(a),l.current=a)},[a,l]),[a,r,u]}function iT(t){return typeof t=="function"}var aT=function(t){if(typeof document>"u")return null;var i=Array.isArray(t)?t[0]:t;return i.ownerDocument.body},Cs=new WeakMap,Fl=new WeakMap,Hl={},Ud=0,Eb=function(t){return t&&(t.host||Eb(t.parentNode))},sT=function(t,i){return i.map(function(a){if(t.contains(a))return a;var r=Eb(a);return r&&t.contains(r)?r:(console.error("aria-hidden",a,"in not contained inside",t,". Doing nothing"),null)}).filter(function(a){return!!a})},rT=function(t,i,a,r){var l=sT(i,Array.isArray(t)?t:[t]);Hl[a]||(Hl[a]=new WeakMap);var u=Hl[a],f=[],d=new Set,m=new Set(l),p=function(g){!g||d.has(g)||(d.add(g),p(g.parentNode))};l.forEach(p);var v=function(g){!g||m.has(g)||Array.prototype.forEach.call(g.children,function(S){if(d.has(S))v(S);else try{var b=S.getAttribute(r),E=b!==null&&b!=="false",w=(Cs.get(S)||0)+1,x=(u.get(S)||0)+1;Cs.set(S,w),u.set(S,x),f.push(S),w===1&&E&&Fl.set(S,!0),x===1&&S.setAttribute(a,"true"),E||S.setAttribute(r,"true")}catch(A){console.error("aria-hidden: cannot operate on ",S,A)}})};return v(i),d.clear(),Ud++,function(){f.forEach(function(g){var S=Cs.get(g)-1,b=u.get(g)-1;Cs.set(g,S),u.set(g,b),S||(Fl.has(g)||g.removeAttribute(r),Fl.delete(g)),b||g.removeAttribute(a)}),Ud--,Ud||(Cs=new WeakMap,Cs=new WeakMap,Fl=new WeakMap,Hl={})}},oT=function(t,i,a){a===void 0&&(a="data-aria-hidden");var r=Array.from(Array.isArray(t)?t:[t]),l=aT(t);return l?(r.push.apply(r,Array.from(l.querySelectorAll("[aria-live], script"))),rT(r,l,a,"aria-hidden")):function(){return null}},$n=function(){return $n=Object.assign||function(i){for(var a,r=1,l=arguments.length;r"u")return CT;var i=RT(t),a=document.documentElement.clientWidth,r=window.innerWidth;return{left:i[0],top:i[1],right:i[2],gap:Math.max(0,r-a+i[2]-i[0])}},AT=Ab(),Us="data-scroll-locked",TT=function(t,i,a,r){var l=t.left,u=t.top,f=t.right,d=t.gap;return a===void 0&&(a="margin"),` + .`.concat(uT,` { + overflow: hidden `).concat(r,`; + padding-right: `).concat(d,"px ").concat(r,`; + } + body[`).concat(Us,`] { + overflow: hidden `).concat(r,`; + overscroll-behavior: contain; + `).concat([i&&"position: relative ".concat(r,";"),a==="margin"&&` + padding-left: `.concat(l,`px; + padding-top: `).concat(u,`px; + padding-right: `).concat(f,`px; + margin-left:0; + margin-top:0; + margin-right: `).concat(d,"px ").concat(r,`; + `),a==="padding"&&"padding-right: ".concat(d,"px ").concat(r,";")].filter(Boolean).join(""),` + } + + .`).concat(nu,` { + right: `).concat(d,"px ").concat(r,`; + } + + .`).concat(iu,` { + margin-right: `).concat(d,"px ").concat(r,`; + } + + .`).concat(nu," .").concat(nu,` { + right: 0 `).concat(r,`; + } + + .`).concat(iu," .").concat(iu,` { + margin-right: 0 `).concat(r,`; + } + + body[`).concat(Us,`] { + `).concat(cT,": ").concat(d,`px; + } +`)},x0=function(){var t=parseInt(document.body.getAttribute(Us)||"0",10);return isFinite(t)?t:0},OT=function(){_.useEffect(function(){return document.body.setAttribute(Us,(x0()+1).toString()),function(){var t=x0()-1;t<=0?document.body.removeAttribute(Us):document.body.setAttribute(Us,t.toString())}},[])},DT=function(t){var i=t.noRelative,a=t.noImportant,r=t.gapMode,l=r===void 0?"margin":r;OT();var u=_.useMemo(function(){return xT(l)},[l]);return _.createElement(AT,{styles:TT(u,!i,l,a?"":"!important")})},Sh=!1;if(typeof window<"u")try{var Vl=Object.defineProperty({},"passive",{get:function(){return Sh=!0,!0}});window.addEventListener("test",Vl,Vl),window.removeEventListener("test",Vl,Vl)}catch{Sh=!1}var Rs=Sh?{passive:!1}:!1,MT=function(t){return t.tagName==="TEXTAREA"},Tb=function(t,i){if(!(t instanceof Element))return!1;var a=window.getComputedStyle(t);return a[i]!=="hidden"&&!(a.overflowY===a.overflowX&&!MT(t)&&a[i]==="visible")},NT=function(t){return Tb(t,"overflowY")},LT=function(t){return Tb(t,"overflowX")},A0=function(t,i){var a=i.ownerDocument,r=i;do{typeof ShadowRoot<"u"&&r instanceof ShadowRoot&&(r=r.host);var l=Ob(t,r);if(l){var u=Db(t,r),f=u[1],d=u[2];if(f>d)return!0}r=r.parentNode}while(r&&r!==a.body);return!1},UT=function(t){var i=t.scrollTop,a=t.scrollHeight,r=t.clientHeight;return[i,a,r]},jT=function(t){var i=t.scrollLeft,a=t.scrollWidth,r=t.clientWidth;return[i,a,r]},Ob=function(t,i){return t==="v"?NT(i):LT(i)},Db=function(t,i){return t==="v"?UT(i):jT(i)},PT=function(t,i){return t==="h"&&i==="rtl"?-1:1},zT=function(t,i,a,r,l){var u=PT(t,window.getComputedStyle(i).direction),f=u*r,d=a.target,m=i.contains(d),p=!1,v=f>0,g=0,S=0;do{if(!d)break;var b=Db(t,d),E=b[0],w=b[1],x=b[2],A=w-x-u*E;(E||A)&&Ob(t,d)&&(g+=A,S+=E);var D=d.parentNode;d=D&&D.nodeType===Node.DOCUMENT_FRAGMENT_NODE?D.host:D}while(!m&&d!==document.body||m&&(i.contains(d)||i===d));return(v&&Math.abs(g)<1||!v&&Math.abs(S)<1)&&(p=!0),p},kl=function(t){return"changedTouches"in t?[t.changedTouches[0].clientX,t.changedTouches[0].clientY]:[0,0]},T0=function(t){return[t.deltaX,t.deltaY]},O0=function(t){return t&&"current"in t?t.current:t},$T=function(t,i){return t[0]===i[0]&&t[1]===i[1]},BT=function(t){return` + .block-interactivity-`.concat(t,` {pointer-events: none;} + .allow-interactivity-`).concat(t,` {pointer-events: all;} +`)},qT=0,xs=[];function IT(t){var i=_.useRef([]),a=_.useRef([0,0]),r=_.useRef(),l=_.useState(qT++)[0],u=_.useState(Ab)[0],f=_.useRef(t);_.useEffect(function(){f.current=t},[t]),_.useEffect(function(){if(t.inert){document.body.classList.add("block-interactivity-".concat(l));var w=lT([t.lockRef.current],(t.shards||[]).map(O0),!0).filter(Boolean);return w.forEach(function(x){return x.classList.add("allow-interactivity-".concat(l))}),function(){document.body.classList.remove("block-interactivity-".concat(l)),w.forEach(function(x){return x.classList.remove("allow-interactivity-".concat(l))})}}},[t.inert,t.lockRef.current,t.shards]);var d=_.useCallback(function(w,x){if("touches"in w&&w.touches.length===2||w.type==="wheel"&&w.ctrlKey)return!f.current.allowPinchZoom;var A=kl(w),D=a.current,U="deltaX"in w?w.deltaX:D[0]-A[0],N="deltaY"in w?w.deltaY:D[1]-A[1],k,G=w.target,M=Math.abs(U)>Math.abs(N)?"h":"v";if("touches"in w&&M==="h"&&G.type==="range")return!1;var B=A0(M,G);if(!B)return!0;if(B?k=M:(k=M==="v"?"h":"v",B=A0(M,G)),!B)return!1;if(!r.current&&"changedTouches"in w&&(U||N)&&(r.current=k),!k)return!0;var Q=r.current||k;return zT(Q,x,w,Q==="h"?U:N)},[]),m=_.useCallback(function(w){var x=w;if(!(!xs.length||xs[xs.length-1]!==u)){var A="deltaY"in x?T0(x):kl(x),D=i.current.filter(function(k){return k.name===x.type&&(k.target===x.target||x.target===k.shadowParent)&&$T(k.delta,A)})[0];if(D&&D.should){x.cancelable&&x.preventDefault();return}if(!D){var U=(f.current.shards||[]).map(O0).filter(Boolean).filter(function(k){return k.contains(x.target)}),N=U.length>0?d(x,U[0]):!f.current.noIsolation;N&&x.cancelable&&x.preventDefault()}}},[]),p=_.useCallback(function(w,x,A,D){var U={name:w,delta:x,target:A,should:D,shadowParent:FT(A)};i.current.push(U),setTimeout(function(){i.current=i.current.filter(function(N){return N!==U})},1)},[]),v=_.useCallback(function(w){a.current=kl(w),r.current=void 0},[]),g=_.useCallback(function(w){p(w.type,T0(w),w.target,d(w,t.lockRef.current))},[]),S=_.useCallback(function(w){p(w.type,kl(w),w.target,d(w,t.lockRef.current))},[]);_.useEffect(function(){return xs.push(u),t.setCallbacks({onScrollCapture:g,onWheelCapture:g,onTouchMoveCapture:S}),document.addEventListener("wheel",m,Rs),document.addEventListener("touchmove",m,Rs),document.addEventListener("touchstart",v,Rs),function(){xs=xs.filter(function(w){return w!==u}),document.removeEventListener("wheel",m,Rs),document.removeEventListener("touchmove",m,Rs),document.removeEventListener("touchstart",v,Rs)}},[]);var b=t.removeScrollBar,E=t.inert;return _.createElement(_.Fragment,null,E?_.createElement(u,{styles:BT(l)}):null,b?_.createElement(DT,{noRelative:t.noRelative,gapMode:t.gapMode}):null)}function FT(t){for(var i=null;t!==null;)t instanceof ShadowRoot&&(i=t.host,t=t.host),t=t.parentNode;return i}const HT=vT(xb,IT);var Mb=_.forwardRef(function(t,i){return _.createElement($u,$n({},t,{ref:i,sideCar:HT}))});Mb.classNames=$u.classNames;var Bu="Dialog",[Nb,N7]=mb(Bu),[VT,An]=Nb(Bu),Lb=t=>{const{__scopeDialog:i,children:a,open:r,defaultOpen:l,onOpenChange:u,modal:f=!0}=t,d=_.useRef(null),m=_.useRef(null),[p,v]=tT({prop:r,defaultProp:l??!1,onChange:u,caller:Bu});return R.jsx(VT,{scope:i,triggerRef:d,contentRef:m,contentId:Ls(),titleId:Ls(),descriptionId:Ls(),open:p,onOpenChange:v,onOpenToggle:_.useCallback(()=>v(g=>!g),[v]),modal:f,children:a})};Lb.displayName=Bu;var Ub="DialogTrigger",jb=_.forwardRef((t,i)=>{const{__scopeDialog:a,...r}=t,l=An(Ub,a),u=Gn(i,l.triggerRef);return R.jsx(Lt.button,{type:"button","aria-haspopup":"dialog","aria-expanded":l.open,"aria-controls":l.contentId,"data-state":am(l.open),...r,ref:u,onClick:tn(t.onClick,l.onOpenToggle)})});jb.displayName=Ub;var nm="DialogPortal",[kT,Pb]=Nb(nm,{forceMount:void 0}),zb=t=>{const{__scopeDialog:i,forceMount:a,children:r,container:l}=t,u=An(nm,i);return R.jsx(kT,{scope:i,forceMount:a,children:_.Children.map(r,f=>R.jsx(zu,{present:a||u.open,children:R.jsx(wb,{asChild:!0,container:l,children:f})}))})};zb.displayName=nm;var bu="DialogOverlay",$b=_.forwardRef((t,i)=>{const a=Pb(bu,t.__scopeDialog),{forceMount:r=a.forceMount,...l}=t,u=An(bu,t.__scopeDialog);return u.modal?R.jsx(zu,{present:r||u.open,children:R.jsx(YT,{...l,ref:i})}):null});$b.displayName=bu;var QT=gb("DialogOverlay.RemoveScroll"),YT=_.forwardRef((t,i)=>{const{__scopeDialog:a,...r}=t,l=An(bu,a);return R.jsx(Mb,{as:QT,allowPinchZoom:!0,shards:[l.contentRef],children:R.jsx(Lt.div,{"data-state":am(l.open),...r,ref:i,style:{pointerEvents:"auto",...r.style}})})}),Na="DialogContent",Bb=_.forwardRef((t,i)=>{const a=Pb(Na,t.__scopeDialog),{forceMount:r=a.forceMount,...l}=t,u=An(Na,t.__scopeDialog);return R.jsx(zu,{present:r||u.open,children:u.modal?R.jsx(GT,{...l,ref:i}):R.jsx(KT,{...l,ref:i})})});Bb.displayName=Na;var GT=_.forwardRef((t,i)=>{const a=An(Na,t.__scopeDialog),r=_.useRef(null),l=Gn(i,a.contentRef,r);return _.useEffect(()=>{const u=r.current;if(u)return oT(u)},[]),R.jsx(qb,{...t,ref:l,trapFocus:a.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:tn(t.onCloseAutoFocus,u=>{u.preventDefault(),a.triggerRef.current?.focus()}),onPointerDownOutside:tn(t.onPointerDownOutside,u=>{const f=u.detail.originalEvent,d=f.button===0&&f.ctrlKey===!0;(f.button===2||d)&&u.preventDefault()}),onFocusOutside:tn(t.onFocusOutside,u=>u.preventDefault())})}),KT=_.forwardRef((t,i)=>{const a=An(Na,t.__scopeDialog),r=_.useRef(!1),l=_.useRef(!1);return R.jsx(qb,{...t,ref:i,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:u=>{t.onCloseAutoFocus?.(u),u.defaultPrevented||(r.current||a.triggerRef.current?.focus(),u.preventDefault()),r.current=!1,l.current=!1},onInteractOutside:u=>{t.onInteractOutside?.(u),u.defaultPrevented||(r.current=!0,u.detail.originalEvent.type==="pointerdown"&&(l.current=!0));const f=u.target;a.triggerRef.current?.contains(f)&&u.preventDefault(),u.detail.originalEvent.type==="focusin"&&l.current&&u.preventDefault()}})}),qb=_.forwardRef((t,i)=>{const{__scopeDialog:a,trapFocus:r,onOpenAutoFocus:l,onCloseAutoFocus:u,...f}=t,d=An(Na,a),m=_.useRef(null),p=Gn(i,m);return q2(),R.jsxs(R.Fragment,{children:[R.jsx(bb,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:l,onUnmountAutoFocus:u,children:R.jsx(yb,{role:"dialog",id:d.contentId,"aria-describedby":d.descriptionId,"aria-labelledby":d.titleId,"data-state":am(d.open),...f,ref:p,onDismiss:()=>d.onOpenChange(!1)})}),R.jsxs(R.Fragment,{children:[R.jsx(XT,{titleId:d.titleId}),R.jsx(JT,{contentRef:m,descriptionId:d.descriptionId})]})]})}),im="DialogTitle",Ib=_.forwardRef((t,i)=>{const{__scopeDialog:a,...r}=t,l=An(im,a);return R.jsx(Lt.h2,{id:l.titleId,...r,ref:i})});Ib.displayName=im;var Fb="DialogDescription",Hb=_.forwardRef((t,i)=>{const{__scopeDialog:a,...r}=t,l=An(Fb,a);return R.jsx(Lt.p,{id:l.descriptionId,...r,ref:i})});Hb.displayName=Fb;var Vb="DialogClose",kb=_.forwardRef((t,i)=>{const{__scopeDialog:a,...r}=t,l=An(Vb,a);return R.jsx(Lt.button,{type:"button",...r,ref:i,onClick:tn(t.onClick,()=>l.onOpenChange(!1))})});kb.displayName=Vb;function am(t){return t?"open":"closed"}var Qb="DialogTitleWarning",[L7,Yb]=E2(Qb,{contentName:Na,titleName:im,docsSlug:"dialog"}),XT=({titleId:t})=>{const i=Yb(Qb),a=`\`${i.contentName}\` requires a \`${i.titleName}\` for the component to be accessible for screen reader users. + +If you want to hide the \`${i.titleName}\`, you can wrap it with our VisuallyHidden component. + +For more information, see https://radix-ui.com/primitives/docs/components/${i.docsSlug}`;return _.useEffect(()=>{t&&(document.getElementById(t)||console.error(a))},[a,t]),null},ZT="DialogDescriptionWarning",JT=({contentRef:t,descriptionId:i})=>{const r=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${Yb(ZT).contentName}}.`;return _.useEffect(()=>{const l=t.current?.getAttribute("aria-describedby");i&&l&&(document.getElementById(i)||console.warn(r))},[r,t,i]),null},Gb=Lb,D0=jb,M0=zb,Kb=$b,Xb=Bb,WT=Ib,eO=Hb,sm=kb;function tO(t){if(typeof document>"u")return;let i=document.head||document.getElementsByTagName("head")[0],a=document.createElement("style");a.type="text/css",i.appendChild(a),a.styleSheet?a.styleSheet.cssText=t:a.appendChild(document.createTextNode(t))}const Zb=re.createContext({drawerRef:{current:null},overlayRef:{current:null},onPress:()=>{},onRelease:()=>{},onDrag:()=>{},onNestedDrag:()=>{},onNestedOpenChange:()=>{},onNestedRelease:()=>{},openProp:void 0,dismissible:!1,isOpen:!1,isDragging:!1,keyboardIsOpen:{current:!1},snapPointsOffset:null,snapPoints:null,handleOnly:!1,modal:!1,shouldFade:!1,activeSnapPoint:null,onOpenChange:()=>{},setActiveSnapPoint:()=>{},closeDrawer:()=>{},direction:"bottom",shouldAnimate:{current:!0},shouldScaleBackground:!1,setBackgroundColorOnScale:!0,noBodyStyles:!1,container:null,autoFocus:!1}),qu=()=>{const t=re.useContext(Zb);if(!t)throw new Error("useDrawerContext must be used within a Drawer.Root");return t};tO(`[data-vaul-drawer]{touch-action:none;will-change:transform;transition:transform .5s cubic-bezier(.32, .72, 0, 1);animation-duration:.5s;animation-timing-function:cubic-bezier(0.32,0.72,0,1)}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=open]{animation-name:slideFromBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=closed]{animation-name:slideToBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=open]{animation-name:slideFromTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=closed]{animation-name:slideToTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=open]{animation-name:slideFromLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=closed]{animation-name:slideToLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=open]{animation-name:slideFromRight}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=closed]{animation-name:slideToRight}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--initial-transform,100%),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--initial-transform,100%),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,var(--snap-point-height,0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--snap-point-height,0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(var(--snap-point-height,0),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--snap-point-height,0),0,0)}[data-vaul-overlay][data-vaul-snap-points=false]{animation-duration:.5s;animation-timing-function:cubic-bezier(0.32,0.72,0,1)}[data-vaul-overlay][data-vaul-snap-points=false][data-state=open]{animation-name:fadeIn}[data-vaul-overlay][data-state=closed]{animation-name:fadeOut}[data-vaul-animate=false]{animation:none!important}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:0;transition:opacity .5s cubic-bezier(.32, .72, 0, 1)}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:1}[data-vaul-drawer]:not([data-vaul-custom-container=true])::after{content:'';position:absolute;background:inherit;background-color:inherit}[data-vaul-drawer][data-vaul-drawer-direction=top]::after{top:initial;bottom:100%;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=bottom]::after{top:100%;bottom:initial;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=left]::after{left:initial;right:100%;top:0;bottom:0;width:200%}[data-vaul-drawer][data-vaul-drawer-direction=right]::after{left:100%;right:initial;top:0;bottom:0;width:200%}[data-vaul-overlay][data-vaul-snap-points=true]:not([data-vaul-snap-points-overlay=true]):not( +[data-state=closed] +){opacity:0}[data-vaul-overlay][data-vaul-snap-points-overlay=true]{opacity:1}[data-vaul-handle]{display:block;position:relative;opacity:.7;background:#e2e2e4;margin-left:auto;margin-right:auto;height:5px;width:32px;border-radius:1rem;touch-action:pan-y}[data-vaul-handle]:active,[data-vaul-handle]:hover{opacity:1}[data-vaul-handle-hitarea]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max(100%,2.75rem);height:max(100%,2.75rem);touch-action:inherit}@media (hover:hover) and (pointer:fine){[data-vaul-drawer]{user-select:none}}@media (pointer:fine){[data-vaul-handle-hitarea]:{width:100%;height:100%}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeOut{to{opacity:0}}@keyframes slideFromBottom{from{transform:translate3d(0,var(--initial-transform,100%),0)}to{transform:translate3d(0,0,0)}}@keyframes slideToBottom{to{transform:translate3d(0,var(--initial-transform,100%),0)}}@keyframes slideFromTop{from{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}to{transform:translate3d(0,0,0)}}@keyframes slideToTop{to{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}}@keyframes slideFromLeft{from{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}to{transform:translate3d(0,0,0)}}@keyframes slideToLeft{to{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}}@keyframes slideFromRight{from{transform:translate3d(var(--initial-transform,100%),0,0)}to{transform:translate3d(0,0,0)}}@keyframes slideToRight{to{transform:translate3d(var(--initial-transform,100%),0,0)}}`);function nO(){const t=navigator.userAgent;return typeof window<"u"&&(/Firefox/.test(t)&&/Mobile/.test(t)||/FxiOS/.test(t))}function iO(){return rm(/^Mac/)}function aO(){return rm(/^iPhone/)}function N0(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}function sO(){return rm(/^iPad/)||iO()&&navigator.maxTouchPoints>1}function Jb(){return aO()||sO()}function rm(t){return typeof window<"u"&&window.navigator!=null?t.test(window.navigator.platform):void 0}const rO=24,oO=typeof window<"u"?_.useLayoutEffect:_.useEffect;function L0(...t){return(...i)=>{for(let a of t)typeof a=="function"&&a(...i)}}const $d=typeof document<"u"&&window.visualViewport;function U0(t){let i=window.getComputedStyle(t);return/(auto|scroll)/.test(i.overflow+i.overflowX+i.overflowY)}function Wb(t){for(U0(t)&&(t=t.parentElement);t&&!U0(t);)t=t.parentElement;return t||document.scrollingElement||document.documentElement}const lO=new Set(["checkbox","radio","range","color","file","image","button","submit","reset"]);let Ql=0,Bd;function uO(t={}){let{isDisabled:i}=t;oO(()=>{if(!i)return Ql++,Ql===1&&Jb()&&(Bd=cO()),()=>{Ql--,Ql===0&&Bd?.()}},[i])}function cO(){let t,i=0,a=g=>{t=Wb(g.target),!(t===document.documentElement&&t===document.body)&&(i=g.changedTouches[0].pageY)},r=g=>{if(!t||t===document.documentElement||t===document.body){g.preventDefault();return}let S=g.changedTouches[0].pageY,b=t.scrollTop,E=t.scrollHeight-t.clientHeight;E!==0&&((b<=0&&S>i||b>=E&&S{let S=g.target;bh(S)&&S!==document.activeElement&&(g.preventDefault(),S.style.transform="translateY(-2000px)",S.focus(),requestAnimationFrame(()=>{S.style.transform=""}))},u=g=>{let S=g.target;bh(S)&&(S.style.transform="translateY(-2000px)",requestAnimationFrame(()=>{S.style.transform="",$d&&($d.height{j0(S)}):$d.addEventListener("resize",()=>j0(S),{once:!0}))}))},f=()=>{window.scrollTo(0,0)},d=window.pageXOffset,m=window.pageYOffset,p=L0(fO(document.documentElement,"paddingRight",`${window.innerWidth-document.documentElement.clientWidth}px`));window.scrollTo(0,0);let v=L0(kr(document,"touchstart",a,{passive:!1,capture:!0}),kr(document,"touchmove",r,{passive:!1,capture:!0}),kr(document,"touchend",l,{passive:!1,capture:!0}),kr(document,"focus",u,!0),kr(window,"scroll",f));return()=>{p(),v(),window.scrollTo(d,m)}}function fO(t,i,a){let r=t.style[i];return t.style[i]=a,()=>{t.style[i]=r}}function kr(t,i,a,r){return t.addEventListener(i,a,r),()=>{t.removeEventListener(i,a,r)}}function j0(t){let i=document.scrollingElement||document.documentElement;for(;t&&t!==i;){let a=Wb(t);if(a!==document.documentElement&&a!==document.body&&a!==t){let r=a.getBoundingClientRect().top,l=t.getBoundingClientRect().top,u=t.getBoundingClientRect().bottom;const f=a.getBoundingClientRect().bottom+rO;u>f&&(a.scrollTop+=l-r)}t=a.parentElement}}function bh(t){return t instanceof HTMLInputElement&&!lO.has(t.type)||t instanceof HTMLTextAreaElement||t instanceof HTMLElement&&t.isContentEditable}function dO(t,i){typeof t=="function"?t(i):t!=null&&(t.current=i)}function hO(...t){return i=>t.forEach(a=>dO(a,i))}function e1(...t){return _.useCallback(hO(...t),t)}const t1=new WeakMap;function ut(t,i,a=!1){if(!t||!(t instanceof HTMLElement))return;let r={};Object.entries(i).forEach(([l,u])=>{if(l.startsWith("--")){t.style.setProperty(l,u);return}r[l]=t.style[l],t.style[l]=u}),!a&&t1.set(t,r)}function mO(t,i){if(!t||!(t instanceof HTMLElement))return;let a=t1.get(t);a&&(t.style[i]=a[i])}const rt=t=>{switch(t){case"top":case"bottom":return!0;case"left":case"right":return!1;default:return t}};function Yl(t,i){if(!t)return null;const a=window.getComputedStyle(t),r=a.transform||a.webkitTransform||a.mozTransform;let l=r.match(/^matrix3d\((.+)\)$/);return l?parseFloat(l[1].split(", ")[rt(i)?13:12]):(l=r.match(/^matrix\((.+)\)$/),l?parseFloat(l[1].split(", ")[rt(i)?5:4]):null)}function pO(t){return 8*(Math.log(t+1)-2)}function qd(t,i){if(!t)return()=>{};const a=t.style.cssText;return Object.assign(t.style,i),()=>{t.style.cssText=a}}function gO(...t){return(...i)=>{for(const a of t)typeof a=="function"&&a(...i)}}const Ge={DURATION:.5,EASE:[.32,.72,0,1]},n1=.4,vO=.25,yO=100,i1=8,ba=16,_h=26,Id="vaul-dragging";function a1(t){const i=re.useRef(t);return re.useEffect(()=>{i.current=t}),re.useMemo(()=>(...a)=>i.current==null?void 0:i.current.call(i,...a),[])}function SO({defaultProp:t,onChange:i}){const a=re.useState(t),[r]=a,l=re.useRef(r),u=a1(i);return re.useEffect(()=>{l.current!==r&&(u(r),l.current=r)},[r,l,u]),a}function s1({prop:t,defaultProp:i,onChange:a=()=>{}}){const[r,l]=SO({defaultProp:i,onChange:a}),u=t!==void 0,f=u?t:r,d=a1(a),m=re.useCallback(p=>{if(u){const g=typeof p=="function"?p(t):p;g!==t&&d(g)}else l(p)},[u,t,l,d]);return[f,m]}function bO({activeSnapPointProp:t,setActiveSnapPointProp:i,snapPoints:a,drawerRef:r,overlayRef:l,fadeFromIndex:u,onSnapPointChange:f,direction:d="bottom",container:m,snapToSequentialPoint:p}){const[v,g]=s1({prop:t,defaultProp:a?.[0],onChange:i}),[S,b]=re.useState(typeof window<"u"?{innerWidth:window.innerWidth,innerHeight:window.innerHeight}:void 0);re.useEffect(()=>{function M(){b({innerWidth:window.innerWidth,innerHeight:window.innerHeight})}return window.addEventListener("resize",M),()=>window.removeEventListener("resize",M)},[]);const E=re.useMemo(()=>v===a?.[a.length-1]||null,[a,v]),w=re.useMemo(()=>{var M;return(M=a?.findIndex(B=>B===v))!=null?M:null},[a,v]),x=a&&a.length>0&&(u||u===0)&&!Number.isNaN(u)&&a[u]===v||!a,A=re.useMemo(()=>{const M=m?{width:m.getBoundingClientRect().width,height:m.getBoundingClientRect().height}:typeof window<"u"?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0};var B;return(B=a?.map(Q=>{const P=typeof Q=="string";let ee=0;if(P&&(ee=parseInt(Q,10)),rt(d)){const X=P?ee:S?Q*M.height:0;return S?d==="bottom"?M.height-X:-M.height+X:X}const ne=P?ee:S?Q*M.width:0;return S?d==="right"?M.width-ne:-M.width+ne:ne}))!=null?B:[]},[a,S,m]),D=re.useMemo(()=>w!==null?A?.[w]:null,[A,w]),U=re.useCallback(M=>{var B;const Q=(B=A?.findIndex(P=>P===M))!=null?B:null;f(Q),ut(r.current,{transition:`transform ${Ge.DURATION}s cubic-bezier(${Ge.EASE.join(",")})`,transform:rt(d)?`translate3d(0, ${M}px, 0)`:`translate3d(${M}px, 0, 0)`}),A&&Q!==A.length-1&&u!==void 0&&Q!==u&&Q{if(v||t){var M;const B=(M=a?.findIndex(Q=>Q===t||Q===v))!=null?M:-1;A&&B!==-1&&typeof A[B]=="number"&&U(A[B])}},[v,t,a,A,U]);function N({draggedDistance:M,closeDrawer:B,velocity:Q,dismissible:P}){if(u===void 0)return;const ee=d==="bottom"||d==="right"?(D??0)-M:(D??0)+M,ne=w===u-1,X=w===0,Z=M>0;if(ne&&ut(l.current,{transition:`opacity ${Ge.DURATION}s cubic-bezier(${Ge.EASE.join(",")})`}),!p&&Q>2&&!Z){P?B():U(A[0]);return}if(!p&&Q>2&&Z&&A&&a){U(A[a.length-1]);return}const oe=A?.reduce(($,q)=>typeof $!="number"||typeof q!="number"?$:Math.abs(q-ee)n1&&Math.abs(M)0&&E&&a){U(A[a.length-1]);return}if(X&&$<0&&P&&B(),w===null)return;U(A[w+$]);return}U(oe)}function k({draggedDistance:M}){if(D===null)return;const B=d==="bottom"||d==="right"?D-M:D+M;(d==="bottom"||d==="right")&&BA[A.length-1]||ut(r.current,{transform:rt(d)?`translate3d(0, ${B}px, 0)`:`translate3d(${B}px, 0, 0)`})}function G(M,B){if(!a||typeof w!="number"||!A||u===void 0)return null;const Q=w===u-1;if(w>=u&&B)return 0;if(Q&&!B)return 1;if(!x&&!Q)return null;const ee=Q?w+1:w-1,ne=Q?A[ee]-A[ee-1]:A[ee+1]-A[ee],X=M/Math.abs(ne);return Q?1-X:X}return{isLastSnapPoint:E,activeSnapPoint:v,shouldFade:x,getPercentageDragged:G,setActiveSnapPoint:g,activeSnapPointIndex:w,onRelease:N,onDrag:k,snapPointsOffset:A}}const _O=()=>()=>{};function wO(){const{direction:t,isOpen:i,shouldScaleBackground:a,setBackgroundColorOnScale:r,noBodyStyles:l}=qu(),u=re.useRef(null),f=_.useMemo(()=>document.body.style.backgroundColor,[]);function d(){return(window.innerWidth-_h)/window.innerWidth}re.useEffect(()=>{if(i&&a){u.current&&clearTimeout(u.current);const m=document.querySelector("[data-vaul-drawer-wrapper]")||document.querySelector("[vaul-drawer-wrapper]");if(!m)return;gO(r&&!l?qd(document.body,{background:"black"}):_O,qd(m,{transformOrigin:rt(t)?"top":"left",transitionProperty:"transform, border-radius",transitionDuration:`${Ge.DURATION}s`,transitionTimingFunction:`cubic-bezier(${Ge.EASE.join(",")})`}));const p=qd(m,{borderRadius:`${i1}px`,overflow:"hidden",...rt(t)?{transform:`scale(${d()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`}:{transform:`scale(${d()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`}});return()=>{p(),u.current=window.setTimeout(()=>{f?document.body.style.background=f:document.body.style.removeProperty("background")},Ge.DURATION*1e3)}}},[i,a,f])}let Qr=null;function EO({isOpen:t,modal:i,nested:a,hasBeenOpened:r,preventScrollRestoration:l,noBodyStyles:u}){const[f,d]=re.useState(()=>typeof window<"u"?window.location.href:""),m=re.useRef(0),p=re.useCallback(()=>{if(N0()&&Qr===null&&t&&!u){Qr={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left,height:document.body.style.height,right:"unset"};const{scrollX:g,innerHeight:S}=window;document.body.style.setProperty("position","fixed","important"),Object.assign(document.body.style,{top:`${-m.current}px`,left:`${-g}px`,right:"0px",height:"auto"}),window.setTimeout(()=>window.requestAnimationFrame(()=>{const b=S-window.innerHeight;b&&m.current>=S&&(document.body.style.top=`${-(m.current+b)}px`)}),300)}},[t]),v=re.useCallback(()=>{if(N0()&&Qr!==null&&!u){const g=-parseInt(document.body.style.top,10),S=-parseInt(document.body.style.left,10);Object.assign(document.body.style,Qr),window.requestAnimationFrame(()=>{if(l&&f!==window.location.href){d(window.location.href);return}window.scrollTo(S,g)}),Qr=null}},[f]);return re.useEffect(()=>{function g(){m.current=window.scrollY}return g(),window.addEventListener("scroll",g),()=>{window.removeEventListener("scroll",g)}},[]),re.useEffect(()=>{if(i)return()=>{typeof document>"u"||document.querySelector("[data-vaul-drawer]")||v()}},[i,v]),re.useEffect(()=>{a||!r||(t?(!window.matchMedia("(display-mode: standalone)").matches&&p(),i||window.setTimeout(()=>{v()},500)):v())},[t,r,f,i,a,p,v]),{restorePositionSetting:v}}function CO({open:t,onOpenChange:i,children:a,onDrag:r,onRelease:l,snapPoints:u,shouldScaleBackground:f=!1,setBackgroundColorOnScale:d=!0,closeThreshold:m=vO,scrollLockTimeout:p=yO,dismissible:v=!0,handleOnly:g=!1,fadeFromIndex:S=u&&u.length-1,activeSnapPoint:b,setActiveSnapPoint:E,fixed:w,modal:x=!0,onClose:A,nested:D,noBodyStyles:U=!1,direction:N="bottom",defaultOpen:k=!1,disablePreventScroll:G=!0,snapToSequentialPoint:M=!1,preventScrollRestoration:B=!1,repositionInputs:Q=!0,onAnimationEnd:P,container:ee,autoFocus:ne=!1}){var X,Z;const[oe=!1,j]=s1({defaultProp:k,prop:t,onChange:ve=>{i?.(ve),!ve&&!D&&_o(),setTimeout(()=>{P?.(ve)},Ge.DURATION*1e3),ve&&!x&&typeof window<"u"&&window.requestAnimationFrame(()=>{document.body.style.pointerEvents="auto"}),ve||(document.body.style.pointerEvents="auto")}}),[$,q]=re.useState(!1),[ie,se]=re.useState(!1),[O,H]=re.useState(!1),te=re.useRef(null),ae=re.useRef(null),le=re.useRef(null),fe=re.useRef(null),ge=re.useRef(null),Fe=re.useRef(!1),Te=re.useRef(null),xt=re.useRef(0),gt=re.useRef(!1),Et=re.useRef(!k),Kn=re.useRef(0),me=re.useRef(null),Xn=re.useRef(((X=me.current)==null?void 0:X.getBoundingClientRect().height)||0),_i=re.useRef(((Z=me.current)==null?void 0:Z.getBoundingClientRect().width)||0),ea=re.useRef(0),za=re.useCallback(ve=>{u&&ve===je.length-1&&(ae.current=new Date)},[]),{activeSnapPoint:On,activeSnapPointIndex:At,setActiveSnapPoint:Zn,onRelease:$a,snapPointsOffset:je,onDrag:Ue,shouldFade:Qt,getPercentageDragged:Ks}=bO({snapPoints:u,activeSnapPointProp:b,setActiveSnapPointProp:E,drawerRef:me,fadeFromIndex:S,overlayRef:te,onSnapPointChange:za,direction:N,container:ee,snapToSequentialPoint:M});uO({isDisabled:!oe||ie||!x||O||!$||!Q||!G});const{restorePositionSetting:_o}=EO({isOpen:oe,modal:x,nested:D??!1,hasBeenOpened:$,preventScrollRestoration:B,noBodyStyles:U});function Jn(){return(window.innerWidth-_h)/window.innerWidth}function Qu(ve){var Oe,Ne;!v&&!u||me.current&&!me.current.contains(ve.target)||(Xn.current=((Oe=me.current)==null?void 0:Oe.getBoundingClientRect().height)||0,_i.current=((Ne=me.current)==null?void 0:Ne.getBoundingClientRect().width)||0,se(!0),le.current=new Date,Jb()&&window.addEventListener("touchend",()=>Fe.current=!1,{once:!0}),ve.target.setPointerCapture(ve.pointerId),xt.current=rt(N)?ve.pageY:ve.pageX)}function Xs(ve,Oe){var Ne;let we=ve;const Pe=(Ne=window.getSelection())==null?void 0:Ne.toString(),ot=me.current?Yl(me.current,N):null,Ze=new Date;if(we.tagName==="SELECT"||we.hasAttribute("data-vaul-no-drag")||we.closest("[data-vaul-no-drag]"))return!1;if(N==="right"||N==="left")return!0;if(ae.current&&Ze.getTime()-ae.current.getTime()<500)return!1;if(ot!==null&&(N==="bottom"?ot>0:ot<0))return!0;if(Pe&&Pe.length>0)return!1;if(ge.current&&Ze.getTime()-ge.current.getTime()we.clientHeight){if(we.scrollTop!==0)return ge.current=new Date,!1;if(we.getAttribute("role")==="dialog")return!0}we=we.parentNode}return!0}function Yu(ve){if(me.current&&ie){const Oe=N==="bottom"||N==="right"?1:-1,Ne=(xt.current-(rt(N)?ve.pageY:ve.pageX))*Oe,we=Ne>0,Pe=u&&!v&&!we;if(Pe&&At===0)return;const ot=Math.abs(Ne),Ze=document.querySelector("[data-vaul-drawer-wrapper]"),Mn=N==="bottom"||N==="top"?Xn.current:_i.current;let Ut=ot/Mn;const En=Ks(ot,we);if(En!==null&&(Ut=En),Pe&&Ut>=1||!Fe.current&&!Xs(ve.target,we))return;if(me.current.classList.add(Id),Fe.current=!0,ut(me.current,{transition:"none"}),ut(te.current,{transition:"none"}),u&&Ue({draggedDistance:Ne}),we&&!u){const on=pO(Ne),na=Math.min(on*-1,0)*Oe;ut(me.current,{transform:rt(N)?`translate3d(0, ${na}px, 0)`:`translate3d(${na}px, 0, 0)`});return}const jt=1-Ut;if((Qt||S&&At===S-1)&&(r?.(ve,Ut),ut(te.current,{opacity:`${jt}`,transition:"none"},!0)),Ze&&te.current&&f){const on=Math.min(Jn()+Ut*(1-Jn()),1),na=8-Ut*8,Zs=Math.max(0,14-Ut*14);ut(Ze,{borderRadius:`${na}px`,transform:rt(N)?`scale(${on}) translate3d(0, ${Zs}px, 0)`:`scale(${on}) translate3d(${Zs}px, 0, 0)`,transition:"none"},!0)}if(!u){const on=ot*Oe;ut(me.current,{transform:rt(N)?`translate3d(0, ${on}px, 0)`:`translate3d(${on}px, 0, 0)`})}}}re.useEffect(()=>{window.requestAnimationFrame(()=>{Et.current=!0})},[]),re.useEffect(()=>{var ve;function Oe(){if(!me.current||!Q)return;const Ne=document.activeElement;if(bh(Ne)||gt.current){var we;const Pe=((we=window.visualViewport)==null?void 0:we.height)||0,ot=window.innerHeight;let Ze=ot-Pe;const Mn=me.current.getBoundingClientRect().height||0,Ut=Mn>ot*.8;ea.current||(ea.current=Mn);const En=me.current.getBoundingClientRect().top;if(Math.abs(Kn.current-Ze)>60&&(gt.current=!gt.current),u&&u.length>0&&je&&At){const jt=je[At]||0;Ze+=jt}if(Kn.current=Ze,Mn>Pe||gt.current){const jt=me.current.getBoundingClientRect().height;let on=jt;jt>Pe&&(on=Pe-(Ut?En:_h)),w?me.current.style.height=`${jt-Math.max(Ze,0)}px`:me.current.style.height=`${Math.max(on,Pe-En)}px`}else nO()||(me.current.style.height=`${ea.current}px`);u&&u.length>0&&!gt.current?me.current.style.bottom="0px":me.current.style.bottom=`${Math.max(Ze,0)}px`}}return(ve=window.visualViewport)==null||ve.addEventListener("resize",Oe),()=>{var Ne;return(Ne=window.visualViewport)==null?void 0:Ne.removeEventListener("resize",Oe)}},[At,u,je]);function ta(ve){Tt(),A?.(),ve||j(!1),setTimeout(()=>{u&&Zn(u[0])},Ge.DURATION*1e3)}function wi(){if(!me.current)return;const ve=document.querySelector("[data-vaul-drawer-wrapper]"),Oe=Yl(me.current,N);ut(me.current,{transform:"translate3d(0, 0, 0)",transition:`transform ${Ge.DURATION}s cubic-bezier(${Ge.EASE.join(",")})`}),ut(te.current,{transition:`opacity ${Ge.DURATION}s cubic-bezier(${Ge.EASE.join(",")})`,opacity:"1"}),f&&Oe&&Oe>0&&oe&&ut(ve,{borderRadius:`${i1}px`,overflow:"hidden",...rt(N)?{transform:`scale(${Jn()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`,transformOrigin:"top"}:{transform:`scale(${Jn()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`,transformOrigin:"left"},transitionProperty:"transform, border-radius",transitionDuration:`${Ge.DURATION}s`,transitionTimingFunction:`cubic-bezier(${Ge.EASE.join(",")})`},!0)}function Tt(){!ie||!me.current||(me.current.classList.remove(Id),Fe.current=!1,se(!1),fe.current=new Date)}function Dn(ve){if(!ie||!me.current)return;me.current.classList.remove(Id),Fe.current=!1,se(!1),fe.current=new Date;const Oe=Yl(me.current,N);if(!ve||!Xs(ve.target,!1)||!Oe||Number.isNaN(Oe)||le.current===null)return;const Ne=fe.current.getTime()-le.current.getTime(),we=xt.current-(rt(N)?ve.pageY:ve.pageX),Pe=Math.abs(we)/Ne;if(Pe>.05&&(H(!0),setTimeout(()=>{H(!1)},200)),u){$a({draggedDistance:we*(N==="bottom"||N==="right"?1:-1),closeDrawer:ta,velocity:Pe,dismissible:v}),l?.(ve,!0);return}if(N==="bottom"||N==="right"?we>0:we<0){wi(),l?.(ve,!0);return}if(Pe>n1){ta(),l?.(ve,!1);return}var ot;const Ze=Math.min((ot=me.current.getBoundingClientRect().height)!=null?ot:0,window.innerHeight);var Mn;const Ut=Math.min((Mn=me.current.getBoundingClientRect().width)!=null?Mn:0,window.innerWidth),En=N==="left"||N==="right";if(Math.abs(Oe)>=(En?Ut:Ze)*m){ta(),l?.(ve,!1);return}l?.(ve,!0),wi()}re.useEffect(()=>(oe&&(ut(document.documentElement,{scrollBehavior:"auto"}),ae.current=new Date),()=>{mO(document.documentElement,"scrollBehavior")}),[oe]);function Ot(ve){const Oe=ve?(window.innerWidth-ba)/window.innerWidth:1,Ne=ve?-ba:0;Te.current&&window.clearTimeout(Te.current),ut(me.current,{transition:`transform ${Ge.DURATION}s cubic-bezier(${Ge.EASE.join(",")})`,transform:rt(N)?`scale(${Oe}) translate3d(0, ${Ne}px, 0)`:`scale(${Oe}) translate3d(${Ne}px, 0, 0)`}),!ve&&me.current&&(Te.current=setTimeout(()=>{const we=Yl(me.current,N);ut(me.current,{transition:"none",transform:rt(N)?`translate3d(0, ${we}px, 0)`:`translate3d(${we}px, 0, 0)`})},500))}function Gu(ve,Oe){if(Oe<0)return;const Ne=(window.innerWidth-ba)/window.innerWidth,we=Ne+Oe*(1-Ne),Pe=-ba+Oe*ba;ut(me.current,{transform:rt(N)?`scale(${we}) translate3d(0, ${Pe}px, 0)`:`scale(${we}) translate3d(${Pe}px, 0, 0)`,transition:"none"})}function Ku(ve,Oe){const Ne=rt(N)?window.innerHeight:window.innerWidth,we=Oe?(Ne-ba)/Ne:1,Pe=Oe?-ba:0;Oe&&ut(me.current,{transition:`transform ${Ge.DURATION}s cubic-bezier(${Ge.EASE.join(",")})`,transform:rt(N)?`scale(${we}) translate3d(0, ${Pe}px, 0)`:`scale(${we}) translate3d(${Pe}px, 0, 0)`})}return re.useEffect(()=>{x||window.requestAnimationFrame(()=>{document.body.style.pointerEvents="auto"})},[x]),re.createElement(Gb,{defaultOpen:k,onOpenChange:ve=>{!v&&!ve||(ve?q(!0):ta(!0),j(ve))},open:oe},re.createElement(Zb.Provider,{value:{activeSnapPoint:On,snapPoints:u,setActiveSnapPoint:Zn,drawerRef:me,overlayRef:te,onOpenChange:i,onPress:Qu,onRelease:Dn,onDrag:Yu,dismissible:v,shouldAnimate:Et,handleOnly:g,isOpen:oe,isDragging:ie,shouldFade:Qt,closeDrawer:ta,onNestedDrag:Gu,onNestedOpenChange:Ot,onNestedRelease:Ku,keyboardIsOpen:gt,modal:x,snapPointsOffset:je,activeSnapPointIndex:At,direction:N,shouldScaleBackground:f,setBackgroundColorOnScale:d,noBodyStyles:U,container:ee,autoFocus:ne}},a))}const r1=re.forwardRef(function({...t},i){const{overlayRef:a,snapPoints:r,onRelease:l,shouldFade:u,isOpen:f,modal:d,shouldAnimate:m}=qu(),p=e1(i,a),v=r&&r.length>0;if(!d)return null;const g=re.useCallback(S=>l(S),[l]);return re.createElement(Kb,{onMouseUp:g,ref:p,"data-vaul-overlay":"","data-vaul-snap-points":f&&v?"true":"false","data-vaul-snap-points-overlay":f&&u?"true":"false","data-vaul-animate":m?.current?"true":"false",...t})});r1.displayName="Drawer.Overlay";const o1=re.forwardRef(function({onPointerDownOutside:t,style:i,onOpenAutoFocus:a,...r},l){const{drawerRef:u,onPress:f,onRelease:d,onDrag:m,keyboardIsOpen:p,snapPointsOffset:v,activeSnapPointIndex:g,modal:S,isOpen:b,direction:E,snapPoints:w,container:x,handleOnly:A,shouldAnimate:D,autoFocus:U}=qu(),[N,k]=re.useState(!1),G=e1(l,u),M=re.useRef(null),B=re.useRef(null),Q=re.useRef(!1),P=w&&w.length>0;wO();const ee=(X,Z,oe=0)=>{if(Q.current)return!0;const j=Math.abs(X.y),$=Math.abs(X.x),q=$>j,ie=["bottom","right"].includes(Z)?1:-1;if(Z==="left"||Z==="right"){if(!(X.x*ie<0)&&$>=0&&$<=oe)return q}else if(!(X.y*ie<0)&&j>=0&&j<=oe)return!q;return Q.current=!0,!0};re.useEffect(()=>{P&&window.requestAnimationFrame(()=>{k(!0)})},[]);function ne(X){M.current=null,Q.current=!1,d(X)}return re.createElement(Xb,{"data-vaul-drawer-direction":E,"data-vaul-drawer":"","data-vaul-delayed-snap-points":N?"true":"false","data-vaul-snap-points":b&&P?"true":"false","data-vaul-custom-container":x?"true":"false","data-vaul-animate":D?.current?"true":"false",...r,ref:G,style:v&&v.length>0?{"--snap-point-height":`${v[g??0]}px`,...i}:i,onPointerDown:X=>{A||(r.onPointerDown==null||r.onPointerDown.call(r,X),M.current={x:X.pageX,y:X.pageY},f(X))},onOpenAutoFocus:X=>{a?.(X),U||X.preventDefault()},onPointerDownOutside:X=>{if(t?.(X),!S||X.defaultPrevented){X.preventDefault();return}p.current&&(p.current=!1)},onFocusOutside:X=>{if(!S){X.preventDefault();return}},onPointerMove:X=>{if(B.current=X,A||(r.onPointerMove==null||r.onPointerMove.call(r,X),!M.current))return;const Z=X.pageY-M.current.y,oe=X.pageX-M.current.x,j=X.pointerType==="touch"?10:2;ee({x:oe,y:Z},E,j)?m(X):(Math.abs(oe)>j||Math.abs(Z)>j)&&(M.current=null)},onPointerUp:X=>{r.onPointerUp==null||r.onPointerUp.call(r,X),M.current=null,Q.current=!1,d(X)},onPointerOut:X=>{r.onPointerOut==null||r.onPointerOut.call(r,X),ne(B.current)},onContextMenu:X=>{r.onContextMenu==null||r.onContextMenu.call(r,X),B.current&&ne(B.current)}})});o1.displayName="Drawer.Content";const RO=250,xO=120,l1=re.forwardRef(function({preventCycle:t=!1,children:i,...a},r){const{closeDrawer:l,isDragging:u,snapPoints:f,activeSnapPoint:d,setActiveSnapPoint:m,dismissible:p,handleOnly:v,isOpen:g,onPress:S,onDrag:b}=qu(),E=re.useRef(null),w=re.useRef(!1);function x(){if(w.current){U();return}window.setTimeout(()=>{A()},xO)}function A(){if(u||t||w.current){U();return}if(U(),!f||f.length===0){p||l();return}if(d===f[f.length-1]&&p){l();return}const k=f.findIndex(M=>M===d);if(k===-1)return;const G=f[k+1];m(G)}function D(){E.current=window.setTimeout(()=>{w.current=!0},RO)}function U(){E.current&&window.clearTimeout(E.current),w.current=!1}return re.createElement("div",{onClick:x,onPointerCancel:U,onPointerDown:N=>{v&&S(N),D()},onPointerMove:N=>{v&&b(N)},ref:r,"data-vaul-drawer-visible":g?"true":"false","data-vaul-handle":"","aria-hidden":"true",...a},re.createElement("span",{"data-vaul-handle-hitarea":"","aria-hidden":"true"},i))});l1.displayName="Drawer.Handle";const Gl={Root:CO,Content:o1,Overlay:r1,Handle:l1},AO="_glass_sepwu_8",TO={glass:AO},u1=_.forwardRef(({children:t,className:i,...a},r)=>R.jsx("div",{ref:r,className:et(i,TO.glass),...a,children:_.Children.only(t)}));u1.displayName="Glass";const OO="_link_1v5rz_8",DO={link:OO},P0=_.forwardRef(function({children:i,className:a,kind:r="primary",size:l="medium",...u},f){return R.jsx("a",{ref:f,...u,rel:"noreferrer noopener",className:et(DO.link,a),"data-kind":r,"data-size":l,children:i})});var MO="Label",c1=_.forwardRef((t,i)=>R.jsx(Lt.label,{...t,ref:i,onMouseDown:a=>{a.target.closest("button, input, select, textarea")||(t.onMouseDown?.(a),!a.defaultPrevented&&a.detail>1&&a.preventDefault())}}));c1.displayName=MO;var[om,U7]=mb("Form"),lm="Form",[NO,Gs]=om(lm),[LO,f1]=om(lm),d1=_.forwardRef((t,i)=>{const{__scopeForm:a,onClearServerErrors:r=()=>{},...l}=t,u=_.useRef(null),f=Gn(i,u),[d,m]=_.useState({}),p=_.useCallback(P=>d[P],[d]),v=_.useCallback((P,ee)=>m(ne=>({...ne,[P]:{...ne[P]??{},...ee}})),[]),g=_.useCallback(P=>{m(ee=>({...ee,[P]:void 0})),D(ee=>({...ee,[P]:{}}))},[]),[S,b]=_.useState({}),E=_.useCallback(P=>S[P]??[],[S]),w=_.useCallback((P,ee)=>{b(ne=>({...ne,[P]:[...ne[P]??[],ee]}))},[]),x=_.useCallback((P,ee)=>{b(ne=>({...ne,[P]:(ne[P]??[]).filter(X=>X.id!==ee)}))},[]),[A,D]=_.useState({}),U=_.useCallback(P=>A[P]??{},[A]),N=_.useCallback((P,ee)=>{D(ne=>({...ne,[P]:{...ne[P]??{},...ee}}))},[]),[k,G]=_.useState({}),M=_.useCallback((P,ee)=>{G(ne=>{const X=new Set(ne[P]).add(ee);return{...ne,[P]:X}})},[]),B=_.useCallback((P,ee)=>{G(ne=>{const X=new Set(ne[P]);return X.delete(ee),{...ne,[P]:X}})},[]),Q=_.useCallback(P=>Array.from(k[P]??[]).join(" ")||void 0,[k]);return R.jsx(NO,{scope:a,getFieldValidity:p,onFieldValidityChange:v,getFieldCustomMatcherEntries:E,onFieldCustomMatcherEntryAdd:w,onFieldCustomMatcherEntryRemove:x,getFieldCustomErrors:U,onFieldCustomErrorsChange:N,onFieldValiditionClear:g,children:R.jsx(LO,{scope:a,onFieldMessageIdAdd:M,onFieldMessageIdRemove:B,getFieldDescription:Q,children:R.jsx(Lt.form,{...l,ref:f,onInvalid:tn(t.onInvalid,P=>{const ee=S1(P.currentTarget);ee===P.target&&ee.focus(),P.preventDefault()}),onSubmit:tn(t.onSubmit,r,{checkForDefaultPrevented:!1}),onReset:tn(t.onReset,r)})})})});d1.displayName=lm;var um="FormField",[UO,Iu]=om(um),h1=_.forwardRef((t,i)=>{const{__scopeForm:a,name:r,serverInvalid:l=!1,...u}=t,d=Gs(um,a).getFieldValidity(r),m=Ls();return R.jsx(UO,{scope:a,id:m,name:r,serverInvalid:l,children:R.jsx(Lt.div,{"data-valid":fm(d,l),"data-invalid":dm(d,l),...u,ref:i})})});h1.displayName=um;var wh="FormLabel",m1=_.forwardRef((t,i)=>{const{__scopeForm:a,...r}=t,l=Gs(wh,a),u=Iu(wh,a),f=r.htmlFor||u.id,d=l.getFieldValidity(u.name);return R.jsx(c1,{"data-valid":fm(d,u.serverInvalid),"data-invalid":dm(d,u.serverInvalid),...r,ref:i,htmlFor:f})});m1.displayName=wh;var au="FormControl",p1=_.forwardRef((t,i)=>{const{__scopeForm:a,...r}=t,l=Gs(au,a),u=Iu(au,a),f=f1(au,a),d=_.useRef(null),m=Gn(i,d),p=r.name||u.name,v=r.id||u.id,g=l.getFieldCustomMatcherEntries(p),{onFieldValidityChange:S,onFieldCustomErrorsChange:b,onFieldValiditionClear:E}=l,w=_.useCallback(async D=>{if(b1(D.validity)){const ne=Fd(D.validity);S(p,ne);return}const U=D.form?new FormData(D.form):new FormData,N=[D.value,U],k=[],G=[];g.forEach(ne=>{FO(ne,N)?G.push(ne):HO(ne)&&k.push(ne)});const M=k.map(({id:ne,match:X})=>[ne,X(...N)]),B=Object.fromEntries(M),Q=Object.values(B).some(Boolean),P=Q;D.setCustomValidity(P?co:"");const ee=Fd(D.validity);if(S(p,ee),b(p,B),!Q&&G.length>0){const ne=G.map(({id:q,match:ie})=>ie(...N).then(se=>[q,se])),X=await Promise.all(ne),Z=Object.fromEntries(X),j=Object.values(Z).some(Boolean);D.setCustomValidity(j?co:"");const $=Fd(D.validity);S(p,$),b(p,Z)}},[g,p,b,S]);_.useEffect(()=>{const D=d.current;if(D){const U=()=>w(D);return D.addEventListener("change",U),()=>D.removeEventListener("change",U)}},[w]);const x=_.useCallback(()=>{const D=d.current;D&&(D.setCustomValidity(""),E(p))},[p,E]);_.useEffect(()=>{const D=d.current?.form;if(D)return D.addEventListener("reset",x),()=>D.removeEventListener("reset",x)},[x]),_.useEffect(()=>{const D=d.current,U=D?.closest("form");if(U&&u.serverInvalid){const N=S1(U);N===D&&N.focus()}},[u.serverInvalid]);const A=l.getFieldValidity(p);return R.jsx(Lt.input,{"data-valid":fm(A,u.serverInvalid),"data-invalid":dm(A,u.serverInvalid),"aria-invalid":u.serverInvalid?!0:void 0,"aria-describedby":f.getFieldDescription(p),title:"",...r,ref:m,id:v,name:p,onInvalid:tn(t.onInvalid,D=>{const U=D.currentTarget;w(U)}),onChange:tn(t.onChange,D=>{x()})})});p1.displayName=au;var co="This value is not valid",jO={badInput:co,patternMismatch:"This value does not match the required pattern",rangeOverflow:"This value is too large",rangeUnderflow:"This value is too small",stepMismatch:"This value does not match the required step",tooLong:"This value is too long",tooShort:"This value is too short",typeMismatch:"This value does not match the required type",valid:void 0,valueMissing:"This value is missing"},So="FormMessage",g1=_.forwardRef((t,i)=>{const{match:a,name:r,...l}=t,u=Iu(So,t.__scopeForm),f=r??u.name;return a===void 0?R.jsx(cm,{...l,ref:i,name:f,children:t.children||co}):typeof a=="function"?R.jsx(zO,{match:a,...l,ref:i,name:f}):R.jsx(PO,{match:a,...l,ref:i,name:f})});g1.displayName=So;var PO=_.forwardRef((t,i)=>{const{match:a,forceMatch:r=!1,name:l,children:u,...f}=t,m=Gs(So,f.__scopeForm).getFieldValidity(l);return r||m?.[a]?R.jsx(cm,{ref:i,...f,name:l,children:u??jO[a]}):null}),zO=_.forwardRef((t,i)=>{const{match:a,forceMatch:r=!1,name:l,id:u,children:f,...d}=t,m=Gs(So,d.__scopeForm),p=_.useRef(null),v=Gn(i,p),g=Ls(),S=u??g,b=_.useMemo(()=>({id:S,match:a}),[S,a]),{onFieldCustomMatcherEntryAdd:E,onFieldCustomMatcherEntryRemove:w}=m;_.useEffect(()=>(E(l,b),()=>w(l,b.id)),[b,l,E,w]);const x=m.getFieldValidity(l),D=m.getFieldCustomErrors(l)[S];return r||x&&!b1(x)&&D?R.jsx(cm,{id:S,ref:v,...d,name:l,children:f??co}):null}),cm=_.forwardRef((t,i)=>{const{__scopeForm:a,id:r,name:l,...u}=t,f=f1(So,a),d=Ls(),m=r??d,{onFieldMessageIdAdd:p,onFieldMessageIdRemove:v}=f;return _.useEffect(()=>(p(l,m),()=>v(l,m)),[l,m,p,v]),R.jsx(Lt.span,{id:m,...u,ref:i})}),Eh="FormValidityState",v1=t=>{const{__scopeForm:i,name:a,children:r}=t,l=Gs(Eh,i),u=Iu(Eh,i),f=a??u.name,d=l.getFieldValidity(f);return R.jsx(R.Fragment,{children:r(d)})};v1.displayName=Eh;var $O="FormSubmit",y1=_.forwardRef((t,i)=>{const{__scopeForm:a,...r}=t;return R.jsx(Lt.button,{type:"submit",...r,ref:i})});y1.displayName=$O;function Fd(t){const i={};for(const a in t)i[a]=t[a];return i}function BO(t){return t instanceof HTMLElement}function qO(t){return"validity"in t}function IO(t){return qO(t)&&(t.validity.valid===!1||t.getAttribute("aria-invalid")==="true")}function S1(t){const i=t.elements,[a]=Array.from(i).filter(BO).filter(IO);return a}function FO(t,i){return t.match.constructor.name==="AsyncFunction"||VO(t.match,i)}function HO(t){return t.match.constructor.name==="Function"}function VO(t,i){return t(...i)instanceof Promise}function b1(t){let i=!1;for(const a in t){const r=a;if(r!=="valid"&&r!=="customError"&&t[r]){i=!0;break}}return i}function fm(t,i){if(t?.valid===!0&&!i)return!0}function dm(t,i){if(t?.valid===!1||i)return!0}var kO=d1,QO=h1,YO=m1,hm=p1,Fu=g1,j7=v1,P7=y1;const GO="_root_19upo_16",KO="_field_19upo_26",XO="_label_19upo_59",ZO="_message_19upo_85",Qn={root:GO,field:KO,"inline-field":"_inline-field_19upo_32","inline-field-body":"_inline-field-body_19upo_38","inline-field-control":"_inline-field-control_19upo_44",label:XO,message:ZO,"help-message":"_help-message_19upo_91","error-message":"_error-message_19upo_95","success-message":"_success-message_19upo_99"},_1=_.forwardRef(function({children:i,...a},r){const l=et(Qn.field,a.className);return R.jsx(QO,{ref:r,...a,className:l,children:i})}),w1=_.forwardRef(function({children:i,...a},r){const l=et(Qn.label,a.className);return R.jsx(YO,{ref:r,...a,className:l,children:i})}),E1=_.forwardRef(function({children:i,...a},r){const l=et(Qn.root,a.className);return R.jsx(kO,{ref:r,...a,className:l,children:i})});function C1(t,i){return R.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",fill:"currentColor",viewBox:"0 0 24 24",ref:i,...t,children:R.jsx("path",{d:"m10.6 13.8-2.15-2.15a.95.95 0 0 0-.7-.275.95.95 0 0 0-.7.275.95.95 0 0 0-.275.7q0 .425.275.7L9.9 15.9q.3.3.7.3t.7-.3l5.65-5.65a.95.95 0 0 0 .275-.7.95.95 0 0 0-.275-.7.95.95 0 0 0-.7-.275.95.95 0 0 0-.7.275zM12 22a9.7 9.7 0 0 1-3.9-.788 10.1 10.1 0 0 1-3.175-2.137q-1.35-1.35-2.137-3.175A9.7 9.7 0 0 1 2 12q0-2.075.788-3.9a10.1 10.1 0 0 1 2.137-3.175q1.35-1.35 3.175-2.137A9.7 9.7 0 0 1 12 2q2.075 0 3.9.788a10.1 10.1 0 0 1 3.175 2.137q1.35 1.35 2.137 3.175A9.7 9.7 0 0 1 22 12a9.7 9.7 0 0 1-.788 3.9 10.1 10.1 0 0 1-2.137 3.175q-1.35 1.35-3.175 2.137A9.7 9.7 0 0 1 12 22"})})}C1.displayName="CheckCircleSolidIcon";const JO=_.forwardRef(C1),WO="_icon_11k6c_18",eD={icon:WO};function R1(t,i){return R.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",fill:"currentColor",viewBox:"0 0 24 24",ref:i,...t,children:R.jsx("path",{fillRule:"evenodd",d:"M12 4.031a8 8 0 1 0 8 8 1 1 0 0 1 2 0c0 5.523-4.477 10-10 10s-10-4.477-10-10 4.477-10 10-10a1 1 0 1 1 0 2",clipRule:"evenodd"})})}R1.displayName="SpinnerIcon";const tD=_.forwardRef(R1),nD=_.forwardRef(function({size:i=20,...a},r){return R.jsx(tD,{ref:r,className:eD.icon,style:{width:i,height:i},...a})}),iD=_.forwardRef(function({children:i,className:a,...r},l){const u=et(Qn.message,Qn["error-message"],a);return R.jsxs(Fu,{ref:l,...r,className:u,children:[R.jsx(Yh,{}),i]})}),z7=_.forwardRef(function({children:i,className:a,...r},l){const u=et(Qn.message,Qn["success-message"],a);return R.jsxs(Fu,{ref:l,...r,className:u,children:[R.jsx(JO,{}),i]})}),$7=_.forwardRef(function({children:i,className:a,...r},l){const u=et(Qn.message,a);return R.jsxs(Fu,{ref:l,...r,className:u,children:[R.jsx(nD,{}),i]})}),B7=_.forwardRef(function({children:i,className:a,...r},l){const u=et(Qn.message,Qn["help-message"],a);return R.jsx(Fu,{ref:l,...r,className:u,children:i})}),aD="_button_vczzf_8",sD="_destructive_vczzf_107",Yr={button:aD,"icon-only":"_icon-only_vczzf_50","has-icon":"_has-icon_vczzf_57",destructive:sD},La=_.forwardRef(function({as:i,kind:a="primary",size:r="lg",children:l,className:u,iconOnly:f,Icon:d,destructive:m,disabled:p,...v},g){const[S,b]=a==="destructive"?["secondary",!0]:[a,m],E=et(Yr.button,u,{[Yr["has-icon"]]:d,[Yr["icon-only"]]:f,[Yr.destructive]:b}),w=f&&r==="lg"?24:20;return R.jsxs(IS,{...v,as:i||"button",ref:g,className:E,"data-size":r,"data-kind":S,tabIndex:0,disabled:p,children:[d&&R.jsx(d,{width:w,height:w,className:Yr.icon,"aria-hidden":!0}),l]})}),rD="_container_1s836_8",oD="_control_1s836_13",lD="_action_1s836_24",Hd={container:rD,control:oD,action:lD},uD="_control_sqdq4_10",z0={control:uD,"enable-ligatures":"_enable-ligatures_sqdq4_62"},x1=_.forwardRef(function({className:i,enableLigatures:a,...r},l){const u=et(z0.control,i,{[z0["enable-ligatures"]]:a});return R.jsx("input",{ref:l,...r,className:u})}),cD=_.forwardRef(function(i,a){return R.jsx(hm,{asChild:!0,children:R.jsx(x1,{ref:a,...i})})}),A1=_.forwardRef(function({Icon:i,className:a,actionLabel:r,onActionClick:l,...u},f){const d=_.useId(),m=et(Hd.container,a);return R.jsxs("div",{className:m,id:d,children:[R.jsx(x1,{ref:f,...u,className:Hd.control}),R.jsx(Pu,{label:r,children:R.jsx("button",{type:"button",className:Hd.action,onClick:l,"aria-controls":d,children:R.jsx(i,{"aria-hidden":!0})})})]})}),q7=_.forwardRef(function(i,a){return R.jsx(hm,{asChild:!0,children:R.jsx(A1,{ref:a,...i})})});function T1(t,i){return R.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",fill:"currentColor",viewBox:"0 0 24 24",ref:i,...t,children:R.jsx("path",{d:"M12 16q1.875 0 3.188-1.312Q16.5 13.375 16.5 11.5t-1.312-3.187T12 7 8.813 8.313 7.5 11.5t1.313 3.188T12 16m0-1.8q-1.125 0-1.912-.787A2.6 2.6 0 0 1 9.3 11.5q0-1.125.787-1.912A2.6 2.6 0 0 1 12 8.8q1.125 0 1.912.787.788.788.788 1.913t-.787 1.912A2.6 2.6 0 0 1 12 14.2m0 4.8q-3.475 0-6.35-1.837Q2.775 15.324 1.3 12.2a.8.8 0 0 1-.1-.312 3 3 0 0 1 0-.775.8.8 0 0 1 .1-.313q1.475-3.125 4.35-4.962Q8.525 4 12 4t6.35 1.838T22.7 10.8a.8.8 0 0 1 .1.313 3 3 0 0 1 0 .774.8.8 0 0 1-.1.313q-1.475 3.125-4.35 4.963Q15.475 19 12 19m0-2a9.54 9.54 0 0 0 5.188-1.488A9.77 9.77 0 0 0 20.8 11.5a9.77 9.77 0 0 0-3.613-4.012A9.54 9.54 0 0 0 12 6a9.55 9.55 0 0 0-5.187 1.487A9.77 9.77 0 0 0 3.2 11.5a9.77 9.77 0 0 0 3.613 4.012A9.54 9.54 0 0 0 12 17"})})}T1.displayName="VisibilityOnIcon";const fD=_.forwardRef(T1);function O1(t,i){return R.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",fill:"currentColor",viewBox:"0 0 24 24",ref:i,...t,children:R.jsx("path",{d:"m16.1 13.3-1.45-1.45q.225-1.175-.675-2.2t-2.325-.8L10.2 7.4q.424-.2.863-.3A4.2 4.2 0 0 1 12 7q1.875 0 3.188 1.312Q16.5 9.625 16.5 11.5q0 .5-.1.938t-.3.862m3.2 3.15-1.45-1.4a11 11 0 0 0 1.688-1.588A9 9 0 0 0 20.8 11.5q-1.25-2.524-3.588-4.013Q14.875 6 12 6q-.724 0-1.425.1a10 10 0 0 0-1.375.3L7.65 4.85A11.1 11.1 0 0 1 12 4q3.575 0 6.425 1.887T22.7 10.8a.8.8 0 0 1 .1.313q.025.188.025.387a2 2 0 0 1-.125.7 10.9 10.9 0 0 1-3.4 4.25m-.2 5.45-3.5-3.45q-.874.274-1.762.413Q12.95 19 12 19q-3.575 0-6.425-1.887T1.3 12.2a.8.8 0 0 1-.1-.312 3 3 0 0 1 0-.763.8.8 0 0 1 .1-.3Q1.825 9.7 2.55 8.75A13.3 13.3 0 0 1 4.15 7L2.075 4.9a.93.93 0 0 1-.275-.688q0-.412.3-.712a.95.95 0 0 1 .7-.275q.425 0 .7.275l17 17q.275.275.288.688a.93.93 0 0 1-.288.712.95.95 0 0 1-.7.275.95.95 0 0 1-.7-.275M5.55 8.4q-.725.65-1.325 1.425A9 9 0 0 0 3.2 11.5q1.25 2.524 3.588 4.012T12 17q.5 0 .975-.062.475-.063.975-.138l-.9-.95q-.274.075-.525.113A3.5 3.5 0 0 1 12 16q-1.875 0-3.187-1.312Q7.5 13.375 7.5 11.5q0-.274.038-.525.037-.25.112-.525z"})})}O1.displayName="VisibilityOffIcon";const dD=_.forwardRef(O1),$0={isHidden:!0,icon:dD,label:"Show",type:"password"},hD={isHidden:!1,icon:fD,label:"Hide",type:"text"},mD=_.forwardRef(function(i,a){const[{icon:r,label:l,type:u},f]=_.useReducer(d=>d.isHidden?hD:$0,$0);return R.jsx(A1,{ref:a,...i,Icon:r,actionLabel:l,onActionClick:()=>f(),type:u})}),pD=_.forwardRef(function(i,a){return R.jsx(hm,{asChild:!0,children:R.jsx(mD,{ref:a,...i})})});var Vd={exports:{}},Gr={},kd={exports:{}},Qd={};var B0;function gD(){return B0||(B0=1,(function(t){function i(j,$){var q=j.length;j.push($);e:for(;0>>1,se=j[ie];if(0>>1;iel(te,q))ael(le,te)?(j[ie]=le,j[ae]=q,ie=ae):(j[ie]=te,j[H]=q,ie=H);else if(ael(le,q))j[ie]=le,j[ae]=q,ie=ae;else break e}}return $}function l(j,$){var q=j.sortIndex-$.sortIndex;return q!==0?q:j.id-$.id}if(t.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var u=performance;t.unstable_now=function(){return u.now()}}else{var f=Date,d=f.now();t.unstable_now=function(){return f.now()-d}}var m=[],p=[],v=1,g=null,S=3,b=!1,E=!1,w=!1,x=!1,A=typeof setTimeout=="function"?setTimeout:null,D=typeof clearTimeout=="function"?clearTimeout:null,U=typeof setImmediate<"u"?setImmediate:null;function N(j){for(var $=a(p);$!==null;){if($.callback===null)r(p);else if($.startTime<=j)r(p),$.sortIndex=$.expirationTime,i(m,$);else break;$=a(p)}}function k(j){if(w=!1,N(j),!E)if(a(m)!==null)E=!0,G||(G=!0,ne());else{var $=a(p);$!==null&&oe(k,$.startTime-j)}}var G=!1,M=-1,B=5,Q=-1;function P(){return x?!0:!(t.unstable_now()-Qj&&P());){var ie=g.callback;if(typeof ie=="function"){g.callback=null,S=g.priorityLevel;var se=ie(g.expirationTime<=j);if(j=t.unstable_now(),typeof se=="function"){g.callback=se,N(j),$=!0;break t}g===a(m)&&r(m),N(j)}else r(m);g=a(m)}if(g!==null)$=!0;else{var O=a(p);O!==null&&oe(k,O.startTime-j),$=!1}}break e}finally{g=null,S=q,b=!1}$=void 0}}finally{$?ne():G=!1}}}var ne;if(typeof U=="function")ne=function(){U(ee)};else if(typeof MessageChannel<"u"){var X=new MessageChannel,Z=X.port2;X.port1.onmessage=ee,ne=function(){Z.postMessage(null)}}else ne=function(){A(ee,0)};function oe(j,$){M=A(function(){j(t.unstable_now())},$)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(j){j.callback=null},t.unstable_forceFrameRate=function(j){0>j||125ie?(j.sortIndex=q,i(p,j),a(m)===null&&j===a(p)&&(w?(D(M),M=-1):w=!0,oe(k,q-ie))):(j.sortIndex=se,i(m,j),E||b||(E=!0,G||(G=!0,ne()))),j},t.unstable_shouldYield=P,t.unstable_wrapCallback=function(j){var $=S;return function(){var q=S;S=$;try{return j.apply(this,arguments)}finally{S=q}}}})(Qd)),Qd}var q0;function vD(){return q0||(q0=1,kd.exports=gD()),kd.exports}var I0;function yD(){if(I0)return Gr;I0=1;var t=vD(),i=mo(),a=NS();function r(e){var n="https://react.dev/errors/"+e;if(1se||(e.current=ie[se],ie[se]=null,se--)}function te(e,n){se++,ie[se]=e.current,e.current=n}var ae=O(null),le=O(null),fe=O(null),ge=O(null);function Fe(e,n){switch(te(fe,n),te(le,e),te(ae,null),n.nodeType){case 9:case 11:e=(e=n.documentElement)&&(e=e.namespaceURI)?jv(e):0;break;default:if(e=n.tagName,n=n.namespaceURI)n=jv(n),e=Pv(n,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}H(ae),te(ae,e)}function Te(){H(ae),H(le),H(fe)}function xt(e){e.memoizedState!==null&&te(ge,e);var n=ae.current,s=Pv(n,e.type);n!==s&&(te(le,e),te(ae,s))}function gt(e){le.current===e&&(H(ae),H(le)),ge.current===e&&(H(ge),zr._currentValue=q)}var Et,Kn;function me(e){if(Et===void 0)try{throw Error()}catch(s){var n=s.stack.trim().match(/\n( *(at )?)/);Et=n&&n[1]||"",Kn=-1)":-1c||T[o]!==F[c]){var K=` +`+T[o].replace(" at new "," at ");return e.displayName&&K.includes("")&&(K=K.replace("",e.displayName)),K}while(1<=o&&0<=c);break}}}finally{Xn=!1,Error.prepareStackTrace=s}return(s=e?e.displayName||e.name:"")?me(s):""}function ea(e,n){switch(e.tag){case 26:case 27:case 5:return me(e.type);case 16:return me("Lazy");case 13:return e.child!==n&&n!==null?me("Suspense Fallback"):me("Suspense");case 19:return me("SuspenseList");case 0:case 15:return _i(e.type,!1);case 11:return _i(e.type.render,!1);case 1:return _i(e.type,!0);case 31:return me("Activity");default:return""}}function za(e){try{var n="",s=null;do n+=ea(e,s),s=e,e=e.return;while(e);return n}catch(o){return` +Error generating stack: `+o.message+` +`+o.stack}}var On=Object.prototype.hasOwnProperty,At=t.unstable_scheduleCallback,Zn=t.unstable_cancelCallback,$a=t.unstable_shouldYield,je=t.unstable_requestPaint,Ue=t.unstable_now,Qt=t.unstable_getCurrentPriorityLevel,Ks=t.unstable_ImmediatePriority,_o=t.unstable_UserBlockingPriority,Jn=t.unstable_NormalPriority,Qu=t.unstable_LowPriority,Xs=t.unstable_IdlePriority,Yu=t.log,ta=t.unstable_setDisableYieldValue,wi=null,Tt=null;function Dn(e){if(typeof Yu=="function"&&ta(e),Tt&&typeof Tt.setStrictMode=="function")try{Tt.setStrictMode(wi,e)}catch{}}var Ot=Math.clz32?Math.clz32:ve,Gu=Math.log,Ku=Math.LN2;function ve(e){return e>>>=0,e===0?32:31-(Gu(e)/Ku|0)|0}var Oe=256,Ne=262144,we=4194304;function Pe(e){var n=e&42;if(n!==0)return n;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function ot(e,n,s){var o=e.pendingLanes;if(o===0)return 0;var c=0,h=e.suspendedLanes,y=e.pingedLanes;e=e.warmLanes;var C=o&134217727;return C!==0?(o=C&~h,o!==0?c=Pe(o):(y&=C,y!==0?c=Pe(y):s||(s=C&~e,s!==0&&(c=Pe(s))))):(C=o&~h,C!==0?c=Pe(C):y!==0?c=Pe(y):s||(s=o&~e,s!==0&&(c=Pe(s)))),c===0?0:n!==0&&n!==c&&(n&h)===0&&(h=c&-c,s=n&-n,h>=s||h===32&&(s&4194048)!==0)?n:c}function Ze(e,n){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&n)===0}function Mn(e,n){switch(e){case 1:case 2:case 4:case 8:case 64:return n+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return n+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Ut(){var e=we;return we<<=1,(we&62914560)===0&&(we=4194304),e}function En(e){for(var n=[],s=0;31>s;s++)n.push(e);return n}function jt(e,n){e.pendingLanes|=n,n!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function on(e,n,s,o,c,h){var y=e.pendingLanes;e.pendingLanes=s,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=s,e.entangledLanes&=s,e.errorRecoveryDisabledLanes&=s,e.shellSuspendCounter=0;var C=e.entanglements,T=e.expirationTimes,F=e.hiddenUpdates;for(s=y&~s;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var c_=/[\n"\\]/g;function un(e){return e.replace(c_,function(n){return"\\"+n.charCodeAt(0).toString(16)+" "})}function tc(e,n,s,o,c,h,y,C){e.name="",y!=null&&typeof y!="function"&&typeof y!="symbol"&&typeof y!="boolean"?e.type=y:e.removeAttribute("type"),n!=null?y==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+ln(n)):e.value!==""+ln(n)&&(e.value=""+ln(n)):y!=="submit"&&y!=="reset"||e.removeAttribute("value"),n!=null?nc(e,y,ln(n)):s!=null?nc(e,y,ln(s)):o!=null&&e.removeAttribute("value"),c==null&&h!=null&&(e.defaultChecked=!!h),c!=null&&(e.checked=c&&typeof c!="function"&&typeof c!="symbol"),C!=null&&typeof C!="function"&&typeof C!="symbol"&&typeof C!="boolean"?e.name=""+ln(C):e.removeAttribute("name")}function Om(e,n,s,o,c,h,y,C){if(h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"&&(e.type=h),n!=null||s!=null){if(!(h!=="submit"&&h!=="reset"||n!=null)){ec(e);return}s=s!=null?""+ln(s):"",n=n!=null?""+ln(n):s,C||n===e.value||(e.value=n),e.defaultValue=n}o=o??c,o=typeof o!="function"&&typeof o!="symbol"&&!!o,e.checked=C?e.checked:!!o,e.defaultChecked=!!o,y!=null&&typeof y!="function"&&typeof y!="symbol"&&typeof y!="boolean"&&(e.name=y),ec(e)}function nc(e,n,s){n==="number"&&Co(e.ownerDocument)===e||e.defaultValue===""+s||(e.defaultValue=""+s)}function Va(e,n,s,o){if(e=e.options,n){n={};for(var c=0;c"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),oc=!1;if(ti)try{var tr={};Object.defineProperty(tr,"passive",{get:function(){oc=!0}}),window.addEventListener("test",tr,tr),window.removeEventListener("test",tr,tr)}catch{oc=!1}var Ci=null,lc=null,xo=null;function Pm(){if(xo)return xo;var e,n=lc,s=n.length,o,c="value"in Ci?Ci.value:Ci.textContent,h=c.length;for(e=0;e=ar),Fm=" ",Hm=!1;function Vm(e,n){switch(e){case"keyup":return $_.indexOf(n.keyCode)!==-1;case"keydown":return n.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function km(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Ga=!1;function q_(e,n){switch(e){case"compositionend":return km(n);case"keypress":return n.which!==32?null:(Hm=!0,Fm);case"textInput":return e=n.data,e===Fm&&Hm?null:e;default:return null}}function I_(e,n){if(Ga)return e==="compositionend"||!hc&&Vm(e,n)?(e=Pm(),xo=lc=Ci=null,Ga=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(n.ctrlKey||n.altKey||n.metaKey)||n.ctrlKey&&n.altKey){if(n.char&&1=n)return{node:s,offset:n-e};e=o}e:{for(;s;){if(s.nextSibling){s=s.nextSibling;break e}s=s.parentNode}s=void 0}s=Wm(s)}}function tp(e,n){return e&&n?e===n?!0:e&&e.nodeType===3?!1:n&&n.nodeType===3?tp(e,n.parentNode):"contains"in e?e.contains(n):e.compareDocumentPosition?!!(e.compareDocumentPosition(n)&16):!1:!1}function np(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var n=Co(e.document);n instanceof e.HTMLIFrameElement;){try{var s=typeof n.contentWindow.location.href=="string"}catch{s=!1}if(s)e=n.contentWindow;else break;n=Co(e.document)}return n}function gc(e){var n=e&&e.nodeName&&e.nodeName.toLowerCase();return n&&(n==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||n==="textarea"||e.contentEditable==="true")}var K_=ti&&"documentMode"in document&&11>=document.documentMode,Ka=null,vc=null,lr=null,yc=!1;function ip(e,n,s){var o=s.window===s?s.document:s.nodeType===9?s:s.ownerDocument;yc||Ka==null||Ka!==Co(o)||(o=Ka,"selectionStart"in o&&gc(o)?o={start:o.selectionStart,end:o.selectionEnd}:(o=(o.ownerDocument&&o.ownerDocument.defaultView||window).getSelection(),o={anchorNode:o.anchorNode,anchorOffset:o.anchorOffset,focusNode:o.focusNode,focusOffset:o.focusOffset}),lr&&or(lr,o)||(lr=o,o=Sl(vc,"onSelect"),0>=y,c-=y,Nn=1<<32-Ot(n)+c|s<_e?(xe=ce,ce=null):xe=ce.sibling;var Me=V(z,ce,I[_e],J);if(Me===null){ce===null&&(ce=xe);break}e&&ce&&Me.alternate===null&&n(z,ce),L=h(Me,L,_e),De===null?de=Me:De.sibling=Me,De=Me,ce=xe}if(_e===I.length)return s(z,ce),Ae&&ii(z,_e),de;if(ce===null){for(;_e_e?(xe=ce,ce=null):xe=ce.sibling;var Qi=V(z,ce,Me.value,J);if(Qi===null){ce===null&&(ce=xe);break}e&&ce&&Qi.alternate===null&&n(z,ce),L=h(Qi,L,_e),De===null?de=Qi:De.sibling=Qi,De=Qi,ce=xe}if(Me.done)return s(z,ce),Ae&&ii(z,_e),de;if(ce===null){for(;!Me.done;_e++,Me=I.next())Me=W(z,Me.value,J),Me!==null&&(L=h(Me,L,_e),De===null?de=Me:De.sibling=Me,De=Me);return Ae&&ii(z,_e),de}for(ce=o(ce);!Me.done;_e++,Me=I.next())Me=Y(ce,z,_e,Me.value,J),Me!==null&&(e&&Me.alternate!==null&&ce.delete(Me.key===null?_e:Me.key),L=h(Me,L,_e),De===null?de=Me:De.sibling=Me,De=Me);return e&&ce.forEach(function(pE){return n(z,pE)}),Ae&&ii(z,_e),de}function Ie(z,L,I,J){if(typeof I=="object"&&I!==null&&I.type===w&&I.key===null&&(I=I.props.children),typeof I=="object"&&I!==null){switch(I.$$typeof){case b:e:{for(var de=I.key;L!==null;){if(L.key===de){if(de=I.type,de===w){if(L.tag===7){s(z,L.sibling),J=c(L,I.props.children),J.return=z,z=J;break e}}else if(L.elementType===de||typeof de=="object"&&de!==null&&de.$$typeof===B&&ha(de)===L.type){s(z,L.sibling),J=c(L,I.props),mr(J,I),J.return=z,z=J;break e}s(z,L);break}else n(z,L);L=L.sibling}I.type===w?(J=la(I.props.children,z.mode,J,I.key),J.return=z,z=J):(J=Po(I.type,I.key,I.props,null,z.mode,J),mr(J,I),J.return=z,z=J)}return y(z);case E:e:{for(de=I.key;L!==null;){if(L.key===de)if(L.tag===4&&L.stateNode.containerInfo===I.containerInfo&&L.stateNode.implementation===I.implementation){s(z,L.sibling),J=c(L,I.children||[]),J.return=z,z=J;break e}else{s(z,L);break}else n(z,L);L=L.sibling}J=Rc(I,z.mode,J),J.return=z,z=J}return y(z);case B:return I=ha(I),Ie(z,L,I,J)}if(oe(I))return ue(z,L,I,J);if(ne(I)){if(de=ne(I),typeof de!="function")throw Error(r(150));return I=de.call(I),pe(z,L,I,J)}if(typeof I.then=="function")return Ie(z,L,Ho(I),J);if(I.$$typeof===U)return Ie(z,L,Bo(z,I),J);Vo(z,I)}return typeof I=="string"&&I!==""||typeof I=="number"||typeof I=="bigint"?(I=""+I,L!==null&&L.tag===6?(s(z,L.sibling),J=c(L,I),J.return=z,z=J):(s(z,L),J=Cc(I,z.mode,J),J.return=z,z=J),y(z)):s(z,L)}return function(z,L,I,J){try{hr=0;var de=Ie(z,L,I,J);return rs=null,de}catch(ce){if(ce===ss||ce===Io)throw ce;var De=Gt(29,ce,null,z.mode);return De.lanes=J,De.return=z,De}finally{}}}var pa=xp(!0),Ap=xp(!1),Oi=!1;function zc(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function $c(e,n){e=e.updateQueue,n.updateQueue===e&&(n.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Di(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function Mi(e,n,s){var o=e.updateQueue;if(o===null)return null;if(o=o.shared,(Le&2)!==0){var c=o.pending;return c===null?n.next=n:(n.next=c.next,c.next=n),o.pending=n,n=jo(e),cp(e,null,s),n}return Uo(e,o,n,s),jo(e)}function pr(e,n,s){if(n=n.updateQueue,n!==null&&(n=n.shared,(s&4194048)!==0)){var o=n.lanes;o&=e.pendingLanes,s|=o,n.lanes=s,Zs(e,s)}}function Bc(e,n){var s=e.updateQueue,o=e.alternate;if(o!==null&&(o=o.updateQueue,s===o)){var c=null,h=null;if(s=s.firstBaseUpdate,s!==null){do{var y={lane:s.lane,tag:s.tag,payload:s.payload,callback:null,next:null};h===null?c=h=y:h=h.next=y,s=s.next}while(s!==null);h===null?c=h=n:h=h.next=n}else c=h=n;s={baseState:o.baseState,firstBaseUpdate:c,lastBaseUpdate:h,shared:o.shared,callbacks:o.callbacks},e.updateQueue=s;return}e=s.lastBaseUpdate,e===null?s.firstBaseUpdate=n:e.next=n,s.lastBaseUpdate=n}var qc=!1;function gr(){if(qc){var e=as;if(e!==null)throw e}}function vr(e,n,s,o){qc=!1;var c=e.updateQueue;Oi=!1;var h=c.firstBaseUpdate,y=c.lastBaseUpdate,C=c.shared.pending;if(C!==null){c.shared.pending=null;var T=C,F=T.next;T.next=null,y===null?h=F:y.next=F,y=T;var K=e.alternate;K!==null&&(K=K.updateQueue,C=K.lastBaseUpdate,C!==y&&(C===null?K.firstBaseUpdate=F:C.next=F,K.lastBaseUpdate=T))}if(h!==null){var W=c.baseState;y=0,K=F=T=null,C=h;do{var V=C.lane&-536870913,Y=V!==C.lane;if(Y?(Re&V)===V:(o&V)===V){V!==0&&V===is&&(qc=!0),K!==null&&(K=K.next={lane:0,tag:C.tag,payload:C.payload,callback:null,next:null});e:{var ue=e,pe=C;V=n;var Ie=s;switch(pe.tag){case 1:if(ue=pe.payload,typeof ue=="function"){W=ue.call(Ie,W,V);break e}W=ue;break e;case 3:ue.flags=ue.flags&-65537|128;case 0:if(ue=pe.payload,V=typeof ue=="function"?ue.call(Ie,W,V):ue,V==null)break e;W=g({},W,V);break e;case 2:Oi=!0}}V=C.callback,V!==null&&(e.flags|=64,Y&&(e.flags|=8192),Y=c.callbacks,Y===null?c.callbacks=[V]:Y.push(V))}else Y={lane:V,tag:C.tag,payload:C.payload,callback:C.callback,next:null},K===null?(F=K=Y,T=W):K=K.next=Y,y|=V;if(C=C.next,C===null){if(C=c.shared.pending,C===null)break;Y=C,C=Y.next,Y.next=null,c.lastBaseUpdate=Y,c.shared.pending=null}}while(!0);K===null&&(T=W),c.baseState=T,c.firstBaseUpdate=F,c.lastBaseUpdate=K,h===null&&(c.shared.lanes=0),Pi|=y,e.lanes=y,e.memoizedState=W}}function Tp(e,n){if(typeof e!="function")throw Error(r(191,e));e.call(n)}function Op(e,n){var s=e.callbacks;if(s!==null)for(e.callbacks=null,e=0;eh?h:8;var y=j.T,C={};j.T=C,rf(e,!1,n,s);try{var T=c(),F=j.S;if(F!==null&&F(C,T),T!==null&&typeof T=="object"&&typeof T.then=="function"){var K=aw(T,o);br(e,n,K,Wt(e))}else br(e,n,o,Wt(e))}catch(W){br(e,n,{then:function(){},status:"rejected",reason:W},Wt())}finally{$.p=h,y!==null&&C.types!==null&&(y.types=C.types),j.T=y}}function cw(){}function af(e,n,s,o){if(e.tag!==5)throw Error(r(476));var c=og(e).queue;rg(e,c,n,q,s===null?cw:function(){return lg(e),s(o)})}function og(e){var n=e.memoizedState;if(n!==null)return n;n={memoizedState:q,baseState:q,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:oi,lastRenderedState:q},next:null};var s={};return n.next={memoizedState:s,baseState:s,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:oi,lastRenderedState:s},next:null},e.memoizedState=n,e=e.alternate,e!==null&&(e.memoizedState=n),n}function lg(e){var n=og(e);n.next===null&&(n=e.alternate.memoizedState),br(e,n.next.queue,{},Wt())}function sf(){return St(zr)}function ug(){return We().memoizedState}function cg(){return We().memoizedState}function fw(e){for(var n=e.return;n!==null;){switch(n.tag){case 24:case 3:var s=Wt();e=Di(s);var o=Mi(n,e,s);o!==null&&(Ft(o,n,s),pr(o,n,s)),n={cache:Lc()},e.payload=n;return}n=n.return}}function dw(e,n,s){var o=Wt();s={lane:o,revertLane:0,gesture:null,action:s,hasEagerState:!1,eagerState:null,next:null},el(e)?dg(n,s):(s=wc(e,n,s,o),s!==null&&(Ft(s,e,o),hg(s,n,o)))}function fg(e,n,s){var o=Wt();br(e,n,s,o)}function br(e,n,s,o){var c={lane:o,revertLane:0,gesture:null,action:s,hasEagerState:!1,eagerState:null,next:null};if(el(e))dg(n,c);else{var h=e.alternate;if(e.lanes===0&&(h===null||h.lanes===0)&&(h=n.lastRenderedReducer,h!==null))try{var y=n.lastRenderedState,C=h(y,s);if(c.hasEagerState=!0,c.eagerState=C,Yt(C,y))return Uo(e,n,c,0),He===null&&Lo(),!1}catch{}finally{}if(s=wc(e,n,c,o),s!==null)return Ft(s,e,o),hg(s,n,o),!0}return!1}function rf(e,n,s,o){if(o={lane:2,revertLane:$f(),gesture:null,action:o,hasEagerState:!1,eagerState:null,next:null},el(e)){if(n)throw Error(r(479))}else n=wc(e,s,o,2),n!==null&&Ft(n,e,2)}function el(e){var n=e.alternate;return e===be||n!==null&&n===be}function dg(e,n){ls=Yo=!0;var s=e.pending;s===null?n.next=n:(n.next=s.next,s.next=n),e.pending=n}function hg(e,n,s){if((s&4194048)!==0){var o=n.lanes;o&=e.pendingLanes,s|=o,n.lanes=s,Zs(e,s)}}var _r={readContext:St,use:Xo,useCallback:Ke,useContext:Ke,useEffect:Ke,useImperativeHandle:Ke,useLayoutEffect:Ke,useInsertionEffect:Ke,useMemo:Ke,useReducer:Ke,useRef:Ke,useState:Ke,useDebugValue:Ke,useDeferredValue:Ke,useTransition:Ke,useSyncExternalStore:Ke,useId:Ke,useHostTransitionStatus:Ke,useFormState:Ke,useActionState:Ke,useOptimistic:Ke,useMemoCache:Ke,useCacheRefresh:Ke};_r.useEffectEvent=Ke;var mg={readContext:St,use:Xo,useCallback:function(e,n){return Dt().memoizedState=[e,n===void 0?null:n],e},useContext:St,useEffect:Zp,useImperativeHandle:function(e,n,s){s=s!=null?s.concat([e]):null,Jo(4194308,4,tg.bind(null,n,e),s)},useLayoutEffect:function(e,n){return Jo(4194308,4,e,n)},useInsertionEffect:function(e,n){Jo(4,2,e,n)},useMemo:function(e,n){var s=Dt();n=n===void 0?null:n;var o=e();if(ga){Dn(!0);try{e()}finally{Dn(!1)}}return s.memoizedState=[o,n],o},useReducer:function(e,n,s){var o=Dt();if(s!==void 0){var c=s(n);if(ga){Dn(!0);try{s(n)}finally{Dn(!1)}}}else c=n;return o.memoizedState=o.baseState=c,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:c},o.queue=e,e=e.dispatch=dw.bind(null,be,e),[o.memoizedState,e]},useRef:function(e){var n=Dt();return e={current:e},n.memoizedState=e},useState:function(e){e=Jc(e);var n=e.queue,s=fg.bind(null,be,n);return n.dispatch=s,[e.memoizedState,s]},useDebugValue:tf,useDeferredValue:function(e,n){var s=Dt();return nf(s,e,n)},useTransition:function(){var e=Jc(!1);return e=rg.bind(null,be,e.queue,!0,!1),Dt().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,n,s){var o=be,c=Dt();if(Ae){if(s===void 0)throw Error(r(407));s=s()}else{if(s=n(),He===null)throw Error(r(349));(Re&127)!==0||jp(o,n,s)}c.memoizedState=s;var h={value:s,getSnapshot:n};return c.queue=h,Zp(zp.bind(null,o,h,e),[e]),o.flags|=2048,cs(9,{destroy:void 0},Pp.bind(null,o,h,s,n),null),s},useId:function(){var e=Dt(),n=He.identifierPrefix;if(Ae){var s=Ln,o=Nn;s=(o&~(1<<32-Ot(o)-1)).toString(32)+s,n="_"+n+"R_"+s,s=Go++,0<\/script>",h=h.removeChild(h.firstChild);break;case"select":h=typeof o.is=="string"?y.createElement("select",{is:o.is}):y.createElement("select"),o.multiple?h.multiple=!0:o.size&&(h.size=o.size);break;default:h=typeof o.is=="string"?y.createElement(c,{is:o.is}):y.createElement(c)}}h[vt]=n,h[Pt]=o;e:for(y=n.child;y!==null;){if(y.tag===5||y.tag===6)h.appendChild(y.stateNode);else if(y.tag!==4&&y.tag!==27&&y.child!==null){y.child.return=y,y=y.child;continue}if(y===n)break e;for(;y.sibling===null;){if(y.return===null||y.return===n)break e;y=y.return}y.sibling.return=y.return,y=y.sibling}n.stateNode=h;e:switch(_t(h,c,o),c){case"button":case"input":case"select":case"textarea":o=!!o.autoFocus;break e;case"img":o=!0;break e;default:o=!1}o&&ui(n)}}return ke(n),bf(n,n.type,e===null?null:e.memoizedProps,n.pendingProps,s),null;case 6:if(e&&n.stateNode!=null)e.memoizedProps!==o&&ui(n);else{if(typeof o!="string"&&n.stateNode===null)throw Error(r(166));if(e=fe.current,ts(n)){if(e=n.stateNode,s=n.memoizedProps,o=null,c=yt,c!==null)switch(c.tag){case 27:case 5:o=c.memoizedProps}e[vt]=n,e=!!(e.nodeValue===s||o!==null&&o.suppressHydrationWarning===!0||Lv(e.nodeValue,s)),e||Ai(n,!0)}else e=bl(e).createTextNode(o),e[vt]=n,n.stateNode=e}return ke(n),null;case 31:if(s=n.memoizedState,e===null||e.memoizedState!==null){if(o=ts(n),s!==null){if(e===null){if(!o)throw Error(r(318));if(e=n.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(557));e[vt]=n}else ua(),(n.flags&128)===0&&(n.memoizedState=null),n.flags|=4;ke(n),e=!1}else s=Oc(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=s),e=!0;if(!e)return n.flags&256?(Xt(n),n):(Xt(n),null);if((n.flags&128)!==0)throw Error(r(558))}return ke(n),null;case 13:if(o=n.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(c=ts(n),o!==null&&o.dehydrated!==null){if(e===null){if(!c)throw Error(r(318));if(c=n.memoizedState,c=c!==null?c.dehydrated:null,!c)throw Error(r(317));c[vt]=n}else ua(),(n.flags&128)===0&&(n.memoizedState=null),n.flags|=4;ke(n),c=!1}else c=Oc(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=c),c=!0;if(!c)return n.flags&256?(Xt(n),n):(Xt(n),null)}return Xt(n),(n.flags&128)!==0?(n.lanes=s,n):(s=o!==null,e=e!==null&&e.memoizedState!==null,s&&(o=n.child,c=null,o.alternate!==null&&o.alternate.memoizedState!==null&&o.alternate.memoizedState.cachePool!==null&&(c=o.alternate.memoizedState.cachePool.pool),h=null,o.memoizedState!==null&&o.memoizedState.cachePool!==null&&(h=o.memoizedState.cachePool.pool),h!==c&&(o.flags|=2048)),s!==e&&s&&(n.child.flags|=8192),sl(n,n.updateQueue),ke(n),null);case 4:return Te(),e===null&&Ff(n.stateNode.containerInfo),ke(n),null;case 10:return si(n.type),ke(n),null;case 19:if(H(Je),o=n.memoizedState,o===null)return ke(n),null;if(c=(n.flags&128)!==0,h=o.rendering,h===null)if(c)Er(o,!1);else{if(Xe!==0||e!==null&&(e.flags&128)!==0)for(e=n.child;e!==null;){if(h=Qo(e),h!==null){for(n.flags|=128,Er(o,!1),e=h.updateQueue,n.updateQueue=e,sl(n,e),n.subtreeFlags=0,e=s,s=n.child;s!==null;)fp(s,e),s=s.sibling;return te(Je,Je.current&1|2),Ae&&ii(n,o.treeForkCount),n.child}e=e.sibling}o.tail!==null&&Ue()>cl&&(n.flags|=128,c=!0,Er(o,!1),n.lanes=4194304)}else{if(!c)if(e=Qo(h),e!==null){if(n.flags|=128,c=!0,e=e.updateQueue,n.updateQueue=e,sl(n,e),Er(o,!0),o.tail===null&&o.tailMode==="hidden"&&!h.alternate&&!Ae)return ke(n),null}else 2*Ue()-o.renderingStartTime>cl&&s!==536870912&&(n.flags|=128,c=!0,Er(o,!1),n.lanes=4194304);o.isBackwards?(h.sibling=n.child,n.child=h):(e=o.last,e!==null?e.sibling=h:n.child=h,o.last=h)}return o.tail!==null?(e=o.tail,o.rendering=e,o.tail=e.sibling,o.renderingStartTime=Ue(),e.sibling=null,s=Je.current,te(Je,c?s&1|2:s&1),Ae&&ii(n,o.treeForkCount),e):(ke(n),null);case 22:case 23:return Xt(n),Fc(),o=n.memoizedState!==null,e!==null?e.memoizedState!==null!==o&&(n.flags|=8192):o&&(n.flags|=8192),o?(s&536870912)!==0&&(n.flags&128)===0&&(ke(n),n.subtreeFlags&6&&(n.flags|=8192)):ke(n),s=n.updateQueue,s!==null&&sl(n,s.retryQueue),s=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(s=e.memoizedState.cachePool.pool),o=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(o=n.memoizedState.cachePool.pool),o!==s&&(n.flags|=2048),e!==null&&H(da),null;case 24:return s=null,e!==null&&(s=e.memoizedState.cache),n.memoizedState.cache!==s&&(n.flags|=2048),si(nt),ke(n),null;case 25:return null;case 30:return null}throw Error(r(156,n.tag))}function vw(e,n){switch(Ac(n),n.tag){case 1:return e=n.flags,e&65536?(n.flags=e&-65537|128,n):null;case 3:return si(nt),Te(),e=n.flags,(e&65536)!==0&&(e&128)===0?(n.flags=e&-65537|128,n):null;case 26:case 27:case 5:return gt(n),null;case 31:if(n.memoizedState!==null){if(Xt(n),n.alternate===null)throw Error(r(340));ua()}return e=n.flags,e&65536?(n.flags=e&-65537|128,n):null;case 13:if(Xt(n),e=n.memoizedState,e!==null&&e.dehydrated!==null){if(n.alternate===null)throw Error(r(340));ua()}return e=n.flags,e&65536?(n.flags=e&-65537|128,n):null;case 19:return H(Je),null;case 4:return Te(),null;case 10:return si(n.type),null;case 22:case 23:return Xt(n),Fc(),e!==null&&H(da),e=n.flags,e&65536?(n.flags=e&-65537|128,n):null;case 24:return si(nt),null;case 25:return null;default:return null}}function $g(e,n){switch(Ac(n),n.tag){case 3:si(nt),Te();break;case 26:case 27:case 5:gt(n);break;case 4:Te();break;case 31:n.memoizedState!==null&&Xt(n);break;case 13:Xt(n);break;case 19:H(Je);break;case 10:si(n.type);break;case 22:case 23:Xt(n),Fc(),e!==null&&H(da);break;case 24:si(nt)}}function Cr(e,n){try{var s=n.updateQueue,o=s!==null?s.lastEffect:null;if(o!==null){var c=o.next;s=c;do{if((s.tag&e)===e){o=void 0;var h=s.create,y=s.inst;o=h(),y.destroy=o}s=s.next}while(s!==c)}}catch(C){$e(n,n.return,C)}}function Ui(e,n,s){try{var o=n.updateQueue,c=o!==null?o.lastEffect:null;if(c!==null){var h=c.next;o=h;do{if((o.tag&e)===e){var y=o.inst,C=y.destroy;if(C!==void 0){y.destroy=void 0,c=n;var T=s,F=C;try{F()}catch(K){$e(c,T,K)}}}o=o.next}while(o!==h)}}catch(K){$e(n,n.return,K)}}function Bg(e){var n=e.updateQueue;if(n!==null){var s=e.stateNode;try{Op(n,s)}catch(o){$e(e,e.return,o)}}}function qg(e,n,s){s.props=va(e.type,e.memoizedProps),s.state=e.memoizedState;try{s.componentWillUnmount()}catch(o){$e(e,n,o)}}function Rr(e,n){try{var s=e.ref;if(s!==null){switch(e.tag){case 26:case 27:case 5:var o=e.stateNode;break;case 30:o=e.stateNode;break;default:o=e.stateNode}typeof s=="function"?e.refCleanup=s(o):s.current=o}}catch(c){$e(e,n,c)}}function Un(e,n){var s=e.ref,o=e.refCleanup;if(s!==null)if(typeof o=="function")try{o()}catch(c){$e(e,n,c)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof s=="function")try{s(null)}catch(c){$e(e,n,c)}else s.current=null}function Ig(e){var n=e.type,s=e.memoizedProps,o=e.stateNode;try{e:switch(n){case"button":case"input":case"select":case"textarea":s.autoFocus&&o.focus();break e;case"img":s.src?o.src=s.src:s.srcSet&&(o.srcset=s.srcSet)}}catch(c){$e(e,e.return,c)}}function _f(e,n,s){try{var o=e.stateNode;Bw(o,e.type,s,n),o[Pt]=n}catch(c){$e(e,e.return,c)}}function Fg(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Ii(e.type)||e.tag===4}function wf(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Fg(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&Ii(e.type)||e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Ef(e,n,s){var o=e.tag;if(o===5||o===6)e=e.stateNode,n?(s.nodeType===9?s.body:s.nodeName==="HTML"?s.ownerDocument.body:s).insertBefore(e,n):(n=s.nodeType===9?s.body:s.nodeName==="HTML"?s.ownerDocument.body:s,n.appendChild(e),s=s._reactRootContainer,s!=null||n.onclick!==null||(n.onclick=ei));else if(o!==4&&(o===27&&Ii(e.type)&&(s=e.stateNode,n=null),e=e.child,e!==null))for(Ef(e,n,s),e=e.sibling;e!==null;)Ef(e,n,s),e=e.sibling}function rl(e,n,s){var o=e.tag;if(o===5||o===6)e=e.stateNode,n?s.insertBefore(e,n):s.appendChild(e);else if(o!==4&&(o===27&&Ii(e.type)&&(s=e.stateNode),e=e.child,e!==null))for(rl(e,n,s),e=e.sibling;e!==null;)rl(e,n,s),e=e.sibling}function Hg(e){var n=e.stateNode,s=e.memoizedProps;try{for(var o=e.type,c=n.attributes;c.length;)n.removeAttributeNode(c[0]);_t(n,o,s),n[vt]=e,n[Pt]=s}catch(h){$e(e,e.return,h)}}var ci=!1,st=!1,Cf=!1,Vg=typeof WeakSet=="function"?WeakSet:Set,pt=null;function yw(e,n){if(e=e.containerInfo,kf=Al,e=np(e),gc(e)){if("selectionStart"in e)var s={start:e.selectionStart,end:e.selectionEnd};else e:{s=(s=e.ownerDocument)&&s.defaultView||window;var o=s.getSelection&&s.getSelection();if(o&&o.rangeCount!==0){s=o.anchorNode;var c=o.anchorOffset,h=o.focusNode;o=o.focusOffset;try{s.nodeType,h.nodeType}catch{s=null;break e}var y=0,C=-1,T=-1,F=0,K=0,W=e,V=null;t:for(;;){for(var Y;W!==s||c!==0&&W.nodeType!==3||(C=y+c),W!==h||o!==0&&W.nodeType!==3||(T=y+o),W.nodeType===3&&(y+=W.nodeValue.length),(Y=W.firstChild)!==null;)V=W,W=Y;for(;;){if(W===e)break t;if(V===s&&++F===c&&(C=y),V===h&&++K===o&&(T=y),(Y=W.nextSibling)!==null)break;W=V,V=W.parentNode}W=Y}s=C===-1||T===-1?null:{start:C,end:T}}else s=null}s=s||{start:0,end:0}}else s=null;for(Qf={focusedElem:e,selectionRange:s},Al=!1,pt=n;pt!==null;)if(n=pt,e=n.child,(n.subtreeFlags&1028)!==0&&e!==null)e.return=n,pt=e;else for(;pt!==null;){switch(n=pt,h=n.alternate,e=n.flags,n.tag){case 0:if((e&4)!==0&&(e=n.updateQueue,e=e!==null?e.events:null,e!==null))for(s=0;s title"))),_t(h,o,s),h[vt]=e,mt(h),o=h;break e;case"link":var y=Xv("link","href",c).get(o+(s.href||""));if(y){for(var C=0;CIe&&(y=Ie,Ie=pe,pe=y);var z=ep(C,pe),L=ep(C,Ie);if(z&&L&&(Y.rangeCount!==1||Y.anchorNode!==z.node||Y.anchorOffset!==z.offset||Y.focusNode!==L.node||Y.focusOffset!==L.offset)){var I=W.createRange();I.setStart(z.node,z.offset),Y.removeAllRanges(),pe>Ie?(Y.addRange(I),Y.extend(L.node,L.offset)):(I.setEnd(L.node,L.offset),Y.addRange(I))}}}}for(W=[],Y=C;Y=Y.parentNode;)Y.nodeType===1&&W.push({element:Y,left:Y.scrollLeft,top:Y.scrollTop});for(typeof C.focus=="function"&&C.focus(),C=0;Cs?32:s,j.T=null,s=Mf,Mf=null;var h=$i,y=pi;if(lt=0,ps=$i=null,pi=0,(Le&6)!==0)throw Error(r(331));var C=Le;if(Le|=4,tv(h.current),Jg(h,h.current,y,s),Le=C,Mr(0,!1),Tt&&typeof Tt.onPostCommitFiberRoot=="function")try{Tt.onPostCommitFiberRoot(wi,h)}catch{}return!0}finally{$.p=c,j.T=o,Sv(e,n)}}function _v(e,n,s){n=fn(s,n),n=cf(e.stateNode,n,2),e=Mi(e,n,2),e!==null&&(jt(e,2),jn(e))}function $e(e,n,s){if(e.tag===3)_v(e,e,s);else for(;n!==null;){if(n.tag===3){_v(n,e,s);break}else if(n.tag===1){var o=n.stateNode;if(typeof n.type.getDerivedStateFromError=="function"||typeof o.componentDidCatch=="function"&&(zi===null||!zi.has(o))){e=fn(s,e),s=wg(2),o=Mi(n,s,2),o!==null&&(Eg(s,o,n,e),jt(o,2),jn(o));break}}n=n.return}}function jf(e,n,s){var o=e.pingCache;if(o===null){o=e.pingCache=new _w;var c=new Set;o.set(n,c)}else c=o.get(n),c===void 0&&(c=new Set,o.set(n,c));c.has(s)||(Af=!0,c.add(s),e=xw.bind(null,e,n,s),n.then(e,e))}function xw(e,n,s){var o=e.pingCache;o!==null&&o.delete(n),e.pingedLanes|=e.suspendedLanes&s,e.warmLanes&=~s,He===e&&(Re&s)===s&&(Xe===4||Xe===3&&(Re&62914560)===Re&&300>Ue()-ul?(Le&2)===0&&gs(e,0):Tf|=s,ms===Re&&(ms=0)),jn(e)}function wv(e,n){n===0&&(n=Ut()),e=oa(e,n),e!==null&&(jt(e,n),jn(e))}function Aw(e){var n=e.memoizedState,s=0;n!==null&&(s=n.retryLane),wv(e,s)}function Tw(e,n){var s=0;switch(e.tag){case 31:case 13:var o=e.stateNode,c=e.memoizedState;c!==null&&(s=c.retryLane);break;case 19:o=e.stateNode;break;case 22:o=e.stateNode._retryCache;break;default:throw Error(r(314))}o!==null&&o.delete(n),wv(e,s)}function Ow(e,n){return At(e,n)}var gl=null,ys=null,Pf=!1,vl=!1,zf=!1,qi=0;function jn(e){e!==ys&&e.next===null&&(ys===null?gl=ys=e:ys=ys.next=e),vl=!0,Pf||(Pf=!0,Mw())}function Mr(e,n){if(!zf&&vl){zf=!0;do for(var s=!1,o=gl;o!==null;){if(e!==0){var c=o.pendingLanes;if(c===0)var h=0;else{var y=o.suspendedLanes,C=o.pingedLanes;h=(1<<31-Ot(42|e)+1)-1,h&=c&~(y&~C),h=h&201326741?h&201326741|1:h?h|2:0}h!==0&&(s=!0,xv(o,h))}else h=Re,h=ot(o,o===He?h:0,o.cancelPendingCommit!==null||o.timeoutHandle!==-1),(h&3)===0||Ze(o,h)||(s=!0,xv(o,h));o=o.next}while(s);zf=!1}}function Dw(){Ev()}function Ev(){vl=Pf=!1;var e=0;qi!==0&&Iw()&&(e=qi);for(var n=Ue(),s=null,o=gl;o!==null;){var c=o.next,h=Cv(o,n);h===0?(o.next=null,s===null?gl=c:s.next=c,c===null&&(ys=s)):(s=o,(e!==0||(h&3)!==0)&&(vl=!0)),o=c}lt!==0&<!==5||Mr(e),qi!==0&&(qi=0)}function Cv(e,n){for(var s=e.suspendedLanes,o=e.pingedLanes,c=e.expirationTimes,h=e.pendingLanes&-62914561;0C)break;var K=T.transferSize,W=T.initiatorType;K&&Uv(W)&&(T=T.responseEnd,y+=K*(T"u"?null:document;function Qv(e,n,s){var o=Ss;if(o&&typeof n=="string"&&n){var c=un(n);c='link[rel="'+e+'"][href="'+c+'"]',typeof s=="string"&&(c+='[crossorigin="'+s+'"]'),kv.has(c)||(kv.add(c),e={rel:e,crossOrigin:s,href:n},o.querySelector(c)===null&&(n=o.createElement("link"),_t(n,"link",e),mt(n),o.head.appendChild(n)))}}function Xw(e){gi.D(e),Qv("dns-prefetch",e,null)}function Zw(e,n){gi.C(e,n),Qv("preconnect",e,n)}function Jw(e,n,s){gi.L(e,n,s);var o=Ss;if(o&&e&&n){var c='link[rel="preload"][as="'+un(n)+'"]';n==="image"&&s&&s.imageSrcSet?(c+='[imagesrcset="'+un(s.imageSrcSet)+'"]',typeof s.imageSizes=="string"&&(c+='[imagesizes="'+un(s.imageSizes)+'"]')):c+='[href="'+un(e)+'"]';var h=c;switch(n){case"style":h=bs(e);break;case"script":h=_s(e)}vn.has(h)||(e=g({rel:"preload",href:n==="image"&&s&&s.imageSrcSet?void 0:e,as:n},s),vn.set(h,e),o.querySelector(c)!==null||n==="style"&&o.querySelector(jr(h))||n==="script"&&o.querySelector(Pr(h))||(n=o.createElement("link"),_t(n,"link",e),mt(n),o.head.appendChild(n)))}}function Ww(e,n){gi.m(e,n);var s=Ss;if(s&&e){var o=n&&typeof n.as=="string"?n.as:"script",c='link[rel="modulepreload"][as="'+un(o)+'"][href="'+un(e)+'"]',h=c;switch(o){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":h=_s(e)}if(!vn.has(h)&&(e=g({rel:"modulepreload",href:e},n),vn.set(h,e),s.querySelector(c)===null)){switch(o){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(s.querySelector(Pr(h)))return}o=s.createElement("link"),_t(o,"link",e),mt(o),s.head.appendChild(o)}}}function eE(e,n,s){gi.S(e,n,s);var o=Ss;if(o&&e){var c=Fa(o).hoistableStyles,h=bs(e);n=n||"default";var y=c.get(h);if(!y){var C={loading:0,preload:null};if(y=o.querySelector(jr(h)))C.loading=5;else{e=g({rel:"stylesheet",href:e,"data-precedence":n},s),(s=vn.get(h))&&Wf(e,s);var T=y=o.createElement("link");mt(T),_t(T,"link",e),T._p=new Promise(function(F,K){T.onload=F,T.onerror=K}),T.addEventListener("load",function(){C.loading|=1}),T.addEventListener("error",function(){C.loading|=2}),C.loading|=4,wl(y,n,o)}y={type:"stylesheet",instance:y,count:1,state:C},c.set(h,y)}}}function tE(e,n){gi.X(e,n);var s=Ss;if(s&&e){var o=Fa(s).hoistableScripts,c=_s(e),h=o.get(c);h||(h=s.querySelector(Pr(c)),h||(e=g({src:e,async:!0},n),(n=vn.get(c))&&ed(e,n),h=s.createElement("script"),mt(h),_t(h,"link",e),s.head.appendChild(h)),h={type:"script",instance:h,count:1,state:null},o.set(c,h))}}function nE(e,n){gi.M(e,n);var s=Ss;if(s&&e){var o=Fa(s).hoistableScripts,c=_s(e),h=o.get(c);h||(h=s.querySelector(Pr(c)),h||(e=g({src:e,async:!0,type:"module"},n),(n=vn.get(c))&&ed(e,n),h=s.createElement("script"),mt(h),_t(h,"link",e),s.head.appendChild(h)),h={type:"script",instance:h,count:1,state:null},o.set(c,h))}}function Yv(e,n,s,o){var c=(c=fe.current)?_l(c):null;if(!c)throw Error(r(446));switch(e){case"meta":case"title":return null;case"style":return typeof s.precedence=="string"&&typeof s.href=="string"?(n=bs(s.href),s=Fa(c).hoistableStyles,o=s.get(n),o||(o={type:"style",instance:null,count:0,state:null},s.set(n,o)),o):{type:"void",instance:null,count:0,state:null};case"link":if(s.rel==="stylesheet"&&typeof s.href=="string"&&typeof s.precedence=="string"){e=bs(s.href);var h=Fa(c).hoistableStyles,y=h.get(e);if(y||(c=c.ownerDocument||c,y={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},h.set(e,y),(h=c.querySelector(jr(e)))&&!h._p&&(y.instance=h,y.state.loading=5),vn.has(e)||(s={rel:"preload",as:"style",href:s.href,crossOrigin:s.crossOrigin,integrity:s.integrity,media:s.media,hrefLang:s.hrefLang,referrerPolicy:s.referrerPolicy},vn.set(e,s),h||iE(c,e,s,y.state))),n&&o===null)throw Error(r(528,""));return y}if(n&&o!==null)throw Error(r(529,""));return null;case"script":return n=s.async,s=s.src,typeof s=="string"&&n&&typeof n!="function"&&typeof n!="symbol"?(n=_s(s),s=Fa(c).hoistableScripts,o=s.get(n),o||(o={type:"script",instance:null,count:0,state:null},s.set(n,o)),o):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,e))}}function bs(e){return'href="'+un(e)+'"'}function jr(e){return'link[rel="stylesheet"]['+e+"]"}function Gv(e){return g({},e,{"data-precedence":e.precedence,precedence:null})}function iE(e,n,s,o){e.querySelector('link[rel="preload"][as="style"]['+n+"]")?o.loading=1:(n=e.createElement("link"),o.preload=n,n.addEventListener("load",function(){return o.loading|=1}),n.addEventListener("error",function(){return o.loading|=2}),_t(n,"link",s),mt(n),e.head.appendChild(n))}function _s(e){return'[src="'+un(e)+'"]'}function Pr(e){return"script[async]"+e}function Kv(e,n,s){if(n.count++,n.instance===null)switch(n.type){case"style":var o=e.querySelector('style[data-href~="'+un(s.href)+'"]');if(o)return n.instance=o,mt(o),o;var c=g({},s,{"data-href":s.href,"data-precedence":s.precedence,href:null,precedence:null});return o=(e.ownerDocument||e).createElement("style"),mt(o),_t(o,"style",c),wl(o,s.precedence,e),n.instance=o;case"stylesheet":c=bs(s.href);var h=e.querySelector(jr(c));if(h)return n.state.loading|=4,n.instance=h,mt(h),h;o=Gv(s),(c=vn.get(c))&&Wf(o,c),h=(e.ownerDocument||e).createElement("link"),mt(h);var y=h;return y._p=new Promise(function(C,T){y.onload=C,y.onerror=T}),_t(h,"link",o),n.state.loading|=4,wl(h,s.precedence,e),n.instance=h;case"script":return h=_s(s.src),(c=e.querySelector(Pr(h)))?(n.instance=c,mt(c),c):(o=s,(c=vn.get(h))&&(o=g({},s),ed(o,c)),e=e.ownerDocument||e,c=e.createElement("script"),mt(c),_t(c,"link",o),e.head.appendChild(c),n.instance=c);case"void":return null;default:throw Error(r(443,n.type))}else n.type==="stylesheet"&&(n.state.loading&4)===0&&(o=n.instance,n.state.loading|=4,wl(o,s.precedence,e));return n.instance}function wl(e,n,s){for(var o=s.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),c=o.length?o[o.length-1]:null,h=c,y=0;y title"):null)}function aE(e,n,s){if(s===1||n.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof n.precedence!="string"||typeof n.href!="string"||n.href==="")break;return!0;case"link":if(typeof n.rel!="string"||typeof n.href!="string"||n.href===""||n.onLoad||n.onError)break;switch(n.rel){case"stylesheet":return e=n.disabled,typeof n.precedence=="string"&&e==null;default:return!0}case"script":if(n.async&&typeof n.async!="function"&&typeof n.async!="symbol"&&!n.onLoad&&!n.onError&&n.src&&typeof n.src=="string")return!0}return!1}function Jv(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function sE(e,n,s,o){if(s.type==="stylesheet"&&(typeof o.media!="string"||matchMedia(o.media).matches!==!1)&&(s.state.loading&4)===0){if(s.instance===null){var c=bs(o.href),h=n.querySelector(jr(c));if(h){n=h._p,n!==null&&typeof n=="object"&&typeof n.then=="function"&&(e.count++,e=Cl.bind(e),n.then(e,e)),s.state.loading|=4,s.instance=h,mt(h);return}h=n.ownerDocument||n,o=Gv(o),(c=vn.get(c))&&Wf(o,c),h=h.createElement("link"),mt(h);var y=h;y._p=new Promise(function(C,T){y.onload=C,y.onerror=T}),_t(h,"link",o),s.instance=h}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(s,n),(n=s.state.preload)&&(s.state.loading&3)===0&&(e.count++,s=Cl.bind(e),n.addEventListener("load",s),n.addEventListener("error",s))}}var td=0;function rE(e,n){return e.stylesheets&&e.count===0&&xl(e,e.stylesheets),0td?50:800)+n);return e.unsuspend=s,function(){e.unsuspend=null,clearTimeout(o),clearTimeout(c)}}:null}function Cl(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)xl(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var Rl=null;function xl(e,n){e.stylesheets=null,e.unsuspend!==null&&(e.count++,Rl=new Map,n.forEach(oE,e),Rl=null,Cl.call(e))}function oE(e,n){if(!(n.state.loading&4)){var s=Rl.get(e);if(s)var o=s.get(null);else{s=new Map,Rl.set(e,s);for(var c=e.querySelectorAll("link[data-precedence],style[data-precedence]"),h=0;h"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(t)}catch(i){console.error(i)}}return t(),Vd.exports=yD(),Vd.exports}var bD=SD();const ye=t=>typeof t=="string",Kr=()=>{let t,i;const a=new Promise((r,l)=>{t=r,i=l});return a.resolve=t,a.reject=i,a},H0=t=>t==null?"":""+t,_D=(t,i,a)=>{t.forEach(r=>{i[r]&&(a[r]=i[r])})},wD=/###/g,V0=t=>t&&t.indexOf("###")>-1?t.replace(wD,"."):t,k0=t=>!t||ye(t),io=(t,i,a)=>{const r=ye(i)?i.split("."):i;let l=0;for(;l{const{obj:r,k:l}=io(t,i,Object);if(r!==void 0||i.length===1){r[l]=a;return}let u=i[i.length-1],f=i.slice(0,i.length-1),d=io(t,f,Object);for(;d.obj===void 0&&f.length;)u=`${f[f.length-1]}.${u}`,f=f.slice(0,f.length-1),d=io(t,f,Object),d?.obj&&typeof d.obj[`${d.k}.${u}`]<"u"&&(d.obj=void 0);d.obj[`${d.k}.${u}`]=a},ED=(t,i,a,r)=>{const{obj:l,k:u}=io(t,i,Object);l[u]=l[u]||[],l[u].push(a)},_u=(t,i)=>{const{obj:a,k:r}=io(t,i);if(a&&Object.prototype.hasOwnProperty.call(a,r))return a[r]},CD=(t,i,a)=>{const r=_u(t,a);return r!==void 0?r:_u(i,a)},D1=(t,i,a)=>{for(const r in i)r!=="__proto__"&&r!=="constructor"&&(r in t?ye(t[r])||t[r]instanceof String||ye(i[r])||i[r]instanceof String?a&&(t[r]=i[r]):D1(t[r],i[r],a):t[r]=i[r]);return t},As=t=>t.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");var RD={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};const xD=t=>ye(t)?t.replace(/[&<>"'\/]/g,i=>RD[i]):t;class AD{constructor(i){this.capacity=i,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(i){const a=this.regExpMap.get(i);if(a!==void 0)return a;const r=new RegExp(i);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(i,r),this.regExpQueue.push(i),r}}const TD=[" ",",","?","!",";"],OD=new AD(20),DD=(t,i,a)=>{i=i||"",a=a||"";const r=TD.filter(f=>i.indexOf(f)<0&&a.indexOf(f)<0);if(r.length===0)return!0;const l=OD.getRegExp(`(${r.map(f=>f==="?"?"\\?":f).join("|")})`);let u=!l.test(t);if(!u){const f=t.indexOf(a);f>0&&!l.test(t.substring(0,f))&&(u=!0)}return u},Ch=(t,i,a=".")=>{if(!t)return;if(t[i])return Object.prototype.hasOwnProperty.call(t,i)?t[i]:void 0;const r=i.split(a);let l=t;for(let u=0;u-1&&mt?.replace("_","-"),MD={type:"logger",log(t){this.output("log",t)},warn(t){this.output("warn",t)},error(t){this.output("error",t)},output(t,i){console?.[t]?.apply?.(console,i)}};class wu{constructor(i,a={}){this.init(i,a)}init(i,a={}){this.prefix=a.prefix||"i18next:",this.logger=i||MD,this.options=a,this.debug=a.debug}log(...i){return this.forward(i,"log","",!0)}warn(...i){return this.forward(i,"warn","",!0)}error(...i){return this.forward(i,"error","")}deprecate(...i){return this.forward(i,"warn","WARNING DEPRECATED: ",!0)}forward(i,a,r,l){return l&&!this.debug?null:(ye(i[0])&&(i[0]=`${r}${this.prefix} ${i[0]}`),this.logger[a](i))}create(i){return new wu(this.logger,{prefix:`${this.prefix}:${i}:`,...this.options})}clone(i){return i=i||this.options,i.prefix=i.prefix||this.prefix,new wu(this.logger,i)}}var In=new wu;class Hu{constructor(){this.observers={}}on(i,a){return i.split(" ").forEach(r=>{this.observers[r]||(this.observers[r]=new Map);const l=this.observers[r].get(a)||0;this.observers[r].set(a,l+1)}),this}off(i,a){if(this.observers[i]){if(!a){delete this.observers[i];return}this.observers[i].delete(a)}}emit(i,...a){this.observers[i]&&Array.from(this.observers[i].entries()).forEach(([l,u])=>{for(let f=0;f{for(let f=0;f-1&&this.options.ns.splice(a,1)}getResource(i,a,r,l={}){const u=l.keySeparator!==void 0?l.keySeparator:this.options.keySeparator,f=l.ignoreJSONStructure!==void 0?l.ignoreJSONStructure:this.options.ignoreJSONStructure;let d;i.indexOf(".")>-1?d=i.split("."):(d=[i,a],r&&(Array.isArray(r)?d.push(...r):ye(r)&&u?d.push(...r.split(u)):d.push(r)));const m=_u(this.data,d);return!m&&!a&&!r&&i.indexOf(".")>-1&&(i=d[0],a=d[1],r=d.slice(2).join(".")),m||!f||!ye(r)?m:Ch(this.data?.[i]?.[a],r,u)}addResource(i,a,r,l,u={silent:!1}){const f=u.keySeparator!==void 0?u.keySeparator:this.options.keySeparator;let d=[i,a];r&&(d=d.concat(f?r.split(f):r)),i.indexOf(".")>-1&&(d=i.split("."),l=a,a=d[1]),this.addNamespaces(a),Q0(this.data,d,l),u.silent||this.emit("added",i,a,r,l)}addResources(i,a,r,l={silent:!1}){for(const u in r)(ye(r[u])||Array.isArray(r[u]))&&this.addResource(i,a,u,r[u],{silent:!0});l.silent||this.emit("added",i,a,r)}addResourceBundle(i,a,r,l,u,f={silent:!1,skipCopy:!1}){let d=[i,a];i.indexOf(".")>-1&&(d=i.split("."),l=r,r=a,a=d[1]),this.addNamespaces(a);let m=_u(this.data,d)||{};f.skipCopy||(r=JSON.parse(JSON.stringify(r))),l?D1(m,r,u):m={...m,...r},Q0(this.data,d,m),f.silent||this.emit("added",i,a,r)}removeResourceBundle(i,a){this.hasResourceBundle(i,a)&&delete this.data[i][a],this.removeNamespaces(a),this.emit("removed",i,a)}hasResourceBundle(i,a){return this.getResource(i,a)!==void 0}getResourceBundle(i,a){return a||(a=this.options.defaultNS),this.getResource(i,a)}getDataByLanguage(i){return this.data[i]}hasLanguageSomeTranslations(i){const a=this.getDataByLanguage(i);return!!(a&&Object.keys(a)||[]).find(l=>a[l]&&Object.keys(a[l]).length>0)}toJSON(){return this.data}}var M1={processors:{},addPostProcessor(t){this.processors[t.name]=t},handle(t,i,a,r,l){return t.forEach(u=>{i=this.processors[u]?.process(i,a,r,l)??i}),i}};const N1=Symbol("i18next/PATH_KEY");function ND(){const t=[],i=Object.create(null);let a;return i.get=(r,l)=>(a?.revoke?.(),l===N1?t:(t.push(l),a=Proxy.revocable(r,i),a.proxy)),Proxy.revocable(Object.create(null),i).proxy}function Rh(t,i){const{[N1]:a}=t(ND());return a.join(i?.keySeparator??".")}const G0={},Yd=t=>!ye(t)&&typeof t!="boolean"&&typeof t!="number";class Eu extends Hu{constructor(i,a={}){super(),_D(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],i,this),this.options=a,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=In.create("translator")}changeLanguage(i){i&&(this.language=i)}exists(i,a={interpolation:{}}){const r={...a};if(i==null)return!1;const l=this.resolve(i,r);if(l?.res===void 0)return!1;const u=Yd(l.res);return!(r.returnObjects===!1&&u)}extractFromKey(i,a){let r=a.nsSeparator!==void 0?a.nsSeparator:this.options.nsSeparator;r===void 0&&(r=":");const l=a.keySeparator!==void 0?a.keySeparator:this.options.keySeparator;let u=a.ns||this.options.defaultNS||[];const f=r&&i.indexOf(r)>-1,d=!this.options.userDefinedKeySeparator&&!a.keySeparator&&!this.options.userDefinedNsSeparator&&!a.nsSeparator&&!DD(i,r,l);if(f&&!d){const m=i.match(this.interpolator.nestingRegexp);if(m&&m.length>0)return{key:i,namespaces:ye(u)?[u]:u};const p=i.split(r);(r!==l||r===l&&this.options.ns.indexOf(p[0])>-1)&&(u=p.shift()),i=p.join(l)}return{key:i,namespaces:ye(u)?[u]:u}}translate(i,a,r){let l=typeof a=="object"?{...a}:a;if(typeof l!="object"&&this.options.overloadTranslationOptionHandler&&(l=this.options.overloadTranslationOptionHandler(arguments)),typeof l=="object"&&(l={...l}),l||(l={}),i==null)return"";typeof i=="function"&&(i=Rh(i,{...this.options,...l})),Array.isArray(i)||(i=[String(i)]);const u=l.returnDetails!==void 0?l.returnDetails:this.options.returnDetails,f=l.keySeparator!==void 0?l.keySeparator:this.options.keySeparator,{key:d,namespaces:m}=this.extractFromKey(i[i.length-1],l),p=m[m.length-1];let v=l.nsSeparator!==void 0?l.nsSeparator:this.options.nsSeparator;v===void 0&&(v=":");const g=l.lng||this.language,S=l.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(g?.toLowerCase()==="cimode")return S?u?{res:`${p}${v}${d}`,usedKey:d,exactUsedKey:d,usedLng:g,usedNS:p,usedParams:this.getUsedParamsDetails(l)}:`${p}${v}${d}`:u?{res:d,usedKey:d,exactUsedKey:d,usedLng:g,usedNS:p,usedParams:this.getUsedParamsDetails(l)}:d;const b=this.resolve(i,l);let E=b?.res;const w=b?.usedKey||d,x=b?.exactUsedKey||d,A=["[object Number]","[object Function]","[object RegExp]"],D=l.joinArrays!==void 0?l.joinArrays:this.options.joinArrays,U=!this.i18nFormat||this.i18nFormat.handleAsObject,N=l.count!==void 0&&!ye(l.count),k=Eu.hasDefaultValue(l),G=N?this.pluralResolver.getSuffix(g,l.count,l):"",M=l.ordinal&&N?this.pluralResolver.getSuffix(g,l.count,{ordinal:!1}):"",B=N&&!l.ordinal&&l.count===0,Q=B&&l[`defaultValue${this.options.pluralSeparator}zero`]||l[`defaultValue${G}`]||l[`defaultValue${M}`]||l.defaultValue;let P=E;U&&!E&&k&&(P=Q);const ee=Yd(P),ne=Object.prototype.toString.apply(P);if(U&&P&&ee&&A.indexOf(ne)<0&&!(ye(D)&&Array.isArray(P))){if(!l.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const X=this.options.returnedObjectHandler?this.options.returnedObjectHandler(w,P,{...l,ns:m}):`key '${d} (${this.language})' returned an object instead of string.`;return u?(b.res=X,b.usedParams=this.getUsedParamsDetails(l),b):X}if(f){const X=Array.isArray(P),Z=X?[]:{},oe=X?x:w;for(const j in P)if(Object.prototype.hasOwnProperty.call(P,j)){const $=`${oe}${f}${j}`;k&&!E?Z[j]=this.translate($,{...l,defaultValue:Yd(Q)?Q[j]:void 0,joinArrays:!1,ns:m}):Z[j]=this.translate($,{...l,joinArrays:!1,ns:m}),Z[j]===$&&(Z[j]=P[j])}E=Z}}else if(U&&ye(D)&&Array.isArray(E))E=E.join(D),E&&(E=this.extendTranslation(E,i,l,r));else{let X=!1,Z=!1;!this.isValidLookup(E)&&k&&(X=!0,E=Q),this.isValidLookup(E)||(Z=!0,E=d);const j=(l.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&Z?void 0:E,$=k&&Q!==E&&this.options.updateMissing;if(Z||X||$){if(this.logger.log($?"updateKey":"missingKey",g,p,d,$?Q:E),f){const O=this.resolve(d,{...l,keySeparator:!1});O&&O.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let q=[];const ie=this.languageUtils.getFallbackCodes(this.options.fallbackLng,l.lng||this.language);if(this.options.saveMissingTo==="fallback"&&ie&&ie[0])for(let O=0;O{const ae=k&&te!==E?te:j;this.options.missingKeyHandler?this.options.missingKeyHandler(O,p,H,ae,$,l):this.backendConnector?.saveMissing&&this.backendConnector.saveMissing(O,p,H,ae,$,l),this.emit("missingKey",O,p,H,E)};this.options.saveMissing&&(this.options.saveMissingPlurals&&N?q.forEach(O=>{const H=this.pluralResolver.getSuffixes(O,l);B&&l[`defaultValue${this.options.pluralSeparator}zero`]&&H.indexOf(`${this.options.pluralSeparator}zero`)<0&&H.push(`${this.options.pluralSeparator}zero`),H.forEach(te=>{se([O],d+te,l[`defaultValue${te}`]||Q)})}):se(q,d,Q))}E=this.extendTranslation(E,i,l,b,r),Z&&E===d&&this.options.appendNamespaceToMissingKey&&(E=`${p}${v}${d}`),(Z||X)&&this.options.parseMissingKeyHandler&&(E=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${p}${v}${d}`:d,X?E:void 0,l))}return u?(b.res=E,b.usedParams=this.getUsedParamsDetails(l),b):E}extendTranslation(i,a,r,l,u){if(this.i18nFormat?.parse)i=this.i18nFormat.parse(i,{...this.options.interpolation.defaultVariables,...r},r.lng||this.language||l.usedLng,l.usedNS,l.usedKey,{resolved:l});else if(!r.skipInterpolation){r.interpolation&&this.interpolator.init({...r,interpolation:{...this.options.interpolation,...r.interpolation}});const m=ye(i)&&(r?.interpolation?.skipOnVariables!==void 0?r.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let p;if(m){const g=i.match(this.interpolator.nestingRegexp);p=g&&g.length}let v=r.replace&&!ye(r.replace)?r.replace:r;if(this.options.interpolation.defaultVariables&&(v={...this.options.interpolation.defaultVariables,...v}),i=this.interpolator.interpolate(i,v,r.lng||this.language||l.usedLng,r),m){const g=i.match(this.interpolator.nestingRegexp),S=g&&g.length;pu?.[0]===g[0]&&!r.context?(this.logger.warn(`It seems you are nesting recursively key: ${g[0]} in key: ${a[0]}`),null):this.translate(...g,a),r)),r.interpolation&&this.interpolator.reset()}const f=r.postProcess||this.options.postProcess,d=ye(f)?[f]:f;return i!=null&&d?.length&&r.applyPostProcessor!==!1&&(i=M1.handle(d,i,a,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...l,usedParams:this.getUsedParamsDetails(r)},...r}:r,this)),i}resolve(i,a={}){let r,l,u,f,d;return ye(i)&&(i=[i]),i.forEach(m=>{if(this.isValidLookup(r))return;const p=this.extractFromKey(m,a),v=p.key;l=v;let g=p.namespaces;this.options.fallbackNS&&(g=g.concat(this.options.fallbackNS));const S=a.count!==void 0&&!ye(a.count),b=S&&!a.ordinal&&a.count===0,E=a.context!==void 0&&(ye(a.context)||typeof a.context=="number")&&a.context!=="",w=a.lngs?a.lngs:this.languageUtils.toResolveHierarchy(a.lng||this.language,a.fallbackLng);g.forEach(x=>{this.isValidLookup(r)||(d=x,!G0[`${w[0]}-${x}`]&&this.utils?.hasLoadedNamespace&&!this.utils?.hasLoadedNamespace(d)&&(G0[`${w[0]}-${x}`]=!0,this.logger.warn(`key "${l}" for languages "${w.join(", ")}" won't get resolved as namespace "${d}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),w.forEach(A=>{if(this.isValidLookup(r))return;f=A;const D=[v];if(this.i18nFormat?.addLookupKeys)this.i18nFormat.addLookupKeys(D,v,A,x,a);else{let N;S&&(N=this.pluralResolver.getSuffix(A,a.count,a));const k=`${this.options.pluralSeparator}zero`,G=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(S&&(a.ordinal&&N.indexOf(G)===0&&D.push(v+N.replace(G,this.options.pluralSeparator)),D.push(v+N),b&&D.push(v+k)),E){const M=`${v}${this.options.contextSeparator||"_"}${a.context}`;D.push(M),S&&(a.ordinal&&N.indexOf(G)===0&&D.push(M+N.replace(G,this.options.pluralSeparator)),D.push(M+N),b&&D.push(M+k))}}let U;for(;U=D.pop();)this.isValidLookup(r)||(u=U,r=this.getResource(A,x,U,a))}))})}),{res:r,usedKey:l,exactUsedKey:u,usedLng:f,usedNS:d}}isValidLookup(i){return i!==void 0&&!(!this.options.returnNull&&i===null)&&!(!this.options.returnEmptyString&&i==="")}getResource(i,a,r,l={}){return this.i18nFormat?.getResource?this.i18nFormat.getResource(i,a,r,l):this.resourceStore.getResource(i,a,r,l)}getUsedParamsDetails(i={}){const a=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],r=i.replace&&!ye(i.replace);let l=r?i.replace:i;if(r&&typeof i.count<"u"&&(l.count=i.count),this.options.interpolation.defaultVariables&&(l={...this.options.interpolation.defaultVariables,...l}),!r){l={...l};for(const u of a)delete l[u]}return l}static hasDefaultValue(i){const a="defaultValue";for(const r in i)if(Object.prototype.hasOwnProperty.call(i,r)&&a===r.substring(0,a.length)&&i[r]!==void 0)return!0;return!1}}class K0{constructor(i){this.options=i,this.supportedLngs=this.options.supportedLngs||!1,this.logger=In.create("languageUtils")}getScriptPartFromCode(i){if(i=fo(i),!i||i.indexOf("-")<0)return null;const a=i.split("-");return a.length===2||(a.pop(),a[a.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(a.join("-"))}getLanguagePartFromCode(i){if(i=fo(i),!i||i.indexOf("-")<0)return i;const a=i.split("-");return this.formatLanguageCode(a[0])}formatLanguageCode(i){if(ye(i)&&i.indexOf("-")>-1){let a;try{a=Intl.getCanonicalLocales(i)[0]}catch{}return a&&this.options.lowerCaseLng&&(a=a.toLowerCase()),a||(this.options.lowerCaseLng?i.toLowerCase():i)}return this.options.cleanCode||this.options.lowerCaseLng?i.toLowerCase():i}isSupportedCode(i){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(i=this.getLanguagePartFromCode(i)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(i)>-1}getBestMatchFromCodes(i){if(!i)return null;let a;return i.forEach(r=>{if(a)return;const l=this.formatLanguageCode(r);(!this.options.supportedLngs||this.isSupportedCode(l))&&(a=l)}),!a&&this.options.supportedLngs&&i.forEach(r=>{if(a)return;const l=this.getScriptPartFromCode(r);if(this.isSupportedCode(l))return a=l;const u=this.getLanguagePartFromCode(r);if(this.isSupportedCode(u))return a=u;a=this.options.supportedLngs.find(f=>{if(f===u)return f;if(!(f.indexOf("-")<0&&u.indexOf("-")<0)&&(f.indexOf("-")>0&&u.indexOf("-")<0&&f.substring(0,f.indexOf("-"))===u||f.indexOf(u)===0&&u.length>1))return f})}),a||(a=this.getFallbackCodes(this.options.fallbackLng)[0]),a}getFallbackCodes(i,a){if(!i)return[];if(typeof i=="function"&&(i=i(a)),ye(i)&&(i=[i]),Array.isArray(i))return i;if(!a)return i.default||[];let r=i[a];return r||(r=i[this.getScriptPartFromCode(a)]),r||(r=i[this.formatLanguageCode(a)]),r||(r=i[this.getLanguagePartFromCode(a)]),r||(r=i.default),r||[]}toResolveHierarchy(i,a){const r=this.getFallbackCodes((a===!1?[]:a)||this.options.fallbackLng||[],i),l=[],u=f=>{f&&(this.isSupportedCode(f)?l.push(f):this.logger.warn(`rejecting language code not found in supportedLngs: ${f}`))};return ye(i)&&(i.indexOf("-")>-1||i.indexOf("_")>-1)?(this.options.load!=="languageOnly"&&u(this.formatLanguageCode(i)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&u(this.getScriptPartFromCode(i)),this.options.load!=="currentOnly"&&u(this.getLanguagePartFromCode(i))):ye(i)&&u(this.formatLanguageCode(i)),r.forEach(f=>{l.indexOf(f)<0&&u(this.formatLanguageCode(f))}),l}}const X0={zero:0,one:1,two:2,few:3,many:4,other:5},Z0={select:t=>t===1?"one":"other",resolvedOptions:()=>({pluralCategories:["one","other"]})};class LD{constructor(i,a={}){this.languageUtils=i,this.options=a,this.logger=In.create("pluralResolver"),this.pluralRulesCache={}}addRule(i,a){this.rules[i]=a}clearCache(){this.pluralRulesCache={}}getRule(i,a={}){const r=fo(i==="dev"?"en":i),l=a.ordinal?"ordinal":"cardinal",u=JSON.stringify({cleanedCode:r,type:l});if(u in this.pluralRulesCache)return this.pluralRulesCache[u];let f;try{f=new Intl.PluralRules(r,{type:l})}catch{if(!Intl)return this.logger.error("No Intl support, please use an Intl polyfill!"),Z0;if(!i.match(/-|_/))return Z0;const m=this.languageUtils.getLanguagePartFromCode(i);f=this.getRule(m,a)}return this.pluralRulesCache[u]=f,f}needsPlural(i,a={}){let r=this.getRule(i,a);return r||(r=this.getRule("dev",a)),r?.resolvedOptions().pluralCategories.length>1}getPluralFormsOfKey(i,a,r={}){return this.getSuffixes(i,r).map(l=>`${a}${l}`)}getSuffixes(i,a={}){let r=this.getRule(i,a);return r||(r=this.getRule("dev",a)),r?r.resolvedOptions().pluralCategories.sort((l,u)=>X0[l]-X0[u]).map(l=>`${this.options.prepend}${a.ordinal?`ordinal${this.options.prepend}`:""}${l}`):[]}getSuffix(i,a,r={}){const l=this.getRule(i,r);return l?`${this.options.prepend}${r.ordinal?`ordinal${this.options.prepend}`:""}${l.select(a)}`:(this.logger.warn(`no plural rule found for: ${i}`),this.getSuffix("dev",a,r))}}const J0=(t,i,a,r=".",l=!0)=>{let u=CD(t,i,a);return!u&&l&&ye(a)&&(u=Ch(t,a,r),u===void 0&&(u=Ch(i,a,r))),u},Gd=t=>t.replace(/\$/g,"$$$$");class UD{constructor(i={}){this.logger=In.create("interpolator"),this.options=i,this.format=i?.interpolation?.format||(a=>a),this.init(i)}init(i={}){i.interpolation||(i.interpolation={escapeValue:!0});const{escape:a,escapeValue:r,useRawValueToEscape:l,prefix:u,prefixEscaped:f,suffix:d,suffixEscaped:m,formatSeparator:p,unescapeSuffix:v,unescapePrefix:g,nestingPrefix:S,nestingPrefixEscaped:b,nestingSuffix:E,nestingSuffixEscaped:w,nestingOptionsSeparator:x,maxReplaces:A,alwaysFormat:D}=i.interpolation;this.escape=a!==void 0?a:xD,this.escapeValue=r!==void 0?r:!0,this.useRawValueToEscape=l!==void 0?l:!1,this.prefix=u?As(u):f||"{{",this.suffix=d?As(d):m||"}}",this.formatSeparator=p||",",this.unescapePrefix=v?"":g||"-",this.unescapeSuffix=this.unescapePrefix?"":v||"",this.nestingPrefix=S?As(S):b||As("$t("),this.nestingSuffix=E?As(E):w||As(")"),this.nestingOptionsSeparator=x||",",this.maxReplaces=A||1e3,this.alwaysFormat=D!==void 0?D:!1,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const i=(a,r)=>a?.source===r?(a.lastIndex=0,a):new RegExp(r,"g");this.regexp=i(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=i(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=i(this.nestingRegexp,`${this.nestingPrefix}((?:[^()"']+|"[^"]*"|'[^']*'|\\((?:[^()]|"[^"]*"|'[^']*')*\\))*?)${this.nestingSuffix}`)}interpolate(i,a,r,l){let u,f,d;const m=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},p=b=>{if(b.indexOf(this.formatSeparator)<0){const A=J0(a,m,b,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(A,void 0,r,{...l,...a,interpolationkey:b}):A}const E=b.split(this.formatSeparator),w=E.shift().trim(),x=E.join(this.formatSeparator).trim();return this.format(J0(a,m,w,this.options.keySeparator,this.options.ignoreJSONStructure),x,r,{...l,...a,interpolationkey:w})};this.resetRegExp();const v=l?.missingInterpolationHandler||this.options.missingInterpolationHandler,g=l?.interpolation?.skipOnVariables!==void 0?l.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:b=>Gd(b)},{regex:this.regexp,safeValue:b=>this.escapeValue?Gd(this.escape(b)):Gd(b)}].forEach(b=>{for(d=0;u=b.regex.exec(i);){const E=u[1].trim();if(f=p(E),f===void 0)if(typeof v=="function"){const x=v(i,u,l);f=ye(x)?x:""}else if(l&&Object.prototype.hasOwnProperty.call(l,E))f="";else if(g){f=u[0];continue}else this.logger.warn(`missed to pass in variable ${E} for interpolating ${i}`),f="";else!ye(f)&&!this.useRawValueToEscape&&(f=H0(f));const w=b.safeValue(f);if(i=i.replace(u[0],w),g?(b.regex.lastIndex+=f.length,b.regex.lastIndex-=u[0].length):b.regex.lastIndex=0,d++,d>=this.maxReplaces)break}}),i}nest(i,a,r={}){let l,u,f;const d=(m,p)=>{const v=this.nestingOptionsSeparator;if(m.indexOf(v)<0)return m;const g=m.split(new RegExp(`${v}[ ]*{`));let S=`{${g[1]}`;m=g[0],S=this.interpolate(S,f);const b=S.match(/'/g),E=S.match(/"/g);((b?.length??0)%2===0&&!E||E.length%2!==0)&&(S=S.replace(/'/g,'"'));try{f=JSON.parse(S),p&&(f={...p,...f})}catch(w){return this.logger.warn(`failed parsing options string in nesting for key ${m}`,w),`${m}${v}${S}`}return f.defaultValue&&f.defaultValue.indexOf(this.prefix)>-1&&delete f.defaultValue,m};for(;l=this.nestingRegexp.exec(i);){let m=[];f={...r},f=f.replace&&!ye(f.replace)?f.replace:f,f.applyPostProcessor=!1,delete f.defaultValue;const p=/{.*}/.test(l[1])?l[1].lastIndexOf("}")+1:l[1].indexOf(this.formatSeparator);if(p!==-1&&(m=l[1].slice(p).split(this.formatSeparator).map(v=>v.trim()).filter(Boolean),l[1]=l[1].slice(0,p)),u=a(d.call(this,l[1].trim(),f),f),u&&l[0]===i&&!ye(u))return u;ye(u)||(u=H0(u)),u||(this.logger.warn(`missed to resolve ${l[1]} for nesting ${i}`),u=""),m.length&&(u=m.reduce((v,g)=>this.format(v,g,r.lng,{...r,interpolationkey:l[1].trim()}),u.trim())),i=i.replace(l[0],u),this.regexp.lastIndex=0}return i}}const jD=t=>{let i=t.toLowerCase().trim();const a={};if(t.indexOf("(")>-1){const r=t.split("(");i=r[0].toLowerCase().trim();const l=r[1].substring(0,r[1].length-1);i==="currency"&&l.indexOf(":")<0?a.currency||(a.currency=l.trim()):i==="relativetime"&&l.indexOf(":")<0?a.range||(a.range=l.trim()):l.split(";").forEach(f=>{if(f){const[d,...m]=f.split(":"),p=m.join(":").trim().replace(/^'+|'+$/g,""),v=d.trim();a[v]||(a[v]=p),p==="false"&&(a[v]=!1),p==="true"&&(a[v]=!0),isNaN(p)||(a[v]=parseInt(p,10))}})}return{formatName:i,formatOptions:a}},W0=t=>{const i={};return(a,r,l)=>{let u=l;l&&l.interpolationkey&&l.formatParams&&l.formatParams[l.interpolationkey]&&l[l.interpolationkey]&&(u={...u,[l.interpolationkey]:void 0});const f=r+JSON.stringify(u);let d=i[f];return d||(d=t(fo(r),l),i[f]=d),d(a)}},PD=t=>(i,a,r)=>t(fo(a),r)(i);class zD{constructor(i={}){this.logger=In.create("formatter"),this.options=i,this.init(i)}init(i,a={interpolation:{}}){this.formatSeparator=a.interpolation.formatSeparator||",";const r=a.cacheInBuiltFormats?W0:PD;this.formats={number:r((l,u)=>{const f=new Intl.NumberFormat(l,{...u});return d=>f.format(d)}),currency:r((l,u)=>{const f=new Intl.NumberFormat(l,{...u,style:"currency"});return d=>f.format(d)}),datetime:r((l,u)=>{const f=new Intl.DateTimeFormat(l,{...u});return d=>f.format(d)}),relativetime:r((l,u)=>{const f=new Intl.RelativeTimeFormat(l,{...u});return d=>f.format(d,u.range||"day")}),list:r((l,u)=>{const f=new Intl.ListFormat(l,{...u});return d=>f.format(d)})}}add(i,a){this.formats[i.toLowerCase().trim()]=a}addCached(i,a){this.formats[i.toLowerCase().trim()]=W0(a)}format(i,a,r,l={}){const u=a.split(this.formatSeparator);if(u.length>1&&u[0].indexOf("(")>1&&u[0].indexOf(")")<0&&u.find(d=>d.indexOf(")")>-1)){const d=u.findIndex(m=>m.indexOf(")")>-1);u[0]=[u[0],...u.splice(1,d)].join(this.formatSeparator)}return u.reduce((d,m)=>{const{formatName:p,formatOptions:v}=jD(m);if(this.formats[p]){let g=d;try{const S=l?.formatParams?.[l.interpolationkey]||{},b=S.locale||S.lng||l.locale||l.lng||r;g=this.formats[p](d,b,{...v,...l,...S})}catch(S){this.logger.warn(S)}return g}else this.logger.warn(`there was no format function for ${p}`);return d},i)}}const $D=(t,i)=>{t.pending[i]!==void 0&&(delete t.pending[i],t.pendingCount--)};class BD extends Hu{constructor(i,a,r,l={}){super(),this.backend=i,this.store=a,this.services=r,this.languageUtils=r.languageUtils,this.options=l,this.logger=In.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=l.maxParallelReads||10,this.readingCalls=0,this.maxRetries=l.maxRetries>=0?l.maxRetries:5,this.retryTimeout=l.retryTimeout>=1?l.retryTimeout:350,this.state={},this.queue=[],this.backend?.init?.(r,l.backend,l)}queueLoad(i,a,r,l){const u={},f={},d={},m={};return i.forEach(p=>{let v=!0;a.forEach(g=>{const S=`${p}|${g}`;!r.reload&&this.store.hasResourceBundle(p,g)?this.state[S]=2:this.state[S]<0||(this.state[S]===1?f[S]===void 0&&(f[S]=!0):(this.state[S]=1,v=!1,f[S]===void 0&&(f[S]=!0),u[S]===void 0&&(u[S]=!0),m[g]===void 0&&(m[g]=!0)))}),v||(d[p]=!0)}),(Object.keys(u).length||Object.keys(f).length)&&this.queue.push({pending:f,pendingCount:Object.keys(f).length,loaded:{},errors:[],callback:l}),{toLoad:Object.keys(u),pending:Object.keys(f),toLoadLanguages:Object.keys(d),toLoadNamespaces:Object.keys(m)}}loaded(i,a,r){const l=i.split("|"),u=l[0],f=l[1];a&&this.emit("failedLoading",u,f,a),!a&&r&&this.store.addResourceBundle(u,f,r,void 0,void 0,{skipCopy:!0}),this.state[i]=a?-1:2,a&&r&&(this.state[i]=0);const d={};this.queue.forEach(m=>{ED(m.loaded,[u],f),$D(m,i),a&&m.errors.push(a),m.pendingCount===0&&!m.done&&(Object.keys(m.loaded).forEach(p=>{d[p]||(d[p]={});const v=m.loaded[p];v.length&&v.forEach(g=>{d[p][g]===void 0&&(d[p][g]=!0)})}),m.done=!0,m.errors.length?m.callback(m.errors):m.callback())}),this.emit("loaded",d),this.queue=this.queue.filter(m=>!m.done)}read(i,a,r,l=0,u=this.retryTimeout,f){if(!i.length)return f(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:i,ns:a,fcName:r,tried:l,wait:u,callback:f});return}this.readingCalls++;const d=(p,v)=>{if(this.readingCalls--,this.waitingReads.length>0){const g=this.waitingReads.shift();this.read(g.lng,g.ns,g.fcName,g.tried,g.wait,g.callback)}if(p&&v&&l{this.read.call(this,i,a,r,l+1,u*2,f)},u);return}f(p,v)},m=this.backend[r].bind(this.backend);if(m.length===2){try{const p=m(i,a);p&&typeof p.then=="function"?p.then(v=>d(null,v)).catch(d):d(null,p)}catch(p){d(p)}return}return m(i,a,d)}prepareLoading(i,a,r={},l){if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),l&&l();ye(i)&&(i=this.languageUtils.toResolveHierarchy(i)),ye(a)&&(a=[a]);const u=this.queueLoad(i,a,r,l);if(!u.toLoad.length)return u.pending.length||l(),null;u.toLoad.forEach(f=>{this.loadOne(f)})}load(i,a,r){this.prepareLoading(i,a,{},r)}reload(i,a,r){this.prepareLoading(i,a,{reload:!0},r)}loadOne(i,a=""){const r=i.split("|"),l=r[0],u=r[1];this.read(l,u,"read",void 0,void 0,(f,d)=>{f&&this.logger.warn(`${a}loading namespace ${u} for language ${l} failed`,f),!f&&d&&this.logger.log(`${a}loaded namespace ${u} for language ${l}`,d),this.loaded(i,f,d)})}saveMissing(i,a,r,l,u,f={},d=()=>{}){if(this.services?.utils?.hasLoadedNamespace&&!this.services?.utils?.hasLoadedNamespace(a)){this.logger.warn(`did not save key "${r}" as the namespace "${a}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(r==null||r==="")){if(this.backend?.create){const m={...f,isUpdate:u},p=this.backend.create.bind(this.backend);if(p.length<6)try{let v;p.length===5?v=p(i,a,r,l,m):v=p(i,a,r,l),v&&typeof v.then=="function"?v.then(g=>d(null,g)).catch(d):d(null,v)}catch(v){d(v)}else p(i,a,r,l,d,m)}!i||!i[0]||this.store.addResource(i[0],a,r,l)}}}const eS=()=>({debug:!1,initAsync:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:t=>{let i={};if(typeof t[1]=="object"&&(i=t[1]),ye(t[1])&&(i.defaultValue=t[1]),ye(t[2])&&(i.tDescription=t[2]),typeof t[2]=="object"||typeof t[3]=="object"){const a=t[3]||t[2];Object.keys(a).forEach(r=>{i[r]=a[r]})}return i},interpolation:{escapeValue:!0,format:t=>t,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0},cacheInBuiltFormats:!0}),tS=t=>(ye(t.ns)&&(t.ns=[t.ns]),ye(t.fallbackLng)&&(t.fallbackLng=[t.fallbackLng]),ye(t.fallbackNS)&&(t.fallbackNS=[t.fallbackNS]),t.supportedLngs?.indexOf?.("cimode")<0&&(t.supportedLngs=t.supportedLngs.concat(["cimode"])),typeof t.initImmediate=="boolean"&&(t.initAsync=t.initImmediate),t),Kl=()=>{},qD=t=>{Object.getOwnPropertyNames(Object.getPrototypeOf(t)).forEach(a=>{typeof t[a]=="function"&&(t[a]=t[a].bind(t))})};class ao extends Hu{constructor(i={},a){if(super(),this.options=tS(i),this.services={},this.logger=In,this.modules={external:[]},qD(this),a&&!this.isInitialized&&!i.isClone){if(!this.options.initAsync)return this.init(i,a),this;setTimeout(()=>{this.init(i,a)},0)}}init(i={},a){this.isInitializing=!0,typeof i=="function"&&(a=i,i={}),i.defaultNS==null&&i.ns&&(ye(i.ns)?i.defaultNS=i.ns:i.ns.indexOf("translation")<0&&(i.defaultNS=i.ns[0]));const r=eS();this.options={...r,...this.options,...tS(i)},this.options.interpolation={...r.interpolation,...this.options.interpolation},i.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=i.keySeparator),i.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=i.nsSeparator);const l=p=>p?typeof p=="function"?new p:p:null;if(!this.options.isClone){this.modules.logger?In.init(l(this.modules.logger),this.options):In.init(null,this.options);let p;this.modules.formatter?p=this.modules.formatter:p=zD;const v=new K0(this.options);this.store=new Y0(this.options.resources,this.options);const g=this.services;g.logger=In,g.resourceStore=this.store,g.languageUtils=v,g.pluralResolver=new LD(v,{prepend:this.options.pluralSeparator,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),this.options.interpolation.format&&this.options.interpolation.format!==r.interpolation.format&&this.logger.deprecate("init: you are still using the legacy format function, please use the new approach: https://www.i18next.com/translation-function/formatting"),p&&(!this.options.interpolation.format||this.options.interpolation.format===r.interpolation.format)&&(g.formatter=l(p),g.formatter.init&&g.formatter.init(g,this.options),this.options.interpolation.format=g.formatter.format.bind(g.formatter)),g.interpolator=new UD(this.options),g.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},g.backendConnector=new BD(l(this.modules.backend),g.resourceStore,g,this.options),g.backendConnector.on("*",(b,...E)=>{this.emit(b,...E)}),this.modules.languageDetector&&(g.languageDetector=l(this.modules.languageDetector),g.languageDetector.init&&g.languageDetector.init(g,this.options.detection,this.options)),this.modules.i18nFormat&&(g.i18nFormat=l(this.modules.i18nFormat),g.i18nFormat.init&&g.i18nFormat.init(this)),this.translator=new Eu(this.services,this.options),this.translator.on("*",(b,...E)=>{this.emit(b,...E)}),this.modules.external.forEach(b=>{b.init&&b.init(this)})}if(this.format=this.options.interpolation.format,a||(a=Kl),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const p=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);p.length>0&&p[0]!=="dev"&&(this.options.lng=p[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn("init: no languageDetector is used and no lng is defined"),["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach(p=>{this[p]=(...v)=>this.store[p](...v)}),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(p=>{this[p]=(...v)=>(this.store[p](...v),this)});const d=Kr(),m=()=>{const p=(v,g)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),d.resolve(g),a(v,g)};if(this.languages&&!this.isInitialized)return p(null,this.t.bind(this));this.changeLanguage(this.options.lng,p)};return this.options.resources||!this.options.initAsync?m():setTimeout(m,0),d}loadResources(i,a=Kl){let r=a;const l=ye(i)?i:this.language;if(typeof i=="function"&&(r=i),!this.options.resources||this.options.partialBundledLanguages){if(l?.toLowerCase()==="cimode"&&(!this.options.preload||this.options.preload.length===0))return r();const u=[],f=d=>{if(!d||d==="cimode")return;this.services.languageUtils.toResolveHierarchy(d).forEach(p=>{p!=="cimode"&&u.indexOf(p)<0&&u.push(p)})};l?f(l):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(m=>f(m)),this.options.preload?.forEach?.(d=>f(d)),this.services.backendConnector.load(u,this.options.ns,d=>{!d&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),r(d)})}else r(null)}reloadResources(i,a,r){const l=Kr();return typeof i=="function"&&(r=i,i=void 0),typeof a=="function"&&(r=a,a=void 0),i||(i=this.languages),a||(a=this.options.ns),r||(r=Kl),this.services.backendConnector.reload(i,a,u=>{l.resolve(),r(u)}),l}use(i){if(!i)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!i.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return i.type==="backend"&&(this.modules.backend=i),(i.type==="logger"||i.log&&i.warn&&i.error)&&(this.modules.logger=i),i.type==="languageDetector"&&(this.modules.languageDetector=i),i.type==="i18nFormat"&&(this.modules.i18nFormat=i),i.type==="postProcessor"&&M1.addPostProcessor(i),i.type==="formatter"&&(this.modules.formatter=i),i.type==="3rdParty"&&this.modules.external.push(i),this}setResolvedLanguage(i){if(!(!i||!this.languages)&&!(["cimode","dev"].indexOf(i)>-1)){for(let a=0;a-1)&&this.store.hasLanguageSomeTranslations(r)){this.resolvedLanguage=r;break}}!this.resolvedLanguage&&this.languages.indexOf(i)<0&&this.store.hasLanguageSomeTranslations(i)&&(this.resolvedLanguage=i,this.languages.unshift(i))}}changeLanguage(i,a){this.isLanguageChangingTo=i;const r=Kr();this.emit("languageChanging",i);const l=d=>{this.language=d,this.languages=this.services.languageUtils.toResolveHierarchy(d),this.resolvedLanguage=void 0,this.setResolvedLanguage(d)},u=(d,m)=>{m?this.isLanguageChangingTo===i&&(l(m),this.translator.changeLanguage(m),this.isLanguageChangingTo=void 0,this.emit("languageChanged",m),this.logger.log("languageChanged",m)):this.isLanguageChangingTo=void 0,r.resolve((...p)=>this.t(...p)),a&&a(d,(...p)=>this.t(...p))},f=d=>{!i&&!d&&this.services.languageDetector&&(d=[]);const m=ye(d)?d:d&&d[0],p=this.store.hasLanguageSomeTranslations(m)?m:this.services.languageUtils.getBestMatchFromCodes(ye(d)?[d]:d);p&&(this.language||l(p),this.translator.language||this.translator.changeLanguage(p),this.services.languageDetector?.cacheUserLanguage?.(p)),this.loadResources(p,v=>{u(v,p)})};return!i&&this.services.languageDetector&&!this.services.languageDetector.async?f(this.services.languageDetector.detect()):!i&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(f):this.services.languageDetector.detect(f):f(i),r}getFixedT(i,a,r){const l=(u,f,...d)=>{let m;typeof f!="object"?m=this.options.overloadTranslationOptionHandler([u,f].concat(d)):m={...f},m.lng=m.lng||l.lng,m.lngs=m.lngs||l.lngs,m.ns=m.ns||l.ns,m.keyPrefix!==""&&(m.keyPrefix=m.keyPrefix||r||l.keyPrefix);const p=this.options.keySeparator||".";let v;return m.keyPrefix&&Array.isArray(u)?v=u.map(g=>(typeof g=="function"&&(g=Rh(g,{...this.options,...f})),`${m.keyPrefix}${p}${g}`)):(typeof u=="function"&&(u=Rh(u,{...this.options,...f})),v=m.keyPrefix?`${m.keyPrefix}${p}${u}`:u),this.t(v,m)};return ye(i)?l.lng=i:l.lngs=i,l.ns=a,l.keyPrefix=r,l}t(...i){return this.translator?.translate(...i)}exists(...i){return this.translator?.exists(...i)}setDefaultNamespace(i){this.options.defaultNS=i}hasLoadedNamespace(i,a={}){if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const r=a.lng||this.resolvedLanguage||this.languages[0],l=this.options?this.options.fallbackLng:!1,u=this.languages[this.languages.length-1];if(r.toLowerCase()==="cimode")return!0;const f=(d,m)=>{const p=this.services.backendConnector.state[`${d}|${m}`];return p===-1||p===0||p===2};if(a.precheck){const d=a.precheck(this,f);if(d!==void 0)return d}return!!(this.hasResourceBundle(r,i)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||f(r,i)&&(!l||f(u,i)))}loadNamespaces(i,a){const r=Kr();return this.options.ns?(ye(i)&&(i=[i]),i.forEach(l=>{this.options.ns.indexOf(l)<0&&this.options.ns.push(l)}),this.loadResources(l=>{r.resolve(),a&&a(l)}),r):(a&&a(),Promise.resolve())}loadLanguages(i,a){const r=Kr();ye(i)&&(i=[i]);const l=this.options.preload||[],u=i.filter(f=>l.indexOf(f)<0&&this.services.languageUtils.isSupportedCode(f));return u.length?(this.options.preload=l.concat(u),this.loadResources(f=>{r.resolve(),a&&a(f)}),r):(a&&a(),Promise.resolve())}dir(i){if(i||(i=this.resolvedLanguage||(this.languages?.length>0?this.languages[0]:this.language)),!i)return"rtl";try{const l=new Intl.Locale(i);if(l&&l.getTextInfo){const u=l.getTextInfo();if(u&&u.direction)return u.direction}}catch{}const a=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],r=this.services?.languageUtils||new K0(eS());return i.toLowerCase().indexOf("-latn")>1?"ltr":a.indexOf(r.getLanguagePartFromCode(i))>-1||i.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(i={},a){const r=new ao(i,a);return r.createInstance=ao.createInstance,r}cloneInstance(i={},a=Kl){const r=i.forkResourceStore;r&&delete i.forkResourceStore;const l={...this.options,...i,isClone:!0},u=new ao(l);if((i.debug!==void 0||i.prefix!==void 0)&&(u.logger=u.logger.clone(i)),["store","services","language"].forEach(d=>{u[d]=this[d]}),u.services={...this.services},u.services.utils={hasLoadedNamespace:u.hasLoadedNamespace.bind(u)},r){const d=Object.keys(this.store.data).reduce((m,p)=>(m[p]={...this.store.data[p]},m[p]=Object.keys(m[p]).reduce((v,g)=>(v[g]={...m[p][g]},v),m[p]),m),{});u.store=new Y0(d,l),u.services.resourceStore=u.store}return u.translator=new Eu(u.services,l),u.translator.on("*",(d,...m)=>{u.emit(d,...m)}),u.init(l,a),u.translator.options=l,u.translator.backendConnector.services.utils={hasLoadedNamespace:u.hasLoadedNamespace.bind(u)},u}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}const Rt=ao.createInstance();Rt.createInstance;Rt.dir;Rt.init;Rt.loadResources;Rt.reloadResources;Rt.use;Rt.changeLanguage;Rt.getFixedT;Rt.t;Rt.exists;Rt.setDefaultNamespace;Rt.hasLoadedNamespace;Rt.loadNamespaces;Rt.loadLanguages;const ID=(t,i,a,r)=>{const l=[a,{code:i,...r||{}}];if(t?.services?.logger?.forward)return t.services.logger.forward(l,"warn","react-i18next::",!0);Ua(l[0])&&(l[0]=`react-i18next:: ${l[0]}`),t?.services?.logger?.warn?t.services.logger.warn(...l):console?.warn&&console.warn(...l)},nS={},L1=(t,i,a,r)=>{Ua(a)&&nS[a]||(Ua(a)&&(nS[a]=new Date),ID(t,i,a,r))},U1=(t,i)=>()=>{if(t.isInitialized)i();else{const a=()=>{setTimeout(()=>{t.off("initialized",a)},0),i()};t.on("initialized",a)}},xh=(t,i,a)=>{t.loadNamespaces(i,U1(t,a))},iS=(t,i,a,r)=>{if(Ua(a)&&(a=[a]),t.options.preload&&t.options.preload.indexOf(i)>-1)return xh(t,a,r);a.forEach(l=>{t.options.ns.indexOf(l)<0&&t.options.ns.push(l)}),t.loadLanguages(i,U1(t,r))},FD=(t,i,a={})=>!i.languages||!i.languages.length?(L1(i,"NO_LANGUAGES","i18n.languages were undefined or empty",{languages:i.languages}),!0):i.hasLoadedNamespace(t,{lng:a.lng,precheck:(r,l)=>{if(a.bindI18n&&a.bindI18n.indexOf("languageChanging")>-1&&r.services.backendConnector.backend&&r.isLanguageChangingTo&&!l(r.isLanguageChangingTo,t))return!1}}),Ua=t=>typeof t=="string",HD=t=>typeof t=="object"&&t!==null,VD=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,kD={"&":"&","&":"&","<":"<","<":"<",">":">",">":">","'":"'","'":"'",""":'"',""":'"'," ":" "," ":" ","©":"©","©":"©","®":"®","®":"®","…":"…","…":"…","/":"/","/":"/"},QD=t=>kD[t],YD=t=>t.replace(VD,QD);let Ah={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:YD};const GD=(t={})=>{Ah={...Ah,...t}},KD=()=>Ah;let j1;const XD=t=>{j1=t},ZD=()=>j1,JD={type:"3rdParty",init(t){GD(t.options.react),XD(t)}},P1=_.createContext();class WD{constructor(){this.usedNamespaces={}}addUsedNamespaces(i){i.forEach(a=>{this.usedNamespaces[a]||(this.usedNamespaces[a]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}}var eM=DS();const tM=(t,i)=>Ua(i)?i:HD(i)&&Ua(i.defaultValue)?i.defaultValue:Array.isArray(t)?t[t.length-1]:t,nM={t:tM,ready:!1},iM=()=>()=>{},Pa=(t,i={})=>{const{i18n:a}=i,{i18n:r,defaultNS:l}=_.useContext(P1)||{},u=a||r||ZD();u&&!u.reportNamespaces&&(u.reportNamespaces=new WD),u||L1(u,"NO_I18NEXT_INSTANCE","useTranslation: You will need to pass in an i18next instance by using initReactI18next");const f=_.useMemo(()=>({...KD(),...u?.options?.react,...i}),[u,i]),{useSuspense:d,keyPrefix:m}=f,p=_.useMemo(()=>{const M=t||l||u?.options?.defaultNS;return Ua(M)?[M]:M||["translation"]},[t,l,u]);u?.reportNamespaces?.addUsedNamespaces?.(p);const v=_.useRef(0),g=_.useCallback(M=>{if(!u)return iM;const{bindI18n:B,bindI18nStore:Q}=f,P=()=>{v.current+=1,M()};return B&&u.on(B,P),Q&&u.store.on(Q,P),()=>{B&&B.split(" ").forEach(ee=>u.off(ee,P)),Q&&Q.split(" ").forEach(ee=>u.store.off(ee,P))}},[u,f]),S=_.useRef(),b=_.useCallback(()=>{if(!u)return nM;const M=!!(u.isInitialized||u.initializedStoreOnce)&&p.every(X=>FD(X,u,f)),B=i.lng||u.language,Q=v.current,P=S.current;if(P&&P.ready===M&&P.lng===B&&P.keyPrefix===m&&P.revision===Q)return P;const ne={t:u.getFixedT(B,f.nsMode==="fallback"?p:p[0],m),ready:M,lng:B,keyPrefix:m,revision:Q};return S.current=ne,ne},[u,p,m,f,i.lng]),[E,w]=_.useState(0),{t:x,ready:A}=eM.useSyncExternalStore(g,b,b);_.useEffect(()=>{if(u&&!A&&!d){const M=()=>w(B=>B+1);i.lng?iS(u,i.lng,p,M):xh(u,p,M)}},[u,i.lng,p,A,d,E]);const D=u||{},U=_.useRef(null),N=_.useRef(),k=M=>{const B=Object.getOwnPropertyDescriptors(M);B.__original&&delete B.__original;const Q=Object.create(Object.getPrototypeOf(M),B);if(!Object.prototype.hasOwnProperty.call(Q,"__original"))try{Object.defineProperty(Q,"__original",{value:M,writable:!1,enumerable:!1,configurable:!1})}catch{}return Q},G=_.useMemo(()=>{const M=D,B=M?.language;let Q=M;M&&(U.current&&U.current.__original===M?N.current!==B?(Q=k(M),U.current=Q,N.current=B):Q=U.current:(Q=k(M),U.current=Q,N.current=B));const P=[x,Q,A];return P.t=x,P.i18n=Q,P.ready=A,P},[x,D,A,D.resolvedLanguage,D.language,D.languages]);if(u&&d&&!A)throw new Promise(M=>{const B=()=>M();i.lng?iS(u,i.lng,p,B):xh(u,p,B)});return G},mm=({ns:t,children:i,...a})=>{const[r,l,u]=Pa(t,a);return i(r,{i18n:l,lng:l.language},u)};function aM({i18n:t,defaultNS:i,children:a}){const r=_.useMemo(()=>({i18n:t,defaultNS:i}),[t,i]);return _.createElement(P1.Provider,{value:r},a)}const sM="_details_10519_8",rM={details:sM},oM="_page-heading_y4b3u_8",lM="_icon_y4b3u_16",uM="_invalid_y4b3u_28",cM="_success_y4b3u_36",fM="_header_y4b3u_51",dM="_title_y4b3u_57",hM="_text_y4b3u_64",_a={pageHeading:oM,icon:lM,invalid:uM,success:cM,header:fM,title:dM,text:hM},mM=({Icon:t,invalid:i,success:a,title:r,subtitle:l})=>R.jsxs("header",{className:_a.pageHeading,children:[R.jsx("div",{className:et(_a.icon,i&&_a.invalid,a&&_a.success),children:R.jsx(t,{})}),R.jsxs("div",{className:_a.header,children:[R.jsx("h1",{className:_a.title,children:r}),l&&R.jsx("p",{className:_a.text,children:l})]})]}),z1=({error:t,dontSuspend:i})=>{const[a,r]=_.useState(!1);return R.jsx(mm,{useSuspense:!i,children:l=>R.jsxs("div",{className:"flex flex-col gap-6",children:[R.jsx(mM,{invalid:!0,Icon:Yh,title:l("frontend.error.title",{defaultValue:"Something went wrong"}),subtitle:l("frontend.error.subtitle",{defaultValue:"An unexpected error occured. Please try again."})}),R.jsx(La,{kind:"tertiary",onClick:()=>r(!a),children:a?l("frontend.error.hideDetails",{defaultValue:"Hide details"}):l("frontend.error.showDetails",{defaultValue:"Show details"})}),a&&R.jsx("pre",{className:rM.details,children:R.jsx("code",{children:String(t)})})]})})};function Cu(t,i){return i}const pM="modulepreload",gM=function(t,i){return new URL(t,i).href},aS={},ht=function(i,a,r){let l=Promise.resolve();if(a&&a.length>0){let p=function(v){return Promise.all(v.map(g=>Promise.resolve(g).then(S=>({status:"fulfilled",value:S}),S=>({status:"rejected",reason:S}))))};const f=document.getElementsByTagName("link"),d=document.querySelector("meta[property=csp-nonce]"),m=d?.nonce||d?.getAttribute("nonce");l=p(a.map(v=>{if(v=gM(v,r),v in aS)return;aS[v]=!0;const g=v.endsWith(".css"),S=g?'[rel="stylesheet"]':"";if(r)for(let E=f.length-1;E>=0;E--){const w=f[E];if(w.href===v&&(!g||w.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${v}"]${S}`))return;const b=document.createElement("link");if(b.rel=g?"stylesheet":pM,g||(b.as="script"),b.crossOrigin="",b.href=v,m&&b.setAttribute("nonce",m),document.head.appendChild(b),g)return new Promise((E,w)=>{b.addEventListener("load",E),b.addEventListener("error",()=>w(new Error(`Unable to preload CSS for ${v}`)))})}))}function u(f){const d=new Event("vite:preloadError",{cancelable:!0});if(d.payload=f,window.dispatchEvent(d),!d.defaultPrevented)throw f}return l.then(f=>{for(const d of f||[])d.status==="rejected"&&u(d.reason);return i().catch(u)})};class he extends String{__apiType;value;__meta__;constructor(i,a){super(i),this.value=i,this.__meta__=a}toString(){return this.value}}const vM=new he(` + fragment AccountDeleteButton_user on User { + username + hasPassword + matrix { + mxid + displayName + } +} + `,{fragmentName:"AccountDeleteButton_user"}),yM=new he(` + fragment AccountDeleteButton_siteConfig on SiteConfig { + passwordLoginEnabled +} + `,{fragmentName:"AccountDeleteButton_siteConfig"}),SM=new he(` + fragment PasswordChange_siteConfig on SiteConfig { + passwordChangeAllowed +} + `,{fragmentName:"PasswordChange_siteConfig"}),bM=new he(` + fragment EndBrowserSessionButton_session on BrowserSession { + id + userAgent { + name + os + model + deviceType + } +} + `,{fragmentName:"EndBrowserSessionButton_session"}),_M=new he(` + fragment BrowserSession_session on BrowserSession { + id + createdAt + finishedAt + ...EndBrowserSessionButton_session + userAgent { + deviceType + name + os + model + } + lastActiveAt +} + fragment EndBrowserSessionButton_session on BrowserSession { + id + userAgent { + name + os + model + deviceType + } +}`,{fragmentName:"BrowserSession_session"}),wM=new he(` + fragment OAuth2Client_detail on Oauth2Client { + id + clientId + clientName + clientUri + logoUri + tosUri + policyUri + redirectUris +} + `,{fragmentName:"OAuth2Client_detail"}),EM=new he(` + fragment EndCompatSessionButton_session on CompatSession { + id + userAgent { + name + os + model + deviceType + } + ssoLogin { + id + redirectUri + } +} + `,{fragmentName:"EndCompatSessionButton_session"}),CM=new he(` + fragment CompatSession_session on CompatSession { + id + createdAt + deviceId + finishedAt + lastActiveIp + lastActiveAt + humanName + ...EndCompatSessionButton_session + userAgent { + name + os + model + deviceType + } + ssoLogin { + id + redirectUri + } +} + fragment EndCompatSessionButton_session on CompatSession { + id + userAgent { + name + os + model + deviceType + } + ssoLogin { + id + redirectUri + } +}`,{fragmentName:"CompatSession_session"}),RM=new he(` + fragment Footer_siteConfig on SiteConfig { + id + imprint + tosUri + policyUri +} + `,{fragmentName:"Footer_siteConfig"}),xM=new he(` + fragment EndOAuth2SessionButton_session on Oauth2Session { + id + userAgent { + name + model + os + deviceType + } + client { + clientId + clientName + applicationType + logoUri + } +} + `,{fragmentName:"EndOAuth2SessionButton_session"}),AM=new he(` + fragment OAuth2Session_session on Oauth2Session { + id + scope + createdAt + finishedAt + lastActiveIp + lastActiveAt + humanName + ...EndOAuth2SessionButton_session + userAgent { + name + model + os + deviceType + } + client { + id + clientId + clientName + applicationType + logoUri + } +} + fragment EndOAuth2SessionButton_session on Oauth2Session { + id + userAgent { + name + model + os + deviceType + } + client { + clientId + clientName + applicationType + logoUri + } +}`,{fragmentName:"OAuth2Session_session"}),TM=new he(` + fragment BrowserSession_detail on BrowserSession { + id + createdAt + finishedAt + ...EndBrowserSessionButton_session + userAgent { + name + model + os + } + lastActiveIp + lastActiveAt + lastAuthentication { + id + createdAt + } + user { + id + username + } +} + fragment EndBrowserSessionButton_session on BrowserSession { + id + userAgent { + name + os + model + deviceType + } +}`,{fragmentName:"BrowserSession_detail"}),OM=new he(` + fragment CompatSession_detail on CompatSession { + id + createdAt + deviceId + finishedAt + lastActiveIp + lastActiveAt + humanName + ...EndCompatSessionButton_session + userAgent { + name + os + model + } + ssoLogin { + id + redirectUri + } +} + fragment EndCompatSessionButton_session on CompatSession { + id + userAgent { + name + os + model + deviceType + } + ssoLogin { + id + redirectUri + } +}`,{fragmentName:"CompatSession_detail"}),DM=new he(` + fragment OAuth2Session_detail on Oauth2Session { + id + scope + createdAt + finishedAt + lastActiveIp + lastActiveAt + humanName + ...EndOAuth2SessionButton_session + userAgent { + name + model + os + } + client { + id + clientId + clientName + clientUri + logoUri + } +} + fragment EndOAuth2SessionButton_session on Oauth2Session { + id + userAgent { + name + model + os + deviceType + } + client { + clientId + clientName + applicationType + logoUri + } +}`,{fragmentName:"OAuth2Session_detail"}),MM=new he(` + fragment UserEmail_email on UserEmail { + id + email +} + `,{fragmentName:"UserEmail_email"}),NM=new he(` + fragment UserGreeting_user on User { + id + matrix { + mxid + displayName + } +} + `,{fragmentName:"UserGreeting_user"}),LM=new he(` + fragment UserGreeting_siteConfig on SiteConfig { + displayNameChangeAllowed +} + `,{fragmentName:"UserGreeting_siteConfig"}),UM=new he(` + fragment AddEmailForm_user on User { + hasPassword +} + `,{fragmentName:"AddEmailForm_user"}),jM=new he(` + fragment AddEmailForm_siteConfig on SiteConfig { + passwordLoginEnabled +} + `,{fragmentName:"AddEmailForm_siteConfig"}),PM=new he(` + fragment UserEmailList_user on User { + hasPassword +} + `,{fragmentName:"UserEmailList_user"}),zM=new he(` + fragment UserEmailList_siteConfig on SiteConfig { + emailChangeAllowed + passwordLoginEnabled +} + `,{fragmentName:"UserEmailList_siteConfig"}),$M=new he(` + fragment BrowserSessionsOverview_user on User { + id + browserSessions(first: 0, state: ACTIVE) { + totalCount + } +} + `,{fragmentName:"BrowserSessionsOverview_user"}),BM=new he(` + fragment RecoverPassword_userRecoveryTicket on UserRecoveryTicket { + username + email +} + `,{fragmentName:"RecoverPassword_userRecoveryTicket"}),qM=new he(` + fragment PasswordCreationDoubleInput_siteConfig on SiteConfig { + id + minimumPasswordComplexity +} + `,{fragmentName:"PasswordCreationDoubleInput_siteConfig"}),IM=new he(` + fragment RecoverPassword_siteConfig on SiteConfig { + ...PasswordCreationDoubleInput_siteConfig +} + fragment PasswordCreationDoubleInput_siteConfig on SiteConfig { + id + minimumPasswordComplexity +}`,{fragmentName:"RecoverPassword_siteConfig"}),FM=new he(` + mutation DeactivateUser($hsErase: Boolean!, $password: String) { + deactivateUser(input: {hsErase: $hsErase, password: $password}) { + status + } +} + `),HM=new he(` + query Footer { + siteConfig { + id + ...Footer_siteConfig + } +} + fragment Footer_siteConfig on SiteConfig { + id + imprint + tosUri + policyUri +}`),VM=new he(` + mutation EndBrowserSession($id: ID!) { + endBrowserSession(input: {browserSessionId: $id}) { + status + browserSession { + id + } + } +} + `),kM=new he(` + mutation EndCompatSession($id: ID!) { + endCompatSession(input: {compatSessionId: $id}) { + status + compatSession { + id + } + } +} + `),QM=new he(` + mutation EndOAuth2Session($id: ID!) { + endOauth2Session(input: {oauth2SessionId: $id}) { + status + oauth2Session { + id + } + } +} + `),YM=new he(` + mutation SetCompatSessionName($sessionId: ID!, $displayName: String!) { + setCompatSessionName( + input: {compatSessionId: $sessionId, humanName: $displayName} + ) { + status + } +} + `),GM=new he(` + mutation SetOAuth2SessionName($sessionId: ID!, $displayName: String!) { + setOauth2SessionName( + input: {oauth2SessionId: $sessionId, humanName: $displayName} + ) { + status + } +} + `),KM=new he(` + mutation RemoveEmail($id: ID!, $password: String) { + removeEmail(input: {userEmailId: $id, password: $password}) { + status + user { + id + } + } +} + `),XM=new he(` + mutation SetDisplayName($userId: ID!, $displayName: String) { + setDisplayName(input: {userId: $userId, displayName: $displayName}) { + status + } +} + `),ZM=new he(` + mutation AddEmail($email: String!, $password: String, $language: String!) { + startEmailAuthentication( + input: {email: $email, password: $password, language: $language} + ) { + status + violations + authentication { + id + } + } +} + `),JM=new he(` + query UserEmailList($first: Int, $after: String, $last: Int, $before: String) { + viewer { + __typename + ... on User { + emails(first: $first, after: $after, last: $last, before: $before) { + edges { + cursor + node { + ...UserEmail_email + } + } + totalCount + pageInfo { + hasNextPage + hasPreviousPage + startCursor + endCursor + } + } + } + } +} + fragment UserEmail_email on UserEmail { + id + email +}`),WM=new he(` + query UserProfile { + viewerSession { + __typename + ... on BrowserSession { + id + user { + ...AddEmailForm_user + ...UserEmailList_user + ...AccountDeleteButton_user + hasPassword + emails(first: 0) { + totalCount + } + } + } + } + siteConfig { + emailChangeAllowed + passwordLoginEnabled + accountDeactivationAllowed + ...AddEmailForm_siteConfig + ...UserEmailList_siteConfig + ...PasswordChange_siteConfig + ...AccountDeleteButton_siteConfig + } +} + fragment AccountDeleteButton_user on User { + username + hasPassword + matrix { + mxid + displayName + } +} +fragment AccountDeleteButton_siteConfig on SiteConfig { + passwordLoginEnabled +} +fragment PasswordChange_siteConfig on SiteConfig { + passwordChangeAllowed +} +fragment AddEmailForm_user on User { + hasPassword +} +fragment AddEmailForm_siteConfig on SiteConfig { + passwordLoginEnabled +} +fragment UserEmailList_user on User { + hasPassword +} +fragment UserEmailList_siteConfig on SiteConfig { + emailChangeAllowed + passwordLoginEnabled +}`),e3=new he(` + query PlanManagementTab { + siteConfig { + planManagementIframeUri + } +} + `),t3=new he(` + query BrowserSessionList($first: Int, $after: String, $last: Int, $before: String, $lastActive: DateFilter) { + viewerSession { + __typename + ... on BrowserSession { + id + user { + id + browserSessions( + first: $first + after: $after + last: $last + before: $before + lastActive: $lastActive + state: ACTIVE + ) { + totalCount + edges { + cursor + node { + id + ...BrowserSession_session + } + } + pageInfo { + hasNextPage + hasPreviousPage + startCursor + endCursor + } + } + } + } + } +} + fragment BrowserSession_session on BrowserSession { + id + createdAt + finishedAt + ...EndBrowserSessionButton_session + userAgent { + deviceType + name + os + model + } + lastActiveAt +} +fragment EndBrowserSessionButton_session on BrowserSession { + id + userAgent { + name + os + model + deviceType + } +}`),n3=new he(` + query SessionsOverview { + viewer { + __typename + ... on User { + id + ...BrowserSessionsOverview_user + } + } +} + fragment BrowserSessionsOverview_user on User { + id + browserSessions(first: 0, state: ACTIVE) { + totalCount + } +}`),i3=new he(` + query AppSessionsList($before: String, $after: String, $first: Int, $last: Int, $lastActive: DateFilter) { + viewer { + __typename + ... on User { + id + appSessions( + before: $before + after: $after + first: $first + last: $last + lastActive: $lastActive + state: ACTIVE + ) { + edges { + cursor + node { + __typename + ...CompatSession_session + ...OAuth2Session_session + } + } + totalCount + pageInfo { + startCursor + endCursor + hasNextPage + hasPreviousPage + } + } + } + } +} + fragment CompatSession_session on CompatSession { + id + createdAt + deviceId + finishedAt + lastActiveIp + lastActiveAt + humanName + ...EndCompatSessionButton_session + userAgent { + name + os + model + deviceType + } + ssoLogin { + id + redirectUri + } +} +fragment OAuth2Session_session on Oauth2Session { + id + scope + createdAt + finishedAt + lastActiveIp + lastActiveAt + humanName + ...EndOAuth2SessionButton_session + userAgent { + name + model + os + deviceType + } + client { + id + clientId + clientName + applicationType + logoUri + } +} +fragment EndCompatSessionButton_session on CompatSession { + id + userAgent { + name + os + model + deviceType + } + ssoLogin { + id + redirectUri + } +} +fragment EndOAuth2SessionButton_session on Oauth2Session { + id + userAgent { + name + model + os + deviceType + } + client { + clientId + clientName + applicationType + logoUri + } +}`),a3=new he(` + query CurrentUserGreeting { + viewer { + __typename + ... on User { + ...UserGreeting_user + } + } + siteConfig { + ...UserGreeting_siteConfig + planManagementIframeUri + } +} + fragment UserGreeting_user on User { + id + matrix { + mxid + displayName + } +} +fragment UserGreeting_siteConfig on SiteConfig { + displayNameChangeAllowed +}`),s3=new he(` + query OAuth2Client($id: ID!) { + oauth2Client(id: $id) { + ...OAuth2Client_detail + } +} + fragment OAuth2Client_detail on Oauth2Client { + id + clientId + clientName + clientUri + logoUri + tosUri + policyUri + redirectUris +}`),r3=new he(` + query CurrentViewer { + viewer { + __typename + ... on Node { + id + } + } +} + `),o3=new he(` + query DeviceRedirect($deviceId: String!, $userId: ID!) { + session(deviceId: $deviceId, userId: $userId) { + __typename + ... on Node { + id + } + } +} + `),l3=new he(` + query VerifyEmail($id: ID!) { + userEmailAuthentication(id: $id) { + id + email + completedAt + } +} + `),u3=new he(` + mutation DoVerifyEmail($id: ID!, $code: String!) { + completeEmailAuthentication(input: {id: $id, code: $code}) { + status + } +} + `),c3=new he(` + mutation ResendEmailAuthenticationCode($id: ID!, $language: String!) { + resendEmailAuthenticationCode(input: {id: $id, language: $language}) { + status + } +} + `),f3=new he(` + mutation ChangePassword($userId: ID!, $oldPassword: String!, $newPassword: String!) { + setPassword( + input: {userId: $userId, currentPassword: $oldPassword, newPassword: $newPassword} + ) { + status + } +} + `),d3=new he(` + query PasswordChange { + viewer { + __typename + ... on Node { + id + } + } + siteConfig { + ...PasswordCreationDoubleInput_siteConfig + } +} + fragment PasswordCreationDoubleInput_siteConfig on SiteConfig { + id + minimumPasswordComplexity +}`),h3=new he(` + mutation RecoverPassword($ticket: String!, $newPassword: String!) { + setPasswordByRecovery(input: {ticket: $ticket, newPassword: $newPassword}) { + status + } +} + `),m3=new he(` + mutation ResendRecoveryEmail($ticket: String!) { + resendRecoveryEmail(input: {ticket: $ticket}) { + status + progressUrl + } +} + `),p3=new he(` + query PasswordRecovery($ticket: String!) { + siteConfig { + ...RecoverPassword_siteConfig + } + userRecoveryTicket(ticket: $ticket) { + status + ...RecoverPassword_userRecoveryTicket + } +} + fragment PasswordCreationDoubleInput_siteConfig on SiteConfig { + id + minimumPasswordComplexity +} +fragment RecoverPassword_userRecoveryTicket on UserRecoveryTicket { + username + email +} +fragment RecoverPassword_siteConfig on SiteConfig { + ...PasswordCreationDoubleInput_siteConfig +}`),g3=new he(` + mutation AllowCrossSigningReset($userId: ID!) { + allowUserCrossSigningReset(input: {userId: $userId}) { + user { + id + } + } +} + `),v3=new he(` + query SessionDetail($id: ID!) { + viewerSession { + ... on Node { + id + } + } + node(id: $id) { + __typename + id + ...CompatSession_detail + ...OAuth2Session_detail + ...BrowserSession_detail + } +} + fragment EndBrowserSessionButton_session on BrowserSession { + id + userAgent { + name + os + model + deviceType + } +} +fragment EndCompatSessionButton_session on CompatSession { + id + userAgent { + name + os + model + deviceType + } + ssoLogin { + id + redirectUri + } +} +fragment EndOAuth2SessionButton_session on Oauth2Session { + id + userAgent { + name + model + os + deviceType + } + client { + clientId + clientName + applicationType + logoUri + } +} +fragment BrowserSession_detail on BrowserSession { + id + createdAt + finishedAt + ...EndBrowserSessionButton_session + userAgent { + name + model + os + } + lastActiveIp + lastActiveAt + lastAuthentication { + id + createdAt + } + user { + id + username + } +} +fragment CompatSession_detail on CompatSession { + id + createdAt + deviceId + finishedAt + lastActiveIp + lastActiveAt + humanName + ...EndCompatSessionButton_session + userAgent { + name + os + model + } + ssoLogin { + id + redirectUri + } +} +fragment OAuth2Session_detail on Oauth2Session { + id + scope + createdAt + finishedAt + lastActiveIp + lastActiveAt + humanName + ...EndOAuth2SessionButton_session + userAgent { + name + model + os + } + client { + id + clientId + clientName + clientUri + logoUri + } +}`),y3={"\n fragment AccountDeleteButton_user on User {\n username\n hasPassword\n matrix {\n mxid\n displayName\n }\n }\n":vM,"\n fragment AccountDeleteButton_siteConfig on SiteConfig {\n passwordLoginEnabled\n }\n":yM,"\n mutation DeactivateUser($hsErase: Boolean!, $password: String) {\n deactivateUser(input: { hsErase: $hsErase, password: $password }) {\n status\n }\n }\n":FM,"\n fragment PasswordChange_siteConfig on SiteConfig {\n passwordChangeAllowed\n }\n":SM,"\n fragment BrowserSession_session on BrowserSession {\n id\n createdAt\n finishedAt\n ...EndBrowserSessionButton_session\n userAgent {\n deviceType\n name\n os\n model\n }\n lastActiveAt\n }\n":_M,"\n fragment OAuth2Client_detail on Oauth2Client {\n id\n clientId\n clientName\n clientUri\n logoUri\n tosUri\n policyUri\n redirectUris\n }\n":wM,"\n fragment CompatSession_session on CompatSession {\n id\n createdAt\n deviceId\n finishedAt\n lastActiveIp\n lastActiveAt\n humanName\n ...EndCompatSessionButton_session\n userAgent {\n name\n os\n model\n deviceType\n }\n ssoLogin {\n id\n redirectUri\n }\n }\n":CM,"\n fragment Footer_siteConfig on SiteConfig {\n id\n imprint\n tosUri\n policyUri\n }\n":RM,"\n query Footer {\n siteConfig {\n id\n ...Footer_siteConfig\n }\n }\n":HM,"\n fragment OAuth2Session_session on Oauth2Session {\n id\n scope\n createdAt\n finishedAt\n lastActiveIp\n lastActiveAt\n humanName\n\n ...EndOAuth2SessionButton_session\n\n userAgent {\n name\n model\n os\n deviceType\n }\n\n client {\n id\n clientId\n clientName\n applicationType\n logoUri\n }\n }\n":AM,"\n fragment PasswordCreationDoubleInput_siteConfig on SiteConfig {\n id\n minimumPasswordComplexity\n }\n":qM,"\n fragment EndBrowserSessionButton_session on BrowserSession {\n id\n userAgent {\n name\n os\n model\n deviceType\n }\n }\n":bM,"\n mutation EndBrowserSession($id: ID!) {\n endBrowserSession(input: { browserSessionId: $id }) {\n status\n browserSession {\n id\n }\n }\n }\n":VM,"\n fragment EndCompatSessionButton_session on CompatSession {\n id\n userAgent {\n name\n os\n model\n deviceType\n }\n ssoLogin {\n id\n redirectUri\n }\n }\n":EM,"\n mutation EndCompatSession($id: ID!) {\n endCompatSession(input: { compatSessionId: $id }) {\n status\n compatSession {\n id\n }\n }\n }\n":kM,"\n fragment EndOAuth2SessionButton_session on Oauth2Session {\n id\n\n userAgent {\n name\n model\n os\n deviceType\n }\n\n client {\n clientId\n clientName\n applicationType\n logoUri\n }\n }\n":xM,"\n mutation EndOAuth2Session($id: ID!) {\n endOauth2Session(input: { oauth2SessionId: $id }) {\n status\n oauth2Session {\n id\n }\n }\n }\n":QM,"\n fragment BrowserSession_detail on BrowserSession {\n id\n createdAt\n finishedAt\n ...EndBrowserSessionButton_session\n userAgent {\n name\n model\n os\n }\n lastActiveIp\n lastActiveAt\n lastAuthentication {\n id\n createdAt\n }\n user {\n id\n username\n }\n }\n":TM,"\n mutation SetCompatSessionName($sessionId: ID!, $displayName: String!) {\n setCompatSessionName(input: { compatSessionId: $sessionId, humanName: $displayName }) {\n status\n }\n }\n":YM,"\n fragment CompatSession_detail on CompatSession {\n id\n createdAt\n deviceId\n finishedAt\n lastActiveIp\n lastActiveAt\n humanName\n\n ...EndCompatSessionButton_session\n\n userAgent {\n name\n os\n model\n }\n\n ssoLogin {\n id\n redirectUri\n }\n }\n":OM,"\n mutation SetOAuth2SessionName($sessionId: ID!, $displayName: String!) {\n setOauth2SessionName(input: { oauth2SessionId: $sessionId, humanName: $displayName }) {\n status\n }\n }\n":GM,"\n fragment OAuth2Session_detail on Oauth2Session {\n id\n scope\n createdAt\n finishedAt\n lastActiveIp\n lastActiveAt\n humanName\n\n ...EndOAuth2SessionButton_session\n\n userAgent {\n name\n model\n os\n }\n\n client {\n id\n clientId\n clientName\n clientUri\n logoUri\n }\n }\n":DM,"\n fragment UserEmail_email on UserEmail {\n id\n email\n }\n":MM,"\n mutation RemoveEmail($id: ID!, $password: String) {\n removeEmail(input: { userEmailId: $id, password: $password }) {\n status\n\n user {\n id\n }\n }\n }\n":KM,"\n fragment UserGreeting_user on User {\n id\n matrix {\n mxid\n displayName\n }\n }\n":NM,"\n fragment UserGreeting_siteConfig on SiteConfig {\n displayNameChangeAllowed\n }\n":LM,"\n mutation SetDisplayName($userId: ID!, $displayName: String) {\n setDisplayName(input: { userId: $userId, displayName: $displayName }) {\n status\n }\n }\n":XM,"\n fragment AddEmailForm_user on User {\n hasPassword\n }\n":UM,"\n fragment AddEmailForm_siteConfig on SiteConfig {\n passwordLoginEnabled\n }\n":jM,"\n mutation AddEmail($email: String!, $password: String, $language: String!) {\n startEmailAuthentication(\n input: { email: $email, password: $password, language: $language }\n ) {\n status\n violations\n authentication {\n id\n }\n }\n }\n":ZM,"\n query UserEmailList(\n $first: Int\n $after: String\n $last: Int\n $before: String\n ) {\n viewer {\n __typename\n ... on User {\n emails(first: $first, after: $after, last: $last, before: $before) {\n edges {\n cursor\n node {\n ...UserEmail_email\n }\n }\n totalCount\n pageInfo {\n hasNextPage\n hasPreviousPage\n startCursor\n endCursor\n }\n }\n }\n }\n }\n":JM,"\n fragment UserEmailList_user on User {\n hasPassword\n }\n":PM,"\n fragment UserEmailList_siteConfig on SiteConfig {\n emailChangeAllowed\n passwordLoginEnabled\n }\n":zM,"\n fragment BrowserSessionsOverview_user on User {\n id\n\n browserSessions(first: 0, state: ACTIVE) {\n totalCount\n }\n }\n":$M,"\n query UserProfile {\n viewerSession {\n __typename\n ... on BrowserSession {\n id\n user {\n ...AddEmailForm_user\n ...UserEmailList_user\n ...AccountDeleteButton_user\n hasPassword\n emails(first: 0) {\n totalCount\n }\n }\n }\n }\n\n siteConfig {\n emailChangeAllowed\n passwordLoginEnabled\n accountDeactivationAllowed\n ...AddEmailForm_siteConfig\n ...UserEmailList_siteConfig\n ...PasswordChange_siteConfig\n ...AccountDeleteButton_siteConfig\n }\n }\n":WM,"\n query PlanManagementTab {\n siteConfig {\n planManagementIframeUri\n }\n }\n":e3,"\n query BrowserSessionList(\n $first: Int\n $after: String\n $last: Int\n $before: String\n $lastActive: DateFilter\n ) {\n viewerSession {\n __typename\n ... on BrowserSession {\n id\n\n user {\n id\n\n browserSessions(\n first: $first\n after: $after\n last: $last\n before: $before\n lastActive: $lastActive\n state: ACTIVE\n ) {\n totalCount\n\n edges {\n cursor\n node {\n id\n ...BrowserSession_session\n }\n }\n\n pageInfo {\n hasNextPage\n hasPreviousPage\n startCursor\n endCursor\n }\n }\n }\n }\n }\n }\n":t3,"\n query SessionsOverview {\n viewer {\n __typename\n\n ... on User {\n id\n ...BrowserSessionsOverview_user\n }\n }\n }\n":n3,"\n query AppSessionsList(\n $before: String\n $after: String\n $first: Int\n $last: Int\n $lastActive: DateFilter\n ) {\n viewer {\n __typename\n\n ... on User {\n id\n appSessions(\n before: $before\n after: $after\n first: $first\n last: $last\n lastActive: $lastActive\n state: ACTIVE\n ) {\n edges {\n cursor\n node {\n __typename\n ...CompatSession_session\n ...OAuth2Session_session\n }\n }\n\n totalCount\n pageInfo {\n startCursor\n endCursor\n hasNextPage\n hasPreviousPage\n }\n }\n }\n }\n }\n":i3,"\n query CurrentUserGreeting {\n viewer {\n __typename\n ... on User {\n ...UserGreeting_user\n }\n }\n\n siteConfig {\n ...UserGreeting_siteConfig\n planManagementIframeUri\n }\n }\n":a3,"\n query OAuth2Client($id: ID!) {\n oauth2Client(id: $id) {\n ...OAuth2Client_detail\n }\n }\n":s3,"\n query CurrentViewer {\n viewer {\n __typename\n ... on Node {\n id\n }\n }\n }\n":r3,"\n query DeviceRedirect($deviceId: String!, $userId: ID!) {\n session(deviceId: $deviceId, userId: $userId) {\n __typename\n ... on Node {\n id\n }\n }\n }\n":o3,"\n query VerifyEmail($id: ID!) {\n userEmailAuthentication(id: $id) {\n id\n email\n completedAt\n }\n }\n":l3,"\n mutation DoVerifyEmail($id: ID!, $code: String!) {\n completeEmailAuthentication(input: { id: $id, code: $code }) {\n status\n }\n }\n":u3,"\n mutation ResendEmailAuthenticationCode($id: ID!, $language: String!) {\n resendEmailAuthenticationCode(input: { id: $id, language: $language }) {\n status\n }\n }\n":c3,"\n mutation ChangePassword(\n $userId: ID!\n $oldPassword: String!\n $newPassword: String!\n ) {\n setPassword(\n input: {\n userId: $userId\n currentPassword: $oldPassword\n newPassword: $newPassword\n }\n ) {\n status\n }\n }\n":f3,"\n query PasswordChange {\n viewer {\n __typename\n ... on Node {\n id\n }\n }\n\n siteConfig {\n ...PasswordCreationDoubleInput_siteConfig\n }\n }\n":d3,"\n mutation RecoverPassword($ticket: String!, $newPassword: String!) {\n setPasswordByRecovery(\n input: { ticket: $ticket, newPassword: $newPassword }\n ) {\n status\n }\n }\n":h3,"\n mutation ResendRecoveryEmail($ticket: String!) {\n resendRecoveryEmail(input: { ticket: $ticket }) {\n status\n progressUrl\n }\n }\n":m3,"\n fragment RecoverPassword_userRecoveryTicket on UserRecoveryTicket {\n username\n email\n }\n":BM,"\n fragment RecoverPassword_siteConfig on SiteConfig {\n ...PasswordCreationDoubleInput_siteConfig\n }\n":IM,"\n query PasswordRecovery($ticket: String!) {\n siteConfig {\n ...RecoverPassword_siteConfig\n }\n\n userRecoveryTicket(ticket: $ticket) {\n status\n ...RecoverPassword_userRecoveryTicket\n }\n }\n":p3,"\n mutation AllowCrossSigningReset($userId: ID!) {\n allowUserCrossSigningReset(input: { userId: $userId }) {\n user {\n id\n }\n }\n }\n":g3,"\n query SessionDetail($id: ID!) {\n viewerSession {\n ... on Node {\n id\n }\n }\n\n node(id: $id) {\n __typename\n id\n ...CompatSession_detail\n ...OAuth2Session_detail\n ...BrowserSession_detail\n }\n }\n":v3};function tt(t){return y3[t]??{}}const $1=typeof window<"u"&&window.APP_CONFIG||{root:"/",graphqlEndpoint:"/graphql"};let Zr;Zr=new URL($1.graphqlEndpoint,window.location.toString()).toString();const wt=async({query:t,variables:i,signal:a})=>{let r;try{r=await fetch(Zr,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({query:t,variables:i}),signal:a})}catch(u){throw new Error(`GraphQL request to ${Zr} request failed`,{cause:u})}if(!r.ok)throw new Error(`GraphQL request to ${Zr} failed: ${r.status}`);const l=await r.json();if(l.errors)throw new Error(JSON.stringify(l.errors));if(!l.data)throw new Error(`GraphQL request to ${Zr} returned no data`);return l.data},Th=new IE({defaultOptions:{mutations:{throwOnError:!0}}}),S3="_legal-footer_1n9he_8",b3="_separator_1n9he_24",_3="_imprint_1n9he_29",Kd={legalFooter:S3,separator:b3,imprint:_3},w3=tt(` + fragment Footer_siteConfig on SiteConfig { + id + imprint + tosUri + policyUri + } +`),E3=({siteConfig:t})=>{const i=Cu(w3,t),{t:a}=Pa();return R.jsxs("footer",{className:Kd.legalFooter,children:[(i.policyUri||i.tosUri)&&R.jsxs("nav",{children:[i.policyUri&&R.jsx(P0,{href:i.policyUri,title:a("branding.privacy_policy.alt",{defaultValue:"Link to the service privacy policy"}),children:a("branding.privacy_policy.link",{defaultValue:"Privacy policy"})}),i.policyUri&&i.tosUri&&R.jsx("div",{className:Kd.separator,"aria-hidden":"true",children:"•"}),i.tosUri&&R.jsx(P0,{href:i.tosUri,title:a("branding.terms_and_conditions.alt",{defaultValue:"Link to the service terms and conditions"}),children:a("branding.terms_and_conditions.link",{defaultValue:"Terms and conditions"})})]}),i.imprint&&R.jsx("p",{className:Kd.imprint,children:i.imprint})]})},C3="_layout-container_71fyu_8",R3="_wide_71fyu_31",sS={layoutContainer:C3,wide:R3},x3=tt(` + query Footer { + siteConfig { + id + ...Footer_siteConfig + } + } +`),B1={queryKey:["footer"],queryFn:({signal:t})=>wt({query:x3,signal:t}),throwOnError:!1},A3=()=>{const t=vS(B1);if(t.error||t.isPending)return null;const i=t.data?.siteConfig;if(!i)throw new Error("Failed to load site config");return R.jsx(E3,{siteConfig:i})},pm=({children:t,wide:i})=>R.jsxs("div",{className:et(sS.layoutContainer,i&&sS.wide),children:[t,R.jsx(_.Suspense,{fallback:null,children:R.jsx(A3,{})})]});class T3 extends _.PureComponent{constructor(i){super(i),this.state={}}static getDerivedStateFromError(i){return{error:i}}componentDidCatch(i,{componentStack:a}){console.error(i),console.error("The above error occurred while React was rendering the following components:",a)}render(){return this.state.error?R.jsx(pm,{children:R.jsx(z1,{dontSuspend:!0,error:this.state.error})}):this.props.children}}const O3="_inline_a0mwm_18",D3="_loading-spinner-inner_a0mwm_22",M3="_mini_a0mwm_28",Xd={inline:O3,loadingSpinnerInner:D3,mini:M3},q1=({inline:t,mini:i,className:a})=>{const{t:r}=Pa(void 0,{useSuspense:!1}),l=r("common.loading",{defaultValue:"Loading…"});return R.jsx("div",{role:"alert","aria-busy":"true",className:et(a,t&&Xd.inline,i&&Xd.mini),children:R.jsxs("svg",{role:"img",className:Xd.loadingSpinnerInner,viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[R.jsx("title",{children:l}),R.jsx("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})]})})},N3="_loading-screen_1v9q3_8",L3={loadingScreen:N3},I1=()=>R.jsx("main",{className:L3.loadingScreen,children:R.jsx(q1,{})}),U3=""+new URL("cs-DYf_w-qa.json",import.meta.url).href,j3=""+new URL("da-C7iC4T2b.json",import.meta.url).href,P3=""+new URL("de-BB-ic40C.json",import.meta.url).href,z3=""+new URL("en-BEOwaFOS.json",import.meta.url).href,$3=""+new URL("et-C5AmQ39N.json",import.meta.url).href,B3=""+new URL("fi-DqcJmwFK.json",import.meta.url).href,q3=""+new URL("fr-DyxTHY_N.json",import.meta.url).href,I3=""+new URL("hu-iZuXrNpW.json",import.meta.url).href,F3=""+new URL("nb-NO-NUhTvzyJ.json",import.meta.url).href,H3=""+new URL("nl-h9IkIRir.json",import.meta.url).href,V3=""+new URL("pl-xTKSNISR.json",import.meta.url).href,k3=""+new URL("pt-DqxHb1vZ.json",import.meta.url).href,Q3=""+new URL("ru-ChUf67Dm.json",import.meta.url).href,Y3=""+new URL("sv-CZZ1grTo.json",import.meta.url).href,G3=""+new URL("uk-hgEleI-t.json",import.meta.url).href,K3=""+new URL("zh-Hans-Bf42-WuH.json",import.meta.url).href,F1=Object.assign({"../locales/cs.json":U3,"../locales/da.json":j3,"../locales/de.json":P3,"../locales/en.json":z3,"../locales/et.json":$3,"../locales/fi.json":B3,"../locales/fr.json":q3,"../locales/hu.json":I3,"../locales/nb-NO.json":F3,"../locales/nl.json":H3,"../locales/pl.json":V3,"../locales/pt.json":k3,"../locales/ru.json":Q3,"../locales/sv.json":Y3,"../locales/uk.json":G3,"../locales/zh-Hans.json":K3}),X3=t=>F1[`../locales/${t}.json`],Z3=Object.keys(F1).map(t=>{const i=t.match(/\/([^/]+)\.json$/)?.[1];if(!i)throw new Error(`Could not parse locale URL ${t}`);return i}),J3={type:"languageDetector",detect(){const t=typeof document<"u"?document.documentElement:null;if(t&&typeof t.getAttribute=="function")return t.getAttribute("lang")||void 0}},W3={type:"backend",init(){},read(t,i,a){(async()=>{const r=X3(t);if(!r)throw new Error(`Locale ${t} not found`);const l=await fetch(r,{credentials:"omit",headers:{Accept:"application/json"}});if(!l.ok)throw Error(`Failed to fetch ${r}`);return await l.json()})().then(r=>a(null,r),r=>a(r,null))}},eN=()=>{Rt.use(W3).use(J3).use(JD).init({fallbackLng:"en",keySeparator:".",pluralSeparator:":",defaultNS:"translation",supportedLngs:Z3,interpolation:{escapeValue:!1}})},tN=()=>R.jsx(mm,{children:t=>R.jsx(w2,{type:"critical",title:t("frontend.not_found_alert_title")})}),nN=({error:t})=>R.jsx(pm,{children:R.jsx(z1,{error:t})}),Tn=DR()({component:()=>R.jsxs(R.Fragment,{children:[R.jsx(jS,{}),!1]}),loader({context:t}){t.queryClient.ensureQueryData(B1)},errorComponent:nN,notFoundComponent:()=>R.jsx(pm,{children:R.jsx(tN,{})})});var Zd;function iN(t){return{lang:t?.lang??Zd?.lang,message:t?.message,abortEarly:t?.abortEarly??Zd?.abortEarly,abortPipeEarly:t?.abortPipeEarly??Zd?.abortPipeEarly}}var aN;function sN(t){return aN?.get(t)}var rN;function oN(t){return rN?.get(t)}var lN;function uN(t,i){return lN?.get(t)?.get(i)}function gm(t){const i=typeof t;return i==="string"?`"${t}"`:i==="number"||i==="bigint"||i==="boolean"?`${t}`:i==="object"||i==="function"?(t&&Object.getPrototypeOf(t)?.constructor?.name)??"null":i}function kt(t,i,a,r,l){const u=l&&"input"in l?l.input:a.value,f=l?.expected??t.expects??null,d=l?.received??gm(u),m={kind:t.kind,type:t.type,input:u,expected:f,received:d,message:`Invalid ${i}: ${f?`Expected ${f} but r`:"R"}eceived ${d}`,requirement:t.requirement,path:l?.path,issues:l?.issues,lang:r.lang,abortEarly:r.abortEarly,abortPipeEarly:r.abortPipeEarly},p=t.kind==="schema",v=l?.message??t.message??uN(t.reference,m.lang)??(p?oN(m.lang):null)??r.message??sN(m.lang);v!==void 0&&(m.message=typeof v=="function"?v(m):v),p&&(a.typed=!1),a.issues?a.issues.push(m):a.issues=[m]}function rn(t){return{version:1,vendor:"valibot",validate(i){return t["~run"]({value:i},iN())}}}function cN(t,i){return Object.hasOwn(t,i)&&i!=="__proto__"&&i!=="prototype"&&i!=="constructor"}function vm(t,i){const a=[...new Set(t)];return a.length>1?`(${a.join(` ${i} `)})`:a[0]??"never"}function H1(t,i,a){return typeof t.fallback=="function"?t.fallback(i,a):t.fallback}function Vu(t,i,a){return typeof t.default=="function"?t.default(i,a):t.default}function V1(t){return{kind:"schema",type:"boolean",reference:V1,expects:"boolean",async:!1,message:t,get"~standard"(){return rn(this)},"~run"(i,a){return typeof i.value=="boolean"?i.typed=!0:kt(this,"type",i,a),i}}}function Oh(t,i){if(typeof t==typeof i){if(t===i||t instanceof Date&&i instanceof Date&&+t==+i)return{value:t};if(t&&i&&t.constructor===Object&&i.constructor===Object){for(const a in i)if(a in t){const r=Oh(t[a],i[a]);if(r.issue)return r;t[a]=r.value}else t[a]=i[a];return{value:t}}if(Array.isArray(t)&&Array.isArray(i)&&t.length===i.length){for(let a=0;aa.expects),"&"),async:!1,options:t,message:i,get"~standard"(){return rn(this)},"~run"(a,r){if(this.options.length){const l=a.value;let u;a.typed=!0;for(const f of this.options){const d=f["~run"]({value:l},r);if(d.issues&&(a.issues?a.issues.push(...d.issues):a.issues=d.issues,r.abortEarly)){a.typed=!1;break}d.typed||(a.typed=!1),a.typed&&(u?u.push(d.value):u=[d.value])}if(a.typed){a.value=u[0];for(let f=1;f{for(const b of g.options){if(b.type==="variant")v(b,new Set(S).add(b.key));else{let E=!0,w=0;for(const x of S){const A=b.entries[x];if(x in u?A["~run"]({typed:!1,value:u[x]},{abortEarly:!0}).issues:A.type!=="exact_optional"&&A.type!=="optional"&&A.type!=="nullish"){E=!1,m!==x&&(dht(()=>import("./reset-cross-signing-DUdBxwlo.js"),__vite__mapDeps([0,1,2]),import.meta.url),hN=()=>ht(()=>import("./reset-cross-signing-CrU1fIYQ.js"),__vite__mapDeps([3,1,2]),import.meta.url),mN=wn({deepLink:ja(V1())}),pN=ft({validateSearch:mN,component:dt(hN,"component"),errorComponent:dt(dN,"errorComponent")}),gN=()=>ht(()=>import("./_account-BMDlqbFy.js"),__vite__mapDeps([4,5,6,7,8,1,9,2]),import.meta.url),vN=tt(` + query CurrentUserGreeting { + viewer { + __typename + ... on User { + ...UserGreeting_user + } + } + + siteConfig { + ...UserGreeting_siteConfig + planManagementIframeUri + } + } +`),yN={queryKey:["currentUserGreeting"],queryFn:({signal:t})=>wt({query:vN,signal:t})},SN=ft({loader:({context:t})=>t.queryClient.ensureQueryData(yN),component:dt(gN,"component")}),bN=()=>ht(()=>import("./reset-cross-signing.index-d3QQKAON.js"),__vite__mapDeps([10,11,12,13,14,1,2]),import.meta.url),_N=tt(` + query CurrentViewer { + viewer { + __typename + ... on Node { + id + } + } + } +`),wN={queryKey:["currentViewer"],queryFn:({signal:t})=>wt({query:_N,signal:t})},EN=ft({loader:({context:t})=>t.queryClient.ensureQueryData(wN),component:dt(bN,"component")}),G1=Symbol("FIRST_PAGE"),CN=Symbol("LAST_PAGE"),K1=wn({first:Jr(Dh()),after:Jr(Vs()),last:Jr(Dh()),before:Jr(Vs())}),RN=t=>typeof t.first=="number"||typeof t.last=="number",xN=t=>Object.hasOwn(t,"first"),AN=t=>Object.hasOwn(t,"last"),X1=(t,i=6,a="forward")=>RN(t)?t:a==="forward"?{first:i}:{last:i},TN=(t=6)=>{const[i,a]=_.useState({first:t});return[i,l=>{a(l===G1?{first:t}:l===CN?{last:t}:l)}]},ON=(t,i,a=6)=>{const r=xN(t)&&t.after!==void 0,l=AN(t)&&t.before!==void 0;let u=null,f=null;return(i.hasPreviousPage||r)&&(u={last:a,before:i.startCursor??void 0}),(i.hasNextPage||l)&&(f={first:a,after:i.endCursor??void 0}),[u,f]},DN=({onNext:t,onPrev:i,autoHide:a,count:r,disabled:l})=>{const{t:u}=Pa();return a&&!t&&!i?null:R.jsxs("div",{className:"grid items-center grid-cols-3 gap-2",children:[R.jsx(La,{kind:"secondary",size:"sm",disabled:l||!i,onClick:()=>i?.(),children:u("common.previous")}),R.jsx("div",{className:"text-center",children:r!==void 0?u("frontend.pagination_controls.total",{totalCount:r}):null}),R.jsx(La,{kind:"secondary",size:"sm",disabled:l||!t,onClick:()=>t?.(),children:u("common.next")})]})};function Z1(t,i){return R.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",fill:"currentColor",viewBox:"0 0 24 24",ref:i,...t,children:R.jsx("path",{d:"M7 21q-.824 0-1.412-.587A1.93 1.93 0 0 1 5 19V6a.97.97 0 0 1-.713-.287A.97.97 0 0 1 4 5q0-.424.287-.713A.97.97 0 0 1 5 4h4q0-.424.287-.712A.97.97 0 0 1 10 3h4q.424 0 .713.288Q15 3.575 15 4h4q.424 0 .712.287Q20 4.576 20 5t-.288.713A.97.97 0 0 1 19 6v13q0 .824-.587 1.413A1.93 1.93 0 0 1 17 21zM7 6v13h10V6zm2 10q0 .424.287.712Q9.576 17 10 17t.713-.288A.97.97 0 0 0 11 16V9a.97.97 0 0 0-.287-.713A.97.97 0 0 0 10 8a.97.97 0 0 0-.713.287A.97.97 0 0 0 9 9zm4 0q0 .424.287.712.288.288.713.288.424 0 .713-.288A.97.97 0 0 0 15 16V9a.97.97 0 0 0-.287-.713A.97.97 0 0 0 14 8a.97.97 0 0 0-.713.287A.97.97 0 0 0 13 9z"})})}Z1.displayName="DeleteIcon";const J1=_.forwardRef(Z1);function W1(t,i){return R.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",fill:"currentColor",viewBox:"0 0 24 24",ref:i,...t,children:R.jsx("path",{d:"M2 6a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm2 0v1.412l8 4.444 8-4.444V6zm0 3.7V18h16V9.7l-7.514 4.174a1 1 0 0 1-.972 0z"})})}W1.displayName="EmailIcon";const MN=_.forwardRef(W1),NN="_overlay_z12vs_8",LN="_scroll-container_z12vs_9",UN="_container_z12vs_19",jN="_dialog_z12vs_26",PN="_body_z12vs_34",zN="_title_z12vs_41",$N="_close_z12vs_58",BN="_drawer_z12vs_78",qN="_handle_z12vs_126",Pn={overlay:NN,scrollContainer:LN,container:UN,dialog:jN,body:PN,title:zN,close:$N,drawer:BN,handle:qN};let Ru="other";/android/i.test(navigator.userAgent)?Ru="android":/iPad|iPhone|iPod|Mac/.test(navigator.userAgent)&&"ontouchend"in document&&(Ru="ios");const e_=({trigger:t,open:i,asDrawer:a,onOpenChange:r,children:l})=>{typeof a!="boolean"&&(a=Ru!=="other");const{t:u}=Pa();return a?R.jsxs(Gl.Root,{open:i,onOpenChange:r,children:[t&&R.jsx(D0,{asChild:!0,children:t}),R.jsxs(M0,{children:[R.jsx(Gl.Overlay,{className:Pn.overlay}),R.jsxs(Gl.Content,{className:Pn.drawer,"data-platform":Ru,children:[R.jsx(Gl.Handle,{className:Pn.handle}),R.jsx("div",{className:Pn.body,children:l})]})]})]}):R.jsxs(Gb,{open:i,onOpenChange:r,children:[t&&R.jsx(D0,{asChild:!0,children:t}),R.jsx(M0,{children:R.jsx(Kb,{className:Pn.scrollContainer,children:R.jsx("div",{className:Pn.container,children:R.jsx(u1,{className:Pn.dialog,children:R.jsxs(Xb,{className:Pn.body,children:[l,R.jsx(Pu,{label:u("action.close"),children:R.jsx(sm,{className:Pn.close,children:R.jsx(qS,{})})})]})})})})})]})},t_=({children:t})=>R.jsx(WT,{className:Pn.title,children:t}),IN=()=>{const t=_.useRef({prompt:()=>{throw new Error("PasswordConfirmationModal is not mounted!")}});return[_.useCallback(()=>t.current.prompt(),[]),t]},FN=({title:t,destructive:i,ref:a})=>{const[r,l]=_.useState(!1),{t:u}=Pa(),f=_.useRef(null);_.useImperativeHandle(a,()=>({prompt:()=>(l(!0),f.current===null&&(f.current=Promise.withResolvers()),f.current.promise)}));const d=_.useCallback(p=>{l(p),p||(f.current?.reject(new Error("User cancelled password prompt")),f.current=null)},[]),m=_.useCallback(p=>{p.preventDefault();const g=new FormData(p.currentTarget).get("password");if(typeof g!="string")throw new Error;f.current?.resolve(g),f.current=null,l(!1)},[]);return R.jsxs(e_,{open:r,onOpenChange:d,children:[R.jsx(t_,{children:t}),R.jsxs(E1,{onSubmit:m,children:[R.jsxs(_1,{name:"password",children:[R.jsx(w1,{children:u("common.password")}),R.jsx(pD,{autoFocus:!0,autoComplete:"current-password"})]}),R.jsx(La,{type:"submit",kind:"primary",destructive:i,children:u("action.confirm")})]}),R.jsx(sm,{asChild:!0,children:R.jsx(La,{kind:"tertiary",children:u("action.cancel")})})]})},HN="_user-email-delete-icon_q0ko9_21",VN="_user-email-field_q0ko9_29",kN="_email-modal-box_q0ko9_37",Mh={userEmailDeleteIcon:HN,userEmailField:VN,emailModalBox:kN},QN=tt(` + fragment UserEmail_email on UserEmail { + id + email + } +`),YN=tt(` + mutation RemoveEmail($id: ID!, $password: String) { + removeEmail(input: { userEmailId: $id, password: $password }) { + status + + user { + id + } + } + } +`),GN=({disabled:t,onClick:i})=>R.jsx(mm,{children:a=>R.jsx(Pu,{label:a("frontend.user_email.delete_button_title"),children:R.jsx(hb,{type:"button",disabled:t,className:"m-2",onClick:i,size:"var(--cpd-space-8x)",children:R.jsx(J1,{className:Mh.userEmailDeleteIcon})})})}),KN=({email:t,canRemove:i,shouldPromptPassword:a,onRemove:r})=>{const{t:l}=Pa(),[u,f]=_.useState(!1),d=Cu(QN,t),m=zh(),[p,v]=IN(),g=nC({mutationFn:({id:w,password:x})=>wt({query:YN,variables:{id:w,password:x}}),onSuccess:w=>{m.invalidateQueries({queryKey:["currentUserGreeting"]}),m.invalidateQueries({queryKey:["userEmails"]}),!(w.removeEmail.status!=="NOT_FOUND"&&w.removeEmail.status!=="REMOVED")&&(r?.(),f(!1))}}),S=_.useCallback(async w=>{let x;a&&(x=await p()),g.mutate({id:d.id,password:x})},[d.id,p,a,g.mutate]),b=_.useCallback(w=>{g.isPending||(g.reset(),f(w))},[g.isPending,g.reset]),E=g.data?.removeEmail.status??null;return R.jsxs(R.Fragment,{children:[R.jsx(FN,{title:l("frontend.user_email.delete_button_confirmation_modal.password_confirmation"),destructive:!0,ref:v}),R.jsx(E1,{children:R.jsxs(_1,{name:"email",children:[R.jsx(w1,{children:l("frontend.user_email.email")}),R.jsxs("div",{className:"flex items-center gap-2",children:[R.jsx(cD,{type:"email",readOnly:!0,value:d.email,className:Mh.userEmailField}),i&&R.jsxs(e_,{trigger:R.jsx(GN,{}),open:u,onOpenChange:b,children:[R.jsx(t_,{children:l("frontend.user_email.delete_button_confirmation_modal.body")}),R.jsxs(eO,{className:Mh.emailModalBox,children:[R.jsx(MN,{}),R.jsx("div",{children:d.email})]}),E==="INCORRECT_PASSWORD"&&R.jsx(iD,{children:l("frontend.user_email.delete_button_confirmation_modal.incorrect_password")}),R.jsxs("div",{className:"flex flex-col gap-4",children:[R.jsxs(La,{kind:"primary",type:"button",destructive:!0,onClick:S,disabled:g.isPending,Icon:g.isPending?void 0:J1,children:[!!g.isPending&&R.jsx(q1,{inline:!0}),l("frontend.user_email.delete_button_confirmation_modal.action")]}),R.jsx(sm,{asChild:!0,children:R.jsx(La,{disabled:g.isPending,kind:"tertiary",children:l("action.cancel")})})]})]})]})]})})]})},XN=tt(` + query UserEmailList( + $first: Int + $after: String + $last: Int + $before: String + ) { + viewer { + __typename + ... on User { + emails(first: $first, after: $after, last: $last, before: $before) { + edges { + cursor + node { + ...UserEmail_email + } + } + totalCount + pageInfo { + hasNextPage + hasPreviousPage + startCursor + endCursor + } + } + } + } + } +`),n_=(t={first:6})=>({queryKey:["userEmails",t],queryFn:({signal:i})=>wt({query:XN,variables:t,signal:i})}),ZN=tt(` + fragment UserEmailList_user on User { + hasPassword + } +`),JN=tt(` + fragment UserEmailList_siteConfig on SiteConfig { + emailChangeAllowed + passwordLoginEnabled + } +`),I7=({siteConfig:t,user:i})=>{const{emailChangeAllowed:a,passwordLoginEnabled:r}=Cu(JN,t),{hasPassword:l}=Cu(ZN,i),u=l&&r,[f,d]=_.useTransition(),[m,p]=TN(),v=vS(n_(m));if(v.data.viewer.__typename!=="User")throw qs();const g=v.data.viewer.emails,[S,b]=ON(m,g.pageInfo),E=A=>{d(()=>{p(A)})},w=()=>{d(()=>{p(G1)})},x=a&&g.totalCount>1;return R.jsxs(R.Fragment,{children:[g.edges.map(A=>R.jsx(KN,{email:A.node,canRemove:x,shouldPromptPassword:u,onRemove:w},A.cursor)),R.jsx(DN,{autoHide:!0,count:g.totalCount,onPrev:S?()=>E(S):null,onNext:b?()=>E(b):null,disabled:f})]})},WN=()=>ht(()=>import("./_account.index-Bgj2uEUe.js"),__vite__mapDeps([15,7,11,16,17,18,1,13,14,5,19,20,21,22,23,2]),import.meta.url),eL=tt(` + query UserProfile { + viewerSession { + __typename + ... on BrowserSession { + id + user { + ...AddEmailForm_user + ...UserEmailList_user + ...AccountDeleteButton_user + hasPassword + emails(first: 0) { + totalCount + } + } + } + } + + siteConfig { + emailChangeAllowed + passwordLoginEnabled + accountDeactivationAllowed + ...AddEmailForm_siteConfig + ...UserEmailList_siteConfig + ...PasswordChange_siteConfig + ...AccountDeleteButton_siteConfig + } + } +`),tL={queryKey:["userProfile"],queryFn:({signal:t})=>wt({query:eL,signal:t})},nL=Y1("action",[wn({action:Wr(["profile","org.matrix.profile"])}),wn({action:Wr(["sessions_list","org.matrix.sessions_list"])}),wn({action:Wr(["session_view","org.matrix.session_view"]),device_id:ja(Vs())}),wn({action:Wr(["session_end","org.matrix.session_end"]),device_id:ja(Vs())}),wn({action:ho("org.matrix.cross_signing_reset")}),wn({action:ho("org.matrix.plan_management")}),fN(k1({action:Q1()}))]),iL=ft({validateSearch:nL,beforeLoad({search:t}){switch(t.action){case"profile":case"org.matrix.profile":throw en({to:"/",search:{}});case"sessions_list":case"org.matrix.sessions_list":throw en({to:"/sessions"});case"session_view":case"org.matrix.session_view":throw t.device_id?en({to:"/devices/$",params:{_splat:t.device_id}}):en({to:"/sessions"});case"session_end":case"org.matrix.session_end":throw t.device_id?en({to:"/devices/$",params:{_splat:t.device_id}}):en({to:"/sessions"});case"org.matrix.cross_signing_reset":throw en({to:"/reset-cross-signing",search:{deepLink:!0}});case"org.matrix.plan_management":throw en({to:"/plan"})}},loader:({context:t})=>Promise.all([t.queryClient.ensureQueryData(n_()),t.queryClient.ensureQueryData(tL)]),component:dt(WN,"component")}),aL=()=>ht(()=>import("./sessions._id-dTqvDSLk.js"),__vite__mapDeps([24,25,26,19,20,21,22,5,27,12,16,17,28,6,8,1,29,2]),import.meta.url),sL=()=>ht(()=>import("./sessions._id-DOQcjR__.js"),__vite__mapDeps([30,31,1,2]),import.meta.url),rL=tt(` + query SessionDetail($id: ID!) { + viewerSession { + ... on Node { + id + } + } + + node(id: $id) { + __typename + id + ...CompatSession_detail + ...OAuth2Session_detail + ...BrowserSession_detail + } + } +`),oL=t=>({queryKey:["sessionDetail",t],queryFn:({signal:i})=>wt({query:rL,signal:i,variables:{id:t}})}),lL=ft({loader:({context:t,params:i})=>t.queryClient.ensureQueryData(oL(i.id)),notFoundComponent:dt(sL,"notFoundComponent"),component:dt(aL,"component")}),uL=()=>ht(()=>import("./reset-cross-signing.success-Mba-aBLI.js"),__vite__mapDeps([32,1,2]),import.meta.url),cL=ft({component:dt(uL,"component")}),fL=()=>ht(()=>import("./reset-cross-signing.cancelled-oBzzErte.js"),__vite__mapDeps([33,1,2]),import.meta.url),dL=ft({component:dt(fL,"component")}),hL=()=>ht(()=>import("./devices._-BA2mLuaB.js"),__vite__mapDeps([34,31,1,2]),import.meta.url),mL=tt(` + query CurrentViewer { + viewer { + __typename + ... on Node { + id + } + } + } +`),pL={queryKey:["currentViewer"],queryFn:({signal:t})=>wt({query:mL,signal:t})},gL=tt(` + query DeviceRedirect($deviceId: String!, $userId: ID!) { + session(deviceId: $deviceId, userId: $userId) { + __typename + ... on Node { + id + } + } + } +`),vL=(t,i)=>({queryKey:["deviceRedirect",t,i],queryFn:({signal:a})=>wt({query:gL,variables:{deviceId:t,userId:i},signal:a})}),yL=ft({async loader({context:t,params:i}){const a=await t.queryClient.fetchQuery(pL);if(a.viewer.__typename!=="User")throw qs({global:!0});const r=await t.queryClient.fetchQuery(vL(i._splat||"",a.viewer.id));throw r.session?en({to:"/sessions/$id",params:{id:r.session.id},replace:!0}):qs()},notFoundComponent:dt(hL,"notFoundComponent")}),SL=()=>ht(()=>import("./clients._id-CBcE7ZJr.js"),__vite__mapDeps([35,5,20,21,27,12,16,17,1,36,2]),import.meta.url),bL=tt(` + query OAuth2Client($id: ID!) { + oauth2Client(id: $id) { + ...OAuth2Client_detail + } + } +`),_L=t=>({queryKey:["oauth2Client",t],queryFn:({signal:i})=>wt({query:bL,variables:{id:t},signal:i})}),wL=ft({loader:({context:t,params:i})=>t.queryClient.ensureQueryData(_L(i.id)),component:dt(SL,"component")}),EL=()=>ht(()=>import("./password.recovery.index-BypsELRF.js"),__vite__mapDeps([37,38,8,13,14,1,2]),import.meta.url),CL=tt(` + query PasswordRecovery($ticket: String!) { + siteConfig { + ...RecoverPassword_siteConfig + } + + userRecoveryTicket(ticket: $ticket) { + status + ...RecoverPassword_userRecoveryTicket + } + } +`),RL=t=>({queryKey:["passwordRecovery",t],queryFn:({signal:i})=>wt({query:CL,signal:i,variables:{ticket:t}})}),xL=wn({ticket:Vs()}),AL=ft({validateSearch:xL,loaderDeps:({search:{ticket:t}})=>({ticket:t}),async loader({context:t,deps:{ticket:i}}){const{userRecoveryTicket:a}=await t.queryClient.ensureQueryData(RL(i));if(!a)throw qs()},component:dt(EL,"component")}),TL=()=>ht(()=>import("./password.change.index-DN6W0rA5.js"),__vite__mapDeps([39,38,8,13,14,16,17,1,2]),import.meta.url),OL=tt(` + query PasswordChange { + viewer { + __typename + ... on Node { + id + } + } + + siteConfig { + ...PasswordCreationDoubleInput_siteConfig + } + } +`),DL={queryKey:["passwordChange"],queryFn:({signal:t})=>wt({query:OL,signal:t})},ML=ft({loader:({context:t})=>t.queryClient.ensureQueryData(DL),component:dt(TL,"component")}),i_=()=>{const t=new Date(Date.now()-7776e6);return t.setHours(0,0,0,0),t.toISOString()},NL=()=>ht(()=>import("./_account.sessions.index-ChqhRgNC.js"),__vite__mapDeps([40,5,13,14,28,19,20,21,22,41,25,26,42,16,17,31,1,43,2]),import.meta.url),LL=6,UL=tt(` + query SessionsOverview { + viewer { + __typename + + ... on User { + id + ...BrowserSessionsOverview_user + } + } + } +`),jL={queryKey:["sessionsOverview"],queryFn:({signal:t})=>wt({query:UL,signal:t})},PL=tt(` + query AppSessionsList( + $before: String + $after: String + $first: Int + $last: Int + $lastActive: DateFilter + ) { + viewer { + __typename + + ... on User { + id + appSessions( + before: $before + after: $after + first: $first + last: $last + lastActive: $lastActive + state: ACTIVE + ) { + edges { + cursor + node { + __typename + ...CompatSession_session + ...OAuth2Session_session + } + } + + totalCount + pageInfo { + startCursor + endCursor + hasNextPage + hasPreviousPage + } + } + } + } + } +`),zL=(t,i)=>({queryKey:["appSessionList",i,t],queryFn:({signal:a})=>wt({query:PL,variables:{lastActive:i?{before:i_()}:void 0,...t},signal:a})}),$L=ym([wn({inactive:ja(ho(!0))}),K1]),BL=ft({validateSearch:$L,loaderDeps:({search:{inactive:t,...i}})=>({inactive:t,pagination:X1(i,LL,"backward")}),loader:({context:t,deps:{inactive:i,pagination:a}})=>Promise.all([t.queryClient.ensureQueryData(jL),t.queryClient.ensureQueryData(zL(a,i))]),component:dt(NL,"component")}),qL=()=>ht(()=>import("./_account.plan.index-az7l7N5p.js"),__vite__mapDeps([44,1,2]),import.meta.url),IL=tt(` + query PlanManagementTab { + siteConfig { + planManagementIframeUri + } + } +`),FL={queryKey:["planManagementTab"],queryFn:({signal:t})=>wt({query:IL,signal:t})},HL=ft({loader:async({context:t})=>{const{siteConfig:{planManagementIframeUri:i}}=await t.queryClient.ensureQueryData(FL);if(!i)throw en({to:"/",replace:!0});Qs.preload(i,{as:"document"})},component:dt(qL,"component")}),VL=()=>ht(()=>import("./password.change.success-BWTRx3Zp.js"),__vite__mapDeps([45,13,14,1,2]),import.meta.url),kL=ft({component:dt(VL,"component")}),QL=()=>ht(()=>import("./emails._id.verify-BEvFlfcg.js"),__vite__mapDeps([46,47,8,13,14,18,1,2]),import.meta.url),YL=tt(` + query VerifyEmail($id: ID!) { + userEmailAuthentication(id: $id) { + id + email + completedAt + } + } +`),a_=t=>({queryKey:["verifyEmail",t],queryFn:({signal:i})=>wt({query:YL,signal:i,variables:{id:t}})}),GL=ft({async loader({context:t,params:i}){const a=await t.queryClient.ensureQueryData(a_(i.id));if(!a.userEmailAuthentication)throw qs();if(a.userEmailAuthentication.completedAt)throw en({to:"/"})},component:dt(QL,"component")}),KL=()=>ht(()=>import("./emails._id.in-use-CSU8U9sW.js"),__vite__mapDeps([48,47,13,14,1,2]),import.meta.url),XL=ft({async loader({context:t,params:i}){const a=await t.queryClient.ensureQueryData(a_(i.id));if(!a.userEmailAuthentication)throw qs();if(!a.userEmailAuthentication.completedAt)throw en({to:"/emails/$id/verify",params:i})},component:dt(KL,"component")}),ZL=()=>ht(()=>import("./_account.sessions.browsers-DNRESZGR.js"),__vite__mapDeps([49,5,41,25,26,19,20,21,22,42,13,14,1,2]),import.meta.url),JL=6,WL=tt(` + query BrowserSessionList( + $first: Int + $after: String + $last: Int + $before: String + $lastActive: DateFilter + ) { + viewerSession { + __typename + ... on BrowserSession { + id + + user { + id + + browserSessions( + first: $first + after: $after + last: $last + before: $before + lastActive: $lastActive + state: ACTIVE + ) { + totalCount + + edges { + cursor + node { + id + ...BrowserSession_session + } + } + + pageInfo { + hasNextPage + hasPreviousPage + startCursor + endCursor + } + } + } + } + } + } +`),e7=(t,i)=>({queryKey:["browserSessionList",i,t],queryFn:({signal:a})=>wt({query:WL,variables:{lastActive:i?{before:i_()}:void 0,...t},signal:a})}),t7=ym([wn({inactive:ja(ho(!0))}),K1]),n7=ft({validateSearch:t7,loaderDeps:({search:{inactive:t,...i}})=>({inactive:t,pagination:X1(i,JL,"backward")}),loader:({context:t,deps:{inactive:i,pagination:a}})=>t.queryClient.ensureQueryData(e7(a,i)),component:dt(ZL,"component")}),ku=pN.update({id:"/reset-cross-signing",path:"/reset-cross-signing",getParentRoute:()=>Tn}),bo=SN.update({id:"/_account",getParentRoute:()=>Tn}),i7=EN.update({id:"/",path:"/",getParentRoute:()=>ku}),a7=iL.update({id:"/",path:"/",getParentRoute:()=>bo}),s7=lL.update({id:"/sessions/$id",path:"/sessions/$id",getParentRoute:()=>Tn}),r7=cL.update({id:"/success",path:"/success",getParentRoute:()=>ku}),o7=dL.update({id:"/cancelled",path:"/cancelled",getParentRoute:()=>ku}),l7=yL.update({id:"/devices/$",path:"/devices/$",getParentRoute:()=>Tn}),u7=wL.update({id:"/clients/$id",path:"/clients/$id",getParentRoute:()=>Tn}),c7=AL.update({id:"/password/recovery/",path:"/password/recovery/",getParentRoute:()=>Tn}),f7=ML.update({id:"/password/change/",path:"/password/change/",getParentRoute:()=>Tn}),d7=BL.update({id:"/sessions/",path:"/sessions/",getParentRoute:()=>bo}),h7=HL.update({id:"/plan/",path:"/plan/",getParentRoute:()=>bo}),m7=kL.update({id:"/password/change/success",path:"/password/change/success",getParentRoute:()=>Tn}),p7=GL.update({id:"/emails/$id/verify",path:"/emails/$id/verify",getParentRoute:()=>Tn}),g7=XL.update({id:"/emails/$id/in-use",path:"/emails/$id/in-use",getParentRoute:()=>Tn}),v7=n7.update({id:"/sessions/browsers",path:"/sessions/browsers",getParentRoute:()=>bo}),y7={AccountIndexRoute:a7,AccountSessionsBrowsersRoute:v7,AccountPlanIndexRoute:h7,AccountSessionsIndexRoute:d7},S7=bo._addFileChildren(y7),b7={ResetCrossSigningCancelledRoute:o7,ResetCrossSigningSuccessRoute:r7,ResetCrossSigningIndexRoute:i7},_7=ku._addFileChildren(b7),w7={AccountRoute:S7,ResetCrossSigningRoute:_7,ClientsIdRoute:u7,DevicesSplatRoute:l7,SessionsIdRoute:s7,EmailsIdInUseRoute:g7,EmailsIdVerifyRoute:p7,PasswordChangeSuccessRoute:m7,PasswordChangeIndexRoute:f7,PasswordRecoveryIndexRoute:c7},E7=Tn._addFileChildren(w7)._addFileTypes(),C7=IR({routeTree:E7,scrollRestoration:!0,basepath:$1.root,defaultPendingComponent:I1,defaultPreload:"intent",context:{queryClient:Th}});eN();bD.createRoot(document.getElementById("root")).render(R.jsx(_.StrictMode,{children:R.jsx(HE,{client:Th,children:R.jsx(T3,{children:R.jsx(db,{children:R.jsx(_.Suspense,{fallback:R.jsx(I1,{}),children:R.jsx(aM,{i18n:Rt,children:R.jsx(VR,{router:C7,context:{queryClient:Th}})})})})})})}));export{uo as $,q7 as A,La as B,qS as C,e_ as D,z7 as E,_1 as F,eO as G,B7 as H,Yh as I,pD as J,iD as K,pm as L,w2 as M,J1 as N,jS as O,mM as P,tT as Q,E1 as R,P7 as S,Xy as T,mb as U,j7 as V,Ls as W,Lt as X,tn as Y,zu as Z,Gn as _,Qh as a,IN as a0,FN as a1,Du as a2,I7 as a3,re as a4,lL as a5,JO as a6,yL as a7,P0 as a8,wL as a9,kh as aa,sn as ab,ht as ac,BL as ad,ON as ae,i_ as af,D7 as ag,FL as ah,O7 as ai,GL as aj,a_ as ak,L1 as al,ZD as am,KD as an,Rh as ao,Ua as ap,ID as aq,HD as ar,P1 as as,XL as at,n7 as au,ex as av,Cu as b,zh as c,nC as d,t_ as e,w1 as f,cD as g,q1 as h,sm as i,R as j,tt as k,wt as l,Pu as m,hb as n,vS as o,qs as p,T7 as q,_ as r,EN as s,GR as t,Pa as u,hm as v,et as w,Qn as x,QO as y,$7 as z}; +//# sourceMappingURL=main-CiAhdYQG.js.map diff --git a/mas/share/assets/main-CiAhdYQG.js.br b/mas/share/assets/main-CiAhdYQG.js.br new file mode 100644 index 0000000..03dc218 Binary files /dev/null and b/mas/share/assets/main-CiAhdYQG.js.br differ diff --git a/mas/share/assets/main-CiAhdYQG.js.gz b/mas/share/assets/main-CiAhdYQG.js.gz new file mode 100644 index 0000000..a678f47 Binary files /dev/null and b/mas/share/assets/main-CiAhdYQG.js.gz differ diff --git a/mas/share/assets/main-CiAhdYQG.js.map b/mas/share/assets/main-CiAhdYQG.js.map new file mode 100644 index 0000000..6978349 --- /dev/null +++ b/mas/share/assets/main-CiAhdYQG.js.map @@ -0,0 +1 @@ +{"version":3,"mappings":"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D,EACA3C,EACAqG,EACAC,GAEF,MACF,IAAK,IACH,MACF,IAAK,IACHE,EAAyBxG,EAAa,UACtC91F,EAAK81F,EAAa,UACTA,EAAa,gBAAtB,KACIwG,EAAuB,YAAc,EACnCJ,GACEzD,EACA3C,EACAqG,EACAC,CACd,EACYI,GAAwC/D,EAAc3C,CAAY,EACpEwG,EAAuB,YAAc,EACnCJ,GACEzD,EACA3C,EACAqG,EACAC,CACd,GACcE,EAAuB,aAAe,EACxCG,GACEhE,EACA3C,EACAqG,EACAC,GACOtG,EAAa,aAAe,SAAnC,GAA6C,EAC3D,GACMD,EAAQ,MAAQkG,GAAmC/7F,EAAI81F,CAAY,EACnE,MACF,IAAK,IACHoG,GACEzD,EACA3C,EACAqG,EACAC,GAEFvG,EAAQ,MACNoG,GAA8BnG,EAAa,UAAWA,CAAY,EACpE,MACF,QACEoG,GACEzD,EACA3C,EACAqG,EACAC,EAER,CACA,CACA,SAASK,GACPb,EACAvB,EACAqC,EACAC,EACAd,EACA,CAIA,IAHAA,EACEA,KACQxB,EAAY,aAAe,SAAlC,GAA4C,IAC1CA,EAAcA,EAAY,MAAgBA,IAAT,MAAwB,CAC5D,IAAI5B,EAAemD,EACjB9F,EAAeuE,EACf8B,EAAiBO,EACjBN,EAAuBO,EACvB9G,EAAQC,EAAa,MACvB,OAAQA,EAAa,IAAG,CACtB,IAAK,GACL,IAAK,IACL,IAAK,IACH2G,GACEhE,EACA3C,EACAqG,EACAC,EACAP,GAEFjG,GAA0B,EAAGE,CAAY,EACzC,MACF,IAAK,IACH,MACF,IAAK,IACH,IAAI5/D,EAAW4/D,EAAa,UACnBA,EAAa,gBAAtB,KACI5/D,EAAS,YAAc,EACrBumE,GACEhE,EACA3C,EACAqG,EACAC,EACAP,CAChB,EACcW,GACE/D,EACA3C,CAChB,GACc5/D,EAAS,aAAe,EAC1BumE,GACEhE,EACA3C,EACAqG,EACAC,EACAP,CACd,GACQA,GACEhG,EAAQ,MACRkG,GACEjG,EAAa,UACbA,GAEJ,MACF,IAAK,IACH2G,GACEhE,EACA3C,EACAqG,EACAC,EACAP,GAEFA,GACEhG,E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EAAc,CACtC,OAAQA,EAAY,CAClB,IAAK,eACL,IAAK,SACL,IAAK,QACL,IAAK,QACL,IAAK,cACL,IAAK,OACL,IAAK,MACL,IAAK,WACL,IAAK,WACL,IAAK,UACL,IAAK,YACL,IAAK,OACL,IAAK,UACL,IAAK,WACL,IAAK,QACL,IAAK,UACL,IAAK,UACL,IAAK,WACL,IAAK,QACL,IAAK,YACL,IAAK,UACL,IAAK,QACL,IAAK,QACL,IAAK,OACL,IAAK,gBACL,IAAK,cACL,IAAK,YACL,IAAK,aACL,IAAK,QACL,IAAK,SACL,IAAK,SACL,IAAK,SACL,IAAK,SACL,IAAK,cACL,IAAK,WACL,IAAK,aACL,IAAK,eACL,IAAK,SACL,IAAK,kBACL,IAAK,YACL,IAAK,mBACL,IAAK,iBACL,IAAK,oBACL,IAAK,aACL,IAAK,YACL,IAAK,cACL,IAAK,OACL,IAAK,mBACL,IAAK,QACL,IAAK,aACL,IAAK,WACL,IAAK,SACL,IAAK,cACH,MAAO,GACT,IAAK,OACL,IAAK,YACL,IAAK,WACL,IAAK,YACL,IAAK,WACL,IAAK,YACL,IAAK,WACL,IAAK,YACL,IAAK,cACL,IAAK,aACL,IAAK,cACL,IAAK,SACL,IAAK,YACL,IAAK,QACL,IAAK,aACL,IAAK,aACL,IAAK,eACL,IAAK,eACH,MAAO,GACT,IAAK,UACH,OAAQlO,GAAuB,EAAE,CAC/B,KAAKC,GACH,MAAO,GACT,KAAKC,GACH,MAAO,GACT,KAAKC,GACL,KAAKC,GACH,MAAO,IACT,KAAKC,GACH,MAAO,WACT,QACE,MAAO,GACjB,CACI,QACE,MAAO,GACb,CACA,CACA,IAAIsrC,GAA4B,GAC9BC,GAAc,KACdC,GAAa,KACbC,GAAc,KACdC,GAAiB,IAAI,IACrBC,GAAwB,IAAI,IAC5BC,GAAiC,GACjCR,GACE,sPAAsP,MACpP,KAEN,SAASF,GAAuBr9B,EAAcn3C,EAAa,CACzD,OAAQm3C,EAAY,CAClB,IAAK,UACL,IAAK,WACH09B,GAAc,KACd,MACF,IAAK,YACL,IAAK,YACHC,GAAa,KACb,MACF,IAAK,YACL,IAAK,WACHC,GAAc,KACd,MACF,IAAK,cACL,IAAK,aACHC,GAAe,OAAOh1E,EAAY,SAAS,EAC3C,MACF,IAAK,oBACL,IAAK,qBACHi1E,GAAsB,OAAOj1E,EAAY,SAAS,CACxD,CACA,CACA,SAASm1E,GACPC,EACAf,EACAl9B,EACAszB,EACAa,EACAtrE,EACA,CACA,OACWo1E,IAAT,MACAA,EAAoB,cAAgBp1E,GAGjCo1E,EAAsB,CACrB,UAAWf,EACX,aAAcl9B,EACd,iBAAkBszB,EAClB,YAAazqE,EACb,iBAAkB,CAACsrE,CAAe,GAE3B+I,IAAT,OACIA,EAAYlmC,GAAoBkmC,CAAS,EAClCA,IAAT,MAAsBF,GAA2BE,CAAS,GAC5De,IAEJA,EAAoB,kBAAoB3K,EACxC4J,EAAYe,EAAoB,iBACvB9J,IAAT,MACS+I,EAAU,QAAQ/I,CAAe,IAAxC,IACA+I,EAAU,KAAK/I,CAAe,EACzB8J,EACT,CACA,SAASX,GACPJ,EACAl9B,EACAszB,EACAa,EACAtrE,EACA,CACA,OAAQm3C,EAAY,CAClB,IAAK,UACH,OACG09B,GAAcM,GACbN,GACAR,EACAl9B,EACAszB,EACAa,EACAtrE,GAEF,GAEJ,IAAK,YACH,OACG80E,GAAaK,GACZL,GACAT,EACAl9B,EACAszB,EACAa,EACAtrE,GAEF,GAEJ,IAAK,YACH,OACG+0E,GAAcI,GACbJ,GACAV,EACAl9B,EACAszB,EACAa,EACAtrE,GAEF,GAEJ,IAAK,cACH,IAAIq1E,EAAYr1E,EAAY,UAC5B,OAAAg1E,GAAe,IACbK,EACAF,GACEH,GAAe,IAAIK,CAAS,GAAK,KACjChB,EACAl9B,EACAszB,EACAa,EACAtrE,CACV,GAEa,GACT,IAAK,oBACH,OACGq1E,EAAYr1E,EAAY,UACzBi1E,GAAsB,IACpBI,EACAF,GACEF,GAAsB,IAAII,CAAS,GAAK,KACxChB,EACAl9B,EACAszB,EACAa,EACAtrE,CACZ,GAEQ,EAER,CACE,MAAO,EACT,CACA,SAASs1E,GAA+BC,EAAc,CACpD,IAAItnC,EAAaF,GAA2BwnC,EAAa,MAAM,EAC/D,GAAatnC,IAAT,KAAqB,CACvB,IAAIhJ,EAAiBF,EAAuBkJ,CAAU,EACtD,GAAahJ,IAAT,MACF,GAAMgJ,EAAahJ,EAAe,IAAagJ,IAAP,IACtC,GACIA,EAAa/I,EAA6BD,CAAc,EACjDgJ,IAAT,KACA,CACAsnC,EAAa,UAAYtnC,EACzBf,GAAgBqoC,EAAa,SAAU,UAAY,CACjDnB,GAAkCnvC,CAAc,CAC5D,CAAW,EACD,MACV,UACwBgJ,IAAP,IACT,GACIA,EAAa7I,EAA6BH,CAAc,EACjDgJ,IAAT,KACA,CACAsnC,EAAa,UAAYtnC,EACzBf,GAAgBqoC,EAAa,SAAU,UAAY,CACjDnB,GAAkCnvC,CAAc,CAC5D,CAAW,EACD,MACV,UAEcgJ,IAAN,GACAhJ,EAAe,UAAU,QAAQ,cAAc,aAC/C,CACAswC,EAAa,UACLtwC,EAAe,MAArB,EACIA,EAAe,UAAU,cACzB,KACN,MACR,EACA,CACEswC,EAAa,UAAY,IAC3B,CACA,SAASC,GAAmCC,EAAa,CACvD,GAAaA,EAAY,YAArB,KAAgC,MAAO,GAC3C,QACMC,EAAmBD,EAAY,iBACnC,EAAIC,EAAiB,QAErB,CACA,IAAIC,EAAgBrB,GAA0BmB,EAAY,WAAW,EACrE,GAAaE,IAAT,KAAwB,CAC1BA,EAAgBF,EAAY,YAC5B,IAAIG,EAAmB,IAAID,EAAc,YACvCA,EAAc,KACdA,GAEFtjC,GAAwBujC,EACxBD,EAAc,OAAO,cAAcC,CAAgB,EACnDvjC,GAAwB,IAC9B,KACM,QACGqjC,EAAmBvnC,GAAoBwnC,CAAa,EAC5CD,IAAT,MACEvB,GAA2BuB,CAAgB,EAC5CD,EAAY,UAAYE,EACzB,GAEJD,EAAiB,MAAK,CAC1B,CACE,MAAO,EACT,CACA,SAASG,GAAwCJ,EAAarpI,EAAKswD,EAAK,CACtE84E,GAAmCC,CAAW,GAAK/4E,EAAI,OAAOtwD,CAAG,CACnE,CACA,SAAS0pI,IAAwB,CAC/BlB,GAA4B,GACnBC,KAAT,MACEW,GAAmCX,EAAW,IAC7CA,GAAc,MACRC,KAAT,MACEU,GAAmCV,EAAU,IAC5CA,GAAa,MACPC,KAAT,MACES,GAAmCT,EAAW,IAC7CA,GAAc,MACjBC,GAAe,QAAQa,EAAuC,EAC9DZ,GAAsB,QAAQY,EAAuC,CACvE,CACA,SAASE,GAA4BN,EAAaO,EAAW,CAC3DP,EAAY,YAAcO,IACtBP,EAAY,UAAY,KAC1Bb,KACIA,GAA4B,GAC9BhwC,EAAU,0BACRA,EAAU,wBACVkxC,EACR,GACA,CACA,IAAIG,GAA2B,KAC/B,SAASC,GAA4BC,EAAoB,CACvDF,KAA6BE,IACzBF,GAA2BE,EAC7BvxC,EAAU,0BACRA,EAAU,wBACV,UAAY,CACVqxC,KAA6BE,IAC1BF,GAA2B,MAC9B,QAAS9lI,EAAI,EAAGA,EAAIgmI,EAAmB,OAAQhmI,GAAK,EAAG,CACrD,IAAIghC,EAAOglG,EAAmBhmI,CAAC,EAC7BimI,EAAoBD,EAAmBhmI,EAAI,CAAC,EAC5CqsF,EAAW25C,EAAmBhmI,EAAI,CAAC,EACrC,GAAmB,OAAOimI,GAAtB,WACF,IAAazB,GAA2ByB,GAAqBjlG,CAAI,IAA7D,KACF,SACG,MACP,IAAIy/F,EAAWziC,GAAoBh9D,CAAI,EAC9By/F,IAAT,OACGuF,EAAmB,OAAOhmI,EAAG,CAAC,EAC9BA,GAAK,EACN6gH,GACE4f,EACA,CACE,QAAS,GACT,KAAMp0C,EACN,OAAQrrD,EAAK,OACb,OAAQilG,GAEVA,EACA55C,CACd,EACA,CACA,CACA,EACA,CACA,SAASwhC,GAAiBgY,EAAW,CACnC,SAASK,EAAQZ,EAAa,CAC5B,OAAOM,GAA4BN,EAAaO,CAAS,CAC7D,CACWnB,KAAT,MAAwBkB,GAA4BlB,GAAamB,CAAS,EACjElB,KAAT,MAAuBiB,GAA4BjB,GAAYkB,CAAS,EAC/DjB,KAAT,MAAwBgB,GAA4BhB,GAAaiB,CAAS,EAC1EhB,GAAe,QAAQqB,CAAO,EAC9BpB,GAAsB,QAAQoB,CAAO,EACrC,QAASlmI,EAAI,EAAGA,EAAI+kI,GAA+B,OAAQ/kI,IAAK,CAC9D,IAAIolI,EAAeL,GAA+B/kI,CAAC,EACnDolI,EAAa,YAAcS,IAAcT,EAAa,UAAY,KACtE,CACE,KAEE,EAAIL,GAA+B,SACjC/kI,EAAI+kI,GAA+B,CAAC,EAAa/kI,EAAE,YAAX,OAG1CmlI,GAA+BnlI,CAAC,EACrBA,EAAE,YAAX,MAAwB+kI,GAA+B,MAAK,EAEhE,GADA/kI,GAAK6lI,EAAU,eAAiBA,GAAW,kBAC/B7lI,GAAR,KACF,IAAKolI,EAAe,EAAGA,EAAeplI,EAAE,OAAQolI,GAAgB,EAAG,CACjE,IAAIpkG,EAAOhhC,EAAEolI,CAAY,EACvBa,EAAoBjmI,EAAEolI,EAAe,CAAC,EACtCe,EAAYnlG,EAAKo8D,EAAgB,GAAK,KACxC,GAAmB,OAAO6oC,GAAtB,WACFE,GAAaJ,GAA4B/lI,CAAC,UACnCmmI,EAAW,CAClB,IAAI9+H,EAAS,KACb,GAAI4+H,GAAqBA,EAAkB,aAAa,YAAY,GAClE,GACIjlG,EAAOilG,EACRE,EAAYF,EAAkB7oC,EAAgB,GAAK,KAEpD/1F,EAAS8+H,EAAU,mBAEN3B,GAA2BxjG,CAAI,IAAxC,KAA2C,cAE9C35B,EAAS8+H,EAAU,OACT,OAAO9+H,GAAtB,WACKrH,EAAEolI,EAAe,CAAC,EAAI/9H,GACtBrH,EAAE,OAAOolI,EAAc,CAAC,EAAIA,GAAgB,GACjDW,GAA4B/lI,CAAC,CACrC,CACA,CACA,CACA,SAASomI,IAAsC,CAC7C,SAASC,EAAe/3H,EAAO,CAC7BA,EAAM,cACmBA,EAAM,OAA7B,oBACAA,EAAM,UAAU,CACd,QAAS,UAAY,CACnB,OAAO,IAAI,QAAQ,SAAU3N,EAAS,CACpC,OAAQ2lI,EAAiB3lI,CACrC,CAAW,CACX,EACQ,WAAY,SACZ,OAAQ,QAChB,CAAO,CACP,CACE,SAAS4lI,GAAyB,CACvBD,IAAT,OAA4BA,EAAc,EAAKA,EAAiB,MAChEE,GAAe,WAAWC,EAAqB,EAAE,CACrD,CACE,SAASA,GAAsB,CAC7B,GAAI,CAACD,GAAe,CAAC,WAAW,WAAY,CAC1C,IAAIE,EAAe,WAAW,aAC9BA,GACUA,EAAa,KAArB,MACA,WAAW,SAASA,EAAa,IAAK,CACpC,MAAOA,EAAa,SAAQ,EAC5B,KAAM,mBACN,QAAS,SACnB,CAAS,CACT,CACA,CACE,GAAiB,OAAO,YAApB,SAAgC,CAClC,IAAIF,EAAc,GAChBF,EAAiB,KACnB,kBAAW,iBAAiB,WAAYD,CAAc,EACtD,WAAW,iBAAiB,kBAAmBE,CAAsB,EACrE,WAAW,iBAAiB,gBAAiBA,CAAsB,EACnE,WAAWE,EAAqB,GAAG,EAC5B,UAAY,CACjBD,EAAc,GACd,WAAW,oBAAoB,WAAYH,CAAc,EACzD,WAAW,oBAAoB,kBAAmBE,CAAsB,EACxE,WAAW,oBAAoB,gBAAiBA,CAAsB,EAC7DD,IAAT,OAA4BA,EAAc,EAAKA,EAAiB,KACtE,CACA,CACA,CACA,SAASK,GAAaC,EAAc,CAClC,KAAK,cAAgBA,CACvB,CACAC,GAAsB,UAAU,OAASF,GAAa,UAAU,OAC9D,SAAUp0H,EAAU,CAClB,IAAIizC,EAAO,KAAK,cAChB,GAAaA,IAAT,KAAe,MAAM,MAAMvlB,EAAuB,GAAG,CAAC,EAC1D,IAAIoB,EAAUmkB,EAAK,QACjBu1C,EAAO6lB,GAAiB,EAC1BijB,GAAoBxiG,EAAS05D,EAAMxoF,EAAUizC,EAAM,KAAM,IAAI,CACjE,EACAqhF,GAAsB,UAAU,QAAUF,GAAa,UAAU,QAC/D,UAAY,CACV,IAAInhF,EAAO,KAAK,cAChB,GAAaA,IAAT,KAAe,CACjB,KAAK,cAAgB,KACrB,IAAI9kB,EAAY8kB,EAAK,cACrBq+E,GAAoBr+E,EAAK,QAAS,EAAG,KAAMA,EAAM,KAAM,IAAI,EAC3Do9C,GAAe,EACfliE,EAAU28D,EAA4B,EAAI,IAChD,CACA,EACA,SAASwpC,GAAsBD,EAAc,CAC3C,KAAK,cAAgBA,CACvB,CACAC,GAAsB,UAAU,2BAA6B,SAAUh9H,EAAQ,CAC7E,GAAIA,EAAQ,CACV,IAAIgzF,EAAiBD,GAAqB,EAC1C/yF,EAAS,CAAE,UAAW,KAAM,OAAQA,EAAQ,SAAUgzF,CAAc,EACpE,QACM78F,EAAI,EACRA,EAAI+kI,GAA+B,QAC7BloC,IAAN,GACAA,EAAiBkoC,GAA+B/kI,CAAC,EAAE,SACnDA,IACD,CACD+kI,GAA+B,OAAO/kI,EAAG,EAAG6J,CAAM,EAC5C7J,IAAN,GAAWmlI,GAA+Bt7H,CAAM,CACpD,CACA,EACA,IAAIi9H,GAAmD5qG,EAAM,QAC7D,GAEE4qG,KADA,SAGA,MAAM,MACJ7mG,EACE,IACA6mG,GACA,QACN,GAEA7wC,EAAwB,YAAc,SAAU8wC,EAAoB,CAClE,IAAIlyC,EAAQkyC,EAAmB,gBAC/B,GAAelyC,IAAX,OACF,MAAmB,OAAOkyC,EAAmB,QAAzC,WACI,MAAM9mG,EAAuB,GAAG,CAAC,GACzC8mG,EAAqB,OAAO,KAAKA,CAAkB,EAAE,KAAK,GAAG,EACvD,MAAM9mG,EAAuB,IAAK8mG,CAAkB,CAAC,GAE7D,OAAAA,EAAqB3xC,EAA8BP,CAAK,EACxDkyC,EACWA,IAAT,KACIrxC,EAAyBqxC,CAAkB,EAC3C,KACNA,EACWA,IAAT,KAA8B,KAAOA,EAAmB,UACnDA,CACT,EACA,IAAIC,GAA+B,CACjC,WAAY,EACZ,QAAS,SACT,oBAAqB,YACrB,qBAAsB11H,EACtB,kBAAmB,UAErB,GAAoB,OAAO,+BAAvB,IAAuD,CACzD,IAAI21H,GAA0B,+BAC9B,GACE,CAACA,GAAwB,YACzBA,GAAwB,cAExB,GAAI,CACD3tC,GAAa2tC,GAAwB,OACpCD,IAECztC,GAAe0tC,EACxB,MAAkB,EAClB,CACA,OAAAC,GAAA,WAAqB,SAAUxmG,EAAW1hC,EAAS,CACjD,GAAI,CAAC21F,EAAiBj0D,CAAS,EAAG,MAAM,MAAMT,EAAuB,GAAG,CAAC,EACzE,IAAIyjG,EAAe,GACjB5hB,EAAmB,GACnBmB,EAAkBJ,GAClBO,EAAgBN,GAChByU,EAAqBxU,GACvB,OAAS/jH,GAAT,OAEUA,EAAQ,sBAAf,KAAuC0kI,EAAe,IAC5C1kI,EAAQ,mBAAnB,SACG8iH,EAAmB9iH,EAAQ,kBACnBA,EAAQ,kBAAnB,SACGikH,EAAkBjkH,EAAQ,iBAClBA,EAAQ,gBAAnB,SAAqCokH,EAAgBpkH,EAAQ,eAClDA,EAAQ,qBAAnB,SACGu4H,EAAqBv4H,EAAQ,qBAClCA,EAAUukI,GACR7iG,EACA,EACA,GACA,KACA,KACAgjG,EACA5hB,EACA,KACAmB,EACAG,EACAmU,EACA6O,IAEF1lG,EAAU28D,EAA4B,EAAIr+F,EAAQ,QAClDwqH,GAA2B9oF,CAAS,EAC7B,IAAIimG,GAAa3nI,CAAO,CACjC,EACAkoI,GAAA,YAAsB,SAAUxmG,EAAW8iG,EAAiBxkI,EAAS,CACnE,GAAI,CAAC21F,EAAiBj0D,CAAS,EAAG,MAAM,MAAMT,EAAuB,GAAG,CAAC,EACzE,IAAIyjG,EAAe,GACjB5hB,EAAmB,GACnBmB,EAAkBJ,GAClBO,EAAgBN,GAChByU,EAAqBxU,GACrBugB,EAAY,KACd,OAAStkI,GAAT,OAEUA,EAAQ,sBAAf,KAAuC0kI,EAAe,IAC5C1kI,EAAQ,mBAAnB,SACG8iH,EAAmB9iH,EAAQ,kBACnBA,EAAQ,kBAAnB,SACGikH,EAAkBjkH,EAAQ,iBAClBA,EAAQ,gBAAnB,SAAqCokH,EAAgBpkH,EAAQ,eAClDA,EAAQ,qBAAnB,SACGu4H,EAAqBv4H,EAAQ,oBACrBA,EAAQ,YAAnB,SAAiCskI,EAAYtkI,EAAQ,YACvDwkI,EAAkBD,GAChB7iG,EACA,EACA,GACA8iG,EACQxkI,GAAoB,KAC5B0kI,EACA5hB,EACAwhB,EACArgB,EACAG,EACAmU,EACA6O,IAEF5C,EAAgB,QAAUG,GAAqB,IAAI,EACnD3kI,EAAUwkI,EAAgB,QAC1BE,EAAe9iB,GAAiB,EAChC8iB,EAAehnC,GAAgCgnC,CAAY,EAC3D5hB,EAAmBpL,GAAagtB,CAAY,EAC5C5hB,EAAiB,SAAW,KAC5BnL,GAAc33G,EAAS8iH,EAAkB4hB,CAAY,EACrD1kI,EAAU0kI,EACVF,EAAgB,QAAQ,MAAQxkI,EAChCo8F,GAAkBooC,EAAiBxkI,CAAO,EAC1Ci0H,GAAsBuQ,CAAe,EACrC9iG,EAAU28D,EAA4B,EAAImmC,EAAgB,QAC1Dha,GAA2B9oF,CAAS,EAC7B,IAAImmG,GAAsBrD,CAAe,CAClD,EACA0D,GAAA,QAAkB,8DC9qflB,SAASjmG,GAAW,CAElB,GACE,SAAO,+BAAmC,KAC1C,OAAO,+BAA+B,UAAa,YAcrD,GAAI,CAEF,+BAA+B,SAASA,CAAQ,QACzClU,EAAK,CAGZ,QAAQ,MAAMA,CAAG,EAErB,CAKE,OAAAkU,EAAA,EACAkmG,GAAA,QAAiB9qI,GAAA,yBClCnB,MAAM+qI,GAAW5+G,GAAO,OAAOA,GAAQ,SACjC6+G,GAAQ,IAAM,CAClB,IAAIlpH,EACAmpH,EACJ,MAAM7gI,EAAU,IAAI,QAAQ,CAAC9F,EAAS0B,IAAW,CAC/C8b,EAAMxd,EACN2mI,EAAMjlI,CACR,CAAC,EACD,OAAAoE,EAAQ,QAAU0X,EAClB1X,EAAQ,OAAS6gI,EACV7gI,CACT,EACM8gI,GAAazgI,GACbA,GAAU,KAAa,GACpB,GAAKA,EAERhH,GAAO,CAACT,EAAGu3B,EAAGy1B,IAAM,CACxBhtD,EAAE,QAAQ+O,GAAK,CACTwoB,EAAExoB,CAAC,IAAGi+C,EAAEj+C,CAAC,EAAIwoB,EAAExoB,CAAC,EACtB,CAAC,CACH,EACMo5H,GAA4B,OAC5BC,GAAWxrI,GAAOA,GAAOA,EAAI,QAAQ,KAAK,EAAI,GAAKA,EAAI,QAAQurI,GAA2B,GAAG,EAAIvrI,EACjGyrI,GAAuB5gI,GAAU,CAACA,GAAUsgI,GAAStgI,CAAM,EAC3D6gI,GAAgB,CAAC7gI,EAAQ4U,EAAMksH,IAAU,CAC7C,MAAMlhE,EAAS0gE,GAAS1rH,CAAI,EAAWA,EAAK,MAAM,GAAG,EAArBA,EAChC,IAAImsH,EAAa,EACjB,KAAOA,EAAanhE,EAAM,OAAS,GAAG,CACpC,GAAIghE,GAAqB5gI,CAAM,EAAG,MAAO,GACzC,MAAM7K,EAAMwrI,GAAS/gE,EAAMmhE,CAAU,CAAC,EAClC,CAAC/gI,EAAO7K,CAAG,GAAK2rI,IAAO9gI,EAAO7K,CAAG,EAAI,IAAI2rI,GACzC,OAAO,UAAU,eAAe,KAAK9gI,EAAQ7K,CAAG,EAClD6K,EAASA,EAAO7K,CAAG,EAEnB6K,EAAS,GAEX,EAAE+gI,CACJ,CACA,OAAIH,GAAqB5gI,CAAM,EAAU,GAClC,CACL,IAAKA,EACL,EAAG2gI,GAAS/gE,EAAMmhE,CAAU,CAAC,CACjC,CACA,EACMC,GAAU,CAAChhI,EAAQ4U,EAAMywD,IAAa,CAC1C,KAAM,CACJ,IAAA3jD,EACA,EAAA1I,CACJ,EAAM6nH,GAAc7gI,EAAQ4U,EAAM,MAAM,EACtC,GAAI8M,IAAQ,QAAa9M,EAAK,SAAW,EAAG,CAC1C8M,EAAI1I,CAAC,EAAIqsD,EACT,MACF,CACA,IAAIpuD,EAAIrC,EAAKA,EAAK,OAAS,CAAC,EACxB4D,EAAI5D,EAAK,MAAM,EAAGA,EAAK,OAAS,CAAC,EACjCiD,EAAOgpH,GAAc7gI,EAAQwY,EAAG,MAAM,EAC1C,KAAOX,EAAK,MAAQ,QAAaW,EAAE,QACjCvB,EAAI,GAAGuB,EAAEA,EAAE,OAAS,CAAC,CAAC,IAAIvB,CAAC,GAC3BuB,EAAIA,EAAE,MAAM,EAAGA,EAAE,OAAS,CAAC,EAC3BX,EAAOgpH,GAAc7gI,EAAQwY,EAAG,MAAM,EAClCX,GAAM,KAAO,OAAOA,EAAK,IAAI,GAAGA,EAAK,CAAC,IAAIZ,CAAC,EAAE,EAAM,MACrDY,EAAK,IAAM,QAGfA,EAAK,IAAI,GAAGA,EAAK,CAAC,IAAIZ,CAAC,EAAE,EAAIouD,CAC/B,EACM47D,GAAW,CAACjhI,EAAQ4U,EAAMywD,EAAU67D,IAAW,CACnD,KAAM,CACJ,IAAAx/G,EACA,EAAA1I,CACJ,EAAM6nH,GAAc7gI,EAAQ4U,EAAM,MAAM,EACtC8M,EAAI1I,CAAC,EAAI0I,EAAI1I,CAAC,GAAK,GACnB0I,EAAI1I,CAAC,EAAE,KAAKqsD,CAAQ,CACtB,EACM87D,GAAU,CAACnhI,EAAQ4U,IAAS,CAChC,KAAM,CACJ,IAAA8M,EACA,EAAA1I,CACJ,EAAM6nH,GAAc7gI,EAAQ4U,CAAI,EAC9B,GAAK8M,GACA,OAAO,UAAU,eAAe,KAAKA,EAAK1I,CAAC,EAChD,OAAO0I,EAAI1I,CAAC,CACd,EACMooH,GAAsB,CAACpnI,EAAMqnI,EAAalsI,IAAQ,CACtD,MAAMwB,EAAQwqI,GAAQnnI,EAAM7E,CAAG,EAC/B,OAAIwB,IAAU,OACLA,EAEFwqI,GAAQE,EAAalsI,CAAG,CACjC,EACMmsI,GAAa,CAACv+H,EAAQijG,EAAQu7B,IAAc,CAChD,UAAWvyG,KAAQg3E,EACbh3E,IAAS,aAAeA,IAAS,gBAC/BA,KAAQjsB,EACNu9H,GAASv9H,EAAOisB,CAAI,CAAC,GAAKjsB,EAAOisB,CAAI,YAAa,QAAUsxG,GAASt6B,EAAOh3E,CAAI,CAAC,GAAKg3E,EAAOh3E,CAAI,YAAa,OAC5GuyG,IAAWx+H,EAAOisB,CAAI,EAAIg3E,EAAOh3E,CAAI,GAEzCsyG,GAAWv+H,EAAOisB,CAAI,EAAGg3E,EAAOh3E,CAAI,EAAGuyG,CAAS,EAGlDx+H,EAAOisB,CAAI,EAAIg3E,EAAOh3E,CAAI,GAIhC,OAAOjsB,CACT,EACMy+H,GAAczsH,GAAOA,EAAI,QAAQ,sCAAuC,MAAM,EACpF,IAAI0sH,GAAa,CACf,IAAK,QACL,IAAK,OACL,IAAK,OACL,IAAK,SACL,IAAK,QACL,IAAK,QACP,EACA,MAAMz2H,GAAShR,GACTsmI,GAAStmI,CAAI,EACRA,EAAK,QAAQ,aAAc81B,GAAK2xG,GAAW3xG,CAAC,CAAC,EAE/C91B,EAET,MAAM0nI,EAAY,CAChB,YAAYn2D,EAAU,CACpB,KAAK,SAAWA,EAChB,KAAK,UAAY,IAAI,IACrB,KAAK,YAAc,EACrB,CACA,UAAUo2D,EAAS,CACjB,MAAMC,EAAkB,KAAK,UAAU,IAAID,CAAO,EAClD,GAAIC,IAAoB,OACtB,OAAOA,EAET,MAAMC,EAAY,IAAI,OAAOF,CAAO,EACpC,OAAI,KAAK,YAAY,SAAW,KAAK,UACnC,KAAK,UAAU,OAAO,KAAK,YAAY,MAAK,CAAE,EAEhD,KAAK,UAAU,IAAIA,EAASE,CAAS,EACrC,KAAK,YAAY,KAAKF,CAAO,EACtBE,CACT,CACF,CACA,MAAMC,GAAQ,CAAC,IAAK,IAAK,IAAK,IAAK,GAAG,EAChCC,GAAiC,IAAIL,GAAY,EAAE,EACnDM,GAAsB,CAAC7sI,EAAK8sI,EAAaC,IAAiB,CAC9DD,EAAcA,GAAe,GAC7BC,EAAeA,GAAgB,GAC/B,MAAMC,EAAgBL,GAAM,OAAOj2H,GAAKo2H,EAAY,QAAQp2H,CAAC,EAAI,GAAKq2H,EAAa,QAAQr2H,CAAC,EAAI,CAAC,EACjG,GAAIs2H,EAAc,SAAW,EAAG,MAAO,GACvC,MAAMv0F,EAAIm0F,GAA+B,UAAU,IAAII,EAAc,IAAIt2H,GAAKA,IAAM,IAAM,MAAQA,CAAC,EAAE,KAAK,GAAG,CAAC,GAAG,EACjH,IAAImT,EAAU,CAAC4uB,EAAE,KAAKz4C,CAAG,EACzB,GAAI,CAAC6pB,EAAS,CACZ,MAAMojH,EAAKjtI,EAAI,QAAQ+sI,CAAY,EAC/BE,EAAK,GAAK,CAACx0F,EAAE,KAAKz4C,EAAI,UAAU,EAAGitI,CAAE,CAAC,IACxCpjH,EAAU,GAEd,CACA,OAAOA,CACT,EACMqjH,GAAW,CAAC3gH,EAAK9M,EAAMstH,EAAe,MAAQ,CAClD,GAAI,CAACxgH,EAAK,OACV,GAAIA,EAAI9M,CAAI,EACV,OAAK,OAAO,UAAU,eAAe,KAAK8M,EAAK9M,CAAI,EAC5C8M,EAAI9M,CAAI,EADuC,OAGxD,MAAM0tH,EAAS1tH,EAAK,MAAMstH,CAAY,EACtC,IAAI3nG,EAAU7Y,EACd,QAASxoB,EAAI,EAAGA,EAAIopI,EAAO,QAAS,CAClC,GAAI,CAAC/nG,GAAW,OAAOA,GAAY,SACjC,OAEF,IAAInkB,EACAmsH,EAAW,GACf,QAASC,EAAItpI,EAAGspI,EAAIF,EAAO,OAAQ,EAAEE,EAMnC,GALIA,IAAMtpI,IACRqpI,GAAYL,GAEdK,GAAYD,EAAOE,CAAC,EACpBpsH,EAAOmkB,EAAQgoG,CAAQ,EACnBnsH,IAAS,OAAW,CACtB,GAAI,CAAC,SAAU,SAAU,SAAS,EAAE,QAAQ,OAAOA,CAAI,EAAI,IAAMosH,EAAIF,EAAO,OAAS,EACnF,SAEFppI,GAAKspI,EAAItpI,EAAI,EACb,KACF,CAEFqhC,EAAUnkB,CACZ,CACA,OAAOmkB,CACT,EACMkoG,GAAiBrpG,GAAQA,GAAM,QAAQ,IAAK,GAAG,EAE/CspG,GAAgB,CACpB,KAAM,SACN,IAAInmI,EAAM,CACR,KAAK,OAAO,MAAOA,CAAI,CACzB,EACA,KAAKA,EAAM,CACT,KAAK,OAAO,OAAQA,CAAI,CAC1B,EACA,MAAMA,EAAM,CACV,KAAK,OAAO,QAASA,CAAI,CAC3B,EACA,OAAOvH,EAAMuH,EAAM,CACjB,UAAUvH,CAAI,GAAG,QAAQ,QAASuH,CAAI,CACxC,CACF,EACA,MAAMomI,EAAO,CACX,YAAYC,EAAgB1qI,EAAU,GAAI,CACxC,KAAK,KAAK0qI,EAAgB1qI,CAAO,CACnC,CACA,KAAK0qI,EAAgB1qI,EAAU,GAAI,CACjC,KAAK,OAASA,EAAQ,QAAU,WAChC,KAAK,OAAS0qI,GAAkBF,GAChC,KAAK,QAAUxqI,EACf,KAAK,MAAQA,EAAQ,KACvB,CACA,OAAOqE,EAAM,CACX,OAAO,KAAK,QAAQA,EAAM,MAAO,GAAI,EAAI,CAC3C,CACA,QAAQA,EAAM,CACZ,OAAO,KAAK,QAAQA,EAAM,OAAQ,GAAI,EAAI,CAC5C,CACA,SAASA,EAAM,CACb,OAAO,KAAK,QAAQA,EAAM,QAAS,EAAE,CACvC,CACA,aAAaA,EAAM,CACjB,OAAO,KAAK,QAAQA,EAAM,OAAQ,uBAAwB,EAAI,CAChE,CACA,QAAQA,EAAMsmI,EAAK9xH,EAAQ+xH,EAAW,CACpC,OAAIA,GAAa,CAAC,KAAK,MAAc,MACjCxC,GAAS/jI,EAAK,CAAC,CAAC,IAAGA,EAAK,CAAC,EAAI,GAAGwU,CAAM,GAAG,KAAK,MAAM,IAAIxU,EAAK,CAAC,CAAC,IAC5D,KAAK,OAAOsmI,CAAG,EAAEtmI,CAAI,EAC9B,CACA,OAAOwmI,EAAY,CACjB,OAAO,IAAIJ,GAAO,KAAK,OAAQ,CAE3B,OAAQ,GAAG,KAAK,MAAM,IAAII,CAAU,IAEtC,GAAG,KAAK,OACd,CAAK,CACH,CACA,MAAM7qI,EAAS,CACb,OAAAA,EAAUA,GAAW,KAAK,QAC1BA,EAAQ,OAASA,EAAQ,QAAU,KAAK,OACjC,IAAIyqI,GAAO,KAAK,OAAQzqI,CAAO,CACxC,CACF,CACA,IAAI8qI,GAAa,IAAIL,GAErB,MAAMM,EAAa,CACjB,aAAc,CACZ,KAAK,UAAY,EACnB,CACA,GAAGx8E,EAAQhxD,EAAU,CACnB,OAAAgxD,EAAO,MAAM,GAAG,EAAE,QAAQj/C,GAAS,CAC5B,KAAK,UAAUA,CAAK,IAAG,KAAK,UAAUA,CAAK,EAAI,IAAI,KACxD,MAAM07H,EAAe,KAAK,UAAU17H,CAAK,EAAE,IAAI/R,CAAQ,GAAK,EAC5D,KAAK,UAAU+R,CAAK,EAAE,IAAI/R,EAAUytI,EAAe,CAAC,CACtD,CAAC,EACM,IACT,CACA,IAAI17H,EAAO/R,EAAU,CACnB,GAAK,KAAK,UAAU+R,CAAK,EACzB,IAAI,CAAC/R,EAAU,CACb,OAAO,KAAK,UAAU+R,CAAK,EAC3B,MACF,CACA,KAAK,UAAUA,CAAK,EAAE,OAAO/R,CAAQ,EACvC,CACA,KAAK+R,KAAUjL,EAAM,CACf,KAAK,UAAUiL,CAAK,GACP,MAAM,KAAK,KAAK,UAAUA,CAAK,EAAE,SAAS,EAClD,QAAQ,CAAC,CAAC5H,EAAUujI,CAAa,IAAM,CAC5C,QAASjqI,EAAI,EAAGA,EAAIiqI,EAAejqI,IACjC0G,EAAS,GAAGrD,CAAI,CAEpB,CAAC,EAEC,KAAK,UAAU,GAAG,GACL,MAAM,KAAK,KAAK,UAAU,GAAG,EAAE,SAAS,EAChD,QAAQ,CAAC,CAACqD,EAAUujI,CAAa,IAAM,CAC5C,QAASjqI,EAAI,EAAGA,EAAIiqI,EAAejqI,IACjC0G,EAAS,MAAMA,EAAU,CAAC4H,EAAO,GAAGjL,CAAI,CAAC,CAE7C,CAAC,CAEL,CACF,CAEA,MAAM6mI,WAAsBH,EAAa,CACvC,YAAYjpI,EAAM9B,EAAU,CAC1B,GAAI,CAAC,aAAa,EAClB,UAAW,aACf,EAAK,CACD,MAAK,EACL,KAAK,KAAO8B,GAAQ,GACpB,KAAK,QAAU9B,EACX,KAAK,QAAQ,eAAiB,SAChC,KAAK,QAAQ,aAAe,KAE1B,KAAK,QAAQ,sBAAwB,SACvC,KAAK,QAAQ,oBAAsB,GAEvC,CACA,cAAcmrI,EAAI,CACZ,KAAK,QAAQ,GAAG,QAAQA,CAAE,EAAI,GAChC,KAAK,QAAQ,GAAG,KAAKA,CAAE,CAE3B,CACA,iBAAiBA,EAAI,CACnB,MAAMj8H,EAAQ,KAAK,QAAQ,GAAG,QAAQi8H,CAAE,EACpCj8H,EAAQ,IACV,KAAK,QAAQ,GAAG,OAAOA,EAAO,CAAC,CAEnC,CACA,YAAYk8H,EAAKD,EAAIluI,EAAK+C,EAAU,GAAI,CACtC,MAAMgqI,EAAehqI,EAAQ,eAAiB,OAAYA,EAAQ,aAAe,KAAK,QAAQ,aACxFqrI,EAAsBrrI,EAAQ,sBAAwB,OAAYA,EAAQ,oBAAsB,KAAK,QAAQ,oBACnH,IAAI0c,EACA0uH,EAAI,QAAQ,GAAG,EAAI,GACrB1uH,EAAO0uH,EAAI,MAAM,GAAG,GAEpB1uH,EAAO,CAAC0uH,EAAKD,CAAE,EACXluI,IACE,MAAM,QAAQA,CAAG,EACnByf,EAAK,KAAK,GAAGzf,CAAG,EACPmrI,GAASnrI,CAAG,GAAK+sI,EAC1BttH,EAAK,KAAK,GAAGzf,EAAI,MAAM+sI,CAAY,CAAC,EAEpCttH,EAAK,KAAKzf,CAAG,IAInB,MAAMmD,EAAS6oI,GAAQ,KAAK,KAAMvsH,CAAI,EAMtC,MALI,CAACtc,GAAU,CAAC+qI,GAAM,CAACluI,GAAOmuI,EAAI,QAAQ,GAAG,EAAI,KAC/CA,EAAM1uH,EAAK,CAAC,EACZyuH,EAAKzuH,EAAK,CAAC,EACXzf,EAAMyf,EAAK,MAAM,CAAC,EAAE,KAAK,GAAG,GAE1Btc,GAAU,CAACirI,GAAuB,CAACjD,GAASnrI,CAAG,EAAUmD,EACtD+pI,GAAS,KAAK,OAAOiB,CAAG,IAAID,CAAE,EAAGluI,EAAK+sI,CAAY,CAC3D,CACA,YAAYoB,EAAKD,EAAIluI,EAAKwB,EAAOuB,EAAU,CACzC,OAAQ,EACZ,EAAK,CACD,MAAMgqI,EAAehqI,EAAQ,eAAiB,OAAYA,EAAQ,aAAe,KAAK,QAAQ,aAC9F,IAAI0c,EAAO,CAAC0uH,EAAKD,CAAE,EACfluI,IAAKyf,EAAOA,EAAK,OAAOstH,EAAe/sI,EAAI,MAAM+sI,CAAY,EAAI/sI,CAAG,GACpEmuI,EAAI,QAAQ,GAAG,EAAI,KACrB1uH,EAAO0uH,EAAI,MAAM,GAAG,EACpB3sI,EAAQ0sI,EACRA,EAAKzuH,EAAK,CAAC,GAEb,KAAK,cAAcyuH,CAAE,EACrBrC,GAAQ,KAAK,KAAMpsH,EAAMje,CAAK,EACzBuB,EAAQ,QAAQ,KAAK,KAAK,QAASorI,EAAKD,EAAIluI,EAAKwB,CAAK,CAC7D,CACA,aAAa2sI,EAAKD,EAAIhsC,EAAWn/F,EAAU,CACzC,OAAQ,EACZ,EAAK,CACD,UAAWoP,KAAK+vF,GACVipC,GAASjpC,EAAU/vF,CAAC,CAAC,GAAK,MAAM,QAAQ+vF,EAAU/vF,CAAC,CAAC,IAAG,KAAK,YAAYg8H,EAAKD,EAAI/7H,EAAG+vF,EAAU/vF,CAAC,EAAG,CACpG,OAAQ,EAChB,CAAO,EAEEpP,EAAQ,QAAQ,KAAK,KAAK,QAASorI,EAAKD,EAAIhsC,CAAS,CAC5D,CACA,kBAAkBisC,EAAKD,EAAIhsC,EAAWlzB,EAAMo9D,EAAWrpI,EAAU,CAC/D,OAAQ,GACR,SAAU,EACd,EAAK,CACD,IAAI0c,EAAO,CAAC0uH,EAAKD,CAAE,EACfC,EAAI,QAAQ,GAAG,EAAI,KACrB1uH,EAAO0uH,EAAI,MAAM,GAAG,EACpBn/D,EAAOkzB,EACPA,EAAYgsC,EACZA,EAAKzuH,EAAK,CAAC,GAEb,KAAK,cAAcyuH,CAAE,EACrB,IAAIz+D,EAAOu8D,GAAQ,KAAK,KAAMvsH,CAAI,GAAK,GAClC1c,EAAQ,WAAUm/F,EAAY,KAAK,MAAM,KAAK,UAAUA,CAAS,CAAC,GACnElzB,EACFm9D,GAAW18D,EAAMyyB,EAAWkqC,CAAS,EAErC38D,EAAO,CACL,GAAGA,EACH,GAAGyyB,CACX,EAEI2pC,GAAQ,KAAK,KAAMpsH,EAAMgwD,CAAI,EACxB1sE,EAAQ,QAAQ,KAAK,KAAK,QAASorI,EAAKD,EAAIhsC,CAAS,CAC5D,CACA,qBAAqBisC,EAAKD,EAAI,CACxB,KAAK,kBAAkBC,EAAKD,CAAE,GAChC,OAAO,KAAK,KAAKC,CAAG,EAAED,CAAE,EAE1B,KAAK,iBAAiBA,CAAE,EACxB,KAAK,KAAK,UAAWC,EAAKD,CAAE,CAC9B,CACA,kBAAkBC,EAAKD,EAAI,CACzB,OAAO,KAAK,YAAYC,EAAKD,CAAE,IAAM,MACvC,CACA,kBAAkBC,EAAKD,EAAI,CACzB,OAAKA,IAAIA,EAAK,KAAK,QAAQ,WACpB,KAAK,YAAYC,EAAKD,CAAE,CACjC,CACA,kBAAkBC,EAAK,CACrB,OAAO,KAAK,KAAKA,CAAG,CACtB,CACA,4BAA4BA,EAAK,CAC/B,MAAMtpI,EAAO,KAAK,kBAAkBspI,CAAG,EAEvC,MAAO,CAAC,EADEtpI,GAAQ,OAAO,KAAKA,CAAI,GAAK,IAC5B,KAAKX,GAAKW,EAAKX,CAAC,GAAK,OAAO,KAAKW,EAAKX,CAAC,CAAC,EAAE,OAAS,CAAC,CACjE,CACA,QAAS,CACP,OAAO,KAAK,IACd,CACF,CAEA,IAAImqI,GAAgB,CAClB,WAAY,GACZ,iBAAiB7/F,EAAQ,CACvB,KAAK,WAAWA,EAAO,IAAI,EAAIA,CACjC,EACA,OAAO8/F,EAAY9sI,EAAOxB,EAAK+C,EAASwrI,EAAY,CAClD,OAAAD,EAAW,QAAQE,GAAa,CAC9BhtI,EAAQ,KAAK,WAAWgtI,CAAS,GAAG,QAAQhtI,EAAOxB,EAAK+C,EAASwrI,CAAU,GAAK/sI,CAClF,CAAC,EACMA,CACT,CACF,EAEA,MAAMitI,GAAW,OAAO,kBAAkB,EAC1C,SAASC,IAAc,CACrB,MAAMpkI,EAAQ,GACR2+B,EAAU,OAAO,OAAO,IAAI,EAClC,IAAI0lG,EACJ,OAAA1lG,EAAQ,IAAM,CAACr7B,EAAQ5N,KACrB2uI,GAAO,SAAM,EACT3uI,IAAQyuI,GAAiBnkI,GAC7BA,EAAM,KAAKtK,CAAG,EACd2uI,EAAQ,MAAM,UAAU/gI,EAAQq7B,CAAO,EAChC0lG,EAAM,QAER,MAAM,UAAU,OAAO,OAAO,IAAI,EAAG1lG,CAAO,EAAE,KACvD,CACA,SAAS2lG,GAAiBzgH,EAAU1P,EAAM,CACxC,KAAM,CACJ,CAACgwH,EAAQ,EAAGhvH,CAChB,EAAM0O,EAASugH,IAAa,EAC1B,OAAOjvH,EAAK,KAAKhB,GAAM,cAAgB,GAAG,CAC5C,CAEA,MAAMowH,GAAmB,GACnBC,GAAuB5sH,GAAO,CAACipH,GAASjpH,CAAG,GAAK,OAAOA,GAAQ,WAAa,OAAOA,GAAQ,SACjG,MAAM6sH,WAAmBjB,EAAa,CACpC,YAAYkB,EAAUjsI,EAAU,GAAI,CAClC,MAAK,EACLc,GAAK,CAAC,gBAAiB,gBAAiB,iBAAkB,eAAgB,mBAAoB,aAAc,OAAO,EAAGmrI,EAAU,IAAI,EACpI,KAAK,QAAUjsI,EACX,KAAK,QAAQ,eAAiB,SAChC,KAAK,QAAQ,aAAe,KAE9B,KAAK,OAAS8qI,GAAW,OAAO,YAAY,CAC9C,CACA,eAAeM,EAAK,CACdA,IAAK,KAAK,SAAWA,EAC3B,CACA,OAAOnuI,EAAKoE,EAAI,CACd,cAAe,EACnB,EAAK,CACD,MAAM6qI,EAAM,CACV,GAAG7qI,CACT,EACI,GAAIpE,GAAO,KAAM,MAAO,GACxB,MAAMkvI,EAAW,KAAK,QAAQlvI,EAAKivI,CAAG,EACtC,GAAIC,GAAU,MAAQ,OAAW,MAAO,GACxC,MAAMC,EAAWL,GAAqBI,EAAS,GAAG,EAClD,MAAI,EAAAD,EAAI,gBAAkB,IAASE,EAIrC,CACA,eAAenvI,EAAKivI,EAAK,CACvB,IAAInC,EAAcmC,EAAI,cAAgB,OAAYA,EAAI,YAAc,KAAK,QAAQ,YAC7EnC,IAAgB,SAAWA,EAAc,KAC7C,MAAMC,EAAekC,EAAI,eAAiB,OAAYA,EAAI,aAAe,KAAK,QAAQ,aACtF,IAAIG,EAAaH,EAAI,IAAM,KAAK,QAAQ,WAAa,GACrD,MAAMI,EAAuBvC,GAAe9sI,EAAI,QAAQ8sI,CAAW,EAAI,GACjEwC,EAAuB,CAAC,KAAK,QAAQ,yBAA2B,CAACL,EAAI,cAAgB,CAAC,KAAK,QAAQ,wBAA0B,CAACA,EAAI,aAAe,CAACpC,GAAoB7sI,EAAK8sI,EAAaC,CAAY,EAC1M,GAAIsC,GAAwB,CAACC,EAAsB,CACjD,MAAM,EAAItvI,EAAI,MAAM,KAAK,aAAa,aAAa,EACnD,GAAI,GAAK,EAAE,OAAS,EAClB,MAAO,CACL,IAAAA,EACA,WAAYmrI,GAASiE,CAAU,EAAI,CAACA,CAAU,EAAIA,CAC5D,EAEM,MAAMG,EAAQvvI,EAAI,MAAM8sI,CAAW,GAC/BA,IAAgBC,GAAgBD,IAAgBC,GAAgB,KAAK,QAAQ,GAAG,QAAQwC,EAAM,CAAC,CAAC,EAAI,MAAIH,EAAaG,EAAM,MAAK,GACpIvvI,EAAMuvI,EAAM,KAAKxC,CAAY,CAC/B,CACA,MAAO,CACL,IAAA/sI,EACA,WAAYmrI,GAASiE,CAAU,EAAI,CAACA,CAAU,EAAIA,CACxD,CACE,CACA,UAAU9rH,EAAMlf,EAAGorI,EAAS,CAC1B,IAAIP,EAAM,OAAO7qI,GAAM,SAAW,CAChC,GAAGA,CACT,EAAQA,EAQJ,GAPI,OAAO6qI,GAAQ,UAAY,KAAK,QAAQ,mCAC1CA,EAAM,KAAK,QAAQ,iCAAiC,SAAS,GAE3D,OAAOA,GAAQ,WAAUA,EAAM,CACjC,GAAGA,CACT,GACSA,IAAKA,EAAM,IACZ3rH,GAAQ,KAAM,MAAO,GACrB,OAAOA,GAAS,aAAYA,EAAOsrH,GAAiBtrH,EAAM,CAC5D,GAAG,KAAK,QACR,GAAG2rH,CACT,CAAK,GACI,MAAM,QAAQ3rH,CAAI,IAAGA,EAAO,CAAC,OAAOA,CAAI,CAAC,GAC9C,MAAMmsH,EAAgBR,EAAI,gBAAkB,OAAYA,EAAI,cAAgB,KAAK,QAAQ,cACnFlC,EAAekC,EAAI,eAAiB,OAAYA,EAAI,aAAe,KAAK,QAAQ,aAChF,CACJ,IAAAjvI,EACA,WAAAovI,CACN,EAAQ,KAAK,eAAe9rH,EAAKA,EAAK,OAAS,CAAC,EAAG2rH,CAAG,EAC5C9rC,EAAYisC,EAAWA,EAAW,OAAS,CAAC,EAClD,IAAItC,EAAcmC,EAAI,cAAgB,OAAYA,EAAI,YAAc,KAAK,QAAQ,YAC7EnC,IAAgB,SAAWA,EAAc,KAC7C,MAAMqB,EAAMc,EAAI,KAAO,KAAK,SACtBS,EAA0BT,EAAI,yBAA2B,KAAK,QAAQ,wBAC5E,GAAId,GAAK,YAAW,IAAO,SACzB,OAAIuB,EACED,EACK,CACL,IAAK,GAAGtsC,CAAS,GAAG2pC,CAAW,GAAG9sI,CAAG,GACrC,QAASA,EACT,aAAcA,EACd,QAASmuI,EACT,OAAQhrC,EACR,WAAY,KAAK,qBAAqB8rC,CAAG,CACrD,EAEe,GAAG9rC,CAAS,GAAG2pC,CAAW,GAAG9sI,CAAG,GAErCyvI,EACK,CACL,IAAKzvI,EACL,QAASA,EACT,aAAcA,EACd,QAASmuI,EACT,OAAQhrC,EACR,WAAY,KAAK,qBAAqB8rC,CAAG,CACnD,EAEajvI,EAET,MAAMkvI,EAAW,KAAK,QAAQ5rH,EAAM2rH,CAAG,EACvC,IAAI/sH,EAAMgtH,GAAU,IACpB,MAAMS,EAAaT,GAAU,SAAWlvI,EAClC4vI,EAAkBV,GAAU,cAAgBlvI,EAC5C6vI,EAAW,CAAC,kBAAmB,oBAAqB,iBAAiB,EACrEC,EAAab,EAAI,aAAe,OAAYA,EAAI,WAAa,KAAK,QAAQ,WAC1Ec,EAA6B,CAAC,KAAK,YAAc,KAAK,WAAW,eACjEC,EAAsBf,EAAI,QAAU,QAAa,CAAC9D,GAAS8D,EAAI,KAAK,EACpEgB,EAAkBlB,GAAW,gBAAgBE,CAAG,EAChDiB,EAAqBF,EAAsB,KAAK,eAAe,UAAU7B,EAAKc,EAAI,MAAOA,CAAG,EAAI,GAChGkB,EAAoClB,EAAI,SAAWe,EAAsB,KAAK,eAAe,UAAU7B,EAAKc,EAAI,MAAO,CAC3H,QAAS,EACf,CAAK,EAAI,GACCmB,EAAwBJ,GAAuB,CAACf,EAAI,SAAWA,EAAI,QAAU,EAC7Et3H,EAAey4H,GAAyBnB,EAAI,eAAe,KAAK,QAAQ,eAAe,MAAM,GAAKA,EAAI,eAAeiB,CAAkB,EAAE,GAAKjB,EAAI,eAAekB,CAAiC,EAAE,GAAKlB,EAAI,aACnN,IAAIoB,EAAgBnuH,EAChB6tH,GAA8B,CAAC7tH,GAAO+tH,IACxCI,EAAgB14H,GAElB,MAAM24H,GAAiBxB,GAAqBuB,CAAa,EACnDE,GAAU,OAAO,UAAU,SAAS,MAAMF,CAAa,EAC7D,GAAIN,GAA8BM,GAAiBC,IAAkBT,EAAS,QAAQU,EAAO,EAAI,GAAK,EAAEpF,GAAS2E,CAAU,GAAK,MAAM,QAAQO,CAAa,GAAI,CAC7J,GAAI,CAACpB,EAAI,eAAiB,CAAC,KAAK,QAAQ,cAAe,CAChD,KAAK,QAAQ,uBAChB,KAAK,OAAO,KAAK,iEAAiE,EAEpF,MAAMx2F,EAAI,KAAK,QAAQ,sBAAwB,KAAK,QAAQ,sBAAsBk3F,EAAYU,EAAe,CAC3G,GAAGpB,EACH,GAAIG,CACd,CAAS,EAAI,QAAQpvI,CAAG,KAAK,KAAK,QAAQ,2CAClC,OAAIyvI,GACFP,EAAS,IAAMz2F,EACfy2F,EAAS,WAAa,KAAK,qBAAqBD,CAAG,EAC5CC,GAEFz2F,CACT,CACA,GAAIs0F,EAAc,CAChB,MAAMyD,EAAiB,MAAM,QAAQH,CAAa,EAC5CxsI,EAAO2sI,EAAiB,GAAK,GAC7BC,GAAcD,EAAiBZ,EAAkBD,EACvD,UAAWx9H,KAAKk+H,EACd,GAAI,OAAO,UAAU,eAAe,KAAKA,EAAel+H,CAAC,EAAG,CAC1D,MAAMu+H,EAAU,GAAGD,EAAW,GAAG1D,CAAY,GAAG56H,CAAC,GAC7C89H,GAAmB,CAAC/tH,EACtBre,EAAKsO,CAAC,EAAI,KAAK,UAAUu+H,EAAS,CAChC,GAAGzB,EACH,aAAcH,GAAqBn3H,CAAY,EAAIA,EAAaxF,CAAC,EAAI,OAEnE,WAAY,GACZ,GAAIi9H,CAEtB,CAAe,EAEDvrI,EAAKsO,CAAC,EAAI,KAAK,UAAUu+H,EAAS,CAChC,GAAGzB,EAED,WAAY,GACZ,GAAIG,CAEtB,CAAe,EAECvrI,EAAKsO,CAAC,IAAMu+H,IAAS7sI,EAAKsO,CAAC,EAAIk+H,EAAcl+H,CAAC,EACpD,CAEF+P,EAAMre,CACR,CACF,SAAWksI,GAA8B5E,GAAS2E,CAAU,GAAK,MAAM,QAAQ5tH,CAAG,EAChFA,EAAMA,EAAI,KAAK4tH,CAAU,EACrB5tH,IAAKA,EAAM,KAAK,kBAAkBA,EAAKoB,EAAM2rH,EAAKO,CAAO,OACxD,CACL,IAAImB,EAAc,GACdC,EAAU,GACV,CAAC,KAAK,cAAc1uH,CAAG,GAAK+tH,IAC9BU,EAAc,GACdzuH,EAAMvK,GAEH,KAAK,cAAcuK,CAAG,IACzB0uH,EAAU,GACV1uH,EAAMliB,GAGR,MAAM6wI,GADiC5B,EAAI,gCAAkC,KAAK,QAAQ,iCAClC2B,EAAU,OAAY1uH,EACxE4uH,EAAgBb,GAAmBt4H,IAAiBuK,GAAO,KAAK,QAAQ,cAC9E,GAAI0uH,GAAWD,GAAeG,EAAe,CAE3C,GADA,KAAK,OAAO,IAAIA,EAAgB,YAAc,aAAc3C,EAAKhrC,EAAWnjG,EAAK8wI,EAAgBn5H,EAAeuK,CAAG,EAC/G6qH,EAAc,CAChB,MAAMgE,EAAK,KAAK,QAAQ/wI,EAAK,CAC3B,GAAGivI,EACH,aAAc,EAC1B,CAAW,EACG8B,GAAMA,EAAG,KAAK,KAAK,OAAO,KAAK,iLAAiL,CACtN,CACA,IAAIC,EAAO,GACX,MAAMC,GAAe,KAAK,cAAc,iBAAiB,KAAK,QAAQ,YAAahC,EAAI,KAAO,KAAK,QAAQ,EAC3G,GAAI,KAAK,QAAQ,gBAAkB,YAAcgC,IAAgBA,GAAa,CAAC,EAC7E,QAASltI,EAAI,EAAGA,EAAIktI,GAAa,OAAQltI,IACvCitI,EAAK,KAAKC,GAAaltI,CAAC,CAAC,OAElB,KAAK,QAAQ,gBAAkB,MACxCitI,EAAO,KAAK,cAAc,mBAAmB/B,EAAI,KAAO,KAAK,QAAQ,EAErE+B,EAAK,KAAK/B,EAAI,KAAO,KAAK,QAAQ,EAEpC,MAAM9iE,GAAO,CAAC+kE,EAAGrtH,EAAGstH,KAAyB,CAC3C,MAAMC,GAAoBnB,GAAmBkB,KAAyBjvH,EAAMivH,GAAuBN,EAC/F,KAAK,QAAQ,kBACf,KAAK,QAAQ,kBAAkBK,EAAG/tC,EAAWt/E,EAAGutH,GAAmBN,EAAe7B,CAAG,EAC5E,KAAK,kBAAkB,aAChC,KAAK,iBAAiB,YAAYiC,EAAG/tC,EAAWt/E,EAAGutH,GAAmBN,EAAe7B,CAAG,EAE1F,KAAK,KAAK,aAAciC,EAAG/tC,EAAWt/E,EAAG3B,CAAG,CAC9C,EACI,KAAK,QAAQ,cACX,KAAK,QAAQ,oBAAsB8tH,EACrCgB,EAAK,QAAQK,GAAY,CACvB,MAAMC,EAAW,KAAK,eAAe,YAAYD,EAAUpC,CAAG,EAC1DmB,GAAyBnB,EAAI,eAAe,KAAK,QAAQ,eAAe,MAAM,GAAKqC,EAAS,QAAQ,GAAG,KAAK,QAAQ,eAAe,MAAM,EAAI,GAC/IA,EAAS,KAAK,GAAG,KAAK,QAAQ,eAAe,MAAM,EAErDA,EAAS,QAAQjqH,IAAU,CACzB8kD,GAAK,CAACklE,CAAQ,EAAGrxI,EAAMqnB,GAAQ4nH,EAAI,eAAe5nH,EAAM,EAAE,GAAK1P,CAAY,CAC7E,CAAC,CACH,CAAC,EAEDw0D,GAAK6kE,EAAMhxI,EAAK2X,CAAY,EAGlC,CACAuK,EAAM,KAAK,kBAAkBA,EAAKoB,EAAM2rH,EAAKC,EAAUM,CAAO,EAC1DoB,GAAW1uH,IAAQliB,GAAO,KAAK,QAAQ,8BACzCkiB,EAAM,GAAGihF,CAAS,GAAG2pC,CAAW,GAAG9sI,CAAG,KAEnC4wI,GAAWD,IAAgB,KAAK,QAAQ,yBAC3CzuH,EAAM,KAAK,QAAQ,uBAAuB,KAAK,QAAQ,4BAA8B,GAAGihF,CAAS,GAAG2pC,CAAW,GAAG9sI,CAAG,GAAKA,EAAK2wI,EAAczuH,EAAM,OAAW+sH,CAAG,EAErK,CACA,OAAIQ,GACFP,EAAS,IAAMhtH,EACfgtH,EAAS,WAAa,KAAK,qBAAqBD,CAAG,EAC5CC,GAEFhtH,CACT,CACA,kBAAkBA,EAAKliB,EAAKivI,EAAKC,EAAUM,EAAS,CAClD,GAAI,KAAK,YAAY,MACnBttH,EAAM,KAAK,WAAW,MAAMA,EAAK,CAC/B,GAAG,KAAK,QAAQ,cAAc,iBAC9B,GAAG+sH,CACX,EAASA,EAAI,KAAO,KAAK,UAAYC,EAAS,QAASA,EAAS,OAAQA,EAAS,QAAS,CAClF,SAAAA,CACR,CAAO,UACQ,CAACD,EAAI,kBAAmB,CAC7BA,EAAI,eAAe,KAAK,aAAa,KAAK,CAC5C,GAAGA,EAED,cAAe,CACb,GAAG,KAAK,QAAQ,cAChB,GAAGA,EAAI,aACnB,CAEA,CAAO,EACD,MAAMsC,EAAkBpG,GAASjpH,CAAG,IAAM+sH,GAAK,eAAe,kBAAoB,OAAYA,EAAI,cAAc,gBAAkB,KAAK,QAAQ,cAAc,iBAC7J,IAAIuC,EACJ,GAAID,EAAiB,CACnB,MAAME,EAAKvvH,EAAI,MAAM,KAAK,aAAa,aAAa,EACpDsvH,EAAUC,GAAMA,EAAG,MACrB,CACA,IAAI5sI,EAAOoqI,EAAI,SAAW,CAAC9D,GAAS8D,EAAI,OAAO,EAAIA,EAAI,QAAUA,EAMjE,GALI,KAAK,QAAQ,cAAc,mBAAkBpqI,EAAO,CACtD,GAAG,KAAK,QAAQ,cAAc,iBAC9B,GAAGA,CACX,GACMqd,EAAM,KAAK,aAAa,YAAYA,EAAKrd,EAAMoqI,EAAI,KAAO,KAAK,UAAYC,EAAS,QAASD,CAAG,EAC5FsC,EAAiB,CACnB,MAAMG,EAAKxvH,EAAI,MAAM,KAAK,aAAa,aAAa,EAC9CyvH,EAAUD,GAAMA,EAAG,OACrBF,EAAUG,IAAS1C,EAAI,KAAO,GACpC,CACI,CAACA,EAAI,KAAOC,GAAYA,EAAS,MAAKD,EAAI,IAAM,KAAK,UAAYC,EAAS,SAC1ED,EAAI,OAAS,KAAO/sH,EAAM,KAAK,aAAa,KAAKA,EAAK,IAAI9a,IACxDooI,IAAU,CAAC,IAAMpoI,EAAK,CAAC,GAAK,CAAC6nI,EAAI,SACnC,KAAK,OAAO,KAAK,6CAA6C7nI,EAAK,CAAC,CAAC,YAAYpH,EAAI,CAAC,CAAC,EAAE,EAClF,MAEF,KAAK,UAAU,GAAGoH,EAAMpH,CAAG,EACjCivI,CAAG,GACFA,EAAI,eAAe,KAAK,aAAa,MAAK,CAChD,CACA,MAAM2C,EAAc3C,EAAI,aAAe,KAAK,QAAQ,YAC9C4C,EAAqB1G,GAASyG,CAAW,EAAI,CAACA,CAAW,EAAIA,EACnE,OAAI1vH,GAAO,MAAQ2vH,GAAoB,QAAU5C,EAAI,qBAAuB,KAC1E/sH,EAAMmsH,GAAc,OAAOwD,EAAoB3vH,EAAKliB,EAAK,KAAK,SAAW,KAAK,QAAQ,wBAA0B,CAC9G,aAAc,CACZ,GAAGkvI,EACH,WAAY,KAAK,qBAAqBD,CAAG,CACnD,EACQ,GAAGA,CACX,EAAUA,EAAK,IAAI,GAER/sH,CACT,CACA,QAAQoB,EAAM2rH,EAAM,GAAI,CACtB,IAAI6C,EACAlB,EACAmB,EACAC,EACAC,EACJ,OAAI9G,GAAS7nH,CAAI,IAAGA,EAAO,CAACA,CAAI,GAChCA,EAAK,QAAQO,GAAK,CAChB,GAAI,KAAK,cAAciuH,CAAK,EAAG,OAC/B,MAAMI,EAAY,KAAK,eAAeruH,EAAGorH,CAAG,EACtCjvI,EAAMkyI,EAAU,IACtBtB,EAAU5wI,EACV,IAAIovI,EAAa8C,EAAU,WACvB,KAAK,QAAQ,aAAY9C,EAAaA,EAAW,OAAO,KAAK,QAAQ,UAAU,GACnF,MAAMY,EAAsBf,EAAI,QAAU,QAAa,CAAC9D,GAAS8D,EAAI,KAAK,EACpEmB,EAAwBJ,GAAuB,CAACf,EAAI,SAAWA,EAAI,QAAU,EAC7EkD,EAAuBlD,EAAI,UAAY,SAAc9D,GAAS8D,EAAI,OAAO,GAAK,OAAOA,EAAI,SAAY,WAAaA,EAAI,UAAY,GAClImD,EAAQnD,EAAI,KAAOA,EAAI,KAAO,KAAK,cAAc,mBAAmBA,EAAI,KAAO,KAAK,SAAUA,EAAI,WAAW,EACnHG,EAAW,QAAQlB,GAAM,CACnB,KAAK,cAAc4D,CAAK,IAC5BG,EAAS/D,EACL,CAACW,GAAiB,GAAGuD,EAAM,CAAC,CAAC,IAAIlE,CAAE,EAAE,GAAK,KAAK,OAAO,oBAAsB,CAAC,KAAK,OAAO,mBAAmB+D,CAAM,IACpHpD,GAAiB,GAAGuD,EAAM,CAAC,CAAC,IAAIlE,CAAE,EAAE,EAAI,GACxC,KAAK,OAAO,KAAK,QAAQ0C,CAAO,oBAAoBwB,EAAM,KAAK,IAAI,CAAC,sCAAsCH,CAAM,uBAAwB,0NAA0N,GAEpWG,EAAM,QAAQnuG,GAAQ,CACpB,GAAI,KAAK,cAAc6tG,CAAK,EAAG,OAC/BE,EAAU/tG,EACV,MAAMouG,EAAY,CAACryI,CAAG,EACtB,GAAI,KAAK,YAAY,cACnB,KAAK,WAAW,cAAcqyI,EAAWryI,EAAKikC,EAAMiqG,EAAIe,CAAG,MACtD,CACL,IAAIqD,EACAtC,IAAqBsC,EAAe,KAAK,eAAe,UAAUruG,EAAMgrG,EAAI,MAAOA,CAAG,GAC1F,MAAMsD,EAAa,GAAG,KAAK,QAAQ,eAAe,OAC5CC,EAAgB,GAAG,KAAK,QAAQ,eAAe,UAAU,KAAK,QAAQ,eAAe,GAU3F,GATIxC,IACEf,EAAI,SAAWqD,EAAa,QAAQE,CAAa,IAAM,GACzDH,EAAU,KAAKryI,EAAMsyI,EAAa,QAAQE,EAAe,KAAK,QAAQ,eAAe,CAAC,EAExFH,EAAU,KAAKryI,EAAMsyI,CAAY,EAC7BlC,GACFiC,EAAU,KAAKryI,EAAMuyI,CAAU,GAG/BJ,EAAsB,CACxB,MAAMM,EAAa,GAAGzyI,CAAG,GAAG,KAAK,QAAQ,kBAAoB,GAAG,GAAGivI,EAAI,OAAO,GAC9EoD,EAAU,KAAKI,CAAU,EACrBzC,IACEf,EAAI,SAAWqD,EAAa,QAAQE,CAAa,IAAM,GACzDH,EAAU,KAAKI,EAAaH,EAAa,QAAQE,EAAe,KAAK,QAAQ,eAAe,CAAC,EAE/FH,EAAU,KAAKI,EAAaH,CAAY,EACpClC,GACFiC,EAAU,KAAKI,EAAaF,CAAU,EAG5C,CACF,CACA,IAAIG,EACJ,KAAOA,EAAcL,EAAU,OACxB,KAAK,cAAcP,CAAK,IAC3BC,EAAeW,EACfZ,EAAQ,KAAK,YAAY7tG,EAAMiqG,EAAIwE,EAAazD,CAAG,EAGzD,CAAC,EACH,CAAC,CACH,CAAC,EACM,CACL,IAAK6C,EACL,QAAAlB,EACA,aAAAmB,EACA,QAAAC,EACA,OAAAC,CACN,CACE,CACA,cAAc/vH,EAAK,CACjB,OAAOA,IAAQ,QAAa,EAAE,CAAC,KAAK,QAAQ,YAAcA,IAAQ,OAAS,EAAE,CAAC,KAAK,QAAQ,mBAAqBA,IAAQ,GAC1H,CACA,YAAY+hB,EAAMiqG,EAAIluI,EAAK+C,EAAU,GAAI,CACvC,OAAI,KAAK,YAAY,YAAoB,KAAK,WAAW,YAAYkhC,EAAMiqG,EAAIluI,EAAK+C,CAAO,EACpF,KAAK,cAAc,YAAYkhC,EAAMiqG,EAAIluI,EAAK+C,CAAO,CAC9D,CACA,qBAAqBA,EAAU,GAAI,CACjC,MAAM4vI,EAAc,CAAC,eAAgB,UAAW,UAAW,UAAW,MAAO,OAAQ,cAAe,KAAM,eAAgB,cAAe,gBAAiB,gBAAiB,aAAc,cAAe,eAAe,EACjNC,EAA2B7vI,EAAQ,SAAW,CAACooI,GAASpoI,EAAQ,OAAO,EAC7E,IAAI8B,EAAO+tI,EAA2B7vI,EAAQ,QAAUA,EAUxD,GATI6vI,GAA4B,OAAO7vI,EAAQ,MAAU,MACvD8B,EAAK,MAAQ9B,EAAQ,OAEnB,KAAK,QAAQ,cAAc,mBAC7B8B,EAAO,CACL,GAAG,KAAK,QAAQ,cAAc,iBAC9B,GAAGA,CACX,GAEQ,CAAC+tI,EAA0B,CAC7B/tI,EAAO,CACL,GAAGA,CACX,EACM,UAAW7E,KAAO2yI,EAChB,OAAO9tI,EAAK7E,CAAG,CAEnB,CACA,OAAO6E,CACT,CACA,OAAO,gBAAgB9B,EAAS,CAC9B,MAAM6Y,EAAS,eACf,UAAWi3H,KAAU9vI,EACnB,GAAI,OAAO,UAAU,eAAe,KAAKA,EAAS8vI,CAAM,GAAKj3H,IAAWi3H,EAAO,UAAU,EAAGj3H,EAAO,MAAM,GAAmB7Y,EAAQ8vI,CAAM,IAA5B,OAC5G,MAAO,GAGX,MAAO,EACT,CACF,CAEA,MAAMC,EAAa,CACjB,YAAY/vI,EAAS,CACnB,KAAK,QAAUA,EACf,KAAK,cAAgB,KAAK,QAAQ,eAAiB,GACnD,KAAK,OAAS8qI,GAAW,OAAO,eAAe,CACjD,CACA,sBAAsB5pG,EAAM,CAE1B,GADAA,EAAOqpG,GAAerpG,CAAI,EACtB,CAACA,GAAQA,EAAK,QAAQ,GAAG,EAAI,EAAG,OAAO,KAC3C,MAAM5gB,EAAI4gB,EAAK,MAAM,GAAG,EAGxB,OAFI5gB,EAAE,SAAW,IACjBA,EAAE,IAAG,EACDA,EAAEA,EAAE,OAAS,CAAC,EAAE,YAAW,IAAO,KAAY,KAC3C,KAAK,mBAAmBA,EAAE,KAAK,GAAG,CAAC,CAC5C,CACA,wBAAwB4gB,EAAM,CAE5B,GADAA,EAAOqpG,GAAerpG,CAAI,EACtB,CAACA,GAAQA,EAAK,QAAQ,GAAG,EAAI,EAAG,OAAOA,EAC3C,MAAM5gB,EAAI4gB,EAAK,MAAM,GAAG,EACxB,OAAO,KAAK,mBAAmB5gB,EAAE,CAAC,CAAC,CACrC,CACA,mBAAmB4gB,EAAM,CACvB,GAAIknG,GAASlnG,CAAI,GAAKA,EAAK,QAAQ,GAAG,EAAI,GAAI,CAC5C,IAAI8uG,EACJ,GAAI,CACFA,EAAgB,KAAK,oBAAoB9uG,CAAI,EAAE,CAAC,CAClD,MAAY,CAAC,CAIb,OAHI8uG,GAAiB,KAAK,QAAQ,eAChCA,EAAgBA,EAAc,YAAW,GAEvCA,IACA,KAAK,QAAQ,aACR9uG,EAAK,YAAW,EAElBA,EACT,CACA,OAAO,KAAK,QAAQ,WAAa,KAAK,QAAQ,aAAeA,EAAK,YAAW,EAAKA,CACpF,CACA,gBAAgBA,EAAM,CACpB,OAAI,KAAK,QAAQ,OAAS,gBAAkB,KAAK,QAAQ,4BACvDA,EAAO,KAAK,wBAAwBA,CAAI,GAEnC,CAAC,KAAK,eAAiB,CAAC,KAAK,cAAc,QAAU,KAAK,cAAc,QAAQA,CAAI,EAAI,EACjG,CACA,sBAAsBmuG,EAAO,CAC3B,GAAI,CAACA,EAAO,OAAO,KACnB,IAAIN,EACJ,OAAAM,EAAM,QAAQnuG,GAAQ,CACpB,GAAI6tG,EAAO,OACX,MAAMkB,EAAa,KAAK,mBAAmB/uG,CAAI,GAC3C,CAAC,KAAK,QAAQ,eAAiB,KAAK,gBAAgB+uG,CAAU,KAAGlB,EAAQkB,EAC/E,CAAC,EACG,CAAClB,GAAS,KAAK,QAAQ,eACzBM,EAAM,QAAQnuG,GAAQ,CACpB,GAAI6tG,EAAO,OACX,MAAMmB,EAAY,KAAK,sBAAsBhvG,CAAI,EACjD,GAAI,KAAK,gBAAgBgvG,CAAS,EAAG,OAAOnB,EAAQmB,EACpD,MAAMC,EAAU,KAAK,wBAAwBjvG,CAAI,EACjD,GAAI,KAAK,gBAAgBivG,CAAO,EAAG,OAAOpB,EAAQoB,EAClDpB,EAAQ,KAAK,QAAQ,cAAc,KAAKqB,GAAgB,CACtD,GAAIA,IAAiBD,EAAS,OAAOC,EACrC,GAAI,EAAAA,EAAa,QAAQ,GAAG,EAAI,GAAKD,EAAQ,QAAQ,GAAG,EAAI,KACxDC,EAAa,QAAQ,GAAG,EAAI,GAAKD,EAAQ,QAAQ,GAAG,EAAI,GAAKC,EAAa,UAAU,EAAGA,EAAa,QAAQ,GAAG,CAAC,IAAMD,GACtHC,EAAa,QAAQD,CAAO,IAAM,GAAKA,EAAQ,OAAS,GAAG,OAAOC,CACxE,CAAC,CACH,CAAC,EAEErB,IAAOA,EAAQ,KAAK,iBAAiB,KAAK,QAAQ,WAAW,EAAE,CAAC,GAC9DA,CACT,CACA,iBAAiBsB,EAAWnvG,EAAM,CAChC,GAAI,CAACmvG,EAAW,MAAO,GAGvB,GAFI,OAAOA,GAAc,aAAYA,EAAYA,EAAUnvG,CAAI,GAC3DknG,GAASiI,CAAS,IAAGA,EAAY,CAACA,CAAS,GAC3C,MAAM,QAAQA,CAAS,EAAG,OAAOA,EACrC,GAAI,CAACnvG,EAAM,OAAOmvG,EAAU,SAAW,GACvC,IAAItB,EAAQsB,EAAUnvG,CAAI,EAC1B,OAAK6tG,IAAOA,EAAQsB,EAAU,KAAK,sBAAsBnvG,CAAI,CAAC,GACzD6tG,IAAOA,EAAQsB,EAAU,KAAK,mBAAmBnvG,CAAI,CAAC,GACtD6tG,IAAOA,EAAQsB,EAAU,KAAK,wBAAwBnvG,CAAI,CAAC,GAC3D6tG,IAAOA,EAAQsB,EAAU,SACvBtB,GAAS,EAClB,CACA,mBAAmB7tG,EAAMovG,EAAc,CACrC,MAAMC,EAAgB,KAAK,kBAAkBD,IAAiB,GAAQ,GAAKA,IAAiB,KAAK,QAAQ,aAAe,GAAIpvG,CAAI,EAC1HmuG,EAAQ,GACRmB,EAAU78H,GAAK,CACdA,IACD,KAAK,gBAAgBA,CAAC,EACxB07H,EAAM,KAAK17H,CAAC,EAEZ,KAAK,OAAO,KAAK,uDAAuDA,CAAC,EAAE,EAE/E,EACA,OAAIy0H,GAASlnG,CAAI,IAAMA,EAAK,QAAQ,GAAG,EAAI,IAAMA,EAAK,QAAQ,GAAG,EAAI,KAC/D,KAAK,QAAQ,OAAS,gBAAgBsvG,EAAQ,KAAK,mBAAmBtvG,CAAI,CAAC,EAC3E,KAAK,QAAQ,OAAS,gBAAkB,KAAK,QAAQ,OAAS,eAAesvG,EAAQ,KAAK,sBAAsBtvG,CAAI,CAAC,EACrH,KAAK,QAAQ,OAAS,eAAesvG,EAAQ,KAAK,wBAAwBtvG,CAAI,CAAC,GAC1EknG,GAASlnG,CAAI,GACtBsvG,EAAQ,KAAK,mBAAmBtvG,CAAI,CAAC,EAEvCqvG,EAAc,QAAQE,GAAM,CACtBpB,EAAM,QAAQoB,CAAE,EAAI,GAAGD,EAAQ,KAAK,mBAAmBC,CAAE,CAAC,CAChE,CAAC,EACMpB,CACT,CACF,CAEA,MAAMqB,GAAgB,CACpB,KAAM,EACN,IAAK,EACL,IAAK,EACL,IAAK,EACL,KAAM,EACN,MAAO,CACT,EACMC,GAAY,CAChB,OAAQ58H,GAASA,IAAU,EAAI,MAAQ,QACvC,gBAAiB,KAAO,CACtB,iBAAkB,CAAC,MAAO,OAAO,CACrC,EACA,EACA,MAAM68H,EAAe,CACnB,YAAYC,EAAe7wI,EAAU,GAAI,CACvC,KAAK,cAAgB6wI,EACrB,KAAK,QAAU7wI,EACf,KAAK,OAAS8qI,GAAW,OAAO,gBAAgB,EAChD,KAAK,iBAAmB,EAC1B,CACA,QAAQM,EAAK5hH,EAAK,CAChB,KAAK,MAAM4hH,CAAG,EAAI5hH,CACpB,CACA,YAAa,CACX,KAAK,iBAAmB,EAC1B,CACA,QAAQ0X,EAAMlhC,EAAU,GAAI,CAC1B,MAAM8wI,EAAcvG,GAAerpG,IAAS,MAAQ,KAAOA,CAAI,EACzDpkC,EAAOkD,EAAQ,QAAU,UAAY,WACrC8rB,EAAW,KAAK,UAAU,CAC9B,YAAAglH,EACA,KAAAh0I,CACN,CAAK,EACD,GAAIgvB,KAAY,KAAK,iBACnB,OAAO,KAAK,iBAAiBA,CAAQ,EAEvC,IAAIilH,EACJ,GAAI,CACFA,EAAO,IAAI,KAAK,YAAYD,EAAa,CACvC,KAAAh0I,CACR,CAAO,CACH,MAAc,CACZ,GAAI,CAAC,KACH,YAAK,OAAO,MAAM,+CAA+C,EAC1D6zI,GAET,GAAI,CAACzvG,EAAK,MAAM,KAAK,EAAG,OAAOyvG,GAC/B,MAAMK,EAAU,KAAK,cAAc,wBAAwB9vG,CAAI,EAC/D6vG,EAAO,KAAK,QAAQC,EAAShxI,CAAO,CACtC,CACA,YAAK,iBAAiB8rB,CAAQ,EAAIilH,EAC3BA,CACT,CACA,YAAY7vG,EAAMlhC,EAAU,GAAI,CAC9B,IAAI+wI,EAAO,KAAK,QAAQ7vG,EAAMlhC,CAAO,EACrC,OAAK+wI,IAAMA,EAAO,KAAK,QAAQ,MAAO/wI,CAAO,GACtC+wI,GAAM,gBAAe,EAAG,iBAAiB,OAAS,CAC3D,CACA,oBAAoB7vG,EAAMjkC,EAAK+C,EAAU,GAAI,CAC3C,OAAO,KAAK,YAAYkhC,EAAMlhC,CAAO,EAAE,IAAIskB,GAAU,GAAGrnB,CAAG,GAAGqnB,CAAM,EAAE,CACxE,CACA,YAAY4c,EAAMlhC,EAAU,GAAI,CAC9B,IAAI+wI,EAAO,KAAK,QAAQ7vG,EAAMlhC,CAAO,EAErC,OADK+wI,IAAMA,EAAO,KAAK,QAAQ,MAAO/wI,CAAO,GACxC+wI,EACEA,EAAK,gBAAe,EAAG,iBAAiB,KAAK,CAACE,EAAiBC,IAAoBR,GAAcO,CAAe,EAAIP,GAAcQ,CAAe,CAAC,EAAE,IAAIC,GAAkB,GAAG,KAAK,QAAQ,OAAO,GAAGnxI,EAAQ,QAAU,UAAU,KAAK,QAAQ,OAAO,GAAK,EAAE,GAAGmxI,CAAc,EAAE,EADnQ,EAEpB,CACA,UAAUjwG,EAAMntB,EAAO/T,EAAU,GAAI,CACnC,MAAM+wI,EAAO,KAAK,QAAQ7vG,EAAMlhC,CAAO,EACvC,OAAI+wI,EACK,GAAG,KAAK,QAAQ,OAAO,GAAG/wI,EAAQ,QAAU,UAAU,KAAK,QAAQ,OAAO,GAAK,EAAE,GAAG+wI,EAAK,OAAOh9H,CAAK,CAAC,IAE/G,KAAK,OAAO,KAAK,6BAA6BmtB,CAAI,EAAE,EAC7C,KAAK,UAAU,MAAOntB,EAAO/T,CAAO,EAC7C,CACF,CAEA,MAAMoxI,GAAuB,CAACtvI,EAAMqnI,EAAalsI,EAAK+sI,EAAe,IAAKqB,EAAsB,KAAS,CACvG,IAAI3uH,EAAOwsH,GAAoBpnI,EAAMqnI,EAAalsI,CAAG,EACrD,MAAI,CAACyf,GAAQ2uH,GAAuBjD,GAASnrI,CAAG,IAC9Cyf,EAAOytH,GAASroI,EAAM7E,EAAK+sI,CAAY,EACnCttH,IAAS,SAAWA,EAAOytH,GAAShB,EAAalsI,EAAK+sI,CAAY,IAEjEttH,CACT,EACM20H,GAAYnxI,GAAOA,EAAI,QAAQ,MAAO,MAAM,EAClD,MAAMoxI,EAAa,CACjB,YAAYtxI,EAAU,GAAI,CACxB,KAAK,OAAS8qI,GAAW,OAAO,cAAc,EAC9C,KAAK,QAAU9qI,EACf,KAAK,OAASA,GAAS,eAAe,SAAWvB,GAASA,GAC1D,KAAK,KAAKuB,CAAO,CACnB,CACA,KAAKA,EAAU,GAAI,CACZA,EAAQ,gBAAeA,EAAQ,cAAgB,CAClD,YAAa,EACnB,GACI,KAAM,CACJ,OAAQuxI,EACR,YAAAC,EACA,oBAAAC,EACA,OAAA54H,EACA,cAAA64H,EACA,OAAAptH,EACA,cAAAqtH,EACA,gBAAAC,EACA,eAAAC,EACA,eAAAC,EACA,cAAAC,EACA,qBAAAC,EACA,cAAAC,EACA,qBAAAC,EACA,wBAAAC,EACA,YAAAC,EACA,aAAAC,CACN,EAAQryI,EAAQ,cACZ,KAAK,OAASuxI,IAAa,OAAYA,EAAWz+H,GAClD,KAAK,YAAc0+H,IAAgB,OAAYA,EAAc,GAC7D,KAAK,oBAAsBC,IAAwB,OAAYA,EAAsB,GACrF,KAAK,OAAS54H,EAASywH,GAAYzwH,CAAM,EAAI64H,GAAiB,KAC9D,KAAK,OAASptH,EAASglH,GAAYhlH,CAAM,EAAIqtH,GAAiB,KAC9D,KAAK,gBAAkBC,GAAmB,IAC1C,KAAK,eAAiBC,EAAiB,GAAKC,GAAkB,IAC9D,KAAK,eAAiB,KAAK,eAAiB,GAAKD,GAAkB,GACnE,KAAK,cAAgBE,EAAgBzI,GAAYyI,CAAa,EAAIC,GAAwB1I,GAAY,KAAK,EAC3G,KAAK,cAAgB2I,EAAgB3I,GAAY2I,CAAa,EAAIC,GAAwB5I,GAAY,GAAG,EACzG,KAAK,wBAA0B6I,GAA2B,IAC1D,KAAK,YAAcC,GAAe,IAClC,KAAK,aAAeC,IAAiB,OAAYA,EAAe,GAChE,KAAK,YAAW,CAClB,CACA,OAAQ,CACF,KAAK,SAAS,KAAK,KAAK,KAAK,OAAO,CAC1C,CACA,aAAc,CACZ,MAAMC,EAAmB,CAACC,EAAgB9I,IACpC8I,GAAgB,SAAW9I,GAC7B8I,EAAe,UAAY,EACpBA,GAEF,IAAI,OAAO9I,EAAS,GAAG,EAEhC,KAAK,OAAS6I,EAAiB,KAAK,OAAQ,GAAG,KAAK,MAAM,QAAQ,KAAK,MAAM,EAAE,EAC/E,KAAK,eAAiBA,EAAiB,KAAK,eAAgB,GAAG,KAAK,MAAM,GAAG,KAAK,cAAc,QAAQ,KAAK,cAAc,GAAG,KAAK,MAAM,EAAE,EAC3I,KAAK,cAAgBA,EAAiB,KAAK,cAAe,GAAG,KAAK,aAAa,oEAAoE,KAAK,aAAa,EAAE,CACzK,CACA,YAAYz1H,EAAK/a,EAAMspI,EAAKprI,EAAS,CACnC,IAAIgT,EACAvU,EACA+zI,EACJ,MAAMrJ,EAAc,KAAK,SAAW,KAAK,QAAQ,eAAiB,KAAK,QAAQ,cAAc,kBAAoB,GAC3GsJ,EAAex1I,GAAO,CAC1B,GAAIA,EAAI,QAAQ,KAAK,eAAe,EAAI,EAAG,CACzC,MAAMyf,EAAO00H,GAAqBtvI,EAAMqnI,EAAalsI,EAAK,KAAK,QAAQ,aAAc,KAAK,QAAQ,mBAAmB,EACrH,OAAO,KAAK,aAAe,KAAK,OAAOyf,EAAM,OAAW0uH,EAAK,CAC3D,GAAGprI,EACH,GAAG8B,EACH,iBAAkB7E,CAC5B,CAAS,EAAIyf,CACP,CACA,MAAM4D,EAAIrjB,EAAI,MAAM,KAAK,eAAe,EAClC6jB,EAAIR,EAAE,MAAK,EAAG,KAAI,EAClBoyH,EAAIpyH,EAAE,KAAK,KAAK,eAAe,EAAE,KAAI,EAC3C,OAAO,KAAK,OAAO8wH,GAAqBtvI,EAAMqnI,EAAaroH,EAAG,KAAK,QAAQ,aAAc,KAAK,QAAQ,mBAAmB,EAAG4xH,EAAGtH,EAAK,CAClI,GAAGprI,EACH,GAAG8B,EACH,iBAAkBgf,CAC1B,CAAO,CACH,EACA,KAAK,YAAW,EAChB,MAAM6xH,EAA8B3yI,GAAS,6BAA+B,KAAK,QAAQ,4BACnFwuI,EAAkBxuI,GAAS,eAAe,kBAAoB,OAAYA,EAAQ,cAAc,gBAAkB,KAAK,QAAQ,cAAc,gBAQnJ,MAPc,CAAC,CACb,MAAO,KAAK,eACZ,UAAWE,GAAOmxI,GAAUnxI,CAAG,CACrC,EAAO,CACD,MAAO,KAAK,OACZ,UAAWA,GAAO,KAAK,YAAcmxI,GAAU,KAAK,OAAOnxI,CAAG,CAAC,EAAImxI,GAAUnxI,CAAG,CACtF,CAAK,EACK,QAAQ0yI,GAAQ,CAEpB,IADAJ,EAAW,EACJx/H,EAAQ4/H,EAAK,MAAM,KAAK/1H,CAAG,GAAG,CACnC,MAAMg2H,EAAa7/H,EAAM,CAAC,EAAE,KAAI,EAEhC,GADAvU,EAAQg0I,EAAaI,CAAU,EAC3Bp0I,IAAU,OACZ,GAAI,OAAOk0I,GAAgC,WAAY,CACrD,MAAM7X,EAAO6X,EAA4B91H,EAAK7J,EAAOhT,CAAO,EAC5DvB,EAAQ2pI,GAAStN,CAAI,EAAIA,EAAO,EAClC,SAAW96H,GAAW,OAAO,UAAU,eAAe,KAAKA,EAAS6yI,CAAU,EAC5Ep0I,EAAQ,WACC+vI,EAAiB,CAC1B/vI,EAAQuU,EAAM,CAAC,EACf,QACF,MACE,KAAK,OAAO,KAAK,8BAA8B6/H,CAAU,sBAAsBh2H,CAAG,EAAE,EACpFpe,EAAQ,OAED,CAAC2pI,GAAS3pI,CAAK,GAAK,CAAC,KAAK,sBACnCA,EAAQ8pI,GAAW9pI,CAAK,GAE1B,MAAMq0I,EAAYF,EAAK,UAAUn0I,CAAK,EAStC,GARAoe,EAAMA,EAAI,QAAQ7J,EAAM,CAAC,EAAG8/H,CAAS,EACjCtE,GACFoE,EAAK,MAAM,WAAan0I,EAAM,OAC9Bm0I,EAAK,MAAM,WAAa5/H,EAAM,CAAC,EAAE,QAEjC4/H,EAAK,MAAM,UAAY,EAEzBJ,IACIA,GAAY,KAAK,YACnB,KAEJ,CACF,CAAC,EACM31H,CACT,CACA,KAAKA,EAAK4zH,EAAIzwI,EAAU,GAAI,CAC1B,IAAIgT,EACAvU,EACAs0I,EACJ,MAAMC,EAAmB,CAAC/1I,EAAKg2I,IAAqB,CAClD,MAAMC,EAAM,KAAK,wBACjB,GAAIj2I,EAAI,QAAQi2I,CAAG,EAAI,EAAG,OAAOj2I,EACjC,MAAM0W,EAAI1W,EAAI,MAAM,IAAI,OAAO,GAAGi2I,CAAG,OAAO,CAAC,EAC7C,IAAIC,EAAgB,IAAIx/H,EAAE,CAAC,CAAC,GAC5B1W,EAAM0W,EAAE,CAAC,EACTw/H,EAAgB,KAAK,YAAYA,EAAeJ,CAAa,EAC7D,MAAMK,EAAsBD,EAAc,MAAM,IAAI,EAC9CE,EAAsBF,EAAc,MAAM,IAAI,IAC/CC,GAAqB,QAAU,GAAK,IAAM,GAAK,CAACC,GAAuBA,EAAoB,OAAS,IAAM,KAC7GF,EAAgBA,EAAc,QAAQ,KAAM,GAAG,GAEjD,GAAI,CACFJ,EAAgB,KAAK,MAAMI,CAAa,EACpCF,IAAkBF,EAAgB,CACpC,GAAGE,EACH,GAAGF,CACb,EACM,OAASh0H,EAAG,CACV,YAAK,OAAO,KAAK,oDAAoD9hB,CAAG,GAAI8hB,CAAC,EACtE,GAAG9hB,CAAG,GAAGi2I,CAAG,GAAGC,CAAa,EACrC,CACA,OAAIJ,EAAc,cAAgBA,EAAc,aAAa,QAAQ,KAAK,MAAM,EAAI,IAAI,OAAOA,EAAc,aACtG91I,CACT,EACA,KAAO+V,EAAQ,KAAK,cAAc,KAAK6J,CAAG,GAAG,CAC3C,IAAIy2H,EAAa,GACjBP,EAAgB,CACd,GAAG/yI,CACX,EACM+yI,EAAgBA,EAAc,SAAW,CAAC3K,GAAS2K,EAAc,OAAO,EAAIA,EAAc,QAAUA,EACpGA,EAAc,mBAAqB,GACnC,OAAOA,EAAc,aACrB,MAAMQ,EAAc,OAAO,KAAKvgI,EAAM,CAAC,CAAC,EAAIA,EAAM,CAAC,EAAE,YAAY,GAAG,EAAI,EAAIA,EAAM,CAAC,EAAE,QAAQ,KAAK,eAAe,EAMjH,GALIugI,IAAgB,KAClBD,EAAatgI,EAAM,CAAC,EAAE,MAAMugI,CAAW,EAAE,MAAM,KAAK,eAAe,EAAE,IAAIhzC,GAAQA,EAAK,KAAI,CAAE,EAAE,OAAO,OAAO,EAC5GvtF,EAAM,CAAC,EAAIA,EAAM,CAAC,EAAE,MAAM,EAAGugI,CAAW,GAE1C90I,EAAQgyI,EAAGuC,EAAiB,KAAK,KAAMhgI,EAAM,CAAC,EAAE,KAAI,EAAI+/H,CAAa,EAAGA,CAAa,EACjFt0I,GAASuU,EAAM,CAAC,IAAM6J,GAAO,CAACurH,GAAS3pI,CAAK,EAAG,OAAOA,EACrD2pI,GAAS3pI,CAAK,IAAGA,EAAQ8pI,GAAW9pI,CAAK,GACzCA,IACH,KAAK,OAAO,KAAK,qBAAqBuU,EAAM,CAAC,CAAC,gBAAgB6J,CAAG,EAAE,EACnEpe,EAAQ,IAEN60I,EAAW,SACb70I,EAAQ60I,EAAW,OAAO,CAAC,EAAGZ,IAAM,KAAK,OAAO,EAAGA,EAAG1yI,EAAQ,IAAK,CACjE,GAAGA,EACH,iBAAkBgT,EAAM,CAAC,EAAE,KAAI,CACzC,CAAS,EAAGvU,EAAM,MAAM,GAElBoe,EAAMA,EAAI,QAAQ7J,EAAM,CAAC,EAAGvU,CAAK,EACjC,KAAK,OAAO,UAAY,CAC1B,CACA,OAAOoe,CACT,CACF,CAEA,MAAM22H,GAAiBC,GAAa,CAClC,IAAIC,EAAaD,EAAU,YAAW,EAAG,KAAI,EAC7C,MAAME,EAAgB,GACtB,GAAIF,EAAU,QAAQ,GAAG,EAAI,GAAI,CAC/B,MAAMnzH,EAAImzH,EAAU,MAAM,GAAG,EAC7BC,EAAapzH,EAAE,CAAC,EAAE,YAAW,EAAG,KAAI,EACpC,MAAMszH,EAAStzH,EAAE,CAAC,EAAE,UAAU,EAAGA,EAAE,CAAC,EAAE,OAAS,CAAC,EAC5CozH,IAAe,YAAcE,EAAO,QAAQ,GAAG,EAAI,EAChDD,EAAc,WAAUA,EAAc,SAAWC,EAAO,KAAI,GACxDF,IAAe,gBAAkBE,EAAO,QAAQ,GAAG,EAAI,EAC3DD,EAAc,QAAOA,EAAc,MAAQC,EAAO,KAAI,GAE9CA,EAAO,MAAM,GAAG,EACxB,QAAQ1H,GAAO,CAClB,GAAIA,EAAK,CACP,KAAM,CAACjvI,EAAK,GAAGs6B,CAAI,EAAI20G,EAAI,MAAM,GAAG,EAC9BhsI,EAAMq3B,EAAK,KAAK,GAAG,EAAE,OAAO,QAAQ,WAAY,EAAE,EAClDs8G,EAAa52I,EAAI,KAAI,EACtB02I,EAAcE,CAAU,IAAGF,EAAcE,CAAU,EAAI3zI,GACxDA,IAAQ,UAASyzI,EAAcE,CAAU,EAAI,IAC7C3zI,IAAQ,SAAQyzI,EAAcE,CAAU,EAAI,IAC3C,MAAM3zI,CAAG,IAAGyzI,EAAcE,CAAU,EAAI,SAAS3zI,EAAK,EAAE,EAC/D,CACF,CAAC,CAEL,CACA,MAAO,CACL,WAAAwzI,EACA,cAAAC,CACJ,CACA,EACMG,GAAwBxvI,GAAM,CAClC,MAAMmf,EAAQ,GACd,MAAO,CAACtiB,EAAGgtI,EAAG9sI,IAAM,CAClB,IAAI0yI,EAAc1yI,EACdA,GAAKA,EAAE,kBAAoBA,EAAE,cAAgBA,EAAE,aAAaA,EAAE,gBAAgB,GAAKA,EAAEA,EAAE,gBAAgB,IACzG0yI,EAAc,CACZ,GAAGA,EACH,CAAC1yI,EAAE,gBAAgB,EAAG,MAC9B,GAEI,MAAMpE,EAAMkxI,EAAI,KAAK,UAAU4F,CAAW,EAC1C,IAAIC,EAAMvwH,EAAMxmB,CAAG,EACnB,OAAK+2I,IACHA,EAAM1vI,EAAGimI,GAAe4D,CAAC,EAAG9sI,CAAC,EAC7BoiB,EAAMxmB,CAAG,EAAI+2I,GAERA,EAAI7yI,CAAC,CACd,CACF,EACM8yI,GAA2B3vI,GAAM,CAACnD,EAAGgtI,EAAG9sI,IAAMiD,EAAGimI,GAAe4D,CAAC,EAAG9sI,CAAC,EAAEF,CAAC,EAC9E,MAAM+yI,EAAU,CACd,YAAYl0I,EAAU,GAAI,CACxB,KAAK,OAAS8qI,GAAW,OAAO,WAAW,EAC3C,KAAK,QAAU9qI,EACf,KAAK,KAAKA,CAAO,CACnB,CACA,KAAKisI,EAAUjsI,EAAU,CACvB,cAAe,EACnB,EAAK,CACD,KAAK,gBAAkBA,EAAQ,cAAc,iBAAmB,IAChE,MAAMm0I,EAAKn0I,EAAQ,oBAAsB8zI,GAAwBG,GACjE,KAAK,QAAU,CACb,OAAQE,EAAG,CAAC/I,EAAKc,IAAQ,CACvB,MAAMkI,EAAY,IAAI,KAAK,aAAahJ,EAAK,CAC3C,GAAGc,CACb,CAAS,EACD,OAAOhsI,GAAOk0I,EAAU,OAAOl0I,CAAG,CACpC,CAAC,EACD,SAAUi0I,EAAG,CAAC/I,EAAKc,IAAQ,CACzB,MAAMkI,EAAY,IAAI,KAAK,aAAahJ,EAAK,CAC3C,GAAGc,EACH,MAAO,UACjB,CAAS,EACD,OAAOhsI,GAAOk0I,EAAU,OAAOl0I,CAAG,CACpC,CAAC,EACD,SAAUi0I,EAAG,CAAC/I,EAAKc,IAAQ,CACzB,MAAMkI,EAAY,IAAI,KAAK,eAAehJ,EAAK,CAC7C,GAAGc,CACb,CAAS,EACD,OAAOhsI,GAAOk0I,EAAU,OAAOl0I,CAAG,CACpC,CAAC,EACD,aAAci0I,EAAG,CAAC/I,EAAKc,IAAQ,CAC7B,MAAMkI,EAAY,IAAI,KAAK,mBAAmBhJ,EAAK,CACjD,GAAGc,CACb,CAAS,EACD,OAAOhsI,GAAOk0I,EAAU,OAAOl0I,EAAKgsI,EAAI,OAAS,KAAK,CACxD,CAAC,EACD,KAAMiI,EAAG,CAAC/I,EAAKc,IAAQ,CACrB,MAAMkI,EAAY,IAAI,KAAK,WAAWhJ,EAAK,CACzC,GAAGc,CACb,CAAS,EACD,OAAOhsI,GAAOk0I,EAAU,OAAOl0I,CAAG,CACpC,CAAC,CACP,CACE,CACA,IAAIugB,EAAMgwH,EAAI,CACZ,KAAK,QAAQhwH,EAAK,YAAW,EAAG,KAAI,CAAE,EAAIgwH,CAC5C,CACA,UAAUhwH,EAAMgwH,EAAI,CAClB,KAAK,QAAQhwH,EAAK,YAAW,EAAG,MAAM,EAAIqzH,GAAsBrD,CAAE,CACpE,CACA,OAAOhyI,EAAO41I,EAAQjJ,EAAKprI,EAAU,GAAI,CACvC,MAAMs0I,EAAUD,EAAO,MAAM,KAAK,eAAe,EACjD,GAAIC,EAAQ,OAAS,GAAKA,EAAQ,CAAC,EAAE,QAAQ,GAAG,EAAI,GAAKA,EAAQ,CAAC,EAAE,QAAQ,GAAG,EAAI,GAAKA,EAAQ,KAAK5B,GAAKA,EAAE,QAAQ,GAAG,EAAI,EAAE,EAAG,CAC9H,MAAMxkI,EAAYomI,EAAQ,UAAU5B,GAAKA,EAAE,QAAQ,GAAG,EAAI,EAAE,EAC5D4B,EAAQ,CAAC,EAAI,CAACA,EAAQ,CAAC,EAAG,GAAGA,EAAQ,OAAO,EAAGpmI,CAAS,CAAC,EAAE,KAAK,KAAK,eAAe,CACtF,CAyBA,OAxBeomI,EAAQ,OAAO,CAACC,EAAK7B,IAAM,CACxC,KAAM,CACJ,WAAAgB,EACA,cAAAC,CACR,EAAUH,GAAed,CAAC,EACpB,GAAI,KAAK,QAAQgB,CAAU,EAAG,CAC5B,IAAIc,EAAYD,EAChB,GAAI,CACF,MAAME,EAAaz0I,GAAS,eAAeA,EAAQ,gBAAgB,GAAK,GAClEmuI,EAAIsG,EAAW,QAAUA,EAAW,KAAOz0I,EAAQ,QAAUA,EAAQ,KAAOorI,EAClFoJ,EAAY,KAAK,QAAQd,CAAU,EAAEa,EAAKpG,EAAG,CAC3C,GAAGwF,EACH,GAAG3zI,EACH,GAAGy0I,CACf,CAAW,CACH,OAAS/uI,EAAO,CACd,KAAK,OAAO,KAAKA,CAAK,CACxB,CACA,OAAO8uI,CACT,MACE,KAAK,OAAO,KAAK,oCAAoCd,CAAU,EAAE,EAEnE,OAAOa,CACT,EAAG91I,CAAK,CAEV,CACF,CAEA,MAAMi2I,GAAgB,CAACC,EAAGl0H,IAAS,CAC7Bk0H,EAAE,QAAQl0H,CAAI,IAAM,SACtB,OAAOk0H,EAAE,QAAQl0H,CAAI,EACrBk0H,EAAE,eAEN,EACA,MAAMC,WAAkB7J,EAAa,CACnC,YAAY8J,EAAS/6H,EAAOmyH,EAAUjsI,EAAU,GAAI,CAClD,MAAK,EACL,KAAK,QAAU60I,EACf,KAAK,MAAQ/6H,EACb,KAAK,SAAWmyH,EAChB,KAAK,cAAgBA,EAAS,cAC9B,KAAK,QAAUjsI,EACf,KAAK,OAAS8qI,GAAW,OAAO,kBAAkB,EAClD,KAAK,aAAe,GACpB,KAAK,iBAAmB9qI,EAAQ,kBAAoB,GACpD,KAAK,aAAe,EACpB,KAAK,WAAaA,EAAQ,YAAc,EAAIA,EAAQ,WAAa,EACjE,KAAK,aAAeA,EAAQ,cAAgB,EAAIA,EAAQ,aAAe,IACvE,KAAK,MAAQ,GACb,KAAK,MAAQ,GACb,KAAK,SAAS,OAAOisI,EAAUjsI,EAAQ,QAASA,CAAO,CACzD,CACA,UAAU80I,EAAWzI,EAAYrsI,EAASvC,EAAU,CAClD,MAAMs3I,EAAS,GACT5oI,EAAU,GACV6oI,EAAkB,GAClBC,EAAmB,GACzB,OAAAH,EAAU,QAAQ1J,GAAO,CACvB,IAAI8J,EAAmB,GACvB7I,EAAW,QAAQlB,GAAM,CACvB,MAAM1qH,EAAO,GAAG2qH,CAAG,IAAID,CAAE,GACrB,CAACnrI,EAAQ,QAAU,KAAK,MAAM,kBAAkBorI,EAAKD,CAAE,EACzD,KAAK,MAAM1qH,CAAI,EAAI,EACV,KAAK,MAAMA,CAAI,EAAI,IAAc,KAAK,MAAMA,CAAI,IAAM,EAC3DtU,EAAQsU,CAAI,IAAM,SAAWtU,EAAQsU,CAAI,EAAI,KAEjD,KAAK,MAAMA,CAAI,EAAI,EACnBy0H,EAAmB,GACf/oI,EAAQsU,CAAI,IAAM,SAAWtU,EAAQsU,CAAI,EAAI,IAC7Cs0H,EAAOt0H,CAAI,IAAM,SAAWs0H,EAAOt0H,CAAI,EAAI,IAC3Cw0H,EAAiB9J,CAAE,IAAM,SAAW8J,EAAiB9J,CAAE,EAAI,KAEnE,CAAC,EACI+J,IAAkBF,EAAgB5J,CAAG,EAAI,GAChD,CAAC,GACG,OAAO,KAAK2J,CAAM,EAAE,QAAU,OAAO,KAAK5oI,CAAO,EAAE,SACrD,KAAK,MAAM,KAAK,CACd,QAAAA,EACA,aAAc,OAAO,KAAKA,CAAO,EAAE,OACnC,OAAQ,GACR,OAAQ,GACR,SAAA1O,CACR,CAAO,EAEI,CACL,OAAQ,OAAO,KAAKs3I,CAAM,EAC1B,QAAS,OAAO,KAAK5oI,CAAO,EAC5B,gBAAiB,OAAO,KAAK6oI,CAAe,EAC5C,iBAAkB,OAAO,KAAKC,CAAgB,CACpD,CACE,CACA,OAAOx0H,EAAMsN,EAAKjsB,EAAM,CACtB,MAAM81B,EAAInX,EAAK,MAAM,GAAG,EAClB2qH,EAAMxzG,EAAE,CAAC,EACTuzG,EAAKvzG,EAAE,CAAC,EACV7J,GAAK,KAAK,KAAK,gBAAiBq9G,EAAKD,EAAIp9G,CAAG,EAC5C,CAACA,GAAOjsB,GACV,KAAK,MAAM,kBAAkBspI,EAAKD,EAAIrpI,EAAM,OAAW,OAAW,CAChE,SAAU,EAClB,CAAO,EAEH,KAAK,MAAM2e,CAAI,EAAIsN,EAAM,GAAK,EAC1BA,GAAOjsB,IAAM,KAAK,MAAM2e,CAAI,EAAI,GACpC,MAAM00H,EAAS,GACf,KAAK,MAAM,QAAQR,GAAK,CACtB5L,GAAS4L,EAAE,OAAQ,CAACvJ,CAAG,EAAGD,CAAE,EAC5BuJ,GAAcC,EAAGl0H,CAAI,EACjBsN,GAAK4mH,EAAE,OAAO,KAAK5mH,CAAG,EACtB4mH,EAAE,eAAiB,GAAK,CAACA,EAAE,OAC7B,OAAO,KAAKA,EAAE,MAAM,EAAE,QAAQxG,GAAK,CAC5BgH,EAAOhH,CAAC,IAAGgH,EAAOhH,CAAC,EAAI,IAC5B,MAAMiH,EAAaT,EAAE,OAAOxG,CAAC,EACzBiH,EAAW,QACbA,EAAW,QAAQ5gI,GAAK,CAClB2gI,EAAOhH,CAAC,EAAE35H,CAAC,IAAM,SAAW2gI,EAAOhH,CAAC,EAAE35H,CAAC,EAAI,GACjD,CAAC,CAEL,CAAC,EACDmgI,EAAE,KAAO,GACLA,EAAE,OAAO,OACXA,EAAE,SAASA,EAAE,MAAM,EAEnBA,EAAE,SAAQ,EAGhB,CAAC,EACD,KAAK,KAAK,SAAUQ,CAAM,EAC1B,KAAK,MAAQ,KAAK,MAAM,OAAOR,GAAK,CAACA,EAAE,IAAI,CAC7C,CACA,KAAKvJ,EAAKD,EAAIkK,EAAQC,EAAQ,EAAG1rH,EAAO,KAAK,aAAcnsB,EAAU,CACnE,GAAI,CAAC2tI,EAAI,OAAQ,OAAO3tI,EAAS,KAAM,EAAE,EACzC,GAAI,KAAK,cAAgB,KAAK,iBAAkB,CAC9C,KAAK,aAAa,KAAK,CACrB,IAAA2tI,EACA,GAAAD,EACA,OAAAkK,EACA,MAAAC,EACA,KAAA1rH,EACA,SAAAnsB,CACR,CAAO,EACD,MACF,CACA,KAAK,eACL,MAAM83I,EAAW,CAACxnH,EAAKjsB,IAAS,CAE9B,GADA,KAAK,eACD,KAAK,aAAa,OAAS,EAAG,CAChC,MAAMoc,EAAO,KAAK,aAAa,MAAK,EACpC,KAAK,KAAKA,EAAK,IAAKA,EAAK,GAAIA,EAAK,OAAQA,EAAK,MAAOA,EAAK,KAAMA,EAAK,QAAQ,CAChF,CACA,GAAI6P,GAAOjsB,GAAQwzI,EAAQ,KAAK,WAAY,CAC1C,WAAW,IAAM,CACf,KAAK,KAAK,KAAK,KAAMlK,EAAKD,EAAIkK,EAAQC,EAAQ,EAAG1rH,EAAO,EAAGnsB,CAAQ,CACrE,EAAGmsB,CAAI,EACP,MACF,CACAnsB,EAASswB,EAAKjsB,CAAI,CACpB,EACM2uI,EAAK,KAAK,QAAQ4E,CAAM,EAAE,KAAK,KAAK,OAAO,EACjD,GAAI5E,EAAG,SAAW,EAAG,CACnB,GAAI,CACF,MAAM/6F,EAAI+6F,EAAGrF,EAAKD,CAAE,EAChBz1F,GAAK,OAAOA,EAAE,MAAS,WACzBA,EAAE,KAAK5zC,GAAQyzI,EAAS,KAAMzzI,CAAI,CAAC,EAAE,MAAMyzI,CAAQ,EAEnDA,EAAS,KAAM7/F,CAAC,CAEpB,OAAS3nB,EAAK,CACZwnH,EAASxnH,CAAG,CACd,CACA,MACF,CACA,OAAO0iH,EAAGrF,EAAKD,EAAIoK,CAAQ,CAC7B,CACA,eAAeT,EAAWzI,EAAYrsI,EAAU,GAAIvC,EAAU,CAC5D,GAAI,CAAC,KAAK,QACR,YAAK,OAAO,KAAK,gEAAgE,EAC1EA,GAAYA,EAAQ,EAEzB2qI,GAAS0M,CAAS,IAAGA,EAAY,KAAK,cAAc,mBAAmBA,CAAS,GAChF1M,GAASiE,CAAU,IAAGA,EAAa,CAACA,CAAU,GAClD,MAAM0I,EAAS,KAAK,UAAUD,EAAWzI,EAAYrsI,EAASvC,CAAQ,EACtE,GAAI,CAACs3I,EAAO,OAAO,OACjB,OAAKA,EAAO,QAAQ,QAAQt3I,EAAQ,EAC7B,KAETs3I,EAAO,OAAO,QAAQt0H,GAAQ,CAC5B,KAAK,QAAQA,CAAI,CACnB,CAAC,CACH,CACA,KAAKq0H,EAAWzI,EAAY5uI,EAAU,CACpC,KAAK,eAAeq3I,EAAWzI,EAAY,GAAI5uI,CAAQ,CACzD,CACA,OAAOq3I,EAAWzI,EAAY5uI,EAAU,CACtC,KAAK,eAAeq3I,EAAWzI,EAAY,CACzC,OAAQ,EACd,EAAO5uI,CAAQ,CACb,CACA,QAAQgjB,EAAM5H,EAAS,GAAI,CACzB,MAAM+e,EAAInX,EAAK,MAAM,GAAG,EAClB2qH,EAAMxzG,EAAE,CAAC,EACTuzG,EAAKvzG,EAAE,CAAC,EACd,KAAK,KAAKwzG,EAAKD,EAAI,OAAQ,OAAW,OAAW,CAACp9G,EAAKjsB,IAAS,CAC1DisB,GAAK,KAAK,OAAO,KAAK,GAAGlV,CAAM,qBAAqBsyH,CAAE,iBAAiBC,CAAG,UAAWr9G,CAAG,EACxF,CAACA,GAAOjsB,GAAM,KAAK,OAAO,IAAI,GAAG+W,CAAM,oBAAoBsyH,CAAE,iBAAiBC,CAAG,GAAItpI,CAAI,EAC7F,KAAK,OAAO2e,EAAMsN,EAAKjsB,CAAI,CAC7B,CAAC,CACH,CACA,YAAYgzI,EAAW10C,EAAWnjG,EAAKu4I,EAAeC,EAAUz1I,EAAU,GAAI01I,EAAM,IAAM,CAAC,EAAG,CAC5F,GAAI,KAAK,UAAU,OAAO,oBAAsB,CAAC,KAAK,UAAU,OAAO,mBAAmBt1C,CAAS,EAAG,CACpG,KAAK,OAAO,KAAK,qBAAqBnjG,CAAG,uBAAuBmjG,CAAS,uBAAwB,0NAA0N,EAC3T,MACF,CACA,GAAI,EAAqBnjG,GAAQ,MAAQA,IAAQ,IACjD,IAAI,KAAK,SAAS,OAAQ,CACxB,MAAMye,EAAO,CACX,GAAG1b,EACH,SAAAy1I,CACR,EACYhF,EAAK,KAAK,QAAQ,OAAO,KAAK,KAAK,OAAO,EAChD,GAAIA,EAAG,OAAS,EACd,GAAI,CACF,IAAI/6F,EACA+6F,EAAG,SAAW,EAChB/6F,EAAI+6F,EAAGqE,EAAW10C,EAAWnjG,EAAKu4I,EAAe95H,CAAI,EAErDg6B,EAAI+6F,EAAGqE,EAAW10C,EAAWnjG,EAAKu4I,CAAa,EAE7C9/F,GAAK,OAAOA,EAAE,MAAS,WACzBA,EAAE,KAAK5zC,GAAQ4zI,EAAI,KAAM5zI,CAAI,CAAC,EAAE,MAAM4zI,CAAG,EAEzCA,EAAI,KAAMhgG,CAAC,CAEf,OAAS3nB,EAAK,CACZ2nH,EAAI3nH,CAAG,CACT,MAEA0iH,EAAGqE,EAAW10C,EAAWnjG,EAAKu4I,EAAeE,EAAKh6H,CAAI,CAE1D,CACI,CAACo5H,GAAa,CAACA,EAAU,CAAC,GAC9B,KAAK,MAAM,YAAYA,EAAU,CAAC,EAAG10C,EAAWnjG,EAAKu4I,CAAa,EACpE,CACF,CAEA,MAAM50C,GAAM,KAAO,CACjB,MAAO,GACP,UAAW,GACX,GAAI,CAAC,aAAa,EAClB,UAAW,CAAC,aAAa,EACzB,YAAa,CAAC,KAAK,EACnB,WAAY,GACZ,cAAe,GACf,yBAA0B,GAC1B,KAAM,MACN,QAAS,GACT,qBAAsB,GACtB,aAAc,IACd,YAAa,IACb,gBAAiB,IACjB,iBAAkB,IAClB,wBAAyB,GACzB,YAAa,GACb,cAAe,GACf,cAAe,WACf,mBAAoB,GACpB,kBAAmB,GACnB,4BAA6B,GAC7B,YAAa,GACb,wBAAyB,GACzB,WAAY,GACZ,kBAAmB,GACnB,cAAe,GACf,WAAY,GACZ,sBAAuB,GACvB,uBAAwB,GACxB,4BAA6B,GAC7B,wBAAyB,GACzB,iCAAkCv8F,GAAQ,CACxC,IAAIsxI,EAAM,GAIV,GAHI,OAAOtxI,EAAK,CAAC,GAAM,WAAUsxI,EAAMtxI,EAAK,CAAC,GACzC+jI,GAAS/jI,EAAK,CAAC,CAAC,IAAGsxI,EAAI,aAAetxI,EAAK,CAAC,GAC5C+jI,GAAS/jI,EAAK,CAAC,CAAC,IAAGsxI,EAAI,aAAetxI,EAAK,CAAC,GAC5C,OAAOA,EAAK,CAAC,GAAM,UAAY,OAAOA,EAAK,CAAC,GAAM,SAAU,CAC9D,MAAMrE,EAAUqE,EAAK,CAAC,GAAKA,EAAK,CAAC,EACjC,OAAO,KAAKrE,CAAO,EAAE,QAAQ/C,GAAO,CAClC04I,EAAI14I,CAAG,EAAI+C,EAAQ/C,CAAG,CACxB,CAAC,CACH,CACA,OAAO04I,CACT,EACA,cAAe,CACb,YAAa,GACb,OAAQl3I,GAASA,EACjB,OAAQ,KACR,OAAQ,KACR,gBAAiB,IACjB,eAAgB,IAChB,cAAe,MACf,cAAe,IACf,wBAAyB,IACzB,YAAa,IACb,gBAAiB,EACrB,EACE,oBAAqB,EACvB,GACMm3I,GAAmB51I,IACnBooI,GAASpoI,EAAQ,EAAE,IAAGA,EAAQ,GAAK,CAACA,EAAQ,EAAE,GAC9CooI,GAASpoI,EAAQ,WAAW,IAAGA,EAAQ,YAAc,CAACA,EAAQ,WAAW,GACzEooI,GAASpoI,EAAQ,UAAU,IAAGA,EAAQ,WAAa,CAACA,EAAQ,UAAU,GACtEA,EAAQ,eAAe,UAAU,QAAQ,EAAI,IAC/CA,EAAQ,cAAgBA,EAAQ,cAAc,OAAO,CAAC,QAAQ,CAAC,GAE7D,OAAOA,EAAQ,eAAkB,YAAWA,EAAQ,UAAYA,EAAQ,eACrEA,GAGH5B,GAAO,IAAM,CAAC,EACdy3I,GAAsBj4G,GAAQ,CACrB,OAAO,oBAAoB,OAAO,eAAeA,CAAI,CAAC,EAC9D,QAAQ22G,GAAO,CACd,OAAO32G,EAAK22G,CAAG,GAAM,aACvB32G,EAAK22G,CAAG,EAAI32G,EAAK22G,CAAG,EAAE,KAAK32G,CAAI,EAEnC,CAAC,CACH,EACA,MAAMk4G,WAAa/K,EAAa,CAC9B,YAAY/qI,EAAU,GAAIvC,EAAU,CASlC,GARA,MAAK,EACL,KAAK,QAAUm4I,GAAiB51I,CAAO,EACvC,KAAK,SAAW,GAChB,KAAK,OAAS8qI,GACd,KAAK,QAAU,CACb,SAAU,EAChB,EACI+K,GAAoB,IAAI,EACpBp4I,GAAY,CAAC,KAAK,eAAiB,CAACuC,EAAQ,QAAS,CACvD,GAAI,CAAC,KAAK,QAAQ,UAChB,YAAK,KAAKA,EAASvC,CAAQ,EACpB,KAET,WAAW,IAAM,CACf,KAAK,KAAKuC,EAASvC,CAAQ,CAC7B,EAAG,CAAC,CACN,CACF,CACA,KAAKuC,EAAU,GAAIvC,EAAU,CAC3B,KAAK,eAAiB,GAClB,OAAOuC,GAAY,aACrBvC,EAAWuC,EACXA,EAAU,IAERA,EAAQ,WAAa,MAAQA,EAAQ,KACnCooI,GAASpoI,EAAQ,EAAE,EACrBA,EAAQ,UAAYA,EAAQ,GACnBA,EAAQ,GAAG,QAAQ,aAAa,EAAI,IAC7CA,EAAQ,UAAYA,EAAQ,GAAG,CAAC,IAGpC,MAAM+1I,EAAUn1C,GAAG,EACnB,KAAK,QAAU,CACb,GAAGm1C,EACH,GAAG,KAAK,QACR,GAAGH,GAAiB51I,CAAO,CACjC,EACI,KAAK,QAAQ,cAAgB,CAC3B,GAAG+1I,EAAQ,cACX,GAAG,KAAK,QAAQ,aACtB,EACQ/1I,EAAQ,eAAiB,SAC3B,KAAK,QAAQ,wBAA0BA,EAAQ,cAE7CA,EAAQ,cAAgB,SAC1B,KAAK,QAAQ,uBAAyBA,EAAQ,aAEhD,MAAMg2I,EAAsBC,GACrBA,EACD,OAAOA,GAAkB,WAAmB,IAAIA,EAC7CA,EAFoB,KAI7B,GAAI,CAAC,KAAK,QAAQ,QAAS,CACrB,KAAK,QAAQ,OACfnL,GAAW,KAAKkL,EAAoB,KAAK,QAAQ,MAAM,EAAG,KAAK,OAAO,EAEtElL,GAAW,KAAK,KAAM,KAAK,OAAO,EAEpC,IAAIsJ,EACA,KAAK,QAAQ,UACfA,EAAY,KAAK,QAAQ,UAEzBA,EAAYF,GAEd,MAAMgC,EAAK,IAAInG,GAAa,KAAK,OAAO,EACxC,KAAK,MAAQ,IAAI7E,GAAc,KAAK,QAAQ,UAAW,KAAK,OAAO,EACnE,MAAMtzG,EAAI,KAAK,SACfA,EAAE,OAASkzG,GACXlzG,EAAE,cAAgB,KAAK,MACvBA,EAAE,cAAgBs+G,EAClBt+G,EAAE,eAAiB,IAAIg5G,GAAesF,EAAI,CACxC,QAAS,KAAK,QAAQ,gBACtB,qBAAsB,KAAK,QAAQ,oBAC3C,CAAO,EACiC,KAAK,QAAQ,cAAc,QAAU,KAAK,QAAQ,cAAc,SAAWH,EAAQ,cAAc,QAEjI,KAAK,OAAO,UAAU,4IAA4I,EAEhK3B,IAAc,CAAC,KAAK,QAAQ,cAAc,QAAU,KAAK,QAAQ,cAAc,SAAW2B,EAAQ,cAAc,UAClHn+G,EAAE,UAAYo+G,EAAoB5B,CAAS,EACvCx8G,EAAE,UAAU,MAAMA,EAAE,UAAU,KAAKA,EAAG,KAAK,OAAO,EACtD,KAAK,QAAQ,cAAc,OAASA,EAAE,UAAU,OAAO,KAAKA,EAAE,SAAS,GAEzEA,EAAE,aAAe,IAAI05G,GAAa,KAAK,OAAO,EAC9C15G,EAAE,MAAQ,CACR,mBAAoB,KAAK,mBAAmB,KAAK,IAAI,CAC7D,EACMA,EAAE,iBAAmB,IAAIg9G,GAAUoB,EAAoB,KAAK,QAAQ,OAAO,EAAGp+G,EAAE,cAAeA,EAAG,KAAK,OAAO,EAC9GA,EAAE,iBAAiB,GAAG,IAAK,CAACtoB,KAAUjL,IAAS,CAC7C,KAAK,KAAKiL,EAAO,GAAGjL,CAAI,CAC1B,CAAC,EACG,KAAK,QAAQ,mBACfuzB,EAAE,iBAAmBo+G,EAAoB,KAAK,QAAQ,gBAAgB,EAClEp+G,EAAE,iBAAiB,MAAMA,EAAE,iBAAiB,KAAKA,EAAG,KAAK,QAAQ,UAAW,KAAK,OAAO,GAE1F,KAAK,QAAQ,aACfA,EAAE,WAAao+G,EAAoB,KAAK,QAAQ,UAAU,EACtDp+G,EAAE,WAAW,MAAMA,EAAE,WAAW,KAAK,IAAI,GAE/C,KAAK,WAAa,IAAIo0G,GAAW,KAAK,SAAU,KAAK,OAAO,EAC5D,KAAK,WAAW,GAAG,IAAK,CAAC18H,KAAUjL,IAAS,CAC1C,KAAK,KAAKiL,EAAO,GAAGjL,CAAI,CAC1B,CAAC,EACD,KAAK,QAAQ,SAAS,QAAQ+K,GAAK,CAC7BA,EAAE,MAAMA,EAAE,KAAK,IAAI,CACzB,CAAC,CACH,CAGA,GAFA,KAAK,OAAS,KAAK,QAAQ,cAAc,OACpC3R,IAAUA,EAAWW,IACtB,KAAK,QAAQ,aAAe,CAAC,KAAK,SAAS,kBAAoB,CAAC,KAAK,QAAQ,IAAK,CACpF,MAAMixI,EAAQ,KAAK,SAAS,cAAc,iBAAiB,KAAK,QAAQ,WAAW,EAC/EA,EAAM,OAAS,GAAKA,EAAM,CAAC,IAAM,QAAO,KAAK,QAAQ,IAAMA,EAAM,CAAC,EACxE,CACI,CAAC,KAAK,SAAS,kBAAoB,CAAC,KAAK,QAAQ,KACnD,KAAK,OAAO,KAAK,yDAAyD,EAE3D,CAAC,cAAe,oBAAqB,oBAAqB,mBAAmB,EACrF,QAAQgG,GAAU,CACzB,KAAKA,CAAM,EAAI,IAAIhxI,IAAS,KAAK,MAAMgxI,CAAM,EAAE,GAAGhxI,CAAI,CACxD,CAAC,EACuB,CAAC,cAAe,eAAgB,oBAAqB,sBAAsB,EACnF,QAAQgxI,GAAU,CAChC,KAAKA,CAAM,EAAI,IAAIhxI,KACjB,KAAK,MAAMgxI,CAAM,EAAE,GAAGhxI,CAAI,EACnB,KAEX,CAAC,EACD,MAAM8xI,EAAW9N,GAAK,EAChB5gG,EAAO,IAAM,CACjB,MAAM2uG,EAAS,CAACroH,EAAKs/B,IAAM,CACzB,KAAK,eAAiB,GAClB,KAAK,eAAiB,CAAC,KAAK,sBAAsB,KAAK,OAAO,KAAK,uEAAuE,EAC9I,KAAK,cAAgB,GAChB,KAAK,QAAQ,SAAS,KAAK,OAAO,IAAI,cAAe,KAAK,OAAO,EACtE,KAAK,KAAK,cAAe,KAAK,OAAO,EACrC8oF,EAAS,QAAQ9oF,CAAC,EAClB5vD,EAASswB,EAAKs/B,CAAC,CACjB,EACA,GAAI,KAAK,WAAa,CAAC,KAAK,cAAe,OAAO+oF,EAAO,KAAM,KAAK,EAAE,KAAK,IAAI,CAAC,EAChF,KAAK,eAAe,KAAK,QAAQ,IAAKA,CAAM,CAC9C,EACA,OAAI,KAAK,QAAQ,WAAa,CAAC,KAAK,QAAQ,UAC1C3uG,EAAI,EAEJ,WAAWA,EAAM,CAAC,EAEb0uG,CACT,CACA,cAAc7H,EAAU7wI,EAAWW,GAAM,CACvC,IAAIi4I,EAAe54I,EACnB,MAAMwxI,EAAU7G,GAASkG,CAAQ,EAAIA,EAAW,KAAK,SAErD,GADI,OAAOA,GAAa,aAAY+H,EAAe/H,GAC/C,CAAC,KAAK,QAAQ,WAAa,KAAK,QAAQ,wBAAyB,CACnE,GAAIW,GAAS,YAAW,IAAO,WAAa,CAAC,KAAK,QAAQ,SAAW,KAAK,QAAQ,QAAQ,SAAW,GAAI,OAAOoH,EAAY,EAC5H,MAAMtB,EAAS,GACTuB,EAASlL,GAAO,CAEpB,GADI,CAACA,GACDA,IAAQ,SAAU,OACT,KAAK,SAAS,cAAc,mBAAmBA,CAAG,EAC1D,QAAQ+C,GAAK,CACZA,IAAM,UACN4G,EAAO,QAAQ5G,CAAC,EAAI,GAAG4G,EAAO,KAAK5G,CAAC,CAC1C,CAAC,CACH,EACKc,EAIHqH,EAAOrH,CAAO,EAHI,KAAK,SAAS,cAAc,iBAAiB,KAAK,QAAQ,WAAW,EAC7E,QAAQd,GAAKmI,EAAOnI,CAAC,CAAC,EAIlC,KAAK,QAAQ,SAAS,UAAUA,GAAKmI,EAAOnI,CAAC,CAAC,EAC9C,KAAK,SAAS,iBAAiB,KAAK4G,EAAQ,KAAK,QAAQ,GAAIh2H,GAAK,CAC5D,CAACA,GAAK,CAAC,KAAK,kBAAoB,KAAK,UAAU,KAAK,oBAAoB,KAAK,QAAQ,EACzFs3H,EAAat3H,CAAC,CAChB,CAAC,CACH,MACEs3H,EAAa,IAAI,CAErB,CACA,gBAAgBpI,EAAM9C,EAAI1tI,EAAU,CAClC,MAAM04I,EAAW9N,GAAK,EACtB,OAAI,OAAO4F,GAAS,aAClBxwI,EAAWwwI,EACXA,EAAO,QAEL,OAAO9C,GAAO,aAChB1tI,EAAW0tI,EACXA,EAAK,QAEF8C,IAAMA,EAAO,KAAK,WAClB9C,IAAIA,EAAK,KAAK,QAAQ,IACtB1tI,IAAUA,EAAWW,IAC1B,KAAK,SAAS,iBAAiB,OAAO6vI,EAAM9C,EAAIp9G,GAAO,CACrDooH,EAAS,QAAO,EAChB14I,EAASswB,CAAG,CACd,CAAC,EACMooH,CACT,CACA,IAAI1qG,EAAQ,CACV,GAAI,CAACA,EAAQ,MAAM,IAAI,MAAM,+FAA+F,EAC5H,GAAI,CAACA,EAAO,KAAM,MAAM,IAAI,MAAM,0FAA0F,EAC5H,OAAIA,EAAO,OAAS,YAClB,KAAK,QAAQ,QAAUA,IAErBA,EAAO,OAAS,UAAYA,EAAO,KAAOA,EAAO,MAAQA,EAAO,SAClE,KAAK,QAAQ,OAASA,GAEpBA,EAAO,OAAS,qBAClB,KAAK,QAAQ,iBAAmBA,GAE9BA,EAAO,OAAS,eAClB,KAAK,QAAQ,WAAaA,GAExBA,EAAO,OAAS,iBAClB6/F,GAAc,iBAAiB7/F,CAAM,EAEnCA,EAAO,OAAS,cAClB,KAAK,QAAQ,UAAYA,GAEvBA,EAAO,OAAS,YAClB,KAAK,QAAQ,SAAS,KAAKA,CAAM,EAE5B,IACT,CACA,oBAAoB0iG,EAAG,CACrB,GAAI,GAACA,GAAK,CAAC,KAAK,YACZ,GAAC,SAAU,KAAK,EAAE,QAAQA,CAAC,EAAI,IACnC,SAASoI,EAAK,EAAGA,EAAK,KAAK,UAAU,OAAQA,IAAM,CACjD,MAAMC,EAAY,KAAK,UAAUD,CAAE,EACnC,GAAI,GAAC,SAAU,KAAK,EAAE,QAAQC,CAAS,EAAI,KACvC,KAAK,MAAM,4BAA4BA,CAAS,EAAG,CACrD,KAAK,iBAAmBA,EACxB,KACF,CACF,CACI,CAAC,KAAK,kBAAoB,KAAK,UAAU,QAAQrI,CAAC,EAAI,GAAK,KAAK,MAAM,4BAA4BA,CAAC,IACrG,KAAK,iBAAmBA,EACxB,KAAK,UAAU,QAAQA,CAAC,GAE5B,CACA,eAAe/C,EAAK3tI,EAAU,CAC5B,KAAK,qBAAuB2tI,EAC5B,MAAM+K,EAAW9N,GAAK,EACtB,KAAK,KAAK,mBAAoB+C,CAAG,EACjC,MAAMqL,EAActI,GAAK,CACvB,KAAK,SAAWA,EAChB,KAAK,UAAY,KAAK,SAAS,cAAc,mBAAmBA,CAAC,EACjE,KAAK,iBAAmB,OACxB,KAAK,oBAAoBA,CAAC,CAC5B,EACMuI,EAAO,CAAC3oH,EAAKogH,IAAM,CACnBA,EACE,KAAK,uBAAyB/C,IAChCqL,EAAYtI,CAAC,EACb,KAAK,WAAW,eAAeA,CAAC,EAChC,KAAK,qBAAuB,OAC5B,KAAK,KAAK,kBAAmBA,CAAC,EAC9B,KAAK,OAAO,IAAI,kBAAmBA,CAAC,GAGtC,KAAK,qBAAuB,OAE9BgI,EAAS,QAAQ,IAAI9xI,IAAS,KAAK,EAAE,GAAGA,CAAI,CAAC,EACzC5G,GAAUA,EAASswB,EAAK,IAAI1pB,IAAS,KAAK,EAAE,GAAGA,CAAI,CAAC,CAC1D,EACMsyI,EAAS1I,GAAQ,CACjB,CAAC7C,GAAO,CAAC6C,GAAQ,KAAK,SAAS,mBAAkBA,EAAO,IAC5D,MAAM2I,EAAKxO,GAAS6F,CAAI,EAAIA,EAAOA,GAAQA,EAAK,CAAC,EAC3CE,EAAI,KAAK,MAAM,4BAA4ByI,CAAE,EAAIA,EAAK,KAAK,SAAS,cAAc,sBAAsBxO,GAAS6F,CAAI,EAAI,CAACA,CAAI,EAAIA,CAAI,EACxIE,IACG,KAAK,UACRsI,EAAYtI,CAAC,EAEV,KAAK,WAAW,UAAU,KAAK,WAAW,eAAeA,CAAC,EAC/D,KAAK,SAAS,kBAAkB,oBAAoBA,CAAC,GAEvD,KAAK,cAAcA,EAAGpgH,GAAO,CAC3B2oH,EAAK3oH,EAAKogH,CAAC,CACb,CAAC,CACH,EACA,MAAI,CAAC/C,GAAO,KAAK,SAAS,kBAAoB,CAAC,KAAK,SAAS,iBAAiB,MAC5EuL,EAAO,KAAK,SAAS,iBAAiB,OAAM,CAAE,EACrC,CAACvL,GAAO,KAAK,SAAS,kBAAoB,KAAK,SAAS,iBAAiB,MAC9E,KAAK,SAAS,iBAAiB,OAAO,SAAW,EACnD,KAAK,SAAS,iBAAiB,OAAM,EAAG,KAAKuL,CAAM,EAEnD,KAAK,SAAS,iBAAiB,OAAOA,CAAM,EAG9CA,EAAOvL,CAAG,EAEL+K,CACT,CACA,UAAU/K,EAAKD,EAAI0L,EAAW,CAC5B,MAAMC,EAAS,CAAC75I,EAAKye,KAAS6b,IAAS,CACrC,IAAIl2B,EACA,OAAOqa,GAAS,SAClBra,EAAI,KAAK,QAAQ,iCAAiC,CAACpE,EAAKye,CAAI,EAAE,OAAO6b,CAAI,CAAC,EAE1El2B,EAAI,CACF,GAAGqa,CACb,EAEMra,EAAE,IAAMA,EAAE,KAAOy1I,EAAO,IACxBz1I,EAAE,KAAOA,EAAE,MAAQy1I,EAAO,KAC1Bz1I,EAAE,GAAKA,EAAE,IAAMy1I,EAAO,GAClBz1I,EAAE,YAAc,KAAIA,EAAE,UAAYA,EAAE,WAAaw1I,GAAaC,EAAO,WACzE,MAAM9M,EAAe,KAAK,QAAQ,cAAgB,IAClD,IAAI+M,EACJ,OAAI11I,EAAE,WAAa,MAAM,QAAQpE,CAAG,EAClC85I,EAAY95I,EAAI,IAAI6jB,IACd,OAAOA,GAAM,aAAYA,EAAI+qH,GAAiB/qH,EAAG,CACnD,GAAG,KAAK,QACR,GAAGpF,CACf,CAAW,GACM,GAAGra,EAAE,SAAS,GAAG2oI,CAAY,GAAGlpH,CAAC,GACzC,GAEG,OAAO7jB,GAAQ,aAAYA,EAAM4uI,GAAiB5uI,EAAK,CACzD,GAAG,KAAK,QACR,GAAGye,CACb,CAAS,GACDq7H,EAAY11I,EAAE,UAAY,GAAGA,EAAE,SAAS,GAAG2oI,CAAY,GAAG/sI,CAAG,GAAKA,GAE7D,KAAK,EAAE85I,EAAW11I,CAAC,CAC5B,EACA,OAAI+mI,GAASgD,CAAG,EACd0L,EAAO,IAAM1L,EAEb0L,EAAO,KAAO1L,EAEhB0L,EAAO,GAAK3L,EACZ2L,EAAO,UAAYD,EACZC,CACT,CACA,KAAKzyI,EAAM,CACT,OAAO,KAAK,YAAY,UAAU,GAAGA,CAAI,CAC3C,CACA,UAAUA,EAAM,CACd,OAAO,KAAK,YAAY,OAAO,GAAGA,CAAI,CACxC,CACA,oBAAoB8mI,EAAI,CACtB,KAAK,QAAQ,UAAYA,CAC3B,CACA,mBAAmBA,EAAInrI,EAAU,GAAI,CACnC,GAAI,CAAC,KAAK,cACR,YAAK,OAAO,KAAK,kDAAmD,KAAK,SAAS,EAC3E,GAET,GAAI,CAAC,KAAK,WAAa,CAAC,KAAK,UAAU,OACrC,YAAK,OAAO,KAAK,6DAA8D,KAAK,SAAS,EACtF,GAET,MAAMorI,EAAMprI,EAAQ,KAAO,KAAK,kBAAoB,KAAK,UAAU,CAAC,EAC9Dg3I,EAAc,KAAK,QAAU,KAAK,QAAQ,YAAc,GACxDC,EAAU,KAAK,UAAU,KAAK,UAAU,OAAS,CAAC,EACxD,GAAI7L,EAAI,gBAAkB,SAAU,MAAO,GAC3C,MAAM8L,EAAiB,CAAC/I,EAAG35H,IAAM,CAC/B,MAAM2iI,EAAY,KAAK,SAAS,iBAAiB,MAAM,GAAGhJ,CAAC,IAAI35H,CAAC,EAAE,EAClE,OAAO2iI,IAAc,IAAMA,IAAc,GAAKA,IAAc,CAC9D,EACA,GAAIn3I,EAAQ,SAAU,CACpB,MAAMo3I,EAAYp3I,EAAQ,SAAS,KAAMk3I,CAAc,EACvD,GAAIE,IAAc,OAAW,OAAOA,CACtC,CAGA,MAFI,QAAK,kBAAkBhM,EAAKD,CAAE,GAC9B,CAAC,KAAK,SAAS,iBAAiB,SAAW,KAAK,QAAQ,WAAa,CAAC,KAAK,QAAQ,yBACnF+L,EAAe9L,EAAKD,CAAE,IAAM,CAAC6L,GAAeE,EAAeD,EAAS9L,CAAE,GAE5E,CACA,eAAeA,EAAI1tI,EAAU,CAC3B,MAAM04I,EAAW9N,GAAK,EACtB,OAAK,KAAK,QAAQ,IAIdD,GAAS+C,CAAE,IAAGA,EAAK,CAACA,CAAE,GAC1BA,EAAG,QAAQ32H,GAAK,CACV,KAAK,QAAQ,GAAG,QAAQA,CAAC,EAAI,GAAG,KAAK,QAAQ,GAAG,KAAKA,CAAC,CAC5D,CAAC,EACD,KAAK,cAAcuZ,GAAO,CACxBooH,EAAS,QAAO,EACZ14I,GAAUA,EAASswB,CAAG,CAC5B,CAAC,EACMooH,IAXD14I,GAAUA,EAAQ,EACf,QAAQ,QAAO,EAW1B,CACA,cAAcwwI,EAAMxwI,EAAU,CAC5B,MAAM04I,EAAW9N,GAAK,EAClBD,GAAS6F,CAAI,IAAGA,EAAO,CAACA,CAAI,GAChC,MAAMoJ,EAAY,KAAK,QAAQ,SAAW,GACpCC,EAAUrJ,EAAK,OAAO7C,GAAOiM,EAAU,QAAQjM,CAAG,EAAI,GAAK,KAAK,SAAS,cAAc,gBAAgBA,CAAG,CAAC,EACjH,OAAKkM,EAAQ,QAIb,KAAK,QAAQ,QAAUD,EAAU,OAAOC,CAAO,EAC/C,KAAK,cAAcvpH,GAAO,CACxBooH,EAAS,QAAO,EACZ14I,GAAUA,EAASswB,CAAG,CAC5B,CAAC,EACMooH,IARD14I,GAAUA,EAAQ,EACf,QAAQ,QAAO,EAQ1B,CACA,IAAI2tI,EAAK,CAEP,GADKA,IAAKA,EAAM,KAAK,mBAAqB,KAAK,WAAW,OAAS,EAAI,KAAK,UAAU,CAAC,EAAI,KAAK,WAC5F,CAACA,EAAK,MAAO,MACjB,GAAI,CACF,MAAM,EAAI,IAAI,KAAK,OAAOA,CAAG,EAC7B,GAAI,GAAK,EAAE,YAAa,CACtB,MAAMmM,EAAK,EAAE,YAAW,EACxB,GAAIA,GAAMA,EAAG,UAAW,OAAOA,EAAG,SACpC,CACF,MAAY,CAAC,CACb,MAAMC,EAAU,CAAC,KAAM,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,KAAM,KAAM,KAAM,MAAO,MAAO,MAAO,MAAO,MAAO,KAAM,KAAM,MAAO,MAAO,MAAO,KAAM,KAAM,MAAO,MAAO,MAAO,KAAM,MAAO,MAAO,MAAO,MAAO,KAAM,MAAO,KAAK,EACjb3G,EAAgB,KAAK,UAAU,eAAiB,IAAId,GAAanvC,IAAK,EAC5E,OAAIwqC,EAAI,cAAc,QAAQ,OAAO,EAAI,EAAU,MAC5CoM,EAAQ,QAAQ3G,EAAc,wBAAwBzF,CAAG,CAAC,EAAI,IAAMA,EAAI,YAAW,EAAG,QAAQ,OAAO,EAAI,EAAI,MAAQ,KAC9H,CACA,OAAO,eAAeprI,EAAU,GAAIvC,EAAU,CAC5C,MAAM0tD,EAAW,IAAI2qF,GAAK91I,EAASvC,CAAQ,EAC3C,OAAA0tD,EAAS,eAAiB2qF,GAAK,eACxB3qF,CACT,CACA,cAAcnrD,EAAU,GAAIvC,EAAWW,GAAM,CAC3C,MAAMq5I,EAAoBz3I,EAAQ,kBAC9By3I,GAAmB,OAAOz3I,EAAQ,kBACtC,MAAM2oD,EAAgB,CACpB,GAAG,KAAK,QACR,GAAG3oD,EAED,QAAS,EAEjB,EACUo4G,EAAQ,IAAI09B,GAAKntF,CAAa,EAcpC,IAbI3oD,EAAQ,QAAU,QAAaA,EAAQ,SAAW,UACpDo4G,EAAM,OAASA,EAAM,OAAO,MAAMp4G,CAAO,GAErB,CAAC,QAAS,WAAY,UAAU,EACxC,QAAQoP,GAAK,CACzBgpG,EAAMhpG,CAAC,EAAI,KAAKA,CAAC,CACnB,CAAC,EACDgpG,EAAM,SAAW,CACf,GAAG,KAAK,QACd,EACIA,EAAM,SAAS,MAAQ,CACrB,mBAAoBA,EAAM,mBAAmB,KAAKA,CAAK,CAC7D,EACQq/B,EAAmB,CACrB,MAAMC,EAAa,OAAO,KAAK,KAAK,MAAM,IAAI,EAAE,OAAO,CAAC33H,EAAMouH,KAC5DpuH,EAAKouH,CAAC,EAAI,CACR,GAAG,KAAK,MAAM,KAAKA,CAAC,CAC9B,EACQpuH,EAAKouH,CAAC,EAAI,OAAO,KAAKpuH,EAAKouH,CAAC,CAAC,EAAE,OAAO,CAACrzG,EAAKtmB,KAC1CsmB,EAAItmB,CAAC,EAAI,CACP,GAAGuL,EAAKouH,CAAC,EAAE35H,CAAC,CACxB,EACiBsmB,GACN/a,EAAKouH,CAAC,CAAC,EACHpuH,GACN,EAAE,EACLq4F,EAAM,MAAQ,IAAI8yB,GAAcwM,EAAY/uF,CAAa,EACzDyvD,EAAM,SAAS,cAAgBA,EAAM,KACvC,CACA,OAAAA,EAAM,WAAa,IAAI4zB,GAAW5zB,EAAM,SAAUzvD,CAAa,EAC/DyvD,EAAM,WAAW,GAAG,IAAK,CAAC9oG,KAAUjL,IAAS,CAC3C+zG,EAAM,KAAK9oG,EAAO,GAAGjL,CAAI,CAC3B,CAAC,EACD+zG,EAAM,KAAKzvD,EAAelrD,CAAQ,EAClC26G,EAAM,WAAW,QAAUzvD,EAC3ByvD,EAAM,WAAW,iBAAiB,SAAS,MAAQ,CACjD,mBAAoBA,EAAM,mBAAmB,KAAKA,CAAK,CAC7D,EACWA,CACT,CACA,QAAS,CACP,MAAO,CACL,QAAS,KAAK,QACd,MAAO,KAAK,MACZ,SAAU,KAAK,SACf,UAAW,KAAK,UAChB,iBAAkB,KAAK,gBAC7B,CACE,CACF,CACA,MAAMjtD,GAAW2qF,GAAK,eAAc,EAEb3qF,GAAS,eACpBA,GAAS,IACRA,GAAS,KACAA,GAAS,cACPA,GAAS,gBACrBA,GAAS,IACEA,GAAS,eACdA,GAAS,UACjBA,GAAS,EACJA,GAAS,OACIA,GAAS,oBACVA,GAAS,mBACbA,GAAS,eACVA,GAAS,cC1pEnB,MAACwsF,GAAO,CAACC,EAAM12G,EAAM22G,EAAKtgH,IAAS,CAC7C,MAAMlzB,EAAO,CAACwzI,EAAK,CACjB,KAAA32G,EACA,GAAI3J,GAAQ,EAChB,CAAG,EACD,GAAIqgH,GAAM,UAAU,QAAQ,QAC1B,OAAOA,EAAK,SAAS,OAAO,QAAQvzI,EAAM,OAAQ,kBAAmB,EAAI,EAEvE+jI,GAAS/jI,EAAK,CAAC,CAAC,IAAGA,EAAK,CAAC,EAAI,mBAAmBA,EAAK,CAAC,CAAC,IACvDuzI,GAAM,UAAU,QAAQ,KAC1BA,EAAK,SAAS,OAAO,KAAK,GAAGvzI,CAAI,EACxB,SAAS,MAClB,QAAQ,KAAK,GAAGA,CAAI,CAExB,EACMyzI,GAAgB,GACTC,GAAW,CAACH,EAAM12G,EAAM22G,EAAKtgH,IAAS,CAC7C6wG,GAASyP,CAAG,GAAKC,GAAcD,CAAG,IAClCzP,GAASyP,CAAG,IAAGC,GAAcD,CAAG,EAAI,IAAI,MAC5CF,GAAKC,EAAM12G,EAAM22G,EAAKtgH,CAAI,EAC5B,EACMygH,GAAY,CAACJ,EAAMn7H,IAAO,IAAM,CACpC,GAAIm7H,EAAK,cACPn7H,EAAE,MACG,CACL,MAAMw7H,EAAc,IAAM,CACxB,WAAW,IAAM,CACfL,EAAK,IAAI,cAAeK,CAAW,CACrC,EAAG,CAAC,EACJx7H,EAAE,CACJ,EACAm7H,EAAK,GAAG,cAAeK,CAAW,CACpC,CACF,EACaC,GAAiB,CAACN,EAAMzM,EAAI1uH,IAAO,CAC9Cm7H,EAAK,eAAezM,EAAI6M,GAAUJ,EAAMn7H,CAAE,CAAC,CAC7C,EACa07H,GAAgB,CAACP,EAAMxM,EAAKD,EAAI1uH,IAAO,CAElD,GADI2rH,GAAS+C,CAAE,IAAGA,EAAK,CAACA,CAAE,GACtByM,EAAK,QAAQ,SAAWA,EAAK,QAAQ,QAAQ,QAAQxM,CAAG,EAAI,GAAI,OAAO8M,GAAeN,EAAMzM,EAAI1uH,CAAE,EACtG0uH,EAAG,QAAQ32H,GAAK,CACVojI,EAAK,QAAQ,GAAG,QAAQpjI,CAAC,EAAI,GAAGojI,EAAK,QAAQ,GAAG,KAAKpjI,CAAC,CAC5D,CAAC,EACDojI,EAAK,cAAcxM,EAAK4M,GAAUJ,EAAMn7H,CAAE,CAAC,CAC7C,EACa27H,GAAqB,CAACjN,EAAIyM,EAAM53I,EAAU,KACjD,CAAC43I,EAAK,WAAa,CAACA,EAAK,UAAU,QACrCG,GAASH,EAAM,eAAgB,yCAA0C,CACvE,UAAWA,EAAK,SACtB,CAAK,EACM,IAEFA,EAAK,mBAAmBzM,EAAI,CACjC,IAAKnrI,EAAQ,IACb,SAAU,CAACq4I,EAAcnB,IAAmB,CAC1C,GAAIl3I,EAAQ,UAAYA,EAAQ,SAAS,QAAQ,kBAAkB,EAAI,IAAMq4I,EAAa,SAAS,iBAAiB,SAAWA,EAAa,sBAAwB,CAACnB,EAAemB,EAAa,qBAAsBlN,CAAE,EAAG,MAAO,EACrO,CACJ,CAAG,EAGU/C,GAAW5+G,GAAO,OAAOA,GAAQ,SACjC4iH,GAAW5iH,GAAO,OAAOA,GAAQ,UAAYA,IAAQ,KC7D5D8uH,GAAkB,oGAClBC,GAAe,CACnB,QAAS,IACT,QAAS,IACT,OAAQ,IACR,QAAS,IACT,OAAQ,IACR,QAAS,IACT,SAAU,IACV,QAAS,IACT,SAAU,IACV,QAAS,IACT,SAAU,IACV,SAAU,IACV,SAAU,IACV,SAAU,IACV,QAAS,IACT,SAAU,IACV,WAAY,IACZ,UAAW,IACX,SAAU,IACV,QAAS,GACX,EACMC,GAAqBppI,GAAKmpI,GAAanpI,CAAC,EACjCqpI,GAAWv2C,GAAQA,EAAK,QAAQo2C,GAAiBE,EAAkB,ECvBhF,IAAIE,GAAiB,CACnB,SAAU,kBACV,cAAe,GACf,oBAAqB,GACrB,2BAA4B,GAC5B,mBAAoB,GACpB,2BAA4B,CAAC,KAAM,SAAU,IAAK,GAAG,EACrD,YAAa,GACb,SAAAD,EACF,EACO,MAAME,GAAc,CAAC34I,EAAU,KAAO,CAC3C04I,GAAiB,CACf,GAAGA,GACH,GAAG14I,CACP,CACA,EACa44I,GAAc,IAAMF,GCjBjC,IAAIL,GACG,MAAMQ,GAAU1tF,GAAY,CACjCktF,GAAeltF,CACjB,EACa2tF,GAAU,IAAMT,GCFhBU,GAAmB,CAC9B,KAAM,WACN,KAAK5tF,EAAU,CACbwtF,GAAYxtF,EAAS,QAAQ,KAAK,EAClC0tF,GAAQ1tF,CAAQ,CAClB,CACF,ECHa6tF,GAAcrrG,gBAAa,EACjC,MAAMsrG,EAAiB,CAC5B,aAAc,CACZ,KAAK,eAAiB,EACxB,CACA,kBAAkB5M,EAAY,CAC5BA,EAAW,QAAQlB,GAAM,CAClB,KAAK,eAAeA,CAAE,IAAG,KAAK,eAAeA,CAAE,EAAI,GAC1D,CAAC,CACH,CACA,mBAAoB,CAClB,OAAO,OAAO,KAAK,KAAK,cAAc,CACxC,CACF,aCdA,MAAM+N,GAAY,CAACp4H,EAAGq4H,IAChB/Q,GAAS+Q,CAAkB,EAAUA,EACrC/M,GAAS+M,CAAkB,GAAK/Q,GAAS+Q,EAAmB,YAAY,EAAUA,EAAmB,aAClG,MAAM,QAAQr4H,CAAC,EAAIA,EAAEA,EAAE,OAAS,CAAC,EAAIA,EAExCs4H,GAAmB,CACvB,EAAGF,GACH,MAAO,EACT,EACMG,GAAiB,IAAM,IAAM,CAAC,EACvBC,GAAiB,CAACnO,EAAIn5H,EAAQ,KAAO,CAChD,KAAM,CACJ,KAAMunI,CACV,EAAMvnI,EACE,CACJ,KAAMwnI,EACN,UAAWC,CACf,EAAM5rG,aAAWmrG,EAAW,GAAK,GACzBpB,EAAO2B,GAAiBC,GAAmBV,GAAO,EACpDlB,GAAQ,CAACA,EAAK,mBAAkBA,EAAK,iBAAmB,IAAIqB,IAC3DrB,GACHG,GAASH,EAAM,sBAAuB,wFAAwF,EAEhI,MAAM8B,EAAcl7G,UAAQ,KAAO,CACjC,GAAGo6G,GAAW,EACd,GAAGhB,GAAM,SAAS,MAClB,GAAG5lI,CACP,GAAM,CAAC4lI,EAAM5lI,CAAK,CAAC,EACX,CACJ,YAAA2nI,EACA,UAAA9C,CACJ,EAAM6C,EACErN,EAAa7tG,UAAQ,IAAM,CAC/B,MAAMo7G,EAAczO,GAAMsO,GAAwB7B,GAAM,SAAS,UACjE,OAAOxP,GAASwR,CAAW,EAAI,CAACA,CAAW,EAAIA,GAAe,CAAC,aAAa,CAC9E,EAAG,CAACzO,EAAIsO,EAAsB7B,CAAI,CAAC,EACnCA,GAAM,kBAAkB,oBAAoBvL,CAAU,EACtD,MAAMwN,EAAct7G,SAAO,CAAC,EACtBxoB,EAAY6nD,cAAYngE,GAAY,CACxC,GAAI,CAACm6I,EAAM,OAAOyB,GAClB,KAAM,CACJ,SAAAS,EACA,cAAAC,CACN,EAAQL,EACEM,EAAkB,IAAM,CAC5BH,EAAY,SAAW,EACvBp8I,EAAQ,CACV,EACA,OAAIq8I,GAAUlC,EAAK,GAAGkC,EAAUE,CAAe,EAC3CD,GAAenC,EAAK,MAAM,GAAGmC,EAAeC,CAAe,EACxD,IAAM,CACPF,GAAUA,EAAS,MAAM,GAAG,EAAE,QAAQ/6H,IAAK64H,EAAK,IAAI74H,GAAGi7H,CAAe,CAAC,EACvED,GAAeA,EAAc,MAAM,GAAG,EAAE,QAAQh7H,IAAK64H,EAAK,MAAM,IAAI74H,GAAGi7H,CAAe,CAAC,CAC7F,CACF,EAAG,CAACpC,EAAM8B,CAAW,CAAC,EAChBO,EAAc17G,SAAM,EACpBvoB,EAAc4nD,cAAY,IAAM,CACpC,GAAI,CAACg6E,EACH,OAAOwB,GAET,MAAMc,EAAkB,CAAC,EAAEtC,EAAK,eAAiBA,EAAK,uBAAyBvL,EAAW,MAAM73H,GAAK4jI,GAAmB5jI,EAAGojI,EAAM8B,CAAW,CAAC,EACvIS,EAAanoI,EAAM,KAAO4lI,EAAK,SAC/BwC,EAAkBP,EAAY,QAC9BQ,EAAeJ,EAAY,QACjC,GAAII,GAAgBA,EAAa,QAAUH,GAAmBG,EAAa,MAAQF,GAAcE,EAAa,YAAcxD,GAAawD,EAAa,WAAaD,EACjK,OAAOC,EAGT,MAAMC,GAAc,CAClB,EAFkB1C,EAAK,UAAUuC,EAAYT,EAAY,SAAW,WAAarN,EAAaA,EAAW,CAAC,EAAGwK,CAAS,EAGtH,MAAOqD,EACP,IAAKC,EACL,UAAAtD,EACA,SAAUuD,CAChB,EACI,OAAAH,EAAY,QAAUK,GACfA,EACT,EAAG,CAAC1C,EAAMvL,EAAYwK,EAAW6C,EAAa1nI,EAAM,GAAG,CAAC,EAClD,CAACuoI,EAAWC,CAAY,EAAIl9G,WAAS,CAAC,EACtC,CACJ,EAAA+vB,EACA,MAAAotF,CACJ,EAAMn8G,wBAAqBvoB,EAAWC,EAAaA,CAAW,EAC5DunB,YAAU,IAAM,CACd,GAAIq6G,GAAQ,CAAC6C,GAAS,CAACd,EAAa,CAClC,MAAMe,EAAW,IAAMF,EAAa7mI,GAAKA,EAAI,CAAC,EAC1C3B,EAAM,IACRmmI,GAAcP,EAAM5lI,EAAM,IAAKq6H,EAAYqO,CAAQ,EAEnDxC,GAAeN,EAAMvL,EAAYqO,CAAQ,CAE7C,CACF,EAAG,CAAC9C,EAAM5lI,EAAM,IAAKq6H,EAAYoO,EAAOd,EAAaY,CAAS,CAAC,EAC/D,MAAMI,EAAY/C,GAAQ,GACpBgD,EAAar8G,SAAO,IAAI,EACxBs8G,EAAiBt8G,SAAM,EACvBu8G,EAAoBC,GAAY,CACpC,MAAMC,EAAc,OAAO,0BAA0BD,CAAQ,EACzDC,EAAY,YAAY,OAAOA,EAAY,WAC/C,MAAMp6D,EAAU,OAAO,OAAO,OAAO,eAAem6D,CAAQ,EAAGC,CAAW,EAC1E,GAAI,CAAC,OAAO,UAAU,eAAe,KAAKp6D,EAAS,YAAY,EAC7D,GAAI,CACF,OAAO,eAAeA,EAAS,aAAc,CAC3C,MAAOm6D,EACP,SAAU,GACV,WAAY,GACZ,aAAc,EACxB,CAAS,CACH,MAAY,CAAC,CAEf,OAAOn6D,CACT,EACM+0D,EAAMn3G,UAAQ,IAAM,CACxB,MAAMu8G,EAAWJ,EACXM,EAAOF,GAAU,SACvB,IAAIG,EAAcH,EACdA,IACEH,EAAW,SAAWA,EAAW,QAAQ,aAAeG,EACtDF,EAAe,UAAYI,GAC7BC,EAAcJ,EAAkBC,CAAQ,EACxCH,EAAW,QAAUM,EACrBL,EAAe,QAAUI,GAEzBC,EAAcN,EAAW,SAG3BM,EAAcJ,EAAkBC,CAAQ,EACxCH,EAAW,QAAUM,EACrBL,EAAe,QAAUI,IAG7B,MAAMr7H,EAAM,CAACytC,EAAG6tF,EAAaT,CAAK,EAClC,OAAA76H,EAAI,EAAIytC,EACRztC,EAAI,KAAOs7H,EACXt7H,EAAI,MAAQ66H,EACL76H,CACT,EAAG,CAACytC,EAAGstF,EAAWF,EAAOE,EAAU,iBAAkBA,EAAU,SAAUA,EAAU,SAAS,CAAC,EAC7F,GAAI/C,GAAQ+B,GAAe,CAACc,EAC1B,MAAM,IAAI,QAAQ94I,GAAW,CAC3B,MAAM+4I,EAAW,IAAM/4I,EAAO,EAC1BqQ,EAAM,IACRmmI,GAAcP,EAAM5lI,EAAM,IAAKq6H,EAAYqO,CAAQ,EAEnDxC,GAAeN,EAAMvL,EAAYqO,CAAQ,CAE7C,CAAC,EAEH,OAAO/E,CACT,ECvJawF,GAAc,CAAC,CAC1B,GAAAhQ,EACA,SAAA53H,EACA,GAAGvT,CACL,IAAM,CACJ,KAAM,CAACqtD,EAAGuqF,EAAM6C,CAAK,EAAInB,GAAenO,EAAInrI,CAAO,EACnD,OAAOuT,EAAS85C,EAAG,CACjB,KAAAuqF,EACA,IAAKA,EAAK,QACd,EAAK6C,CAAK,CACV,ECTO,SAASW,GAAgB,CAC9B,KAAAxD,EACA,UAAAyD,EACA,SAAA9nI,CACF,EAAG,CACD,MAAM9U,EAAQ+/B,UAAQ,KAAO,CAC3B,KAAAo5G,EACA,UAAAyD,CACJ,GAAM,CAACzD,EAAMyD,CAAS,CAAC,EACrB,OAAOC,gBAActC,GAAY,SAAU,CACzC,MAAAv6I,CACJ,EAAK8U,CAAQ,CACb,sRCIMgoI,GAA+B,CAAC,CACpC,KAAAnqD,EACA,QAAAz+D,EACA,QAAA6oH,EACA,MAAA/9E,EACA,SAAAg+E,CACF,IACE5+G,OAAC,UAAO,UAAWzL,GAAO,YACxB,UAAA1a,MAAC,OACC,UAAWglI,GACTtqH,GAAO,KACPuB,GAAWvB,GAAO,QAClBoqH,GAAWpqH,GAAO,SAGpB,eAACggE,EAAA,EAAK,IAGRv0D,OAAC,OAAI,UAAWzL,GAAO,OACrB,UAAA1a,MAAC,MAAG,UAAW0a,GAAO,MAAQ,SAAAqsC,EAAM,EACnCg+E,GAAY/kI,MAAC,KAAE,UAAW0a,GAAO,KAAO,SAAAqqH,CAAA,CAAS,GACpD,GACF,EC3BIE,GAAoE,CAAC,CACzE,MAAAj2I,EACA,YAAAk2I,CACF,IAAM,CACJ,KAAM,CAACtyF,EAAMuS,CAAO,EAAIv+B,WAAS,EAAK,EACtC,OACE5mB,MAACykI,GAAA,CAAY,YAAa,CAACS,EACxB,SAACvuF,GACAxwB,OAAC,OAAI,UAAU,sBACb,UAAAnmB,MAAC6kI,GAAA,CACC,QAAO,GACP,KAAMxvG,GACN,MAAOshB,EAAE,uBAAwB,CAC/B,aAAc,uBACf,EACD,SAAUA,EAAE,0BAA2B,CACrC,aAAc,iDACf,IAEH32C,MAACu6E,GAAA,CAAO,KAAK,WAAW,QAAS,IAAMp1B,EAAQ,CAACvS,CAAI,EACjD,SAAAA,EACG+D,EAAE,6BAA8B,CAC9B,aAAc,eACf,EACDA,EAAE,6BAA8B,CAC9B,aAAc,eACf,EACP,EACC/D,GACC5yC,MAAC,OAAI,UAAW0a,GAAO,QACrB,SAAA1a,MAAC,QAAM,gBAAOhR,CAAK,EAAE,EACvB,GAEJ,EAEJ,CAEJ,ECMO,SAASm2I,GACdC,EACAC,EACgE,CAChE,OAAOA,CACT,ysCC4+DO,MAAMC,WACH,MAEV,CACE,UACQ,MACD,SAEP,YAAYv9I,EAAew9I,EAA4C,CACrE,MAAMx9I,CAAK,EACX,KAAK,MAAQA,EACb,KAAK,SAAWw9I,CAClB,CAES,UAAiE,CACxE,OAAO,KAAK,KACd,CACF,CACO,MAAMC,GAAsC,IAAIF,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MASpE,CAAC,aAAe,2BAA2B,EACrCG,GAA4C,IAAIH,GAAoB;AAAA;AAAA;AAAA;AAAA,MAI1E,CAAC,aAAe,iCAAiC,EAC3CI,GAAuC,IAAIJ,GAAoB;AAAA;AAAA;AAAA;AAAA,MAIrE,CAAC,aAAe,4BAA4B,EACtCK,GAA6C,IAAIL,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAU3E,CAAC,aAAe,kCAAkC,EAC5CM,GAAoC,IAAIN,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAsBrE,CAAC,aAAe,yBAAyB,EAChCO,GAAiC,IAAIP,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAW/D,CAAC,aAAe,sBAAsB,EAChCQ,GAA4C,IAAIR,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAc1E,CAAC,aAAe,iCAAiC,EAC3CS,GAAmC,IAAIT,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAiCpE,CAAC,aAAe,wBAAwB,EAC/BU,GAA+B,IAAIV,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAO7D,CAAC,aAAe,oBAAoB,EAC9BW,GAA4C,IAAIX,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAgB1E,CAAC,aAAe,iCAAiC,EAC3CY,GAAmC,IAAIZ,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAsCpE,CAAC,aAAe,wBAAwB,EAC/Ba,GAAmC,IAAIb,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GA8BpE,CAAC,aAAe,wBAAwB,EAC/Bc,GAAkC,IAAId,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAgCnE,CAAC,aAAe,uBAAuB,EAC9Be,GAAkC,IAAIf,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAqCnE,CAAC,aAAe,uBAAuB,EAC9BgB,GAA6B,IAAIhB,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA,MAK3D,CAAC,aAAe,kBAAkB,EAC5BiB,GAA+B,IAAIjB,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAQ7D,CAAC,aAAe,oBAAoB,EAC9BkB,GAAqC,IAAIlB,GAAoB;AAAA;AAAA;AAAA;AAAA,MAInE,CAAC,aAAe,0BAA0B,EACpCmB,GAA+B,IAAInB,GAAoB;AAAA;AAAA;AAAA;AAAA,MAI7D,CAAC,aAAe,oBAAoB,EAC9BoB,GAAqC,IAAIpB,GAAoB;AAAA;AAAA;AAAA;AAAA,MAInE,CAAC,aAAe,0BAA0B,EACpCqB,GAAgC,IAAIrB,GAAoB;AAAA;AAAA;AAAA;AAAA,MAI9D,CAAC,aAAe,qBAAqB,EAC/BsB,GAAsC,IAAItB,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA,MAKpE,CAAC,aAAe,2BAA2B,EACrCuB,GAA0C,IAAIvB,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAOxE,CAAC,aAAe,+BAA+B,EACzCwB,GAAgD,IAAIxB,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA,MAK9E,CAAC,aAAe,qCAAqC,EAC/CyB,GAAoD,IAAIzB,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA,MAKlF,CAAC,aAAe,yCAAyC,EACnD0B,GAAwC,IAAI1B,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAOzE,CAAC,aAAe,6BAA6B,EACpC2B,GAAyB,IAAI3B,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAMzD,EACQ4B,GAAiB,IAAI5B,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYpD,EACW6B,GAA4B,IAAI7B,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAS5D,EACQ8B,GAA2B,IAAI9B,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAS3D,EACQ+B,GAA2B,IAAI/B,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAS3D,EACQgC,GAA+B,IAAIhC,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAQ/D,EACQiC,GAA+B,IAAIjC,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAQ/D,EACQkC,GAAsB,IAAIlC,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAStD,EACQmC,GAAyB,IAAInC,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAMzD,EACQoC,GAAmB,IAAIpC,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAYnD,EACQqC,GAAwB,IAAIrC,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EA0B3D,EACWsC,GAAsB,IAAItC,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAqDzD,EACWuC,GAA4B,IAAIvC,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAM5D,EACQwC,GAA6B,IAAIxC,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAwDhE,EACWyC,GAA2B,IAAIzC,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAe9D,EACW0C,GAA0B,IAAI1C,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAuG7D,EACW2C,GAA8B,IAAI3C,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAsBjE,EACW4C,GAAuB,IAAI5C,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAe1D,EACW6C,GAAwB,IAAI7C,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KASxD,EACQ8C,GAAyB,IAAI9C,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KASzD,EACQ+C,GAAsB,IAAI/C,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAQtD,EACQgD,GAAwB,IAAIhD,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAMxD,EACQiD,GAAwC,IAAIjD,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAMxE,EACQkD,GAAyB,IAAIlD,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAQzD,EACQmD,GAAyB,IAAInD,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAe5D,EACWoD,GAA0B,IAAIpD,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAM1D,EACQqD,GAA8B,IAAIrD,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAO9D,EACQsD,GAA2B,IAAItD,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAoB9D,EACWuD,GAAiC,IAAIvD,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAQjE,EACQwD,GAAwB,IAAIxD,GAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAiH3D,ECp8FIyD,GAAuB,CACzB,4IAA6IC,GAC7I,+FAAgGC,GAChG,4KAA6KC,GAC7K,2FAA4FC,GAC5F,+OAAgPC,GAChP,2KAA4KC,GAC5K,+UAAgVC,GAChV,wGAAyGC,GACzG,2FAA4FC,GAC5F,qYAAsYC,GACtY,oHAAqHC,GACrH,+JAAgKC,GAChK,iLAAkLC,GAClL,iNAAkNC,GAClN,6KAA8KC,GAC9K,8PAA+PC,GAC/P,6KAA8KC,GAC9K,uVAAwVC,GACxV,uMAAwMC,GACxM,kUAAmUC,GACnU,uMAAwMC,GACxM,4WAA6WC,GAC7W,wEAAyEC,GACzE,gMAAiMC,GACjM,8GAA+GC,GAC/G,4FAA6FC,GAC7F,6KAA8KC,GAC9K,mEAAoEC,GACpE,wFAAyFC,GACzF,+RAAgSC,GAChS,yiBAA0iBC,GAC1iB,oEAAqEC,GACrE,iHAAkHC,GAClH,gJAAiJC,GACjJ,qmBAAsmBC,GACtmB,+FAAgGC,GAChG,y1BAA01BC,GAC11B,kKAAmKC,GACnK,qxBAAsxBC,GACtxB,wOAAyOC,GACzO,8GAA+GC,GAC/G,oHAAqHC,GACrH,8LAA+LC,GAC/L,oIAAqIC,GACrI,yJAA0JC,GAC1J,uLAAwLC,GACxL,iSAAkSC,GAClS,iMAAkMC,GAClM,wMAAyMC,GACzM,6JAA8JC,GAC9J,0GAA2GC,GAC3G,gHAAiHC,GACjH,qOAAsOC,GACtO,qKAAsKC,GACtK,2QAA4QC,EAChR,EAgOO,SAASC,GAAQn1C,EAAgB,CACtC,OAAQ2xC,GAAkB3xC,CAAM,GAAK,EACvC,CCpVA,MAAM/wG,GAAqB,OAAO,OAAW,KAC1C,OAAmB,YAAe,CACnC,KAAM,IACN,gBAAiB,UACnB,ECRA,IAAImmJ,GAOFA,GAAkB,IAAI,IACpBC,GAAU,gBACV,OAAO,SAAS,UAAS,EACzB,WAWG,MAAMC,GAAiB,MAA0B,CACtD,MAAAtkJ,EACA,UAAAwP,EACA,OAAA2jG,CACF,IAAyD,CACvD,IAAI/kF,EACJ,GAAI,CACFA,EAAW,MAAM,MAAMg2H,GAAiB,CACtC,OAAQ,OACR,QAAS,CACP,eAAgB,oBAElB,KAAM,KAAK,UAAU,CACnB,MAAApkJ,EACA,UAAAwP,CAAA,CACD,EACD,OAAA2jG,CAAA,CACD,CACH,OAASliF,EAAO,CACd,MAAM,IAAI,MAAM,sBAAsBmzH,EAAe,kBAAmB,CACtE,MAAAnzH,CAAA,CACD,CACH,CAEA,GAAI,CAAC7C,EAAS,GACZ,MAAM,IAAI,MACR,sBAAsBg2H,EAAe,YAAYh2H,EAAS,MAAM,IAIpE,MAAMm2H,EAA+B,MAAMn2H,EAAS,OACpD,GAAIm2H,EAAK,OACP,MAAM,IAAI,MAAM,KAAK,UAAUA,EAAK,MAAM,CAAC,EAG7C,GAAI,CAACA,EAAK,KACR,MAAM,IAAI,MAAM,sBAAsBH,EAAe,mBAAmB,EAG1E,OAAOG,EAAK,IACd,EAEa/sI,GAAc,IAAIpG,GAAY,CACzC,eAAgB,CACd,UAAW,CACT,aAAc,GAChB,CAEJ,CAAC,yHCnEYozI,GAAWL,GAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAO7C,EAMKM,GAA0B,CAAC,CAAE,WAAAC,KAAiB,CAClD,MAAM1hJ,EAAO+5I,GAAYyH,GAAUE,CAAU,EACvC,CAAE,EAAAn2F,CAAA,EAAMisF,GAAA,EACd,OACEz8G,OAAC,UAAO,UAAWzL,GAAO,YACtB,WAAAtvB,EAAK,WAAaA,EAAK,SACvB+6B,OAAC,OACE,UAAA/6B,EAAK,WACJ4U,MAAC4vB,GAAA,CACC,KAAMxkC,EAAK,UACX,MAAOurD,EAAE,8BAA+B,CACtC,aAAc,qCACf,EAEA,WAAE,+BAAgC,CACjC,aAAc,iBACf,IAIJvrD,EAAK,WAAaA,EAAK,QACtB4U,MAAC,OAAI,UAAW0a,GAAO,UAAW,cAAY,OAAO,aAErD,EAGDtvB,EAAK,QACJ4U,MAAC4vB,GAAA,CACC,KAAMxkC,EAAK,OACX,MAAOurD,EAAE,oCAAqC,CAC5C,aAAc,2CACf,EAEA,WAAE,qCAAsC,CACvC,aAAc,uBACf,GACH,EAEJ,EAGDvrD,EAAK,SAAW4U,MAAC,KAAE,UAAW0a,GAAO,QAAU,WAAK,QAAQ,GAC/D,CAEJ,qFCxDMqyH,GAAQR,GAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAOnC,EAEYnkJ,GAAqB,CAChC,SAAU,CAAC,QAAQ,EACnB,QAAS,CAAC,CAAE,OAAAmzG,KAAamxC,GAAe,CAAE,MAAOK,GAAO,OAAAxxC,EAAQ,EAChE,aAAc,EAChB,EAEMyxC,GAAwB,IAAM,CAClC,MAAMtjJ,EAASoY,GAAiB1Z,EAAK,EAErC,GAAIsB,EAAO,OAASA,EAAO,UAEzB,OAAO,KAGT,MAAMojJ,EAAapjJ,EAAO,MAAM,WAChC,GAAI,CAACojJ,EAEH,MAAM,IAAI,MAAM,4BAA4B,EAG9C,OAAO9sI,MAAC6sI,IAAO,WAAAC,EAAwB,CACzC,EAEMG,GAGD,CAAC,CAAE,SAAApwI,EAAU,KAAAqwI,KAChB/mH,OAAC,OAAI,UAAW6+G,GAAGtqH,GAAO,gBAAiBwyH,GAAQxyH,GAAO,IAAI,EAC3D,UAAA7d,QACAswI,WAAA,CAAS,SAAU,KAClB,SAAAntI,MAACgtI,KAAY,EACf,GACF,EChCF,MAAqBI,WAAsB3xI,eAA6B,CAC/D,YAAYH,EAAc,CAC/B,MAAMA,CAAK,EAEX,KAAK,MAAQ,EACf,CAEA,OAAc,yBAAyBtM,EAA+B,CAGpE,MAAO,CAAE,MAAAA,CAAA,CACX,CAEO,kBAAkBA,EAAc,CAAE,eAAAq+I,GAAmC,CAC1E,QAAQ,MAAMr+I,CAAK,EACnB,QAAQ,MACN,+EACAq+I,CAAA,CAEJ,CAEO,QAAoB,CACzB,OAAI,KAAK,MAAM,MAGXrtI,MAACitI,GAAA,CACC,SAAAjtI,MAACilI,GAAA,CAAa,YAAW,GAAC,MAAO,KAAK,MAAM,MAAO,EACrD,EAIG,KAAK,MAAM,QACpB,CACF,oIC7CMqI,GAID,CAAC,CAAE,OAAAC,EAAQ,KAAAC,EAAM,UAAA1gH,KAAgB,CACpC,KAAM,CAAE,EAAA6pB,GAAMisF,GAAe,OAAW,CAAE,YAAa,GAAO,EACxDh9E,EAAQjP,EAAE,iBAAkB,CAAE,aAAc,WAAY,EAC9D,OACE32C,MAAC,OACC,KAAK,QACL,YAAU,OACV,UAAWglI,GAAGl4G,EAAWygH,GAAU7yH,GAAO,OAAQ8yH,GAAQ9yH,GAAO,IAAI,EAErE,SAAAyL,OAAC,OACC,KAAK,MACL,UAAWzL,GAAO,oBAClB,QAAQ,cACR,KAAK,OACL,MAAM,6BAEN,UAAA1a,MAAC,SAAO,SAAA4lD,CAAA,CAAM,EACd5lD,MAAC,QACC,EAAE,glBACF,KAAK,eACP,GACF,EAGN,qDC7BMytI,GAA0B,IAC9BztI,MAAC,QAAK,UAAW0a,GAAO,cACtB,SAAA1a,MAACstI,GAAA,EAAe,EAClB,ECbFI,GAAe,oDCAfC,GAAe,oDCAfC,GAAe,oDCAfC,GAAe,oDCAfC,GAAe,oDCAfC,GAAe,oDCAfC,GAAe,oDCAfC,GAAe,oDCAfC,GAAe,uDCAfC,GAAe,oDCAfC,GAAe,oDCAfC,GAAe,oDCAfC,GAAe,oDCAfC,GAAe,oDCAfC,GAAe,oDCAfC,GAAe,yDCqBTC,GAAU,oCAAAhB,GAAA,qBAAAC,GAAA,qBAAAC,GAAA,qBAAAC,GAAA,qBAAAC,GAAA,qBAAAC,GAAA,qBAAAC,GAAA,qBAAAC,GAAA,wBAAAC,GAAA,qBAAAC,GAAA,qBAAAC,GAAA,qBAAAC,GAAA,qBAAAC,GAAA,qBAAAC,GAAA,qBAAAC,GAAA,0BAAAC,EAAA,GAMVE,GAAgB5kI,GACpB2kI,GAAQ,cAAc3kI,CAAI,OAAO,EAE7B6kI,GAAgB,OAAO,KAAKF,EAAO,EAAE,IAAK1tH,GAAQ,CACtD,MAAMujH,EAAOvjH,EAAI,MAAM,kBAAkB,IAAI,CAAC,EAC9C,GAAI,CAACujH,EACH,MAAM,IAAI,MAAM,8BAA8BvjH,CAAG,EAAE,EAErD,OAAOujH,CACT,CAAC,EAGKsK,GAAmB,CACvB,KAAM,mBAEN,QAA6B,CAC3B,MAAMC,EACJ,OAAO,SAAa,IAAc,SAAS,gBAAkB,KAE/D,GAAIA,GAAW,OAAOA,EAAQ,cAAiB,WAC7C,OAAOA,EAAQ,aAAa,MAAM,GAAK,MAE3C,CACF,EAGMC,GAAU,CACd,KAAM,UACN,MAAa,CAAC,EACd,KAAKnX,EAAkBoX,EAAoBjoJ,EAA8B,EACtE,SAAkC,CACjC,MAAMi6B,EAAM2tH,GAAa/W,CAAQ,EACjC,GAAI,CAAC52G,EACH,MAAM,IAAI,MAAM,UAAU42G,CAAQ,YAAY,EAGhD,MAAMphH,EAAW,MAAM,MAAMwK,EAAK,CAChC,YAAa,OACb,QAAS,CACP,OAAQ,mBACV,CACD,EAED,GAAI,CAACxK,EAAS,GACZ,MAAM,MAAM,mBAAmBwK,CAAG,EAAE,EAItC,OAAO,MAAMxK,EAAS,MACxB,KAAK,KACFprB,GAASrE,EAAS,KAAMqE,CAAI,EAC5B4D,GAAUjI,EAASiI,EAAO,IAAI,EAEnC,CACF,EAEaigJ,GAAY,IAAM,CAC7B/N,GACG,IAAI6N,EAAO,EACX,IAAIF,EAAgB,EACpB,IAAIxM,EAAgB,EACpB,KAAK,CACJ,YAAa,KACb,aAAc,IACd,gBAAiB,IACjB,UAAW,cACX,cAAAuM,GACA,cAAe,CACb,YAAa,GACf,CACqB,CAC3B,ECxFMM,GAAqB,IACzBlvI,MAACykI,GAAA,CACE,SAAC,GACAzkI,MAAC8mD,GAAA,CAAM,KAAK,WAAW,MAAO,EAAE,gCAAgC,EAAG,EAEvE,ECGIphC,GAAsC,CAAC,CAAE,MAAA12B,CAAA,UAC5Ci+I,GAAA,CACC,eAAChI,GAAA,CAAa,MAAAj2I,CAAA,CAAc,EAC9B,EAGWihC,GAAQC,KAEhB,CACH,UAAW,IACT/J,OAAA2L,WAAA,CACE,UAAA9xB,MAAC0zB,GAAA,EAAO,EAEP,IAQH,EAGF,OAAO,CAAE,QAAAjiC,GAAW,CAClBA,EAAQ,YAAY,gBAAgBrJ,EAAK,CAC3C,EAEA,eAAgBs9B,GAEhB,kBAAmB,IACjB1lB,MAACitI,GAAA,CACC,SAAAjtI,MAACkvI,KAAS,EACZ,CAEJ,CAAC,ECpDD,IAAI9rI,GAKJ,SAAS+rI,GAAgBC,EAAS,CAChC,MAAO,CACL,KAAMA,GAAS,MAAQhsI,IAAO,KAC9B,QAASgsI,GAAS,QAClB,WAAYA,GAAS,YAAchsI,IAAO,WAC1C,eAAgBgsI,GAAS,gBAAkBhsI,IAAO,cACtD,CACA,CAMA,IAAIK,GAMJ,SAAS4rI,GAAiB9K,EAAM,CAC9B,OAAO9gI,IAAQ,IAAI8gI,CAAI,CACzB,CAMA,IAAI+K,GAMJ,SAASC,GAAiBhL,EAAM,CAC9B,OAAO+K,IAAQ,IAAI/K,CAAI,CACzB,CAMA,IAAIiL,GAOJ,SAASC,GAAmB1qG,EAAWw/F,EAAM,CAC3C,OAAOiL,IAAQ,IAAIzqG,CAAS,GAAG,IAAIw/F,CAAI,CACzC,CAOA,SAASmL,GAAW7nJ,EAAO,CACzB,MAAMzB,EAAO,OAAOyB,EACpB,OAAIzB,IAAS,SACJ,IAAIyB,CAAK,IAEdzB,IAAS,UAAYA,IAAS,UAAYA,IAAS,UAC9C,GAAGyB,CAAK,GAEbzB,IAAS,UAAYA,IAAS,YACxByB,GAAS,OAAO,eAAeA,CAAK,GAAG,aAAa,OAAS,OAEhEzB,CACT,CAGA,SAASupJ,GAAUl+I,EAASm0D,EAAOgqF,EAASR,EAAS/pH,EAAO,CAC1D,MAAMx9B,EAAQw9B,GAAS,UAAWA,EAAQA,EAAM,MAAQuqH,EAAQ,MAC1DC,EAAWxqH,GAAO,UAAY5zB,EAAQ,SAAW,KACjDq+I,EAAWzqH,GAAO,UAAYqqH,GAAW7nJ,CAAK,EAC9CkoJ,EAAQ,CACZ,KAAMt+I,EAAQ,KACd,KAAMA,EAAQ,KACd,MAAA5J,EACA,SAAAgoJ,EACA,SAAAC,EACA,QAAS,WAAWlqF,CAAK,KAAKiqF,EAAW,YAAYA,CAAQ,SAAW,GAAG,WAAWC,CAAQ,GAC9F,YAAar+I,EAAQ,YACrB,KAAM4zB,GAAO,KACb,OAAQA,GAAO,OACf,KAAM+pH,EAAQ,KACd,WAAYA,EAAQ,WACpB,eAAgBA,EAAQ,cAC5B,EACQY,EAAWv+I,EAAQ,OAAS,SAC5Bw+I,EAAW5qH,GAAO,SAAW5zB,EAAQ,SAAWg+I,GAAmBh+I,EAAQ,UAAWs+I,EAAM,IAAI,IAAMC,EAAWT,GAAiBQ,EAAM,IAAI,EAAI,OAASX,EAAQ,SAAWC,GAAiBU,EAAM,IAAI,EACzME,IAAa,SACfF,EAAM,QAAU,OAAOE,GAAa,WAElCA,EAASF,CAAK,EACZE,GAEFD,IACFJ,EAAQ,MAAQ,IAEdA,EAAQ,OACVA,EAAQ,OAAO,KAAKG,CAAK,EAEzBH,EAAQ,OAAS,CAACG,CAAK,CAE3B,CAmDA,SAASG,GAAkBz+I,EAAS,CAClC,MAAO,CACL,QAAS,EACT,OAAQ,UACR,SAASyiE,EAAQ,CACf,OAAOziE,EAAQ,MAAM,EAAE,CAAE,MAAOyiE,CAAM,EAAIi7E,IAAiB,CAC7D,CACJ,CACA,CAwCA,SAASgB,GAAkBC,EAAS7pJ,EAAK,CACvC,OAAO,OAAO,OAAO6pJ,EAAS7pJ,CAAG,GAAKA,IAAQ,aAAeA,IAAQ,aAAeA,IAAQ,aAC9F,CAIA,SAAS8pJ,GAAaC,EAASC,EAAW,CACxC,MAAM52G,EAAO,CAAC,GAAG,IAAI,IAAI22G,CAAO,CAAC,EACjC,OAAI32G,EAAK,OAAS,EACT,IAAIA,EAAK,KAAK,IAAI42G,CAAS,GAAG,CAAC,IAEjC52G,EAAK,CAAC,GAAK,OACpB,CAglFA,SAAS62G,GAAYC,EAAQb,EAASR,EAAS,CAC7C,OAAO,OAAOqB,EAAO,UAAa,WAEhCA,EAAO,SAASb,EAASR,CAAO,EAGhCqB,EAAO,QAEX,CAyJA,SAASC,GAAWD,EAAQb,EAASR,EAAS,CAC5C,OAAO,OAAOqB,EAAO,SAAY,WAE/BA,EAAO,QAAQb,EAASR,CAAO,EAG/BqB,EAAO,OAEX,CA0SA,SAASE,GAAQV,EAAU,CACzB,MAAO,CACL,KAAM,SACN,KAAM,UACN,UAAWU,GACX,QAAS,UACT,MAAO,GACP,QAASV,EACT,GAAI,aAAc,CAChB,OAAOC,GAAkB,IAAI,CAC/B,EACA,OAAON,EAASR,EAAS,CACvB,OAAI,OAAOQ,EAAQ,OAAU,UAC3BA,EAAQ,MAAQ,GAEhBD,GAAU,KAAM,OAAQC,EAASR,CAAO,EAEnCQ,CACT,CACJ,CACA,CAqOA,SAASgB,GAAOC,EAAQ38E,EAAQ,CAC9B,GAAI,OAAO28E,GAAW,OAAO38E,EAAQ,CACnC,GAAI28E,IAAW38E,GAAU28E,aAAkB,MAAQ38E,aAAkB,MAAQ,CAAC28E,GAAW,CAAC38E,EACxF,MAAO,CAAE,MAAO28E,CAAM,EAExB,GAAIA,GAAU38E,GAAU28E,EAAO,cAAgB,QAAU38E,EAAO,cAAgB,OAAQ,CACtF,UAAW3tE,KAAO2tE,EAChB,GAAI3tE,KAAOsqJ,EAAQ,CACjB,MAAMjB,EAA0BgB,GAAOC,EAAOtqJ,CAAG,EAAG2tE,EAAO3tE,CAAG,CAAC,EAC/D,GAAIqpJ,EAAQ,MACV,OAAOA,EAETiB,EAAOtqJ,CAAG,EAAIqpJ,EAAQ,KACxB,MACEiB,EAAOtqJ,CAAG,EAAI2tE,EAAO3tE,CAAG,EAG5B,MAAO,CAAE,MAAOsqJ,CAAM,CACxB,CACA,GAAI,MAAM,QAAQA,CAAM,GAAK,MAAM,QAAQ38E,CAAM,GAC3C28E,EAAO,SAAW38E,EAAO,OAAQ,CACnC,QAAS17D,EAAQ,EAAGA,EAAQq4I,EAAO,OAAQr4I,IAAS,CAClD,MAAMo3I,EAA0BgB,GAAOC,EAAOr4I,CAAK,EAAG07D,EAAO17D,CAAK,CAAC,EACnE,GAAIo3I,EAAQ,MACV,OAAOA,EAETiB,EAAOr4I,CAAK,EAAIo3I,EAAQ,KAC1B,CACA,MAAO,CAAE,MAAOiB,CAAM,CACxB,CAEJ,CACA,MAAO,CAAE,MAAO,EAAI,CACtB,CAIA,SAASC,GAAUxnJ,EAAS2mJ,EAAU,CACpC,MAAO,CACL,KAAM,SACN,KAAM,YACN,UAAWa,GACX,QAAST,GACP/mJ,EAAQ,IAAK8vI,GAAWA,EAAO,OAAO,EACtC,GACN,EACI,MAAO,GACP,QAAA9vI,EACA,QAAS2mJ,EACT,GAAI,aAAc,CAChB,OAAOC,GAAkB,IAAI,CAC/B,EACA,OAAON,EAASR,EAAS,CACvB,GAAI,KAAK,QAAQ,OAAQ,CACvB,MAAMvnJ,EAAQ+nJ,EAAQ,MACtB,IAAImB,EACJnB,EAAQ,MAAQ,GAChB,UAAWa,KAAU,KAAK,QAAS,CACjC,MAAMO,EAAgBP,EAAO,MAAM,EAAE,CAAE,MAAO5oJ,CAAK,EAAIunJ,CAAO,EAC9D,GAAI4B,EAAc,SACZpB,EAAQ,OACVA,EAAQ,OAAO,KAAK,GAAGoB,EAAc,MAAM,EAE3CpB,EAAQ,OAASoB,EAAc,OAE7B5B,EAAQ,YAAY,CACtBQ,EAAQ,MAAQ,GAChB,KACF,CAEGoB,EAAc,QACjBpB,EAAQ,MAAQ,IAEdA,EAAQ,QACNmB,EACFA,EAAQ,KAAKC,EAAc,KAAK,EAEhCD,EAAU,CAACC,EAAc,KAAK,EAGpC,CACA,GAAIpB,EAAQ,MAAO,CACjBA,EAAQ,MAAQmB,EAAQ,CAAC,EACzB,QAASv4I,EAAQ,EAAGA,EAAQu4I,EAAQ,OAAQv4I,IAAS,CACnD,MAAMy4I,EAAeL,GAAOhB,EAAQ,MAAOmB,EAAQv4I,CAAK,CAAC,EACzD,GAAIy4I,EAAa,MAAO,CACtBtB,GAAU,KAAM,OAAQC,EAASR,EAAS,CACxC,SAAU,SAC1B,CAAe,EACD,KACF,CACAQ,EAAQ,MAAQqB,EAAa,KAC/B,CACF,CACF,MACEtB,GAAU,KAAM,OAAQC,EAASR,CAAO,EAE1C,OAAOQ,CACT,CACJ,CACA,CA+GA,SAASsB,GAAQC,EAAUlB,EAAU,CACnC,MAAO,CACL,KAAM,SACN,KAAM,UACN,UAAWiB,GACX,QAASxB,GAAWyB,CAAQ,EAC5B,MAAO,GACP,QAASA,EACT,QAASlB,EACT,GAAI,aAAc,CAChB,OAAOC,GAAkB,IAAI,CAC/B,EACA,OAAON,EAASR,EAAS,CACvB,OAAIQ,EAAQ,QAAU,KAAK,QACzBA,EAAQ,MAAQ,GAEhBD,GAAU,KAAM,OAAQC,EAASR,CAAO,EAEnCQ,CACT,CACJ,CACA,CAIA,SAASwB,GAAYC,EAAUpB,EAAU,CACvC,MAAO,CACL,KAAM,SACN,KAAM,eACN,UAAWmB,GACX,QAAS,SACT,MAAO,GACP,QAASC,EACT,QAASpB,EACT,GAAI,aAAc,CAChB,OAAOC,GAAkB,IAAI,CAC/B,EACA,OAAON,EAASR,EAAS,CACvB,MAAMvnJ,EAAQ+nJ,EAAQ,MACtB,GAAI/nJ,GAAS,OAAOA,GAAU,SAAU,CACtC+nJ,EAAQ,MAAQ,GAChBA,EAAQ,MAAQ,GAChB,UAAWrpJ,KAAO,KAAK,QAAS,CAC9B,MAAM+qJ,EAAc,KAAK,QAAQ/qJ,CAAG,EACpC,GAAIA,KAAOsB,IAAUypJ,EAAY,OAAS,kBAAoBA,EAAY,OAAS,YAAcA,EAAY,OAAS,YACtHA,EAAY,UAAY,OAAQ,CAC9B,MAAMp9E,EAAS3tE,KAAOsB,EAEpBA,EAAMtB,CAAG,EACPmqJ,GAAWY,CAAW,EACpBC,EAAeD,EAAY,MAAM,EAAE,CAAE,MAAOp9E,CAAM,EAAIk7E,CAAO,EACnE,GAAImC,EAAa,OAAQ,CACvB,MAAMC,EAAW,CACf,KAAM,SACN,OAAQ,QACR,MAAA3pJ,EACA,IAAAtB,EACA,MAAO2tE,CACvB,EACc,UAAW67E,KAASwB,EAAa,OAC3BxB,EAAM,KACRA,EAAM,KAAK,QAAQyB,CAAQ,EAE3BzB,EAAM,KAAO,CAACyB,CAAQ,EAExB5B,EAAQ,QAAQ,KAAKG,CAAK,EAK5B,GAHKH,EAAQ,SACXA,EAAQ,OAAS2B,EAAa,QAE5BnC,EAAQ,WAAY,CACtBQ,EAAQ,MAAQ,GAChB,KACF,CACF,CACK2B,EAAa,QAChB3B,EAAQ,MAAQ,IAElBA,EAAQ,MAAMrpJ,CAAG,EAAIgrJ,EAAa,KACpC,SAAWD,EAAY,WAAa,OAClC1B,EAAQ,MAAMrpJ,CAAG,EAAIiqJ,GAAYc,CAAW,UACnCA,EAAY,OAAS,kBAAoBA,EAAY,OAAS,YAAcA,EAAY,OAAS,YAC1G3B,GAAU,KAAM,MAAOC,EAASR,EAAS,CACvC,MAAO,OACP,SAAU,IAAI7oJ,CAAG,IACjB,KAAM,CACJ,CACE,KAAM,SACN,OAAQ,MACR,MAAAsB,EACA,IAAAtB,EAEA,MAAOsB,EAAMtB,CAAG,CAClC,CACA,CACA,CAAa,EACG6oJ,EAAQ,YACV,KAGN,CACA,GAAI,CAACQ,EAAQ,QAAU,CAACR,EAAQ,WAC9B,UAAW7oJ,KAAOsB,EACZsoJ,GAAkBtoJ,EAAOtB,CAAG,GAAK,EAAEA,KAAO,KAAK,WACjDqpJ,EAAQ,MAAMrpJ,CAAG,EAAIsB,EAAMtB,CAAG,EAItC,MACEopJ,GAAU,KAAM,OAAQC,EAASR,CAAO,EAE1C,OAAOQ,CACT,CACJ,CACA,CAqcA,SAAS6B,GAAMxB,EAAU,CACvB,MAAO,CACL,KAAM,SACN,KAAM,QACN,UAAWwB,GACX,QAAS,QACT,MAAO,GACP,QAASxB,EACT,GAAI,aAAc,CAChB,OAAOC,GAAkB,IAAI,CAC/B,EACA,OAAON,EAASR,EAAS,CACvB,OAAAO,GAAU,KAAM,OAAQC,EAASR,CAAO,EACjCQ,CACT,CACJ,CACA,CAkPA,SAAS8B,GAAQC,EAASC,EAAU,CAClC,MAAO,CACL,KAAM,SACN,KAAM,UACN,UAAWF,GACX,QAAS,IAAIC,EAAQ,OAAO,uBAC5B,MAAO,GACP,QAAAA,EACA,QAASC,EACT,GAAI,aAAc,CAChB,OAAO1B,GAAkB,IAAI,CAC/B,EACA,OAAON,EAASR,EAAS,CACvB,OAAIQ,EAAQ,QAAU,MAAQA,EAAQ,QAAU,UAC1C,KAAK,UAAY,SACnBA,EAAQ,MAAQc,GAAW,KAAMd,EAASR,CAAO,GAE/CQ,EAAQ,QAAU,MAAQA,EAAQ,QAAU,SAC9CA,EAAQ,MAAQ,GACTA,GAGJ,KAAK,QAAQ,MAAM,EAAEA,EAASR,CAAO,CAC9C,CACJ,CACA,CAiCA,SAASyC,GAAO5B,EAAU,CACxB,MAAO,CACL,KAAM,SACN,KAAM,SACN,UAAW4B,GACX,QAAS,SACT,MAAO,GACP,QAAS5B,EACT,GAAI,aAAc,CAChB,OAAOC,GAAkB,IAAI,CAC/B,EACA,OAAON,EAASR,EAAS,CACvB,OAAI,OAAOQ,EAAQ,OAAU,UAAY,CAAC,MAAMA,EAAQ,KAAK,EAC3DA,EAAQ,MAAQ,GAEhBD,GAAU,KAAM,OAAQC,EAASR,CAAO,EAEnCQ,CACT,CACJ,CACA,CAIA,SAASx+I,GAAOigJ,EAAUpB,EAAU,CAClC,MAAO,CACL,KAAM,SACN,KAAM,SACN,UAAW7+I,GACX,QAAS,SACT,MAAO,GACP,QAASigJ,EACT,QAASpB,EACT,GAAI,aAAc,CAChB,OAAOC,GAAkB,IAAI,CAC/B,EACA,OAAON,EAASR,EAAS,CACvB,MAAMvnJ,EAAQ+nJ,EAAQ,MACtB,GAAI/nJ,GAAS,OAAOA,GAAU,SAAU,CACtC+nJ,EAAQ,MAAQ,GAChBA,EAAQ,MAAQ,GAChB,UAAWrpJ,KAAO,KAAK,QAAS,CAC9B,MAAM+qJ,EAAc,KAAK,QAAQ/qJ,CAAG,EACpC,GAAIA,KAAOsB,IAAUypJ,EAAY,OAAS,kBAAoBA,EAAY,OAAS,YAAcA,EAAY,OAAS,YACtHA,EAAY,UAAY,OAAQ,CAC9B,MAAMp9E,EAAS3tE,KAAOsB,EAEpBA,EAAMtB,CAAG,EACPmqJ,GAAWY,CAAW,EACpBC,EAAeD,EAAY,MAAM,EAAE,CAAE,MAAOp9E,CAAM,EAAIk7E,CAAO,EACnE,GAAImC,EAAa,OAAQ,CACvB,MAAMC,EAAW,CACf,KAAM,SACN,OAAQ,QACR,MAAA3pJ,EACA,IAAAtB,EACA,MAAO2tE,CACvB,EACc,UAAW67E,KAASwB,EAAa,OAC3BxB,EAAM,KACRA,EAAM,KAAK,QAAQyB,CAAQ,EAE3BzB,EAAM,KAAO,CAACyB,CAAQ,EAExB5B,EAAQ,QAAQ,KAAKG,CAAK,EAK5B,GAHKH,EAAQ,SACXA,EAAQ,OAAS2B,EAAa,QAE5BnC,EAAQ,WAAY,CACtBQ,EAAQ,MAAQ,GAChB,KACF,CACF,CACK2B,EAAa,QAChB3B,EAAQ,MAAQ,IAElBA,EAAQ,MAAMrpJ,CAAG,EAAIgrJ,EAAa,KACpC,SAAWD,EAAY,WAAa,OAClC1B,EAAQ,MAAMrpJ,CAAG,EAAIiqJ,GAAYc,CAAW,UACnCA,EAAY,OAAS,kBAAoBA,EAAY,OAAS,YAAcA,EAAY,OAAS,YAC1G3B,GAAU,KAAM,MAAOC,EAASR,EAAS,CACvC,MAAO,OACP,SAAU,IAAI7oJ,CAAG,IACjB,KAAM,CACJ,CACE,KAAM,SACN,OAAQ,MACR,MAAAsB,EACA,IAAAtB,EAEA,MAAOsB,EAAMtB,CAAG,CAClC,CACA,CACA,CAAa,EACG6oJ,EAAQ,YACV,KAGN,CACF,MACEO,GAAU,KAAM,OAAQC,EAASR,CAAO,EAE1C,OAAOQ,CACT,CACJ,CACA,CAiYA,SAASkC,GAASH,EAASC,EAAU,CACnC,MAAO,CACL,KAAM,SACN,KAAM,WACN,UAAWE,GACX,QAAS,IAAIH,EAAQ,OAAO,gBAC5B,MAAO,GACP,QAAAA,EACA,QAASC,EACT,GAAI,aAAc,CAChB,OAAO1B,GAAkB,IAAI,CAC/B,EACA,OAAON,EAASR,EAAS,CACvB,OAAIQ,EAAQ,QAAU,SAChB,KAAK,UAAY,SACnBA,EAAQ,MAAQc,GAAW,KAAMd,EAASR,CAAO,GAE/CQ,EAAQ,QAAU,SACpBA,EAAQ,MAAQ,GACTA,GAGJ,KAAK,QAAQ,MAAM,EAAEA,EAASR,CAAO,CAC9C,CACJ,CACA,CAiCA,SAAS2C,GAASzoJ,EAAS2mJ,EAAU,CACnC,MAAO,CACL,KAAM,SACN,KAAM,WACN,UAAW8B,GACX,QAAS1B,GAAa/mJ,EAAQ,IAAIomJ,EAAU,EAAG,GAAG,EAClD,MAAO,GACP,QAAApmJ,EACA,QAAS2mJ,EACT,GAAI,aAAc,CAChB,OAAOC,GAAkB,IAAI,CAC/B,EACA,OAAON,EAASR,EAAS,CACvB,OAAI,KAAK,QAAQ,SAASQ,EAAQ,KAAK,EACrCA,EAAQ,MAAQ,GAEhBD,GAAU,KAAM,OAAQC,EAASR,CAAO,EAEnCQ,CACT,CACJ,CACA,CA+sBA,SAASoC,GAAO/B,EAAU,CACxB,MAAO,CACL,KAAM,SACN,KAAM,SACN,UAAW+B,GACX,QAAS,SACT,MAAO,GACP,QAAS/B,EACT,GAAI,aAAc,CAChB,OAAOC,GAAkB,IAAI,CAC/B,EACA,OAAON,EAASR,EAAS,CACvB,OAAI,OAAOQ,EAAQ,OAAU,SAC3BA,EAAQ,MAAQ,GAEhBD,GAAU,KAAM,OAAQC,EAASR,CAAO,EAEnCQ,CACT,CACJ,CACA,CA+lBA,SAASqC,GAAQ1rJ,EAAK+C,EAAS2mJ,EAAU,CACvC,MAAO,CACL,KAAM,SACN,KAAM,UACN,UAAWgC,GACX,QAAS,SACT,MAAO,GACP,IAAA1rJ,EACA,QAAA+C,EACA,QAAS2mJ,EACT,GAAI,aAAc,CAChB,OAAOC,GAAkB,IAAI,CAC/B,EACA,OAAON,EAASR,EAAS,CACvB,MAAMvnJ,EAAQ+nJ,EAAQ,MACtB,GAAI/nJ,GAAS,OAAOA,GAAU,SAAU,CACtC,IAAIqqJ,EACAC,EAA2B,EAC3BC,EAA0B,KAAK,IAC/BC,EAAyB,GAC7B,MAAMC,EAAe,CAACC,EAAUC,IAAY,CAC1C,UAAW/B,KAAU8B,EAAS,QAAS,CACrC,GAAI9B,EAAO,OAAS,UAClB6B,EAAa7B,EAAQ,IAAI,IAAI+B,CAAO,EAAE,IAAI/B,EAAO,GAAG,CAAC,MAChD,CACL,IAAIgC,EAAe,GACfC,EAAkB,EACtB,UAAWv/C,KAAcq/C,EAAS,CAChC,MAAMG,EAAsBlC,EAAO,QAAQt9C,CAAU,EACrD,GAAIA,KAActrG,EAAQ8qJ,EAAoB,MAAM,EAElD,CAAE,MAAO,GAAO,MAAO9qJ,EAAMsrG,CAAU,CAAC,EACxC,CAAE,WAAY,EAAI,CACpC,EAAkB,OAASw/C,EAAoB,OAAS,kBAAoBA,EAAoB,OAAS,YAAcA,EAAoB,OAAS,UAAW,CAC7IF,EAAe,GACXL,IAA4Bj/C,IAAeg/C,EAA2BO,GAAmBP,IAA6BO,GAAmBv/C,KAActrG,GAAS,EAAEuqJ,KAA2BvqJ,MAC/LsqJ,EAA2BO,EAC3BN,EAA0Bj/C,EAC1Bk/C,EAAyB,IAEvBD,IAA4Bj/C,GAC9Bk/C,EAAuB,KACrB5B,EAAO,QAAQt9C,CAAU,EAAE,OACjD,EAEkB,KACF,CACAu/C,GACF,CACA,GAAID,EAAc,CAChB,MAAMzB,EAAgBP,EAAO,MAAM,EAAE,CAAE,MAAO5oJ,CAAK,EAAIunJ,CAAO,GAC1D,CAAC8C,GAAiB,CAACA,EAAc,OAASlB,EAAc,SAC1DkB,EAAgBlB,EAEpB,CACF,CACA,GAAIkB,GAAiB,CAACA,EAAc,OAClC,KAEJ,CACF,EAEA,GADAI,EAAa,KAAsB,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,EAClDJ,EACF,OAAOA,EAETvC,GAAU,KAAM,OAAQC,EAASR,EAAS,CAExC,MAAOvnJ,EAAMuqJ,CAAuB,EACpC,SAAU/B,GAAagC,EAAwB,GAAG,EAClD,KAAM,CACJ,CACE,KAAM,SACN,OAAQ,QACR,MAAAxqJ,EACA,IAAKuqJ,EAEL,MAAOvqJ,EAAMuqJ,CAAuB,CAClD,CACA,CACA,CAAS,CACH,MACEzC,GAAU,KAAM,OAAQC,EAASR,CAAO,EAE1C,OAAOQ,CACT,CACJ,CACA,CAsMA,SAASgD,GAAQnC,EAAQ5mI,EAAM,CAC7B,MAAMwnI,EAAW,GACjB,UAAW9qJ,KAAOkqJ,EAAO,QACvBY,EAAS9qJ,CAAG,EAAkCurJ,GAASrB,EAAO,QAAQlqJ,CAAG,CAAC,EAE5E,MAAO,CACL,GAAGkqJ,EACH,QAASY,EACT,GAAI,aAAc,CAChB,OAAOnB,GAAkB,IAAI,CAC/B,CACJ,CACA,+MCxtNM2C,GAAepoJ,GAAS,CAC5BqoJ,SAAUroJ,GAAWA,IAAW,CAClC,CAAC,EAEYwlC,GAAQI,GAAgB,CACnC9Q,eAAgBszH,GAChBE,UAASriH,GAAAsiH,GAAA,aAKTvtH,eAAciL,GAAAuiH,GAAA,iBAChB,CAAC,qGCRKlG,GAAQR,GAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAcnC,EAEKnkJ,GAAqB,CACzBQ,SAAU,CAAC,qBAAqB,EAChC0I,QAASA,CAAC,CAAEiqG,YAAamxC,GAAe,CAAEtkJ,MAAO2kJ,GAAOxxC,SAAQ,CAClE,EAEatrE,GAAQI,GAAgB,CACnC6iH,OAAQA,CAAC,CAAEzhJ,aAAcA,EAAQmO,YAAYuzI,gBAAgB/qJ,EAAK,EAClE2qJ,UAASriH,GAAAsiH,GAAA,YACX,CAAC,yHCbKI,GAAuB7G,GAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CASlD,EAEK8G,GAAkC,CACtCzqJ,SAAU,CAAC,eAAe,EAC1B0I,QAASA,CAAC,CAAEiqG,YACVmxC,GAAe,CACbtkJ,MAAOgrJ,GACP73C,SACD,CACL,EAEatrE,GAAQI,GAAgB,CACnC6iH,OAAQA,CAAC,CAAEzhJ,aACTA,EAAQmO,YAAYuzI,gBAAgBE,EAAkB,EAExDN,UAASriH,GAAAsiH,GAAA,YACX,CAAC,ECpCYM,GAAa,OAAO,YAAY,EACvCC,GAAY,OAAO,WAAW,EAEvBC,GAAsBC,GAAS,CAC1C,MAAOC,GAAUC,IAAU,EAC3B,MAAOD,GAAUE,IAAU,EAC3B,KAAMF,GAAUC,IAAU,EAC1B,OAAQD,GAAUE,IAAU,CAC9B,CAAC,EAuBKC,GACJC,GAEA,OAAOA,EAAW,OAAU,UAAY,OAAOA,EAAW,MAAS,SAG/DC,GACJD,GAEO,OAAO,OAAOA,EAAY,OAAO,EAIpCE,GACJF,GAEO,OAAO,OAAOA,EAAY,MAAM,EAM5BG,GAAsB,CACjCH,EACAI,EAAW,EACX9tJ,EAA+B,YAE3BytJ,GAAkBC,CAAU,EACvBA,EAGL1tJ,IAAS,UACJ,CAAE,MAAO8tJ,CAAA,EAGX,CAAE,KAAMA,CAAA,EAIJC,GAAgB,CAC3BD,EAAW,IACgC,CAC3C,KAAM,CAACJ,EAAYM,CAAa,EAAIxtH,WAAqB,CACvD,MAAOstH,CAAA,CACR,EAgBD,MAAO,CAACJ,EAdkBniJ,GAAyB,CAE/CyiJ,EADEziJ,IAAW2hJ,GACC,CACZ,MAAOY,CAAA,EAEAviJ,IAAW4hJ,GACN,CACZ,KAAMW,CAAA,EAGMviJ,CANe,CAQjC,CAEoC,CACtC,EAGa0iJ,GAAW,CACtBC,EACAC,EACAL,EAAW,IAC+C,CAC1D,MAAMM,EACJT,GAAoBO,CAAiB,GACrCA,EAAkB,QAAU,OACxBG,EACJT,GAAqBM,CAAiB,GACtCA,EAAkB,SAAW,OAE/B,IAAII,EAAgD,KAChDC,EAA2C,KAC/C,OAAIJ,EAAS,iBAAmBC,KAC9BE,EAAqB,CACnB,KAAMR,EACN,OAAQK,EAAS,aAAe,UAIhCA,EAAS,aAAeE,KAC1BE,EAAiB,CACf,MAAOT,EACP,MAAOK,EAAS,WAAa,SAI1B,CAACG,EAAoBC,CAAc,CAC5C,EC3HMC,GAAsC,CAAC,CAC3C,OAAAC,EACA,OAAAC,EACA,SAAAC,EACA,MAAA13I,EACA,SAAAuvB,CACF,IAAM,CACJ,KAAM,CAAE,EAAA+pB,CAAA,EAAMisF,GAAA,EAEd,OAAImS,GAAY,CAACF,GAAU,CAACC,EACnB,KAGP3uH,OAAC,OAAI,UAAU,sCACb,UAAAnmB,MAACu6E,GAAA,CACC,KAAK,YACL,KAAK,KACL,SAAU3tD,GAAY,CAACkoH,EACvB,QAAS,IAAYA,IAAA,EAEpB,WAAE,iBAAiB,IAEtB90I,MAAC,OAAI,UAAU,cACZ,SAAA3C,IAAU,OACPs5C,EAAE,qCAAsC,CAAE,WAAYt5C,CAAA,CAAO,EAC7D,KACN,EACA2C,MAACu6E,GAAA,CACC,KAAK,YACL,KAAK,KACL,SAAU3tD,GAAY,CAACioH,EACvB,QAAS,IAAYA,IAAA,EAEpB,WAAE,aAAa,GAClB,EACF,CAEJ,ECrDA,SAASG,GAAW15I,EAAO2D,EAAK,CAC9B,OAAoBg2B,MAAK,MAAO,CAC9B,MAAO,6BACP,MAAO,MACP,OAAQ,MACR,KAAM,eACN,QAAS,YACT,IAAKh2B,EACL,GAAG3D,EACH,SAAuB25B,MAAK,OAAQ,CAClC,EAAG,gmBACT,CAAK,CACL,CAAG,CACH,CAEA+/G,GAAW,YAAc,aACzB,MAAAC,GAAe9/G,aAAW6/G,EAAU,EChBpC,SAASE,GAAU55I,EAAO2D,EAAK,CAC7B,OAAoBg2B,MAAK,MAAO,CAC9B,MAAO,6BACP,MAAO,MACP,OAAQ,MACR,KAAM,eACN,QAAS,YACT,IAAKh2B,EACL,GAAG3D,EACH,SAAuB25B,MAAK,OAAQ,CAClC,EAAG,mJACT,CAAK,CACL,CAAG,CACH,CAEAigH,GAAU,YAAc,YACxB,MAAAC,GAAehgH,aAAW+/G,EAAS,yTCQnC,IAAIxvG,GAAwC,QAExC,WAAW,KAAK,UAAU,SAAS,EACrCA,GAAW,UAIX,uBAAuB,KAAK,UAAU,SAAS,GAC/C,eAAgB,WAEhBA,GAAW,OAUN,MAAM25B,GAA0B,CAAC,CACtC,QAAA+1E,EACA,KAAAxiG,EACA,SAAAyiG,EACA,aAAAz9F,EACA,SAAA/6C,CACF,IAAM,CACA,OAAOw4I,GAAa,YACtBA,EAAW3vG,KAAa,SAG1B,KAAM,CAAE,EAAAiR,CAAA,EAAMisF,GAAA,EAEd,OAAIyS,EAEAlvH,OAAC0rD,GAAO,KAAP,CAAY,KAAAj/B,EAAY,aAAAgF,EACtB,UAAAw9F,GAAWp1I,MAAC0iE,GAAA,CAAQ,QAAO,GAAE,SAAA0yE,EAAQ,SACrC5jF,GAAA,CACC,UAAAxxD,MAAC6xE,GAAO,QAAP,CAAe,UAAWn3D,GAAO,QAAS,EAC3CyL,OAAC0rD,GAAO,QAAP,CAAe,UAAWn3D,GAAO,OAAQ,gBAAegrB,GACvD,UAAA1lC,MAAC6xE,GAAO,OAAP,CAAc,UAAWn3D,GAAO,OAAQ,EACzC1a,MAAC,OAAI,UAAW0a,GAAO,KAAO,SAAA7d,CAAA,CAAS,GACzC,GACF,GACF,EAKFspB,OAACmvH,GAAA,CAAW,KAAA1iG,EAAY,aAAAgF,EACrB,UAAAw9F,GAAWp1I,MAAC0iE,GAAA,CAAQ,QAAO,GAAE,SAAA0yE,EAAQ,EACtCp1I,MAACwxD,IAEC,SAAAxxD,MAACsgE,GAAA,CAAc,UAAW5lD,GAAO,gBAE/B,eAAC,OAAI,UAAWA,GAAO,UACrB,SAAA1a,MAAC+xE,IAAM,UAAWr3D,GAAO,OACvB,SAAAyL,OAACu6C,GAAA,CAAc,UAAWhmD,GAAO,KAC9B,UAAA7d,EAEDmD,MAAC+lD,GAAA,CAAQ,MAAOpP,EAAE,cAAc,EAC9B,SAAA32C,MAAC+iE,GAAA,CAAM,UAAWroD,GAAO,MACvB,SAAA1a,MAACu1I,GAAA,EAAU,EACb,EACF,GACF,EACF,EACF,EACF,EACF,GACF,CAEJ,EAEa1yE,GAAqC,CAAC,CAAE,SAAAhmE,CAAA,UAClD4kE,GAAA,CAAY,UAAW/mD,GAAO,MAAQ,SAAA7d,CAAA,CAAS,ECzErC24I,GAA0B,IAGlC,CACH,MAAMv2I,EAAM4oB,SAAiB,CAC3B,OAAQ,IAAM,CACZ,MAAM,IAAI,MAAM,2CAA2C,CAC7D,EACD,EAID,MAAO,CAFQq/B,cAAY,IAAMjoD,EAAI,QAAQ,SAAU,EAAE,EAEzCA,CAAG,CACrB,EAEMw2I,GAA6C,CAAC,CAClD,MAAA1uF,EACA,YAAA3wB,EACA,IAAAn3B,CACF,IAAM,CACJ,KAAM,CAAC2zC,EAAMuS,CAAO,EAAIv+B,WAAS,EAAK,EAChC,CAAE,EAAA+vB,CAAA,EAAMisF,GAAA,EACR8S,EAAe7tH,SAAqC,IAAI,EAE9D8tH,sBAAoB12I,EAAK,KAAO,CAC9B,OAAQ,KACNkmD,EAAQ,EAAI,EACRuwF,EAAa,UAAY,OAC3BA,EAAa,QAAU,QAAQ,iBAE1BA,EAAa,QAAQ,QAC9B,EACA,EAEF,MAAM99F,EAAesP,cAAatU,GAAkB,CAClDuS,EAAQvS,CAAI,EACPA,IACH8iG,EAAa,SAAS,OAAO,IAAI,MAAM,gCAAgC,CAAC,EACxEA,EAAa,QAAU,KAE3B,EAAG,EAAE,EAECp/G,EAAW4wB,cAAa7+C,GAAwC,CACpEA,EAAE,iBAEF,MAAMutI,EADO,IAAI,SAASvtI,EAAE,aAAa,EACnB,IAAI,UAAU,EACpC,GAAI,OAAOutI,GAAa,SACtB,MAAM,IAAI,MAEZF,EAAa,SAAS,QAAQE,CAAQ,EACtCF,EAAa,QAAU,KACvBvwF,EAAQ,EAAK,CACf,EAAG,EAAE,EAEL,OACEh/B,OAAC0vH,GAAA,CAAc,KAAAjjG,EAAY,aAAAgF,EACzB,UAAA53C,MAAC81I,GAAA,CAAc,SAAA/uF,CAAA,CAAM,EAErB5gC,OAAC4vH,GAAA,CAAU,SAAAz/G,EACT,UAAAnQ,OAAC6vH,GAAA,CAAW,KAAK,WACf,UAAAh2I,MAACi2I,GAAA,CAAY,SAAAt/F,EAAE,iBAAiB,EAAE,QACjCu/F,GAAA,CAAqB,UAAS,GAAC,aAAa,mBAAmB,GAClE,EAEAl2I,MAACu6E,IAAO,KAAK,SAAS,KAAK,UAAU,YAAAnkD,EAClC,SAAAugB,EAAE,gBAAgB,EACrB,GACF,EAEA32C,MAACm2I,GAAA,CAAa,QAAO,GACnB,SAAAn2I,MAACu6E,GAAA,CAAO,KAAK,WAAY,SAAA5jC,EAAE,eAAe,EAAE,EAC9C,GACF,CAEJ,sKCzEai2F,GAAWL,GAAsB;AAAA;AAAA;AAAA;AAAA;AAAA,CAK7C,EAEK6J,GAAwB7J,GAAsB;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAUnD,EAEK8J,GAAuE,CAAC,CAC5E,SAAAzpH,EACA,QAAAG,CACF,IACE/sB,MAACykI,IACE,SAAC9tF,SACCoP,GAAA,CAAQ,MAAOpP,EAAE,yCAAyC,EACzD,SAAA32C,MAAC0mD,GAAA,CACC,KAAK,SACL,SAAA95B,EACA,UAAU,MACV,QAAAG,EACA,KAAK,sBAEL,SAAA/sB,MAACi1I,GAAA,CAAW,UAAWv6H,GAAO,oBAAqB,EACrD,EACF,EAEJ,EAGI47H,GAKD,CAAC,CAAE,MAAAC,EAAO,UAAAC,EAAW,qBAAAC,EAAsB,SAAAC,KAAe,CAC7D,KAAM,CAAE,EAAA//F,CAAA,EAAMisF,GAAA,EACR,CAAChwF,EAAMuS,CAAO,EAAIv+B,WAAS,EAAK,EAChCx7B,EAAO+5I,GAAYyH,GAAU2J,CAAK,EAClC32I,EAAcD,GAAA,EACd,CAACg3I,EAAgBC,CAAuB,EAAIpB,GAAA,EAE5CqB,EAAc70I,GAAY,CAC9B,WAAY,CAAC,CAAE,GAAAuc,EAAI,SAAAq3H,CAAA,IACjBlJ,GAAe,CACb,MAAO0J,GACP,UAAW,CAAE,GAAA73H,EAAI,SAAAq3H,CAAA,CAAS,CAC3B,EAEH,UAAYxqJ,GAAS,CACnBwU,EAAY,kBAAkB,CAAE,SAAU,CAAC,qBAAqB,EAAG,EACnEA,EAAY,kBAAkB,CAAE,SAAU,CAAC,YAAY,EAAG,EAIxDxU,IAAK,YAAY,SAAW,aAC5BA,EAAK,YAAY,SAAW,aAK9BsrJ,IAAA,EACAvxF,EAAQ,EAAK,EACf,EACD,EAEK2xF,EAAgB5vF,cACpB,MAAOhtC,GAA2D,CAChE,IAAI07H,EACAa,IACFb,EAAW,MAAMe,EAAA,GAEnBE,EAAY,OAAO,CAAE,GAAIzrJ,EAAK,GAAI,SAAAwqJ,EAAU,CAC9C,EACA,CAACxqJ,EAAK,GAAIurJ,EAAgBF,EAAsBI,EAAY,MAAM,GAG9Dj/F,EAAesP,cAClBtU,GAAkB,CAEbikG,EAAY,YAChBA,EAAY,QACZ1xF,EAAQvS,CAAI,EACd,EACA,CAACikG,EAAY,UAAWA,EAAY,KAAK,GAGrC1tJ,EAAS0tJ,EAAY,MAAM,YAAY,QAAU,KAEvD,OACE1wH,OAAA2L,WAAA,CACE,UAAA9xB,MAACy1I,GAAA,CACC,MAAO9+F,EACL,8EAEF,YAAW,GACX,IAAKigG,CAAA,GAEP52I,MAAC+1I,GAAA,CACC,gBAACC,GAAA,CAAW,KAAK,QACf,UAAAh2I,MAACi2I,GAAA,CAAY,SAAAt/F,EAAE,2BAA2B,EAAE,EAE5CxwB,OAAC,OAAI,UAAU,0BACb,UAAAnmB,MAAC+2I,GAAA,CACC,KAAK,QACL,SAAQ,GACR,MAAO3rJ,EAAK,MACZ,UAAWsvB,GAAO,iBAEnB87H,GACCrwH,OAACk5C,GAAA,CACC,cAAUg3E,GAAA,EAAa,EACvB,KAAAzjG,EACA,aAAAgF,EAEA,UAAA53C,MAAC6iE,GAAA,CACE,SAAAlsB,EACC,6DAEJ,EACAxwB,OAAC28C,GAAA,CAAY,UAAWpoD,GAAO,cAC7B,UAAA1a,MAACm1I,GAAA,EAAU,EACXn1I,MAAC,OAAK,SAAA5U,EAAK,MAAM,GACnB,EAECjC,IAAW,sBACV6W,MAACm6E,GAAA,CACE,SAAAxjC,EACC,2EAEJ,EAGFxwB,OAAC,OAAI,UAAU,sBACb,UAAAA,OAACo0D,GAAA,CACC,KAAK,UACL,KAAK,SACL,YAAW,GACX,QAASu8D,EACT,SAAUD,EAAY,UACtB,KAAMA,EAAY,UAAY,OAAY5B,GAEzC,WAAC,CAAC4B,EAAY,WAAa72I,MAACstI,GAAA,CAAe,OAAM,GAAC,EAClD32F,EACC,8DACF,IAEF32C,MAAC+iE,GAAA,CAAM,QAAO,GACZ,eAACwX,GAAA,CAAO,SAAUs8D,EAAY,UAAW,KAAK,WAC3C,SAAAlgG,EAAE,eAAe,EACpB,EACF,GACF,IACF,EAEJ,GACF,EACF,GACF,CAEJ,EClLMo2F,GAAQR,GAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CA4BnC,EAEYnkJ,GAAQ,CAAC0rJ,EAA4B,CAAE,MAAO,MAC5C,CACX,SAAU,CAAC,aAAcA,CAAU,EACnC,QAAS,CAAC,CAAE,OAAAv4C,CAAA,IACVmxC,GAAe,CACb,MAAOK,GACP,UAAW+G,EACX,OAAAv4C,CAAA,CACD,CACL,GAEWy7C,GAAgBzK,GAAsB;AAAA;AAAA;AAAA;AAAA,CAIlD,EAEY0K,GAAkB1K,GAAsB;AAAA;AAAA;AAAA;AAAA;AAAA,CAKpD,EAEK2K,GAGD,CAAC,CAAE,WAAApK,EAAY,KAAAqK,KAAW,CAC7B,KAAM,CAAE,mBAAAC,EAAoB,qBAAAC,CAAA,EAAyBlS,GACnD8R,GACAnK,CAAA,EAEI,CAAE,YAAAwK,CAAA,EAAgBnS,GAAY6R,GAAeG,CAAI,EACjDV,EAAuBa,GAAeD,EAEtC,CAAC5hJ,EAASk3B,CAAe,EAAI4qH,gBAAA,EAE7B,CAACzD,EAAYM,CAAa,EAAID,GAAA,EAC9BzqJ,EAASoY,GAAiB1Z,GAAM0rJ,CAAU,CAAC,EACjD,GAAIpqJ,EAAO,KAAK,OAAO,aAAe,aAAckpB,GAAA,EACpD,MAAM4kI,EAAS9tJ,EAAO,KAAK,OAAO,OAE5B,CAAC+tJ,EAAUC,CAAQ,EAAIrD,GAASP,EAAY0D,EAAO,QAAQ,EAE3DG,EAAY7D,GAAiC,CACjDnnH,EAAgB,IAAM,CACpBynH,EAAcN,CAAU,CAC1B,CAAC,CACH,EAGM4C,EAAW,IAAY,CAC3B/pH,EAAgB,IAAM,CACpBynH,EAAcd,EAAU,CAC1B,CAAC,CACH,EAGMkD,EAAYY,GAAsBI,EAAO,WAAa,EAE5D,OACErxH,OAAA2L,WAAA,CACG,UAAA0lH,EAAO,MAAM,IAAKI,GACjB53I,MAACs2I,GAAA,CACC,MAAOsB,EAAK,KAEZ,UAAApB,EACA,qBAAAC,EACA,SAAAC,CAAA,EAHKkB,EAAK,OAKb,EAED53I,MAAC40I,GAAA,CACC,SAAQ,GACR,MAAO4C,EAAO,WACd,OAAQC,EAAW,IAAYE,EAASF,CAAQ,EAAI,KACpD,OAAQC,EAAW,IAAYC,EAASD,CAAQ,EAAI,KACpD,SAAUjiJ,CAAA,EACZ,EACF,CAEJ,uICzGMs3I,GAAQR,GAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CA4BnC,EAEKnkJ,GAAqB,CACzBQ,SAAU,CAAC,aAAa,EACxB0I,QAASA,CAAC,CAAEiqG,YAAamxC,GAAe,CAAEtkJ,MAAO2kJ,GAAOxxC,SAAQ,CAClE,EAEMs8C,GAAeptJ,GAAU,SAAU,CACvCA,GAAS,CACPkH,OAAQlH,GAAW,CAAC,UAAW,oBAAoB,CAAC,CACtD,CAAC,EACDA,GAAS,CACPkH,OAAQlH,GAAW,CAAC,gBAAiB,0BAA0B,CAAC,CAClE,CAAC,EACDA,GAAS,CACPkH,OAAQlH,GAAW,CAAC,eAAgB,yBAAyB,CAAC,EAC9DqtJ,UAAWrtJ,GAAWA,IAAU,CAClC,CAAC,EACDA,GAAS,CACPkH,OAAQlH,GAAW,CAAC,cAAe,wBAAwB,CAAC,EAC5DqtJ,UAAWrtJ,GAAWA,IAAU,CAClC,CAAC,EACDA,GAAS,CACPkH,OAAQlH,GAAU,gCAAgC,CACpD,CAAC,EACDA,GAAS,CACPkH,OAAQlH,GAAU,4BAA4B,CAChD,CAAC,EACDA,GACEA,GAAc,CACZkH,OAAQlH,GAAEgnJ,CACZ,CAAC,CACH,CAAC,CACF,EAEYxhH,GAAQI,GAAgB,CACnC9Q,eAAgBs4H,GAEhBv7H,WAAW,CAAElG,UAAU,CACrB,OAAQA,EAAOzkB,QACb,IAAK,UACL,IAAK,qBACH,MAAM2kB,GAAS,CAAEnK,GAAI,IAAKiK,OAAQ,EAAC,CAAG,EAExC,IAAK,gBACL,IAAK,2BACH,MAAME,GAAS,CAAEnK,GAAI,YAAa,EAEpC,IAAK,eACL,IAAK,0BACH,MAAIiK,EAAO0hI,UACHxhI,GAAS,CACbnK,GAAI,aACJngB,OAAQ,CAAEgkB,OAAQoG,EAAO0hI,UAAU,CACpC,EACGxhI,GAAS,CAAEnK,GAAI,YAAa,EAEpC,IAAK,cACL,IAAK,yBACH,MAAIiK,EAAO0hI,UACHxhI,GAAS,CACbnK,GAAI,aACJngB,OAAQ,CAAEgkB,OAAQoG,EAAO0hI,UAAU,CACpC,EACGxhI,GAAS,CAAEnK,GAAI,YAAa,EAEpC,IAAK,iCACH,MAAMmK,GAAS,CACbnK,GAAI,uBACJiK,OAAQ,CAAE08H,SAAU,GAAK,CAC1B,EACH,IAAK,6BAIH,MAAMx8H,GAAS,CAAEnK,GAAI,QAAS,CAChC,CAEJ,EAEA+mI,OAAQA,CAAC,CAAEzhJ,aACTsmJ,QAAQC,IAAI,CACVvmJ,EAAQmO,YAAYuzI,gBAAgB8E,IAAoB,EACxDxmJ,EAAQmO,YAAYuzI,gBAAgB/qJ,EAAK,CAAC,CAC3C,EAEH2qJ,UAASriH,GAAAsiH,GAAA,YACX,CAAC,2OC5HKjG,GAAQR,GAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAgBnC,EAEKnkJ,GAASm2B,IACA,CACX31B,SAAU,CAAC,gBAAiB21B,CAAE,EAC9BjtB,QAASA,CAAC,CAAEiqG,YACVmxC,GAAe,CAAEtkJ,MAAO2kJ,GAAOxxC,SAAQ3jG,UAAW,CAAE2mB,KAAG,CAAG,CAC9D,GAEW0R,GAAQI,GAAgB,CACnC6iH,OAAQA,CAAC,CAAEzhJ,UAASzF,YAClByF,EAAQmO,YAAYuzI,gBAAgB/qJ,GAAM4D,EAAOuyB,EAAE,CAAC,EACtD25H,kBAAiBxnH,GAAAynH,GAAA,qBACjBpF,UAASriH,GAAAsiH,GAAA,YACX,CAAC,+GClCY/iH,GAAQI,GAAgB,CACnC0iH,UAASriH,GAAAsiH,GAAA,YAiBX,CAAC,iHCtBY/iH,GAAQI,GAAgB,CACnC0iH,UAASriH,GAAAsiH,GAAA,YAkBX,CAAC,gGCdKI,GAAuB7G,GAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CASlD,EAEK8G,GAAkC,CACtCzqJ,SAAU,CAAC,eAAe,EAC1B0I,QAASA,CAAC,CAAEiqG,YACVmxC,GAAe,CACbtkJ,MAAOgrJ,GACP73C,SACD,CACL,EAEMwxC,GAAQR,GAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CASnC,EAEKnkJ,GAAQA,CAACgwJ,EAAkBC,KAClB,CACXzvJ,SAAU,CAAC,iBAAkBwvJ,EAAUC,CAAM,EAC7C/mJ,QAASA,CAAC,CAAEiqG,YACVmxC,GAAe,CACbtkJ,MAAO2kJ,GACPn1I,UAAW,CAAEwgJ,WAAUC,UACvB98C,SACD,CACL,GAEWtrE,GAAQI,GAAgB,CACnC,MAAM6iH,OAAO,CAAEzhJ,UAASzF,UAAU,CAChC,MAAMZ,EAAO,MAAMqG,EAAQmO,YAAY04I,WAAWjF,EAAkB,EACpE,GAAIjoJ,EAAKmtJ,OAAOC,aAAe,aACvB5lI,GAAS,CACb6lI,OAAQ,GACT,EAEH,MAAM/uJ,EAAS,MAAM+H,EAAQmO,YAAY04I,WACvClwJ,GAAM4D,EAAOgkB,QAAU,GAAI5kB,EAAKmtJ,OAAOh6H,EAAE,CAC3C,EAEA,MAAK70B,EAAOgvJ,QAENpiI,GAAS,CACbnK,GAAI,gBACJngB,OAAQ,CAAEuyB,GAAI70B,EAAOgvJ,QAAQn6H,IAC7BoC,QAAS,GACV,EAN0B/N,IAO7B,EAEAslI,kBAAiBxnH,GAAAynH,GAAA,oBACnB,CAAC,sHClEKpL,GAAQR,GAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAMnC,EAEKnkJ,GAASm2B,IACA,CACX31B,SAAU,CAAC,eAAgB21B,CAAE,EAC7BjtB,QAASA,CAAC,CAAEiqG,YACVmxC,GAAe,CAAEtkJ,MAAO2kJ,GAAOn1I,UAAW,CAAE2mB,MAAMg9E,SAAQ,CAC9D,GAEWtrE,GAAQI,GAAgB,CACnC6iH,OAAQA,CAAC,CAAEzhJ,UAASzF,YAClByF,EAAQmO,YAAYuzI,gBAAgB/qJ,GAAM4D,EAAOuyB,EAAE,CAAC,EACtDw0H,UAASriH,GAAAsiH,GAAA,YACX,CAAC,sHC2BKjG,GAAQR,GAAsB;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAWnC,EAEKnkJ,GAASuwJ,IACA,CACX/vJ,SAAU,CAAC,mBAAoB+vJ,CAAM,EACrCrnJ,QAASA,CAAC,CAAEiqG,YACVmxC,GAAe,CAAEtkJ,MAAO2kJ,GAAOxxC,SAAQ3jG,UAAW,CAAE+gJ,SAAO,CAAG,CAClE,GAEIlI,GAAShmJ,GAAS,CACtBkuJ,OAAQluJ,GAAEunJ,CACZ,CAAC,EAEY/hH,GAAQI,GAAgB,CACnC9Q,eAAgBkxH,GAEhB51H,WAAYA,CAAC,CAAEzE,OAAQ,CAAEuiI,SAAO,KAAS,CAAEA,WAE3C,MAAMzF,OAAO,CAAEzhJ,UAASoN,KAAM,CAAE85I,SAAO,EAAoB,CACzD,KAAM,CAAEC,sBAAuB,MAAMnnJ,EAAQmO,YAAYuzI,gBACvD/qJ,GAAMuwJ,CAAM,CACd,EAEA,GAAI,CAACC,EACH,MAAMhmI,IAEV,EAEAmgI,UAASriH,GAAAsiH,GAAA,YACX,CAAC,0HCvDKjG,GAAQR,GAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA,CAanC,EAEKnkJ,GAAqB,CACzBQ,SAAU,CAAC,gBAAgB,EAC3B0I,QAASA,CAAC,CAAEiqG,YAAamxC,GAAe,CAAEtkJ,MAAO2kJ,GAAOxxC,SAAQ,CAClE,EAEatrE,GAAQI,GAAgB,CACnC6iH,OAAQA,CAAC,CAAEzhJ,aAAcA,EAAQmO,YAAYuzI,gBAAgB/qJ,EAAK,EAClE2qJ,UAASriH,GAAAsiH,GAAA,YACX,CAAC,EC5DY6F,GAAmB,IAAc,CAC5C,MAAMtrE,EAAO,IAAI,KAAK,KAAK,MAAQ,MAAwB,EAE3D,OAAAA,EAAK,SAAS,EAAG,EAAG,EAAG,CAAC,EACjBA,EAAK,aACd,0JCgBMurE,GAAY,EAEZ/L,GAAQR,GAAsB;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAWnC,EAEKnkJ,GAAqB,CACzBQ,SAAU,CAAC,kBAAkB,EAC7B0I,QAASA,CAAC,CAAEiqG,YAAamxC,GAAe,CAAEtkJ,MAAO2kJ,GAAOxxC,SAAQ,CAClE,EAEMw9C,GAAaxM,GAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAyCxC,EAEKyM,GAAYA,CAAClF,EAA2BmF,KAC/B,CACXrwJ,SAAU,CAAC,iBAAkBqwJ,EAAUnF,CAAU,EACjDxiJ,QAASA,CAAC,CAAEiqG,YACVmxC,GAAe,CACbtkJ,MAAO2wJ,GACPnhJ,UAAW,CACTshJ,WAAYD,EAAW,CAAEvjC,OAAQmjC,IAAiB,EAAMM,OACxD,GAAGrF,GAELv4C,SACD,CACL,GAEIs3C,GAAepoJ,GAAY,CAC/BA,GAAS,CACPwuJ,SAAUxuJ,GAAWA,GAAU,EAAI,CAAC,CACtC,CAAC,EACD+oJ,EAAmB,CACpB,EAEYvjH,GAAQI,GAAgB,CACnC9Q,eAAgBszH,GAEhBh4H,WAAYA,CAAC,CAAEzE,OAAQ,CAAE6iI,WAAU,GAAGnF,EAAW,KAAS,CACxDmF,WACAnF,WAAYG,GAAoBH,EAAYgF,GAAW,UAAU,IAGnE5F,OAAQA,CAAC,CAAEzhJ,UAASoN,KAAM,CAAEo6I,WAAUnF,aAAW,IAC/CiE,QAAQC,IAAI,CACVvmJ,EAAQmO,YAAYuzI,gBAAgB/qJ,EAAK,EACzCqJ,EAAQmO,YAAYuzI,gBAAgB6F,GAAUlF,EAAYmF,CAAQ,CAAC,CAAC,CACrE,EAEHlG,UAASriH,GAAAsiH,GAAA,YACX,CAAC,uGCnHKjG,GAAQR,GAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAMnC,EAEYnkJ,GAAqB,CAChCQ,SAAU,CAAC,mBAAmB,EAC9B0I,QAASA,CAAC,CAAEiqG,YAAamxC,GAAe,CAAEtkJ,MAAO2kJ,GAAOxxC,SAAQ,CAClE,EAEatrE,GAAQI,GAAgB,CACnC6iH,OAAQ,MAAO,CAAEzhJ,aAAc,CAC7B,KAAM,CACJq7I,WAAY,CAAEsM,0BAAwB,EACpC,MAAM3nJ,EAAQmO,YAAYuzI,gBAAgB/qJ,EAAK,EAEnD,GAAI,CAACgxJ,EAAyB,MAAM9iI,GAAS,CAAEnK,GAAI,IAAKwU,QAAS,GAAM,EAEvErH,WAAQ8/H,EAAyB,CAAEtuH,GAAI,WAAY,CACrD,EACAioH,UAASriH,GAAAsiH,GAAA,YACX,CAAC,iHCxBY/iH,GAAQI,GAAgB,CACnC0iH,UAASriH,GAAAsiH,GAAA,YACX,CAAC,mHCWKjG,GAAQR,GAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAQnC,EAkBYnkJ,GAASm2B,IACP,CACX31B,SAAU,CAAC,cAAe21B,CAAE,EAC5BjtB,QAASA,CAAC,CAAEiqG,YACVmxC,GAAe,CAAEtkJ,MAAO2kJ,GAAOxxC,SAAQ3jG,UAAW,CAAE2mB,KAAG,CAAG,CAC9D,GAEW0R,GAAQI,GAAgB,CACnC,MAAM6iH,OAAO,CAAEzhJ,UAASzF,UAAyB,CAC/C,MAAMZ,EAAO,MAAMqG,EAAQmO,YAAYuzI,gBAAgB/qJ,GAAM4D,EAAOuyB,EAAE,CAAC,EACvE,GAAI,CAACnzB,EAAKiuJ,wBACR,MAAMzmI,KAGR,GAAIxnB,EAAKiuJ,wBAAwBC,YAC/B,MAAMhjI,GAAS,CAAEnK,GAAI,IAAK,CAE9B,EAEA4mI,UAASriH,GAAAsiH,GAAA,YACX,CAAC,8GCxDY/iH,GAAQI,GAAgB,CACnC,MAAM6iH,OAAO,CAAEzhJ,UAASzF,UAAyB,CAC/C,MAAMZ,EAAO,MAAMqG,EAAQmO,YAAYuzI,gBAAgB/qJ,GAAM4D,EAAOuyB,EAAE,CAAC,EACvE,GAAI,CAACnzB,EAAKiuJ,wBACR,MAAMzmI,KAKR,GAAI,CAACxnB,EAAKiuJ,wBAAwBC,YAChC,MAAMhjI,GAAS,CAAEnK,GAAI,qBAAsBngB,SAAQ,CAEvD,EAEA+mJ,UAASriH,GAAAsiH,GAAA,YACX,CAAC,8ICLK8F,GAAY,EAEZ/L,GAAQR,GAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CA6CnC,EAEKnkJ,GAAQA,CAAC0rJ,EAA2BmF,KAC3B,CACXrwJ,SAAU,CAAC,qBAAsBqwJ,EAAUnF,CAAU,EACrDxiJ,QAASA,CAAC,CAAEiqG,YACVmxC,GAAe,CACbtkJ,MAAO2kJ,GACPn1I,UAAW,CACTshJ,WAAYD,EAAW,CAAEvjC,OAAQmjC,IAAiB,EAAMM,OACxD,GAAGrF,GAELv4C,SACD,CACL,GAEIs3C,GAAepoJ,GAAY,CAC/BA,GAAS,CACPwuJ,SAAUxuJ,GAAWA,GAAU,EAAI,CAAC,CACtC,CAAC,EACD+oJ,EAAmB,CACpB,EAEYvjH,GAAQI,GAAgB,CACnC9Q,eAAgBszH,GAEhBh4H,WAAYA,CAAC,CAAEzE,OAAQ,CAAE6iI,WAAU,GAAGnF,EAAW,KAAS,CACxDmF,WACAnF,WAAYG,GAAoBH,EAAYgF,GAAW,UAAU,IAGnE5F,OAAQA,CAAC,CAAEzhJ,UAASoN,KAAM,CAAEo6I,WAAUnF,aAAW,IAC/CriJ,EAAQmO,YAAYuzI,gBAAgB/qJ,GAAM0rJ,EAAYmF,CAAQ,CAAC,EAEjElG,UAASriH,GAAAsiH,GAAA,YACX,CAAC,EC5EKuG,GAAyBC,GAA6B,OAAO,CACjE,GAAI,uBACJ,KAAM,uBACN,eAAgB,IAAMC,EACxB,CAAQ,EACFC,GAAeC,GAAmB,OAAO,CAC7C,GAAI,YACJ,eAAgB,IAAMF,EACxB,CAAQ,EACFG,GAA8BC,GAAkC,OAAO,CAC3E,GAAI,IACJ,KAAM,IACN,eAAgB,IAAMN,EACxB,CAAQ,EACFO,GAAoBC,GAAwB,OAAO,CACvD,GAAI,IACJ,KAAM,IACN,eAAgB,IAAML,EACxB,CAAQ,EACFM,GAAkBC,GAAsB,OAAO,CACnD,GAAI,gBACJ,KAAM,gBACN,eAAgB,IAAMR,EACxB,CAAQ,EACFS,GACJC,GAAoC,OAAO,CACzC,GAAI,WACJ,KAAM,WACN,eAAgB,IAAMZ,EACxB,CAAQ,EACJa,GACJC,GAAsC,OAAO,CAC3C,GAAI,aACJ,KAAM,aACN,eAAgB,IAAMd,EACxB,CAAQ,EACJe,GAAoBC,GAAwB,OAAO,CACvD,GAAI,aACJ,KAAM,aACN,eAAgB,IAAMd,EACxB,CAAQ,EACFe,GAAiBC,GAAqB,OAAO,CACjD,GAAI,eACJ,KAAM,eACN,eAAgB,IAAMhB,EACxB,CAAQ,EACFiB,GAA6BC,GAAiC,OAAO,CACzE,GAAI,sBACJ,KAAM,sBACN,eAAgB,IAAMlB,EACxB,CAAQ,EACFmB,GAA2BC,GAA+B,OAAO,CACrE,GAAI,oBACJ,KAAM,oBACN,eAAgB,IAAMpB,EACxB,CAAQ,EACFqB,GAA4BC,GAAgC,OAAO,CACvE,GAAI,aACJ,KAAM,aACN,eAAgB,IAAMrB,EACxB,CAAQ,EACFsB,GAAwBC,GAA4B,OAAO,CAC/D,GAAI,SACJ,KAAM,SACN,eAAgB,IAAMvB,EACxB,CAAQ,EACFwB,GAA6BC,GAAiC,OAAO,CACzE,GAAI,2BACJ,KAAM,2BACN,eAAgB,IAAM1B,EACxB,CAAQ,EACF2B,GAAsBC,GAA0B,OAAO,CAC3D,GAAI,qBACJ,KAAM,qBACN,eAAgB,IAAM5B,EACxB,CAAQ,EACF6B,GAAqBC,GAAyB,OAAO,CACzD,GAAI,qBACJ,KAAM,qBACN,eAAgB,IAAM9B,EACxB,CAAQ,EACF+B,GAA+BC,GAAmC,OAAO,CAC7E,GAAI,qBACJ,KAAM,qBACN,eAAgB,IAAM/B,EACxB,CAAQ,EA4ZFgC,GAA6C,CACjD,kBAAA5B,GACA,6BAAA0B,GACA,sBAAAR,GACA,0BAAAF,EACF,EAEMa,GACJjC,GAAa,iBAAiBgC,EAAoB,EAQ9CE,GAAiE,CACrE,gCAAAxB,GACA,8BAAAF,GACA,4BAAAN,EACF,EAEMiC,GACJtC,GAAuB,iBAAiBqC,EAA8B,EAElEE,GAAuC,CAC3C,aAAcH,GACd,uBAAwBE,GACxB,eAAArB,GACA,kBAAAF,GACA,gBAAAN,GACA,mBAAAsB,GACA,oBAAAF,GACA,2BAAAF,GACA,yBAAAN,GACA,2BAAAF,EACF,EACaxoI,GAAYunI,GACtB,iBAAiBqC,EAAiB,EAClC,gBC1iBUlnI,GAAS0f,GAAa,CACjC,UAAApiB,GACA,kBAAmB,GACnB,SAAU7rB,GAAO,KACjB,wBAAyBonJ,GACzB,eAAgB,SAChB,QAAS,CAAE,YAAA7tI,EAAA,CACb,CAAC,ECDDqvI,GAAA,EAEA8M,cAAW,SAAS,eAAe,MAAM,CAAgB,EAAE,OACzD/7I,MAACg8I,aAAA,CACC,SAAAh8I,MAACF,GAAA,CAAoB,OAAQF,GAC3B,SAAAI,MAACotI,GAAA,CACC,SAAAptI,MAACwkD,GAAA,CACC,SAAAxkD,MAACmtI,WAAA,CAAS,SAAUntI,MAACytI,GAAA,EAAc,EACjC,SAAAztI,MAAC0kI,GAAA,MAAgBxD,GACf,SAAAlhI,MAACy0B,GAAA,CAAe,OAAA7f,GAAgB,QAAS,CAAE,YAAAhV,EAAA,EAAe,EAC5D,EACF,EACF,EACF,EACF,EACF,CACF","names":["REACT_ELEMENT_TYPE","REACT_FRAGMENT_TYPE","jsxProd","type","config","maybeKey","key","propName","reactJsxRuntime_production","jsxRuntimeModule","require$$0","Subscribable","listener","defaultTimeoutProvider","callback","delay","timeoutId","intervalId","TimeoutManager","#provider","#providerCalled","provider","timeoutManager","systemSetTimeoutZero","isServer","noop","functionalUpdate","updater","input","isValidTimeout","value","timeUntilStale","updatedAt","staleTime","resolveStaleTime","query","resolveEnabled","enabled","matchQuery","filters","exact","fetchStatus","predicate","queryKey","stale","hashQueryKeyByOptions","partialMatchKey","isActive","matchMutation","mutation","status","mutationKey","hashKey","options","_","val","isPlainObject","result","a","b","hasOwn","replaceEqualDeep","array","isPlainArray","aSize","bItems","bSize","copy","equalItems","i","aItem","bItem","v","shallowEqualObjects","o","hasObjectPrototype","ctor","prot","sleep","timeout","resolve","replaceData","prevData","data","addToEnd","items","item","max","newItems","addToStart","skipToken","ensureQueryFn","fetchOptions","shouldThrowError","throwOnError","params","FocusManager","#focused","#cleanup","#setup","onFocus","setup","focused","isFocused","focusManager","pendingThenable","reject","thenable","_resolve","_reject","finalize","reason","defaultScheduler","createNotifyManager","queue","transactions","notifyFn","batchNotifyFn","scheduleFn","schedule","flush","originalQueue","args","fn","notifyManager","OnlineManager","#online","onOnline","onlineListener","offlineListener","online","onlineManager","defaultRetryDelay","failureCount","canFetch","networkMode","CancelledError","createRetryer","isRetryCancelled","continueFn","isResolved","cancel","cancelOptions","error","cancelRetry","continueRetry","canContinue","canStart","pause","continueResolve","run","promiseOrValue","initialPromise","retry","retryDelay","shouldRetry","Removable","#gcTimeout","newGcTime","Query","#initialState","#revertState","#cache","#client","#retryer","#defaultOptions","#abortSignalConsumed","getDefaultState","defaultState","successState","newData","#dispatch","state","setStateOptions","promise","observer","x","abortController","addSignalProperty","object","fetchFn","queryFn","queryFnContext","queryFnContext2","context","context2","action","reducer","fetchState","newState","dataUpdatedAt","hasData","initialDataUpdatedAt","QueryObserver","client","#selectError","#currentThenable","#currentQuery","#currentQueryInitialState","#currentResult","#currentResultState","#currentResultOptions","#selectFn","#selectResult","#lastQueryWithDefinedData","#staleTimeoutId","#refetchIntervalId","#currentRefetchInterval","#trackedProps","shouldFetchOnMount","#executeFetch","#updateTimers","shouldFetchOn","#clearStaleTimeout","#clearRefetchInterval","prevOptions","prevQuery","#updateQuery","mounted","shouldFetchOptionally","#updateStaleTimeout","nextRefetchInterval","#computeRefetchInterval","#updateRefetchInterval","shouldAssignObserverCurrentProperties","onPropTracked","target","defaultedOptions","nextInterval","prevResult","prevResultState","prevResultOptions","queryInitialState","isPlaceholderData","fetchOnMount","fetchOptionally","errorUpdatedAt","skipSelect","placeholderData","selectError","isFetching","isPending","isError","isLoading","nextResult","isStale","finalizeThenableIfPossible","recreateThenable","pending","prevThenable","shouldNotifyListeners","notifyOnChangeProps","notifyOnChangePropsValue","includedProps","typedKey","#notify","notifyOptions","shouldLoadOnMount","field","optimisticResult","infiniteQueryBehavior","pages","direction","oldPages","oldPageParams","currentPage","cancelled","fetchPage","param","previous","page","maxPages","addTo","pageParamFn","getPreviousPageParam","getNextPageParam","oldData","remainingPages","pageParams","lastIndex","Mutation","#observers","#mutationCache","variables","onContinue","mutationFnContext","restored","isPaused","MutationCache","#mutations","#scopes","#mutationId","scope","scopeFor","scopedMutations","index","firstPendingMutation","m","defaultedFilters","event","pausedMutations","MutationObserver","#currentMutation","#mutateOptions","#updateResult","onMutateResult","QueryCache","#queries","queryHash","queryInMap","queries","QueryClient","#queryCache","#queryDefaults","#mutationDefaults","#mountCount","#unsubscribeFocus","#unsubscribeOnline","cachedData","queryCache","defaultedCancelOptions","promises","defaults","queryDefault","REACT_PORTAL_TYPE","REACT_STRICT_MODE_TYPE","REACT_PROFILER_TYPE","REACT_CONSUMER_TYPE","REACT_CONTEXT_TYPE","REACT_FORWARD_REF_TYPE","REACT_SUSPENSE_TYPE","REACT_MEMO_TYPE","REACT_LAZY_TYPE","REACT_ACTIVITY_TYPE","MAYBE_ITERATOR_SYMBOL","getIteratorFn","maybeIterable","ReactNoopUpdateQueue","assign","emptyObject","Component","props","partialState","ComponentDummy","PureComponent","pureComponentPrototype","isArrayImpl","ReactSharedInternals","hasOwnProperty","ReactElement","refProp","cloneAndReplaceKey","oldElement","newKey","isValidElement","escape","escaperLookup","match","userProvidedKeyEscapeRegex","getElementKey","element","resolveThenable","fulfilledValue","mapIntoArray","children","escapedPrefix","nameSoFar","invokeCallback","c","nextNamePrefix","mapChildren","func","count","child","lazyInitializer","payload","moduleObject","reportGlobalError","Children","forEachFunc","forEachContext","n","react_production","size","childArray","defaultValue","childrenLength","render","compare","prevTransition","currentTransition","returnValue","onStartTransitionFinish","usable","initialState","permalink","deps","Context","initialValue","create","ref","passthrough","initialArg","init","subscribe","getSnapshot","getServerSnapshot","reactModule","QueryClientContext","React.createContext","useQueryClient","queryClient","React.useContext","QueryClientProvider","React.useEffect","jsx","IsRestoringContext","useIsRestoring","createValue","isReset","QueryErrorResetBoundaryContext","useQueryErrorResetBoundary","ensurePreventErrorBoundaryRetry","errorResetBoundary","useClearResetErrorBoundary","getHasError","suspense","defaultThrowOnError","_error","ensureSuspenseTimers","clamp","originalStaleTime","willFetch","isRestoring","shouldSuspend","fetchOptimistic","useBaseQuery","Observer","isNewCacheEntry","React.useState","shouldSubscribe","React.useSyncExternalStore","React.useCallback","onStoreChange","unsubscribe","useSuspenseQuery","queryOptions","useMutation","mutate","mutateOptions","prefix","invariant","condition","message","__storeToDerived","__derivedToStore","__depsThatHaveWrittenThisTick","__isFlushing","__batchDepth","__pendingUpdates","__initialBatchValues","__flush_internals","relatedVals","sorted","Derived","derived","stores","store","relatedLinkedDerivedVals","__notifyListeners","__notifyDerivedListeners","__flush","store2","prevState","derivedVals","batch","pendingUpdateToFlush","isUpdaterFunction","Store","_a","_b","unsub","_c","prevDepVals","currDepVals","dep","prevVal","shouldRecompute","lastSeenDepValues","cleanup","relatedStores","stateIndexKey","popStateEvent","beforeUnloadEvent","createHistory","opts","location","subscribers","notify","subscriber","handleIndexChange","tryNavigation","task","navigateOpts","actionInfo","blockers","isPushOrReplace","blocker","nextLocation","parseHref","cb","path","currentIndex","assignKeyAndIndex","str","_a2","blockers2","createRandomKey","createBrowserHistory","win","originalPushState","originalReplaceState","_getBlockers","_setBlockers","newBlockers","createHref","parseLocation","addedKey","currentLocation","rollbackLocation","nextPopIsGo","ignoreNextPop","skipBlockerNextPop","ignoreNextBeforeUnload","getLocation","next","scheduled","history","queueHistoryAction","destHref","href","onPushPop","onPushPopEvent","delta","isForward","isBack","isGo","onBeforeUnload","e","shouldBlock","shouldHaveBeforeUnload","ignoreBlocker","res","createMemoryHistory","entries","states","_entry","index2","hashIndex","searchIndex","last","arr","isFunction","d","prev","_next","prevItems","getEnumerableOwnKeys","nextItems","prevSize","nextSize","p","keys","names","name","symbols","symbol","deepEqual","ignoreUndefined","k","aCount","bCount","createControlledPromise","onResolve","resolveLoadPromise","rejectLoadPromise","controlledPromise","isModuleNotFoundError","isPromise","SEGMENT_TYPE_PATHNAME","SEGMENT_TYPE_PARAM","SEGMENT_TYPE_WILDCARD","SEGMENT_TYPE_OPTIONAL_PARAM","joinPaths","paths","cleanPath","trimPathLeft","trimPathRight","trimPath","removeTrailingSlash","basepath","exactPathTest","pathName1","pathName2","segmentToString","segment","prefixSegment","suffixSegment","resolvePath","base","to","trailingSlash","caseSensitive","parseCache","removeBasepath","baseSegments","parsePathname","toSegments","length","toSegment","segmentValues","pathname","cache","cached","parsed","baseParsePathname","PARAM_RE","PARAM_W_CURLY_BRACES_RE","OPTIONAL_PARAM_W_CURLY_BRACES_RE","WILDCARD_RE","WILDCARD_W_CURLY_BRACES_RE","segments","split","part","wildcardBracesMatch","suffix","optionalParamBracesMatch","paramName","paramBracesMatch","interpolatePath","leaveWildcards","leaveParams","decodeCharMap","interpolatedPathSegments","encodeParam","isValueString","encodePathParam","isMissingParams","usedParams","interpolatedPath","segmentPrefix","segmentSuffix","encoded","encodedChar","char","matchPathname","currentPathname","matchLocation","pathParams","matchByPath","normalizedBasepath","normalizedPathname","from","fuzzy","routeSegments","isMatch","baseIndex","routeIndex","baseSegment","routeSegment","remainingBaseSegments","_splat","baseValue","rejoinedSplat","_paramValue","matched","paramValue","shouldMatchOptional","lookAhead","futureRouteSegment","SLASH_SCORE","STATIC_SEGMENT_SCORE","REQUIRED_PARAM_BASE_SCORE","OPTIONAL_PARAM_BASE_SCORE","WILDCARD_PARAM_BASE_SCORE","STATIC_AFTER_DYNAMIC_BONUS_SCORE","BOTH_PRESENCE_BASE_SCORE","PREFIX_PRESENCE_BASE_SCORE","SUFFIX_PRESENCE_BASE_SCORE","PREFIX_LENGTH_SCORE_MULTIPLIER","SUFFIX_LENGTH_SCORE_MULTIPLIER","handleParam","baseScore","sortRoutes","routes","scoredRoutes","trimmed","skip","optionalParamCount","hasStaticAfter","scores","i2","nextSegment","minLength","processRouteTree","routeTree","initRoute","routesById","routesByPath","recurseRoutes","childRoutes","childRoute","existingRoute","trimmedFullPath","flatRoutes","notFound","isNotFound","obj","getSafeSessionStorage","storageKey","throttle","wait","createScrollRestorationCache","safeSessionStorage","persistedState","scrollRestorationCache","defaultGetScrollRestorationKey","getCssSelector","el","parent","ignoreScroll","restoreScroll","storageKey2","behavior","shouldScrollRestoration","scrollToTopSelectors","byKey","resolvedKey","elementEntries","scroll","elementSelector","entry","hash","hashScrollIntoViewOptions","scrollOptions","selector","setupScrollRestoration","router","force","getKey","onScroll","attrId","restoreKey","keyEntry","elementEntry","cacheKey","handleHashScroll","encode","stringify","toValue","decode","searchParams","previousValue","defaultParseSearch","parseSearchWith","defaultStringifySearch","stringifySearchWith","parser","searchStr","hasParser","stringifyValue","search","rootRouteId","redirect","headers","response","isRedirect","createLRUCache","oldest","newest","touch","toDelete","existing","triggerOnReady","inner","resolvePreload","matchId","_handleNotFound","err","routeCursor","matchForRoute","handleRedirectAndNotFound","shouldSkipLoader","handleSerialError","routerCode","routeId","route","errorHandlerErr","_b2","isBeforeLoadSsr","existingMatch","parentMatchId","parentMatch","parentOverride","tempSsr2","defaultSsr","ssrFnContext","makeMaybe","tempSsr","ssr","setupPendingTimeout","pendingMs","routeNeedsPreload","pendingTimeout","preBeforeLoadSetup","then","executeBeforeLoad","prevLoadPromise","paramsError","searchError","cause","preload","beforeLoadFnContext","updateContext","beforeLoadContext2","beforeLoadContext","handleBeforeLoad","serverSsr","maybePromise","queueExecution","execute","executeHead","_d","_e","_f","assetContext","headFnContent","scripts","meta","links","headScripts","styles","getLoaderContext","parentMatchPromise","loaderDeps","runLoader","loadRouteChunk","loaderResult","loaderResultIsPromise","loaderData","headResult","head","pendingPromise","onErrorError","loadRouteMatch","loaderShouldRunAsync","loaderIsRunningAsync","prevMatch","match2","age","staleAge","shouldReloadOption","shouldReload","nextPreload","invalid","match3","nextIsFetching","loadMatches","arg","beforeLoad","readyPromise","lazyRoute","_id","loadComponents","preloads","componentTypes","componentType","getLocationChangeInfo","routerState","fromLocation","toLocation","pathChanged","hrefChanged","hashChanged","RouterCore","newOptions","previousOptions","getInitialRouterState","notFoundRoute","eventType","routerEvent","locationToParse","previousLocation","parse","parsedSearch","__tempLocation","__tempKey","parsedTempLocation","pathnameOrNext","locationSearchOrOpts","routePathname","getMatchedRoutes","id","build","dest","allCurrentLocationMatches","lastMatch","defaultedFromPath","fromPath","fromSearch","fromParams","nextTo","nextParams","interpolatedNextTo","destRoutes","nextPathname","nextSearch","validatedSearch","validateSearch","applySearchMiddleware","hashStr","nextState","buildWithMatches","maskedDest","maskedNext","foundMask","_from","maskProps","viewTransition","isSameState","ignoredProps","prop","isEqual","isSameUrl","previousCommitPromise","maskedLocation","hashScrollIntoView","nextHistory","replace","resetScroll","rest","reloadDocument","normalizeUrl","url","pendingMatches","s","redirect2","loadPromise","prevLocation","exitingMatches","enteringMatches","stayingMatches","previousMatches","newMatches","matches","hook","shouldViewTransition","startViewTransitionParams","resolvedViewTransitionTypes","matchesKey","findFn","invalidate","filter","gcTime","activeMatchIds","loadedMatchIds","baseLocation","foundRoute","matchedRoutes","routeParams","isGlobalNotFound","globalNotFoundRouteId","getParentContext","preMatchSearch","strictMatchSearch","parentSearch","parentStrictSearch","strictSearch","searchParamError","SearchParamError","loaderDepsHash","previousMatch","strictParams","strictParseParams","PathParamError","parentContext","contextFnContext","opts2","validateSearch2","trimmedPath","getMatchedParams","fuzzyMatch","matchedParams","_includeValidateSearch","allMiddlewares","acc","middlewares","legacyMiddleware","search2","next2","validate","final","applyNext","currentSearch","middleware","newSearch","preloadWarning","BaseRoute","options2","isRoot","customId","fullPath","other","lazyFn","BaseRootRoute","CatchBoundary","errorComponent","ErrorComponent","CatchBoundaryImpl","reset","React.createElement","React.Component","prevProps","errorInfo","show","setShow","jsxs","ClientOnly","fallback","useHydrated","React__default","React","is","y","objectIs","useState","useEffect","useLayoutEffect","useDebugValue","useSyncExternalStore$2","_useState","inst","forceUpdate","checkIfSnapshotChanged","latestGetSnapshot","nextValue","useSyncExternalStore$1","shim","useSyncExternalStoreShim_production","shimModule","require$$1","useSyncExternalStore","useRef","useMemo","withSelector_production","instRef","memoizedSelector","nextSnapshot","hasMemo","memoizedSnapshot","currentSelection","memoizedSelection","nextSelection","maybeGetServerSnapshot","withSelectorModule","useStore","useSyncExternalStoreWithSelector","shallow","objA","objB","keysA","getOwnKeys","routerContext","getRouterContext","useRouter","useRouterState","contextRouter","previousResult","newSlice","matchContext","dummyMatchContext","useMatch","nearestMatchId","useLoaderData","useLoaderDeps","select","useParams","useSearch","useNavigate","_defaultOpts","Navigate","navigate","previousPropsRef","React.useRef","formatProdErrorMessage","code","Internals","createPortal$1","containerInfo","implementation","getCrossOriginStringAs","as","reactDom_production","container","previousTransition","previousUpdatePriority","crossOrigin","integrity","fetchPriority","form","checkDCE","reactDomModule","React.useLayoutEffect","usePrevious","current","useIntersectionObserver","intersectionObserverOptions","useForwardedRef","innerRef","React.useImperativeHandle","useLinkProps","forwardedRef","isTransitioning","setIsTransitioning","hasRenderFetched","activeProps","inactiveProps","activeOptions","userPreload","userPreloadDelay","startTransition","disabled","style","className","onClick","onMouseEnter","onMouseLeave","onTouchStart","_params","_search","_hash","_state","_mask","_reloadDocument","_unsafeRelative","_fromLocation","propsSafeToSpread","React.useMemo","_options","isExternal","preloadDelay","currentPathSplit","nextPathSplit","doPreload","preloadViewportIoCallback","handleClick","isCtrlEvent","flushSync","handleFocus","handleTouchStart","handleEnter","eventTarget","timeoutMap","handleLeave","resolvedActiveProps","STATIC_ACTIVE_OBJECT","STATIC_EMPTY_OBJECT","resolvedInactiveProps","resolvedClassName","resolvedStyle","composeHandlers","STATIC_DISABLED_PROPS","STATIC_ACTIVE_PROPS","STATIC_TRANSITIONING_PROPS","handlers","handler","createLink","Comp","React.forwardRef","Link","_asChild","_type","linkProps","createRoute","Route","createRootRouteWithContext","createRootRoute","RootRoute","createFileRoute","FileRoute","_opts","LazyRoute","createLazyFileRoute","lazyRouteComponent","importer","exportName","comp","reload","load","lazyComp","Transitioner","mountLoadForRouter","hasPendingMatches","previousIsLoading","isAnyPending","previousIsAnyPending","isPagePending","previousIsPagePending","React.startTransition","CatchNotFound","resetKey","DefaultGlobalNotFound","SafeFragment","Fragment","renderRouteNotFound","ScriptOnce","ScrollRestoration","userKey","restoreScrollOptions","Match","React.memo","matchState","PendingComponent","pendingElement","routeErrorComponent","routeOnCatch","routeNotFoundComponent","resolvedNoSsr","ResolvedSuspenseBoundary","React.Suspense","ResolvedCatchBoundary","ResolvedNotFoundBoundary","parentRouteId","ShellComponent","MatchInner","OnRendered","prevLocationRef","routeId2","remountFn","remountDeps","out","Outlet","pendingMinMs","routerMatch","minPendingPromise","RouteErrorComponent","parentGlobalNotFound","childMatchId","nextMatch","Matches","ResolvedSuspense","MatchesInner","matchComponent","createRouter","Router","RouterContextProvider","RouterProvider","classNames","classes","appendClass","parseValue","newClass","module","CheckCircleIcon","_jsx","CheckCircleIcon$1","forwardRef","ErrorSolidIcon","IconErrorSolid","InfoIcon","_jsxs","IconInfo","CloseIcon","CloseIcon$1","alert","content","icon","actions","typography","Typography","weight","restProps","Text","destructive","UnstyledButton","onSubmit","onPointerDown","onPointerUp","onKeyDown","onKeyUp","onKeyPress","eventHandlers","IndicatorIcon","colour","indicator","TooltipContext","createContext","useTooltipContext","useContext","hasWindow","getNodeName","node","isNode","getWindow","_node$ownerDocument","getDocumentElement","_ref","isElement","isHTMLElement","isShadowRoot","invalidOverflowDisplayValues","isOverflowElement","overflow","overflowX","overflowY","display","getComputedStyle","tableElements","isTableElement","topLayerSelectors","isTopLayer","transformProperties","willChangeValues","containValues","isContainingBlock","elementOrCss","webkit","isWebKit","css","getContainingBlock","currentNode","getParentNode","isLastTraversableNode","lastTraversableNodeNames","getNodeScroll","getNearestOverflowAncestor","parentNode","getOverflowAncestors","list","traverseIframes","_node$ownerDocument2","scrollableAncestor","isBody","frameElement","getFrameElement","min","round","floor","createCoords","oppositeSideMap","oppositeAlignmentMap","start","end","evaluate","getSide","placement","getAlignment","getOppositeAxis","axis","getAxisLength","yAxisSides","getSideAxis","getAlignmentAxis","getAlignmentSides","rects","rtl","alignment","alignmentAxis","mainAlignmentSide","getOppositePlacement","getExpandedPlacements","oppositePlacement","getOppositeAlignmentPlacement","lrPlacement","rlPlacement","tbPlacement","btPlacement","getSideList","side","isStart","getOppositeAxisPlacements","flipAlignment","expandPaddingObject","padding","getPaddingObject","rectToClientRect","rect","width","height","candidateSelectors","candidateSelector","NoElement","getRootNode","_element$getRootNode","isInert","lookUp","_node$getAttribute","inertAtt","inert","isContentEditable","_node$getAttribute2","attValue","getCandidates","includeContainer","candidates","getCandidatesIteratively","elements","elementsToCheck","assigned","nestedCandidates","validCandidate","shadowRoot","validShadowRoot","_nestedCandidates","hasTabIndex","getTabIndex","getSortOrderTabIndex","isScope","tabIndex","sortOrderedTabbables","isInput","isHiddenInput","isDetailsWithSummary","r","getCheckedRadio","nodes","isTabbableRadio","radioScope","queryRadios","radioSet","checked","isRadio","isNonTabbableRadio","isNodeAttached","_nodeRoot","nodeRoot","nodeRootHost","attached","_nodeRootHost","_nodeRootHost$ownerDo","_nodeRoot2","_nodeRootHost2","_nodeRootHost2$ownerD","isZeroArea","_node$getBoundingClie","isHidden","displayCheck","getShadowRoot","isDirectSummary","nodeUnderDetails","originalNode","parentElement","rootNode","isDisabledFromFieldset","isNodeMatchingSelectorFocusable","isNodeMatchingSelectorTabbable","isValidShadowRootTabbable","shadowHostNode","sortByOrder","regularTabbables","orderedTabbables","candidateTabindex","sortable","tabbable","getPlatform","uaData","getUserAgent","brand","version","isSafari","isMac","isJSDOM","FOCUSABLE_ATTRIBUTE","TYPEABLE_SELECTOR","activeElement","doc","_activeElement","contains","getTarget","isEventTargetWithin","isRootElement","getDocument","isTypeableElement","matchesFocusVisible","getFloatingFocusElement","floatingElement","getNodeChildren","onlyOpenChildren","_node$context","isReactEvent","isMouseLikePointerType","pointerType","strict","values","isClient","SafeReact","useLatestRef","useInsertionEffect","useSafeInsertionEffect","useEffectEvent","_len","_key","getTabbableOptions","getTabbableIn","dir","len","active","nextIndex","getNextTabbable","referenceElement","getPreviousTabbable","isOutsideEvent","containerElement","relatedTarget","disableFocusInside","enableFocusInside","tabindex","computeCoordsFromPlacement","reference","floating","sideAxis","alignLength","isVertical","commonX","commonY","commonAlign","coords","computePosition","strategy","platform","validMiddleware","statefulPlacement","middlewareData","resetCount","nextX","nextY","detectOverflow","_await$platform$isEle","boundary","rootBoundary","elementContext","altBoundary","paddingObject","clippingClientRect","offsetParent","offsetScale","elementClientRect","arrow","arrowDimensions","isYAxis","minProp","maxProp","clientProp","endDiff","startDiff","arrowOffsetParent","clientSize","centerToReference","largestPossiblePadding","minPadding","maxPadding","min$1","center","offset","shouldAddOffset","alignmentOffset","flip","_middlewareData$arrow","_middlewareData$flip","initialPlacement","checkMainAxis","checkCrossAxis","specifiedFallbackPlacements","fallbackStrategy","fallbackAxisSideDirection","detectOverflowOptions","initialSideAxis","isBasePlacement","fallbackPlacements","hasFallbackAxisSideDirection","placements","overflows","overflowsData","sides","_middlewareData$flip2","_overflowsData$filter","nextPlacement","resetPlacement","_overflowsData$filter2","currentSideAxis","originSides","convertValueToCoords","mainAxisMulti","crossAxisMulti","rawValue","mainAxis","crossAxis","_middlewareData$offse","diffCoords","shift","limiter","mainAxisCoord","crossAxisCoord","minSide","maxSide","limitedCoords","getCssDimensions","getComputedStyle$1","hasOffset","offsetWidth","offsetHeight","shouldFallback","unwrapElement","getScale","domElement","$","noOffsets","getVisualOffsets","shouldAddVisualOffsets","isFixed","floatingOffsetParent","getBoundingClientRect","includeScale","isFixedStrategy","clientRect","scale","visualOffsets","offsetWin","currentWin","currentIFrame","iframeScale","iframeRect","left","top","getWindowScrollBarX","leftScroll","getHTMLOffset","documentElement","htmlRect","convertOffsetParentRelativeRectToViewportRelativeRect","topLayer","offsets","isOffsetParentAnElement","offsetRect","htmlOffset","getClientRects","getDocumentRect","html","body","SCROLLBAR_MAX","getViewportRect","visualViewport","visualViewportBased","windowScrollbarX","bodyStyles","bodyMarginInline","clippingStableScrollbarWidth","absoluteOrFixed","getInnerBoundingClientRect","getClientRectFromClippingAncestor","clippingAncestor","hasFixedPositionAncestor","stopNode","getClippingElementAncestors","cachedResult","currentContainingBlockComputedStyle","elementIsFixed","computedStyle","currentNodeIsContaining","ancestor","getClippingRect","clippingAncestors","firstClippingAncestor","clippingRect","accRect","getDimensions","getRectRelativeToOffsetParent","setLeftRTLScrollbarOffset","isStaticPositioned","getTrueOffsetParent","polyfill","rawOffsetParent","getOffsetParent","svgOffsetParent","getElementRects","getOffsetParentFn","getDimensionsFn","floatingDimensions","isRTL","rectsAreEqual","observeMove","onMove","io","root","_io","refresh","threshold","elementRectForRootMargin","insetTop","insetRight","insetBottom","insetLeft","isFirstUpdate","handleObserve","ratio","autoUpdate","update","ancestorScroll","ancestorResize","elementResize","layoutShift","animationFrame","referenceEl","ancestors","cleanupIo","reobserveFrame","resizeObserver","firstEntry","_resizeObserver","frameId","prevRefRect","frameLoop","nextRefRect","_resizeObserver2","offset$1","shift$1","flip$1","arrow$1","mergedOptions","platformWithCache","computePosition$1","getDPR","roundByDPR","dpr","useFloating","externalReference","externalFloating","transform","whileElementsMounted","open","setData","latestMiddleware","setLatestMiddleware","_reference","_setReference","_floating","_setFloating","setReference","referenceRef","setFloating","floatingRef","floatingEl","dataRef","hasWhileElementsMounted","whileElementsMountedRef","platformRef","openRef","fullData","isMountedRef","ReactDOM.flushSync","refs","floatingStyles","initialStyles","isRef","arrow$2","useMergeRefs","cleanupRef","refEffect","instance","cleanups","refCallback","refCleanup","ACTIVE_KEY","SELECTED_KEY","serverHandoffComplete","genId","useFloatingId","setId","useModernLayoutEffect","useReactId","useId","FloatingArrow","tipRadius","strokeWidth","staticOffset","stroke","restStyle","clipPathId","setIsRTL","isVerticalSide","computedStaticOffset","computedStrokeWidth","halfStrokeWidth","svgX","svgY","isCustomShape","yOffsetProp","xOffsetProp","arrowX","arrowY","dValue","rotation","t","createEventEmitter","map","_map$get","_map$get2","FloatingNodeContext","FloatingTreeContext","useFloatingParentNodeId","_React$useContext","useFloatingTree","createAttribute","clearTimeoutIfSet","timeoutRef","safePolygonIdentifier","getDelay","getRestMs","useHover","onOpenChange","events","handleClose","mouseOnly","restMs","move","tree","parentId","handleCloseRef","delayRef","restMsRef","pointerTypeRef","handlerRef","restTimeoutRef","blockMouseMoveRef","performedPointerEventsMutationRef","unbindMouseMoveRef","restTimeoutPendingRef","isHoverOpen","_dataRef$current$open","onLeave","getDocument$1","closeWithDelay","runElseBranch","closeDelay","cleanupMouseMoveHandler","clearPointerEvents","isClickLikeOpenEvent","onReferenceMouseEnter","openDelay","onReferenceMouseLeave","contains$1","onScrollMouseLeave","onFloatingMouseEnter","onFloatingMouseLeave","_handleCloseRef$curre","_tree$nodesRef$curren","parentFloating","setPointerRef","nativeEvent","handleMouseMove","NOOP","FloatingDelayGroupContext","useDelayGroupContext","FloatingDelayGroup","timeoutMs","setState","React.useReducer","initialCurrentIdRef","setCurrentId","currentId","useDelayGroup","floatingId","optionId","groupContext","initialDelay","unset","HIDDEN_STYLES","FocusGuard","role","setRole","PortalContext","attr","useFloatingPortalNode","uniqueId","portalContext","usePortalContext","portalNode","setPortalNode","portalNodeRef","existingIdRoot","subRoot","idWrapper","FloatingPortal","preserveTabOrder","focusManagerState","setFocusManagerState","beforeOutsideRef","afterOutsideRef","beforeInsideRef","afterInsideRef","modal","shouldRenderGuards","_beforeInsideRef$curr","domReference","prevTabbable","ReactDOM.createPortal","_afterInsideRef$curre","nextTabbable","bubbleHandlerKeys","captureHandlerKeys","normalizeProp","normalizable","_normalizable$escapeK","_normalizable$outside","useDismiss","escapeKey","unstable_outsidePress","outsidePressEvent","referencePress","referencePressEvent","bubbles","capture","outsidePressFn","outsidePress","endedOrStartedInsideRef","escapeKeyBubbles","outsidePressBubbles","escapeKeyCapture","outsidePressCapture","isComposingRef","closeOnEscapeKeyDown","_dataRef$current$floa","nodeId","getNodeChildren$1","shouldDismiss","_child$context","closeOnEscapeKeyDownCapture","_getTarget2","_getTarget","getTarget$1","closeOnPressOutside","_dataRef$current$floa2","insideReactTree","endedOrStartedInside","inertSelector","markers","targetRootAncestor","nextParent","marker","lastTraversableNode","scrollRe","isScrollableX","isScrollableY","canScrollX","canScrollY","pressedVerticalScrollbar","pressedHorizontalScrollbar","targetIsInsideChildren","_child$context2","closeOnPressOutsideCapture","_getTarget4","_getTarget3","compositionTimeout","handleCompositionStart","handleCompositionEnd","_doc$defaultView","useFloatingRootContext","onOpenChangeProp","elementsProp","nested","positionReference","setPositionReference","internalRootContext","rootContext","computedElements","_domReference","setDomReference","_setPositionReference","domReferenceRef","position","useFloating$1","computedPositionReference","isMacSafari","useFocus","visibleOnly","blockFocusRef","keyboardModalityRef","onBlur","movedToFocusGuard","activeEl","mergeProps","userProps","propsList","elementKey","isItem","domUserProps","__","validProps","propsOrGetProps","useInteractions","referenceDeps","floatingDeps","itemDeps","getReferenceProps","getFloatingProps","getItemProps","componentRoleToAriaRoleMap","useRole","_elements$domReferenc","_componentRoleToAriaR","defaultFloatingId","defaultReferenceId","referenceId","_getFloatingFocusElem","ariaRole","isNested","floatingProps","selected","commonProps","tooltip","invisible","caption","hoverDelay","TooltipProvider","useTooltip","controlledOpen","isTriggerInteractive","ariaAtomic","ariaLive","labelId","captionId","arrowRef","uncontrolledOpen","setUncontrolledOpen","setOpen","open2","hover","focus","pressTimer","press","onTouchEnd","dismiss","purpose","label","interactions","hasLabel","Tooltip","nonInteractiveTriggerTabIndex","TooltipAnchor","TooltipContent","Caption","Container","floatingContext","childrenRef","cloneElement","descriptionId","spanProps","IconButton","kind","noBackground","button","Alert","title","onClose","renderIcon","useCallback","props2","ErrorIcon","composeEventHandlers","originalEventHandler","ourEventHandler","checkForDefaultPrevented","createContext2","rootComponentName","defaultContext","Provider","useContext2","consumerName","createContextScope","scopeName","createContextScopeDeps","defaultContexts","createContext3","BaseContext","createScope","scopeContexts","contexts","composeContextScopes","scopes","baseScope","scopeHooks","createScope2","overrideScopes","nextScopes","nextScopes2","useScope","currentScope","setRef","composeRefs","hasCleanup","useComposedRefs","createSlot","ownerName","SlotClone","createSlotClone","Slot2","slotProps","childrenArray","React.Children","slottable","isSlottable","newElement","newChildren","React.isValidElement","React.cloneElement","getElementRef","React.Fragment","SLOTTABLE_IDENTIFIER","childProps","overrideProps","slotPropValue","childPropValue","getter","mayWarn","NODES","Primitive","primitive","Slot","Node","asChild","primitiveProps","dispatchDiscreteCustomEvent","useCallbackRef","callbackRef","useEscapeKeydown","onEscapeKeyDownProp","ownerDocument","onEscapeKeyDown","handleKeyDown","DISMISSABLE_LAYER_NAME","CONTEXT_UPDATE","POINTER_DOWN_OUTSIDE","FOCUS_OUTSIDE","originalBodyPointerEvents","DismissableLayerContext","DismissableLayer","disableOutsidePointerEvents","onPointerDownOutside","onFocusOutside","onInteractOutside","onDismiss","layerProps","setNode","composedRefs","node2","layers","highestLayerWithOutsidePointerEventsDisabled","highestLayerWithOutsidePointerEventsDisabledIndex","isBodyPointerEventsDisabled","isPointerEventsEnabled","pointerDownOutside","usePointerDownOutside","isPointerDownOnBranch","branch","focusOutside","useFocusOutside","dispatchUpdate","handleUpdate","BRANCH_NAME","DismissableLayerBranch","handlePointerDownOutside","isPointerInsideReactTreeRef","handleClickRef","handlePointerDown","handleAndDispatchPointerDownOutsideEvent2","handleAndDispatchCustomEvent","eventDetail","timerId","handleFocusOutside","isFocusInsideReactTreeRef","detail","discrete","useFocusGuards","edgeGuards","createFocusGuard","AUTOFOCUS_ON_MOUNT","AUTOFOCUS_ON_UNMOUNT","EVENT_OPTIONS","FOCUS_SCOPE_NAME","FocusScope","loop","trapped","onMountAutoFocusProp","onUnmountAutoFocusProp","scopeProps","setContainer","onMountAutoFocus","onUnmountAutoFocus","lastFocusedElementRef","focusScope","handleFocusIn2","handleFocusOut2","handleMutations2","mutations","mutationObserver","focusScopesStack","previouslyFocusedElement","mountEvent","focusFirst","removeLinks","getTabbableCandidates","unmountEvent","isTabKey","focusedElement","container2","first","getTabbableEdges","candidate","findVisible","walker","upTo","isSelectableInput","createFocusScopesStack","stack","activeFocusScope","arrayRemove","updatedArray","useLayoutEffect2","deterministicId","reactId","PORTAL_NAME","Portal","containerProp","portalProps","setMounted","ReactDOM","useStateMachine","machine","Presence","present","presence","usePresence","React2.Children","React2.cloneElement","React2.useState","stylesRef","React2.useRef","prevPresentRef","prevAnimationNameRef","send","React2.useEffect","currentAnimationName","getAnimationName","wasPresent","prevAnimationName","ownerWindow","handleAnimationEnd","isCurrentAnimation","currentFillMode","handleAnimationStart","React2.useCallback","useControllableState","defaultProp","onChange","caller","uncontrolledProp","setUncontrolledProp","onChangeRef","useUncontrolledState","isControlled","isControlledRef","wasControlled","setValue","value2","prevValueRef","getDefaultParent","originalTarget","sampleTarget","counterMap","uncontrolledNodes","markerMap","lockCount","unwrapHost","correctTargets","targets","correctedTarget","applyAttributeToOthers","markerName","controlAttribute","markerCounter","hiddenNodes","elementsToKeep","elementsToStop","keep","deep","alreadyHidden","counterValue","markerValue","hideOthers","activeParentNode","__assign","__rest","__spreadArray","pack","ar","zeroRightClassName","fullWidthClassName","noScrollbarsClassName","removedBarSizeVariable","assignRef","useIsomorphicLayoutEffect","currentValues","newValue","oldValue","prevRefs_1","nextRefs_1","current_1","ItoI","innerCreateMedium","buffer","medium","cbs","pendingQueue","executeQueue","cycle","createSidecarMedium","SideCar","sideCar","Target","exportSidecar","exported","effectCar","nothing","RemoveScroll","parentRef","callbacks","setCallbacks","forwardProps","removeScrollBar","shards","noRelative","noIsolation","allowPinchZoom","gapMode","containerRef","containerProps","getNonce","makeStyleTag","tag","nonce","injectStyles","insertStyleTag","stylesheetSingleton","counter","stylesheet","styleHookSingleton","sheet","isDynamic","styleSingleton","useStyle","Sheet","dynamic","zeroGap","getOffset","cs","right","getGapWidth","documentWidth","windowWidth","Style","lockAttribute","getStyles","allowRelative","important","gap","getCurrentUseCounter","useLockAttribute","newCounter","RemoveScrollBar","noImportant","passiveSupported","nonPassive","alwaysContainsScroll","elementCanBeScrolled","elementCouldBeVScrolled","elementCouldBeHScrolled","locationCouldBeScrolled","isScrollable","elementCouldBeScrolled","getScrollVariables","scrollHeight","clientHeight","getVScrollVariables","scrollTop","getHScrollVariables","scrollLeft","scrollWidth","clientWidth","getDirectionFactor","handleScroll","endTarget","sourceDelta","noOverscroll","directionFactor","targetInLock","shouldCancelScroll","isDeltaPositive","availableScroll","availableScrollTop","scroll_1","capacity","elementScroll","parent_1","getTouchXY","getDeltaXY","extractRef","deltaCompare","generateStyle","idCounter","lockStack","RemoveScrollSideCar","shouldPreventQueue","touchStartRef","activeAxis","lastProps","allow_1","shouldCancelEvent","touchStart","deltaX","deltaY","currentAxis","moveDirection","canBeScrolledInMainDirection","cancelingAxis","shouldPrevent","_event","sourceEvent","shardNodes","shouldStop","shouldCancel","should","getOutermostShadowParent","scrollTouchStart","scrollWheel","scrollTouchMove","shadowParent","ReactRemoveScroll","DIALOG_NAME","createDialogContext","createDialogScope","DialogProvider","useDialogContext","Dialog","__scopeDialog","openProp","defaultOpen","triggerRef","contentRef","prevOpen","TRIGGER_NAME","DialogTrigger","triggerProps","composedTriggerRef","getState","PortalProvider","DialogPortal","forceMount","PortalPrimitive","OVERLAY_NAME","DialogOverlay","overlayProps","DialogOverlayImpl","CONTENT_NAME","DialogContent","contentProps","DialogContentModal","DialogContentNonModal","DialogContentImpl","originalEvent","ctrlLeftClick","hasInteractedOutsideRef","hasPointerDownOutsideRef","trapFocus","onOpenAutoFocus","onCloseAutoFocus","TitleWarning","DescriptionWarning","TITLE_NAME","DialogTitle","titleProps","DESCRIPTION_NAME","DialogDescription","descriptionProps","CLOSE_NAME","DialogClose","closeProps","TITLE_WARNING_NAME","WarningProvider","useWarningContext","titleId","titleWarningContext","MESSAGE","DESCRIPTION_WARNING_NAME","describedById","Root","Trigger","Overlay","Content","Title","Description","Close","__insertCSS","DrawerContext","useDrawerContext","isMobileFirefox","userAgent","testPlatform","isIPhone","isIPad","isIOS","re","KEYBOARD_BUFFER","chain$1","getScrollParent","nonTextInputTypes","preventScrollCount","restore","usePreventScroll","isDisabled","preventScrollMobileSafari","scrollable","lastY","onTouchMove","bottom","scrollIntoView","onWindowScroll","scrollX","scrollY","restoreStyles","setStyle","removeEvents","addEvent","cur","scrollableTop","targetTop","targetBottom","keyboardHeight","set","ignoreCache","originalStyles","getTranslate","mat","dampenValue","assignStyle","prevStyle","chain","fns","TRANSITIONS","VELOCITY_THRESHOLD","CLOSE_THRESHOLD","SCROLL_LOCK_TIMEOUT","BORDER_RADIUS","NESTED_DISPLACEMENT","WINDOW_TOP_OFFSET","DRAG_CLASS","uncontrolledState","handleChange","useSnapPoints","activeSnapPointProp","setActiveSnapPointProp","snapPoints","drawerRef","overlayRef","fadeFromIndex","onSnapPointChange","snapToSequentialPoint","activeSnapPoint","setActiveSnapPoint","windowDimensions","setWindowDimensions","onResize","isLastSnapPoint","activeSnapPointIndex","_snapPoints_findIndex","snapPoint","shouldFade","snapPointsOffset","containerSize","_snapPoints_map","isPx","snapPointAsNumber","activeSnapPointOffset","snapToPoint","dimension","_snapPointsOffset_findIndex","newSnapPointIndex","snapPointDim","newIndex","onRelease","draggedDistance","closeDrawer","velocity","dismissible","currentPosition","isOverlaySnapPoint","isFirst","hasDraggedUp","closestSnapPoint","curr","dim","dragDirection","onDrag","getPercentageDragged","absDraggedDistance","isDraggingDown","targetSnapPointIndex","snapPointDistance","percentageDragged","useScaleBackground","isOpen","shouldScaleBackground","setBackgroundColorOnScale","noBodyStyles","timeoutIdRef","initialBackgroundColor","wrapper","wrapperStylesCleanup","previousBodyPosition","usePositionFixed","hasBeenOpened","preventScrollRestoration","activeUrl","setActiveUrl","scrollPos","setPositionFixed","innerHeight","bottomBarHeight","restorePositionSetting","onDragProp","onReleaseProp","closeThreshold","scrollLockTimeout","handleOnly","fixed","disablePreventScroll","repositionInputs","onAnimationEnd","autoFocus","_drawerRef_current","_drawerRef_current1","setIsOpen","setHasBeenOpened","isDragging","setIsDragging","justReleased","setJustReleased","openTime","dragStartTime","dragEndTime","lastTimeDragPrevented","isAllowedToDrag","nestedOpenChangeTimer","pointerStart","keyboardIsOpen","shouldAnimate","previousDiffFromInitial","drawerHeightRef","drawerWidthRef","initialDrawerHeight","onReleaseSnapPoints","onDragSnapPoints","getSnapPointsPercentageDragged","onPress","shouldDrag","isDraggingInDirection","_window_getSelection","highlightedText","swipeAmount","date","directionMultiplier","noCloseSnapPointsPreCondition","drawerDimension","snapPointPercentageDragged","dampenedDraggedDistance","translateValue","opacityValue","scaleValue","borderRadiusValue","_window_visualViewport","onVisualViewportChange","visualViewportHeight","totalHeight","diffFromInitial","drawerHeight","isTallEnough","offsetFromTop","activeSnapPointHeight","newDrawerHeight","fromWithin","cancelDrag","resetDrawer","currentSwipeAmount","timeTaken","distMoved","_drawerRef_current_getBoundingClientRect_height","visibleDrawerHeight","_drawerRef_current_getBoundingClientRect_width","visibleDrawerWidth","isHorizontalSwipe","onNestedOpenChange","initialTranslate","onNestedDrag","initialScale","newScale","newTranslate","onNestedRelease","translate","DialogPrimitive.Root","composedRef","hasSnapPoints","onMouseUp","DialogPrimitive.Overlay","delayedSnapPoints","setDelayedSnapPoints","pointerStartRef","lastKnownPointerEventRef","wasBeyondThePointRef","isDeltaInDirection","isDeltaX","dFactor","handleOnPointerUp","DialogPrimitive.Content","yPosition","xPosition","swipeStartThreshold","LONG_HANDLE_PRESS_TIMEOUT","DOUBLE_TAP_TIMEOUT","Handle","preventCycle","closeTimeoutIdRef","shouldCancelInteractionRef","handleStartCycle","handleCancelInteraction","handleCycleSnapPoints","currentSnapIndex","point","nextSnapPoint","handleStartInteraction","Drawer","glass","Glass","link","NAME","Label","createFormContext","createFormScope","FORM_NAME","ValidationProvider","useValidationContext","AriaDescriptionProvider","useAriaDescriptionContext","Form","__scopeForm","onClearServerErrors","rootProps","formRef","composedFormRef","validityMap","setValidityMap","getFieldValidity","fieldName","handleFieldValidityChange","validity","prevValidityMap","handleFieldValiditionClear","setCustomErrorsMap","prevCustomErrorsMap","customMatcherEntriesMap","setCustomMatcherEntriesMap","getFieldCustomMatcherEntries","handleFieldCustomMatcherAdd","matcherEntry","prevCustomMatcherEntriesMap","handleFieldCustomMatcherRemove","matcherEntryId","customErrorsMap","getFieldCustomErrors","handleFieldCustomErrorsChange","customErrors","messageIdsMap","setMessageIdsMap","handleFieldMessageIdAdd","prevMessageIdsMap","fieldDescriptionIds","handleFieldMessageIdRemove","getFieldDescription","firstInvalidControl","getFirstInvalidControl","FIELD_NAME","FormFieldProvider","useFormFieldContext","FormField","serverInvalid","fieldProps","getValidAttribute","getInvalidAttribute","LABEL_NAME","FormLabel","labelProps","validationContext","fieldContext","htmlFor","LabelPrimitive","CONTROL_NAME","FormControl","controlProps","ariaDescriptionContext","customMatcherEntries","onFieldValidityChange","onFieldCustomErrorsChange","onFieldValiditionClear","updateControlValidity","control","hasBuiltInError","controlValidity2","validityStateToObject","formData","matcherArgs","syncCustomMatcherEntries","ayncCustomMatcherEntries","customMatcherEntry","isAsyncCustomMatcherEntry","isSyncCustomMatcherEntry","syncCustomErrors","id2","syncCustomErrorsById","hasSyncCustomErrors","hasCustomError","DEFAULT_INVALID_MESSAGE","controlValidity","promisedCustomErrors","asyncCustomErrors","asyncCustomErrorsById","hasCustomError2","resetControlValidity","DEFAULT_BUILT_IN_MESSAGES","MESSAGE_NAME","FormMessage","nameProp","messageProps","FormMessageImpl","FormCustomMessage","FormBuiltInMessage","forceMatch","idProp","onFieldCustomMatcherEntryAdd","onFieldCustomMatcherEntryRemove","hasMatchingCustomError","onFieldMessageIdAdd","onFieldMessageIdRemove","VALIDITY_STATE_NAME","FormValidityState","SUBMIT_NAME","FormSubmit","submitProps","isFormControl","isInvalid","returnsPromise","validityKey","Field","Control","Message","ValidityState","Submit","Field$1","Label$1","Root$1","CheckCircleSolidIcon","IconCheckCircle","SpinnerIcon","SpinnerIcon$1","InlineSpinner","ErrorMessage","SuccessMessage","LoadingMessage","HelpMessage","Button","kindProp","iconOnly","Icon","destructiveProp","iconSize","TextInput","enableLigatures","TextControl","ActionInput","actionLabel","onActionClick","ActionControl","VisibilityOnIcon","VisibilityOn","VisibilityOffIcon","VisibilityOff","showState","hideState","PasswordInput","togglePasswordVisibility","useReducer","PasswordControl","push","heap","parentIndex","peek","pop","halfLength","leftIndex","rightIndex","diff","exports","localPerformance","localDate","initialTime","taskQueue","timerQueue","taskIdCounter","currentTask","currentPriorityLevel","isPerformingWork","isHostCallbackScheduled","isHostTimeoutScheduled","needsPaint","localSetTimeout","localClearTimeout","localSetImmediate","advanceTimers","currentTime","timer","handleTimeout","isMessageLoopRunning","schedulePerformWorkUntilDeadline","firstTimer","requestHostTimeout","taskTimeoutID","frameInterval","startTime","shouldYieldToHost","performWorkUntilDeadline","hasMoreWork","previousPriorityLevel","continuationCallback","channel","port","ms","fps","eventHandler","priorityLevel","parentPriorityLevel","schedulerModule","Scheduler","require$$2","isValidContainer","getNearestMountedFiber","fiber","nearestMounted","getSuspenseInstanceFromFiber","suspenseState","getActivityInstanceFromFiber","activityState","assertIsMounted","findCurrentFiberUsingSlowPath","alternate","parentA","parentB","didFindChild","child$0","findCurrentHostFiberImpl","REACT_LEGACY_ELEMENT_TYPE","REACT_SUSPENSE_LIST_TYPE","REACT_MEMO_CACHE_SENTINEL","REACT_CLIENT_REFERENCE","getComponentNameFromType","innerType","ReactDOMSharedInternals","sharedNotPendingObject","valueStack","createCursor","cursor","contextStackCursor","contextFiberStackCursor","rootInstanceStackCursor","hostTransitionProviderCursor","pushHostContainer","nextRootInstance","getOwnHostContext","getChildHostContextProd","popHostContainer","pushHostContext","JSCompiler_inline_result","popHostContext","HostTransitionContext","describeBuiltInComponentFrame","reentry","describeNativeComponentFrame","construct","previousPrepareStackTrace","RunInRootFrame","Fake","x$1","x$2","sample","namePropDescriptor","_RunInRootFrame$Deter","sampleStack","controlStack","sampleLines","controlLines","frame","describeFiber","childFiber","getStackByFiberInDevAndProd","workInProgress","info","scheduleCallback$3","cancelCallback$1","shouldYield","requestPaint","now","getCurrentPriorityLevel","ImmediatePriority","UserBlockingPriority","NormalPriority$1","LowPriority","IdlePriority","log$1","unstable_setDisableYieldValue","rendererID","injectedHook","setIsStrictModeForDevtools","newIsStrictMode","clz32","clz32Fallback","log","LN2","nextTransitionUpdateLane","nextTransitionDeferredLane","nextRetryLane","getHighestPriorityLanes","lanes","pendingSyncLanes","getNextLanes","wipLanes","rootHasPendingCommit","pendingLanes","nextLanes","suspendedLanes","pingedLanes","nonIdlePendingLanes","checkIfRootIsPrerendering","renderLanes","computeExpirationTime","lane","claimNextRetryLane","createLaneMap","initial","laneMap","markRootUpdated$1","updateLane","markRootFinished","finishedLanes","remainingLanes","spawnedLane","updatedLanes","suspendedRetryLanes","previouslyPendingLanes","entanglements","expirationTimes","hiddenUpdates","index$7","hiddenUpdatesForLane","markSpawnedDeferredLane","entangledLanes","spawnedLaneIndex","markRootEntangled","rootEntangledLanes","index$8","getBumpedLaneForHydration","renderLane","getBumpedLaneForHydrationByLane","lanesToEventPriority","resolveUpdatePriority","updatePriority","getEventPriority","runWithPriority","priority","previousPriority","randomKey","internalInstanceKey","internalPropsKey","internalContainerInstanceKey","internalEventHandlersKey","internalEventHandlerListenersKey","internalEventHandlesSetKey","internalRootNodeResourcesKey","internalHoistableMarker","detachDeletedInstance","getClosestInstanceFromNode","targetNode","targetInst","getParentHydrationBoundary","getInstanceFromNode","getNodeFromInstance","getResourcesFromRoot","resources","markNodeAsHoistable","allNativeEvents","registrationNameDependencies","registerTwoPhaseEvent","registrationName","dependencies","registerDirectEvent","VALID_ATTRIBUTE_NAME_REGEX","illegalAttributeNameCache","validatedAttributeNameCache","isAttributeNameSafe","attributeName","setValueForAttribute","prefix$10","setValueForKnownAttribute","setValueForNamespacedAttribute","namespace","getToStringValue","isCheckable","elem","trackValueOnNode","valueField","currentValue","descriptor","get","track","updateValueIfChanged","tracker","lastValue","getActiveElement","escapeSelectorAttributeValueInsideDoubleQuotesRegex","escapeSelectorAttributeValueInsideDoubleQuotes","ch","updateInput","lastDefaultValue","defaultChecked","setDefaultValue","initInput","isHydrating","updateOptions","multiple","propValue","setDefaultSelected","updateTextarea","initTextarea","setTextContent","text","firstChild","unitlessNumbers","setValueForStyle","styleName","isCustomProperty","setValueForStyles","prevStyles","styleName$16","styleName$17","isCustomElement","tagName","aliases","isJavaScriptProtocol","sanitizeURL","noop$1","currentReplayingEvent","getEventTarget","restoreTarget","restoreQueue","restoreStateOfTarget","internalInstance","otherNode","otherProps","isInsideEventHandler","batchedUpdates$1","flushSyncWork$1","getListener","stateNode","canUseDOM","passiveBrowserEventsSupported","startText","fallbackText","getData","startValue","startLength","endValue","endLength","minEnd","getEventCharCode","keyCode","functionThatReturnsTrue","functionThatReturnsFalse","createSyntheticEvent","Interface","SyntheticBaseEvent","reactName","reactEventType","nativeEventTarget","EventInterface","SyntheticEvent","UIEventInterface","SyntheticUIEvent","lastMovementX","lastMovementY","lastMouseEvent","MouseEventInterface","getEventModifierState","SyntheticMouseEvent","DragEventInterface","SyntheticDragEvent","FocusEventInterface","SyntheticFocusEvent","AnimationEventInterface","SyntheticAnimationEvent","ClipboardEventInterface","SyntheticClipboardEvent","CompositionEventInterface","SyntheticCompositionEvent","normalizeKey","translateToKey","modifierKeyToProp","modifierStateGetter","keyArg","KeyboardEventInterface","SyntheticKeyboardEvent","PointerEventInterface","SyntheticPointerEvent","TouchEventInterface","SyntheticTouchEvent","TransitionEventInterface","SyntheticTransitionEvent","WheelEventInterface","SyntheticWheelEvent","ToggleEventInterface","SyntheticToggleEvent","END_KEYCODES","canUseCompositionEvent","documentMode","canUseTextInputEvent","useFallbackCompositionData","SPACEBAR_CHAR","hasSpaceKeypress","isFallbackCompositionEnd","domEventName","getDataFromCustomEvent","isComposing","getNativeBeforeInputChars","getFallbackBeforeInputChars","supportedInputTypes","isTextInputElement","nodeName","createAndAccumulateChangeEvent","dispatchQueue","accumulateTwoPhaseListeners","activeElement$1","activeElementInst$1","runEventInBatch","processDispatchQueue","getInstIfValueChanged","getTargetInstForChangeEvent","isInputEventSupported","JSCompiler_inline_result$jscomp$286","isSupported$jscomp$inline_427","element$jscomp$inline_428","stopWatchingForValueChange","handlePropertyChange","handleEventsForInputEventPolyfill","getTargetInstForInputEventPolyfill","getTargetInstForClickEvent","getTargetInstForInputOrChangeEvent","shallowEqual","keysB","currentKey","getLeafNode","getNodeForCharacterOffset","nodeEnd","containsNode","outerNode","innerNode","getActiveElementDeep","hasSelectionCapabilities","skipSelectionChangeEvent","activeElementInst","lastSelection","mouseDown","constructSelectEvent","makePrefixMap","styleProp","eventName","prefixes","vendorPrefixes","prefixedEventNames","getVendorPrefixedEventName","prefixMap","ANIMATION_END","ANIMATION_ITERATION","ANIMATION_START","TRANSITION_RUN","TRANSITION_START","TRANSITION_CANCEL","TRANSITION_END","topLevelEventsToReactNames","simpleEventPluginEvents","registerSimpleEvent","concurrentQueues","concurrentQueuesIndex","concurrentlyUpdatedLanes","finishQueueingConcurrentUpdates","endIndex","markUpdateLaneFromFiberToRoot","enqueueUpdate$1","enqueueConcurrentHookUpdate","getRootForUpdatedFiber","enqueueConcurrentRenderForLane","sourceFiber","nestedUpdateCount","rootWithNestedUpdates","emptyContextObject","FiberNode","pendingProps","mode","createFiberImplClass","shouldConstruct","createWorkInProgress","resetWorkInProgress","createFiberFromTypeAndProps","owner","fiberTag","isHostHoistableType","createFiberFromFragment","createFiberFromText","createFiberFromDehydratedFragment","dehydratedNode","createFiberFromPortal","portal","CapturedStacks","createCapturedValueAtFiber","source","forkStack","forkStackIndex","treeForkProvider","treeForkCount","idStack","idStackIndex","treeContextProvider","treeContextId","treeContextOverflow","pushTreeFork","totalChildren","pushTreeId","baseIdWithLeadingBit","baseLength","numberOfOverflowBits","pushMaterializedTreeId","popTreeContext","restoreSuspendedTreeContext","suspendedContext","hydrationParentFiber","nextHydratableInstance","hydrationErrors","rootOrSingletonContext","HydrationMismatchException","throwOnHydrationMismatch","queueHydrationError","prepareToHydrateHostInstance","listenToNonDelegatedEvent","mediaEventTypes","checkForUnmatchedText","popToNextHostParent","popHydrationState","JSCompiler_temp","shouldSetTextContent","getNextHydratableInstanceAfterHydrationBoundary","isSingletonScope","previousHydratableOnEnteringScopedSingleton","getNextHydratable","resetHydrationState","upgradeHydrationErrorsToRecoverable","queuedErrors","workInProgressRootRecoverableErrors","valueCursor","currentlyRenderingFiber$1","lastContextDependency","pushProvider","providerFiber","popProvider","scheduleContextWorkOnParentPath","propagationRoot","propagateContextChanges","forcePropagateEntireTree","nextFiber","dependency","propagateParentContextChanges","isInsidePropagationBailout","currentParent","checkIfContextChanged","currentDependencies","prepareToReadContext","readContext","readContextForConsumer","readContextDuringReconciliation","consumer","AbortControllerLocal","listeners","signal","scheduleCallback$2","NormalPriority","CacheContext","createCache","releaseCache","currentEntangledListeners","currentEntangledPendingCount","currentEntangledLane","currentEntangledActionThenable","entangleAsyncAction","transition","entangledListeners","requestTransitionLane","pingEngtangledActionScope","chainThenableValue","thenableWithOverride","prevOnStartTransitionFinish","globalMostRecentTransitionTime","resumedCache","peekCacheFromPool","cacheResumedFromPreviousRender","workInProgressRoot","pushTransition","offscreenWorkInProgress","prevCachePool","getSuspendedCache","cacheFromPool","SuspenseException","SuspenseyCommitException","SuspenseActionException","noopSuspenseyCommitThenable","isThenableResolved","trackUsedThenable","thenableState","checkIfUseWrappedInAsyncCatch","fulfilledThenable","rejectedThenable","suspendedThenable","resolveLazy","lazyType","getSuspendedThenable","rejectedReason","thenableState$1","thenableIndexCounter$1","unwrapThenable","coerceRef","throwOnInvalidObjectTypeImpl","returnFiber","newChild","createChildReconciler","shouldTrackSideEffects","deleteChild","childToDelete","deletions","deleteRemainingChildren","currentFirstChild","mapRemainingChildren","existingChildren","useFiber","placeChild","newFiber","lastPlacedIndex","placeSingleChild","updateTextNode","textContent","updateElement","elementType","updateFragment","updatePortal","fragment","createChild","updateSlot","oldFiber","updateFromMap","newIdx","reconcileChildrenArray","resultingFirstChild","previousNewFiber","nextOldFiber","reconcileChildrenIterator","step","reconcileChildFibersImpl","firstChildFiber","reconcileChildFibers","mountChildFibers","hasForceUpdate","initializeUpdateQueue","cloneUpdateQueue","createUpdate","enqueueUpdate","updateQueue","executionContext","entangleTransitions","queueLanes","enqueueCapturedUpdate","capturedUpdate","newFirst","newLast","clone","didReadFromEntangledAsyncAction","suspendIfUpdateReadFromEntangledAsyncAction","entangledActionThenable","processUpdateQueue","workInProgress$jscomp$0","instance$jscomp$0","firstBaseUpdate","lastBaseUpdate","lastPendingUpdate","firstPendingUpdate","isHiddenUpdate","workInProgressRootRenderLanes","workInProgressRootSkippedLanes","callCallback","commitCallbacks","currentTreeHiddenStackCursor","prevEntangledRenderLanesCursor","pushHiddenContext","entangledRenderLanes","reuseHiddenContextOnStack","popHiddenContext","suspenseHandlerStackCursor","shellBoundary","pushPrimaryTreeSuspenseHandler","suspenseStackCursor","pushDehydratedActivitySuspenseHandler","pushOffscreenSuspenseHandler","reuseSuspenseHandlerOnStack","popSuspenseHandler","findFirstSuspended","row","isSuspenseInstancePending","isSuspenseInstanceFallback","currentlyRenderingFiber","currentHook","workInProgressHook","didScheduleRenderPhaseUpdate","didScheduleRenderPhaseUpdateDuringThisPass","shouldDoubleInvokeUserFnsInHooksDEV","localIdCounter","thenableIndexCounter","globalClientIdCounter","throwInvalidHookError","areHookInputsEqual","nextDeps","prevDeps","renderWithHooks","secondArg","nextRenderLanes","HooksDispatcherOnMount","HooksDispatcherOnUpdate","renderWithHooksAgain","finishRenderingHooks","ContextOnlyDispatcher","didRenderTooFewHooks","didReceiveUpdate","numberOfReRenders","HooksDispatcherOnRerender","TransitionAwareHostComponent","dispatcher","maybeThenable","useThenable","checkDidRenderIdHook","didRenderIdHook","bailoutHooks","resetHooksOnUnwind","mountWorkInProgressHook","updateWorkInProgressHook","nextCurrentHook","nextWorkInProgressHook","createFunctionComponentUpdateQueue","use","useMemoCache","memoCache","basicStateReducer","updateReducer","updateReducerImpl","baseQueue","baseFirst","newBaseQueueFirst","newBaseQueueLast","didReadFromEntangledAsyncAction$60","revertLane","rerenderReducer","dispatch","lastRenderPhaseUpdate","updateSyncExternalStore","isHydrating$jscomp$0","snapshotChanged","updateEffect","subscribeToStore","pushSimpleEffect","updateStoreInstance","pushStoreConsistencyCheck","renderedSnapshot","forceStoreRerender","scheduleUpdateOnFiber","mountStateImpl","initialStateInitializer","updateOptimisticImpl","dispatchActionState","actionQueue","setPendingState","isRenderPhaseUpdate","actionNode","runActionStateAction","handleActionReturnValue","onActionError","error$66","onActionSuccess","notifyActionListeners","actionStateReducer","oldState","mountActionState","initialStateProp","ssrFormState","JSCompiler_inline_result$jscomp$0","inRootOrSingleton","dispatchSetState","dispatchOptimisticSetState","updateActionState","stateHook","updateActionStateImpl","currentStateHook","actionStateActionEffect","rerenderActionState","updateRef","mountEffectImpl","fiberFlags","hookFlags","updateEffectImpl","mountEffect","useEffectEventImpl","componentUpdateQueue","updateEvent","updateInsertionEffect","updateLayoutEffect","imperativeHandleEffect","updateImperativeHandle","mountDebugValue","updateCallback","updateMemo","nextCreate","mountDeferredValueImpl","requestDeferredLane","updateDeferredValueImpl","prevValue","pendingState","finishedState","thenableForFinishedState","dispatchSetStateInternal","requestUpdateLane","startHostTransition","formFiber","ensureFormComponentIsStateful","requestFormReset$1","existingStateHook","initialResetState","useHostTransitionStatus","updateId","updateRefresh","refreshCache","root$69","dispatchReducerAction","enqueueRenderPhaseUpdate","entangleTransitionUpdate","currentState","eagerState","throwIfDuringRender","identifierPrefix","idWithLeadingBit","booleanOrThenable","applyDerivedStateFromProps","getDerivedStateFromProps","nextProps","classComponentUpdater","checkShouldComponentUpdate","oldProps","newProps","nextContext","callComponentWillReceiveProps","resolveClassComponentProps","baseProps","propName$73","defaultOnUncaughtError","defaultOnCaughtError","defaultOnRecoverableError","logUncaughtError","onUncaughtError","e$74","logCaughtError","onCaughtError","e$75","createRootErrorUpdate","createClassErrorUpdate","initializeClassErrorUpdate","getDerivedStateFromError","legacyErrorBoundariesThatAlreadyFailed","throwException","rootRenderLanes","renderDidSuspendDelayIfPossible","workInProgressRootExitStatus","attachPingListener","wrapperError","workInProgressRootConcurrentErrors","SelectiveHydrationException","reconcileChildren","nextChildren","updateForwardRef","propsWithoutRef","bailoutOnAlreadyFinishedWork","updateMemoComponent","updateSimpleMemoComponent","checkScheduledUpdateOrContext","updateFunctionComponent","updateOffscreenComponent","deferHiddenOffscreenComponent","bailoutOffscreenComponent","nextBaseLanes","remainingChildLanes","mountActivityChildren","mountWorkInProgressOffscreenFiber","retryActivityComponentWithoutHydrating","updateActivityComponent","didSuspend","canHydrateHydrationBoundary","dehydrated","markRef","replayFunctionComponent","updateClassComponent","contextType","unresolvedOldProps","oldContext","contextType$jscomp$0","mountHostRootWithoutHydrating","SUSPENDED_MARKER","mountSuspenseOffscreenState","getRemainingWorkInPrimaryTree","primaryTreeDidDefer","workInProgressDeferredLane","updateSuspenseComponent","showFallback","nextPrimaryChildren","mountSuspensePrimaryChildren","retrySuspenseComponentWithoutHydrating","digest","primaryChildren","offscreenProps","scheduleSuspenseWorkOnFiber","initSuspenseListRenderState","isBackwards","tail","lastContentRow","tailMode","renderState","updateSuspenseListComponent","revealOrder","suspenseContext","shouldForceFallback","attemptEarlyBailoutIfNoScheduledUpdate","state$102","didSuspendBefore","beginWork","$$typeof","getResource","getOwnerDocumentFromRootContainer","setInitialProperties","resolveSingletonInstance","canHydrateInstance","canHydrateTextInstance","markUpdate","preloadInstanceAndSuspendIfNeeded","shouldRemainOnPreviousScreen","preloadResourceAndSuspendIfNeeded","resource","preloadResource","scheduleRetryEffect","retryQueue","workInProgressSuspendedRetryLanes","cutOffTailIfNeeded","hasRenderedATailFallback","lastTailNode","lastTailNode$106","bubbleProperties","completedWork","didBailout","newChildLanes","subtreeFlags","child$107","completeWork","nextResource","listenToAllSupportedEvents","workInProgressRootRenderTargetTime","unwindWork","unwindInterruptedWork","interruptedWork","commitHookEffectListMount","flags","finishedWork","lastEffect","firstEffect","captureCommitPhaseError","commitHookEffectListUnmount","nearestMountedAncestor$jscomp$0","destroy","nearestMountedAncestor","destroy_","commitClassCallbacks","safelyCallComponentWillUnmount","safelyAttachRef","instanceToUse","safelyDetachRef","error$140","commitHostMount","commitHostUpdate","updateProperties","isHostParent","getHostSibling","insertOrAppendPlacementNodeIntoContainer","before","insertOrAppendPlacementNode","commitHostSingletonAcquisition","singleton","attributes","offscreenSubtreeIsHidden","offscreenSubtreeWasHidden","needsFormReset","PossiblyWeakSet","nextEffect","commitBeforeMutationEffects","eventsEnabled","_enabled","selection","anchorOffset","focusNode","indexWithinAnchor","indexWithinFocus","selectionInformation","resolvedPrevProps","clearContainerSparingly","commitLayoutEffectOnFiber","finishedRoot","recursivelyTraverseLayoutEffects","error$139","commitActivityHydrationCallbacks","commitSuspenseHydrationCallbacks","retryDehydratedSuspenseBoundary","registerSuspenseInstanceRetry","prevOffscreenSubtreeWasHidden","recursivelyTraverseReappearLayoutEffects","detachFiberAfterEffects","hostParent","hostParentIsContainer","recursivelyTraverseDeletionEffects","commitDeletionEffectsOnFiber","deletedFiber","prevHostParent","prevHostParentIsContainer","releaseSingletonInstance","clearHydrationBoundary","retryIfBlockedOn","getRetryCache","retryCache","attachSuspenseRetryListeners","wakeables","wakeable","resolveRetryWakeable","recursivelyTraverseMutationEffects","root$jscomp$0","parentFiber","commitMutationEffectsOnFiber","currentHoistableRoot","commitReconciliationEffects","hoistableRoot","currentResource","maybeNodes","getHydratableHoistableCache","mountHoistable","acquireResource","tagCaches","getHoistableRoot","recursivelyResetForms","globalMostRecentFallbackTime","wasHidden","prevOffscreenSubtreeIsHidden","recursivelyTraverseDisappearLayoutEffects","hideOrUnhideDehydratedBoundary","hostParentFiber","parent$141","before$142","parent$143","before$144","finishedRoot$jscomp$0","includeWorkInProgressEffects","hiddenCallbacks","commitOffscreenPassiveMountEffects","previousCache","commitCachePassiveMountEffect","recursivelyTraversePassiveMountEffects","committedLanes","committedTransitions","commitPassiveMountOnFiber","_finishedWork$memoize2","onPostCommit","recursivelyTraverseAtomicPassiveEffects","recursivelyTraverseReconnectPassiveEffects","committedLanes$jscomp$0","committedTransitions$jscomp$0","suspenseyCommitFlag","recursivelyAccumulateSuspenseyCommit","suspendedState","accumulateSuspenseyCommitOnFiber","suspendResource","previousHoistableRoot","detachAlternateSiblings","previousFiber","recursivelyTraversePassiveUnmountEffects","commitPassiveUnmountEffectsInsideOfDeletedTree_begin","commitPassiveUnmountOnFiber","recursivelyTraverseDisconnectPassiveEffects","deletedSubtreeRoot","sibling","DefaultAsyncDispatcher","resourceType","cacheForType","PossiblyWeakMap","workInProgressSuspendedReason","workInProgressThrownValue","workInProgressRootDidSkipSuspendedSiblings","workInProgressRootIsPrerendering","workInProgressRootDidAttachPingListener","workInProgressRootInterleavedUpdatedLanes","workInProgressRootPingedLanes","workInProgressRootDidIncludeRecursiveRenderUpdate","workInProgressTransitions","pendingEffectsStatus","pendingEffectsRoot","pendingFinishedWork","pendingEffectsLanes","pendingEffectsRemainingLanes","pendingPassiveTransitions","pendingRecoverableErrors","prepareFreshStack","markRootSuspended","ensureRootIsScheduled","performWorkOnRoot","forceSync","shouldTimeSlice","exitStatus","renderRootConcurrent","renderRootSync","renderWasConcurrent","isRenderConsistentWithExternalStores","wasRootDehydrated","scheduleTimeout","commitRootWhenReady","recoverableErrors","transitions","didIncludeRenderPhaseUpdate","didSkipSuspendedSiblings","suspendedCommitReason","completedRenderStartTime","completedRenderEndTime","timeoutOffset","waitForCommitToBeReady","commitRoot","check","didAttemptEntireTree","index$6","flushSyncWorkAcrossRoots_impl","resetWorkInProgressStack","timeoutHandle","cancelTimeout","allEntangledLanes","index$4","handleThrow","thrownValue","pushDispatcher","prevDispatcher","pushAsyncDispatcher","prevAsyncDispatcher","shouldYieldForPrerendering","prevExecutionContext","unitOfWork","throwAndUnwindWorkLoop","workLoopSync","thrownValue$165","performUnitOfWork","replaySuspendedUnitOfWork","hostFiber","completeUnitOfWork","workLoopConcurrentByScheduler","thrownValue$167","suspendedReason","unwindUnitOfWork","skipSiblings","flushPendingEffects","scheduleCallback$1","flushPassiveEffects","flushMutationEffects","flushLayoutEffects","flushSpawnedWork","rootMutationHasEffect","priorSelectionInformation","curFocusedElem","priorFocusedElem","priorSelectionRange","start$jscomp$0","end$jscomp$0","startMarker","endMarker","range","rootHasLayoutEffect","releaseRootPooledCache","onRecoverableError","recoverableError","renderPriority","captureCommitPhaseErrorOnRoot","rootFiber","pingCache","threadIDs","pingSuspendedRoot","retryTimedOutBoundary","boundaryFiber","retryLane","firstScheduledRoot","lastScheduledRoot","didScheduleMicrotask","mightHavePendingSyncWork","isFlushingWork","currentEventTransitionLane","scheduleImmediateRootScheduleTask","syncTransitionLanes","onlyLegacy","didPerformSomeWork","root$170","performSyncWorkOnRoot","processRootScheduleInImmediateTask","processRootScheduleInMicrotask","shouldAttemptEagerTransition","scheduleTaskForRootDuringMicrotask","index$5","expirationTime","performWorkOnRootViaSchedulerTask","didTimeout","originalCallbackNode","workInProgressRootRenderLanes$jscomp$0","scheduleMicrotask","actionScopeLane","coerceFormActionProp","actionProp","createFormDataWithSubmitter","submitter","temp","extractEvents$1","maybeTargetInst","i$jscomp$inline_1577","eventName$jscomp$inline_1578","domEventName$jscomp$inline_1579","capitalizedEvent$jscomp$inline_1580","nonDelegatedEvents","eventSystemFlags","_dispatchQueue$i","previousInstance","i$jscomp$0","_dispatchListeners$i","currentTarget","targetElement","listenerSetKey","addTrappedEventListener","listenToNativeEvent","isCapturePhaseListener","listeningMarker","rootContainerElement","targetContainer","listenerWrapper","dispatchDiscreteEvent","dispatchContinuousEvent","dispatchEvent","dispatchEventForPluginEventSystem","targetInst$jscomp$0","ancestorInst","nodeTag","grandTag","SyntheticEventCtor","inCapturePhase","accumulateTargetOnly","reactEventName","lastHostComponent","_instance","createDispatchListener","getParent","tempB","accumulateEnterLeaveListenersForEvent","getTargetInstFunc","handleEventFunc","fallbackData","targetFiber","captureName","_instance2","common","_instance3","NORMALIZE_NEWLINES_REGEX","NORMALIZE_NULL_AND_REPLACEMENT_REGEX","normalizeMarkupForTextOrAttribute","markup","serverText","clientText","setProp","setPropOnCustomElement","hasSrc","hasSrcSet","propKey","propValue$184","lastProp","propKey$201","propKey$217","propKey$222","propKey$227","propKey$232","isLikelyStaticResource","initiatorType","estimateBandwidth","bits","resourceEntries","transferSize","duration","overlapEntry","overlapStartTime","overlapTransferSize","overlapInitiatorType","namespaceURI","parentNamespace","currentPopstateTransitionEvent","localPromise","handleErrorInNextTick","parentInstance","hydrationInstance","depth","nextNode","node$jscomp$0","nextNode$jscomp$0","suspenseInstance","anyProps","nodeType","targetInstance","rootContainerInstance","preloadPropsMap","preconnectsSet","previousDispatcher","flushSyncWork","requestFormReset","prefetchDNS","preconnect","preloadModule","preinitScript","preinitStyle","preinitModuleScript","previousWasRendering","wasRendering","formInst","globalDocument","preconnectAs","rel","limitedEscapedHref","preloadSelector","getStyleKey","getScriptKey","getStylesheetSelectorFromKey","getScriptSelectorFromKey","precedence","adoptPreloadPropsForStylesheet","insertStylesheet","src","adoptPreloadPropsForScript","currentProps","styles$243","resource$244","preloadStylesheet","stylesheetPropsFromRawProps","rawProps","preloadProps","styleProps","instance$249","linkInstance","prior","stylesheetProps","scriptProps","keyAttribute","caches","nodeKey","hostContext","onUnsuspend","estimatedBytesWithinLimit","insertSuspendedStylesheets","commit","stylesheetTimer","unsuspend","imgTimer","precedencesByRoot","insertStylesheetIntoRoot","precedences","FiberRootNode","hydrate","onDefaultTransitionIndicator","formState","createFiberRoot","initialChildren","hydrationCallbacks","isStrictMode","getContextForSubtree","parentComponent","updateContainerImpl","markRetryLaneImpl","markRetryLaneIfNotHydrated","attemptContinuousHydration","attemptHydrationAtCurrentPriority","blockedOn","findInstanceBlockingEvent","return_targetInst","clearIfContinuousEvent","queueIfContinuousEvent","discreteReplayableEvents","findInstanceBlockingTarget","hasScheduledReplayAttempt","queuedFocus","queuedDrag","queuedMouse","queuedPointers","queuedPointerCaptures","queuedExplicitHydrationTargets","accumulateOrCreateContinuousQueuedReplayableEvent","existingQueuedEvent","pointerId","attemptExplicitHydrationTarget","queuedTarget","attemptReplayContinuousQueuedEvent","queuedEvent","targetContainers","nextBlockedOn","nativeEventClone","attemptReplayContinuousQueuedEventInMap","replayUnblockedEvents","scheduleCallbackIfUnblocked","unblocked","lastScheduledReplayQueue","scheduleReplayQueueIfNeeded","formReplayingQueue","submitterOrAction","unblock","formProps","defaultOnDefaultTransitionIndicator","handleNavigate","pendingResolve","handleNavigateComplete","isCancelled","startFakeNavigation","currentEntry","ReactDOMRoot","internalRoot","ReactDOMHydrationRoot","isomorphicReactPackageVersion$jscomp$inline_1840","componentOrElement","internals$jscomp$inline_2347","hook$jscomp$inline_2348","reactDomClient_production","clientModule","isString","defer","rej","makeString","lastOfPathSeparatorRegExp","cleanKey","canNotTraverseDeeper","getLastOfPath","Empty","stackIndex","setPath","pushPath","concat","getPath","getPathWithDefaults","defaultData","deepExtend","overwrite","regexEscape","_entityMap","RegExpCache","pattern","regExpFromCache","regExpNew","chars","looksLikeObjectPathRegExpCache","looksLikeObjectPath","nsSeparator","keySeparator","possibleChars","ki","deepFind","tokens","nextPath","j","getCleanedCode","consoleLogger","Logger","concreteLogger","lvl","debugOnly","moduleName","baseLogger","EventEmitter","numListeners","numTimesAdded","ResourceStore","ns","lng","ignoreJSONStructure","postProcessor","processors","translator","processor","PATH_KEY","createProxy","proxy","keysFromSelector","checkedLoadedFor","shouldHandleAsObject","Translator","services","opt","resolved","isObject","namespaces","wouldCheckForNsInKey","seemsNaturalLanguage","parts","lastKey","returnDetails","appendNamespaceToCIMode","resUsedKey","resExactUsedKey","noObject","joinArrays","handleAsObjectInI18nFormat","needsPluralHandling","hasDefaultValue","defaultValueSuffix","defaultValueSuffixOrdinalFallback","needsZeroSuffixLookup","resForObjHndl","handleAsObject","resType","resTypeIsArray","newKeyToUse","deepKey","usedDefault","usedKey","resForMissing","updateMissing","fk","lngs","fallbackLngs","l","specificDefaultValue","defaultForMissing","language","suffixes","skipOnVariables","nestBef","nb","na","nestAft","postProcess","postProcessorNames","found","exactUsedKey","usedLng","usedNS","extracted","needsContextHandling","codes","finalKeys","pluralSuffix","zeroSuffix","ordinalPrefix","contextKey","possibleKey","optionsKeys","useOptionsReplaceForData","option","LanguageUtil","formattedCode","cleanedLng","lngScOnly","lngOnly","supportedLng","fallbacks","fallbackCode","fallbackCodes","addCode","fc","suffixesOrder","dummyRule","PluralResolver","languageUtils","cleanedCode","rule","lngPart","pluralCategory1","pluralCategory2","pluralCategory","deepFindWithDefaults","regexSafe","Interpolator","escape$1","escapeValue","useRawValueToEscape","prefixEscaped","suffixEscaped","formatSeparator","unescapeSuffix","unescapePrefix","nestingPrefix","nestingPrefixEscaped","nestingSuffix","nestingSuffixEscaped","nestingOptionsSeparator","maxReplaces","alwaysFormat","getOrResetRegExp","existingRegExp","replaces","handleFormat","f","missingInterpolationHandler","todo","matchedVar","safeValue","clonedOptions","handleHasOptions","inheritedOptions","sep","optionsString","matchedSingleQuotes","matchedDoubleQuotes","formatters","keyEndIndex","parseFormatStr","formatStr","formatName","formatOptions","optStr","trimmedKey","createCachedFormatter","optForCache","frm","createNonCachedFormatter","Formatter","cf","formatter","format","formats","mem","formatted","valOptions","removePending","q","Connector","backend","languages","toLoad","toLoadLanguages","toLoadNamespaces","hasAllNamespaces","loaded","loadedKeys","fcName","tried","resolver","fallbackValue","isUpdate","clb","ret","transformOptions","bindMemberFunctions","I18n","defOpts","createClassOnDemand","ClassOrObject","lu","deferred","finish","usedCallback","append","li","lngInLngs","setLngProps","done","setLng","fl","keyPrefix","fixedT","resultKey","fallbackLng","lastLng","loadNotPending","loadState","preResult","preloaded","newLngs","ti","rtlLngs","forkResourceStore","clonedData","warn","i18n","msg","alreadyWarned","warnOnce","loadedClb","initialized","loadNamespaces","loadLanguages","hasLoadedNamespace","i18nInstance","matchHtmlEntity","htmlEntities","unescapeHtmlEntity","unescape","defaultOptions","setDefaults","getDefaults","setI18n","getI18n","initReactI18next","I18nContext","ReportNamespaces","notReadyT","optsOrDefaultValue","notReadySnapshot","dummySubscribe","useTranslation","i18nFromProps","i18nFromContext","defaultNSFromContext","i18nOptions","useSuspense","nsOrContext","revisionRef","bindI18n","bindI18nStore","wrappedCallback","snapshotRef","calculatedReady","currentLng","currentRevision","lastSnapshot","newSnapshot","loadCount","setLoadCount","ready","onLoaded","finalI18n","wrapperRef","wrapperLangRef","createI18nWrapper","original","descriptors","lang","i18nWrapper","Translation","I18nextProvider","defaultNS","createElement","PageHeading","success","subtitle","cx","GenericError","dontSuspend","useFragment","_documentNode","fragmentType","TypedDocumentString","__meta__","AccountDeleteButton_UserFragmentDoc","AccountDeleteButton_SiteConfigFragmentDoc","PasswordChange_SiteConfigFragmentDoc","EndBrowserSessionButton_SessionFragmentDoc","BrowserSession_SessionFragmentDoc","OAuth2Client_DetailFragmentDoc","EndCompatSessionButton_SessionFragmentDoc","CompatSession_SessionFragmentDoc","Footer_SiteConfigFragmentDoc","EndOAuth2SessionButton_SessionFragmentDoc","OAuth2Session_SessionFragmentDoc","BrowserSession_DetailFragmentDoc","CompatSession_DetailFragmentDoc","OAuth2Session_DetailFragmentDoc","UserEmail_EmailFragmentDoc","UserGreeting_UserFragmentDoc","UserGreeting_SiteConfigFragmentDoc","AddEmailForm_UserFragmentDoc","AddEmailForm_SiteConfigFragmentDoc","UserEmailList_UserFragmentDoc","UserEmailList_SiteConfigFragmentDoc","BrowserSessionsOverview_UserFragmentDoc","RecoverPassword_UserRecoveryTicketFragmentDoc","PasswordCreationDoubleInput_SiteConfigFragmentDoc","RecoverPassword_SiteConfigFragmentDoc","DeactivateUserDocument","FooterDocument","EndBrowserSessionDocument","EndCompatSessionDocument","EndOAuth2SessionDocument","SetCompatSessionNameDocument","SetOAuth2SessionNameDocument","RemoveEmailDocument","SetDisplayNameDocument","AddEmailDocument","UserEmailListDocument","UserProfileDocument","PlanManagementTabDocument","BrowserSessionListDocument","SessionsOverviewDocument","AppSessionsListDocument","CurrentUserGreetingDocument","OAuth2ClientDocument","CurrentViewerDocument","DeviceRedirectDocument","VerifyEmailDocument","DoVerifyEmailDocument","ResendEmailAuthenticationCodeDocument","ChangePasswordDocument","PasswordChangeDocument","RecoverPasswordDocument","ResendRecoveryEmailDocument","PasswordRecoveryDocument","AllowCrossSigningResetDocument","SessionDetailDocument","documents","types.AccountDeleteButton_UserFragmentDoc","types.AccountDeleteButton_SiteConfigFragmentDoc","types.DeactivateUserDocument","types.PasswordChange_SiteConfigFragmentDoc","types.BrowserSession_SessionFragmentDoc","types.OAuth2Client_DetailFragmentDoc","types.CompatSession_SessionFragmentDoc","types.Footer_SiteConfigFragmentDoc","types.FooterDocument","types.OAuth2Session_SessionFragmentDoc","types.PasswordCreationDoubleInput_SiteConfigFragmentDoc","types.EndBrowserSessionButton_SessionFragmentDoc","types.EndBrowserSessionDocument","types.EndCompatSessionButton_SessionFragmentDoc","types.EndCompatSessionDocument","types.EndOAuth2SessionButton_SessionFragmentDoc","types.EndOAuth2SessionDocument","types.BrowserSession_DetailFragmentDoc","types.SetCompatSessionNameDocument","types.CompatSession_DetailFragmentDoc","types.SetOAuth2SessionNameDocument","types.OAuth2Session_DetailFragmentDoc","types.UserEmail_EmailFragmentDoc","types.RemoveEmailDocument","types.UserGreeting_UserFragmentDoc","types.UserGreeting_SiteConfigFragmentDoc","types.SetDisplayNameDocument","types.AddEmailForm_UserFragmentDoc","types.AddEmailForm_SiteConfigFragmentDoc","types.AddEmailDocument","types.UserEmailListDocument","types.UserEmailList_UserFragmentDoc","types.UserEmailList_SiteConfigFragmentDoc","types.BrowserSessionsOverview_UserFragmentDoc","types.UserProfileDocument","types.PlanManagementTabDocument","types.BrowserSessionListDocument","types.SessionsOverviewDocument","types.AppSessionsListDocument","types.CurrentUserGreetingDocument","types.OAuth2ClientDocument","types.CurrentViewerDocument","types.DeviceRedirectDocument","types.VerifyEmailDocument","types.DoVerifyEmailDocument","types.ResendEmailAuthenticationCodeDocument","types.ChangePasswordDocument","types.PasswordChangeDocument","types.RecoverPasswordDocument","types.ResendRecoveryEmailDocument","types.RecoverPassword_UserRecoveryTicketFragmentDoc","types.RecoverPassword_SiteConfigFragmentDoc","types.PasswordRecoveryDocument","types.AllowCrossSigningResetDocument","types.SessionDetailDocument","graphql","graphqlEndpoint","appConfig","graphqlRequest","json","FRAGMENT","Footer","siteConfig","QUERY","AsyncFooter","Layout","wide","Suspense","ErrorBoundary","componentStack","LoadingSpinner","inline","mini","LoadingScreen","__vite_glob_0_0","__vite_glob_0_1","__vite_glob_0_2","__vite_glob_0_3","__vite_glob_0_4","__vite_glob_0_5","__vite_glob_0_6","__vite_glob_0_7","__vite_glob_0_8","__vite_glob_0_9","__vite_glob_0_10","__vite_glob_0_11","__vite_glob_0_12","__vite_glob_0_13","__vite_glob_0_14","__vite_glob_0_15","locales","getLocaleUrl","supportedLngs","LanguageDetector","htmlTag","Backend","_namespace","setupI18n","NotFound","getGlobalConfig","config2","getGlobalMessage","store3","getSchemaMessage","store4","getSpecificMessage","_stringify","_addIssue","dataset","expected","received","issue","isSchema","message2","_getStandardProps","_isValidObjectKey","object2","_joinExpects","values2","separator","getFallback","schema","getDefault","boolean","_merge","value1","intersect","outputs","optionDataset","mergeDataset","literal","literal_","looseObject","entries2","valueSchema","valueDataset","pathItem","never","nullish","wrapped","default_","number","optional","picklist","string","variant","outputDataset","maxDiscriminatorPriority","invalidDiscriminatorKey","expectedDiscriminators","parseOptions","variant2","allKeys","keysAreValid","currentPriority","discriminatorSchema","partial","searchSchema","deepLink","component","$$splitComponentImporter","$$splitErrorComponentImporter","loader","ensureQueryData","CURRENT_VIEWER_QUERY","currentViewerQuery","FIRST_PAGE","LAST_PAGE","anyPaginationSchema","v.object","v.nullish","v.number","v.string","isValidPagination","pagination","isForwardPagination","isBackwardPagination","normalizePagination","pageSize","usePagination","setPagination","usePages","currentPagination","pageInfo","hasProbablyPreviousPage","hasProbablyNextPage","previousPagination","nextPagination","PaginationControls","onNext","onPrev","autoHide","DeleteIcon","IconDelete","EmailIcon","IconEmail","trigger","asDrawer","DialogRoot","IconClose","usePasswordConfirmation","PasswordConfirmationModal","resolversRef","useImperativeHandle","password","Dialog.Dialog","Dialog.Title","Form.Root","Form.Field","Form.Label","Form.PasswordControl","Dialog.Close","REMOVE_EMAIL_MUTATION","DeleteButton","UserEmail","email","canRemove","shouldPromptPassword","onRemove","promptPassword","passwordConfirmationRef","removeEmail","onRemoveClick","Form.TextControl","USER_FRAGMENT","CONFIG_FRAGMENT","UserEmailList","user","emailChangeAllowed","passwordLoginEnabled","hasPassword","useTransition","emails","prevPage","nextPage","paginate","edge","actionSchema","device_id","Promise","all","userEmailListQuery","notFoundComponent","$$splitNotFoundComponentImporter","deviceId","userId","fetchQuery","viewer","__typename","global","session","ticket","userRecoveryTicket","getNinetyDaysAgo","PAGE_SIZE","LIST_QUERY","listQuery","inactive","lastActive","undefined","planManagementIframeUri","userEmailAuthentication","completedAt","ResetCrossSigningRoute","ResetCrossSigningRouteImport","rootRouteImport","AccountRoute","AccountRouteImport","ResetCrossSigningIndexRoute","ResetCrossSigningIndexRouteImport","AccountIndexRoute","AccountIndexRouteImport","SessionsIdRoute","SessionsIdRouteImport","ResetCrossSigningSuccessRoute","ResetCrossSigningSuccessRouteImport","ResetCrossSigningCancelledRoute","ResetCrossSigningCancelledRouteImport","DevicesSplatRoute","DevicesSplatRouteImport","ClientsIdRoute","ClientsIdRouteImport","PasswordRecoveryIndexRoute","PasswordRecoveryIndexRouteImport","PasswordChangeIndexRoute","PasswordChangeIndexRouteImport","AccountSessionsIndexRoute","AccountSessionsIndexRouteImport","AccountPlanIndexRoute","AccountPlanIndexRouteImport","PasswordChangeSuccessRoute","PasswordChangeSuccessRouteImport","EmailsIdVerifyRoute","EmailsIdVerifyRouteImport","EmailsIdInUseRoute","EmailsIdInUseRouteImport","AccountSessionsBrowsersRoute","AccountSessionsBrowsersRouteImport","AccountRouteChildren","AccountRouteWithChildren","ResetCrossSigningRouteChildren","ResetCrossSigningRouteWithChildren","rootRouteChildren","createRoot","StrictMode"],"ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,219,225,226],"sources":["../node_modules/react/cjs/react-jsx-runtime.production.js","../node_modules/react/jsx-runtime.js","../node_modules/@tanstack/query-core/build/modern/subscribable.js","../node_modules/@tanstack/query-core/build/modern/timeoutManager.js","../node_modules/@tanstack/query-core/build/modern/utils.js","../node_modules/@tanstack/query-core/build/modern/focusManager.js","../node_modules/@tanstack/query-core/build/modern/thenable.js","../node_modules/@tanstack/query-core/build/modern/notifyManager.js","../node_modules/@tanstack/query-core/build/modern/onlineManager.js","../node_modules/@tanstack/query-core/build/modern/retryer.js","../node_modules/@tanstack/query-core/build/modern/removable.js","../node_modules/@tanstack/query-core/build/modern/query.js","../node_modules/@tanstack/query-core/build/modern/queryObserver.js","../node_modules/@tanstack/query-core/build/modern/infiniteQueryBehavior.js","../node_modules/@tanstack/query-core/build/modern/mutation.js","../node_modules/@tanstack/query-core/build/modern/mutationCache.js","../node_modules/@tanstack/query-core/build/modern/mutationObserver.js","../node_modules/@tanstack/query-core/build/modern/queryCache.js","../node_modules/@tanstack/query-core/build/modern/queryClient.js","../node_modules/react/cjs/react.production.js","../node_modules/react/index.js","../node_modules/@tanstack/react-query/build/modern/QueryClientProvider.js","../node_modules/@tanstack/react-query/build/modern/IsRestoringProvider.js","../node_modules/@tanstack/react-query/build/modern/QueryErrorResetBoundary.js","../node_modules/@tanstack/react-query/build/modern/errorBoundaryUtils.js","../node_modules/@tanstack/react-query/build/modern/suspense.js","../node_modules/@tanstack/react-query/build/modern/useBaseQuery.js","../node_modules/@tanstack/react-query/build/modern/useSuspenseQuery.js","../node_modules/@tanstack/react-query/build/modern/queryOptions.js","../node_modules/@tanstack/react-query/build/modern/useMutation.js","../node_modules/tiny-invariant/dist/esm/tiny-invariant.js","../node_modules/@tanstack/store/dist/esm/scheduler.js","../node_modules/@tanstack/store/dist/esm/types.js","../node_modules/@tanstack/store/dist/esm/store.js","../node_modules/@tanstack/store/dist/esm/derived.js","../node_modules/@tanstack/history/dist/esm/index.js","../node_modules/@tanstack/router-core/dist/esm/utils.js","../node_modules/@tanstack/router-core/dist/esm/path.js","../node_modules/@tanstack/router-core/dist/esm/process-route-tree.js","../node_modules/@tanstack/router-core/dist/esm/not-found.js","../node_modules/@tanstack/router-core/dist/esm/scroll-restoration.js","../node_modules/@tanstack/router-core/dist/esm/qss.js","../node_modules/@tanstack/router-core/dist/esm/searchParams.js","../node_modules/@tanstack/router-core/dist/esm/root.js","../node_modules/@tanstack/router-core/dist/esm/redirect.js","../node_modules/@tanstack/router-core/dist/esm/lru-cache.js","../node_modules/@tanstack/router-core/dist/esm/load-matches.js","../node_modules/@tanstack/router-core/dist/esm/router.js","../node_modules/@tanstack/router-core/dist/esm/link.js","../node_modules/@tanstack/router-core/dist/esm/route.js","../node_modules/@tanstack/react-router/dist/esm/CatchBoundary.js","../node_modules/@tanstack/react-router/dist/esm/ClientOnly.js","../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js","../node_modules/use-sync-external-store/shim/index.js","../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js","../node_modules/use-sync-external-store/shim/with-selector.js","../node_modules/@tanstack/react-store/dist/esm/index.js","../node_modules/@tanstack/react-router/dist/esm/routerContext.js","../node_modules/@tanstack/react-router/dist/esm/useRouter.js","../node_modules/@tanstack/react-router/dist/esm/useRouterState.js","../node_modules/@tanstack/react-router/dist/esm/matchContext.js","../node_modules/@tanstack/react-router/dist/esm/useMatch.js","../node_modules/@tanstack/react-router/dist/esm/useLoaderData.js","../node_modules/@tanstack/react-router/dist/esm/useLoaderDeps.js","../node_modules/@tanstack/react-router/dist/esm/useParams.js","../node_modules/@tanstack/react-router/dist/esm/useSearch.js","../node_modules/@tanstack/react-router/dist/esm/useNavigate.js","../node_modules/react-dom/cjs/react-dom.production.js","../node_modules/react-dom/index.js","../node_modules/@tanstack/react-router/dist/esm/utils.js","../node_modules/@tanstack/react-router/dist/esm/link.js","../node_modules/@tanstack/react-router/dist/esm/route.js","../node_modules/@tanstack/react-router/dist/esm/fileRoute.js","../node_modules/@tanstack/react-router/dist/esm/lazyRouteComponent.js","../node_modules/@tanstack/react-router/dist/esm/Transitioner.js","../node_modules/@tanstack/react-router/dist/esm/not-found.js","../node_modules/@tanstack/react-router/dist/esm/SafeFragment.js","../node_modules/@tanstack/react-router/dist/esm/renderRouteNotFound.js","../node_modules/@tanstack/react-router/dist/esm/ScriptOnce.js","../node_modules/@tanstack/react-router/dist/esm/scroll-restoration.js","../node_modules/@tanstack/react-router/dist/esm/Match.js","../node_modules/@tanstack/react-router/dist/esm/Matches.js","../node_modules/@tanstack/react-router/dist/esm/router.js","../node_modules/@tanstack/react-router/dist/esm/RouterProvider.js","../node_modules/classnames/index.js","../node_modules/@vector-im/compound-design-tokens/assets/web/icons/check-circle.js","../node_modules/@vector-im/compound-design-tokens/assets/web/icons/error-solid.js","../node_modules/@vector-im/compound-design-tokens/assets/web/icons/info.js","../node_modules/@vector-im/compound-design-tokens/assets/web/icons/close.js","../node_modules/@vector-im/compound-web/dist/components/Alert/Alert.module.css.js","../node_modules/@vector-im/compound-web/dist/components/Typography/Typography.module.css.js","../node_modules/@vector-im/compound-web/dist/components/Typography/Typography.js","../node_modules/@vector-im/compound-web/dist/components/Typography/Text.js","../node_modules/@vector-im/compound-web/dist/components/Button/IconButton/IconButton.module.css.js","../node_modules/@vector-im/compound-web/dist/components/Button/UnstyledButton.js","../node_modules/@vector-im/compound-web/dist/components/Icon/IndicatorIcon/IndicatorIcon.module.css.js","../node_modules/@vector-im/compound-web/dist/components/Icon/IndicatorIcon/IndicatorIcon.js","../node_modules/@vector-im/compound-web/dist/components/Tooltip/TooltipContext.js","../node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs","../node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs","../node_modules/tabbable/dist/index.esm.js","../node_modules/@floating-ui/react/dist/floating-ui.react.utils.mjs","../node_modules/@floating-ui/core/dist/floating-ui.core.mjs","../node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs","../node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.mjs","../node_modules/@floating-ui/react/dist/floating-ui.react.mjs","../node_modules/@vector-im/compound-web/dist/components/Tooltip/Tooltip.module.css.js","../node_modules/@vector-im/compound-web/dist/components/Tooltip/TooltipProvider.js","../node_modules/@vector-im/compound-web/dist/components/Tooltip/useTooltip.js","../node_modules/@vector-im/compound-web/dist/components/Tooltip/Tooltip.js","../node_modules/@vector-im/compound-web/dist/components/Button/IconButton/IconButton.js","../node_modules/@vector-im/compound-web/dist/components/Alert/Alert.js","../node_modules/@radix-ui/primitive/dist/index.mjs","../node_modules/@radix-ui/react-context/dist/index.mjs","../node_modules/@radix-ui/react-compose-refs/dist/index.mjs","../node_modules/@radix-ui/react-slot/dist/index.mjs","../node_modules/@radix-ui/react-primitive/dist/index.mjs","../node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs","../node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs","../node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs","../node_modules/@radix-ui/react-focus-guards/dist/index.mjs","../node_modules/@radix-ui/react-focus-scope/dist/index.mjs","../node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs","../node_modules/@radix-ui/react-id/dist/index.mjs","../node_modules/@radix-ui/react-portal/dist/index.mjs","../node_modules/@radix-ui/react-presence/dist/index.mjs","../node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs","../node_modules/aria-hidden/dist/es2015/index.js","../node_modules/tslib/tslib.es6.mjs","../node_modules/react-remove-scroll-bar/dist/es2015/constants.js","../node_modules/use-callback-ref/dist/es2015/assignRef.js","../node_modules/use-callback-ref/dist/es2015/useRef.js","../node_modules/use-callback-ref/dist/es2015/useMergeRef.js","../node_modules/use-sidecar/dist/es2015/medium.js","../node_modules/use-sidecar/dist/es2015/exports.js","../node_modules/react-remove-scroll/dist/es2015/medium.js","../node_modules/react-remove-scroll/dist/es2015/UI.js","../node_modules/get-nonce/dist/es2015/index.js","../node_modules/react-style-singleton/dist/es2015/singleton.js","../node_modules/react-style-singleton/dist/es2015/hook.js","../node_modules/react-style-singleton/dist/es2015/component.js","../node_modules/react-remove-scroll-bar/dist/es2015/utils.js","../node_modules/react-remove-scroll-bar/dist/es2015/component.js","../node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js","../node_modules/react-remove-scroll/dist/es2015/handleScroll.js","../node_modules/react-remove-scroll/dist/es2015/SideEffect.js","../node_modules/react-remove-scroll/dist/es2015/sidecar.js","../node_modules/react-remove-scroll/dist/es2015/Combination.js","../node_modules/@radix-ui/react-dialog/dist/index.mjs","../node_modules/vaul/dist/index.mjs","../node_modules/@vector-im/compound-web/dist/components/Glass/Glass.module.css.js","../node_modules/@vector-im/compound-web/dist/components/Glass/Glass.js","../node_modules/@vector-im/compound-web/dist/components/Link/Link.module.css.js","../node_modules/@vector-im/compound-web/dist/components/Link/Link.js","../node_modules/@radix-ui/react-label/dist/index.mjs","../node_modules/@radix-ui/react-form/dist/index.mjs","../node_modules/@vector-im/compound-web/dist/components/Form/form.module.css.js","../node_modules/@vector-im/compound-web/dist/components/Form/Field.js","../node_modules/@vector-im/compound-web/dist/components/Form/Label.js","../node_modules/@vector-im/compound-web/dist/components/Form/Root.js","../node_modules/@vector-im/compound-design-tokens/assets/web/icons/check-circle-solid.js","../node_modules/@vector-im/compound-web/dist/components/InlineSpinner/InlineSpinner.module.css.js","../node_modules/@vector-im/compound-design-tokens/assets/web/icons/spinner.js","../node_modules/@vector-im/compound-web/dist/components/InlineSpinner/InlineSpinner.js","../node_modules/@vector-im/compound-web/dist/components/Form/Message.js","../node_modules/@vector-im/compound-web/dist/components/Button/Button.module.css.js","../node_modules/@vector-im/compound-web/dist/components/Button/Button.js","../node_modules/@vector-im/compound-web/dist/components/Form/Controls/Action/Action.module.css.js","../node_modules/@vector-im/compound-web/dist/components/Form/Controls/Text/Text.module.css.js","../node_modules/@vector-im/compound-web/dist/components/Form/Controls/Text/Text.js","../node_modules/@vector-im/compound-web/dist/components/Form/Controls/Action/Action.js","../node_modules/@vector-im/compound-design-tokens/assets/web/icons/visibility-on.js","../node_modules/@vector-im/compound-design-tokens/assets/web/icons/visibility-off.js","../node_modules/@vector-im/compound-web/dist/components/Form/Controls/Password/Password.js","../node_modules/scheduler/cjs/scheduler.production.js","../node_modules/scheduler/index.js","../node_modules/react-dom/cjs/react-dom-client.production.js","../node_modules/react-dom/client.js","../node_modules/i18next/dist/esm/i18next.js","../node_modules/react-i18next/dist/es/utils.js","../node_modules/react-i18next/dist/es/unescape.js","../node_modules/react-i18next/dist/es/defaults.js","../node_modules/react-i18next/dist/es/i18nInstance.js","../node_modules/react-i18next/dist/es/initReactI18next.js","../node_modules/react-i18next/dist/es/context.js","../node_modules/react-i18next/dist/es/useTranslation.js","../node_modules/react-i18next/dist/es/Translation.js","../node_modules/react-i18next/dist/es/I18nextProvider.js","../src/components/PageHeading/PageHeading.tsx","../src/components/GenericError.tsx","../src/gql/fragment-masking.ts","../src/gql/graphql.ts","../src/gql/gql.ts","../src/config.ts","../src/graphql.ts","../src/components/Footer/Footer.tsx","../src/components/Layout/Layout.tsx","../src/components/ErrorBoundary.tsx","../src/components/LoadingSpinner/LoadingSpinner.tsx","../src/components/LoadingScreen/LoadingScreen.tsx","../locales/cs.json?url","../locales/da.json?url","../locales/de.json?url","../locales/en.json?url","../locales/et.json?url","../locales/fi.json?url","../locales/fr.json?url","../locales/hu.json?url","../locales/nb-NO.json?url","../locales/nl.json?url","../locales/pl.json?url","../locales/pt.json?url","../locales/ru.json?url","../locales/sv.json?url","../locales/uk.json?url","../locales/zh-Hans.json?url","../src/i18n.ts","../src/components/NotFound.tsx","../src/routes/__root.tsx","../node_modules/valibot/dist/index.js","../src/routes/reset-cross-signing.tsx","../src/routes/_account.tsx","../src/routes/reset-cross-signing.index.tsx","../src/pagination.ts","../src/components/PaginationControls.tsx","../node_modules/@vector-im/compound-design-tokens/assets/web/icons/delete.js","../node_modules/@vector-im/compound-design-tokens/assets/web/icons/email.js","../src/components/Dialog/Dialog.tsx","../src/components/PasswordConfirmation.tsx","../src/components/UserEmail/UserEmail.tsx","../src/components/UserProfile/UserEmailList.tsx","../src/routes/_account.index.tsx","../src/routes/sessions.$id.tsx","../src/routes/reset-cross-signing.success.tsx","../src/routes/reset-cross-signing.cancelled.tsx","../src/routes/devices.$.tsx","../src/routes/clients.$id.tsx","../src/routes/password.recovery.index.tsx","../src/routes/password.change.index.tsx","../src/utils/dates.ts","../src/routes/_account.sessions.index.tsx","../src/routes/_account.plan.index.tsx","../src/routes/password.change.success.tsx","../src/routes/emails.$id.verify.tsx","../src/routes/emails.$id.in-use.tsx","../src/routes/_account.sessions.browsers.tsx","../src/routeTree.gen.ts","../src/router.tsx","../src/entrypoints/main.tsx"],"sourcesContent":["/**\n * @license React\n * react-jsx-runtime.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_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\");\nfunction jsxProd(type, config, maybeKey) {\n var key = null;\n void 0 !== maybeKey && (key = \"\" + maybeKey);\n void 0 !== config.key && (key = \"\" + config.key);\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n config = maybeKey.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== config ? config : null,\n props: maybeKey\n };\n}\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsx = jsxProd;\nexports.jsxs = jsxProd;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","// src/subscribable.ts\nvar Subscribable = class {\n constructor() {\n this.listeners = /* @__PURE__ */ new Set();\n this.subscribe = this.subscribe.bind(this);\n }\n subscribe(listener) {\n this.listeners.add(listener);\n this.onSubscribe();\n return () => {\n this.listeners.delete(listener);\n this.onUnsubscribe();\n };\n }\n hasListeners() {\n return this.listeners.size > 0;\n }\n onSubscribe() {\n }\n onUnsubscribe() {\n }\n};\nexport {\n Subscribable\n};\n//# sourceMappingURL=subscribable.js.map","// src/timeoutManager.ts\nvar defaultTimeoutProvider = {\n // We need the wrapper function syntax below instead of direct references to\n // global setTimeout etc.\n //\n // BAD: `setTimeout: setTimeout`\n // GOOD: `setTimeout: (cb, delay) => setTimeout(cb, delay)`\n //\n // If we use direct references here, then anything that wants to spy on or\n // replace the global setTimeout (like tests) won't work since we'll already\n // have a hard reference to the original implementation at the time when this\n // file was imported.\n setTimeout: (callback, delay) => setTimeout(callback, delay),\n clearTimeout: (timeoutId) => clearTimeout(timeoutId),\n setInterval: (callback, delay) => setInterval(callback, delay),\n clearInterval: (intervalId) => clearInterval(intervalId)\n};\nvar TimeoutManager = class {\n // We cannot have TimeoutManager as we must instantiate it with a concrete\n // type at app boot; and if we leave that type, then any new timer provider\n // would need to support ReturnType, which is infeasible.\n //\n // We settle for type safety for the TimeoutProvider type, and accept that\n // this class is unsafe internally to allow for extension.\n #provider = defaultTimeoutProvider;\n #providerCalled = false;\n setTimeoutProvider(provider) {\n if (process.env.NODE_ENV !== \"production\") {\n if (this.#providerCalled && provider !== this.#provider) {\n console.error(\n `[timeoutManager]: Switching provider after calls to previous provider might result in unexpected behavior.`,\n { previous: this.#provider, provider }\n );\n }\n }\n this.#provider = provider;\n if (process.env.NODE_ENV !== \"production\") {\n this.#providerCalled = false;\n }\n }\n setTimeout(callback, delay) {\n if (process.env.NODE_ENV !== \"production\") {\n this.#providerCalled = true;\n }\n return this.#provider.setTimeout(callback, delay);\n }\n clearTimeout(timeoutId) {\n this.#provider.clearTimeout(timeoutId);\n }\n setInterval(callback, delay) {\n if (process.env.NODE_ENV !== \"production\") {\n this.#providerCalled = true;\n }\n return this.#provider.setInterval(callback, delay);\n }\n clearInterval(intervalId) {\n this.#provider.clearInterval(intervalId);\n }\n};\nvar timeoutManager = new TimeoutManager();\nfunction systemSetTimeoutZero(callback) {\n setTimeout(callback, 0);\n}\nexport {\n TimeoutManager,\n defaultTimeoutProvider,\n systemSetTimeoutZero,\n timeoutManager\n};\n//# sourceMappingURL=timeoutManager.js.map","// src/utils.ts\nimport { timeoutManager } from \"./timeoutManager.js\";\nvar isServer = typeof window === \"undefined\" || \"Deno\" in globalThis;\nfunction noop() {\n}\nfunction functionalUpdate(updater, input) {\n return typeof updater === \"function\" ? updater(input) : updater;\n}\nfunction isValidTimeout(value) {\n return typeof value === \"number\" && value >= 0 && value !== Infinity;\n}\nfunction timeUntilStale(updatedAt, staleTime) {\n return Math.max(updatedAt + (staleTime || 0) - Date.now(), 0);\n}\nfunction resolveStaleTime(staleTime, query) {\n return typeof staleTime === \"function\" ? staleTime(query) : staleTime;\n}\nfunction resolveEnabled(enabled, query) {\n return typeof enabled === \"function\" ? enabled(query) : enabled;\n}\nfunction matchQuery(filters, query) {\n const {\n type = \"all\",\n exact,\n fetchStatus,\n predicate,\n queryKey,\n stale\n } = filters;\n if (queryKey) {\n if (exact) {\n if (query.queryHash !== hashQueryKeyByOptions(queryKey, query.options)) {\n return false;\n }\n } else if (!partialMatchKey(query.queryKey, queryKey)) {\n return false;\n }\n }\n if (type !== \"all\") {\n const isActive = query.isActive();\n if (type === \"active\" && !isActive) {\n return false;\n }\n if (type === \"inactive\" && isActive) {\n return false;\n }\n }\n if (typeof stale === \"boolean\" && query.isStale() !== stale) {\n return false;\n }\n if (fetchStatus && fetchStatus !== query.state.fetchStatus) {\n return false;\n }\n if (predicate && !predicate(query)) {\n return false;\n }\n return true;\n}\nfunction matchMutation(filters, mutation) {\n const { exact, status, predicate, mutationKey } = filters;\n if (mutationKey) {\n if (!mutation.options.mutationKey) {\n return false;\n }\n if (exact) {\n if (hashKey(mutation.options.mutationKey) !== hashKey(mutationKey)) {\n return false;\n }\n } else if (!partialMatchKey(mutation.options.mutationKey, mutationKey)) {\n return false;\n }\n }\n if (status && mutation.state.status !== status) {\n return false;\n }\n if (predicate && !predicate(mutation)) {\n return false;\n }\n return true;\n}\nfunction hashQueryKeyByOptions(queryKey, options) {\n const hashFn = options?.queryKeyHashFn || hashKey;\n return hashFn(queryKey);\n}\nfunction hashKey(queryKey) {\n return JSON.stringify(\n queryKey,\n (_, val) => isPlainObject(val) ? Object.keys(val).sort().reduce((result, key) => {\n result[key] = val[key];\n return result;\n }, {}) : val\n );\n}\nfunction partialMatchKey(a, b) {\n if (a === b) {\n return true;\n }\n if (typeof a !== typeof b) {\n return false;\n }\n if (a && b && typeof a === \"object\" && typeof b === \"object\") {\n return Object.keys(b).every((key) => partialMatchKey(a[key], b[key]));\n }\n return false;\n}\nvar hasOwn = Object.prototype.hasOwnProperty;\nfunction replaceEqualDeep(a, b) {\n if (a === b) {\n return a;\n }\n const array = isPlainArray(a) && isPlainArray(b);\n if (!array && !(isPlainObject(a) && isPlainObject(b))) return b;\n const aItems = array ? a : Object.keys(a);\n const aSize = aItems.length;\n const bItems = array ? b : Object.keys(b);\n const bSize = bItems.length;\n const copy = array ? new Array(bSize) : {};\n let equalItems = 0;\n for (let i = 0; i < bSize; i++) {\n const key = array ? i : bItems[i];\n const aItem = a[key];\n const bItem = b[key];\n if (aItem === bItem) {\n copy[key] = aItem;\n if (array ? i < aSize : hasOwn.call(a, key)) equalItems++;\n continue;\n }\n if (aItem === null || bItem === null || typeof aItem !== \"object\" || typeof bItem !== \"object\") {\n copy[key] = bItem;\n continue;\n }\n const v = replaceEqualDeep(aItem, bItem);\n copy[key] = v;\n if (v === aItem) equalItems++;\n }\n return aSize === bSize && equalItems === aSize ? a : copy;\n}\nfunction shallowEqualObjects(a, b) {\n if (!b || Object.keys(a).length !== Object.keys(b).length) {\n return false;\n }\n for (const key in a) {\n if (a[key] !== b[key]) {\n return false;\n }\n }\n return true;\n}\nfunction isPlainArray(value) {\n return Array.isArray(value) && value.length === Object.keys(value).length;\n}\nfunction isPlainObject(o) {\n if (!hasObjectPrototype(o)) {\n return false;\n }\n const ctor = o.constructor;\n if (ctor === void 0) {\n return true;\n }\n const prot = ctor.prototype;\n if (!hasObjectPrototype(prot)) {\n return false;\n }\n if (!prot.hasOwnProperty(\"isPrototypeOf\")) {\n return false;\n }\n if (Object.getPrototypeOf(o) !== Object.prototype) {\n return false;\n }\n return true;\n}\nfunction hasObjectPrototype(o) {\n return Object.prototype.toString.call(o) === \"[object Object]\";\n}\nfunction sleep(timeout) {\n return new Promise((resolve) => {\n timeoutManager.setTimeout(resolve, timeout);\n });\n}\nfunction replaceData(prevData, data, options) {\n if (typeof options.structuralSharing === \"function\") {\n return options.structuralSharing(prevData, data);\n } else if (options.structuralSharing !== false) {\n if (process.env.NODE_ENV !== \"production\") {\n try {\n return replaceEqualDeep(prevData, data);\n } catch (error) {\n console.error(\n `Structural sharing requires data to be JSON serializable. To fix this, turn off structuralSharing or return JSON-serializable data from your queryFn. [${options.queryHash}]: ${error}`\n );\n throw error;\n }\n }\n return replaceEqualDeep(prevData, data);\n }\n return data;\n}\nfunction keepPreviousData(previousData) {\n return previousData;\n}\nfunction addToEnd(items, item, max = 0) {\n const newItems = [...items, item];\n return max && newItems.length > max ? newItems.slice(1) : newItems;\n}\nfunction addToStart(items, item, max = 0) {\n const newItems = [item, ...items];\n return max && newItems.length > max ? newItems.slice(0, -1) : newItems;\n}\nvar skipToken = Symbol();\nfunction ensureQueryFn(options, fetchOptions) {\n if (process.env.NODE_ENV !== \"production\") {\n if (options.queryFn === skipToken) {\n console.error(\n `Attempted to invoke queryFn when set to skipToken. This is likely a configuration error. Query hash: '${options.queryHash}'`\n );\n }\n }\n if (!options.queryFn && fetchOptions?.initialPromise) {\n return () => fetchOptions.initialPromise;\n }\n if (!options.queryFn || options.queryFn === skipToken) {\n return () => Promise.reject(new Error(`Missing queryFn: '${options.queryHash}'`));\n }\n return options.queryFn;\n}\nfunction shouldThrowError(throwOnError, params) {\n if (typeof throwOnError === \"function\") {\n return throwOnError(...params);\n }\n return !!throwOnError;\n}\nexport {\n addToEnd,\n addToStart,\n ensureQueryFn,\n functionalUpdate,\n hashKey,\n hashQueryKeyByOptions,\n isPlainArray,\n isPlainObject,\n isServer,\n isValidTimeout,\n keepPreviousData,\n matchMutation,\n matchQuery,\n noop,\n partialMatchKey,\n replaceData,\n replaceEqualDeep,\n resolveEnabled,\n resolveStaleTime,\n shallowEqualObjects,\n shouldThrowError,\n skipToken,\n sleep,\n timeUntilStale\n};\n//# sourceMappingURL=utils.js.map","// src/focusManager.ts\nimport { Subscribable } from \"./subscribable.js\";\nimport { isServer } from \"./utils.js\";\nvar FocusManager = class extends Subscribable {\n #focused;\n #cleanup;\n #setup;\n constructor() {\n super();\n this.#setup = (onFocus) => {\n if (!isServer && window.addEventListener) {\n const listener = () => onFocus();\n window.addEventListener(\"visibilitychange\", listener, false);\n return () => {\n window.removeEventListener(\"visibilitychange\", listener);\n };\n }\n return;\n };\n }\n onSubscribe() {\n if (!this.#cleanup) {\n this.setEventListener(this.#setup);\n }\n }\n onUnsubscribe() {\n if (!this.hasListeners()) {\n this.#cleanup?.();\n this.#cleanup = void 0;\n }\n }\n setEventListener(setup) {\n this.#setup = setup;\n this.#cleanup?.();\n this.#cleanup = setup((focused) => {\n if (typeof focused === \"boolean\") {\n this.setFocused(focused);\n } else {\n this.onFocus();\n }\n });\n }\n setFocused(focused) {\n const changed = this.#focused !== focused;\n if (changed) {\n this.#focused = focused;\n this.onFocus();\n }\n }\n onFocus() {\n const isFocused = this.isFocused();\n this.listeners.forEach((listener) => {\n listener(isFocused);\n });\n }\n isFocused() {\n if (typeof this.#focused === \"boolean\") {\n return this.#focused;\n }\n return globalThis.document?.visibilityState !== \"hidden\";\n }\n};\nvar focusManager = new FocusManager();\nexport {\n FocusManager,\n focusManager\n};\n//# sourceMappingURL=focusManager.js.map","// src/thenable.ts\nimport { noop } from \"./utils.js\";\nfunction pendingThenable() {\n let resolve;\n let reject;\n const thenable = new Promise((_resolve, _reject) => {\n resolve = _resolve;\n reject = _reject;\n });\n thenable.status = \"pending\";\n thenable.catch(() => {\n });\n function finalize(data) {\n Object.assign(thenable, data);\n delete thenable.resolve;\n delete thenable.reject;\n }\n thenable.resolve = (value) => {\n finalize({\n status: \"fulfilled\",\n value\n });\n resolve(value);\n };\n thenable.reject = (reason) => {\n finalize({\n status: \"rejected\",\n reason\n });\n reject(reason);\n };\n return thenable;\n}\nfunction tryResolveSync(promise) {\n let data;\n promise.then((result) => {\n data = result;\n return result;\n }, noop)?.catch(noop);\n if (data !== void 0) {\n return { data };\n }\n return void 0;\n}\nexport {\n pendingThenable,\n tryResolveSync\n};\n//# sourceMappingURL=thenable.js.map","// src/notifyManager.ts\nimport { systemSetTimeoutZero } from \"./timeoutManager.js\";\nvar defaultScheduler = systemSetTimeoutZero;\nfunction createNotifyManager() {\n let queue = [];\n let transactions = 0;\n let notifyFn = (callback) => {\n callback();\n };\n let batchNotifyFn = (callback) => {\n callback();\n };\n let scheduleFn = defaultScheduler;\n const schedule = (callback) => {\n if (transactions) {\n queue.push(callback);\n } else {\n scheduleFn(() => {\n notifyFn(callback);\n });\n }\n };\n const flush = () => {\n const originalQueue = queue;\n queue = [];\n if (originalQueue.length) {\n scheduleFn(() => {\n batchNotifyFn(() => {\n originalQueue.forEach((callback) => {\n notifyFn(callback);\n });\n });\n });\n }\n };\n return {\n batch: (callback) => {\n let result;\n transactions++;\n try {\n result = callback();\n } finally {\n transactions--;\n if (!transactions) {\n flush();\n }\n }\n return result;\n },\n /**\n * All calls to the wrapped function will be batched.\n */\n batchCalls: (callback) => {\n return (...args) => {\n schedule(() => {\n callback(...args);\n });\n };\n },\n schedule,\n /**\n * Use this method to set a custom notify function.\n * This can be used to for example wrap notifications with `React.act` while running tests.\n */\n setNotifyFunction: (fn) => {\n notifyFn = fn;\n },\n /**\n * Use this method to set a custom function to batch notifications together into a single tick.\n * By default React Query will use the batch function provided by ReactDOM or React Native.\n */\n setBatchNotifyFunction: (fn) => {\n batchNotifyFn = fn;\n },\n setScheduler: (fn) => {\n scheduleFn = fn;\n }\n };\n}\nvar notifyManager = createNotifyManager();\nexport {\n createNotifyManager,\n defaultScheduler,\n notifyManager\n};\n//# sourceMappingURL=notifyManager.js.map","// src/onlineManager.ts\nimport { Subscribable } from \"./subscribable.js\";\nimport { isServer } from \"./utils.js\";\nvar OnlineManager = class extends Subscribable {\n #online = true;\n #cleanup;\n #setup;\n constructor() {\n super();\n this.#setup = (onOnline) => {\n if (!isServer && window.addEventListener) {\n const onlineListener = () => onOnline(true);\n const offlineListener = () => onOnline(false);\n window.addEventListener(\"online\", onlineListener, false);\n window.addEventListener(\"offline\", offlineListener, false);\n return () => {\n window.removeEventListener(\"online\", onlineListener);\n window.removeEventListener(\"offline\", offlineListener);\n };\n }\n return;\n };\n }\n onSubscribe() {\n if (!this.#cleanup) {\n this.setEventListener(this.#setup);\n }\n }\n onUnsubscribe() {\n if (!this.hasListeners()) {\n this.#cleanup?.();\n this.#cleanup = void 0;\n }\n }\n setEventListener(setup) {\n this.#setup = setup;\n this.#cleanup?.();\n this.#cleanup = setup(this.setOnline.bind(this));\n }\n setOnline(online) {\n const changed = this.#online !== online;\n if (changed) {\n this.#online = online;\n this.listeners.forEach((listener) => {\n listener(online);\n });\n }\n }\n isOnline() {\n return this.#online;\n }\n};\nvar onlineManager = new OnlineManager();\nexport {\n OnlineManager,\n onlineManager\n};\n//# sourceMappingURL=onlineManager.js.map","// src/retryer.ts\nimport { focusManager } from \"./focusManager.js\";\nimport { onlineManager } from \"./onlineManager.js\";\nimport { pendingThenable } from \"./thenable.js\";\nimport { isServer, sleep } from \"./utils.js\";\nfunction defaultRetryDelay(failureCount) {\n return Math.min(1e3 * 2 ** failureCount, 3e4);\n}\nfunction canFetch(networkMode) {\n return (networkMode ?? \"online\") === \"online\" ? onlineManager.isOnline() : true;\n}\nvar CancelledError = class extends Error {\n constructor(options) {\n super(\"CancelledError\");\n this.revert = options?.revert;\n this.silent = options?.silent;\n }\n};\nfunction isCancelledError(value) {\n return value instanceof CancelledError;\n}\nfunction createRetryer(config) {\n let isRetryCancelled = false;\n let failureCount = 0;\n let continueFn;\n const thenable = pendingThenable();\n const isResolved = () => thenable.status !== \"pending\";\n const cancel = (cancelOptions) => {\n if (!isResolved()) {\n const error = new CancelledError(cancelOptions);\n reject(error);\n config.onCancel?.(error);\n }\n };\n const cancelRetry = () => {\n isRetryCancelled = true;\n };\n const continueRetry = () => {\n isRetryCancelled = false;\n };\n const canContinue = () => focusManager.isFocused() && (config.networkMode === \"always\" || onlineManager.isOnline()) && config.canRun();\n const canStart = () => canFetch(config.networkMode) && config.canRun();\n const resolve = (value) => {\n if (!isResolved()) {\n continueFn?.();\n thenable.resolve(value);\n }\n };\n const reject = (value) => {\n if (!isResolved()) {\n continueFn?.();\n thenable.reject(value);\n }\n };\n const pause = () => {\n return new Promise((continueResolve) => {\n continueFn = (value) => {\n if (isResolved() || canContinue()) {\n continueResolve(value);\n }\n };\n config.onPause?.();\n }).then(() => {\n continueFn = void 0;\n if (!isResolved()) {\n config.onContinue?.();\n }\n });\n };\n const run = () => {\n if (isResolved()) {\n return;\n }\n let promiseOrValue;\n const initialPromise = failureCount === 0 ? config.initialPromise : void 0;\n try {\n promiseOrValue = initialPromise ?? config.fn();\n } catch (error) {\n promiseOrValue = Promise.reject(error);\n }\n Promise.resolve(promiseOrValue).then(resolve).catch((error) => {\n if (isResolved()) {\n return;\n }\n const retry = config.retry ?? (isServer ? 0 : 3);\n const retryDelay = config.retryDelay ?? defaultRetryDelay;\n const delay = typeof retryDelay === \"function\" ? retryDelay(failureCount, error) : retryDelay;\n const shouldRetry = retry === true || typeof retry === \"number\" && failureCount < retry || typeof retry === \"function\" && retry(failureCount, error);\n if (isRetryCancelled || !shouldRetry) {\n reject(error);\n return;\n }\n failureCount++;\n config.onFail?.(failureCount, error);\n sleep(delay).then(() => {\n return canContinue() ? void 0 : pause();\n }).then(() => {\n if (isRetryCancelled) {\n reject(error);\n } else {\n run();\n }\n });\n });\n };\n return {\n promise: thenable,\n status: () => thenable.status,\n cancel,\n continue: () => {\n continueFn?.();\n return thenable;\n },\n cancelRetry,\n continueRetry,\n canStart,\n start: () => {\n if (canStart()) {\n run();\n } else {\n pause().then(run);\n }\n return thenable;\n }\n };\n}\nexport {\n CancelledError,\n canFetch,\n createRetryer,\n isCancelledError\n};\n//# sourceMappingURL=retryer.js.map","// src/removable.ts\nimport { timeoutManager } from \"./timeoutManager.js\";\nimport { isServer, isValidTimeout } from \"./utils.js\";\nvar Removable = class {\n #gcTimeout;\n destroy() {\n this.clearGcTimeout();\n }\n scheduleGc() {\n this.clearGcTimeout();\n if (isValidTimeout(this.gcTime)) {\n this.#gcTimeout = timeoutManager.setTimeout(() => {\n this.optionalRemove();\n }, this.gcTime);\n }\n }\n updateGcTime(newGcTime) {\n this.gcTime = Math.max(\n this.gcTime || 0,\n newGcTime ?? (isServer ? Infinity : 5 * 60 * 1e3)\n );\n }\n clearGcTimeout() {\n if (this.#gcTimeout) {\n timeoutManager.clearTimeout(this.#gcTimeout);\n this.#gcTimeout = void 0;\n }\n }\n};\nexport {\n Removable\n};\n//# sourceMappingURL=removable.js.map","// src/query.ts\nimport {\n ensureQueryFn,\n noop,\n replaceData,\n resolveEnabled,\n resolveStaleTime,\n skipToken,\n timeUntilStale\n} from \"./utils.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { CancelledError, canFetch, createRetryer } from \"./retryer.js\";\nimport { Removable } from \"./removable.js\";\nvar Query = class extends Removable {\n #initialState;\n #revertState;\n #cache;\n #client;\n #retryer;\n #defaultOptions;\n #abortSignalConsumed;\n constructor(config) {\n super();\n this.#abortSignalConsumed = false;\n this.#defaultOptions = config.defaultOptions;\n this.setOptions(config.options);\n this.observers = [];\n this.#client = config.client;\n this.#cache = this.#client.getQueryCache();\n this.queryKey = config.queryKey;\n this.queryHash = config.queryHash;\n this.#initialState = getDefaultState(this.options);\n this.state = config.state ?? this.#initialState;\n this.scheduleGc();\n }\n get meta() {\n return this.options.meta;\n }\n get promise() {\n return this.#retryer?.promise;\n }\n setOptions(options) {\n this.options = { ...this.#defaultOptions, ...options };\n this.updateGcTime(this.options.gcTime);\n if (this.state && this.state.data === void 0) {\n const defaultState = getDefaultState(this.options);\n if (defaultState.data !== void 0) {\n this.setState(\n successState(defaultState.data, defaultState.dataUpdatedAt)\n );\n this.#initialState = defaultState;\n }\n }\n }\n optionalRemove() {\n if (!this.observers.length && this.state.fetchStatus === \"idle\") {\n this.#cache.remove(this);\n }\n }\n setData(newData, options) {\n const data = replaceData(this.state.data, newData, this.options);\n this.#dispatch({\n data,\n type: \"success\",\n dataUpdatedAt: options?.updatedAt,\n manual: options?.manual\n });\n return data;\n }\n setState(state, setStateOptions) {\n this.#dispatch({ type: \"setState\", state, setStateOptions });\n }\n cancel(options) {\n const promise = this.#retryer?.promise;\n this.#retryer?.cancel(options);\n return promise ? promise.then(noop).catch(noop) : Promise.resolve();\n }\n destroy() {\n super.destroy();\n this.cancel({ silent: true });\n }\n reset() {\n this.destroy();\n this.setState(this.#initialState);\n }\n isActive() {\n return this.observers.some(\n (observer) => resolveEnabled(observer.options.enabled, this) !== false\n );\n }\n isDisabled() {\n if (this.getObserversCount() > 0) {\n return !this.isActive();\n }\n return this.options.queryFn === skipToken || this.state.dataUpdateCount + this.state.errorUpdateCount === 0;\n }\n isStatic() {\n if (this.getObserversCount() > 0) {\n return this.observers.some(\n (observer) => resolveStaleTime(observer.options.staleTime, this) === \"static\"\n );\n }\n return false;\n }\n isStale() {\n if (this.getObserversCount() > 0) {\n return this.observers.some(\n (observer) => observer.getCurrentResult().isStale\n );\n }\n return this.state.data === void 0 || this.state.isInvalidated;\n }\n isStaleByTime(staleTime = 0) {\n if (this.state.data === void 0) {\n return true;\n }\n if (staleTime === \"static\") {\n return false;\n }\n if (this.state.isInvalidated) {\n return true;\n }\n return !timeUntilStale(this.state.dataUpdatedAt, staleTime);\n }\n onFocus() {\n const observer = this.observers.find((x) => x.shouldFetchOnWindowFocus());\n observer?.refetch({ cancelRefetch: false });\n this.#retryer?.continue();\n }\n onOnline() {\n const observer = this.observers.find((x) => x.shouldFetchOnReconnect());\n observer?.refetch({ cancelRefetch: false });\n this.#retryer?.continue();\n }\n addObserver(observer) {\n if (!this.observers.includes(observer)) {\n this.observers.push(observer);\n this.clearGcTimeout();\n this.#cache.notify({ type: \"observerAdded\", query: this, observer });\n }\n }\n removeObserver(observer) {\n if (this.observers.includes(observer)) {\n this.observers = this.observers.filter((x) => x !== observer);\n if (!this.observers.length) {\n if (this.#retryer) {\n if (this.#abortSignalConsumed) {\n this.#retryer.cancel({ revert: true });\n } else {\n this.#retryer.cancelRetry();\n }\n }\n this.scheduleGc();\n }\n this.#cache.notify({ type: \"observerRemoved\", query: this, observer });\n }\n }\n getObserversCount() {\n return this.observers.length;\n }\n invalidate() {\n if (!this.state.isInvalidated) {\n this.#dispatch({ type: \"invalidate\" });\n }\n }\n async fetch(options, fetchOptions) {\n if (this.state.fetchStatus !== \"idle\" && // If the promise in the retyer is already rejected, we have to definitely\n // re-start the fetch; there is a chance that the query is still in a\n // pending state when that happens\n this.#retryer?.status() !== \"rejected\") {\n if (this.state.data !== void 0 && fetchOptions?.cancelRefetch) {\n this.cancel({ silent: true });\n } else if (this.#retryer) {\n this.#retryer.continueRetry();\n return this.#retryer.promise;\n }\n }\n if (options) {\n this.setOptions(options);\n }\n if (!this.options.queryFn) {\n const observer = this.observers.find((x) => x.options.queryFn);\n if (observer) {\n this.setOptions(observer.options);\n }\n }\n if (process.env.NODE_ENV !== \"production\") {\n if (!Array.isArray(this.options.queryKey)) {\n console.error(\n `As of v4, queryKey needs to be an Array. If you are using a string like 'repoData', please change it to an Array, e.g. ['repoData']`\n );\n }\n }\n const abortController = new AbortController();\n const addSignalProperty = (object) => {\n Object.defineProperty(object, \"signal\", {\n enumerable: true,\n get: () => {\n this.#abortSignalConsumed = true;\n return abortController.signal;\n }\n });\n };\n const fetchFn = () => {\n const queryFn = ensureQueryFn(this.options, fetchOptions);\n const createQueryFnContext = () => {\n const queryFnContext2 = {\n client: this.#client,\n queryKey: this.queryKey,\n meta: this.meta\n };\n addSignalProperty(queryFnContext2);\n return queryFnContext2;\n };\n const queryFnContext = createQueryFnContext();\n this.#abortSignalConsumed = false;\n if (this.options.persister) {\n return this.options.persister(\n queryFn,\n queryFnContext,\n this\n );\n }\n return queryFn(queryFnContext);\n };\n const createFetchContext = () => {\n const context2 = {\n fetchOptions,\n options: this.options,\n queryKey: this.queryKey,\n client: this.#client,\n state: this.state,\n fetchFn\n };\n addSignalProperty(context2);\n return context2;\n };\n const context = createFetchContext();\n this.options.behavior?.onFetch(context, this);\n this.#revertState = this.state;\n if (this.state.fetchStatus === \"idle\" || this.state.fetchMeta !== context.fetchOptions?.meta) {\n this.#dispatch({ type: \"fetch\", meta: context.fetchOptions?.meta });\n }\n this.#retryer = createRetryer({\n initialPromise: fetchOptions?.initialPromise,\n fn: context.fetchFn,\n onCancel: (error) => {\n if (error instanceof CancelledError && error.revert) {\n this.setState({\n ...this.#revertState,\n fetchStatus: \"idle\"\n });\n }\n abortController.abort();\n },\n onFail: (failureCount, error) => {\n this.#dispatch({ type: \"failed\", failureCount, error });\n },\n onPause: () => {\n this.#dispatch({ type: \"pause\" });\n },\n onContinue: () => {\n this.#dispatch({ type: \"continue\" });\n },\n retry: context.options.retry,\n retryDelay: context.options.retryDelay,\n networkMode: context.options.networkMode,\n canRun: () => true\n });\n try {\n const data = await this.#retryer.start();\n if (data === void 0) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(\n `Query data cannot be undefined. Please make sure to return a value other than undefined from your query function. Affected query key: ${this.queryHash}`\n );\n }\n throw new Error(`${this.queryHash} data is undefined`);\n }\n this.setData(data);\n this.#cache.config.onSuccess?.(data, this);\n this.#cache.config.onSettled?.(\n data,\n this.state.error,\n this\n );\n return data;\n } catch (error) {\n if (error instanceof CancelledError) {\n if (error.silent) {\n return this.#retryer.promise;\n } else if (error.revert) {\n if (this.state.data === void 0) {\n throw error;\n }\n return this.state.data;\n }\n }\n this.#dispatch({\n type: \"error\",\n error\n });\n this.#cache.config.onError?.(\n error,\n this\n );\n this.#cache.config.onSettled?.(\n this.state.data,\n error,\n this\n );\n throw error;\n } finally {\n this.scheduleGc();\n }\n }\n #dispatch(action) {\n const reducer = (state) => {\n switch (action.type) {\n case \"failed\":\n return {\n ...state,\n fetchFailureCount: action.failureCount,\n fetchFailureReason: action.error\n };\n case \"pause\":\n return {\n ...state,\n fetchStatus: \"paused\"\n };\n case \"continue\":\n return {\n ...state,\n fetchStatus: \"fetching\"\n };\n case \"fetch\":\n return {\n ...state,\n ...fetchState(state.data, this.options),\n fetchMeta: action.meta ?? null\n };\n case \"success\":\n const newState = {\n ...state,\n ...successState(action.data, action.dataUpdatedAt),\n dataUpdateCount: state.dataUpdateCount + 1,\n ...!action.manual && {\n fetchStatus: \"idle\",\n fetchFailureCount: 0,\n fetchFailureReason: null\n }\n };\n this.#revertState = action.manual ? newState : void 0;\n return newState;\n case \"error\":\n const error = action.error;\n return {\n ...state,\n error,\n errorUpdateCount: state.errorUpdateCount + 1,\n errorUpdatedAt: Date.now(),\n fetchFailureCount: state.fetchFailureCount + 1,\n fetchFailureReason: error,\n fetchStatus: \"idle\",\n status: \"error\"\n };\n case \"invalidate\":\n return {\n ...state,\n isInvalidated: true\n };\n case \"setState\":\n return {\n ...state,\n ...action.state\n };\n }\n };\n this.state = reducer(this.state);\n notifyManager.batch(() => {\n this.observers.forEach((observer) => {\n observer.onQueryUpdate();\n });\n this.#cache.notify({ query: this, type: \"updated\", action });\n });\n }\n};\nfunction fetchState(data, options) {\n return {\n fetchFailureCount: 0,\n fetchFailureReason: null,\n fetchStatus: canFetch(options.networkMode) ? \"fetching\" : \"paused\",\n ...data === void 0 && {\n error: null,\n status: \"pending\"\n }\n };\n}\nfunction successState(data, dataUpdatedAt) {\n return {\n data,\n dataUpdatedAt: dataUpdatedAt ?? Date.now(),\n error: null,\n isInvalidated: false,\n status: \"success\"\n };\n}\nfunction getDefaultState(options) {\n const data = typeof options.initialData === \"function\" ? options.initialData() : options.initialData;\n const hasData = data !== void 0;\n const initialDataUpdatedAt = hasData ? typeof options.initialDataUpdatedAt === \"function\" ? options.initialDataUpdatedAt() : options.initialDataUpdatedAt : 0;\n return {\n data,\n dataUpdateCount: 0,\n dataUpdatedAt: hasData ? initialDataUpdatedAt ?? Date.now() : 0,\n error: null,\n errorUpdateCount: 0,\n errorUpdatedAt: 0,\n fetchFailureCount: 0,\n fetchFailureReason: null,\n fetchMeta: null,\n isInvalidated: false,\n status: hasData ? \"success\" : \"pending\",\n fetchStatus: \"idle\"\n };\n}\nexport {\n Query,\n fetchState\n};\n//# sourceMappingURL=query.js.map","// src/queryObserver.ts\nimport { focusManager } from \"./focusManager.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { fetchState } from \"./query.js\";\nimport { Subscribable } from \"./subscribable.js\";\nimport { pendingThenable } from \"./thenable.js\";\nimport {\n isServer,\n isValidTimeout,\n noop,\n replaceData,\n resolveEnabled,\n resolveStaleTime,\n shallowEqualObjects,\n timeUntilStale\n} from \"./utils.js\";\nimport { timeoutManager } from \"./timeoutManager.js\";\nvar QueryObserver = class extends Subscribable {\n constructor(client, options) {\n super();\n this.options = options;\n this.#client = client;\n this.#selectError = null;\n this.#currentThenable = pendingThenable();\n this.bindMethods();\n this.setOptions(options);\n }\n #client;\n #currentQuery = void 0;\n #currentQueryInitialState = void 0;\n #currentResult = void 0;\n #currentResultState;\n #currentResultOptions;\n #currentThenable;\n #selectError;\n #selectFn;\n #selectResult;\n // This property keeps track of the last query with defined data.\n // It will be used to pass the previous data and query to the placeholder function between renders.\n #lastQueryWithDefinedData;\n #staleTimeoutId;\n #refetchIntervalId;\n #currentRefetchInterval;\n #trackedProps = /* @__PURE__ */ new Set();\n bindMethods() {\n this.refetch = this.refetch.bind(this);\n }\n onSubscribe() {\n if (this.listeners.size === 1) {\n this.#currentQuery.addObserver(this);\n if (shouldFetchOnMount(this.#currentQuery, this.options)) {\n this.#executeFetch();\n } else {\n this.updateResult();\n }\n this.#updateTimers();\n }\n }\n onUnsubscribe() {\n if (!this.hasListeners()) {\n this.destroy();\n }\n }\n shouldFetchOnReconnect() {\n return shouldFetchOn(\n this.#currentQuery,\n this.options,\n this.options.refetchOnReconnect\n );\n }\n shouldFetchOnWindowFocus() {\n return shouldFetchOn(\n this.#currentQuery,\n this.options,\n this.options.refetchOnWindowFocus\n );\n }\n destroy() {\n this.listeners = /* @__PURE__ */ new Set();\n this.#clearStaleTimeout();\n this.#clearRefetchInterval();\n this.#currentQuery.removeObserver(this);\n }\n setOptions(options) {\n const prevOptions = this.options;\n const prevQuery = this.#currentQuery;\n this.options = this.#client.defaultQueryOptions(options);\n if (this.options.enabled !== void 0 && typeof this.options.enabled !== \"boolean\" && typeof this.options.enabled !== \"function\" && typeof resolveEnabled(this.options.enabled, this.#currentQuery) !== \"boolean\") {\n throw new Error(\n \"Expected enabled to be a boolean or a callback that returns a boolean\"\n );\n }\n this.#updateQuery();\n this.#currentQuery.setOptions(this.options);\n if (prevOptions._defaulted && !shallowEqualObjects(this.options, prevOptions)) {\n this.#client.getQueryCache().notify({\n type: \"observerOptionsUpdated\",\n query: this.#currentQuery,\n observer: this\n });\n }\n const mounted = this.hasListeners();\n if (mounted && shouldFetchOptionally(\n this.#currentQuery,\n prevQuery,\n this.options,\n prevOptions\n )) {\n this.#executeFetch();\n }\n this.updateResult();\n if (mounted && (this.#currentQuery !== prevQuery || resolveEnabled(this.options.enabled, this.#currentQuery) !== resolveEnabled(prevOptions.enabled, this.#currentQuery) || resolveStaleTime(this.options.staleTime, this.#currentQuery) !== resolveStaleTime(prevOptions.staleTime, this.#currentQuery))) {\n this.#updateStaleTimeout();\n }\n const nextRefetchInterval = this.#computeRefetchInterval();\n if (mounted && (this.#currentQuery !== prevQuery || resolveEnabled(this.options.enabled, this.#currentQuery) !== resolveEnabled(prevOptions.enabled, this.#currentQuery) || nextRefetchInterval !== this.#currentRefetchInterval)) {\n this.#updateRefetchInterval(nextRefetchInterval);\n }\n }\n getOptimisticResult(options) {\n const query = this.#client.getQueryCache().build(this.#client, options);\n const result = this.createResult(query, options);\n if (shouldAssignObserverCurrentProperties(this, result)) {\n this.#currentResult = result;\n this.#currentResultOptions = this.options;\n this.#currentResultState = this.#currentQuery.state;\n }\n return result;\n }\n getCurrentResult() {\n return this.#currentResult;\n }\n trackResult(result, onPropTracked) {\n return new Proxy(result, {\n get: (target, key) => {\n this.trackProp(key);\n onPropTracked?.(key);\n if (key === \"promise\") {\n this.trackProp(\"data\");\n if (!this.options.experimental_prefetchInRender && this.#currentThenable.status === \"pending\") {\n this.#currentThenable.reject(\n new Error(\n \"experimental_prefetchInRender feature flag is not enabled\"\n )\n );\n }\n }\n return Reflect.get(target, key);\n }\n });\n }\n trackProp(key) {\n this.#trackedProps.add(key);\n }\n getCurrentQuery() {\n return this.#currentQuery;\n }\n refetch({ ...options } = {}) {\n return this.fetch({\n ...options\n });\n }\n fetchOptimistic(options) {\n const defaultedOptions = this.#client.defaultQueryOptions(options);\n const query = this.#client.getQueryCache().build(this.#client, defaultedOptions);\n return query.fetch().then(() => this.createResult(query, defaultedOptions));\n }\n fetch(fetchOptions) {\n return this.#executeFetch({\n ...fetchOptions,\n cancelRefetch: fetchOptions.cancelRefetch ?? true\n }).then(() => {\n this.updateResult();\n return this.#currentResult;\n });\n }\n #executeFetch(fetchOptions) {\n this.#updateQuery();\n let promise = this.#currentQuery.fetch(\n this.options,\n fetchOptions\n );\n if (!fetchOptions?.throwOnError) {\n promise = promise.catch(noop);\n }\n return promise;\n }\n #updateStaleTimeout() {\n this.#clearStaleTimeout();\n const staleTime = resolveStaleTime(\n this.options.staleTime,\n this.#currentQuery\n );\n if (isServer || this.#currentResult.isStale || !isValidTimeout(staleTime)) {\n return;\n }\n const time = timeUntilStale(this.#currentResult.dataUpdatedAt, staleTime);\n const timeout = time + 1;\n this.#staleTimeoutId = timeoutManager.setTimeout(() => {\n if (!this.#currentResult.isStale) {\n this.updateResult();\n }\n }, timeout);\n }\n #computeRefetchInterval() {\n return (typeof this.options.refetchInterval === \"function\" ? this.options.refetchInterval(this.#currentQuery) : this.options.refetchInterval) ?? false;\n }\n #updateRefetchInterval(nextInterval) {\n this.#clearRefetchInterval();\n this.#currentRefetchInterval = nextInterval;\n if (isServer || resolveEnabled(this.options.enabled, this.#currentQuery) === false || !isValidTimeout(this.#currentRefetchInterval) || this.#currentRefetchInterval === 0) {\n return;\n }\n this.#refetchIntervalId = timeoutManager.setInterval(() => {\n if (this.options.refetchIntervalInBackground || focusManager.isFocused()) {\n this.#executeFetch();\n }\n }, this.#currentRefetchInterval);\n }\n #updateTimers() {\n this.#updateStaleTimeout();\n this.#updateRefetchInterval(this.#computeRefetchInterval());\n }\n #clearStaleTimeout() {\n if (this.#staleTimeoutId) {\n timeoutManager.clearTimeout(this.#staleTimeoutId);\n this.#staleTimeoutId = void 0;\n }\n }\n #clearRefetchInterval() {\n if (this.#refetchIntervalId) {\n timeoutManager.clearInterval(this.#refetchIntervalId);\n this.#refetchIntervalId = void 0;\n }\n }\n createResult(query, options) {\n const prevQuery = this.#currentQuery;\n const prevOptions = this.options;\n const prevResult = this.#currentResult;\n const prevResultState = this.#currentResultState;\n const prevResultOptions = this.#currentResultOptions;\n const queryChange = query !== prevQuery;\n const queryInitialState = queryChange ? query.state : this.#currentQueryInitialState;\n const { state } = query;\n let newState = { ...state };\n let isPlaceholderData = false;\n let data;\n if (options._optimisticResults) {\n const mounted = this.hasListeners();\n const fetchOnMount = !mounted && shouldFetchOnMount(query, options);\n const fetchOptionally = mounted && shouldFetchOptionally(query, prevQuery, options, prevOptions);\n if (fetchOnMount || fetchOptionally) {\n newState = {\n ...newState,\n ...fetchState(state.data, query.options)\n };\n }\n if (options._optimisticResults === \"isRestoring\") {\n newState.fetchStatus = \"idle\";\n }\n }\n let { error, errorUpdatedAt, status } = newState;\n data = newState.data;\n let skipSelect = false;\n if (options.placeholderData !== void 0 && data === void 0 && status === \"pending\") {\n let placeholderData;\n if (prevResult?.isPlaceholderData && options.placeholderData === prevResultOptions?.placeholderData) {\n placeholderData = prevResult.data;\n skipSelect = true;\n } else {\n placeholderData = typeof options.placeholderData === \"function\" ? options.placeholderData(\n this.#lastQueryWithDefinedData?.state.data,\n this.#lastQueryWithDefinedData\n ) : options.placeholderData;\n }\n if (placeholderData !== void 0) {\n status = \"success\";\n data = replaceData(\n prevResult?.data,\n placeholderData,\n options\n );\n isPlaceholderData = true;\n }\n }\n if (options.select && data !== void 0 && !skipSelect) {\n if (prevResult && data === prevResultState?.data && options.select === this.#selectFn) {\n data = this.#selectResult;\n } else {\n try {\n this.#selectFn = options.select;\n data = options.select(data);\n data = replaceData(prevResult?.data, data, options);\n this.#selectResult = data;\n this.#selectError = null;\n } catch (selectError) {\n this.#selectError = selectError;\n }\n }\n }\n if (this.#selectError) {\n error = this.#selectError;\n data = this.#selectResult;\n errorUpdatedAt = Date.now();\n status = \"error\";\n }\n const isFetching = newState.fetchStatus === \"fetching\";\n const isPending = status === \"pending\";\n const isError = status === \"error\";\n const isLoading = isPending && isFetching;\n const hasData = data !== void 0;\n const result = {\n status,\n fetchStatus: newState.fetchStatus,\n isPending,\n isSuccess: status === \"success\",\n isError,\n isInitialLoading: isLoading,\n isLoading,\n data,\n dataUpdatedAt: newState.dataUpdatedAt,\n error,\n errorUpdatedAt,\n failureCount: newState.fetchFailureCount,\n failureReason: newState.fetchFailureReason,\n errorUpdateCount: newState.errorUpdateCount,\n isFetched: newState.dataUpdateCount > 0 || newState.errorUpdateCount > 0,\n isFetchedAfterMount: newState.dataUpdateCount > queryInitialState.dataUpdateCount || newState.errorUpdateCount > queryInitialState.errorUpdateCount,\n isFetching,\n isRefetching: isFetching && !isPending,\n isLoadingError: isError && !hasData,\n isPaused: newState.fetchStatus === \"paused\",\n isPlaceholderData,\n isRefetchError: isError && hasData,\n isStale: isStale(query, options),\n refetch: this.refetch,\n promise: this.#currentThenable,\n isEnabled: resolveEnabled(options.enabled, query) !== false\n };\n const nextResult = result;\n if (this.options.experimental_prefetchInRender) {\n const finalizeThenableIfPossible = (thenable) => {\n if (nextResult.status === \"error\") {\n thenable.reject(nextResult.error);\n } else if (nextResult.data !== void 0) {\n thenable.resolve(nextResult.data);\n }\n };\n const recreateThenable = () => {\n const pending = this.#currentThenable = nextResult.promise = pendingThenable();\n finalizeThenableIfPossible(pending);\n };\n const prevThenable = this.#currentThenable;\n switch (prevThenable.status) {\n case \"pending\":\n if (query.queryHash === prevQuery.queryHash) {\n finalizeThenableIfPossible(prevThenable);\n }\n break;\n case \"fulfilled\":\n if (nextResult.status === \"error\" || nextResult.data !== prevThenable.value) {\n recreateThenable();\n }\n break;\n case \"rejected\":\n if (nextResult.status !== \"error\" || nextResult.error !== prevThenable.reason) {\n recreateThenable();\n }\n break;\n }\n }\n return nextResult;\n }\n updateResult() {\n const prevResult = this.#currentResult;\n const nextResult = this.createResult(this.#currentQuery, this.options);\n this.#currentResultState = this.#currentQuery.state;\n this.#currentResultOptions = this.options;\n if (this.#currentResultState.data !== void 0) {\n this.#lastQueryWithDefinedData = this.#currentQuery;\n }\n if (shallowEqualObjects(nextResult, prevResult)) {\n return;\n }\n this.#currentResult = nextResult;\n const shouldNotifyListeners = () => {\n if (!prevResult) {\n return true;\n }\n const { notifyOnChangeProps } = this.options;\n const notifyOnChangePropsValue = typeof notifyOnChangeProps === \"function\" ? notifyOnChangeProps() : notifyOnChangeProps;\n if (notifyOnChangePropsValue === \"all\" || !notifyOnChangePropsValue && !this.#trackedProps.size) {\n return true;\n }\n const includedProps = new Set(\n notifyOnChangePropsValue ?? this.#trackedProps\n );\n if (this.options.throwOnError) {\n includedProps.add(\"error\");\n }\n return Object.keys(this.#currentResult).some((key) => {\n const typedKey = key;\n const changed = this.#currentResult[typedKey] !== prevResult[typedKey];\n return changed && includedProps.has(typedKey);\n });\n };\n this.#notify({ listeners: shouldNotifyListeners() });\n }\n #updateQuery() {\n const query = this.#client.getQueryCache().build(this.#client, this.options);\n if (query === this.#currentQuery) {\n return;\n }\n const prevQuery = this.#currentQuery;\n this.#currentQuery = query;\n this.#currentQueryInitialState = query.state;\n if (this.hasListeners()) {\n prevQuery?.removeObserver(this);\n query.addObserver(this);\n }\n }\n onQueryUpdate() {\n this.updateResult();\n if (this.hasListeners()) {\n this.#updateTimers();\n }\n }\n #notify(notifyOptions) {\n notifyManager.batch(() => {\n if (notifyOptions.listeners) {\n this.listeners.forEach((listener) => {\n listener(this.#currentResult);\n });\n }\n this.#client.getQueryCache().notify({\n query: this.#currentQuery,\n type: \"observerResultsUpdated\"\n });\n });\n }\n};\nfunction shouldLoadOnMount(query, options) {\n return resolveEnabled(options.enabled, query) !== false && query.state.data === void 0 && !(query.state.status === \"error\" && options.retryOnMount === false);\n}\nfunction shouldFetchOnMount(query, options) {\n return shouldLoadOnMount(query, options) || query.state.data !== void 0 && shouldFetchOn(query, options, options.refetchOnMount);\n}\nfunction shouldFetchOn(query, options, field) {\n if (resolveEnabled(options.enabled, query) !== false && resolveStaleTime(options.staleTime, query) !== \"static\") {\n const value = typeof field === \"function\" ? field(query) : field;\n return value === \"always\" || value !== false && isStale(query, options);\n }\n return false;\n}\nfunction shouldFetchOptionally(query, prevQuery, options, prevOptions) {\n return (query !== prevQuery || resolveEnabled(prevOptions.enabled, query) === false) && (!options.suspense || query.state.status !== \"error\") && isStale(query, options);\n}\nfunction isStale(query, options) {\n return resolveEnabled(options.enabled, query) !== false && query.isStaleByTime(resolveStaleTime(options.staleTime, query));\n}\nfunction shouldAssignObserverCurrentProperties(observer, optimisticResult) {\n if (!shallowEqualObjects(observer.getCurrentResult(), optimisticResult)) {\n return true;\n }\n return false;\n}\nexport {\n QueryObserver\n};\n//# sourceMappingURL=queryObserver.js.map","// src/infiniteQueryBehavior.ts\nimport { addToEnd, addToStart, ensureQueryFn } from \"./utils.js\";\nfunction infiniteQueryBehavior(pages) {\n return {\n onFetch: (context, query) => {\n const options = context.options;\n const direction = context.fetchOptions?.meta?.fetchMore?.direction;\n const oldPages = context.state.data?.pages || [];\n const oldPageParams = context.state.data?.pageParams || [];\n let result = { pages: [], pageParams: [] };\n let currentPage = 0;\n const fetchFn = async () => {\n let cancelled = false;\n const addSignalProperty = (object) => {\n Object.defineProperty(object, \"signal\", {\n enumerable: true,\n get: () => {\n if (context.signal.aborted) {\n cancelled = true;\n } else {\n context.signal.addEventListener(\"abort\", () => {\n cancelled = true;\n });\n }\n return context.signal;\n }\n });\n };\n const queryFn = ensureQueryFn(context.options, context.fetchOptions);\n const fetchPage = async (data, param, previous) => {\n if (cancelled) {\n return Promise.reject();\n }\n if (param == null && data.pages.length) {\n return Promise.resolve(data);\n }\n const createQueryFnContext = () => {\n const queryFnContext2 = {\n client: context.client,\n queryKey: context.queryKey,\n pageParam: param,\n direction: previous ? \"backward\" : \"forward\",\n meta: context.options.meta\n };\n addSignalProperty(queryFnContext2);\n return queryFnContext2;\n };\n const queryFnContext = createQueryFnContext();\n const page = await queryFn(queryFnContext);\n const { maxPages } = context.options;\n const addTo = previous ? addToStart : addToEnd;\n return {\n pages: addTo(data.pages, page, maxPages),\n pageParams: addTo(data.pageParams, param, maxPages)\n };\n };\n if (direction && oldPages.length) {\n const previous = direction === \"backward\";\n const pageParamFn = previous ? getPreviousPageParam : getNextPageParam;\n const oldData = {\n pages: oldPages,\n pageParams: oldPageParams\n };\n const param = pageParamFn(options, oldData);\n result = await fetchPage(oldData, param, previous);\n } else {\n const remainingPages = pages ?? oldPages.length;\n do {\n const param = currentPage === 0 ? oldPageParams[0] ?? options.initialPageParam : getNextPageParam(options, result);\n if (currentPage > 0 && param == null) {\n break;\n }\n result = await fetchPage(result, param);\n currentPage++;\n } while (currentPage < remainingPages);\n }\n return result;\n };\n if (context.options.persister) {\n context.fetchFn = () => {\n return context.options.persister?.(\n fetchFn,\n {\n client: context.client,\n queryKey: context.queryKey,\n meta: context.options.meta,\n signal: context.signal\n },\n query\n );\n };\n } else {\n context.fetchFn = fetchFn;\n }\n }\n };\n}\nfunction getNextPageParam(options, { pages, pageParams }) {\n const lastIndex = pages.length - 1;\n return pages.length > 0 ? options.getNextPageParam(\n pages[lastIndex],\n pages,\n pageParams[lastIndex],\n pageParams\n ) : void 0;\n}\nfunction getPreviousPageParam(options, { pages, pageParams }) {\n return pages.length > 0 ? options.getPreviousPageParam?.(pages[0], pages, pageParams[0], pageParams) : void 0;\n}\nfunction hasNextPage(options, data) {\n if (!data) return false;\n return getNextPageParam(options, data) != null;\n}\nfunction hasPreviousPage(options, data) {\n if (!data || !options.getPreviousPageParam) return false;\n return getPreviousPageParam(options, data) != null;\n}\nexport {\n hasNextPage,\n hasPreviousPage,\n infiniteQueryBehavior\n};\n//# sourceMappingURL=infiniteQueryBehavior.js.map","// src/mutation.ts\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Removable } from \"./removable.js\";\nimport { createRetryer } from \"./retryer.js\";\nvar Mutation = class extends Removable {\n #client;\n #observers;\n #mutationCache;\n #retryer;\n constructor(config) {\n super();\n this.#client = config.client;\n this.mutationId = config.mutationId;\n this.#mutationCache = config.mutationCache;\n this.#observers = [];\n this.state = config.state || getDefaultState();\n this.setOptions(config.options);\n this.scheduleGc();\n }\n setOptions(options) {\n this.options = options;\n this.updateGcTime(this.options.gcTime);\n }\n get meta() {\n return this.options.meta;\n }\n addObserver(observer) {\n if (!this.#observers.includes(observer)) {\n this.#observers.push(observer);\n this.clearGcTimeout();\n this.#mutationCache.notify({\n type: \"observerAdded\",\n mutation: this,\n observer\n });\n }\n }\n removeObserver(observer) {\n this.#observers = this.#observers.filter((x) => x !== observer);\n this.scheduleGc();\n this.#mutationCache.notify({\n type: \"observerRemoved\",\n mutation: this,\n observer\n });\n }\n optionalRemove() {\n if (!this.#observers.length) {\n if (this.state.status === \"pending\") {\n this.scheduleGc();\n } else {\n this.#mutationCache.remove(this);\n }\n }\n }\n continue() {\n return this.#retryer?.continue() ?? // continuing a mutation assumes that variables are set, mutation must have been dehydrated before\n this.execute(this.state.variables);\n }\n async execute(variables) {\n const onContinue = () => {\n this.#dispatch({ type: \"continue\" });\n };\n const mutationFnContext = {\n client: this.#client,\n meta: this.options.meta,\n mutationKey: this.options.mutationKey\n };\n this.#retryer = createRetryer({\n fn: () => {\n if (!this.options.mutationFn) {\n return Promise.reject(new Error(\"No mutationFn found\"));\n }\n return this.options.mutationFn(variables, mutationFnContext);\n },\n onFail: (failureCount, error) => {\n this.#dispatch({ type: \"failed\", failureCount, error });\n },\n onPause: () => {\n this.#dispatch({ type: \"pause\" });\n },\n onContinue,\n retry: this.options.retry ?? 0,\n retryDelay: this.options.retryDelay,\n networkMode: this.options.networkMode,\n canRun: () => this.#mutationCache.canRun(this)\n });\n const restored = this.state.status === \"pending\";\n const isPaused = !this.#retryer.canStart();\n try {\n if (restored) {\n onContinue();\n } else {\n this.#dispatch({ type: \"pending\", variables, isPaused });\n await this.#mutationCache.config.onMutate?.(\n variables,\n this,\n mutationFnContext\n );\n const context = await this.options.onMutate?.(\n variables,\n mutationFnContext\n );\n if (context !== this.state.context) {\n this.#dispatch({\n type: \"pending\",\n context,\n variables,\n isPaused\n });\n }\n }\n const data = await this.#retryer.start();\n await this.#mutationCache.config.onSuccess?.(\n data,\n variables,\n this.state.context,\n this,\n mutationFnContext\n );\n await this.options.onSuccess?.(\n data,\n variables,\n this.state.context,\n mutationFnContext\n );\n await this.#mutationCache.config.onSettled?.(\n data,\n null,\n this.state.variables,\n this.state.context,\n this,\n mutationFnContext\n );\n await this.options.onSettled?.(\n data,\n null,\n variables,\n this.state.context,\n mutationFnContext\n );\n this.#dispatch({ type: \"success\", data });\n return data;\n } catch (error) {\n try {\n await this.#mutationCache.config.onError?.(\n error,\n variables,\n this.state.context,\n this,\n mutationFnContext\n );\n await this.options.onError?.(\n error,\n variables,\n this.state.context,\n mutationFnContext\n );\n await this.#mutationCache.config.onSettled?.(\n void 0,\n error,\n this.state.variables,\n this.state.context,\n this,\n mutationFnContext\n );\n await this.options.onSettled?.(\n void 0,\n error,\n variables,\n this.state.context,\n mutationFnContext\n );\n throw error;\n } finally {\n this.#dispatch({ type: \"error\", error });\n }\n } finally {\n this.#mutationCache.runNext(this);\n }\n }\n #dispatch(action) {\n const reducer = (state) => {\n switch (action.type) {\n case \"failed\":\n return {\n ...state,\n failureCount: action.failureCount,\n failureReason: action.error\n };\n case \"pause\":\n return {\n ...state,\n isPaused: true\n };\n case \"continue\":\n return {\n ...state,\n isPaused: false\n };\n case \"pending\":\n return {\n ...state,\n context: action.context,\n data: void 0,\n failureCount: 0,\n failureReason: null,\n error: null,\n isPaused: action.isPaused,\n status: \"pending\",\n variables: action.variables,\n submittedAt: Date.now()\n };\n case \"success\":\n return {\n ...state,\n data: action.data,\n failureCount: 0,\n failureReason: null,\n error: null,\n status: \"success\",\n isPaused: false\n };\n case \"error\":\n return {\n ...state,\n data: void 0,\n error: action.error,\n failureCount: state.failureCount + 1,\n failureReason: action.error,\n isPaused: false,\n status: \"error\"\n };\n }\n };\n this.state = reducer(this.state);\n notifyManager.batch(() => {\n this.#observers.forEach((observer) => {\n observer.onMutationUpdate(action);\n });\n this.#mutationCache.notify({\n mutation: this,\n type: \"updated\",\n action\n });\n });\n }\n};\nfunction getDefaultState() {\n return {\n context: void 0,\n data: void 0,\n error: null,\n failureCount: 0,\n failureReason: null,\n isPaused: false,\n status: \"idle\",\n variables: void 0,\n submittedAt: 0\n };\n}\nexport {\n Mutation,\n getDefaultState\n};\n//# sourceMappingURL=mutation.js.map","// src/mutationCache.ts\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Mutation } from \"./mutation.js\";\nimport { matchMutation, noop } from \"./utils.js\";\nimport { Subscribable } from \"./subscribable.js\";\nvar MutationCache = class extends Subscribable {\n constructor(config = {}) {\n super();\n this.config = config;\n this.#mutations = /* @__PURE__ */ new Set();\n this.#scopes = /* @__PURE__ */ new Map();\n this.#mutationId = 0;\n }\n #mutations;\n #scopes;\n #mutationId;\n build(client, options, state) {\n const mutation = new Mutation({\n client,\n mutationCache: this,\n mutationId: ++this.#mutationId,\n options: client.defaultMutationOptions(options),\n state\n });\n this.add(mutation);\n return mutation;\n }\n add(mutation) {\n this.#mutations.add(mutation);\n const scope = scopeFor(mutation);\n if (typeof scope === \"string\") {\n const scopedMutations = this.#scopes.get(scope);\n if (scopedMutations) {\n scopedMutations.push(mutation);\n } else {\n this.#scopes.set(scope, [mutation]);\n }\n }\n this.notify({ type: \"added\", mutation });\n }\n remove(mutation) {\n if (this.#mutations.delete(mutation)) {\n const scope = scopeFor(mutation);\n if (typeof scope === \"string\") {\n const scopedMutations = this.#scopes.get(scope);\n if (scopedMutations) {\n if (scopedMutations.length > 1) {\n const index = scopedMutations.indexOf(mutation);\n if (index !== -1) {\n scopedMutations.splice(index, 1);\n }\n } else if (scopedMutations[0] === mutation) {\n this.#scopes.delete(scope);\n }\n }\n }\n }\n this.notify({ type: \"removed\", mutation });\n }\n canRun(mutation) {\n const scope = scopeFor(mutation);\n if (typeof scope === \"string\") {\n const mutationsWithSameScope = this.#scopes.get(scope);\n const firstPendingMutation = mutationsWithSameScope?.find(\n (m) => m.state.status === \"pending\"\n );\n return !firstPendingMutation || firstPendingMutation === mutation;\n } else {\n return true;\n }\n }\n runNext(mutation) {\n const scope = scopeFor(mutation);\n if (typeof scope === \"string\") {\n const foundMutation = this.#scopes.get(scope)?.find((m) => m !== mutation && m.state.isPaused);\n return foundMutation?.continue() ?? Promise.resolve();\n } else {\n return Promise.resolve();\n }\n }\n clear() {\n notifyManager.batch(() => {\n this.#mutations.forEach((mutation) => {\n this.notify({ type: \"removed\", mutation });\n });\n this.#mutations.clear();\n this.#scopes.clear();\n });\n }\n getAll() {\n return Array.from(this.#mutations);\n }\n find(filters) {\n const defaultedFilters = { exact: true, ...filters };\n return this.getAll().find(\n (mutation) => matchMutation(defaultedFilters, mutation)\n );\n }\n findAll(filters = {}) {\n return this.getAll().filter((mutation) => matchMutation(filters, mutation));\n }\n notify(event) {\n notifyManager.batch(() => {\n this.listeners.forEach((listener) => {\n listener(event);\n });\n });\n }\n resumePausedMutations() {\n const pausedMutations = this.getAll().filter((x) => x.state.isPaused);\n return notifyManager.batch(\n () => Promise.all(\n pausedMutations.map((mutation) => mutation.continue().catch(noop))\n )\n );\n }\n};\nfunction scopeFor(mutation) {\n return mutation.options.scope?.id;\n}\nexport {\n MutationCache\n};\n//# sourceMappingURL=mutationCache.js.map","// src/mutationObserver.ts\nimport { getDefaultState } from \"./mutation.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Subscribable } from \"./subscribable.js\";\nimport { hashKey, shallowEqualObjects } from \"./utils.js\";\nvar MutationObserver = class extends Subscribable {\n #client;\n #currentResult = void 0;\n #currentMutation;\n #mutateOptions;\n constructor(client, options) {\n super();\n this.#client = client;\n this.setOptions(options);\n this.bindMethods();\n this.#updateResult();\n }\n bindMethods() {\n this.mutate = this.mutate.bind(this);\n this.reset = this.reset.bind(this);\n }\n setOptions(options) {\n const prevOptions = this.options;\n this.options = this.#client.defaultMutationOptions(options);\n if (!shallowEqualObjects(this.options, prevOptions)) {\n this.#client.getMutationCache().notify({\n type: \"observerOptionsUpdated\",\n mutation: this.#currentMutation,\n observer: this\n });\n }\n if (prevOptions?.mutationKey && this.options.mutationKey && hashKey(prevOptions.mutationKey) !== hashKey(this.options.mutationKey)) {\n this.reset();\n } else if (this.#currentMutation?.state.status === \"pending\") {\n this.#currentMutation.setOptions(this.options);\n }\n }\n onUnsubscribe() {\n if (!this.hasListeners()) {\n this.#currentMutation?.removeObserver(this);\n }\n }\n onMutationUpdate(action) {\n this.#updateResult();\n this.#notify(action);\n }\n getCurrentResult() {\n return this.#currentResult;\n }\n reset() {\n this.#currentMutation?.removeObserver(this);\n this.#currentMutation = void 0;\n this.#updateResult();\n this.#notify();\n }\n mutate(variables, options) {\n this.#mutateOptions = options;\n this.#currentMutation?.removeObserver(this);\n this.#currentMutation = this.#client.getMutationCache().build(this.#client, this.options);\n this.#currentMutation.addObserver(this);\n return this.#currentMutation.execute(variables);\n }\n #updateResult() {\n const state = this.#currentMutation?.state ?? getDefaultState();\n this.#currentResult = {\n ...state,\n isPending: state.status === \"pending\",\n isSuccess: state.status === \"success\",\n isError: state.status === \"error\",\n isIdle: state.status === \"idle\",\n mutate: this.mutate,\n reset: this.reset\n };\n }\n #notify(action) {\n notifyManager.batch(() => {\n if (this.#mutateOptions && this.hasListeners()) {\n const variables = this.#currentResult.variables;\n const onMutateResult = this.#currentResult.context;\n const context = {\n client: this.#client,\n meta: this.options.meta,\n mutationKey: this.options.mutationKey\n };\n if (action?.type === \"success\") {\n this.#mutateOptions.onSuccess?.(\n action.data,\n variables,\n onMutateResult,\n context\n );\n this.#mutateOptions.onSettled?.(\n action.data,\n null,\n variables,\n onMutateResult,\n context\n );\n } else if (action?.type === \"error\") {\n this.#mutateOptions.onError?.(\n action.error,\n variables,\n onMutateResult,\n context\n );\n this.#mutateOptions.onSettled?.(\n void 0,\n action.error,\n variables,\n onMutateResult,\n context\n );\n }\n }\n this.listeners.forEach((listener) => {\n listener(this.#currentResult);\n });\n });\n }\n};\nexport {\n MutationObserver\n};\n//# sourceMappingURL=mutationObserver.js.map","// src/queryCache.ts\nimport { hashQueryKeyByOptions, matchQuery } from \"./utils.js\";\nimport { Query } from \"./query.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Subscribable } from \"./subscribable.js\";\nvar QueryCache = class extends Subscribable {\n constructor(config = {}) {\n super();\n this.config = config;\n this.#queries = /* @__PURE__ */ new Map();\n }\n #queries;\n build(client, options, state) {\n const queryKey = options.queryKey;\n const queryHash = options.queryHash ?? hashQueryKeyByOptions(queryKey, options);\n let query = this.get(queryHash);\n if (!query) {\n query = new Query({\n client,\n queryKey,\n queryHash,\n options: client.defaultQueryOptions(options),\n state,\n defaultOptions: client.getQueryDefaults(queryKey)\n });\n this.add(query);\n }\n return query;\n }\n add(query) {\n if (!this.#queries.has(query.queryHash)) {\n this.#queries.set(query.queryHash, query);\n this.notify({\n type: \"added\",\n query\n });\n }\n }\n remove(query) {\n const queryInMap = this.#queries.get(query.queryHash);\n if (queryInMap) {\n query.destroy();\n if (queryInMap === query) {\n this.#queries.delete(query.queryHash);\n }\n this.notify({ type: \"removed\", query });\n }\n }\n clear() {\n notifyManager.batch(() => {\n this.getAll().forEach((query) => {\n this.remove(query);\n });\n });\n }\n get(queryHash) {\n return this.#queries.get(queryHash);\n }\n getAll() {\n return [...this.#queries.values()];\n }\n find(filters) {\n const defaultedFilters = { exact: true, ...filters };\n return this.getAll().find(\n (query) => matchQuery(defaultedFilters, query)\n );\n }\n findAll(filters = {}) {\n const queries = this.getAll();\n return Object.keys(filters).length > 0 ? queries.filter((query) => matchQuery(filters, query)) : queries;\n }\n notify(event) {\n notifyManager.batch(() => {\n this.listeners.forEach((listener) => {\n listener(event);\n });\n });\n }\n onFocus() {\n notifyManager.batch(() => {\n this.getAll().forEach((query) => {\n query.onFocus();\n });\n });\n }\n onOnline() {\n notifyManager.batch(() => {\n this.getAll().forEach((query) => {\n query.onOnline();\n });\n });\n }\n};\nexport {\n QueryCache\n};\n//# sourceMappingURL=queryCache.js.map","// src/queryClient.ts\nimport {\n functionalUpdate,\n hashKey,\n hashQueryKeyByOptions,\n noop,\n partialMatchKey,\n resolveStaleTime,\n skipToken\n} from \"./utils.js\";\nimport { QueryCache } from \"./queryCache.js\";\nimport { MutationCache } from \"./mutationCache.js\";\nimport { focusManager } from \"./focusManager.js\";\nimport { onlineManager } from \"./onlineManager.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { infiniteQueryBehavior } from \"./infiniteQueryBehavior.js\";\nvar QueryClient = class {\n #queryCache;\n #mutationCache;\n #defaultOptions;\n #queryDefaults;\n #mutationDefaults;\n #mountCount;\n #unsubscribeFocus;\n #unsubscribeOnline;\n constructor(config = {}) {\n this.#queryCache = config.queryCache || new QueryCache();\n this.#mutationCache = config.mutationCache || new MutationCache();\n this.#defaultOptions = config.defaultOptions || {};\n this.#queryDefaults = /* @__PURE__ */ new Map();\n this.#mutationDefaults = /* @__PURE__ */ new Map();\n this.#mountCount = 0;\n }\n mount() {\n this.#mountCount++;\n if (this.#mountCount !== 1) return;\n this.#unsubscribeFocus = focusManager.subscribe(async (focused) => {\n if (focused) {\n await this.resumePausedMutations();\n this.#queryCache.onFocus();\n }\n });\n this.#unsubscribeOnline = onlineManager.subscribe(async (online) => {\n if (online) {\n await this.resumePausedMutations();\n this.#queryCache.onOnline();\n }\n });\n }\n unmount() {\n this.#mountCount--;\n if (this.#mountCount !== 0) return;\n this.#unsubscribeFocus?.();\n this.#unsubscribeFocus = void 0;\n this.#unsubscribeOnline?.();\n this.#unsubscribeOnline = void 0;\n }\n isFetching(filters) {\n return this.#queryCache.findAll({ ...filters, fetchStatus: \"fetching\" }).length;\n }\n isMutating(filters) {\n return this.#mutationCache.findAll({ ...filters, status: \"pending\" }).length;\n }\n /**\n * Imperative (non-reactive) way to retrieve data for a QueryKey.\n * Should only be used in callbacks or functions where reading the latest data is necessary, e.g. for optimistic updates.\n *\n * Hint: Do not use this function inside a component, because it won't receive updates.\n * Use `useQuery` to create a `QueryObserver` that subscribes to changes.\n */\n getQueryData(queryKey) {\n const options = this.defaultQueryOptions({ queryKey });\n return this.#queryCache.get(options.queryHash)?.state.data;\n }\n ensureQueryData(options) {\n const defaultedOptions = this.defaultQueryOptions(options);\n const query = this.#queryCache.build(this, defaultedOptions);\n const cachedData = query.state.data;\n if (cachedData === void 0) {\n return this.fetchQuery(options);\n }\n if (options.revalidateIfStale && query.isStaleByTime(resolveStaleTime(defaultedOptions.staleTime, query))) {\n void this.prefetchQuery(defaultedOptions);\n }\n return Promise.resolve(cachedData);\n }\n getQueriesData(filters) {\n return this.#queryCache.findAll(filters).map(({ queryKey, state }) => {\n const data = state.data;\n return [queryKey, data];\n });\n }\n setQueryData(queryKey, updater, options) {\n const defaultedOptions = this.defaultQueryOptions({ queryKey });\n const query = this.#queryCache.get(\n defaultedOptions.queryHash\n );\n const prevData = query?.state.data;\n const data = functionalUpdate(updater, prevData);\n if (data === void 0) {\n return void 0;\n }\n return this.#queryCache.build(this, defaultedOptions).setData(data, { ...options, manual: true });\n }\n setQueriesData(filters, updater, options) {\n return notifyManager.batch(\n () => this.#queryCache.findAll(filters).map(({ queryKey }) => [\n queryKey,\n this.setQueryData(queryKey, updater, options)\n ])\n );\n }\n getQueryState(queryKey) {\n const options = this.defaultQueryOptions({ queryKey });\n return this.#queryCache.get(\n options.queryHash\n )?.state;\n }\n removeQueries(filters) {\n const queryCache = this.#queryCache;\n notifyManager.batch(() => {\n queryCache.findAll(filters).forEach((query) => {\n queryCache.remove(query);\n });\n });\n }\n resetQueries(filters, options) {\n const queryCache = this.#queryCache;\n return notifyManager.batch(() => {\n queryCache.findAll(filters).forEach((query) => {\n query.reset();\n });\n return this.refetchQueries(\n {\n type: \"active\",\n ...filters\n },\n options\n );\n });\n }\n cancelQueries(filters, cancelOptions = {}) {\n const defaultedCancelOptions = { revert: true, ...cancelOptions };\n const promises = notifyManager.batch(\n () => this.#queryCache.findAll(filters).map((query) => query.cancel(defaultedCancelOptions))\n );\n return Promise.all(promises).then(noop).catch(noop);\n }\n invalidateQueries(filters, options = {}) {\n return notifyManager.batch(() => {\n this.#queryCache.findAll(filters).forEach((query) => {\n query.invalidate();\n });\n if (filters?.refetchType === \"none\") {\n return Promise.resolve();\n }\n return this.refetchQueries(\n {\n ...filters,\n type: filters?.refetchType ?? filters?.type ?? \"active\"\n },\n options\n );\n });\n }\n refetchQueries(filters, options = {}) {\n const fetchOptions = {\n ...options,\n cancelRefetch: options.cancelRefetch ?? true\n };\n const promises = notifyManager.batch(\n () => this.#queryCache.findAll(filters).filter((query) => !query.isDisabled() && !query.isStatic()).map((query) => {\n let promise = query.fetch(void 0, fetchOptions);\n if (!fetchOptions.throwOnError) {\n promise = promise.catch(noop);\n }\n return query.state.fetchStatus === \"paused\" ? Promise.resolve() : promise;\n })\n );\n return Promise.all(promises).then(noop);\n }\n fetchQuery(options) {\n const defaultedOptions = this.defaultQueryOptions(options);\n if (defaultedOptions.retry === void 0) {\n defaultedOptions.retry = false;\n }\n const query = this.#queryCache.build(this, defaultedOptions);\n return query.isStaleByTime(\n resolveStaleTime(defaultedOptions.staleTime, query)\n ) ? query.fetch(defaultedOptions) : Promise.resolve(query.state.data);\n }\n prefetchQuery(options) {\n return this.fetchQuery(options).then(noop).catch(noop);\n }\n fetchInfiniteQuery(options) {\n options.behavior = infiniteQueryBehavior(options.pages);\n return this.fetchQuery(options);\n }\n prefetchInfiniteQuery(options) {\n return this.fetchInfiniteQuery(options).then(noop).catch(noop);\n }\n ensureInfiniteQueryData(options) {\n options.behavior = infiniteQueryBehavior(options.pages);\n return this.ensureQueryData(options);\n }\n resumePausedMutations() {\n if (onlineManager.isOnline()) {\n return this.#mutationCache.resumePausedMutations();\n }\n return Promise.resolve();\n }\n getQueryCache() {\n return this.#queryCache;\n }\n getMutationCache() {\n return this.#mutationCache;\n }\n getDefaultOptions() {\n return this.#defaultOptions;\n }\n setDefaultOptions(options) {\n this.#defaultOptions = options;\n }\n setQueryDefaults(queryKey, options) {\n this.#queryDefaults.set(hashKey(queryKey), {\n queryKey,\n defaultOptions: options\n });\n }\n getQueryDefaults(queryKey) {\n const defaults = [...this.#queryDefaults.values()];\n const result = {};\n defaults.forEach((queryDefault) => {\n if (partialMatchKey(queryKey, queryDefault.queryKey)) {\n Object.assign(result, queryDefault.defaultOptions);\n }\n });\n return result;\n }\n setMutationDefaults(mutationKey, options) {\n this.#mutationDefaults.set(hashKey(mutationKey), {\n mutationKey,\n defaultOptions: options\n });\n }\n getMutationDefaults(mutationKey) {\n const defaults = [...this.#mutationDefaults.values()];\n const result = {};\n defaults.forEach((queryDefault) => {\n if (partialMatchKey(mutationKey, queryDefault.mutationKey)) {\n Object.assign(result, queryDefault.defaultOptions);\n }\n });\n return result;\n }\n defaultQueryOptions(options) {\n if (options._defaulted) {\n return options;\n }\n const defaultedOptions = {\n ...this.#defaultOptions.queries,\n ...this.getQueryDefaults(options.queryKey),\n ...options,\n _defaulted: true\n };\n if (!defaultedOptions.queryHash) {\n defaultedOptions.queryHash = hashQueryKeyByOptions(\n defaultedOptions.queryKey,\n defaultedOptions\n );\n }\n if (defaultedOptions.refetchOnReconnect === void 0) {\n defaultedOptions.refetchOnReconnect = defaultedOptions.networkMode !== \"always\";\n }\n if (defaultedOptions.throwOnError === void 0) {\n defaultedOptions.throwOnError = !!defaultedOptions.suspense;\n }\n if (!defaultedOptions.networkMode && defaultedOptions.persister) {\n defaultedOptions.networkMode = \"offlineFirst\";\n }\n if (defaultedOptions.queryFn === skipToken) {\n defaultedOptions.enabled = false;\n }\n return defaultedOptions;\n }\n defaultMutationOptions(options) {\n if (options?._defaulted) {\n return options;\n }\n return {\n ...this.#defaultOptions.mutations,\n ...options?.mutationKey && this.getMutationDefaults(options.mutationKey),\n ...options,\n _defaulted: true\n };\n }\n clear() {\n this.#queryCache.clear();\n this.#mutationCache.clear();\n }\n};\nexport {\n QueryClient\n};\n//# sourceMappingURL=queryClient.js.map","/**\n * @license React\n * react.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_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\"),\n REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_ACTIVITY_TYPE = Symbol.for(\"react.activity\"),\n MAYBE_ITERATOR_SYMBOL = Symbol.iterator;\nfunction getIteratorFn(maybeIterable) {\n if (null === maybeIterable || \"object\" !== typeof maybeIterable) return null;\n maybeIterable =\n (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||\n maybeIterable[\"@@iterator\"];\n return \"function\" === typeof maybeIterable ? maybeIterable : null;\n}\nvar ReactNoopUpdateQueue = {\n isMounted: function () {\n return !1;\n },\n enqueueForceUpdate: function () {},\n enqueueReplaceState: function () {},\n enqueueSetState: function () {}\n },\n assign = Object.assign,\n emptyObject = {};\nfunction Component(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n}\nComponent.prototype.isReactComponent = {};\nComponent.prototype.setState = function (partialState, callback) {\n if (\n \"object\" !== typeof partialState &&\n \"function\" !== typeof partialState &&\n null != partialState\n )\n throw Error(\n \"takes an object of state variables to update or a function which returns an object of state variables.\"\n );\n this.updater.enqueueSetState(this, partialState, callback, \"setState\");\n};\nComponent.prototype.forceUpdate = function (callback) {\n this.updater.enqueueForceUpdate(this, callback, \"forceUpdate\");\n};\nfunction ComponentDummy() {}\nComponentDummy.prototype = Component.prototype;\nfunction PureComponent(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n}\nvar pureComponentPrototype = (PureComponent.prototype = new ComponentDummy());\npureComponentPrototype.constructor = PureComponent;\nassign(pureComponentPrototype, Component.prototype);\npureComponentPrototype.isPureReactComponent = !0;\nvar isArrayImpl = Array.isArray;\nfunction noop() {}\nvar ReactSharedInternals = { H: null, A: null, T: null, S: null },\n hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction ReactElement(type, key, props) {\n var refProp = props.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== refProp ? refProp : null,\n props: props\n };\n}\nfunction cloneAndReplaceKey(oldElement, newKey) {\n return ReactElement(oldElement.type, newKey, oldElement.props);\n}\nfunction isValidElement(object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n}\nfunction escape(key) {\n var escaperLookup = { \"=\": \"=0\", \":\": \"=2\" };\n return (\n \"$\" +\n key.replace(/[=:]/g, function (match) {\n return escaperLookup[match];\n })\n );\n}\nvar userProvidedKeyEscapeRegex = /\\/+/g;\nfunction getElementKey(element, index) {\n return \"object\" === typeof element && null !== element && null != element.key\n ? escape(\"\" + element.key)\n : index.toString(36);\n}\nfunction resolveThenable(thenable) {\n switch (thenable.status) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n default:\n switch (\n (\"string\" === typeof thenable.status\n ? thenable.then(noop, noop)\n : ((thenable.status = \"pending\"),\n thenable.then(\n function (fulfilledValue) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"fulfilled\"),\n (thenable.value = fulfilledValue));\n },\n function (error) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"rejected\"), (thenable.reason = error));\n }\n )),\n thenable.status)\n ) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n }\n }\n throw thenable;\n}\nfunction mapIntoArray(children, array, escapedPrefix, nameSoFar, callback) {\n var type = typeof children;\n if (\"undefined\" === type || \"boolean\" === type) children = null;\n var invokeCallback = !1;\n if (null === children) invokeCallback = !0;\n else\n switch (type) {\n case \"bigint\":\n case \"string\":\n case \"number\":\n invokeCallback = !0;\n break;\n case \"object\":\n switch (children.$$typeof) {\n case REACT_ELEMENT_TYPE:\n case REACT_PORTAL_TYPE:\n invokeCallback = !0;\n break;\n case REACT_LAZY_TYPE:\n return (\n (invokeCallback = children._init),\n mapIntoArray(\n invokeCallback(children._payload),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n )\n );\n }\n }\n if (invokeCallback)\n return (\n (callback = callback(children)),\n (invokeCallback =\n \"\" === nameSoFar ? \".\" + getElementKey(children, 0) : nameSoFar),\n isArrayImpl(callback)\n ? ((escapedPrefix = \"\"),\n null != invokeCallback &&\n (escapedPrefix =\n invokeCallback.replace(userProvidedKeyEscapeRegex, \"$&/\") + \"/\"),\n mapIntoArray(callback, array, escapedPrefix, \"\", function (c) {\n return c;\n }))\n : null != callback &&\n (isValidElement(callback) &&\n (callback = cloneAndReplaceKey(\n callback,\n escapedPrefix +\n (null == callback.key ||\n (children && children.key === callback.key)\n ? \"\"\n : (\"\" + callback.key).replace(\n userProvidedKeyEscapeRegex,\n \"$&/\"\n ) + \"/\") +\n invokeCallback\n )),\n array.push(callback)),\n 1\n );\n invokeCallback = 0;\n var nextNamePrefix = \"\" === nameSoFar ? \".\" : nameSoFar + \":\";\n if (isArrayImpl(children))\n for (var i = 0; i < children.length; i++)\n (nameSoFar = children[i]),\n (type = nextNamePrefix + getElementKey(nameSoFar, i)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (((i = getIteratorFn(children)), \"function\" === typeof i))\n for (\n children = i.call(children), i = 0;\n !(nameSoFar = children.next()).done;\n\n )\n (nameSoFar = nameSoFar.value),\n (type = nextNamePrefix + getElementKey(nameSoFar, i++)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (\"object\" === type) {\n if (\"function\" === typeof children.then)\n return mapIntoArray(\n resolveThenable(children),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n );\n array = String(children);\n throw Error(\n \"Objects are not valid as a React child (found: \" +\n (\"[object Object]\" === array\n ? \"object with keys {\" + Object.keys(children).join(\", \") + \"}\"\n : array) +\n \"). If you meant to render a collection of children, use an array instead.\"\n );\n }\n return invokeCallback;\n}\nfunction mapChildren(children, func, context) {\n if (null == children) return children;\n var result = [],\n count = 0;\n mapIntoArray(children, result, \"\", \"\", function (child) {\n return func.call(context, child, count++);\n });\n return result;\n}\nfunction lazyInitializer(payload) {\n if (-1 === payload._status) {\n var ctor = payload._result;\n ctor = ctor();\n ctor.then(\n function (moduleObject) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 1), (payload._result = moduleObject);\n },\n function (error) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 2), (payload._result = error);\n }\n );\n -1 === payload._status && ((payload._status = 0), (payload._result = ctor));\n }\n if (1 === payload._status) return payload._result.default;\n throw payload._result;\n}\nvar reportGlobalError =\n \"function\" === typeof reportError\n ? reportError\n : function (error) {\n if (\n \"object\" === typeof window &&\n \"function\" === typeof window.ErrorEvent\n ) {\n var event = new window.ErrorEvent(\"error\", {\n bubbles: !0,\n cancelable: !0,\n message:\n \"object\" === typeof error &&\n null !== error &&\n \"string\" === typeof error.message\n ? String(error.message)\n : String(error),\n error: error\n });\n if (!window.dispatchEvent(event)) return;\n } else if (\n \"object\" === typeof process &&\n \"function\" === typeof process.emit\n ) {\n process.emit(\"uncaughtException\", error);\n return;\n }\n console.error(error);\n },\n Children = {\n map: mapChildren,\n forEach: function (children, forEachFunc, forEachContext) {\n mapChildren(\n children,\n function () {\n forEachFunc.apply(this, arguments);\n },\n forEachContext\n );\n },\n count: function (children) {\n var n = 0;\n mapChildren(children, function () {\n n++;\n });\n return n;\n },\n toArray: function (children) {\n return (\n mapChildren(children, function (child) {\n return child;\n }) || []\n );\n },\n only: function (children) {\n if (!isValidElement(children))\n throw Error(\n \"React.Children.only expected to receive a single React element child.\"\n );\n return children;\n }\n };\nexports.Activity = REACT_ACTIVITY_TYPE;\nexports.Children = Children;\nexports.Component = Component;\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.Profiler = REACT_PROFILER_TYPE;\nexports.PureComponent = PureComponent;\nexports.StrictMode = REACT_STRICT_MODE_TYPE;\nexports.Suspense = REACT_SUSPENSE_TYPE;\nexports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE =\n ReactSharedInternals;\nexports.__COMPILER_RUNTIME = {\n __proto__: null,\n c: function (size) {\n return ReactSharedInternals.H.useMemoCache(size);\n }\n};\nexports.cache = function (fn) {\n return function () {\n return fn.apply(null, arguments);\n };\n};\nexports.cacheSignal = function () {\n return null;\n};\nexports.cloneElement = function (element, config, children) {\n if (null === element || void 0 === element)\n throw Error(\n \"The argument must be a React element, but you passed \" + element + \".\"\n );\n var props = assign({}, element.props),\n key = element.key;\n if (null != config)\n for (propName in (void 0 !== config.key && (key = \"\" + config.key), config))\n !hasOwnProperty.call(config, propName) ||\n \"key\" === propName ||\n \"__self\" === propName ||\n \"__source\" === propName ||\n (\"ref\" === propName && void 0 === config.ref) ||\n (props[propName] = config[propName]);\n var propName = arguments.length - 2;\n if (1 === propName) props.children = children;\n else if (1 < propName) {\n for (var childArray = Array(propName), i = 0; i < propName; i++)\n childArray[i] = arguments[i + 2];\n props.children = childArray;\n }\n return ReactElement(element.type, key, props);\n};\nexports.createContext = function (defaultValue) {\n defaultValue = {\n $$typeof: REACT_CONTEXT_TYPE,\n _currentValue: defaultValue,\n _currentValue2: defaultValue,\n _threadCount: 0,\n Provider: null,\n Consumer: null\n };\n defaultValue.Provider = defaultValue;\n defaultValue.Consumer = {\n $$typeof: REACT_CONSUMER_TYPE,\n _context: defaultValue\n };\n return defaultValue;\n};\nexports.createElement = function (type, config, children) {\n var propName,\n props = {},\n key = null;\n if (null != config)\n for (propName in (void 0 !== config.key && (key = \"\" + config.key), config))\n hasOwnProperty.call(config, propName) &&\n \"key\" !== propName &&\n \"__self\" !== propName &&\n \"__source\" !== propName &&\n (props[propName] = config[propName]);\n var childrenLength = arguments.length - 2;\n if (1 === childrenLength) props.children = children;\n else if (1 < childrenLength) {\n for (var childArray = Array(childrenLength), i = 0; i < childrenLength; i++)\n childArray[i] = arguments[i + 2];\n props.children = childArray;\n }\n if (type && type.defaultProps)\n for (propName in ((childrenLength = type.defaultProps), childrenLength))\n void 0 === props[propName] &&\n (props[propName] = childrenLength[propName]);\n return ReactElement(type, key, props);\n};\nexports.createRef = function () {\n return { current: null };\n};\nexports.forwardRef = function (render) {\n return { $$typeof: REACT_FORWARD_REF_TYPE, render: render };\n};\nexports.isValidElement = isValidElement;\nexports.lazy = function (ctor) {\n return {\n $$typeof: REACT_LAZY_TYPE,\n _payload: { _status: -1, _result: ctor },\n _init: lazyInitializer\n };\n};\nexports.memo = function (type, compare) {\n return {\n $$typeof: REACT_MEMO_TYPE,\n type: type,\n compare: void 0 === compare ? null : compare\n };\n};\nexports.startTransition = function (scope) {\n var prevTransition = ReactSharedInternals.T,\n currentTransition = {};\n ReactSharedInternals.T = currentTransition;\n try {\n var returnValue = scope(),\n onStartTransitionFinish = ReactSharedInternals.S;\n null !== onStartTransitionFinish &&\n onStartTransitionFinish(currentTransition, returnValue);\n \"object\" === typeof returnValue &&\n null !== returnValue &&\n \"function\" === typeof returnValue.then &&\n returnValue.then(noop, reportGlobalError);\n } catch (error) {\n reportGlobalError(error);\n } finally {\n null !== prevTransition &&\n null !== currentTransition.types &&\n (prevTransition.types = currentTransition.types),\n (ReactSharedInternals.T = prevTransition);\n }\n};\nexports.unstable_useCacheRefresh = function () {\n return ReactSharedInternals.H.useCacheRefresh();\n};\nexports.use = function (usable) {\n return ReactSharedInternals.H.use(usable);\n};\nexports.useActionState = function (action, initialState, permalink) {\n return ReactSharedInternals.H.useActionState(action, initialState, permalink);\n};\nexports.useCallback = function (callback, deps) {\n return ReactSharedInternals.H.useCallback(callback, deps);\n};\nexports.useContext = function (Context) {\n return ReactSharedInternals.H.useContext(Context);\n};\nexports.useDebugValue = function () {};\nexports.useDeferredValue = function (value, initialValue) {\n return ReactSharedInternals.H.useDeferredValue(value, initialValue);\n};\nexports.useEffect = function (create, deps) {\n return ReactSharedInternals.H.useEffect(create, deps);\n};\nexports.useEffectEvent = function (callback) {\n return ReactSharedInternals.H.useEffectEvent(callback);\n};\nexports.useId = function () {\n return ReactSharedInternals.H.useId();\n};\nexports.useImperativeHandle = function (ref, create, deps) {\n return ReactSharedInternals.H.useImperativeHandle(ref, create, deps);\n};\nexports.useInsertionEffect = function (create, deps) {\n return ReactSharedInternals.H.useInsertionEffect(create, deps);\n};\nexports.useLayoutEffect = function (create, deps) {\n return ReactSharedInternals.H.useLayoutEffect(create, deps);\n};\nexports.useMemo = function (create, deps) {\n return ReactSharedInternals.H.useMemo(create, deps);\n};\nexports.useOptimistic = function (passthrough, reducer) {\n return ReactSharedInternals.H.useOptimistic(passthrough, reducer);\n};\nexports.useReducer = function (reducer, initialArg, init) {\n return ReactSharedInternals.H.useReducer(reducer, initialArg, init);\n};\nexports.useRef = function (initialValue) {\n return ReactSharedInternals.H.useRef(initialValue);\n};\nexports.useState = function (initialState) {\n return ReactSharedInternals.H.useState(initialState);\n};\nexports.useSyncExternalStore = function (\n subscribe,\n getSnapshot,\n getServerSnapshot\n) {\n return ReactSharedInternals.H.useSyncExternalStore(\n subscribe,\n getSnapshot,\n getServerSnapshot\n );\n};\nexports.useTransition = function () {\n return ReactSharedInternals.H.useTransition();\n};\nexports.version = \"19.2.0\";\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.js');\n} else {\n module.exports = require('./cjs/react.development.js');\n}\n","\"use client\";\n\n// src/QueryClientProvider.tsx\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nvar QueryClientContext = React.createContext(\n void 0\n);\nvar useQueryClient = (queryClient) => {\n const client = React.useContext(QueryClientContext);\n if (queryClient) {\n return queryClient;\n }\n if (!client) {\n throw new Error(\"No QueryClient set, use QueryClientProvider to set one\");\n }\n return client;\n};\nvar QueryClientProvider = ({\n client,\n children\n}) => {\n React.useEffect(() => {\n client.mount();\n return () => {\n client.unmount();\n };\n }, [client]);\n return /* @__PURE__ */ jsx(QueryClientContext.Provider, { value: client, children });\n};\nexport {\n QueryClientContext,\n QueryClientProvider,\n useQueryClient\n};\n//# sourceMappingURL=QueryClientProvider.js.map","\"use client\";\n\n// src/IsRestoringProvider.ts\nimport * as React from \"react\";\nvar IsRestoringContext = React.createContext(false);\nvar useIsRestoring = () => React.useContext(IsRestoringContext);\nvar IsRestoringProvider = IsRestoringContext.Provider;\nexport {\n IsRestoringProvider,\n useIsRestoring\n};\n//# sourceMappingURL=IsRestoringProvider.js.map","\"use client\";\n\n// src/QueryErrorResetBoundary.tsx\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nfunction createValue() {\n let isReset = false;\n return {\n clearReset: () => {\n isReset = false;\n },\n reset: () => {\n isReset = true;\n },\n isReset: () => {\n return isReset;\n }\n };\n}\nvar QueryErrorResetBoundaryContext = React.createContext(createValue());\nvar useQueryErrorResetBoundary = () => React.useContext(QueryErrorResetBoundaryContext);\nvar QueryErrorResetBoundary = ({\n children\n}) => {\n const [value] = React.useState(() => createValue());\n return /* @__PURE__ */ jsx(QueryErrorResetBoundaryContext.Provider, { value, children: typeof children === \"function\" ? children(value) : children });\n};\nexport {\n QueryErrorResetBoundary,\n useQueryErrorResetBoundary\n};\n//# sourceMappingURL=QueryErrorResetBoundary.js.map","\"use client\";\n\n// src/errorBoundaryUtils.ts\nimport * as React from \"react\";\nimport { shouldThrowError } from \"@tanstack/query-core\";\nvar ensurePreventErrorBoundaryRetry = (options, errorResetBoundary) => {\n if (options.suspense || options.throwOnError || options.experimental_prefetchInRender) {\n if (!errorResetBoundary.isReset()) {\n options.retryOnMount = false;\n }\n }\n};\nvar useClearResetErrorBoundary = (errorResetBoundary) => {\n React.useEffect(() => {\n errorResetBoundary.clearReset();\n }, [errorResetBoundary]);\n};\nvar getHasError = ({\n result,\n errorResetBoundary,\n throwOnError,\n query,\n suspense\n}) => {\n return result.isError && !errorResetBoundary.isReset() && !result.isFetching && query && (suspense && result.data === void 0 || shouldThrowError(throwOnError, [result.error, query]));\n};\nexport {\n ensurePreventErrorBoundaryRetry,\n getHasError,\n useClearResetErrorBoundary\n};\n//# sourceMappingURL=errorBoundaryUtils.js.map","// src/suspense.ts\nvar defaultThrowOnError = (_error, query) => query.state.data === void 0;\nvar ensureSuspenseTimers = (defaultedOptions) => {\n if (defaultedOptions.suspense) {\n const MIN_SUSPENSE_TIME_MS = 1e3;\n const clamp = (value) => value === \"static\" ? value : Math.max(value ?? MIN_SUSPENSE_TIME_MS, MIN_SUSPENSE_TIME_MS);\n const originalStaleTime = defaultedOptions.staleTime;\n defaultedOptions.staleTime = typeof originalStaleTime === \"function\" ? (...args) => clamp(originalStaleTime(...args)) : clamp(originalStaleTime);\n if (typeof defaultedOptions.gcTime === \"number\") {\n defaultedOptions.gcTime = Math.max(\n defaultedOptions.gcTime,\n MIN_SUSPENSE_TIME_MS\n );\n }\n }\n};\nvar willFetch = (result, isRestoring) => result.isLoading && result.isFetching && !isRestoring;\nvar shouldSuspend = (defaultedOptions, result) => defaultedOptions?.suspense && result.isPending;\nvar fetchOptimistic = (defaultedOptions, observer, errorResetBoundary) => observer.fetchOptimistic(defaultedOptions).catch(() => {\n errorResetBoundary.clearReset();\n});\nexport {\n defaultThrowOnError,\n ensureSuspenseTimers,\n fetchOptimistic,\n shouldSuspend,\n willFetch\n};\n//# sourceMappingURL=suspense.js.map","\"use client\";\n\n// src/useBaseQuery.ts\nimport * as React from \"react\";\nimport { isServer, noop, notifyManager } from \"@tanstack/query-core\";\nimport { useQueryClient } from \"./QueryClientProvider.js\";\nimport { useQueryErrorResetBoundary } from \"./QueryErrorResetBoundary.js\";\nimport {\n ensurePreventErrorBoundaryRetry,\n getHasError,\n useClearResetErrorBoundary\n} from \"./errorBoundaryUtils.js\";\nimport { useIsRestoring } from \"./IsRestoringProvider.js\";\nimport {\n ensureSuspenseTimers,\n fetchOptimistic,\n shouldSuspend,\n willFetch\n} from \"./suspense.js\";\nfunction useBaseQuery(options, Observer, queryClient) {\n if (process.env.NODE_ENV !== \"production\") {\n if (typeof options !== \"object\" || Array.isArray(options)) {\n throw new Error(\n 'Bad argument type. Starting with v5, only the \"Object\" form is allowed when calling query related functions. Please use the error stack to find the culprit call. More info here: https://tanstack.com/query/latest/docs/react/guides/migrating-to-v5#supports-a-single-signature-one-object'\n );\n }\n }\n const isRestoring = useIsRestoring();\n const errorResetBoundary = useQueryErrorResetBoundary();\n const client = useQueryClient(queryClient);\n const defaultedOptions = client.defaultQueryOptions(options);\n client.getDefaultOptions().queries?._experimental_beforeQuery?.(\n defaultedOptions\n );\n if (process.env.NODE_ENV !== \"production\") {\n if (!defaultedOptions.queryFn) {\n console.error(\n `[${defaultedOptions.queryHash}]: No queryFn was passed as an option, and no default queryFn was found. The queryFn parameter is only optional when using a default queryFn. More info here: https://tanstack.com/query/latest/docs/framework/react/guides/default-query-function`\n );\n }\n }\n defaultedOptions._optimisticResults = isRestoring ? \"isRestoring\" : \"optimistic\";\n ensureSuspenseTimers(defaultedOptions);\n ensurePreventErrorBoundaryRetry(defaultedOptions, errorResetBoundary);\n useClearResetErrorBoundary(errorResetBoundary);\n const isNewCacheEntry = !client.getQueryCache().get(defaultedOptions.queryHash);\n const [observer] = React.useState(\n () => new Observer(\n client,\n defaultedOptions\n )\n );\n const result = observer.getOptimisticResult(defaultedOptions);\n const shouldSubscribe = !isRestoring && options.subscribed !== false;\n React.useSyncExternalStore(\n React.useCallback(\n (onStoreChange) => {\n const unsubscribe = shouldSubscribe ? observer.subscribe(notifyManager.batchCalls(onStoreChange)) : noop;\n observer.updateResult();\n return unsubscribe;\n },\n [observer, shouldSubscribe]\n ),\n () => observer.getCurrentResult(),\n () => observer.getCurrentResult()\n );\n React.useEffect(() => {\n observer.setOptions(defaultedOptions);\n }, [defaultedOptions, observer]);\n if (shouldSuspend(defaultedOptions, result)) {\n throw fetchOptimistic(defaultedOptions, observer, errorResetBoundary);\n }\n if (getHasError({\n result,\n errorResetBoundary,\n throwOnError: defaultedOptions.throwOnError,\n query: client.getQueryCache().get(defaultedOptions.queryHash),\n suspense: defaultedOptions.suspense\n })) {\n throw result.error;\n }\n ;\n client.getDefaultOptions().queries?._experimental_afterQuery?.(\n defaultedOptions,\n result\n );\n if (defaultedOptions.experimental_prefetchInRender && !isServer && willFetch(result, isRestoring)) {\n const promise = isNewCacheEntry ? (\n // Fetch immediately on render in order to ensure `.promise` is resolved even if the component is unmounted\n fetchOptimistic(defaultedOptions, observer, errorResetBoundary)\n ) : (\n // subscribe to the \"cache promise\" so that we can finalize the currentThenable once data comes in\n client.getQueryCache().get(defaultedOptions.queryHash)?.promise\n );\n promise?.catch(noop).finally(() => {\n observer.updateResult();\n });\n }\n return !defaultedOptions.notifyOnChangeProps ? observer.trackResult(result) : result;\n}\nexport {\n useBaseQuery\n};\n//# sourceMappingURL=useBaseQuery.js.map","\"use client\";\n\n// src/useSuspenseQuery.ts\nimport { QueryObserver, skipToken } from \"@tanstack/query-core\";\nimport { useBaseQuery } from \"./useBaseQuery.js\";\nimport { defaultThrowOnError } from \"./suspense.js\";\nfunction useSuspenseQuery(options, queryClient) {\n if (process.env.NODE_ENV !== \"production\") {\n if (options.queryFn === skipToken) {\n console.error(\"skipToken is not allowed for useSuspenseQuery\");\n }\n }\n return useBaseQuery(\n {\n ...options,\n enabled: true,\n suspense: true,\n throwOnError: defaultThrowOnError,\n placeholderData: void 0\n },\n QueryObserver,\n queryClient\n );\n}\nexport {\n useSuspenseQuery\n};\n//# sourceMappingURL=useSuspenseQuery.js.map","// src/queryOptions.ts\nfunction queryOptions(options) {\n return options;\n}\nexport {\n queryOptions\n};\n//# sourceMappingURL=queryOptions.js.map","\"use client\";\n\n// src/useMutation.ts\nimport * as React from \"react\";\nimport {\n MutationObserver,\n noop,\n notifyManager,\n shouldThrowError\n} from \"@tanstack/query-core\";\nimport { useQueryClient } from \"./QueryClientProvider.js\";\nfunction useMutation(options, queryClient) {\n const client = useQueryClient(queryClient);\n const [observer] = React.useState(\n () => new MutationObserver(\n client,\n options\n )\n );\n React.useEffect(() => {\n observer.setOptions(options);\n }, [observer, options]);\n const result = React.useSyncExternalStore(\n React.useCallback(\n (onStoreChange) => observer.subscribe(notifyManager.batchCalls(onStoreChange)),\n [observer]\n ),\n () => observer.getCurrentResult(),\n () => observer.getCurrentResult()\n );\n const mutate = React.useCallback(\n (variables, mutateOptions) => {\n observer.mutate(variables, mutateOptions).catch(noop);\n },\n [observer]\n );\n if (result.error && shouldThrowError(observer.options.throwOnError, [result.error])) {\n throw result.error;\n }\n return { ...result, mutate, mutateAsync: result.mutate };\n}\nexport {\n useMutation\n};\n//# sourceMappingURL=useMutation.js.map","var isProduction = process.env.NODE_ENV === 'production';\nvar prefix = 'Invariant failed';\nfunction invariant(condition, message) {\n if (condition) {\n return;\n }\n if (isProduction) {\n throw new Error(prefix);\n }\n var provided = typeof message === 'function' ? message() : message;\n var value = provided ? \"\".concat(prefix, \": \").concat(provided) : prefix;\n throw new Error(value);\n}\n\nexport { invariant as default };\n","import { Derived } from \"./derived.js\";\nconst __storeToDerived = /* @__PURE__ */ new WeakMap();\nconst __derivedToStore = /* @__PURE__ */ new WeakMap();\nconst __depsThatHaveWrittenThisTick = {\n current: []\n};\nlet __isFlushing = false;\nlet __batchDepth = 0;\nconst __pendingUpdates = /* @__PURE__ */ new Set();\nconst __initialBatchValues = /* @__PURE__ */ new Map();\nfunction __flush_internals(relatedVals) {\n const sorted = Array.from(relatedVals).sort((a, b) => {\n if (a instanceof Derived && a.options.deps.includes(b)) return 1;\n if (b instanceof Derived && b.options.deps.includes(a)) return -1;\n return 0;\n });\n for (const derived of sorted) {\n if (__depsThatHaveWrittenThisTick.current.includes(derived)) {\n continue;\n }\n __depsThatHaveWrittenThisTick.current.push(derived);\n derived.recompute();\n const stores = __derivedToStore.get(derived);\n if (stores) {\n for (const store of stores) {\n const relatedLinkedDerivedVals = __storeToDerived.get(store);\n if (!relatedLinkedDerivedVals) continue;\n __flush_internals(relatedLinkedDerivedVals);\n }\n }\n }\n}\nfunction __notifyListeners(store) {\n store.listeners.forEach(\n (listener) => listener({\n prevVal: store.prevState,\n currentVal: store.state\n })\n );\n}\nfunction __notifyDerivedListeners(derived) {\n derived.listeners.forEach(\n (listener) => listener({\n prevVal: derived.prevState,\n currentVal: derived.state\n })\n );\n}\nfunction __flush(store) {\n if (__batchDepth > 0 && !__initialBatchValues.has(store)) {\n __initialBatchValues.set(store, store.prevState);\n }\n __pendingUpdates.add(store);\n if (__batchDepth > 0) return;\n if (__isFlushing) return;\n try {\n __isFlushing = true;\n while (__pendingUpdates.size > 0) {\n const stores = Array.from(__pendingUpdates);\n __pendingUpdates.clear();\n for (const store2 of stores) {\n const prevState = __initialBatchValues.get(store2) ?? store2.prevState;\n store2.prevState = prevState;\n __notifyListeners(store2);\n }\n for (const store2 of stores) {\n const derivedVals = __storeToDerived.get(store2);\n if (!derivedVals) continue;\n __depsThatHaveWrittenThisTick.current.push(store2);\n __flush_internals(derivedVals);\n }\n for (const store2 of stores) {\n const derivedVals = __storeToDerived.get(store2);\n if (!derivedVals) continue;\n for (const derived of derivedVals) {\n __notifyDerivedListeners(derived);\n }\n }\n }\n } finally {\n __isFlushing = false;\n __depsThatHaveWrittenThisTick.current = [];\n __initialBatchValues.clear();\n }\n}\nfunction batch(fn) {\n __batchDepth++;\n try {\n fn();\n } finally {\n __batchDepth--;\n if (__batchDepth === 0) {\n const pendingUpdateToFlush = Array.from(__pendingUpdates)[0];\n if (pendingUpdateToFlush) {\n __flush(pendingUpdateToFlush);\n }\n }\n }\n}\nexport {\n __depsThatHaveWrittenThisTick,\n __derivedToStore,\n __flush,\n __storeToDerived,\n batch\n};\n//# sourceMappingURL=scheduler.js.map\n","function isUpdaterFunction(updater) {\n return typeof updater === \"function\";\n}\nexport {\n isUpdaterFunction\n};\n//# sourceMappingURL=types.js.map\n","import { __flush } from \"./scheduler.js\";\nimport { isUpdaterFunction } from \"./types.js\";\nclass Store {\n constructor(initialState, options) {\n this.listeners = /* @__PURE__ */ new Set();\n this.subscribe = (listener) => {\n var _a, _b;\n this.listeners.add(listener);\n const unsub = (_b = (_a = this.options) == null ? void 0 : _a.onSubscribe) == null ? void 0 : _b.call(_a, listener, this);\n return () => {\n this.listeners.delete(listener);\n unsub == null ? void 0 : unsub();\n };\n };\n this.prevState = initialState;\n this.state = initialState;\n this.options = options;\n }\n setState(updater) {\n var _a, _b, _c;\n this.prevState = this.state;\n if ((_a = this.options) == null ? void 0 : _a.updateFn) {\n this.state = this.options.updateFn(this.prevState)(updater);\n } else {\n if (isUpdaterFunction(updater)) {\n this.state = updater(this.prevState);\n } else {\n this.state = updater;\n }\n }\n (_c = (_b = this.options) == null ? void 0 : _b.onUpdate) == null ? void 0 : _c.call(_b);\n __flush(this);\n }\n}\nexport {\n Store\n};\n//# sourceMappingURL=store.js.map\n","import { Store } from \"./store.js\";\nimport { __storeToDerived, __derivedToStore } from \"./scheduler.js\";\nclass Derived {\n constructor(options) {\n this.listeners = /* @__PURE__ */ new Set();\n this._subscriptions = [];\n this.lastSeenDepValues = [];\n this.getDepVals = () => {\n const prevDepVals = [];\n const currDepVals = [];\n for (const dep of this.options.deps) {\n prevDepVals.push(dep.prevState);\n currDepVals.push(dep.state);\n }\n this.lastSeenDepValues = currDepVals;\n return {\n prevDepVals,\n currDepVals,\n prevVal: this.prevState ?? void 0\n };\n };\n this.recompute = () => {\n var _a, _b;\n this.prevState = this.state;\n const { prevDepVals, currDepVals, prevVal } = this.getDepVals();\n this.state = this.options.fn({\n prevDepVals,\n currDepVals,\n prevVal\n });\n (_b = (_a = this.options).onUpdate) == null ? void 0 : _b.call(_a);\n };\n this.checkIfRecalculationNeededDeeply = () => {\n for (const dep of this.options.deps) {\n if (dep instanceof Derived) {\n dep.checkIfRecalculationNeededDeeply();\n }\n }\n let shouldRecompute = false;\n const lastSeenDepValues = this.lastSeenDepValues;\n const { currDepVals } = this.getDepVals();\n for (let i = 0; i < currDepVals.length; i++) {\n if (currDepVals[i] !== lastSeenDepValues[i]) {\n shouldRecompute = true;\n break;\n }\n }\n if (shouldRecompute) {\n this.recompute();\n }\n };\n this.mount = () => {\n this.registerOnGraph();\n this.checkIfRecalculationNeededDeeply();\n return () => {\n this.unregisterFromGraph();\n for (const cleanup of this._subscriptions) {\n cleanup();\n }\n };\n };\n this.subscribe = (listener) => {\n var _a, _b;\n this.listeners.add(listener);\n const unsub = (_b = (_a = this.options).onSubscribe) == null ? void 0 : _b.call(_a, listener, this);\n return () => {\n this.listeners.delete(listener);\n unsub == null ? void 0 : unsub();\n };\n };\n this.options = options;\n this.state = options.fn({\n prevDepVals: void 0,\n prevVal: void 0,\n currDepVals: this.getDepVals().currDepVals\n });\n }\n registerOnGraph(deps = this.options.deps) {\n for (const dep of deps) {\n if (dep instanceof Derived) {\n dep.registerOnGraph();\n this.registerOnGraph(dep.options.deps);\n } else if (dep instanceof Store) {\n let relatedLinkedDerivedVals = __storeToDerived.get(dep);\n if (!relatedLinkedDerivedVals) {\n relatedLinkedDerivedVals = /* @__PURE__ */ new Set();\n __storeToDerived.set(dep, relatedLinkedDerivedVals);\n }\n relatedLinkedDerivedVals.add(this);\n let relatedStores = __derivedToStore.get(this);\n if (!relatedStores) {\n relatedStores = /* @__PURE__ */ new Set();\n __derivedToStore.set(this, relatedStores);\n }\n relatedStores.add(dep);\n }\n }\n }\n unregisterFromGraph(deps = this.options.deps) {\n for (const dep of deps) {\n if (dep instanceof Derived) {\n this.unregisterFromGraph(dep.options.deps);\n } else if (dep instanceof Store) {\n const relatedLinkedDerivedVals = __storeToDerived.get(dep);\n if (relatedLinkedDerivedVals) {\n relatedLinkedDerivedVals.delete(this);\n }\n const relatedStores = __derivedToStore.get(this);\n if (relatedStores) {\n relatedStores.delete(dep);\n }\n }\n }\n }\n}\nexport {\n Derived\n};\n//# sourceMappingURL=derived.js.map\n","const stateIndexKey = \"__TSR_index\";\nconst popStateEvent = \"popstate\";\nconst beforeUnloadEvent = \"beforeunload\";\nfunction createHistory(opts) {\n let location = opts.getLocation();\n const subscribers = /* @__PURE__ */ new Set();\n const notify = (action) => {\n location = opts.getLocation();\n subscribers.forEach((subscriber) => subscriber({ location, action }));\n };\n const handleIndexChange = (action) => {\n if (opts.notifyOnIndexChange ?? true) notify(action);\n else location = opts.getLocation();\n };\n const tryNavigation = async ({\n task,\n navigateOpts,\n ...actionInfo\n }) => {\n var _a, _b;\n const ignoreBlocker = (navigateOpts == null ? void 0 : navigateOpts.ignoreBlocker) ?? false;\n if (ignoreBlocker) {\n task();\n return;\n }\n const blockers = ((_a = opts.getBlockers) == null ? void 0 : _a.call(opts)) ?? [];\n const isPushOrReplace = actionInfo.type === \"PUSH\" || actionInfo.type === \"REPLACE\";\n if (typeof document !== \"undefined\" && blockers.length && isPushOrReplace) {\n for (const blocker of blockers) {\n const nextLocation = parseHref(actionInfo.path, actionInfo.state);\n const isBlocked = await blocker.blockerFn({\n currentLocation: location,\n nextLocation,\n action: actionInfo.type\n });\n if (isBlocked) {\n (_b = opts.onBlocked) == null ? void 0 : _b.call(opts);\n return;\n }\n }\n }\n task();\n };\n return {\n get location() {\n return location;\n },\n get length() {\n return opts.getLength();\n },\n subscribers,\n subscribe: (cb) => {\n subscribers.add(cb);\n return () => {\n subscribers.delete(cb);\n };\n },\n push: (path, state, navigateOpts) => {\n const currentIndex = location.state[stateIndexKey];\n state = assignKeyAndIndex(currentIndex + 1, state);\n tryNavigation({\n task: () => {\n opts.pushState(path, state);\n notify({ type: \"PUSH\" });\n },\n navigateOpts,\n type: \"PUSH\",\n path,\n state\n });\n },\n replace: (path, state, navigateOpts) => {\n const currentIndex = location.state[stateIndexKey];\n state = assignKeyAndIndex(currentIndex, state);\n tryNavigation({\n task: () => {\n opts.replaceState(path, state);\n notify({ type: \"REPLACE\" });\n },\n navigateOpts,\n type: \"REPLACE\",\n path,\n state\n });\n },\n go: (index, navigateOpts) => {\n tryNavigation({\n task: () => {\n opts.go(index);\n handleIndexChange({ type: \"GO\", index });\n },\n navigateOpts,\n type: \"GO\"\n });\n },\n back: (navigateOpts) => {\n tryNavigation({\n task: () => {\n opts.back((navigateOpts == null ? void 0 : navigateOpts.ignoreBlocker) ?? false);\n handleIndexChange({ type: \"BACK\" });\n },\n navigateOpts,\n type: \"BACK\"\n });\n },\n forward: (navigateOpts) => {\n tryNavigation({\n task: () => {\n opts.forward((navigateOpts == null ? void 0 : navigateOpts.ignoreBlocker) ?? false);\n handleIndexChange({ type: \"FORWARD\" });\n },\n navigateOpts,\n type: \"FORWARD\"\n });\n },\n canGoBack: () => location.state[stateIndexKey] !== 0,\n createHref: (str) => opts.createHref(str),\n block: (blocker) => {\n var _a;\n if (!opts.setBlockers) return () => {\n };\n const blockers = ((_a = opts.getBlockers) == null ? void 0 : _a.call(opts)) ?? [];\n opts.setBlockers([...blockers, blocker]);\n return () => {\n var _a2, _b;\n const blockers2 = ((_a2 = opts.getBlockers) == null ? void 0 : _a2.call(opts)) ?? [];\n (_b = opts.setBlockers) == null ? void 0 : _b.call(opts, blockers2.filter((b) => b !== blocker));\n };\n },\n flush: () => {\n var _a;\n return (_a = opts.flush) == null ? void 0 : _a.call(opts);\n },\n destroy: () => {\n var _a;\n return (_a = opts.destroy) == null ? void 0 : _a.call(opts);\n },\n notify\n };\n}\nfunction assignKeyAndIndex(index, state) {\n if (!state) {\n state = {};\n }\n const key = createRandomKey();\n return {\n ...state,\n key,\n // TODO: Remove in v2 - use __TSR_key instead\n __TSR_key: key,\n [stateIndexKey]: index\n };\n}\nfunction createBrowserHistory(opts) {\n var _a, _b;\n const win = (opts == null ? void 0 : opts.window) ?? (typeof document !== \"undefined\" ? window : void 0);\n const originalPushState = win.history.pushState;\n const originalReplaceState = win.history.replaceState;\n let blockers = [];\n const _getBlockers = () => blockers;\n const _setBlockers = (newBlockers) => blockers = newBlockers;\n const createHref = (opts == null ? void 0 : opts.createHref) ?? ((path) => path);\n const parseLocation = (opts == null ? void 0 : opts.parseLocation) ?? (() => parseHref(\n `${win.location.pathname}${win.location.search}${win.location.hash}`,\n win.history.state\n ));\n if (!((_a = win.history.state) == null ? void 0 : _a.__TSR_key) && !((_b = win.history.state) == null ? void 0 : _b.key)) {\n const addedKey = createRandomKey();\n win.history.replaceState(\n {\n [stateIndexKey]: 0,\n key: addedKey,\n // TODO: Remove in v2 - use __TSR_key instead\n __TSR_key: addedKey\n },\n \"\"\n );\n }\n let currentLocation = parseLocation();\n let rollbackLocation;\n let nextPopIsGo = false;\n let ignoreNextPop = false;\n let skipBlockerNextPop = false;\n let ignoreNextBeforeUnload = false;\n const getLocation = () => currentLocation;\n let next;\n let scheduled;\n const flush = () => {\n if (!next) {\n return;\n }\n history._ignoreSubscribers = true;\n (next.isPush ? win.history.pushState : win.history.replaceState)(\n next.state,\n \"\",\n next.href\n );\n history._ignoreSubscribers = false;\n next = void 0;\n scheduled = void 0;\n rollbackLocation = void 0;\n };\n const queueHistoryAction = (type, destHref, state) => {\n const href = createHref(destHref);\n if (!scheduled) {\n rollbackLocation = currentLocation;\n }\n currentLocation = parseHref(destHref, state);\n next = {\n href,\n state,\n isPush: (next == null ? void 0 : next.isPush) || type === \"push\"\n };\n if (!scheduled) {\n scheduled = Promise.resolve().then(() => flush());\n }\n };\n const onPushPop = (type) => {\n currentLocation = parseLocation();\n history.notify({ type });\n };\n const onPushPopEvent = async () => {\n if (ignoreNextPop) {\n ignoreNextPop = false;\n return;\n }\n const nextLocation = parseLocation();\n const delta = nextLocation.state[stateIndexKey] - currentLocation.state[stateIndexKey];\n const isForward = delta === 1;\n const isBack = delta === -1;\n const isGo = !isForward && !isBack || nextPopIsGo;\n nextPopIsGo = false;\n const action = isGo ? \"GO\" : isBack ? \"BACK\" : \"FORWARD\";\n const notify = isGo ? {\n type: \"GO\",\n index: delta\n } : {\n type: isBack ? \"BACK\" : \"FORWARD\"\n };\n if (skipBlockerNextPop) {\n skipBlockerNextPop = false;\n } else {\n const blockers2 = _getBlockers();\n if (typeof document !== \"undefined\" && blockers2.length) {\n for (const blocker of blockers2) {\n const isBlocked = await blocker.blockerFn({\n currentLocation,\n nextLocation,\n action\n });\n if (isBlocked) {\n ignoreNextPop = true;\n win.history.go(1);\n history.notify(notify);\n return;\n }\n }\n }\n }\n currentLocation = parseLocation();\n history.notify(notify);\n };\n const onBeforeUnload = (e) => {\n if (ignoreNextBeforeUnload) {\n ignoreNextBeforeUnload = false;\n return;\n }\n let shouldBlock = false;\n const blockers2 = _getBlockers();\n if (typeof document !== \"undefined\" && blockers2.length) {\n for (const blocker of blockers2) {\n const shouldHaveBeforeUnload = blocker.enableBeforeUnload ?? true;\n if (shouldHaveBeforeUnload === true) {\n shouldBlock = true;\n break;\n }\n if (typeof shouldHaveBeforeUnload === \"function\" && shouldHaveBeforeUnload() === true) {\n shouldBlock = true;\n break;\n }\n }\n }\n if (shouldBlock) {\n e.preventDefault();\n return e.returnValue = \"\";\n }\n return;\n };\n const history = createHistory({\n getLocation,\n getLength: () => win.history.length,\n pushState: (href, state) => queueHistoryAction(\"push\", href, state),\n replaceState: (href, state) => queueHistoryAction(\"replace\", href, state),\n back: (ignoreBlocker) => {\n if (ignoreBlocker) skipBlockerNextPop = true;\n ignoreNextBeforeUnload = true;\n return win.history.back();\n },\n forward: (ignoreBlocker) => {\n if (ignoreBlocker) skipBlockerNextPop = true;\n ignoreNextBeforeUnload = true;\n win.history.forward();\n },\n go: (n) => {\n nextPopIsGo = true;\n win.history.go(n);\n },\n createHref: (href) => createHref(href),\n flush,\n destroy: () => {\n win.history.pushState = originalPushState;\n win.history.replaceState = originalReplaceState;\n win.removeEventListener(beforeUnloadEvent, onBeforeUnload, {\n capture: true\n });\n win.removeEventListener(popStateEvent, onPushPopEvent);\n },\n onBlocked: () => {\n if (rollbackLocation && currentLocation !== rollbackLocation) {\n currentLocation = rollbackLocation;\n }\n },\n getBlockers: _getBlockers,\n setBlockers: _setBlockers,\n notifyOnIndexChange: false\n });\n win.addEventListener(beforeUnloadEvent, onBeforeUnload, { capture: true });\n win.addEventListener(popStateEvent, onPushPopEvent);\n win.history.pushState = function(...args) {\n const res = originalPushState.apply(win.history, args);\n if (!history._ignoreSubscribers) onPushPop(\"PUSH\");\n return res;\n };\n win.history.replaceState = function(...args) {\n const res = originalReplaceState.apply(win.history, args);\n if (!history._ignoreSubscribers) onPushPop(\"REPLACE\");\n return res;\n };\n return history;\n}\nfunction createHashHistory(opts) {\n const win = (opts == null ? void 0 : opts.window) ?? (typeof document !== \"undefined\" ? window : void 0);\n return createBrowserHistory({\n window: win,\n parseLocation: () => {\n const hashSplit = win.location.hash.split(\"#\").slice(1);\n const pathPart = hashSplit[0] ?? \"/\";\n const searchPart = win.location.search;\n const hashEntries = hashSplit.slice(1);\n const hashPart = hashEntries.length === 0 ? \"\" : `#${hashEntries.join(\"#\")}`;\n const hashHref = `${pathPart}${searchPart}${hashPart}`;\n return parseHref(hashHref, win.history.state);\n },\n createHref: (href) => `${win.location.pathname}${win.location.search}#${href}`\n });\n}\nfunction createMemoryHistory(opts = {\n initialEntries: [\"/\"]\n}) {\n const entries = opts.initialEntries;\n let index = opts.initialIndex ? Math.min(Math.max(opts.initialIndex, 0), entries.length - 1) : entries.length - 1;\n const states = entries.map(\n (_entry, index2) => assignKeyAndIndex(index2, void 0)\n );\n const getLocation = () => parseHref(entries[index], states[index]);\n return createHistory({\n getLocation,\n getLength: () => entries.length,\n pushState: (path, state) => {\n if (index < entries.length - 1) {\n entries.splice(index + 1);\n states.splice(index + 1);\n }\n states.push(state);\n entries.push(path);\n index = Math.max(entries.length - 1, 0);\n },\n replaceState: (path, state) => {\n states[index] = state;\n entries[index] = path;\n },\n back: () => {\n index = Math.max(index - 1, 0);\n },\n forward: () => {\n index = Math.min(index + 1, entries.length - 1);\n },\n go: (n) => {\n index = Math.min(Math.max(index + n, 0), entries.length - 1);\n },\n createHref: (path) => path\n });\n}\nfunction parseHref(href, state) {\n const hashIndex = href.indexOf(\"#\");\n const searchIndex = href.indexOf(\"?\");\n const addedKey = createRandomKey();\n return {\n href,\n pathname: href.substring(\n 0,\n hashIndex > 0 ? searchIndex > 0 ? Math.min(hashIndex, searchIndex) : hashIndex : searchIndex > 0 ? searchIndex : href.length\n ),\n hash: hashIndex > -1 ? href.substring(hashIndex) : \"\",\n search: searchIndex > -1 ? href.slice(searchIndex, hashIndex === -1 ? void 0 : hashIndex) : \"\",\n state: state || { [stateIndexKey]: 0, key: addedKey, __TSR_key: addedKey }\n };\n}\nfunction createRandomKey() {\n return (Math.random() + 1).toString(36).substring(7);\n}\nexport {\n createBrowserHistory,\n createHashHistory,\n createHistory,\n createMemoryHistory,\n parseHref\n};\n//# sourceMappingURL=index.js.map\n","function last(arr) {\n return arr[arr.length - 1];\n}\nfunction isFunction(d) {\n return typeof d === \"function\";\n}\nfunction functionalUpdate(updater, previous) {\n if (isFunction(updater)) {\n return updater(previous);\n }\n return updater;\n}\nconst hasOwn = Object.prototype.hasOwnProperty;\nfunction replaceEqualDeep(prev, _next) {\n if (prev === _next) {\n return prev;\n }\n const next = _next;\n const array = isPlainArray(prev) && isPlainArray(next);\n if (!array && !(isPlainObject(prev) && isPlainObject(next))) return next;\n const prevItems = array ? prev : getEnumerableOwnKeys(prev);\n if (!prevItems) return next;\n const nextItems = array ? next : getEnumerableOwnKeys(next);\n if (!nextItems) return next;\n const prevSize = prevItems.length;\n const nextSize = nextItems.length;\n const copy = array ? new Array(nextSize) : {};\n let equalItems = 0;\n for (let i = 0; i < nextSize; i++) {\n const key = array ? i : nextItems[i];\n const p = prev[key];\n const n = next[key];\n if (p === n) {\n copy[key] = p;\n if (array ? i < prevSize : hasOwn.call(prev, key)) equalItems++;\n continue;\n }\n if (p === null || n === null || typeof p !== \"object\" || typeof n !== \"object\") {\n copy[key] = n;\n continue;\n }\n const v = replaceEqualDeep(p, n);\n copy[key] = v;\n if (v === p) equalItems++;\n }\n return prevSize === nextSize && equalItems === prevSize ? prev : copy;\n}\nfunction getEnumerableOwnKeys(o) {\n const keys = [];\n const names = Object.getOwnPropertyNames(o);\n for (const name of names) {\n if (!Object.prototype.propertyIsEnumerable.call(o, name)) return false;\n keys.push(name);\n }\n const symbols = Object.getOwnPropertySymbols(o);\n for (const symbol of symbols) {\n if (!Object.prototype.propertyIsEnumerable.call(o, symbol)) return false;\n keys.push(symbol);\n }\n return keys;\n}\nfunction isPlainObject(o) {\n if (!hasObjectPrototype(o)) {\n return false;\n }\n const ctor = o.constructor;\n if (typeof ctor === \"undefined\") {\n return true;\n }\n const prot = ctor.prototype;\n if (!hasObjectPrototype(prot)) {\n return false;\n }\n if (!prot.hasOwnProperty(\"isPrototypeOf\")) {\n return false;\n }\n return true;\n}\nfunction hasObjectPrototype(o) {\n return Object.prototype.toString.call(o) === \"[object Object]\";\n}\nfunction isPlainArray(value) {\n return Array.isArray(value) && value.length === Object.keys(value).length;\n}\nfunction deepEqual(a, b, opts) {\n if (a === b) {\n return true;\n }\n if (typeof a !== typeof b) {\n return false;\n }\n if (Array.isArray(a) && Array.isArray(b)) {\n if (a.length !== b.length) return false;\n for (let i = 0, l = a.length; i < l; i++) {\n if (!deepEqual(a[i], b[i], opts)) return false;\n }\n return true;\n }\n if (isPlainObject(a) && isPlainObject(b)) {\n const ignoreUndefined = (opts == null ? void 0 : opts.ignoreUndefined) ?? true;\n if (opts == null ? void 0 : opts.partial) {\n for (const k in b) {\n if (!ignoreUndefined || b[k] !== void 0) {\n if (!deepEqual(a[k], b[k], opts)) return false;\n }\n }\n return true;\n }\n let aCount = 0;\n if (!ignoreUndefined) {\n aCount = Object.keys(a).length;\n } else {\n for (const k in a) {\n if (a[k] !== void 0) aCount++;\n }\n }\n let bCount = 0;\n for (const k in b) {\n if (!ignoreUndefined || b[k] !== void 0) {\n bCount++;\n if (bCount > aCount || !deepEqual(a[k], b[k], opts)) return false;\n }\n }\n return aCount === bCount;\n }\n return false;\n}\nfunction createControlledPromise(onResolve) {\n let resolveLoadPromise;\n let rejectLoadPromise;\n const controlledPromise = new Promise((resolve, reject) => {\n resolveLoadPromise = resolve;\n rejectLoadPromise = reject;\n });\n controlledPromise.status = \"pending\";\n controlledPromise.resolve = (value) => {\n controlledPromise.status = \"resolved\";\n controlledPromise.value = value;\n resolveLoadPromise(value);\n onResolve == null ? void 0 : onResolve(value);\n };\n controlledPromise.reject = (e) => {\n controlledPromise.status = \"rejected\";\n rejectLoadPromise(e);\n };\n return controlledPromise;\n}\nfunction escapeJSON(jsonString) {\n return jsonString.replace(/\\\\/g, \"\\\\\\\\\").replace(/'/g, \"\\\\'\").replace(/\"/g, '\\\\\"');\n}\nfunction shallow(objA, objB) {\n if (Object.is(objA, objB)) {\n return true;\n }\n if (typeof objA !== \"object\" || objA === null || typeof objB !== \"object\" || objB === null) {\n return false;\n }\n const keysA = Object.keys(objA);\n if (keysA.length !== Object.keys(objB).length) {\n return false;\n }\n for (const item of keysA) {\n if (!hasOwn.call(objB, item) || !Object.is(objA[item], objB[item])) {\n return false;\n }\n }\n return true;\n}\nfunction isModuleNotFoundError(error) {\n if (typeof (error == null ? void 0 : error.message) !== \"string\") return false;\n return error.message.startsWith(\"Failed to fetch dynamically imported module\") || error.message.startsWith(\"error loading dynamically imported module\") || error.message.startsWith(\"Importing a module script failed\");\n}\nfunction isPromise(value) {\n return Boolean(\n value && typeof value === \"object\" && typeof value.then === \"function\"\n );\n}\nfunction findLast(array, predicate) {\n for (let i = array.length - 1; i >= 0; i--) {\n const item = array[i];\n if (predicate(item)) return item;\n }\n return void 0;\n}\nexport {\n createControlledPromise,\n deepEqual,\n escapeJSON,\n findLast,\n functionalUpdate,\n isModuleNotFoundError,\n isPlainArray,\n isPlainObject,\n isPromise,\n last,\n replaceEqualDeep,\n shallow\n};\n//# sourceMappingURL=utils.js.map\n","import { last } from \"./utils.js\";\nconst SEGMENT_TYPE_PATHNAME = 0;\nconst SEGMENT_TYPE_PARAM = 1;\nconst SEGMENT_TYPE_WILDCARD = 2;\nconst SEGMENT_TYPE_OPTIONAL_PARAM = 3;\nfunction joinPaths(paths) {\n return cleanPath(\n paths.filter((val) => {\n return val !== void 0;\n }).join(\"/\")\n );\n}\nfunction cleanPath(path) {\n return path.replace(/\\/{2,}/g, \"/\");\n}\nfunction trimPathLeft(path) {\n return path === \"/\" ? path : path.replace(/^\\/{1,}/, \"\");\n}\nfunction trimPathRight(path) {\n return path === \"/\" ? path : path.replace(/\\/{1,}$/, \"\");\n}\nfunction trimPath(path) {\n return trimPathRight(trimPathLeft(path));\n}\nfunction removeTrailingSlash(value, basepath) {\n if ((value == null ? void 0 : value.endsWith(\"/\")) && value !== \"/\" && value !== `${basepath}/`) {\n return value.slice(0, -1);\n }\n return value;\n}\nfunction exactPathTest(pathName1, pathName2, basepath) {\n return removeTrailingSlash(pathName1, basepath) === removeTrailingSlash(pathName2, basepath);\n}\nfunction segmentToString(segment) {\n const { type, value } = segment;\n if (type === SEGMENT_TYPE_PATHNAME) {\n return value;\n }\n const { prefixSegment, suffixSegment } = segment;\n if (type === SEGMENT_TYPE_PARAM) {\n const param = value.substring(1);\n if (prefixSegment && suffixSegment) {\n return `${prefixSegment}{$${param}}${suffixSegment}`;\n } else if (prefixSegment) {\n return `${prefixSegment}{$${param}}`;\n } else if (suffixSegment) {\n return `{$${param}}${suffixSegment}`;\n }\n }\n if (type === SEGMENT_TYPE_OPTIONAL_PARAM) {\n const param = value.substring(1);\n if (prefixSegment && suffixSegment) {\n return `${prefixSegment}{-$${param}}${suffixSegment}`;\n } else if (prefixSegment) {\n return `${prefixSegment}{-$${param}}`;\n } else if (suffixSegment) {\n return `{-$${param}}${suffixSegment}`;\n }\n return `{-$${param}}`;\n }\n if (type === SEGMENT_TYPE_WILDCARD) {\n if (prefixSegment && suffixSegment) {\n return `${prefixSegment}{$}${suffixSegment}`;\n } else if (prefixSegment) {\n return `${prefixSegment}{$}`;\n } else if (suffixSegment) {\n return `{$}${suffixSegment}`;\n }\n }\n return value;\n}\nfunction resolvePath({\n basepath,\n base,\n to,\n trailingSlash = \"never\",\n caseSensitive,\n parseCache\n}) {\n var _a;\n base = removeBasepath(basepath, base, caseSensitive);\n to = removeBasepath(basepath, to, caseSensitive);\n let baseSegments = parsePathname(base, parseCache).slice();\n const toSegments = parsePathname(to, parseCache);\n if (baseSegments.length > 1 && ((_a = last(baseSegments)) == null ? void 0 : _a.value) === \"/\") {\n baseSegments.pop();\n }\n for (let index = 0, length = toSegments.length; index < length; index++) {\n const toSegment = toSegments[index];\n const value = toSegment.value;\n if (value === \"/\") {\n if (!index) {\n baseSegments = [toSegment];\n } else if (index === length - 1) {\n baseSegments.push(toSegment);\n } else ;\n } else if (value === \"..\") {\n baseSegments.pop();\n } else if (value === \".\") ;\n else {\n baseSegments.push(toSegment);\n }\n }\n if (baseSegments.length > 1) {\n if (last(baseSegments).value === \"/\") {\n if (trailingSlash === \"never\") {\n baseSegments.pop();\n }\n } else if (trailingSlash === \"always\") {\n baseSegments.push({ type: SEGMENT_TYPE_PATHNAME, value: \"/\" });\n }\n }\n const segmentValues = baseSegments.map(segmentToString);\n const joined = joinPaths([basepath, ...segmentValues]);\n return joined;\n}\nconst parsePathname = (pathname, cache) => {\n if (!pathname) return [];\n const cached = cache == null ? void 0 : cache.get(pathname);\n if (cached) return cached;\n const parsed = baseParsePathname(pathname);\n cache == null ? void 0 : cache.set(pathname, parsed);\n return parsed;\n};\nconst PARAM_RE = /^\\$.{1,}$/;\nconst PARAM_W_CURLY_BRACES_RE = /^(.*?)\\{(\\$[a-zA-Z_$][a-zA-Z0-9_$]*)\\}(.*)$/;\nconst OPTIONAL_PARAM_W_CURLY_BRACES_RE = /^(.*?)\\{-(\\$[a-zA-Z_$][a-zA-Z0-9_$]*)\\}(.*)$/;\nconst WILDCARD_RE = /^\\$$/;\nconst WILDCARD_W_CURLY_BRACES_RE = /^(.*?)\\{\\$\\}(.*)$/;\nfunction baseParsePathname(pathname) {\n pathname = cleanPath(pathname);\n const segments = [];\n if (pathname.slice(0, 1) === \"/\") {\n pathname = pathname.substring(1);\n segments.push({\n type: SEGMENT_TYPE_PATHNAME,\n value: \"/\"\n });\n }\n if (!pathname) {\n return segments;\n }\n const split = pathname.split(\"/\").filter(Boolean);\n segments.push(\n ...split.map((part) => {\n const wildcardBracesMatch = part.match(WILDCARD_W_CURLY_BRACES_RE);\n if (wildcardBracesMatch) {\n const prefix = wildcardBracesMatch[1];\n const suffix = wildcardBracesMatch[2];\n return {\n type: SEGMENT_TYPE_WILDCARD,\n value: \"$\",\n prefixSegment: prefix || void 0,\n suffixSegment: suffix || void 0\n };\n }\n const optionalParamBracesMatch = part.match(\n OPTIONAL_PARAM_W_CURLY_BRACES_RE\n );\n if (optionalParamBracesMatch) {\n const prefix = optionalParamBracesMatch[1];\n const paramName = optionalParamBracesMatch[2];\n const suffix = optionalParamBracesMatch[3];\n return {\n type: SEGMENT_TYPE_OPTIONAL_PARAM,\n value: paramName,\n // Now just $paramName (no prefix)\n prefixSegment: prefix || void 0,\n suffixSegment: suffix || void 0\n };\n }\n const paramBracesMatch = part.match(PARAM_W_CURLY_BRACES_RE);\n if (paramBracesMatch) {\n const prefix = paramBracesMatch[1];\n const paramName = paramBracesMatch[2];\n const suffix = paramBracesMatch[3];\n return {\n type: SEGMENT_TYPE_PARAM,\n value: \"\" + paramName,\n prefixSegment: prefix || void 0,\n suffixSegment: suffix || void 0\n };\n }\n if (PARAM_RE.test(part)) {\n const paramName = part.substring(1);\n return {\n type: SEGMENT_TYPE_PARAM,\n value: \"$\" + paramName,\n prefixSegment: void 0,\n suffixSegment: void 0\n };\n }\n if (WILDCARD_RE.test(part)) {\n return {\n type: SEGMENT_TYPE_WILDCARD,\n value: \"$\",\n prefixSegment: void 0,\n suffixSegment: void 0\n };\n }\n return {\n type: SEGMENT_TYPE_PATHNAME,\n value: part.includes(\"%25\") ? part.split(\"%25\").map((segment) => decodeURI(segment)).join(\"%25\") : decodeURI(part)\n };\n })\n );\n if (pathname.slice(-1) === \"/\") {\n pathname = pathname.substring(1);\n segments.push({\n type: SEGMENT_TYPE_PATHNAME,\n value: \"/\"\n });\n }\n return segments;\n}\nfunction interpolatePath({\n path,\n params,\n leaveWildcards,\n leaveParams,\n decodeCharMap,\n parseCache\n}) {\n const interpolatedPathSegments = parsePathname(path, parseCache);\n function encodeParam(key) {\n const value = params[key];\n const isValueString = typeof value === \"string\";\n if (key === \"*\" || key === \"_splat\") {\n return isValueString ? encodeURI(value) : value;\n } else {\n return isValueString ? encodePathParam(value, decodeCharMap) : value;\n }\n }\n let isMissingParams = false;\n const usedParams = {};\n const interpolatedPath = joinPaths(\n interpolatedPathSegments.map((segment) => {\n if (segment.type === SEGMENT_TYPE_PATHNAME) {\n return segment.value;\n }\n if (segment.type === SEGMENT_TYPE_WILDCARD) {\n usedParams._splat = params._splat;\n usedParams[\"*\"] = params._splat;\n const segmentPrefix = segment.prefixSegment || \"\";\n const segmentSuffix = segment.suffixSegment || \"\";\n if (!(\"_splat\" in params)) {\n isMissingParams = true;\n if (leaveWildcards) {\n return `${segmentPrefix}${segment.value}${segmentSuffix}`;\n }\n if (segmentPrefix || segmentSuffix) {\n return `${segmentPrefix}${segmentSuffix}`;\n }\n return void 0;\n }\n const value = encodeParam(\"_splat\");\n if (leaveWildcards) {\n return `${segmentPrefix}${segment.value}${value ?? \"\"}${segmentSuffix}`;\n }\n return `${segmentPrefix}${value}${segmentSuffix}`;\n }\n if (segment.type === SEGMENT_TYPE_PARAM) {\n const key = segment.value.substring(1);\n if (!isMissingParams && !(key in params)) {\n isMissingParams = true;\n }\n usedParams[key] = params[key];\n const segmentPrefix = segment.prefixSegment || \"\";\n const segmentSuffix = segment.suffixSegment || \"\";\n if (leaveParams) {\n const value = encodeParam(segment.value);\n return `${segmentPrefix}${segment.value}${value ?? \"\"}${segmentSuffix}`;\n }\n return `${segmentPrefix}${encodeParam(key) ?? \"undefined\"}${segmentSuffix}`;\n }\n if (segment.type === SEGMENT_TYPE_OPTIONAL_PARAM) {\n const key = segment.value.substring(1);\n const segmentPrefix = segment.prefixSegment || \"\";\n const segmentSuffix = segment.suffixSegment || \"\";\n if (!(key in params) || params[key] == null) {\n if (leaveWildcards) {\n return `${segmentPrefix}${key}${segmentSuffix}`;\n }\n if (segmentPrefix || segmentSuffix) {\n return `${segmentPrefix}${segmentSuffix}`;\n }\n return void 0;\n }\n usedParams[key] = params[key];\n if (leaveParams) {\n const value = encodeParam(segment.value);\n return `${segmentPrefix}${segment.value}${value ?? \"\"}${segmentSuffix}`;\n }\n if (leaveWildcards) {\n return `${segmentPrefix}${key}${encodeParam(key) ?? \"\"}${segmentSuffix}`;\n }\n return `${segmentPrefix}${encodeParam(key) ?? \"\"}${segmentSuffix}`;\n }\n return segment.value;\n })\n );\n return { usedParams, interpolatedPath, isMissingParams };\n}\nfunction encodePathParam(value, decodeCharMap) {\n let encoded = encodeURIComponent(value);\n if (decodeCharMap) {\n for (const [encodedChar, char] of decodeCharMap) {\n encoded = encoded.replaceAll(encodedChar, char);\n }\n }\n return encoded;\n}\nfunction matchPathname(basepath, currentPathname, matchLocation, parseCache) {\n const pathParams = matchByPath(\n basepath,\n currentPathname,\n matchLocation,\n parseCache\n );\n if (matchLocation.to && !pathParams) {\n return;\n }\n return pathParams ?? {};\n}\nfunction removeBasepath(basepath, pathname, caseSensitive = false) {\n const normalizedBasepath = caseSensitive ? basepath : basepath.toLowerCase();\n const normalizedPathname = caseSensitive ? pathname : pathname.toLowerCase();\n switch (true) {\n // default behaviour is to serve app from the root - pathname\n // left untouched\n case normalizedBasepath === \"/\":\n return pathname;\n // shortcut for removing the basepath if it matches the pathname\n case normalizedPathname === normalizedBasepath:\n return \"\";\n // in case pathname is shorter than basepath - there is\n // nothing to remove\n case pathname.length < basepath.length:\n return pathname;\n // avoid matching partial segments - strict equality handled\n // earlier, otherwise, basepath separated from pathname with\n // separator, therefore lack of separator means partial\n // segment match (`/app` should not match `/application`)\n case normalizedPathname[normalizedBasepath.length] !== \"/\":\n return pathname;\n // remove the basepath from the pathname if it starts with it\n case normalizedPathname.startsWith(normalizedBasepath):\n return pathname.slice(basepath.length);\n // otherwise, return the pathname as is\n default:\n return pathname;\n }\n}\nfunction matchByPath(basepath, from, {\n to,\n fuzzy,\n caseSensitive\n}, parseCache) {\n if (basepath !== \"/\" && !from.startsWith(basepath)) {\n return void 0;\n }\n from = removeBasepath(basepath, from, caseSensitive);\n to = removeBasepath(basepath, `${to ?? \"$\"}`, caseSensitive);\n const baseSegments = parsePathname(\n from.startsWith(\"/\") ? from : `/${from}`,\n parseCache\n );\n const routeSegments = parsePathname(\n to.startsWith(\"/\") ? to : `/${to}`,\n parseCache\n );\n const params = {};\n const result = isMatch(\n baseSegments,\n routeSegments,\n params,\n fuzzy,\n caseSensitive\n );\n return result ? params : void 0;\n}\nfunction isMatch(baseSegments, routeSegments, params, fuzzy, caseSensitive) {\n var _a, _b, _c;\n let baseIndex = 0;\n let routeIndex = 0;\n while (baseIndex < baseSegments.length || routeIndex < routeSegments.length) {\n const baseSegment = baseSegments[baseIndex];\n const routeSegment = routeSegments[routeIndex];\n if (routeSegment) {\n if (routeSegment.type === SEGMENT_TYPE_WILDCARD) {\n const remainingBaseSegments = baseSegments.slice(baseIndex);\n let _splat;\n if (routeSegment.prefixSegment || routeSegment.suffixSegment) {\n if (!baseSegment) return false;\n const prefix = routeSegment.prefixSegment || \"\";\n const suffix = routeSegment.suffixSegment || \"\";\n const baseValue = baseSegment.value;\n if (\"prefixSegment\" in routeSegment) {\n if (!baseValue.startsWith(prefix)) {\n return false;\n }\n }\n if (\"suffixSegment\" in routeSegment) {\n if (!((_a = baseSegments[baseSegments.length - 1]) == null ? void 0 : _a.value.endsWith(suffix))) {\n return false;\n }\n }\n let rejoinedSplat = decodeURI(\n joinPaths(remainingBaseSegments.map((d) => d.value))\n );\n if (prefix && rejoinedSplat.startsWith(prefix)) {\n rejoinedSplat = rejoinedSplat.slice(prefix.length);\n }\n if (suffix && rejoinedSplat.endsWith(suffix)) {\n rejoinedSplat = rejoinedSplat.slice(\n 0,\n rejoinedSplat.length - suffix.length\n );\n }\n _splat = rejoinedSplat;\n } else {\n _splat = decodeURI(\n joinPaths(remainingBaseSegments.map((d) => d.value))\n );\n }\n params[\"*\"] = _splat;\n params[\"_splat\"] = _splat;\n return true;\n }\n if (routeSegment.type === SEGMENT_TYPE_PATHNAME) {\n if (routeSegment.value === \"/\" && !(baseSegment == null ? void 0 : baseSegment.value)) {\n routeIndex++;\n continue;\n }\n if (baseSegment) {\n if (caseSensitive) {\n if (routeSegment.value !== baseSegment.value) {\n return false;\n }\n } else if (routeSegment.value.toLowerCase() !== baseSegment.value.toLowerCase()) {\n return false;\n }\n baseIndex++;\n routeIndex++;\n continue;\n } else {\n return false;\n }\n }\n if (routeSegment.type === SEGMENT_TYPE_PARAM) {\n if (!baseSegment) {\n return false;\n }\n if (baseSegment.value === \"/\") {\n return false;\n }\n let _paramValue = \"\";\n let matched = false;\n if (routeSegment.prefixSegment || routeSegment.suffixSegment) {\n const prefix = routeSegment.prefixSegment || \"\";\n const suffix = routeSegment.suffixSegment || \"\";\n const baseValue = baseSegment.value;\n if (prefix && !baseValue.startsWith(prefix)) {\n return false;\n }\n if (suffix && !baseValue.endsWith(suffix)) {\n return false;\n }\n let paramValue = baseValue;\n if (prefix && paramValue.startsWith(prefix)) {\n paramValue = paramValue.slice(prefix.length);\n }\n if (suffix && paramValue.endsWith(suffix)) {\n paramValue = paramValue.slice(0, paramValue.length - suffix.length);\n }\n _paramValue = decodeURIComponent(paramValue);\n matched = true;\n } else {\n _paramValue = decodeURIComponent(baseSegment.value);\n matched = true;\n }\n if (matched) {\n params[routeSegment.value.substring(1)] = _paramValue;\n baseIndex++;\n }\n routeIndex++;\n continue;\n }\n if (routeSegment.type === SEGMENT_TYPE_OPTIONAL_PARAM) {\n if (!baseSegment) {\n routeIndex++;\n continue;\n }\n if (baseSegment.value === \"/\") {\n routeIndex++;\n continue;\n }\n let _paramValue = \"\";\n let matched = false;\n if (routeSegment.prefixSegment || routeSegment.suffixSegment) {\n const prefix = routeSegment.prefixSegment || \"\";\n const suffix = routeSegment.suffixSegment || \"\";\n const baseValue = baseSegment.value;\n if ((!prefix || baseValue.startsWith(prefix)) && (!suffix || baseValue.endsWith(suffix))) {\n let paramValue = baseValue;\n if (prefix && paramValue.startsWith(prefix)) {\n paramValue = paramValue.slice(prefix.length);\n }\n if (suffix && paramValue.endsWith(suffix)) {\n paramValue = paramValue.slice(\n 0,\n paramValue.length - suffix.length\n );\n }\n _paramValue = decodeURIComponent(paramValue);\n matched = true;\n }\n } else {\n let shouldMatchOptional = true;\n for (let lookAhead = routeIndex + 1; lookAhead < routeSegments.length; lookAhead++) {\n const futureRouteSegment = routeSegments[lookAhead];\n if ((futureRouteSegment == null ? void 0 : futureRouteSegment.type) === SEGMENT_TYPE_PATHNAME && futureRouteSegment.value === baseSegment.value) {\n shouldMatchOptional = false;\n break;\n }\n if ((futureRouteSegment == null ? void 0 : futureRouteSegment.type) === SEGMENT_TYPE_PARAM || (futureRouteSegment == null ? void 0 : futureRouteSegment.type) === SEGMENT_TYPE_WILDCARD) {\n if (baseSegments.length < routeSegments.length) {\n shouldMatchOptional = false;\n }\n break;\n }\n }\n if (shouldMatchOptional) {\n _paramValue = decodeURIComponent(baseSegment.value);\n matched = true;\n }\n }\n if (matched) {\n params[routeSegment.value.substring(1)] = _paramValue;\n baseIndex++;\n }\n routeIndex++;\n continue;\n }\n }\n if (baseIndex < baseSegments.length && routeIndex >= routeSegments.length) {\n params[\"**\"] = joinPaths(\n baseSegments.slice(baseIndex).map((d) => d.value)\n );\n return !!fuzzy && ((_b = routeSegments[routeSegments.length - 1]) == null ? void 0 : _b.value) !== \"/\";\n }\n if (routeIndex < routeSegments.length && baseIndex >= baseSegments.length) {\n for (let i = routeIndex; i < routeSegments.length; i++) {\n if (((_c = routeSegments[i]) == null ? void 0 : _c.type) !== SEGMENT_TYPE_OPTIONAL_PARAM) {\n return false;\n }\n }\n break;\n }\n break;\n }\n return true;\n}\nexport {\n SEGMENT_TYPE_OPTIONAL_PARAM,\n SEGMENT_TYPE_PARAM,\n SEGMENT_TYPE_PATHNAME,\n SEGMENT_TYPE_WILDCARD,\n cleanPath,\n exactPathTest,\n interpolatePath,\n joinPaths,\n matchByPath,\n matchPathname,\n parsePathname,\n removeBasepath,\n removeTrailingSlash,\n resolvePath,\n trimPath,\n trimPathLeft,\n trimPathRight\n};\n//# sourceMappingURL=path.js.map\n","import invariant from \"tiny-invariant\";\nimport { trimPathRight, trimPathLeft, parsePathname, SEGMENT_TYPE_PATHNAME, SEGMENT_TYPE_PARAM, SEGMENT_TYPE_OPTIONAL_PARAM } from \"./path.js\";\nconst SLASH_SCORE = 0.75;\nconst STATIC_SEGMENT_SCORE = 1;\nconst REQUIRED_PARAM_BASE_SCORE = 0.5;\nconst OPTIONAL_PARAM_BASE_SCORE = 0.4;\nconst WILDCARD_PARAM_BASE_SCORE = 0.25;\nconst STATIC_AFTER_DYNAMIC_BONUS_SCORE = 0.2;\nconst BOTH_PRESENCE_BASE_SCORE = 0.05;\nconst PREFIX_PRESENCE_BASE_SCORE = 0.02;\nconst SUFFIX_PRESENCE_BASE_SCORE = 0.01;\nconst PREFIX_LENGTH_SCORE_MULTIPLIER = 2e-4;\nconst SUFFIX_LENGTH_SCORE_MULTIPLIER = 1e-4;\nfunction handleParam(segment, baseScore) {\n if (segment.prefixSegment && segment.suffixSegment) {\n return baseScore + BOTH_PRESENCE_BASE_SCORE + PREFIX_LENGTH_SCORE_MULTIPLIER * segment.prefixSegment.length + SUFFIX_LENGTH_SCORE_MULTIPLIER * segment.suffixSegment.length;\n }\n if (segment.prefixSegment) {\n return baseScore + PREFIX_PRESENCE_BASE_SCORE + PREFIX_LENGTH_SCORE_MULTIPLIER * segment.prefixSegment.length;\n }\n if (segment.suffixSegment) {\n return baseScore + SUFFIX_PRESENCE_BASE_SCORE + SUFFIX_LENGTH_SCORE_MULTIPLIER * segment.suffixSegment.length;\n }\n return baseScore;\n}\nfunction sortRoutes(routes) {\n const scoredRoutes = [];\n routes.forEach((d, i) => {\n var _a;\n if (d.isRoot || !d.path) {\n return;\n }\n const trimmed = trimPathLeft(d.fullPath);\n let parsed = parsePathname(trimmed);\n let skip = 0;\n while (parsed.length > skip + 1 && ((_a = parsed[skip]) == null ? void 0 : _a.value) === \"/\") {\n skip++;\n }\n if (skip > 0) parsed = parsed.slice(skip);\n let optionalParamCount = 0;\n let hasStaticAfter = false;\n const scores = parsed.map((segment, index) => {\n if (segment.value === \"/\") {\n return SLASH_SCORE;\n }\n if (segment.type === SEGMENT_TYPE_PATHNAME) {\n return STATIC_SEGMENT_SCORE;\n }\n let baseScore = void 0;\n if (segment.type === SEGMENT_TYPE_PARAM) {\n baseScore = REQUIRED_PARAM_BASE_SCORE;\n } else if (segment.type === SEGMENT_TYPE_OPTIONAL_PARAM) {\n baseScore = OPTIONAL_PARAM_BASE_SCORE;\n optionalParamCount++;\n } else {\n baseScore = WILDCARD_PARAM_BASE_SCORE;\n }\n for (let i2 = index + 1; i2 < parsed.length; i2++) {\n const nextSegment = parsed[i2];\n if (nextSegment.type === SEGMENT_TYPE_PATHNAME && nextSegment.value !== \"/\") {\n hasStaticAfter = true;\n return handleParam(\n segment,\n baseScore + STATIC_AFTER_DYNAMIC_BONUS_SCORE\n );\n }\n }\n return handleParam(segment, baseScore);\n });\n scoredRoutes.push({\n child: d,\n trimmed,\n parsed,\n index: i,\n scores,\n optionalParamCount,\n hasStaticAfter\n });\n });\n const flatRoutes = scoredRoutes.sort((a, b) => {\n const minLength = Math.min(a.scores.length, b.scores.length);\n for (let i = 0; i < minLength; i++) {\n if (a.scores[i] !== b.scores[i]) {\n return b.scores[i] - a.scores[i];\n }\n }\n if (a.scores.length !== b.scores.length) {\n if (a.optionalParamCount !== b.optionalParamCount) {\n if (a.hasStaticAfter === b.hasStaticAfter) {\n return a.optionalParamCount - b.optionalParamCount;\n } else if (a.hasStaticAfter && !b.hasStaticAfter) {\n return -1;\n } else if (!a.hasStaticAfter && b.hasStaticAfter) {\n return 1;\n }\n }\n return b.scores.length - a.scores.length;\n }\n for (let i = 0; i < minLength; i++) {\n if (a.parsed[i].value !== b.parsed[i].value) {\n return a.parsed[i].value > b.parsed[i].value ? 1 : -1;\n }\n }\n return a.index - b.index;\n }).map((d, i) => {\n d.child.rank = i;\n return d.child;\n });\n return flatRoutes;\n}\nfunction processRouteTree({\n routeTree,\n initRoute\n}) {\n const routesById = {};\n const routesByPath = {};\n const recurseRoutes = (childRoutes) => {\n childRoutes.forEach((childRoute, i) => {\n initRoute == null ? void 0 : initRoute(childRoute, i);\n const existingRoute = routesById[childRoute.id];\n invariant(\n !existingRoute,\n `Duplicate routes found with id: ${String(childRoute.id)}`\n );\n routesById[childRoute.id] = childRoute;\n if (!childRoute.isRoot && childRoute.path) {\n const trimmedFullPath = trimPathRight(childRoute.fullPath);\n if (!routesByPath[trimmedFullPath] || childRoute.fullPath.endsWith(\"/\")) {\n routesByPath[trimmedFullPath] = childRoute;\n }\n }\n const children = childRoute.children;\n if (children == null ? void 0 : children.length) {\n recurseRoutes(children);\n }\n });\n };\n recurseRoutes([routeTree]);\n const flatRoutes = sortRoutes(Object.values(routesById));\n return { routesById, routesByPath, flatRoutes };\n}\nexport {\n processRouteTree\n};\n//# sourceMappingURL=process-route-tree.js.map\n","function notFound(options = {}) {\n options.isNotFound = true;\n if (options.throw) throw options;\n return options;\n}\nfunction isNotFound(obj) {\n return !!(obj == null ? void 0 : obj.isNotFound);\n}\nexport {\n isNotFound,\n notFound\n};\n//# sourceMappingURL=not-found.js.map\n","import { functionalUpdate } from \"./utils.js\";\nfunction getSafeSessionStorage() {\n try {\n if (typeof window !== \"undefined\" && typeof window.sessionStorage === \"object\") {\n return window.sessionStorage;\n }\n } catch {\n }\n return void 0;\n}\nconst storageKey = \"tsr-scroll-restoration-v1_3\";\nconst throttle = (fn, wait) => {\n let timeout;\n return (...args) => {\n if (!timeout) {\n timeout = setTimeout(() => {\n fn(...args);\n timeout = null;\n }, wait);\n }\n };\n};\nfunction createScrollRestorationCache() {\n const safeSessionStorage = getSafeSessionStorage();\n if (!safeSessionStorage) {\n return void 0;\n }\n const persistedState = safeSessionStorage.getItem(storageKey);\n let state = persistedState ? JSON.parse(persistedState) : {};\n return {\n state,\n // This setter is simply to make sure that we set the sessionStorage right\n // after the state is updated. It doesn't necessarily need to be a functional\n // update.\n set: (updater) => (state = functionalUpdate(updater, state) || state, safeSessionStorage.setItem(storageKey, JSON.stringify(state)))\n };\n}\nconst scrollRestorationCache = createScrollRestorationCache();\nconst defaultGetScrollRestorationKey = (location) => {\n return location.state.__TSR_key || location.href;\n};\nfunction getCssSelector(el) {\n const path = [];\n let parent;\n while (parent = el.parentNode) {\n path.push(\n `${el.tagName}:nth-child(${Array.prototype.indexOf.call(parent.children, el) + 1})`\n );\n el = parent;\n }\n return `${path.reverse().join(\" > \")}`.toLowerCase();\n}\nlet ignoreScroll = false;\nfunction restoreScroll({\n storageKey: storageKey2,\n key,\n behavior,\n shouldScrollRestoration,\n scrollToTopSelectors,\n location\n}) {\n var _a, _b;\n let byKey;\n try {\n byKey = JSON.parse(sessionStorage.getItem(storageKey2) || \"{}\");\n } catch (error) {\n console.error(error);\n return;\n }\n const resolvedKey = key || ((_a = window.history.state) == null ? void 0 : _a.key);\n const elementEntries = byKey[resolvedKey];\n ignoreScroll = true;\n scroll: {\n if (shouldScrollRestoration && elementEntries && Object.keys(elementEntries).length > 0) {\n for (const elementSelector in elementEntries) {\n const entry = elementEntries[elementSelector];\n if (elementSelector === \"window\") {\n window.scrollTo({\n top: entry.scrollY,\n left: entry.scrollX,\n behavior\n });\n } else if (elementSelector) {\n const element = document.querySelector(elementSelector);\n if (element) {\n element.scrollLeft = entry.scrollX;\n element.scrollTop = entry.scrollY;\n }\n }\n }\n break scroll;\n }\n const hash = (location ?? window.location).hash.split(\"#\", 2)[1];\n if (hash) {\n const hashScrollIntoViewOptions = ((_b = window.history.state) == null ? void 0 : _b.__hashScrollIntoViewOptions) ?? true;\n if (hashScrollIntoViewOptions) {\n const el = document.getElementById(hash);\n if (el) {\n el.scrollIntoView(hashScrollIntoViewOptions);\n }\n }\n break scroll;\n }\n const scrollOptions = { top: 0, left: 0, behavior };\n window.scrollTo(scrollOptions);\n if (scrollToTopSelectors) {\n for (const selector of scrollToTopSelectors) {\n if (selector === \"window\") continue;\n const element = typeof selector === \"function\" ? selector() : document.querySelector(selector);\n if (element) element.scrollTo(scrollOptions);\n }\n }\n }\n ignoreScroll = false;\n}\nfunction setupScrollRestoration(router, force) {\n if (scrollRestorationCache === void 0) {\n return;\n }\n const shouldScrollRestoration = force ?? router.options.scrollRestoration ?? false;\n if (shouldScrollRestoration) {\n router.isScrollRestoring = true;\n }\n if (typeof document === \"undefined\" || router.isScrollRestorationSetup) {\n return;\n }\n router.isScrollRestorationSetup = true;\n ignoreScroll = false;\n const getKey = router.options.getScrollRestorationKey || defaultGetScrollRestorationKey;\n window.history.scrollRestoration = \"manual\";\n const onScroll = (event) => {\n if (ignoreScroll || !router.isScrollRestoring) {\n return;\n }\n let elementSelector = \"\";\n if (event.target === document || event.target === window) {\n elementSelector = \"window\";\n } else {\n const attrId = event.target.getAttribute(\n \"data-scroll-restoration-id\"\n );\n if (attrId) {\n elementSelector = `[data-scroll-restoration-id=\"${attrId}\"]`;\n } else {\n elementSelector = getCssSelector(event.target);\n }\n }\n const restoreKey = getKey(router.state.location);\n scrollRestorationCache.set((state) => {\n const keyEntry = state[restoreKey] || (state[restoreKey] = {});\n const elementEntry = keyEntry[elementSelector] || (keyEntry[elementSelector] = {});\n if (elementSelector === \"window\") {\n elementEntry.scrollX = window.scrollX || 0;\n elementEntry.scrollY = window.scrollY || 0;\n } else if (elementSelector) {\n const element = document.querySelector(elementSelector);\n if (element) {\n elementEntry.scrollX = element.scrollLeft || 0;\n elementEntry.scrollY = element.scrollTop || 0;\n }\n }\n return state;\n });\n };\n if (typeof document !== \"undefined\") {\n document.addEventListener(\"scroll\", throttle(onScroll, 100), true);\n }\n router.subscribe(\"onRendered\", (event) => {\n const cacheKey = getKey(event.toLocation);\n if (!router.resetNextScroll) {\n router.resetNextScroll = true;\n return;\n }\n restoreScroll({\n storageKey,\n key: cacheKey,\n behavior: router.options.scrollRestorationBehavior,\n shouldScrollRestoration: router.isScrollRestoring,\n scrollToTopSelectors: router.options.scrollToTopSelectors,\n location: router.history.location\n });\n if (router.isScrollRestoring) {\n scrollRestorationCache.set((state) => {\n state[cacheKey] || (state[cacheKey] = {});\n return state;\n });\n }\n });\n}\nfunction handleHashScroll(router) {\n if (typeof document !== \"undefined\" && document.querySelector) {\n const hashScrollIntoViewOptions = router.state.location.state.__hashScrollIntoViewOptions ?? true;\n if (hashScrollIntoViewOptions && router.state.location.hash !== \"\") {\n const el = document.getElementById(router.state.location.hash);\n if (el) {\n el.scrollIntoView(hashScrollIntoViewOptions);\n }\n }\n }\n}\nexport {\n defaultGetScrollRestorationKey,\n getCssSelector,\n handleHashScroll,\n restoreScroll,\n scrollRestorationCache,\n setupScrollRestoration,\n storageKey\n};\n//# sourceMappingURL=scroll-restoration.js.map\n","function encode(obj, stringify = String) {\n const result = new URLSearchParams();\n for (const key in obj) {\n const val = obj[key];\n if (val !== void 0) {\n result.set(key, stringify(val));\n }\n }\n return result.toString();\n}\nfunction toValue(str) {\n if (!str) return \"\";\n if (str === \"false\") return false;\n if (str === \"true\") return true;\n return +str * 0 === 0 && +str + \"\" === str ? +str : str;\n}\nfunction decode(str) {\n const searchParams = new URLSearchParams(str);\n const result = {};\n for (const [key, value] of searchParams.entries()) {\n const previousValue = result[key];\n if (previousValue == null) {\n result[key] = toValue(value);\n } else if (Array.isArray(previousValue)) {\n previousValue.push(toValue(value));\n } else {\n result[key] = [previousValue, toValue(value)];\n }\n }\n return result;\n}\nexport {\n decode,\n encode\n};\n//# sourceMappingURL=qss.js.map\n","import { decode, encode } from \"./qss.js\";\nconst defaultParseSearch = parseSearchWith(JSON.parse);\nconst defaultStringifySearch = stringifySearchWith(\n JSON.stringify,\n JSON.parse\n);\nfunction parseSearchWith(parser) {\n return (searchStr) => {\n if (searchStr[0] === \"?\") {\n searchStr = searchStr.substring(1);\n }\n const query = decode(searchStr);\n for (const key in query) {\n const value = query[key];\n if (typeof value === \"string\") {\n try {\n query[key] = parser(value);\n } catch (_err) {\n }\n }\n }\n return query;\n };\n}\nfunction stringifySearchWith(stringify, parser) {\n const hasParser = typeof parser === \"function\";\n function stringifyValue(val) {\n if (typeof val === \"object\" && val !== null) {\n try {\n return stringify(val);\n } catch (_err) {\n }\n } else if (hasParser && typeof val === \"string\") {\n try {\n parser(val);\n return stringify(val);\n } catch (_err) {\n }\n }\n return val;\n }\n return (search) => {\n const searchStr = encode(search, stringifyValue);\n return searchStr ? `?${searchStr}` : \"\";\n };\n}\nexport {\n defaultParseSearch,\n defaultStringifySearch,\n parseSearchWith,\n stringifySearchWith\n};\n//# sourceMappingURL=searchParams.js.map\n","const rootRouteId = \"__root__\";\nexport {\n rootRouteId\n};\n//# sourceMappingURL=root.js.map\n","function redirect(opts) {\n opts.statusCode = opts.statusCode || opts.code || 307;\n if (!opts.reloadDocument && typeof opts.href === \"string\") {\n try {\n new URL(opts.href);\n opts.reloadDocument = true;\n } catch {\n }\n }\n const headers = new Headers(opts.headers);\n if (opts.href && headers.get(\"Location\") === null) {\n headers.set(\"Location\", opts.href);\n }\n const response = new Response(null, {\n status: opts.statusCode,\n headers\n });\n response.options = opts;\n if (opts.throw) {\n throw response;\n }\n return response;\n}\nfunction isRedirect(obj) {\n return obj instanceof Response && !!obj.options;\n}\nfunction isResolvedRedirect(obj) {\n return isRedirect(obj) && !!obj.options.href;\n}\nfunction parseRedirect(obj) {\n if (obj !== null && typeof obj === \"object\" && obj.isSerializedRedirect) {\n return redirect(obj);\n }\n return void 0;\n}\nexport {\n isRedirect,\n isResolvedRedirect,\n parseRedirect,\n redirect\n};\n//# sourceMappingURL=redirect.js.map\n","function createLRUCache(max) {\n const cache = /* @__PURE__ */ new Map();\n let oldest;\n let newest;\n const touch = (entry) => {\n if (!entry.next) return;\n if (!entry.prev) {\n entry.next.prev = void 0;\n oldest = entry.next;\n entry.next = void 0;\n if (newest) {\n entry.prev = newest;\n newest.next = entry;\n }\n } else {\n entry.prev.next = entry.next;\n entry.next.prev = entry.prev;\n entry.next = void 0;\n if (newest) {\n newest.next = entry;\n entry.prev = newest;\n }\n }\n newest = entry;\n };\n return {\n get(key) {\n const entry = cache.get(key);\n if (!entry) return void 0;\n touch(entry);\n return entry.value;\n },\n set(key, value) {\n if (cache.size >= max && oldest) {\n const toDelete = oldest;\n cache.delete(toDelete.key);\n if (toDelete.next) {\n oldest = toDelete.next;\n toDelete.next.prev = void 0;\n }\n if (toDelete === newest) {\n newest = void 0;\n }\n }\n const existing = cache.get(key);\n if (existing) {\n existing.value = value;\n touch(existing);\n } else {\n const entry = { key, value, prev: newest };\n if (newest) newest.next = entry;\n newest = entry;\n if (!oldest) oldest = entry;\n cache.set(key, entry);\n }\n }\n };\n}\nexport {\n createLRUCache\n};\n//# sourceMappingURL=lru-cache.js.map\n","import { batch } from \"@tanstack/store\";\nimport invariant from \"tiny-invariant\";\nimport { isPromise, createControlledPromise } from \"./utils.js\";\nimport { isNotFound } from \"./not-found.js\";\nimport { rootRouteId } from \"./root.js\";\nimport { isRedirect } from \"./redirect.js\";\nconst triggerOnReady = (inner) => {\n var _a;\n if (!inner.rendered) {\n inner.rendered = true;\n return (_a = inner.onReady) == null ? void 0 : _a.call(inner);\n }\n};\nconst resolvePreload = (inner, matchId) => {\n return !!(inner.preload && !inner.router.state.matches.some((d) => d.id === matchId));\n};\nconst _handleNotFound = (inner, err) => {\n var _a;\n const routeCursor = inner.router.routesById[err.routeId ?? \"\"] ?? inner.router.routeTree;\n if (!routeCursor.options.notFoundComponent && ((_a = inner.router.options) == null ? void 0 : _a.defaultNotFoundComponent)) {\n routeCursor.options.notFoundComponent = inner.router.options.defaultNotFoundComponent;\n }\n invariant(\n routeCursor.options.notFoundComponent,\n \"No notFoundComponent found. Please set a notFoundComponent on your route or provide a defaultNotFoundComponent to the router.\"\n );\n const matchForRoute = inner.matches.find((m) => m.routeId === routeCursor.id);\n invariant(matchForRoute, \"Could not find match for route: \" + routeCursor.id);\n inner.updateMatch(matchForRoute.id, (prev) => ({\n ...prev,\n status: \"notFound\",\n error: err,\n isFetching: false\n }));\n if (err.routerCode === \"BEFORE_LOAD\" && routeCursor.parentRoute) {\n err.routeId = routeCursor.parentRoute.id;\n _handleNotFound(inner, err);\n }\n};\nconst handleRedirectAndNotFound = (inner, match, err) => {\n var _a, _b, _c;\n if (!isRedirect(err) && !isNotFound(err)) return;\n if (isRedirect(err) && err.redirectHandled && !err.options.reloadDocument) {\n throw err;\n }\n if (match) {\n (_a = match._nonReactive.beforeLoadPromise) == null ? void 0 : _a.resolve();\n (_b = match._nonReactive.loaderPromise) == null ? void 0 : _b.resolve();\n match._nonReactive.beforeLoadPromise = void 0;\n match._nonReactive.loaderPromise = void 0;\n const status = isRedirect(err) ? \"redirected\" : \"notFound\";\n inner.updateMatch(match.id, (prev) => ({\n ...prev,\n status,\n isFetching: false,\n error: err\n }));\n if (isNotFound(err) && !err.routeId) {\n err.routeId = match.routeId;\n }\n (_c = match._nonReactive.loadPromise) == null ? void 0 : _c.resolve();\n }\n if (isRedirect(err)) {\n inner.rendered = true;\n err.options._fromLocation = inner.location;\n err.redirectHandled = true;\n err = inner.router.resolveRedirect(err);\n throw err;\n } else {\n _handleNotFound(inner, err);\n throw err;\n }\n};\nconst shouldSkipLoader = (inner, matchId) => {\n const match = inner.router.getMatch(matchId);\n if (!inner.router.isServer && match._nonReactive.dehydrated) {\n return true;\n }\n if (inner.router.isServer && match.ssr === false) {\n return true;\n }\n return false;\n};\nconst handleSerialError = (inner, index, err, routerCode) => {\n var _a, _b;\n const { id: matchId, routeId } = inner.matches[index];\n const route = inner.router.looseRoutesById[routeId];\n if (err instanceof Promise) {\n throw err;\n }\n err.routerCode = routerCode;\n inner.firstBadMatchIndex ?? (inner.firstBadMatchIndex = index);\n handleRedirectAndNotFound(inner, inner.router.getMatch(matchId), err);\n try {\n (_b = (_a = route.options).onError) == null ? void 0 : _b.call(_a, err);\n } catch (errorHandlerErr) {\n err = errorHandlerErr;\n handleRedirectAndNotFound(inner, inner.router.getMatch(matchId), err);\n }\n inner.updateMatch(matchId, (prev) => {\n var _a2, _b2;\n (_a2 = prev._nonReactive.beforeLoadPromise) == null ? void 0 : _a2.resolve();\n prev._nonReactive.beforeLoadPromise = void 0;\n (_b2 = prev._nonReactive.loadPromise) == null ? void 0 : _b2.resolve();\n return {\n ...prev,\n error: err,\n status: \"error\",\n isFetching: false,\n updatedAt: Date.now(),\n abortController: new AbortController()\n };\n });\n};\nconst isBeforeLoadSsr = (inner, matchId, index, route) => {\n var _a;\n const existingMatch = inner.router.getMatch(matchId);\n const parentMatchId = (_a = inner.matches[index - 1]) == null ? void 0 : _a.id;\n const parentMatch = parentMatchId ? inner.router.getMatch(parentMatchId) : void 0;\n if (inner.router.isShell()) {\n existingMatch.ssr = matchId === rootRouteId;\n return;\n }\n if ((parentMatch == null ? void 0 : parentMatch.ssr) === false) {\n existingMatch.ssr = false;\n return;\n }\n const parentOverride = (tempSsr2) => {\n if (tempSsr2 === true && (parentMatch == null ? void 0 : parentMatch.ssr) === \"data-only\") {\n return \"data-only\";\n }\n return tempSsr2;\n };\n const defaultSsr = inner.router.options.defaultSsr ?? true;\n if (route.options.ssr === void 0) {\n existingMatch.ssr = parentOverride(defaultSsr);\n return;\n }\n if (typeof route.options.ssr !== \"function\") {\n existingMatch.ssr = parentOverride(route.options.ssr);\n return;\n }\n const { search, params } = existingMatch;\n const ssrFnContext = {\n search: makeMaybe(search, existingMatch.searchError),\n params: makeMaybe(params, existingMatch.paramsError),\n location: inner.location,\n matches: inner.matches.map((match) => ({\n index: match.index,\n pathname: match.pathname,\n fullPath: match.fullPath,\n staticData: match.staticData,\n id: match.id,\n routeId: match.routeId,\n search: makeMaybe(match.search, match.searchError),\n params: makeMaybe(match.params, match.paramsError),\n ssr: match.ssr\n }))\n };\n const tempSsr = route.options.ssr(ssrFnContext);\n if (isPromise(tempSsr)) {\n return tempSsr.then((ssr) => {\n existingMatch.ssr = parentOverride(ssr ?? defaultSsr);\n });\n }\n existingMatch.ssr = parentOverride(tempSsr ?? defaultSsr);\n return;\n};\nconst setupPendingTimeout = (inner, matchId, route, match) => {\n var _a;\n if (match._nonReactive.pendingTimeout !== void 0) return;\n const pendingMs = route.options.pendingMs ?? inner.router.options.defaultPendingMs;\n const shouldPending = !!(inner.onReady && !inner.router.isServer && !resolvePreload(inner, matchId) && (route.options.loader || route.options.beforeLoad || routeNeedsPreload(route)) && typeof pendingMs === \"number\" && pendingMs !== Infinity && (route.options.pendingComponent ?? ((_a = inner.router.options) == null ? void 0 : _a.defaultPendingComponent)));\n if (shouldPending) {\n const pendingTimeout = setTimeout(() => {\n triggerOnReady(inner);\n }, pendingMs);\n match._nonReactive.pendingTimeout = pendingTimeout;\n }\n};\nconst preBeforeLoadSetup = (inner, matchId, route) => {\n const existingMatch = inner.router.getMatch(matchId);\n if (!existingMatch._nonReactive.beforeLoadPromise && !existingMatch._nonReactive.loaderPromise)\n return;\n setupPendingTimeout(inner, matchId, route, existingMatch);\n const then = () => {\n const match = inner.router.getMatch(matchId);\n if (match.preload && (match.status === \"redirected\" || match.status === \"notFound\")) {\n handleRedirectAndNotFound(inner, match, match.error);\n }\n };\n return existingMatch._nonReactive.beforeLoadPromise ? existingMatch._nonReactive.beforeLoadPromise.then(then) : then();\n};\nconst executeBeforeLoad = (inner, matchId, index, route) => {\n var _a;\n const match = inner.router.getMatch(matchId);\n const prevLoadPromise = match._nonReactive.loadPromise;\n match._nonReactive.loadPromise = createControlledPromise(() => {\n prevLoadPromise == null ? void 0 : prevLoadPromise.resolve();\n });\n const { paramsError, searchError } = match;\n if (paramsError) {\n handleSerialError(inner, index, paramsError, \"PARSE_PARAMS\");\n }\n if (searchError) {\n handleSerialError(inner, index, searchError, \"VALIDATE_SEARCH\");\n }\n setupPendingTimeout(inner, matchId, route, match);\n const abortController = new AbortController();\n const parentMatchId = (_a = inner.matches[index - 1]) == null ? void 0 : _a.id;\n const parentMatch = parentMatchId ? inner.router.getMatch(parentMatchId) : void 0;\n const parentMatchContext = (parentMatch == null ? void 0 : parentMatch.context) ?? inner.router.options.context ?? void 0;\n const context = { ...parentMatchContext, ...match.__routeContext };\n let isPending = false;\n const pending = () => {\n if (isPending) return;\n isPending = true;\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n isFetching: \"beforeLoad\",\n fetchCount: prev.fetchCount + 1,\n abortController,\n context\n }));\n };\n const resolve = () => {\n var _a2;\n (_a2 = match._nonReactive.beforeLoadPromise) == null ? void 0 : _a2.resolve();\n match._nonReactive.beforeLoadPromise = void 0;\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n isFetching: false\n }));\n };\n if (!route.options.beforeLoad) {\n batch(() => {\n pending();\n resolve();\n });\n return;\n }\n match._nonReactive.beforeLoadPromise = createControlledPromise();\n const { search, params, cause } = match;\n const preload = resolvePreload(inner, matchId);\n const beforeLoadFnContext = {\n search,\n abortController,\n params,\n preload,\n context,\n location: inner.location,\n navigate: (opts) => inner.router.navigate({\n ...opts,\n _fromLocation: inner.location\n }),\n buildLocation: inner.router.buildLocation,\n cause: preload ? \"preload\" : cause,\n matches: inner.matches\n };\n const updateContext = (beforeLoadContext2) => {\n if (beforeLoadContext2 === void 0) {\n batch(() => {\n pending();\n resolve();\n });\n return;\n }\n if (isRedirect(beforeLoadContext2) || isNotFound(beforeLoadContext2)) {\n pending();\n handleSerialError(inner, index, beforeLoadContext2, \"BEFORE_LOAD\");\n }\n batch(() => {\n pending();\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n __beforeLoadContext: beforeLoadContext2,\n context: {\n ...prev.context,\n ...beforeLoadContext2\n }\n }));\n resolve();\n });\n };\n let beforeLoadContext;\n try {\n beforeLoadContext = route.options.beforeLoad(beforeLoadFnContext);\n if (isPromise(beforeLoadContext)) {\n pending();\n return beforeLoadContext.catch((err) => {\n handleSerialError(inner, index, err, \"BEFORE_LOAD\");\n }).then(updateContext);\n }\n } catch (err) {\n pending();\n handleSerialError(inner, index, err, \"BEFORE_LOAD\");\n }\n updateContext(beforeLoadContext);\n return;\n};\nconst handleBeforeLoad = (inner, index) => {\n const { id: matchId, routeId } = inner.matches[index];\n const route = inner.router.looseRoutesById[routeId];\n const serverSsr = () => {\n if (inner.router.isServer) {\n const maybePromise = isBeforeLoadSsr(inner, matchId, index, route);\n if (isPromise(maybePromise)) return maybePromise.then(queueExecution);\n }\n return queueExecution();\n };\n const queueExecution = () => {\n if (shouldSkipLoader(inner, matchId)) return;\n const result = preBeforeLoadSetup(inner, matchId, route);\n return isPromise(result) ? result.then(execute) : execute();\n };\n const execute = () => executeBeforeLoad(inner, matchId, index, route);\n return serverSsr();\n};\nconst executeHead = (inner, matchId, route) => {\n var _a, _b, _c, _d, _e, _f;\n const match = inner.router.getMatch(matchId);\n if (!match) {\n return;\n }\n if (!route.options.head && !route.options.scripts && !route.options.headers) {\n return;\n }\n const assetContext = {\n matches: inner.matches,\n match,\n params: match.params,\n loaderData: match.loaderData\n };\n return Promise.all([\n (_b = (_a = route.options).head) == null ? void 0 : _b.call(_a, assetContext),\n (_d = (_c = route.options).scripts) == null ? void 0 : _d.call(_c, assetContext),\n (_f = (_e = route.options).headers) == null ? void 0 : _f.call(_e, assetContext)\n ]).then(([headFnContent, scripts, headers]) => {\n const meta = headFnContent == null ? void 0 : headFnContent.meta;\n const links = headFnContent == null ? void 0 : headFnContent.links;\n const headScripts = headFnContent == null ? void 0 : headFnContent.scripts;\n const styles = headFnContent == null ? void 0 : headFnContent.styles;\n return {\n meta,\n links,\n headScripts,\n headers,\n scripts,\n styles\n };\n });\n};\nconst getLoaderContext = (inner, matchId, index, route) => {\n const parentMatchPromise = inner.matchPromises[index - 1];\n const { params, loaderDeps, abortController, context, cause } = inner.router.getMatch(matchId);\n const preload = resolvePreload(inner, matchId);\n return {\n params,\n deps: loaderDeps,\n preload: !!preload,\n parentMatchPromise,\n abortController,\n context,\n location: inner.location,\n navigate: (opts) => inner.router.navigate({\n ...opts,\n _fromLocation: inner.location\n }),\n cause: preload ? \"preload\" : cause,\n route\n };\n};\nconst runLoader = async (inner, matchId, index, route) => {\n var _a, _b, _c, _d;\n try {\n const match = inner.router.getMatch(matchId);\n try {\n if (!inner.router.isServer || match.ssr === true) {\n loadRouteChunk(route);\n }\n const loaderResult = (_b = (_a = route.options).loader) == null ? void 0 : _b.call(\n _a,\n getLoaderContext(inner, matchId, index, route)\n );\n const loaderResultIsPromise = route.options.loader && isPromise(loaderResult);\n const willLoadSomething = !!(loaderResultIsPromise || route._lazyPromise || route._componentsPromise || route.options.head || route.options.scripts || route.options.headers || match._nonReactive.minPendingPromise);\n if (willLoadSomething) {\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n isFetching: \"loader\"\n }));\n }\n if (route.options.loader) {\n const loaderData = loaderResultIsPromise ? await loaderResult : loaderResult;\n handleRedirectAndNotFound(\n inner,\n inner.router.getMatch(matchId),\n loaderData\n );\n if (loaderData !== void 0) {\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n loaderData\n }));\n }\n }\n if (route._lazyPromise) await route._lazyPromise;\n const headResult = executeHead(inner, matchId, route);\n const head = headResult ? await headResult : void 0;\n const pendingPromise = match._nonReactive.minPendingPromise;\n if (pendingPromise) await pendingPromise;\n if (route._componentsPromise) await route._componentsPromise;\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n error: void 0,\n status: \"success\",\n isFetching: false,\n updatedAt: Date.now(),\n ...head\n }));\n } catch (e) {\n let error = e;\n const pendingPromise = match._nonReactive.minPendingPromise;\n if (pendingPromise) await pendingPromise;\n handleRedirectAndNotFound(inner, inner.router.getMatch(matchId), e);\n try {\n (_d = (_c = route.options).onError) == null ? void 0 : _d.call(_c, e);\n } catch (onErrorError) {\n error = onErrorError;\n handleRedirectAndNotFound(\n inner,\n inner.router.getMatch(matchId),\n onErrorError\n );\n }\n const headResult = executeHead(inner, matchId, route);\n const head = headResult ? await headResult : void 0;\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n error,\n status: \"error\",\n isFetching: false,\n ...head\n }));\n }\n } catch (err) {\n const match = inner.router.getMatch(matchId);\n if (match) {\n const headResult = executeHead(inner, matchId, route);\n if (headResult) {\n const head = await headResult;\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n ...head\n }));\n }\n match._nonReactive.loaderPromise = void 0;\n }\n handleRedirectAndNotFound(inner, match, err);\n }\n};\nconst loadRouteMatch = async (inner, index) => {\n var _a, _b;\n const { id: matchId, routeId } = inner.matches[index];\n let loaderShouldRunAsync = false;\n let loaderIsRunningAsync = false;\n const route = inner.router.looseRoutesById[routeId];\n if (shouldSkipLoader(inner, matchId)) {\n if (inner.router.isServer) {\n const headResult = executeHead(inner, matchId, route);\n if (headResult) {\n const head = await headResult;\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n ...head\n }));\n }\n return inner.router.getMatch(matchId);\n }\n } else {\n const prevMatch = inner.router.getMatch(matchId);\n if (prevMatch._nonReactive.loaderPromise) {\n if (prevMatch.status === \"success\" && !inner.sync && !prevMatch.preload) {\n return prevMatch;\n }\n await prevMatch._nonReactive.loaderPromise;\n const match2 = inner.router.getMatch(matchId);\n if (match2.error) {\n handleRedirectAndNotFound(inner, match2, match2.error);\n }\n } else {\n const age = Date.now() - prevMatch.updatedAt;\n const preload = resolvePreload(inner, matchId);\n const staleAge = preload ? route.options.preloadStaleTime ?? inner.router.options.defaultPreloadStaleTime ?? 3e4 : route.options.staleTime ?? inner.router.options.defaultStaleTime ?? 0;\n const shouldReloadOption = route.options.shouldReload;\n const shouldReload = typeof shouldReloadOption === \"function\" ? shouldReloadOption(getLoaderContext(inner, matchId, index, route)) : shouldReloadOption;\n const nextPreload = !!preload && !inner.router.state.matches.some((d) => d.id === matchId);\n const match2 = inner.router.getMatch(matchId);\n match2._nonReactive.loaderPromise = createControlledPromise();\n if (nextPreload !== match2.preload) {\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n preload: nextPreload\n }));\n }\n const { status, invalid } = match2;\n loaderShouldRunAsync = status === \"success\" && (invalid || (shouldReload ?? age > staleAge));\n if (preload && route.options.preload === false) ;\n else if (loaderShouldRunAsync && !inner.sync) {\n loaderIsRunningAsync = true;\n (async () => {\n var _a2, _b2;\n try {\n await runLoader(inner, matchId, index, route);\n const match3 = inner.router.getMatch(matchId);\n (_a2 = match3._nonReactive.loaderPromise) == null ? void 0 : _a2.resolve();\n (_b2 = match3._nonReactive.loadPromise) == null ? void 0 : _b2.resolve();\n match3._nonReactive.loaderPromise = void 0;\n } catch (err) {\n if (isRedirect(err)) {\n await inner.router.navigate(err.options);\n }\n }\n })();\n } else if (status !== \"success\" || loaderShouldRunAsync && inner.sync) {\n await runLoader(inner, matchId, index, route);\n } else {\n const headResult = executeHead(inner, matchId, route);\n if (headResult) {\n const head = await headResult;\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n ...head\n }));\n }\n }\n }\n }\n const match = inner.router.getMatch(matchId);\n if (!loaderIsRunningAsync) {\n (_a = match._nonReactive.loaderPromise) == null ? void 0 : _a.resolve();\n (_b = match._nonReactive.loadPromise) == null ? void 0 : _b.resolve();\n }\n clearTimeout(match._nonReactive.pendingTimeout);\n match._nonReactive.pendingTimeout = void 0;\n if (!loaderIsRunningAsync) match._nonReactive.loaderPromise = void 0;\n match._nonReactive.dehydrated = void 0;\n const nextIsFetching = loaderIsRunningAsync ? match.isFetching : false;\n if (nextIsFetching !== match.isFetching || match.invalid !== false) {\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n isFetching: nextIsFetching,\n invalid: false\n }));\n return inner.router.getMatch(matchId);\n } else {\n return match;\n }\n};\nasync function loadMatches(arg) {\n const inner = Object.assign(arg, {\n matchPromises: []\n });\n if (!inner.router.isServer && inner.router.state.matches.some((d) => d._forcePending)) {\n triggerOnReady(inner);\n }\n try {\n for (let i = 0; i < inner.matches.length; i++) {\n const beforeLoad = handleBeforeLoad(inner, i);\n if (isPromise(beforeLoad)) await beforeLoad;\n }\n const max = inner.firstBadMatchIndex ?? inner.matches.length;\n for (let i = 0; i < max; i++) {\n inner.matchPromises.push(loadRouteMatch(inner, i));\n }\n await Promise.all(inner.matchPromises);\n const readyPromise = triggerOnReady(inner);\n if (isPromise(readyPromise)) await readyPromise;\n } catch (err) {\n if (isNotFound(err) && !inner.preload) {\n const readyPromise = triggerOnReady(inner);\n if (isPromise(readyPromise)) await readyPromise;\n throw err;\n }\n if (isRedirect(err)) {\n throw err;\n }\n }\n return inner.matches;\n}\nasync function loadRouteChunk(route) {\n if (!route._lazyLoaded && route._lazyPromise === void 0) {\n if (route.lazyFn) {\n route._lazyPromise = route.lazyFn().then((lazyRoute) => {\n const { id: _id, ...options } = lazyRoute.options;\n Object.assign(route.options, options);\n route._lazyLoaded = true;\n route._lazyPromise = void 0;\n });\n } else {\n route._lazyLoaded = true;\n }\n }\n if (!route._componentsLoaded && route._componentsPromise === void 0) {\n const loadComponents = () => {\n var _a;\n const preloads = [];\n for (const type of componentTypes) {\n const preload = (_a = route.options[type]) == null ? void 0 : _a.preload;\n if (preload) preloads.push(preload());\n }\n if (preloads.length)\n return Promise.all(preloads).then(() => {\n route._componentsLoaded = true;\n route._componentsPromise = void 0;\n });\n route._componentsLoaded = true;\n route._componentsPromise = void 0;\n return;\n };\n route._componentsPromise = route._lazyPromise ? route._lazyPromise.then(loadComponents) : loadComponents();\n }\n return route._componentsPromise;\n}\nfunction makeMaybe(value, error) {\n if (error) {\n return { status: \"error\", error };\n }\n return { status: \"success\", value };\n}\nfunction routeNeedsPreload(route) {\n var _a;\n for (const componentType of componentTypes) {\n if ((_a = route.options[componentType]) == null ? void 0 : _a.preload) {\n return true;\n }\n }\n return false;\n}\nconst componentTypes = [\n \"component\",\n \"errorComponent\",\n \"pendingComponent\",\n \"notFoundComponent\"\n];\nexport {\n componentTypes,\n loadMatches,\n loadRouteChunk,\n routeNeedsPreload\n};\n//# sourceMappingURL=load-matches.js.map\n","import { Store, batch } from \"@tanstack/store\";\nimport { createMemoryHistory, createBrowserHistory, parseHref } from \"@tanstack/history\";\nimport { createControlledPromise, deepEqual, replaceEqualDeep, last, findLast, functionalUpdate } from \"./utils.js\";\nimport { processRouteTree } from \"./process-route-tree.js\";\nimport { trimPath, resolvePath, cleanPath, matchPathname, trimPathRight, interpolatePath, joinPaths } from \"./path.js\";\nimport { isNotFound } from \"./not-found.js\";\nimport { setupScrollRestoration } from \"./scroll-restoration.js\";\nimport { defaultParseSearch, defaultStringifySearch } from \"./searchParams.js\";\nimport { rootRouteId } from \"./root.js\";\nimport { redirect, isRedirect } from \"./redirect.js\";\nimport { createLRUCache } from \"./lru-cache.js\";\nimport { loadMatches, loadRouteChunk, routeNeedsPreload } from \"./load-matches.js\";\nfunction defaultSerializeError(err) {\n if (err instanceof Error) {\n const obj = {\n name: err.name,\n message: err.message\n };\n if (process.env.NODE_ENV === \"development\") {\n obj.stack = err.stack;\n }\n return obj;\n }\n return {\n data: err\n };\n}\nfunction getLocationChangeInfo(routerState) {\n const fromLocation = routerState.resolvedLocation;\n const toLocation = routerState.location;\n const pathChanged = (fromLocation == null ? void 0 : fromLocation.pathname) !== toLocation.pathname;\n const hrefChanged = (fromLocation == null ? void 0 : fromLocation.href) !== toLocation.href;\n const hashChanged = (fromLocation == null ? void 0 : fromLocation.hash) !== toLocation.hash;\n return { fromLocation, toLocation, pathChanged, hrefChanged, hashChanged };\n}\nclass RouterCore {\n /**\n * @deprecated Use the `createRouter` function instead\n */\n constructor(options) {\n this.tempLocationKey = `${Math.round(\n Math.random() * 1e7\n )}`;\n this.resetNextScroll = true;\n this.shouldViewTransition = void 0;\n this.isViewTransitionTypesSupported = void 0;\n this.subscribers = /* @__PURE__ */ new Set();\n this.isScrollRestoring = false;\n this.isScrollRestorationSetup = false;\n this.startTransition = (fn) => fn();\n this.update = (newOptions) => {\n var _a;\n if (newOptions.notFoundRoute) {\n console.warn(\n \"The notFoundRoute API is deprecated and will be removed in the next major version. See https://tanstack.com/router/v1/docs/framework/react/guide/not-found-errors#migrating-from-notfoundroute for more info.\"\n );\n }\n const previousOptions = this.options;\n this.options = {\n ...this.options,\n ...newOptions\n };\n this.isServer = this.options.isServer ?? typeof document === \"undefined\";\n this.pathParamsDecodeCharMap = this.options.pathParamsAllowedCharacters ? new Map(\n this.options.pathParamsAllowedCharacters.map((char) => [\n encodeURIComponent(char),\n char\n ])\n ) : void 0;\n if (!this.basepath || newOptions.basepath && newOptions.basepath !== previousOptions.basepath) {\n if (newOptions.basepath === void 0 || newOptions.basepath === \"\" || newOptions.basepath === \"/\") {\n this.basepath = \"/\";\n } else {\n this.basepath = `/${trimPath(newOptions.basepath)}`;\n }\n }\n if (!this.history || this.options.history && this.options.history !== this.history) {\n this.history = this.options.history ?? (this.isServer ? createMemoryHistory({\n initialEntries: [this.basepath || \"/\"]\n }) : createBrowserHistory());\n this.updateLatestLocation();\n }\n if (this.options.routeTree !== this.routeTree) {\n this.routeTree = this.options.routeTree;\n this.buildRouteTree();\n }\n if (!this.__store) {\n this.__store = new Store(getInitialRouterState(this.latestLocation), {\n onUpdate: () => {\n this.__store.state = {\n ...this.state,\n cachedMatches: this.state.cachedMatches.filter(\n (d) => ![\"redirected\"].includes(d.status)\n )\n };\n }\n });\n setupScrollRestoration(this);\n }\n if (typeof window !== \"undefined\" && \"CSS\" in window && typeof ((_a = window.CSS) == null ? void 0 : _a.supports) === \"function\") {\n this.isViewTransitionTypesSupported = window.CSS.supports(\n \"selector(:active-view-transition-type(a)\"\n );\n }\n };\n this.updateLatestLocation = () => {\n this.latestLocation = this.parseLocation(\n this.history.location,\n this.latestLocation\n );\n };\n this.buildRouteTree = () => {\n const { routesById, routesByPath, flatRoutes } = processRouteTree({\n routeTree: this.routeTree,\n initRoute: (route, i) => {\n route.init({\n originalIndex: i\n });\n }\n });\n this.routesById = routesById;\n this.routesByPath = routesByPath;\n this.flatRoutes = flatRoutes;\n const notFoundRoute = this.options.notFoundRoute;\n if (notFoundRoute) {\n notFoundRoute.init({\n originalIndex: 99999999999\n });\n this.routesById[notFoundRoute.id] = notFoundRoute;\n }\n };\n this.subscribe = (eventType, fn) => {\n const listener = {\n eventType,\n fn\n };\n this.subscribers.add(listener);\n return () => {\n this.subscribers.delete(listener);\n };\n };\n this.emit = (routerEvent) => {\n this.subscribers.forEach((listener) => {\n if (listener.eventType === routerEvent.type) {\n listener.fn(routerEvent);\n }\n });\n };\n this.parseLocation = (locationToParse, previousLocation) => {\n const parse = ({\n pathname,\n search,\n hash,\n state\n }) => {\n const parsedSearch = this.options.parseSearch(search);\n const searchStr = this.options.stringifySearch(parsedSearch);\n return {\n pathname,\n searchStr,\n search: replaceEqualDeep(previousLocation == null ? void 0 : previousLocation.search, parsedSearch),\n hash: hash.split(\"#\").reverse()[0] ?? \"\",\n href: `${pathname}${searchStr}${hash}`,\n state: replaceEqualDeep(previousLocation == null ? void 0 : previousLocation.state, state)\n };\n };\n const location = parse(locationToParse);\n const { __tempLocation, __tempKey } = location.state;\n if (__tempLocation && (!__tempKey || __tempKey === this.tempLocationKey)) {\n const parsedTempLocation = parse(__tempLocation);\n parsedTempLocation.state.key = location.state.key;\n parsedTempLocation.state.__TSR_key = location.state.__TSR_key;\n delete parsedTempLocation.state.__tempLocation;\n return {\n ...parsedTempLocation,\n maskedLocation: location\n };\n }\n return location;\n };\n this.resolvePathWithBase = (from, path) => {\n const resolvedPath = resolvePath({\n basepath: this.basepath,\n base: from,\n to: cleanPath(path),\n trailingSlash: this.options.trailingSlash,\n caseSensitive: this.options.caseSensitive,\n parseCache: this.parsePathnameCache\n });\n return resolvedPath;\n };\n this.matchRoutes = (pathnameOrNext, locationSearchOrOpts, opts) => {\n if (typeof pathnameOrNext === \"string\") {\n return this.matchRoutesInternal(\n {\n pathname: pathnameOrNext,\n search: locationSearchOrOpts\n },\n opts\n );\n }\n return this.matchRoutesInternal(pathnameOrNext, locationSearchOrOpts);\n };\n this.parsePathnameCache = createLRUCache(1e3);\n this.getMatchedRoutes = (pathname, routePathname) => {\n return getMatchedRoutes({\n pathname,\n routePathname,\n basepath: this.basepath,\n caseSensitive: this.options.caseSensitive,\n routesByPath: this.routesByPath,\n routesById: this.routesById,\n flatRoutes: this.flatRoutes,\n parseCache: this.parsePathnameCache\n });\n };\n this.cancelMatch = (id) => {\n const match = this.getMatch(id);\n if (!match) return;\n match.abortController.abort();\n clearTimeout(match._nonReactive.pendingTimeout);\n match._nonReactive.pendingTimeout = void 0;\n };\n this.cancelMatches = () => {\n var _a;\n (_a = this.state.pendingMatches) == null ? void 0 : _a.forEach((match) => {\n this.cancelMatch(match.id);\n });\n };\n this.buildLocation = (opts) => {\n const build = (dest = {}) => {\n var _a, _b;\n const currentLocation = dest._fromLocation || this.latestLocation;\n const allCurrentLocationMatches = this.matchRoutes(currentLocation, {\n _buildLocation: true\n });\n const lastMatch = last(allCurrentLocationMatches);\n if (dest.from && process.env.NODE_ENV !== \"production\" && dest._isNavigate) {\n const allFromMatches = this.getMatchedRoutes(\n dest.from,\n void 0\n ).matchedRoutes;\n const matchedFrom = findLast(allCurrentLocationMatches, (d) => {\n return comparePaths(d.fullPath, dest.from);\n });\n const matchedCurrent = findLast(allFromMatches, (d) => {\n return comparePaths(d.fullPath, lastMatch.fullPath);\n });\n if (!matchedFrom && !matchedCurrent) {\n console.warn(`Could not find match for from: ${dest.from}`);\n }\n }\n const defaultedFromPath = dest.unsafeRelative === \"path\" ? currentLocation.pathname : dest.from ?? lastMatch.fullPath;\n const fromPath = this.resolvePathWithBase(defaultedFromPath, \".\");\n const fromSearch = lastMatch.search;\n const fromParams = { ...lastMatch.params };\n const nextTo = dest.to ? this.resolvePathWithBase(fromPath, `${dest.to}`) : this.resolvePathWithBase(fromPath, \".\");\n const nextParams = dest.params === false || dest.params === null ? {} : (dest.params ?? true) === true ? fromParams : Object.assign(\n fromParams,\n functionalUpdate(dest.params, fromParams)\n );\n const interpolatedNextTo = interpolatePath({\n path: nextTo,\n params: nextParams,\n parseCache: this.parsePathnameCache\n }).interpolatedPath;\n const destRoutes = this.matchRoutes(interpolatedNextTo, void 0, {\n _buildLocation: true\n }).map((d) => this.looseRoutesById[d.routeId]);\n if (Object.keys(nextParams).length > 0) {\n for (const route of destRoutes) {\n const fn = ((_a = route.options.params) == null ? void 0 : _a.stringify) ?? route.options.stringifyParams;\n if (fn) {\n Object.assign(nextParams, fn(nextParams));\n }\n }\n }\n const nextPathname = interpolatePath({\n // Use the original template path for interpolation\n // This preserves the original parameter syntax including optional parameters\n path: nextTo,\n params: nextParams,\n leaveWildcards: false,\n leaveParams: opts.leaveParams,\n decodeCharMap: this.pathParamsDecodeCharMap,\n parseCache: this.parsePathnameCache\n }).interpolatedPath;\n let nextSearch = fromSearch;\n if (opts._includeValidateSearch && ((_b = this.options.search) == null ? void 0 : _b.strict)) {\n const validatedSearch = {};\n destRoutes.forEach((route) => {\n if (route.options.validateSearch) {\n try {\n Object.assign(\n validatedSearch,\n validateSearch(route.options.validateSearch, {\n ...validatedSearch,\n ...nextSearch\n })\n );\n } catch {\n }\n }\n });\n nextSearch = validatedSearch;\n }\n nextSearch = applySearchMiddleware({\n search: nextSearch,\n dest,\n destRoutes,\n _includeValidateSearch: opts._includeValidateSearch\n });\n nextSearch = replaceEqualDeep(fromSearch, nextSearch);\n const searchStr = this.options.stringifySearch(nextSearch);\n const hash = dest.hash === true ? currentLocation.hash : dest.hash ? functionalUpdate(dest.hash, currentLocation.hash) : void 0;\n const hashStr = hash ? `#${hash}` : \"\";\n let nextState = dest.state === true ? currentLocation.state : dest.state ? functionalUpdate(dest.state, currentLocation.state) : {};\n nextState = replaceEqualDeep(currentLocation.state, nextState);\n return {\n pathname: nextPathname,\n search: nextSearch,\n searchStr,\n state: nextState,\n hash: hash ?? \"\",\n href: `${nextPathname}${searchStr}${hashStr}`,\n unmaskOnReload: dest.unmaskOnReload\n };\n };\n const buildWithMatches = (dest = {}, maskedDest) => {\n var _a;\n const next = build(dest);\n let maskedNext = maskedDest ? build(maskedDest) : void 0;\n if (!maskedNext) {\n let params = {};\n const foundMask = (_a = this.options.routeMasks) == null ? void 0 : _a.find((d) => {\n const match = matchPathname(\n this.basepath,\n next.pathname,\n {\n to: d.from,\n caseSensitive: false,\n fuzzy: false\n },\n this.parsePathnameCache\n );\n if (match) {\n params = match;\n return true;\n }\n return false;\n });\n if (foundMask) {\n const { from: _from, ...maskProps } = foundMask;\n maskedDest = {\n from: opts.from,\n ...maskProps,\n params\n };\n maskedNext = build(maskedDest);\n }\n }\n if (maskedNext) {\n next.maskedLocation = maskedNext;\n }\n return next;\n };\n if (opts.mask) {\n return buildWithMatches(opts, {\n from: opts.from,\n ...opts.mask\n });\n }\n return buildWithMatches(opts);\n };\n this.commitLocation = ({\n viewTransition,\n ignoreBlocker,\n ...next\n }) => {\n const isSameState = () => {\n const ignoredProps = [\n \"key\",\n // TODO: Remove in v2 - use __TSR_key instead\n \"__TSR_key\",\n \"__TSR_index\",\n \"__hashScrollIntoViewOptions\"\n ];\n ignoredProps.forEach((prop) => {\n next.state[prop] = this.latestLocation.state[prop];\n });\n const isEqual = deepEqual(next.state, this.latestLocation.state);\n ignoredProps.forEach((prop) => {\n delete next.state[prop];\n });\n return isEqual;\n };\n const isSameUrl = this.latestLocation.href === next.href;\n const previousCommitPromise = this.commitLocationPromise;\n this.commitLocationPromise = createControlledPromise(() => {\n previousCommitPromise == null ? void 0 : previousCommitPromise.resolve();\n });\n if (isSameUrl && isSameState()) {\n this.load();\n } else {\n let { maskedLocation, hashScrollIntoView, ...nextHistory } = next;\n if (maskedLocation) {\n nextHistory = {\n ...maskedLocation,\n state: {\n ...maskedLocation.state,\n __tempKey: void 0,\n __tempLocation: {\n ...nextHistory,\n search: nextHistory.searchStr,\n state: {\n ...nextHistory.state,\n __tempKey: void 0,\n __tempLocation: void 0,\n __TSR_key: void 0,\n key: void 0\n // TODO: Remove in v2 - use __TSR_key instead\n }\n }\n }\n };\n if (nextHistory.unmaskOnReload ?? this.options.unmaskOnReload ?? false) {\n nextHistory.state.__tempKey = this.tempLocationKey;\n }\n }\n nextHistory.state.__hashScrollIntoViewOptions = hashScrollIntoView ?? this.options.defaultHashScrollIntoView ?? true;\n this.shouldViewTransition = viewTransition;\n this.history[next.replace ? \"replace\" : \"push\"](\n nextHistory.href,\n nextHistory.state,\n { ignoreBlocker }\n );\n }\n this.resetNextScroll = next.resetScroll ?? true;\n if (!this.history.subscribers.size) {\n this.load();\n }\n return this.commitLocationPromise;\n };\n this.buildAndCommitLocation = ({\n replace,\n resetScroll,\n hashScrollIntoView,\n viewTransition,\n ignoreBlocker,\n href,\n ...rest\n } = {}) => {\n if (href) {\n const currentIndex = this.history.location.state.__TSR_index;\n const parsed = parseHref(href, {\n __TSR_index: replace ? currentIndex : currentIndex + 1\n });\n rest.to = parsed.pathname;\n rest.search = this.options.parseSearch(parsed.search);\n rest.hash = parsed.hash.slice(1);\n }\n const location = this.buildLocation({\n ...rest,\n _includeValidateSearch: true\n });\n return this.commitLocation({\n ...location,\n viewTransition,\n replace,\n resetScroll,\n hashScrollIntoView,\n ignoreBlocker\n });\n };\n this.navigate = ({ to, reloadDocument, href, ...rest }) => {\n if (!reloadDocument && href) {\n try {\n new URL(`${href}`);\n reloadDocument = true;\n } catch {\n }\n }\n if (reloadDocument) {\n if (!href) {\n const location = this.buildLocation({ to, ...rest });\n href = this.history.createHref(location.href);\n }\n if (rest.replace) {\n window.location.replace(href);\n } else {\n window.location.href = href;\n }\n return Promise.resolve();\n }\n return this.buildAndCommitLocation({\n ...rest,\n href,\n to,\n _isNavigate: true\n });\n };\n this.beforeLoad = () => {\n this.cancelMatches();\n this.updateLatestLocation();\n if (this.isServer) {\n const nextLocation = this.buildLocation({\n to: this.latestLocation.pathname,\n search: true,\n params: true,\n hash: true,\n state: true,\n _includeValidateSearch: true\n });\n const normalizeUrl = (url) => {\n try {\n return encodeURI(decodeURI(url));\n } catch {\n return url;\n }\n };\n if (trimPath(normalizeUrl(this.latestLocation.href)) !== trimPath(normalizeUrl(nextLocation.href))) {\n throw redirect({ href: nextLocation.href });\n }\n }\n const pendingMatches = this.matchRoutes(this.latestLocation);\n this.__store.setState((s) => ({\n ...s,\n status: \"pending\",\n statusCode: 200,\n isLoading: true,\n location: this.latestLocation,\n pendingMatches,\n // If a cached moved to pendingMatches, remove it from cachedMatches\n cachedMatches: s.cachedMatches.filter(\n (d) => !pendingMatches.some((e) => e.id === d.id)\n )\n }));\n };\n this.load = async (opts) => {\n let redirect2;\n let notFound;\n let loadPromise;\n loadPromise = new Promise((resolve) => {\n this.startTransition(async () => {\n var _a;\n try {\n this.beforeLoad();\n const next = this.latestLocation;\n const prevLocation = this.state.resolvedLocation;\n if (!this.state.redirect) {\n this.emit({\n type: \"onBeforeNavigate\",\n ...getLocationChangeInfo({\n resolvedLocation: prevLocation,\n location: next\n })\n });\n }\n this.emit({\n type: \"onBeforeLoad\",\n ...getLocationChangeInfo({\n resolvedLocation: prevLocation,\n location: next\n })\n });\n await loadMatches({\n router: this,\n sync: opts == null ? void 0 : opts.sync,\n matches: this.state.pendingMatches,\n location: next,\n updateMatch: this.updateMatch,\n // eslint-disable-next-line @typescript-eslint/require-await\n onReady: async () => {\n this.startViewTransition(async () => {\n let exitingMatches;\n let enteringMatches;\n let stayingMatches;\n batch(() => {\n this.__store.setState((s) => {\n const previousMatches = s.matches;\n const newMatches = s.pendingMatches || s.matches;\n exitingMatches = previousMatches.filter(\n (match) => !newMatches.some((d) => d.id === match.id)\n );\n enteringMatches = newMatches.filter(\n (match) => !previousMatches.some((d) => d.id === match.id)\n );\n stayingMatches = previousMatches.filter(\n (match) => newMatches.some((d) => d.id === match.id)\n );\n return {\n ...s,\n isLoading: false,\n loadedAt: Date.now(),\n matches: newMatches,\n pendingMatches: void 0,\n cachedMatches: [\n ...s.cachedMatches,\n ...exitingMatches.filter((d) => d.status !== \"error\")\n ]\n };\n });\n this.clearExpiredCache();\n });\n [\n [exitingMatches, \"onLeave\"],\n [enteringMatches, \"onEnter\"],\n [stayingMatches, \"onStay\"]\n ].forEach(([matches, hook]) => {\n matches.forEach((match) => {\n var _a2, _b;\n (_b = (_a2 = this.looseRoutesById[match.routeId].options)[hook]) == null ? void 0 : _b.call(_a2, match);\n });\n });\n });\n }\n });\n } catch (err) {\n if (isRedirect(err)) {\n redirect2 = err;\n if (!this.isServer) {\n this.navigate({\n ...redirect2.options,\n replace: true,\n ignoreBlocker: true\n });\n }\n } else if (isNotFound(err)) {\n notFound = err;\n }\n this.__store.setState((s) => ({\n ...s,\n statusCode: redirect2 ? redirect2.status : notFound ? 404 : s.matches.some((d) => d.status === \"error\") ? 500 : 200,\n redirect: redirect2\n }));\n }\n if (this.latestLoadPromise === loadPromise) {\n (_a = this.commitLocationPromise) == null ? void 0 : _a.resolve();\n this.latestLoadPromise = void 0;\n this.commitLocationPromise = void 0;\n }\n resolve();\n });\n });\n this.latestLoadPromise = loadPromise;\n await loadPromise;\n while (this.latestLoadPromise && loadPromise !== this.latestLoadPromise) {\n await this.latestLoadPromise;\n }\n if (this.hasNotFoundMatch()) {\n this.__store.setState((s) => ({\n ...s,\n statusCode: 404\n }));\n }\n };\n this.startViewTransition = (fn) => {\n const shouldViewTransition = this.shouldViewTransition ?? this.options.defaultViewTransition;\n delete this.shouldViewTransition;\n if (shouldViewTransition && typeof document !== \"undefined\" && \"startViewTransition\" in document && typeof document.startViewTransition === \"function\") {\n let startViewTransitionParams;\n if (typeof shouldViewTransition === \"object\" && this.isViewTransitionTypesSupported) {\n const next = this.latestLocation;\n const prevLocation = this.state.resolvedLocation;\n const resolvedViewTransitionTypes = typeof shouldViewTransition.types === \"function\" ? shouldViewTransition.types(\n getLocationChangeInfo({\n resolvedLocation: prevLocation,\n location: next\n })\n ) : shouldViewTransition.types;\n startViewTransitionParams = {\n update: fn,\n types: resolvedViewTransitionTypes\n };\n } else {\n startViewTransitionParams = fn;\n }\n document.startViewTransition(startViewTransitionParams);\n } else {\n fn();\n }\n };\n this.updateMatch = (id, updater) => {\n var _a;\n const matchesKey = ((_a = this.state.pendingMatches) == null ? void 0 : _a.some((d) => d.id === id)) ? \"pendingMatches\" : this.state.matches.some((d) => d.id === id) ? \"matches\" : this.state.cachedMatches.some((d) => d.id === id) ? \"cachedMatches\" : \"\";\n if (matchesKey) {\n this.__store.setState((s) => {\n var _a2;\n return {\n ...s,\n [matchesKey]: (_a2 = s[matchesKey]) == null ? void 0 : _a2.map((d) => d.id === id ? updater(d) : d)\n };\n });\n }\n };\n this.getMatch = (matchId) => {\n var _a;\n const findFn = (d) => d.id === matchId;\n return this.state.cachedMatches.find(findFn) ?? ((_a = this.state.pendingMatches) == null ? void 0 : _a.find(findFn)) ?? this.state.matches.find(findFn);\n };\n this.invalidate = (opts) => {\n const invalidate = (d) => {\n var _a;\n if (((_a = opts == null ? void 0 : opts.filter) == null ? void 0 : _a.call(opts, d)) ?? true) {\n return {\n ...d,\n invalid: true,\n ...(opts == null ? void 0 : opts.forcePending) || d.status === \"error\" ? { status: \"pending\", error: void 0 } : void 0\n };\n }\n return d;\n };\n this.__store.setState((s) => {\n var _a;\n return {\n ...s,\n matches: s.matches.map(invalidate),\n cachedMatches: s.cachedMatches.map(invalidate),\n pendingMatches: (_a = s.pendingMatches) == null ? void 0 : _a.map(invalidate)\n };\n });\n this.shouldViewTransition = false;\n return this.load({ sync: opts == null ? void 0 : opts.sync });\n };\n this.resolveRedirect = (redirect2) => {\n if (!redirect2.options.href) {\n redirect2.options.href = this.buildLocation(redirect2.options).href;\n redirect2.headers.set(\"Location\", redirect2.options.href);\n }\n if (!redirect2.headers.get(\"Location\")) {\n redirect2.headers.set(\"Location\", redirect2.options.href);\n }\n return redirect2;\n };\n this.clearCache = (opts) => {\n const filter = opts == null ? void 0 : opts.filter;\n if (filter !== void 0) {\n this.__store.setState((s) => {\n return {\n ...s,\n cachedMatches: s.cachedMatches.filter(\n (m) => !filter(m)\n )\n };\n });\n } else {\n this.__store.setState((s) => {\n return {\n ...s,\n cachedMatches: []\n };\n });\n }\n };\n this.clearExpiredCache = () => {\n const filter = (d) => {\n const route = this.looseRoutesById[d.routeId];\n if (!route.options.loader) {\n return true;\n }\n const gcTime = (d.preload ? route.options.preloadGcTime ?? this.options.defaultPreloadGcTime : route.options.gcTime ?? this.options.defaultGcTime) ?? 5 * 60 * 1e3;\n const isError = d.status === \"error\";\n if (isError) return true;\n const gcEligible = Date.now() - d.updatedAt >= gcTime;\n return gcEligible;\n };\n this.clearCache({ filter });\n };\n this.loadRouteChunk = loadRouteChunk;\n this.preloadRoute = async (opts) => {\n const next = this.buildLocation(opts);\n let matches = this.matchRoutes(next, {\n throwOnError: true,\n preload: true,\n dest: opts\n });\n const activeMatchIds = new Set(\n [...this.state.matches, ...this.state.pendingMatches ?? []].map(\n (d) => d.id\n )\n );\n const loadedMatchIds = /* @__PURE__ */ new Set([\n ...activeMatchIds,\n ...this.state.cachedMatches.map((d) => d.id)\n ]);\n batch(() => {\n matches.forEach((match) => {\n if (!loadedMatchIds.has(match.id)) {\n this.__store.setState((s) => ({\n ...s,\n cachedMatches: [...s.cachedMatches, match]\n }));\n }\n });\n });\n try {\n matches = await loadMatches({\n router: this,\n matches,\n location: next,\n preload: true,\n updateMatch: (id, updater) => {\n if (activeMatchIds.has(id)) {\n matches = matches.map((d) => d.id === id ? updater(d) : d);\n } else {\n this.updateMatch(id, updater);\n }\n }\n });\n return matches;\n } catch (err) {\n if (isRedirect(err)) {\n if (err.options.reloadDocument) {\n return void 0;\n }\n return await this.preloadRoute({\n ...err.options,\n _fromLocation: next\n });\n }\n if (!isNotFound(err)) {\n console.error(err);\n }\n return void 0;\n }\n };\n this.matchRoute = (location, opts) => {\n const matchLocation = {\n ...location,\n to: location.to ? this.resolvePathWithBase(\n location.from || \"\",\n location.to\n ) : void 0,\n params: location.params || {},\n leaveParams: true\n };\n const next = this.buildLocation(matchLocation);\n if ((opts == null ? void 0 : opts.pending) && this.state.status !== \"pending\") {\n return false;\n }\n const pending = (opts == null ? void 0 : opts.pending) === void 0 ? !this.state.isLoading : opts.pending;\n const baseLocation = pending ? this.latestLocation : this.state.resolvedLocation || this.state.location;\n const match = matchPathname(\n this.basepath,\n baseLocation.pathname,\n {\n ...opts,\n to: next.pathname\n },\n this.parsePathnameCache\n );\n if (!match) {\n return false;\n }\n if (location.params) {\n if (!deepEqual(match, location.params, { partial: true })) {\n return false;\n }\n }\n if (match && ((opts == null ? void 0 : opts.includeSearch) ?? true)) {\n return deepEqual(baseLocation.search, next.search, { partial: true }) ? match : false;\n }\n return match;\n };\n this.hasNotFoundMatch = () => {\n return this.__store.state.matches.some(\n (d) => d.status === \"notFound\" || d.globalNotFound\n );\n };\n this.update({\n defaultPreloadDelay: 50,\n defaultPendingMs: 1e3,\n defaultPendingMinMs: 500,\n context: void 0,\n ...options,\n caseSensitive: options.caseSensitive ?? false,\n notFoundMode: options.notFoundMode ?? \"fuzzy\",\n stringifySearch: options.stringifySearch ?? defaultStringifySearch,\n parseSearch: options.parseSearch ?? defaultParseSearch\n });\n if (typeof document !== \"undefined\") {\n self.__TSR_ROUTER__ = this;\n }\n }\n isShell() {\n return !!this.options.isShell;\n }\n isPrerendering() {\n return !!this.options.isPrerendering;\n }\n get state() {\n return this.__store.state;\n }\n get looseRoutesById() {\n return this.routesById;\n }\n matchRoutesInternal(next, opts) {\n var _a;\n const { foundRoute, matchedRoutes, routeParams } = this.getMatchedRoutes(\n next.pathname,\n (_a = opts == null ? void 0 : opts.dest) == null ? void 0 : _a.to\n );\n let isGlobalNotFound = false;\n if (\n // If we found a route, and it's not an index route and we have left over path\n foundRoute ? foundRoute.path !== \"/\" && routeParams[\"**\"] : (\n // Or if we didn't find a route and we have left over path\n trimPathRight(next.pathname)\n )\n ) {\n if (this.options.notFoundRoute) {\n matchedRoutes.push(this.options.notFoundRoute);\n } else {\n isGlobalNotFound = true;\n }\n }\n const globalNotFoundRouteId = (() => {\n if (!isGlobalNotFound) {\n return void 0;\n }\n if (this.options.notFoundMode !== \"root\") {\n for (let i = matchedRoutes.length - 1; i >= 0; i--) {\n const route = matchedRoutes[i];\n if (route.children) {\n return route.id;\n }\n }\n }\n return rootRouteId;\n })();\n const matches = [];\n const getParentContext = (parentMatch) => {\n const parentMatchId = parentMatch == null ? void 0 : parentMatch.id;\n const parentContext = !parentMatchId ? this.options.context ?? void 0 : parentMatch.context ?? this.options.context ?? void 0;\n return parentContext;\n };\n matchedRoutes.forEach((route, index) => {\n var _a2, _b, _c;\n const parentMatch = matches[index - 1];\n const [preMatchSearch, strictMatchSearch, searchError] = (() => {\n const parentSearch = (parentMatch == null ? void 0 : parentMatch.search) ?? next.search;\n const parentStrictSearch = (parentMatch == null ? void 0 : parentMatch._strictSearch) ?? void 0;\n try {\n const strictSearch = validateSearch(route.options.validateSearch, { ...parentSearch }) ?? void 0;\n return [\n {\n ...parentSearch,\n ...strictSearch\n },\n { ...parentStrictSearch, ...strictSearch },\n void 0\n ];\n } catch (err) {\n let searchParamError = err;\n if (!(err instanceof SearchParamError)) {\n searchParamError = new SearchParamError(err.message, {\n cause: err\n });\n }\n if (opts == null ? void 0 : opts.throwOnError) {\n throw searchParamError;\n }\n return [parentSearch, {}, searchParamError];\n }\n })();\n const loaderDeps = ((_b = (_a2 = route.options).loaderDeps) == null ? void 0 : _b.call(_a2, {\n search: preMatchSearch\n })) ?? \"\";\n const loaderDepsHash = loaderDeps ? JSON.stringify(loaderDeps) : \"\";\n const { interpolatedPath, usedParams } = interpolatePath({\n path: route.fullPath,\n params: routeParams,\n decodeCharMap: this.pathParamsDecodeCharMap\n });\n const matchId = interpolatePath({\n path: route.id,\n params: routeParams,\n leaveWildcards: true,\n decodeCharMap: this.pathParamsDecodeCharMap,\n parseCache: this.parsePathnameCache\n }).interpolatedPath + loaderDepsHash;\n const existingMatch = this.getMatch(matchId);\n const previousMatch = this.state.matches.find(\n (d) => d.routeId === route.id\n );\n const strictParams = (existingMatch == null ? void 0 : existingMatch._strictParams) ?? usedParams;\n let paramsError = void 0;\n if (!existingMatch) {\n const strictParseParams = ((_c = route.options.params) == null ? void 0 : _c.parse) ?? route.options.parseParams;\n if (strictParseParams) {\n try {\n Object.assign(\n strictParams,\n strictParseParams(strictParams)\n );\n } catch (err) {\n paramsError = new PathParamError(err.message, {\n cause: err\n });\n if (opts == null ? void 0 : opts.throwOnError) {\n throw paramsError;\n }\n }\n }\n }\n Object.assign(routeParams, strictParams);\n const cause = previousMatch ? \"stay\" : \"enter\";\n let match;\n if (existingMatch) {\n match = {\n ...existingMatch,\n cause,\n params: previousMatch ? replaceEqualDeep(previousMatch.params, routeParams) : routeParams,\n _strictParams: strictParams,\n search: previousMatch ? replaceEqualDeep(previousMatch.search, preMatchSearch) : replaceEqualDeep(existingMatch.search, preMatchSearch),\n _strictSearch: strictMatchSearch\n };\n } else {\n const status = route.options.loader || route.options.beforeLoad || route.lazyFn || routeNeedsPreload(route) ? \"pending\" : \"success\";\n match = {\n id: matchId,\n index,\n routeId: route.id,\n params: previousMatch ? replaceEqualDeep(previousMatch.params, routeParams) : routeParams,\n _strictParams: strictParams,\n pathname: joinPaths([this.basepath, interpolatedPath]),\n updatedAt: Date.now(),\n search: previousMatch ? replaceEqualDeep(previousMatch.search, preMatchSearch) : preMatchSearch,\n _strictSearch: strictMatchSearch,\n searchError: void 0,\n status,\n isFetching: false,\n error: void 0,\n paramsError,\n __routeContext: void 0,\n _nonReactive: {\n loadPromise: createControlledPromise()\n },\n __beforeLoadContext: void 0,\n context: {},\n abortController: new AbortController(),\n fetchCount: 0,\n cause,\n loaderDeps: previousMatch ? replaceEqualDeep(previousMatch.loaderDeps, loaderDeps) : loaderDeps,\n invalid: false,\n preload: false,\n links: void 0,\n scripts: void 0,\n headScripts: void 0,\n meta: void 0,\n staticData: route.options.staticData || {},\n fullPath: route.fullPath\n };\n }\n if (!(opts == null ? void 0 : opts.preload)) {\n match.globalNotFound = globalNotFoundRouteId === route.id;\n }\n match.searchError = searchError;\n const parentContext = getParentContext(parentMatch);\n match.context = {\n ...parentContext,\n ...match.__routeContext,\n ...match.__beforeLoadContext\n };\n matches.push(match);\n });\n matches.forEach((match, index) => {\n const route = this.looseRoutesById[match.routeId];\n const existingMatch = this.getMatch(match.id);\n if (!existingMatch && (opts == null ? void 0 : opts._buildLocation) !== true) {\n const parentMatch = matches[index - 1];\n const parentContext = getParentContext(parentMatch);\n if (route.options.context) {\n const contextFnContext = {\n deps: match.loaderDeps,\n params: match.params,\n context: parentContext ?? {},\n location: next,\n navigate: (opts2) => this.navigate({ ...opts2, _fromLocation: next }),\n buildLocation: this.buildLocation,\n cause: match.cause,\n abortController: match.abortController,\n preload: !!match.preload,\n matches\n };\n match.__routeContext = route.options.context(contextFnContext) ?? void 0;\n }\n match.context = {\n ...parentContext,\n ...match.__routeContext,\n ...match.__beforeLoadContext\n };\n }\n });\n return matches;\n }\n}\nclass SearchParamError extends Error {\n}\nclass PathParamError extends Error {\n}\nconst normalize = (str) => str.endsWith(\"/\") && str.length > 1 ? str.slice(0, -1) : str;\nfunction comparePaths(a, b) {\n return normalize(a) === normalize(b);\n}\nfunction lazyFn(fn, key) {\n return async (...args) => {\n const imported = await fn();\n return imported[key || \"default\"](...args);\n };\n}\nfunction getInitialRouterState(location) {\n return {\n loadedAt: 0,\n isLoading: false,\n isTransitioning: false,\n status: \"idle\",\n resolvedLocation: void 0,\n location,\n matches: [],\n pendingMatches: [],\n cachedMatches: [],\n statusCode: 200\n };\n}\nfunction validateSearch(validateSearch2, input) {\n if (validateSearch2 == null) return {};\n if (\"~standard\" in validateSearch2) {\n const result = validateSearch2[\"~standard\"].validate(input);\n if (result instanceof Promise)\n throw new SearchParamError(\"Async validation not supported\");\n if (result.issues)\n throw new SearchParamError(JSON.stringify(result.issues, void 0, 2), {\n cause: result\n });\n return result.value;\n }\n if (\"parse\" in validateSearch2) {\n return validateSearch2.parse(input);\n }\n if (typeof validateSearch2 === \"function\") {\n return validateSearch2(input);\n }\n return {};\n}\nfunction getMatchedRoutes({\n pathname,\n routePathname,\n basepath,\n caseSensitive,\n routesByPath,\n routesById,\n flatRoutes,\n parseCache\n}) {\n let routeParams = {};\n const trimmedPath = trimPathRight(pathname);\n const getMatchedParams = (route) => {\n var _a;\n const result = matchPathname(\n basepath,\n trimmedPath,\n {\n to: route.fullPath,\n caseSensitive: ((_a = route.options) == null ? void 0 : _a.caseSensitive) ?? caseSensitive,\n // we need fuzzy matching for `notFoundMode: 'fuzzy'`\n fuzzy: true\n },\n parseCache\n );\n return result;\n };\n let foundRoute = routePathname !== void 0 ? routesByPath[routePathname] : void 0;\n if (foundRoute) {\n routeParams = getMatchedParams(foundRoute);\n } else {\n let fuzzyMatch = void 0;\n for (const route of flatRoutes) {\n const matchedParams = getMatchedParams(route);\n if (matchedParams) {\n if (route.path !== \"/\" && matchedParams[\"**\"]) {\n if (!fuzzyMatch) {\n fuzzyMatch = { foundRoute: route, routeParams: matchedParams };\n }\n } else {\n foundRoute = route;\n routeParams = matchedParams;\n break;\n }\n }\n }\n if (!foundRoute && fuzzyMatch) {\n foundRoute = fuzzyMatch.foundRoute;\n routeParams = fuzzyMatch.routeParams;\n }\n }\n let routeCursor = foundRoute || routesById[rootRouteId];\n const matchedRoutes = [routeCursor];\n while (routeCursor.parentRoute) {\n routeCursor = routeCursor.parentRoute;\n matchedRoutes.push(routeCursor);\n }\n matchedRoutes.reverse();\n return { matchedRoutes, routeParams, foundRoute };\n}\nfunction applySearchMiddleware({\n search,\n dest,\n destRoutes,\n _includeValidateSearch\n}) {\n const allMiddlewares = destRoutes.reduce(\n (acc, route) => {\n var _a;\n const middlewares = [];\n if (\"search\" in route.options) {\n if ((_a = route.options.search) == null ? void 0 : _a.middlewares) {\n middlewares.push(...route.options.search.middlewares);\n }\n } else if (route.options.preSearchFilters || route.options.postSearchFilters) {\n const legacyMiddleware = ({\n search: search2,\n next\n }) => {\n let nextSearch = search2;\n if (\"preSearchFilters\" in route.options && route.options.preSearchFilters) {\n nextSearch = route.options.preSearchFilters.reduce(\n (prev, next2) => next2(prev),\n search2\n );\n }\n const result = next(nextSearch);\n if (\"postSearchFilters\" in route.options && route.options.postSearchFilters) {\n return route.options.postSearchFilters.reduce(\n (prev, next2) => next2(prev),\n result\n );\n }\n return result;\n };\n middlewares.push(legacyMiddleware);\n }\n if (_includeValidateSearch && route.options.validateSearch) {\n const validate = ({ search: search2, next }) => {\n const result = next(search2);\n try {\n const validatedSearch = {\n ...result,\n ...validateSearch(route.options.validateSearch, result) ?? void 0\n };\n return validatedSearch;\n } catch {\n return result;\n }\n };\n middlewares.push(validate);\n }\n return acc.concat(middlewares);\n },\n []\n ) ?? [];\n const final = ({ search: search2 }) => {\n if (!dest.search) {\n return {};\n }\n if (dest.search === true) {\n return search2;\n }\n return functionalUpdate(dest.search, search2);\n };\n allMiddlewares.push(final);\n const applyNext = (index, currentSearch) => {\n if (index >= allMiddlewares.length) {\n return currentSearch;\n }\n const middleware = allMiddlewares[index];\n const next = (newSearch) => {\n return applyNext(index + 1, newSearch);\n };\n return middleware({ search: currentSearch, next });\n };\n return applyNext(0, search);\n}\nexport {\n PathParamError,\n RouterCore,\n SearchParamError,\n defaultSerializeError,\n getInitialRouterState,\n getLocationChangeInfo,\n getMatchedRoutes,\n lazyFn\n};\n//# sourceMappingURL=router.js.map\n","const preloadWarning = \"Error preloading route! ☝️\";\nexport {\n preloadWarning\n};\n//# sourceMappingURL=link.js.map\n","import invariant from \"tiny-invariant\";\nimport { trimPathLeft, joinPaths } from \"./path.js\";\nimport { notFound } from \"./not-found.js\";\nimport { rootRouteId } from \"./root.js\";\nclass BaseRoute {\n constructor(options) {\n this.init = (opts) => {\n var _a, _b;\n this.originalIndex = opts.originalIndex;\n const options2 = this.options;\n const isRoot = !(options2 == null ? void 0 : options2.path) && !(options2 == null ? void 0 : options2.id);\n this.parentRoute = (_b = (_a = this.options).getParentRoute) == null ? void 0 : _b.call(_a);\n if (isRoot) {\n this._path = rootRouteId;\n } else if (!this.parentRoute) {\n invariant(\n false,\n `Child Route instances must pass a 'getParentRoute: () => ParentRoute' option that returns a Route instance.`\n );\n }\n let path = isRoot ? rootRouteId : options2 == null ? void 0 : options2.path;\n if (path && path !== \"/\") {\n path = trimPathLeft(path);\n }\n const customId = (options2 == null ? void 0 : options2.id) || path;\n let id = isRoot ? rootRouteId : joinPaths([\n this.parentRoute.id === rootRouteId ? \"\" : this.parentRoute.id,\n customId\n ]);\n if (path === rootRouteId) {\n path = \"/\";\n }\n if (id !== rootRouteId) {\n id = joinPaths([\"/\", id]);\n }\n const fullPath = id === rootRouteId ? \"/\" : joinPaths([this.parentRoute.fullPath, path]);\n this._path = path;\n this._id = id;\n this._fullPath = fullPath;\n this._to = fullPath;\n };\n this.clone = (other) => {\n this._path = other._path;\n this._id = other._id;\n this._fullPath = other._fullPath;\n this._to = other._to;\n this.options.getParentRoute = other.options.getParentRoute;\n this.children = other.children;\n };\n this.addChildren = (children) => {\n return this._addFileChildren(children);\n };\n this._addFileChildren = (children) => {\n if (Array.isArray(children)) {\n this.children = children;\n }\n if (typeof children === \"object\" && children !== null) {\n this.children = Object.values(children);\n }\n return this;\n };\n this._addFileTypes = () => {\n return this;\n };\n this.updateLoader = (options2) => {\n Object.assign(this.options, options2);\n return this;\n };\n this.update = (options2) => {\n Object.assign(this.options, options2);\n return this;\n };\n this.lazy = (lazyFn) => {\n this.lazyFn = lazyFn;\n return this;\n };\n this.options = options || {};\n this.isRoot = !(options == null ? void 0 : options.getParentRoute);\n if ((options == null ? void 0 : options.id) && (options == null ? void 0 : options.path)) {\n throw new Error(`Route cannot have both an 'id' and a 'path' option.`);\n }\n }\n get to() {\n return this._to;\n }\n get id() {\n return this._id;\n }\n get path() {\n return this._path;\n }\n get fullPath() {\n return this._fullPath;\n }\n}\nclass BaseRouteApi {\n constructor({ id }) {\n this.notFound = (opts) => {\n return notFound({ routeId: this.id, ...opts });\n };\n this.id = id;\n }\n}\nclass BaseRootRoute extends BaseRoute {\n constructor(options) {\n super(options);\n }\n}\nexport {\n BaseRootRoute,\n BaseRoute,\n BaseRouteApi\n};\n//# sourceMappingURL=route.js.map\n","import { jsx, jsxs } from \"react/jsx-runtime\";\nimport * as React from \"react\";\nfunction CatchBoundary(props) {\n const errorComponent = props.errorComponent ?? ErrorComponent;\n return /* @__PURE__ */ jsx(\n CatchBoundaryImpl,\n {\n getResetKey: props.getResetKey,\n onCatch: props.onCatch,\n children: ({ error, reset }) => {\n if (error) {\n return React.createElement(errorComponent, {\n error,\n reset\n });\n }\n return props.children;\n }\n }\n );\n}\nclass CatchBoundaryImpl extends React.Component {\n constructor() {\n super(...arguments);\n this.state = { error: null };\n }\n static getDerivedStateFromProps(props) {\n return { resetKey: props.getResetKey() };\n }\n static getDerivedStateFromError(error) {\n return { error };\n }\n reset() {\n this.setState({ error: null });\n }\n componentDidUpdate(prevProps, prevState) {\n if (prevState.error && prevState.resetKey !== this.state.resetKey) {\n this.reset();\n }\n }\n componentDidCatch(error, errorInfo) {\n if (this.props.onCatch) {\n this.props.onCatch(error, errorInfo);\n }\n }\n render() {\n return this.props.children({\n error: this.state.resetKey !== this.props.getResetKey() ? null : this.state.error,\n reset: () => {\n this.reset();\n }\n });\n }\n}\nfunction ErrorComponent({ error }) {\n const [show, setShow] = React.useState(process.env.NODE_ENV !== \"production\");\n return /* @__PURE__ */ jsxs(\"div\", { style: { padding: \".5rem\", maxWidth: \"100%\" }, children: [\n /* @__PURE__ */ jsxs(\"div\", { style: { display: \"flex\", alignItems: \"center\", gap: \".5rem\" }, children: [\n /* @__PURE__ */ jsx(\"strong\", { style: { fontSize: \"1rem\" }, children: \"Something went wrong!\" }),\n /* @__PURE__ */ jsx(\n \"button\",\n {\n style: {\n appearance: \"none\",\n fontSize: \".6em\",\n border: \"1px solid currentColor\",\n padding: \".1rem .2rem\",\n fontWeight: \"bold\",\n borderRadius: \".25rem\"\n },\n onClick: () => setShow((d) => !d),\n children: show ? \"Hide Error\" : \"Show Error\"\n }\n )\n ] }),\n /* @__PURE__ */ jsx(\"div\", { style: { height: \".25rem\" } }),\n show ? /* @__PURE__ */ jsx(\"div\", { children: /* @__PURE__ */ jsx(\n \"pre\",\n {\n style: {\n fontSize: \".7em\",\n border: \"1px solid red\",\n borderRadius: \".25rem\",\n padding: \".3rem\",\n color: \"red\",\n overflow: \"auto\"\n },\n children: error.message ? /* @__PURE__ */ jsx(\"code\", { children: error.message }) : null\n }\n ) }) : null\n ] });\n}\nexport {\n CatchBoundary,\n ErrorComponent\n};\n//# sourceMappingURL=CatchBoundary.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport React__default from \"react\";\nfunction ClientOnly({ children, fallback = null }) {\n return useHydrated() ? /* @__PURE__ */ jsx(React__default.Fragment, { children }) : /* @__PURE__ */ jsx(React__default.Fragment, { children: fallback });\n}\nfunction useHydrated() {\n return React__default.useSyncExternalStore(\n subscribe,\n () => true,\n () => false\n );\n}\nfunction subscribe() {\n return () => {\n };\n}\nexport {\n ClientOnly\n};\n//# sourceMappingURL=ClientOnly.js.map\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","'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","/**\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/with-selector.production.js');\n} else {\n module.exports = require('../cjs/use-sync-external-store-shim/with-selector.development.js');\n}\n","import { useSyncExternalStoreWithSelector } from \"use-sync-external-store/shim/with-selector.js\";\nexport * from \"@tanstack/store\";\nfunction useStore(store, selector = (d) => d) {\n const slice = useSyncExternalStoreWithSelector(\n store.subscribe,\n () => store.state,\n () => store.state,\n selector,\n shallow\n );\n return slice;\n}\nfunction shallow(objA, objB) {\n if (Object.is(objA, objB)) {\n return true;\n }\n if (typeof objA !== \"object\" || objA === null || typeof objB !== \"object\" || objB === null) {\n return false;\n }\n if (objA instanceof Map && objB instanceof Map) {\n if (objA.size !== objB.size) return false;\n for (const [k, v] of objA) {\n if (!objB.has(k) || !Object.is(v, objB.get(k))) return false;\n }\n return true;\n }\n if (objA instanceof Set && objB instanceof Set) {\n if (objA.size !== objB.size) return false;\n for (const v of objA) {\n if (!objB.has(v)) return false;\n }\n return true;\n }\n if (objA instanceof Date && objB instanceof Date) {\n if (objA.getTime() !== objB.getTime()) return false;\n return true;\n }\n const keysA = getOwnKeys(objA);\n if (keysA.length !== getOwnKeys(objB).length) {\n return false;\n }\n for (let i = 0; i < keysA.length; i++) {\n if (!Object.prototype.hasOwnProperty.call(objB, keysA[i]) || !Object.is(objA[keysA[i]], objB[keysA[i]])) {\n return false;\n }\n }\n return true;\n}\nfunction getOwnKeys(obj) {\n return Object.keys(obj).concat(\n Object.getOwnPropertySymbols(obj)\n );\n}\nexport {\n shallow,\n useStore\n};\n//# sourceMappingURL=index.js.map\n","import * as React from \"react\";\nconst routerContext = React.createContext(null);\nfunction getRouterContext() {\n if (typeof document === \"undefined\") {\n return routerContext;\n }\n if (window.__TSR_ROUTER_CONTEXT__) {\n return window.__TSR_ROUTER_CONTEXT__;\n }\n window.__TSR_ROUTER_CONTEXT__ = routerContext;\n return routerContext;\n}\nexport {\n getRouterContext\n};\n//# sourceMappingURL=routerContext.js.map\n","import * as React from \"react\";\nimport warning from \"tiny-warning\";\nimport { getRouterContext } from \"./routerContext.js\";\nfunction useRouter(opts) {\n const value = React.useContext(getRouterContext());\n warning(\n !(((opts == null ? void 0 : opts.warn) ?? true) && !value),\n \"useRouter must be used inside a component!\"\n );\n return value;\n}\nexport {\n useRouter\n};\n//# sourceMappingURL=useRouter.js.map\n","import { useStore } from \"@tanstack/react-store\";\nimport { useRef } from \"react\";\nimport { replaceEqualDeep } from \"@tanstack/router-core\";\nimport { useRouter } from \"./useRouter.js\";\nfunction useRouterState(opts) {\n const contextRouter = useRouter({\n warn: (opts == null ? void 0 : opts.router) === void 0\n });\n const router = (opts == null ? void 0 : opts.router) || contextRouter;\n const previousResult = useRef(void 0);\n return useStore(router.__store, (state) => {\n if (opts == null ? void 0 : opts.select) {\n if (opts.structuralSharing ?? router.options.defaultStructuralSharing) {\n const newSlice = replaceEqualDeep(\n previousResult.current,\n opts.select(state)\n );\n previousResult.current = newSlice;\n return newSlice;\n }\n return opts.select(state);\n }\n return state;\n });\n}\nexport {\n useRouterState\n};\n//# sourceMappingURL=useRouterState.js.map\n","import * as React from \"react\";\nconst matchContext = React.createContext(void 0);\nconst dummyMatchContext = React.createContext(\n void 0\n);\nexport {\n dummyMatchContext,\n matchContext\n};\n//# sourceMappingURL=matchContext.js.map\n","import * as React from \"react\";\nimport invariant from \"tiny-invariant\";\nimport { useRouterState } from \"./useRouterState.js\";\nimport { dummyMatchContext, matchContext } from \"./matchContext.js\";\nfunction useMatch(opts) {\n const nearestMatchId = React.useContext(\n opts.from ? dummyMatchContext : matchContext\n );\n const matchSelection = useRouterState({\n select: (state) => {\n const match = state.matches.find(\n (d) => opts.from ? opts.from === d.routeId : d.id === nearestMatchId\n );\n invariant(\n !((opts.shouldThrow ?? true) && !match),\n `Could not find ${opts.from ? `an active match from \"${opts.from}\"` : \"a nearest match!\"}`\n );\n if (match === void 0) {\n return void 0;\n }\n return opts.select ? opts.select(match) : match;\n },\n structuralSharing: opts.structuralSharing\n });\n return matchSelection;\n}\nexport {\n useMatch\n};\n//# sourceMappingURL=useMatch.js.map\n","import { useMatch } from \"./useMatch.js\";\nfunction useLoaderData(opts) {\n return useMatch({\n from: opts.from,\n strict: opts.strict,\n structuralSharing: opts.structuralSharing,\n select: (s) => {\n return opts.select ? opts.select(s.loaderData) : s.loaderData;\n }\n });\n}\nexport {\n useLoaderData\n};\n//# sourceMappingURL=useLoaderData.js.map\n","import { useMatch } from \"./useMatch.js\";\nfunction useLoaderDeps(opts) {\n const { select, ...rest } = opts;\n return useMatch({\n ...rest,\n select: (s) => {\n return select ? select(s.loaderDeps) : s.loaderDeps;\n }\n });\n}\nexport {\n useLoaderDeps\n};\n//# sourceMappingURL=useLoaderDeps.js.map\n","import { useMatch } from \"./useMatch.js\";\nfunction useParams(opts) {\n return useMatch({\n from: opts.from,\n shouldThrow: opts.shouldThrow,\n structuralSharing: opts.structuralSharing,\n strict: opts.strict,\n select: (match) => {\n const params = opts.strict === false ? match.params : match._strictParams;\n return opts.select ? opts.select(params) : params;\n }\n });\n}\nexport {\n useParams\n};\n//# sourceMappingURL=useParams.js.map\n","import { useMatch } from \"./useMatch.js\";\nfunction useSearch(opts) {\n return useMatch({\n from: opts.from,\n strict: opts.strict,\n shouldThrow: opts.shouldThrow,\n structuralSharing: opts.structuralSharing,\n select: (match) => {\n return opts.select ? opts.select(match.search) : match.search;\n }\n });\n}\nexport {\n useSearch\n};\n//# sourceMappingURL=useSearch.js.map\n","import * as React from \"react\";\nimport { useRouter } from \"./useRouter.js\";\nfunction useNavigate(_defaultOpts) {\n const router = useRouter();\n return React.useCallback(\n (options) => {\n return router.navigate({\n ...options,\n from: options.from ?? (_defaultOpts == null ? void 0 : _defaultOpts.from)\n });\n },\n [_defaultOpts == null ? void 0 : _defaultOpts.from, router]\n );\n}\nfunction Navigate(props) {\n const router = useRouter();\n const navigate = useNavigate();\n const previousPropsRef = React.useRef(null);\n React.useEffect(() => {\n if (previousPropsRef.current !== props) {\n navigate(props);\n previousPropsRef.current = props;\n }\n }, [router, props, navigate]);\n return null;\n}\nexport {\n Navigate,\n useNavigate\n};\n//# sourceMappingURL=useNavigate.js.map\n","/**\n * @license React\n * react-dom.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 formatProdErrorMessage(code) {\n var url = \"https://react.dev/errors/\" + code;\n if (1 < arguments.length) {\n url += \"?args[]=\" + encodeURIComponent(arguments[1]);\n for (var i = 2; i < arguments.length; i++)\n url += \"&args[]=\" + encodeURIComponent(arguments[i]);\n }\n return (\n \"Minified React error #\" +\n code +\n \"; visit \" +\n url +\n \" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\"\n );\n}\nfunction noop() {}\nvar Internals = {\n d: {\n f: noop,\n r: function () {\n throw Error(formatProdErrorMessage(522));\n },\n D: noop,\n C: noop,\n L: noop,\n m: noop,\n X: noop,\n S: noop,\n M: noop\n },\n p: 0,\n findDOMNode: null\n },\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\");\nfunction createPortal$1(children, containerInfo, implementation) {\n var key =\n 3 < arguments.length && void 0 !== arguments[3] ? arguments[3] : null;\n return {\n $$typeof: REACT_PORTAL_TYPE,\n key: null == key ? null : \"\" + key,\n children: children,\n containerInfo: containerInfo,\n implementation: implementation\n };\n}\nvar ReactSharedInternals =\n React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;\nfunction getCrossOriginStringAs(as, input) {\n if (\"font\" === as) return \"\";\n if (\"string\" === typeof input)\n return \"use-credentials\" === input ? input : \"\";\n}\nexports.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE =\n Internals;\nexports.createPortal = function (children, container) {\n var key =\n 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : null;\n if (\n !container ||\n (1 !== container.nodeType &&\n 9 !== container.nodeType &&\n 11 !== container.nodeType)\n )\n throw Error(formatProdErrorMessage(299));\n return createPortal$1(children, container, null, key);\n};\nexports.flushSync = function (fn) {\n var previousTransition = ReactSharedInternals.T,\n previousUpdatePriority = Internals.p;\n try {\n if (((ReactSharedInternals.T = null), (Internals.p = 2), fn)) return fn();\n } finally {\n (ReactSharedInternals.T = previousTransition),\n (Internals.p = previousUpdatePriority),\n Internals.d.f();\n }\n};\nexports.preconnect = function (href, options) {\n \"string\" === typeof href &&\n (options\n ? ((options = options.crossOrigin),\n (options =\n \"string\" === typeof options\n ? \"use-credentials\" === options\n ? options\n : \"\"\n : void 0))\n : (options = null),\n Internals.d.C(href, options));\n};\nexports.prefetchDNS = function (href) {\n \"string\" === typeof href && Internals.d.D(href);\n};\nexports.preinit = function (href, options) {\n if (\"string\" === typeof href && options && \"string\" === typeof options.as) {\n var as = options.as,\n crossOrigin = getCrossOriginStringAs(as, options.crossOrigin),\n integrity =\n \"string\" === typeof options.integrity ? options.integrity : void 0,\n fetchPriority =\n \"string\" === typeof options.fetchPriority\n ? options.fetchPriority\n : void 0;\n \"style\" === as\n ? Internals.d.S(\n href,\n \"string\" === typeof options.precedence ? options.precedence : void 0,\n {\n crossOrigin: crossOrigin,\n integrity: integrity,\n fetchPriority: fetchPriority\n }\n )\n : \"script\" === as &&\n Internals.d.X(href, {\n crossOrigin: crossOrigin,\n integrity: integrity,\n fetchPriority: fetchPriority,\n nonce: \"string\" === typeof options.nonce ? options.nonce : void 0\n });\n }\n};\nexports.preinitModule = function (href, options) {\n if (\"string\" === typeof href)\n if (\"object\" === typeof options && null !== options) {\n if (null == options.as || \"script\" === options.as) {\n var crossOrigin = getCrossOriginStringAs(\n options.as,\n options.crossOrigin\n );\n Internals.d.M(href, {\n crossOrigin: crossOrigin,\n integrity:\n \"string\" === typeof options.integrity ? options.integrity : void 0,\n nonce: \"string\" === typeof options.nonce ? options.nonce : void 0\n });\n }\n } else null == options && Internals.d.M(href);\n};\nexports.preload = function (href, options) {\n if (\n \"string\" === typeof href &&\n \"object\" === typeof options &&\n null !== options &&\n \"string\" === typeof options.as\n ) {\n var as = options.as,\n crossOrigin = getCrossOriginStringAs(as, options.crossOrigin);\n Internals.d.L(href, as, {\n crossOrigin: crossOrigin,\n integrity:\n \"string\" === typeof options.integrity ? options.integrity : void 0,\n nonce: \"string\" === typeof options.nonce ? options.nonce : void 0,\n type: \"string\" === typeof options.type ? options.type : void 0,\n fetchPriority:\n \"string\" === typeof options.fetchPriority\n ? options.fetchPriority\n : void 0,\n referrerPolicy:\n \"string\" === typeof options.referrerPolicy\n ? options.referrerPolicy\n : void 0,\n imageSrcSet:\n \"string\" === typeof options.imageSrcSet ? options.imageSrcSet : void 0,\n imageSizes:\n \"string\" === typeof options.imageSizes ? options.imageSizes : void 0,\n media: \"string\" === typeof options.media ? options.media : void 0\n });\n }\n};\nexports.preloadModule = function (href, options) {\n if (\"string\" === typeof href)\n if (options) {\n var crossOrigin = getCrossOriginStringAs(options.as, options.crossOrigin);\n Internals.d.m(href, {\n as:\n \"string\" === typeof options.as && \"script\" !== options.as\n ? options.as\n : void 0,\n crossOrigin: crossOrigin,\n integrity:\n \"string\" === typeof options.integrity ? options.integrity : void 0\n });\n } else Internals.d.m(href);\n};\nexports.requestFormReset = function (form) {\n Internals.d.r(form);\n};\nexports.unstable_batchedUpdates = function (fn, a) {\n return fn(a);\n};\nexports.useFormState = function (action, initialState, permalink) {\n return ReactSharedInternals.H.useFormState(action, initialState, permalink);\n};\nexports.useFormStatus = function () {\n return ReactSharedInternals.H.useHostTransitionStatus();\n};\nexports.version = \"19.2.0\";\n","'use strict';\n\nfunction checkDCE() {\n /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\n if (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' ||\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function'\n ) {\n return;\n }\n if (process.env.NODE_ENV !== 'production') {\n // This branch is unreachable because this function is only called\n // in production, but the condition is true only in development.\n // Therefore if the branch is still here, dead code elimination wasn't\n // properly applied.\n // Don't change the message. React DevTools relies on it. Also make sure\n // this message doesn't occur elsewhere in this function, or it will cause\n // a false positive.\n throw new Error('^_^');\n }\n try {\n // Verify that the code above has been dead code eliminated (DCE'd).\n __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE);\n } catch (err) {\n // DevTools shouldn't crash React, no matter what.\n // We should still report in case we break this code.\n console.error(err);\n }\n}\n\nif (process.env.NODE_ENV === 'production') {\n // DCE check should happen before ReactDOM bundle executes so that\n // DevTools can report bad minification during injection.\n checkDCE();\n module.exports = require('./cjs/react-dom.production.js');\n} else {\n module.exports = require('./cjs/react-dom.development.js');\n}\n","import * as React from \"react\";\nfunction useStableCallback(fn) {\n const fnRef = React.useRef(fn);\n fnRef.current = fn;\n const ref = React.useRef((...args) => fnRef.current(...args));\n return ref.current;\n}\nconst useLayoutEffect = typeof window !== \"undefined\" ? React.useLayoutEffect : React.useEffect;\nfunction usePrevious(value) {\n const ref = React.useRef({\n value,\n prev: null\n });\n const current = ref.current.value;\n if (value !== current) {\n ref.current = {\n value,\n prev: current\n };\n }\n return ref.current.prev;\n}\nfunction useIntersectionObserver(ref, callback, intersectionObserverOptions = {}, options = {}) {\n React.useEffect(() => {\n if (!ref.current || options.disabled || typeof IntersectionObserver !== \"function\") {\n return;\n }\n const observer = new IntersectionObserver(([entry]) => {\n callback(entry);\n }, intersectionObserverOptions);\n observer.observe(ref.current);\n return () => {\n observer.disconnect();\n };\n }, [callback, intersectionObserverOptions, options.disabled, ref]);\n}\nfunction useForwardedRef(ref) {\n const innerRef = React.useRef(null);\n React.useImperativeHandle(ref, () => innerRef.current, []);\n return innerRef;\n}\nexport {\n useForwardedRef,\n useIntersectionObserver,\n useLayoutEffect,\n usePrevious,\n useStableCallback\n};\n//# sourceMappingURL=utils.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport * as React from \"react\";\nimport { flushSync } from \"react-dom\";\nimport { preloadWarning, functionalUpdate, exactPathTest, removeTrailingSlash, deepEqual } from \"@tanstack/router-core\";\nimport { useRouterState } from \"./useRouterState.js\";\nimport { useRouter } from \"./useRouter.js\";\nimport { useForwardedRef, useIntersectionObserver } from \"./utils.js\";\nfunction useLinkProps(options, forwardedRef) {\n const router = useRouter();\n const [isTransitioning, setIsTransitioning] = React.useState(false);\n const hasRenderFetched = React.useRef(false);\n const innerRef = useForwardedRef(forwardedRef);\n const {\n // custom props\n activeProps,\n inactiveProps,\n activeOptions,\n to,\n preload: userPreload,\n preloadDelay: userPreloadDelay,\n hashScrollIntoView,\n replace,\n startTransition,\n resetScroll,\n viewTransition,\n // element props\n children,\n target,\n disabled,\n style,\n className,\n onClick,\n onFocus,\n onMouseEnter,\n onMouseLeave,\n onTouchStart,\n ignoreBlocker,\n // prevent these from being returned\n params: _params,\n search: _search,\n hash: _hash,\n state: _state,\n mask: _mask,\n reloadDocument: _reloadDocument,\n unsafeRelative: _unsafeRelative,\n from: _from,\n _fromLocation,\n ...propsSafeToSpread\n } = options;\n const type = React.useMemo(() => {\n try {\n new URL(to);\n return \"external\";\n } catch {\n }\n return \"internal\";\n }, [to]);\n const currentSearch = useRouterState({\n select: (s) => s.location.search,\n structuralSharing: true\n });\n const from = options.from;\n const _options = React.useMemo(\n () => {\n return { ...options, from };\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n router,\n currentSearch,\n from,\n options._fromLocation,\n options.hash,\n options.to,\n options.search,\n options.params,\n options.state,\n options.mask,\n options.unsafeRelative\n ]\n );\n const next = React.useMemo(\n () => router.buildLocation({ ..._options }),\n [router, _options]\n );\n const isExternal = type === \"external\";\n const preload = options.reloadDocument || isExternal ? false : userPreload ?? router.options.defaultPreload;\n const preloadDelay = userPreloadDelay ?? router.options.defaultPreloadDelay ?? 0;\n const isActive = useRouterState({\n select: (s) => {\n if (isExternal) return false;\n if (activeOptions == null ? void 0 : activeOptions.exact) {\n const testExact = exactPathTest(\n s.location.pathname,\n next.pathname,\n router.basepath\n );\n if (!testExact) {\n return false;\n }\n } else {\n const currentPathSplit = removeTrailingSlash(\n s.location.pathname,\n router.basepath\n );\n const nextPathSplit = removeTrailingSlash(\n next.pathname,\n router.basepath\n );\n const pathIsFuzzyEqual = currentPathSplit.startsWith(nextPathSplit) && (currentPathSplit.length === nextPathSplit.length || currentPathSplit[nextPathSplit.length] === \"/\");\n if (!pathIsFuzzyEqual) {\n return false;\n }\n }\n if ((activeOptions == null ? void 0 : activeOptions.includeSearch) ?? true) {\n const searchTest = deepEqual(s.location.search, next.search, {\n partial: !(activeOptions == null ? void 0 : activeOptions.exact),\n ignoreUndefined: !(activeOptions == null ? void 0 : activeOptions.explicitUndefined)\n });\n if (!searchTest) {\n return false;\n }\n }\n if (activeOptions == null ? void 0 : activeOptions.includeHash) {\n return s.location.hash === next.hash;\n }\n return true;\n }\n });\n const doPreload = React.useCallback(() => {\n router.preloadRoute({ ..._options }).catch((err) => {\n console.warn(err);\n console.warn(preloadWarning);\n });\n }, [router, _options]);\n const preloadViewportIoCallback = React.useCallback(\n (entry) => {\n if (entry == null ? void 0 : entry.isIntersecting) {\n doPreload();\n }\n },\n [doPreload]\n );\n useIntersectionObserver(\n innerRef,\n preloadViewportIoCallback,\n intersectionObserverOptions,\n { disabled: !!disabled || !(preload === \"viewport\") }\n );\n React.useEffect(() => {\n if (hasRenderFetched.current) {\n return;\n }\n if (!disabled && preload === \"render\") {\n doPreload();\n hasRenderFetched.current = true;\n }\n }, [disabled, doPreload, preload]);\n const handleClick = (e) => {\n if (!disabled && !isCtrlEvent(e) && !e.defaultPrevented && (!target || target === \"_self\") && e.button === 0) {\n e.preventDefault();\n flushSync(() => {\n setIsTransitioning(true);\n });\n const unsub = router.subscribe(\"onResolved\", () => {\n unsub();\n setIsTransitioning(false);\n });\n router.navigate({\n ..._options,\n replace,\n resetScroll,\n hashScrollIntoView,\n startTransition,\n viewTransition,\n ignoreBlocker\n });\n }\n };\n if (isExternal) {\n return {\n ...propsSafeToSpread,\n ref: innerRef,\n type,\n href: to,\n ...children && { children },\n ...target && { target },\n ...disabled && { disabled },\n ...style && { style },\n ...className && { className },\n ...onClick && { onClick },\n ...onFocus && { onFocus },\n ...onMouseEnter && { onMouseEnter },\n ...onMouseLeave && { onMouseLeave },\n ...onTouchStart && { onTouchStart }\n };\n }\n const handleFocus = (_) => {\n if (disabled) return;\n if (preload) {\n doPreload();\n }\n };\n const handleTouchStart = handleFocus;\n const handleEnter = (e) => {\n if (disabled || !preload) return;\n if (!preloadDelay) {\n doPreload();\n } else {\n const eventTarget = e.target;\n if (timeoutMap.has(eventTarget)) {\n return;\n }\n const id = setTimeout(() => {\n timeoutMap.delete(eventTarget);\n doPreload();\n }, preloadDelay);\n timeoutMap.set(eventTarget, id);\n }\n };\n const handleLeave = (e) => {\n if (disabled || !preload || !preloadDelay) return;\n const eventTarget = e.target;\n const id = timeoutMap.get(eventTarget);\n if (id) {\n clearTimeout(id);\n timeoutMap.delete(eventTarget);\n }\n };\n const resolvedActiveProps = isActive ? functionalUpdate(activeProps, {}) ?? STATIC_ACTIVE_OBJECT : STATIC_EMPTY_OBJECT;\n const resolvedInactiveProps = isActive ? STATIC_EMPTY_OBJECT : functionalUpdate(inactiveProps, {}) ?? STATIC_EMPTY_OBJECT;\n const resolvedClassName = [\n className,\n resolvedActiveProps.className,\n resolvedInactiveProps.className\n ].filter(Boolean).join(\" \");\n const resolvedStyle = (style || resolvedActiveProps.style || resolvedInactiveProps.style) && {\n ...style,\n ...resolvedActiveProps.style,\n ...resolvedInactiveProps.style\n };\n return {\n ...propsSafeToSpread,\n ...resolvedActiveProps,\n ...resolvedInactiveProps,\n href: disabled ? void 0 : next.maskedLocation ? router.history.createHref(next.maskedLocation.href) : router.history.createHref(next.href),\n ref: innerRef,\n onClick: composeHandlers([onClick, handleClick]),\n onFocus: composeHandlers([onFocus, handleFocus]),\n onMouseEnter: composeHandlers([onMouseEnter, handleEnter]),\n onMouseLeave: composeHandlers([onMouseLeave, handleLeave]),\n onTouchStart: composeHandlers([onTouchStart, handleTouchStart]),\n disabled: !!disabled,\n target,\n ...resolvedStyle && { style: resolvedStyle },\n ...resolvedClassName && { className: resolvedClassName },\n ...disabled && STATIC_DISABLED_PROPS,\n ...isActive && STATIC_ACTIVE_PROPS,\n ...isTransitioning && STATIC_TRANSITIONING_PROPS\n };\n}\nconst STATIC_EMPTY_OBJECT = {};\nconst STATIC_ACTIVE_OBJECT = { className: \"active\" };\nconst STATIC_DISABLED_PROPS = { role: \"link\", \"aria-disabled\": true };\nconst STATIC_ACTIVE_PROPS = { \"data-status\": \"active\", \"aria-current\": \"page\" };\nconst STATIC_TRANSITIONING_PROPS = { \"data-transitioning\": \"transitioning\" };\nconst timeoutMap = /* @__PURE__ */ new WeakMap();\nconst intersectionObserverOptions = {\n rootMargin: \"100px\"\n};\nconst composeHandlers = (handlers) => (e) => {\n handlers.filter(Boolean).forEach((handler) => {\n if (e.defaultPrevented) return;\n handler(e);\n });\n};\nfunction createLink(Comp) {\n return React.forwardRef(function CreatedLink(props, ref) {\n return /* @__PURE__ */ jsx(Link, { ...props, _asChild: Comp, ref });\n });\n}\nconst Link = React.forwardRef(\n (props, ref) => {\n const { _asChild, ...rest } = props;\n const {\n type: _type,\n ref: innerRef,\n ...linkProps\n } = useLinkProps(rest, ref);\n const children = typeof rest.children === \"function\" ? rest.children({\n isActive: linkProps[\"data-status\"] === \"active\"\n }) : rest.children;\n if (_asChild === void 0) {\n delete linkProps.disabled;\n }\n return React.createElement(\n _asChild ? _asChild : \"a\",\n {\n ...linkProps,\n ref: innerRef\n },\n children\n );\n }\n);\nfunction isCtrlEvent(e) {\n return !!(e.metaKey || e.altKey || e.ctrlKey || e.shiftKey);\n}\nconst linkOptions = (options) => {\n return options;\n};\nexport {\n Link,\n createLink,\n linkOptions,\n useLinkProps\n};\n//# sourceMappingURL=link.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport { BaseRouteApi, notFound, BaseRoute, BaseRootRoute } from \"@tanstack/router-core\";\nimport React__default from \"react\";\nimport { useLoaderData } from \"./useLoaderData.js\";\nimport { useLoaderDeps } from \"./useLoaderDeps.js\";\nimport { useParams } from \"./useParams.js\";\nimport { useSearch } from \"./useSearch.js\";\nimport { useNavigate } from \"./useNavigate.js\";\nimport { useMatch } from \"./useMatch.js\";\nimport { useRouter } from \"./useRouter.js\";\nimport { Link } from \"./link.js\";\nfunction getRouteApi(id) {\n return new RouteApi({ id });\n}\nclass RouteApi extends BaseRouteApi {\n /**\n * @deprecated Use the `getRouteApi` function instead.\n */\n constructor({ id }) {\n super({ id });\n this.useMatch = (opts) => {\n return useMatch({\n select: opts == null ? void 0 : opts.select,\n from: this.id,\n structuralSharing: opts == null ? void 0 : opts.structuralSharing\n });\n };\n this.useRouteContext = (opts) => {\n return useMatch({\n from: this.id,\n select: (d) => (opts == null ? void 0 : opts.select) ? opts.select(d.context) : d.context\n });\n };\n this.useSearch = (opts) => {\n return useSearch({\n select: opts == null ? void 0 : opts.select,\n structuralSharing: opts == null ? void 0 : opts.structuralSharing,\n from: this.id\n });\n };\n this.useParams = (opts) => {\n return useParams({\n select: opts == null ? void 0 : opts.select,\n structuralSharing: opts == null ? void 0 : opts.structuralSharing,\n from: this.id\n });\n };\n this.useLoaderDeps = (opts) => {\n return useLoaderDeps({ ...opts, from: this.id, strict: false });\n };\n this.useLoaderData = (opts) => {\n return useLoaderData({ ...opts, from: this.id, strict: false });\n };\n this.useNavigate = () => {\n const router = useRouter();\n return useNavigate({ from: router.routesById[this.id].fullPath });\n };\n this.notFound = (opts) => {\n return notFound({ routeId: this.id, ...opts });\n };\n this.Link = React__default.forwardRef((props, ref) => {\n const router = useRouter();\n const fullPath = router.routesById[this.id].fullPath;\n return /* @__PURE__ */ jsx(Link, { ref, from: fullPath, ...props });\n });\n }\n}\nclass Route extends BaseRoute {\n /**\n * @deprecated Use the `createRoute` function instead.\n */\n constructor(options) {\n super(options);\n this.useMatch = (opts) => {\n return useMatch({\n select: opts == null ? void 0 : opts.select,\n from: this.id,\n structuralSharing: opts == null ? void 0 : opts.structuralSharing\n });\n };\n this.useRouteContext = (opts) => {\n return useMatch({\n ...opts,\n from: this.id,\n select: (d) => (opts == null ? void 0 : opts.select) ? opts.select(d.context) : d.context\n });\n };\n this.useSearch = (opts) => {\n return useSearch({\n select: opts == null ? void 0 : opts.select,\n structuralSharing: opts == null ? void 0 : opts.structuralSharing,\n from: this.id\n });\n };\n this.useParams = (opts) => {\n return useParams({\n select: opts == null ? void 0 : opts.select,\n structuralSharing: opts == null ? void 0 : opts.structuralSharing,\n from: this.id\n });\n };\n this.useLoaderDeps = (opts) => {\n return useLoaderDeps({ ...opts, from: this.id });\n };\n this.useLoaderData = (opts) => {\n return useLoaderData({ ...opts, from: this.id });\n };\n this.useNavigate = () => {\n return useNavigate({ from: this.fullPath });\n };\n this.Link = React__default.forwardRef(\n (props, ref) => {\n return /* @__PURE__ */ jsx(Link, { ref, from: this.fullPath, ...props });\n }\n );\n this.$$typeof = Symbol.for(\"react.memo\");\n }\n}\nfunction createRoute(options) {\n return new Route(options);\n}\nfunction createRootRouteWithContext() {\n return (options) => {\n return createRootRoute(options);\n };\n}\nconst rootRouteWithContext = createRootRouteWithContext;\nclass RootRoute extends BaseRootRoute {\n /**\n * @deprecated `RootRoute` is now an internal implementation detail. Use `createRootRoute()` instead.\n */\n constructor(options) {\n super(options);\n this.useMatch = (opts) => {\n return useMatch({\n select: opts == null ? void 0 : opts.select,\n from: this.id,\n structuralSharing: opts == null ? void 0 : opts.structuralSharing\n });\n };\n this.useRouteContext = (opts) => {\n return useMatch({\n ...opts,\n from: this.id,\n select: (d) => (opts == null ? void 0 : opts.select) ? opts.select(d.context) : d.context\n });\n };\n this.useSearch = (opts) => {\n return useSearch({\n select: opts == null ? void 0 : opts.select,\n structuralSharing: opts == null ? void 0 : opts.structuralSharing,\n from: this.id\n });\n };\n this.useParams = (opts) => {\n return useParams({\n select: opts == null ? void 0 : opts.select,\n structuralSharing: opts == null ? void 0 : opts.structuralSharing,\n from: this.id\n });\n };\n this.useLoaderDeps = (opts) => {\n return useLoaderDeps({ ...opts, from: this.id });\n };\n this.useLoaderData = (opts) => {\n return useLoaderData({ ...opts, from: this.id });\n };\n this.useNavigate = () => {\n return useNavigate({ from: this.fullPath });\n };\n this.Link = React__default.forwardRef(\n (props, ref) => {\n return /* @__PURE__ */ jsx(Link, { ref, from: this.fullPath, ...props });\n }\n );\n this.$$typeof = Symbol.for(\"react.memo\");\n }\n}\nfunction createRootRoute(options) {\n return new RootRoute(options);\n}\nfunction createRouteMask(opts) {\n return opts;\n}\nclass NotFoundRoute extends Route {\n constructor(options) {\n super({\n ...options,\n id: \"404\"\n });\n }\n}\nexport {\n NotFoundRoute,\n RootRoute,\n Route,\n RouteApi,\n createRootRoute,\n createRootRouteWithContext,\n createRoute,\n createRouteMask,\n getRouteApi,\n rootRouteWithContext\n};\n//# sourceMappingURL=route.js.map\n","import warning from \"tiny-warning\";\nimport { createRoute } from \"./route.js\";\nimport { useMatch } from \"./useMatch.js\";\nimport { useLoaderDeps } from \"./useLoaderDeps.js\";\nimport { useLoaderData } from \"./useLoaderData.js\";\nimport { useSearch } from \"./useSearch.js\";\nimport { useParams } from \"./useParams.js\";\nimport { useNavigate } from \"./useNavigate.js\";\nimport { useRouter } from \"./useRouter.js\";\nfunction createFileRoute(path) {\n if (typeof path === \"object\") {\n return new FileRoute(path, {\n silent: true\n }).createRoute(path);\n }\n return new FileRoute(path, {\n silent: true\n }).createRoute;\n}\nclass FileRoute {\n constructor(path, _opts) {\n this.path = path;\n this.createRoute = (options) => {\n warning(\n this.silent,\n \"FileRoute is deprecated and will be removed in the next major version. Use the createFileRoute(path)(options) function instead.\"\n );\n const route = createRoute(options);\n route.isRoot = false;\n return route;\n };\n this.silent = _opts == null ? void 0 : _opts.silent;\n }\n}\nfunction FileRouteLoader(_path) {\n warning(\n false,\n `FileRouteLoader is deprecated and will be removed in the next major version. Please place the loader function in the the main route file, inside the \\`createFileRoute('/path/to/file')(options)\\` options`\n );\n return (loaderFn) => loaderFn;\n}\nclass LazyRoute {\n constructor(opts) {\n this.useMatch = (opts2) => {\n return useMatch({\n select: opts2 == null ? void 0 : opts2.select,\n from: this.options.id,\n structuralSharing: opts2 == null ? void 0 : opts2.structuralSharing\n });\n };\n this.useRouteContext = (opts2) => {\n return useMatch({\n from: this.options.id,\n select: (d) => (opts2 == null ? void 0 : opts2.select) ? opts2.select(d.context) : d.context\n });\n };\n this.useSearch = (opts2) => {\n return useSearch({\n select: opts2 == null ? void 0 : opts2.select,\n structuralSharing: opts2 == null ? void 0 : opts2.structuralSharing,\n from: this.options.id\n });\n };\n this.useParams = (opts2) => {\n return useParams({\n select: opts2 == null ? void 0 : opts2.select,\n structuralSharing: opts2 == null ? void 0 : opts2.structuralSharing,\n from: this.options.id\n });\n };\n this.useLoaderDeps = (opts2) => {\n return useLoaderDeps({ ...opts2, from: this.options.id });\n };\n this.useLoaderData = (opts2) => {\n return useLoaderData({ ...opts2, from: this.options.id });\n };\n this.useNavigate = () => {\n const router = useRouter();\n return useNavigate({ from: router.routesById[this.options.id].fullPath });\n };\n this.options = opts;\n this.$$typeof = Symbol.for(\"react.memo\");\n }\n}\nfunction createLazyRoute(id) {\n return (opts) => {\n return new LazyRoute({\n id,\n ...opts\n });\n };\n}\nfunction createLazyFileRoute(id) {\n if (typeof id === \"object\") {\n return new LazyRoute(id);\n }\n return (opts) => new LazyRoute({ id, ...opts });\n}\nexport {\n FileRoute,\n FileRouteLoader,\n LazyRoute,\n createFileRoute,\n createLazyFileRoute,\n createLazyRoute\n};\n//# sourceMappingURL=fileRoute.js.map\n","import * as React from \"react\";\nimport { isModuleNotFoundError } from \"@tanstack/router-core\";\nfunction lazyRouteComponent(importer, exportName) {\n let loadPromise;\n let comp;\n let error;\n let reload;\n const load = () => {\n if (!loadPromise) {\n loadPromise = importer().then((res) => {\n loadPromise = void 0;\n comp = res[exportName ?? \"default\"];\n }).catch((err) => {\n error = err;\n if (isModuleNotFoundError(error)) {\n if (error instanceof Error && typeof window !== \"undefined\" && typeof sessionStorage !== \"undefined\") {\n const storageKey = `tanstack_router_reload:${error.message}`;\n if (!sessionStorage.getItem(storageKey)) {\n sessionStorage.setItem(storageKey, \"1\");\n reload = true;\n }\n }\n }\n });\n }\n return loadPromise;\n };\n const lazyComp = function Lazy(props) {\n if (reload) {\n window.location.reload();\n throw new Promise(() => {\n });\n }\n if (error) {\n throw error;\n }\n if (!comp) {\n throw load();\n }\n return React.createElement(comp, props);\n };\n lazyComp.preload = load;\n return lazyComp;\n}\nexport {\n lazyRouteComponent\n};\n//# sourceMappingURL=lazyRouteComponent.js.map\n","import * as React from \"react\";\nimport { trimPathRight, getLocationChangeInfo, handleHashScroll } from \"@tanstack/router-core\";\nimport { usePrevious, useLayoutEffect } from \"./utils.js\";\nimport { useRouter } from \"./useRouter.js\";\nimport { useRouterState } from \"./useRouterState.js\";\nfunction Transitioner() {\n const router = useRouter();\n const mountLoadForRouter = React.useRef({ router, mounted: false });\n const [isTransitioning, setIsTransitioning] = React.useState(false);\n const { hasPendingMatches, isLoading } = useRouterState({\n select: (s) => ({\n isLoading: s.isLoading,\n hasPendingMatches: s.matches.some((d) => d.status === \"pending\")\n }),\n structuralSharing: true\n });\n const previousIsLoading = usePrevious(isLoading);\n const isAnyPending = isLoading || isTransitioning || hasPendingMatches;\n const previousIsAnyPending = usePrevious(isAnyPending);\n const isPagePending = isLoading || hasPendingMatches;\n const previousIsPagePending = usePrevious(isPagePending);\n router.startTransition = (fn) => {\n setIsTransitioning(true);\n React.startTransition(() => {\n fn();\n setIsTransitioning(false);\n });\n };\n React.useEffect(() => {\n const unsub = router.history.subscribe(router.load);\n const nextLocation = router.buildLocation({\n to: router.latestLocation.pathname,\n search: true,\n params: true,\n hash: true,\n state: true,\n _includeValidateSearch: true\n });\n if (trimPathRight(router.latestLocation.href) !== trimPathRight(nextLocation.href)) {\n router.commitLocation({ ...nextLocation, replace: true });\n }\n return () => {\n unsub();\n };\n }, [router, router.history]);\n useLayoutEffect(() => {\n if (\n // if we are hydrating from SSR, loading is triggered in ssr-client\n typeof window !== \"undefined\" && router.ssr || mountLoadForRouter.current.router === router && mountLoadForRouter.current.mounted\n ) {\n return;\n }\n mountLoadForRouter.current = { router, mounted: true };\n const tryLoad = async () => {\n try {\n await router.load();\n } catch (err) {\n console.error(err);\n }\n };\n tryLoad();\n }, [router]);\n useLayoutEffect(() => {\n if (previousIsLoading && !isLoading) {\n router.emit({\n type: \"onLoad\",\n // When the new URL has committed, when the new matches have been loaded into state.matches\n ...getLocationChangeInfo(router.state)\n });\n }\n }, [previousIsLoading, router, isLoading]);\n useLayoutEffect(() => {\n if (previousIsPagePending && !isPagePending) {\n router.emit({\n type: \"onBeforeRouteMount\",\n ...getLocationChangeInfo(router.state)\n });\n }\n }, [isPagePending, previousIsPagePending, router]);\n useLayoutEffect(() => {\n if (previousIsAnyPending && !isAnyPending) {\n router.emit({\n type: \"onResolved\",\n ...getLocationChangeInfo(router.state)\n });\n router.__store.setState((s) => ({\n ...s,\n status: \"idle\",\n resolvedLocation: s.location\n }));\n handleHashScroll(router);\n }\n }, [isAnyPending, previousIsAnyPending, router]);\n return null;\n}\nexport {\n Transitioner\n};\n//# sourceMappingURL=Transitioner.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport { isNotFound } from \"@tanstack/router-core\";\nimport { CatchBoundary } from \"./CatchBoundary.js\";\nimport { useRouterState } from \"./useRouterState.js\";\nfunction CatchNotFound(props) {\n const resetKey = useRouterState({\n select: (s) => `not-found-${s.location.pathname}-${s.status}`\n });\n return /* @__PURE__ */ jsx(\n CatchBoundary,\n {\n getResetKey: () => resetKey,\n onCatch: (error, errorInfo) => {\n var _a;\n if (isNotFound(error)) {\n (_a = props.onCatch) == null ? void 0 : _a.call(props, error, errorInfo);\n } else {\n throw error;\n }\n },\n errorComponent: ({ error }) => {\n var _a;\n if (isNotFound(error)) {\n return (_a = props.fallback) == null ? void 0 : _a.call(props, error);\n } else {\n throw error;\n }\n },\n children: props.children\n }\n );\n}\nfunction DefaultGlobalNotFound() {\n return /* @__PURE__ */ jsx(\"p\", { children: \"Not Found\" });\n}\nexport {\n CatchNotFound,\n DefaultGlobalNotFound\n};\n//# sourceMappingURL=not-found.js.map\n","import { jsx, Fragment } from \"react/jsx-runtime\";\nfunction SafeFragment(props) {\n return /* @__PURE__ */ jsx(Fragment, { children: props.children });\n}\nexport {\n SafeFragment\n};\n//# sourceMappingURL=SafeFragment.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport warning from \"tiny-warning\";\nimport { DefaultGlobalNotFound } from \"./not-found.js\";\nfunction renderRouteNotFound(router, route, data) {\n if (!route.options.notFoundComponent) {\n if (router.options.defaultNotFoundComponent) {\n return /* @__PURE__ */ jsx(router.options.defaultNotFoundComponent, { data });\n }\n if (process.env.NODE_ENV === \"development\") {\n warning(\n route.options.notFoundComponent,\n `A notFoundError was encountered on the route with ID \"${route.id}\", but a notFoundComponent option was not configured, nor was a router level defaultNotFoundComponent configured. Consider configuring at least one of these to avoid TanStack Router's overly generic defaultNotFoundComponent (
    Not Found
    )`\n );\n }\n return /* @__PURE__ */ jsx(DefaultGlobalNotFound, {});\n }\n return /* @__PURE__ */ jsx(route.options.notFoundComponent, { data });\n}\nexport {\n renderRouteNotFound\n};\n//# sourceMappingURL=renderRouteNotFound.js.map\n","import { jsx } from \"react/jsx-runtime\";\nfunction ScriptOnce({\n children\n}) {\n if (typeof document !== \"undefined\") {\n return null;\n }\n return /* @__PURE__ */ jsx(\n \"script\",\n {\n className: \"$tsr\",\n dangerouslySetInnerHTML: {\n __html: [children].filter(Boolean).join(\"\\n\")\n }\n }\n );\n}\nexport {\n ScriptOnce\n};\n//# sourceMappingURL=ScriptOnce.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport { defaultGetScrollRestorationKey, restoreScroll, storageKey } from \"@tanstack/router-core\";\nimport { useRouter } from \"./useRouter.js\";\nimport { ScriptOnce } from \"./ScriptOnce.js\";\nfunction ScrollRestoration() {\n const router = useRouter();\n const getKey = router.options.getScrollRestorationKey || defaultGetScrollRestorationKey;\n const userKey = getKey(router.latestLocation);\n const resolvedKey = userKey !== defaultGetScrollRestorationKey(router.latestLocation) ? userKey : void 0;\n if (!router.isScrollRestoring || !router.isServer) {\n return null;\n }\n const restoreScrollOptions = {\n storageKey,\n shouldScrollRestoration: true\n };\n if (resolvedKey) {\n restoreScrollOptions.key = resolvedKey;\n }\n return /* @__PURE__ */ jsx(\n ScriptOnce,\n {\n children: `(${restoreScroll.toString()})(${JSON.stringify(restoreScrollOptions)})`\n }\n );\n}\nexport {\n ScrollRestoration\n};\n//# sourceMappingURL=scroll-restoration.js.map\n","import { jsxs, jsx, Fragment } from \"react/jsx-runtime\";\nimport * as React from \"react\";\nimport invariant from \"tiny-invariant\";\nimport warning from \"tiny-warning\";\nimport { isNotFound, rootRouteId, createControlledPromise, isRedirect, getLocationChangeInfo } from \"@tanstack/router-core\";\nimport { CatchBoundary, ErrorComponent } from \"./CatchBoundary.js\";\nimport { useRouterState } from \"./useRouterState.js\";\nimport { useRouter } from \"./useRouter.js\";\nimport { CatchNotFound } from \"./not-found.js\";\nimport { matchContext } from \"./matchContext.js\";\nimport { SafeFragment } from \"./SafeFragment.js\";\nimport { renderRouteNotFound } from \"./renderRouteNotFound.js\";\nimport { ScrollRestoration } from \"./scroll-restoration.js\";\nimport { ClientOnly } from \"./ClientOnly.js\";\nconst Match = React.memo(function MatchImpl({\n matchId\n}) {\n var _a, _b;\n const router = useRouter();\n const matchState = useRouterState({\n select: (s) => {\n const match = s.matches.find((d) => d.id === matchId);\n invariant(\n match,\n `Could not find match for matchId \"${matchId}\". Please file an issue!`\n );\n return {\n routeId: match.routeId,\n ssr: match.ssr,\n _displayPending: match._displayPending\n };\n },\n structuralSharing: true\n });\n const route = router.routesById[matchState.routeId];\n const PendingComponent = route.options.pendingComponent ?? router.options.defaultPendingComponent;\n const pendingElement = PendingComponent ? /* @__PURE__ */ jsx(PendingComponent, {}) : null;\n const routeErrorComponent = route.options.errorComponent ?? router.options.defaultErrorComponent;\n const routeOnCatch = route.options.onCatch ?? router.options.defaultOnCatch;\n const routeNotFoundComponent = route.isRoot ? (\n // If it's the root route, use the globalNotFound option, with fallback to the notFoundRoute's component\n route.options.notFoundComponent ?? ((_a = router.options.notFoundRoute) == null ? void 0 : _a.options.component)\n ) : route.options.notFoundComponent;\n const resolvedNoSsr = matchState.ssr === false || matchState.ssr === \"data-only\";\n const ResolvedSuspenseBoundary = (\n // If we're on the root route, allow forcefully wrapping in suspense\n (!route.isRoot || route.options.wrapInSuspense || resolvedNoSsr) && (route.options.wrapInSuspense ?? PendingComponent ?? (((_b = route.options.errorComponent) == null ? void 0 : _b.preload) || resolvedNoSsr)) ? React.Suspense : SafeFragment\n );\n const ResolvedCatchBoundary = routeErrorComponent ? CatchBoundary : SafeFragment;\n const ResolvedNotFoundBoundary = routeNotFoundComponent ? CatchNotFound : SafeFragment;\n const resetKey = useRouterState({\n select: (s) => s.loadedAt\n });\n const parentRouteId = useRouterState({\n select: (s) => {\n var _a2;\n const index = s.matches.findIndex((d) => d.id === matchId);\n return (_a2 = s.matches[index - 1]) == null ? void 0 : _a2.routeId;\n }\n });\n const ShellComponent = route.isRoot ? route.options.shellComponent ?? SafeFragment : SafeFragment;\n return /* @__PURE__ */ jsxs(ShellComponent, { children: [\n /* @__PURE__ */ jsx(matchContext.Provider, { value: matchId, children: /* @__PURE__ */ jsx(ResolvedSuspenseBoundary, { fallback: pendingElement, children: /* @__PURE__ */ jsx(\n ResolvedCatchBoundary,\n {\n getResetKey: () => resetKey,\n errorComponent: routeErrorComponent || ErrorComponent,\n onCatch: (error, errorInfo) => {\n if (isNotFound(error)) throw error;\n warning(false, `Error in route match: ${matchId}`);\n routeOnCatch == null ? void 0 : routeOnCatch(error, errorInfo);\n },\n children: /* @__PURE__ */ jsx(\n ResolvedNotFoundBoundary,\n {\n fallback: (error) => {\n if (!routeNotFoundComponent || error.routeId && error.routeId !== matchState.routeId || !error.routeId && !route.isRoot)\n throw error;\n return React.createElement(routeNotFoundComponent, error);\n },\n children: resolvedNoSsr || matchState._displayPending ? /* @__PURE__ */ jsx(ClientOnly, { fallback: pendingElement, children: /* @__PURE__ */ jsx(MatchInner, { matchId }) }) : /* @__PURE__ */ jsx(MatchInner, { matchId })\n }\n )\n }\n ) }) }),\n parentRouteId === rootRouteId && router.options.scrollRestoration ? /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(OnRendered, {}),\n /* @__PURE__ */ jsx(ScrollRestoration, {})\n ] }) : null\n ] });\n});\nfunction OnRendered() {\n const router = useRouter();\n const prevLocationRef = React.useRef(\n void 0\n );\n return /* @__PURE__ */ jsx(\n \"script\",\n {\n suppressHydrationWarning: true,\n ref: (el) => {\n if (el && (prevLocationRef.current === void 0 || prevLocationRef.current.href !== router.latestLocation.href)) {\n router.emit({\n type: \"onRendered\",\n ...getLocationChangeInfo(router.state)\n });\n prevLocationRef.current = router.latestLocation;\n }\n }\n },\n router.latestLocation.state.__TSR_key\n );\n}\nconst MatchInner = React.memo(function MatchInnerImpl({\n matchId\n}) {\n var _a, _b, _c, _d;\n const router = useRouter();\n const { match, key, routeId } = useRouterState({\n select: (s) => {\n const match2 = s.matches.find((d) => d.id === matchId);\n const routeId2 = match2.routeId;\n const remountFn = router.routesById[routeId2].options.remountDeps ?? router.options.defaultRemountDeps;\n const remountDeps = remountFn == null ? void 0 : remountFn({\n routeId: routeId2,\n loaderDeps: match2.loaderDeps,\n params: match2._strictParams,\n search: match2._strictSearch\n });\n const key2 = remountDeps ? JSON.stringify(remountDeps) : void 0;\n return {\n key: key2,\n routeId: routeId2,\n match: {\n id: match2.id,\n status: match2.status,\n error: match2.error,\n _forcePending: match2._forcePending,\n _displayPending: match2._displayPending\n }\n };\n },\n structuralSharing: true\n });\n const route = router.routesById[routeId];\n const out = React.useMemo(() => {\n const Comp = route.options.component ?? router.options.defaultComponent;\n if (Comp) {\n return /* @__PURE__ */ jsx(Comp, {}, key);\n }\n return /* @__PURE__ */ jsx(Outlet, {});\n }, [key, route.options.component, router.options.defaultComponent]);\n if (match._displayPending) {\n throw (_a = router.getMatch(match.id)) == null ? void 0 : _a._nonReactive.displayPendingPromise;\n }\n if (match._forcePending) {\n throw (_b = router.getMatch(match.id)) == null ? void 0 : _b._nonReactive.minPendingPromise;\n }\n if (match.status === \"pending\") {\n const pendingMinMs = route.options.pendingMinMs ?? router.options.defaultPendingMinMs;\n if (pendingMinMs) {\n const routerMatch = router.getMatch(match.id);\n if (routerMatch && !routerMatch._nonReactive.minPendingPromise) {\n if (!router.isServer) {\n const minPendingPromise = createControlledPromise();\n routerMatch._nonReactive.minPendingPromise = minPendingPromise;\n setTimeout(() => {\n minPendingPromise.resolve();\n routerMatch._nonReactive.minPendingPromise = void 0;\n }, pendingMinMs);\n }\n }\n }\n throw (_c = router.getMatch(match.id)) == null ? void 0 : _c._nonReactive.loadPromise;\n }\n if (match.status === \"notFound\") {\n invariant(isNotFound(match.error), \"Expected a notFound error\");\n return renderRouteNotFound(router, route, match.error);\n }\n if (match.status === \"redirected\") {\n invariant(isRedirect(match.error), \"Expected a redirect error\");\n throw (_d = router.getMatch(match.id)) == null ? void 0 : _d._nonReactive.loadPromise;\n }\n if (match.status === \"error\") {\n if (router.isServer) {\n const RouteErrorComponent = (route.options.errorComponent ?? router.options.defaultErrorComponent) || ErrorComponent;\n return /* @__PURE__ */ jsx(\n RouteErrorComponent,\n {\n error: match.error,\n reset: void 0,\n info: {\n componentStack: \"\"\n }\n }\n );\n }\n throw match.error;\n }\n return out;\n});\nconst Outlet = React.memo(function OutletImpl() {\n const router = useRouter();\n const matchId = React.useContext(matchContext);\n const routeId = useRouterState({\n select: (s) => {\n var _a;\n return (_a = s.matches.find((d) => d.id === matchId)) == null ? void 0 : _a.routeId;\n }\n });\n const route = router.routesById[routeId];\n const parentGlobalNotFound = useRouterState({\n select: (s) => {\n const matches = s.matches;\n const parentMatch = matches.find((d) => d.id === matchId);\n invariant(\n parentMatch,\n `Could not find parent match for matchId \"${matchId}\"`\n );\n return parentMatch.globalNotFound;\n }\n });\n const childMatchId = useRouterState({\n select: (s) => {\n var _a;\n const matches = s.matches;\n const index = matches.findIndex((d) => d.id === matchId);\n return (_a = matches[index + 1]) == null ? void 0 : _a.id;\n }\n });\n const pendingElement = router.options.defaultPendingComponent ? /* @__PURE__ */ jsx(router.options.defaultPendingComponent, {}) : null;\n if (parentGlobalNotFound) {\n return renderRouteNotFound(router, route, void 0);\n }\n if (!childMatchId) {\n return null;\n }\n const nextMatch = /* @__PURE__ */ jsx(Match, { matchId: childMatchId });\n if (matchId === rootRouteId) {\n return /* @__PURE__ */ jsx(React.Suspense, { fallback: pendingElement, children: nextMatch });\n }\n return nextMatch;\n});\nexport {\n Match,\n MatchInner,\n Outlet\n};\n//# sourceMappingURL=Match.js.map\n","import { jsx, jsxs } from \"react/jsx-runtime\";\nimport * as React from \"react\";\nimport warning from \"tiny-warning\";\nimport { CatchBoundary, ErrorComponent } from \"./CatchBoundary.js\";\nimport { useRouterState } from \"./useRouterState.js\";\nimport { useRouter } from \"./useRouter.js\";\nimport { Transitioner } from \"./Transitioner.js\";\nimport { matchContext } from \"./matchContext.js\";\nimport { Match } from \"./Match.js\";\nimport { SafeFragment } from \"./SafeFragment.js\";\nfunction Matches() {\n const router = useRouter();\n const pendingElement = router.options.defaultPendingComponent ? /* @__PURE__ */ jsx(router.options.defaultPendingComponent, {}) : null;\n const ResolvedSuspense = router.isServer || typeof document !== \"undefined\" && router.ssr ? SafeFragment : React.Suspense;\n const inner = /* @__PURE__ */ jsxs(ResolvedSuspense, { fallback: pendingElement, children: [\n !router.isServer && /* @__PURE__ */ jsx(Transitioner, {}),\n /* @__PURE__ */ jsx(MatchesInner, {})\n ] });\n return router.options.InnerWrap ? /* @__PURE__ */ jsx(router.options.InnerWrap, { children: inner }) : inner;\n}\nfunction MatchesInner() {\n const router = useRouter();\n const matchId = useRouterState({\n select: (s) => {\n var _a;\n return (_a = s.matches[0]) == null ? void 0 : _a.id;\n }\n });\n const resetKey = useRouterState({\n select: (s) => s.loadedAt\n });\n const matchComponent = matchId ? /* @__PURE__ */ jsx(Match, { matchId }) : null;\n return /* @__PURE__ */ jsx(matchContext.Provider, { value: matchId, children: router.options.disableGlobalCatchBoundary ? matchComponent : /* @__PURE__ */ jsx(\n CatchBoundary,\n {\n getResetKey: () => resetKey,\n errorComponent: ErrorComponent,\n onCatch: (error) => {\n warning(\n false,\n `The following error wasn't caught by any route! At the very least, consider setting an 'errorComponent' in your RootRoute!`\n );\n warning(false, error.message || error.toString());\n },\n children: matchComponent\n }\n ) });\n}\nfunction useMatchRoute() {\n const router = useRouter();\n useRouterState({\n select: (s) => {\n var _a;\n return [s.location.href, (_a = s.resolvedLocation) == null ? void 0 : _a.href, s.status];\n },\n structuralSharing: true\n });\n return React.useCallback(\n (opts) => {\n const { pending, caseSensitive, fuzzy, includeSearch, ...rest } = opts;\n return router.matchRoute(rest, {\n pending,\n caseSensitive,\n fuzzy,\n includeSearch\n });\n },\n [router]\n );\n}\nfunction MatchRoute(props) {\n const matchRoute = useMatchRoute();\n const params = matchRoute(props);\n if (typeof props.children === \"function\") {\n return props.children(params);\n }\n return params ? props.children : null;\n}\nfunction useMatches(opts) {\n return useRouterState({\n select: (state) => {\n const matches = state.matches;\n return (opts == null ? void 0 : opts.select) ? opts.select(matches) : matches;\n },\n structuralSharing: opts == null ? void 0 : opts.structuralSharing\n });\n}\nfunction useParentMatches(opts) {\n const contextMatchId = React.useContext(matchContext);\n return useMatches({\n select: (matches) => {\n matches = matches.slice(\n 0,\n matches.findIndex((d) => d.id === contextMatchId)\n );\n return (opts == null ? void 0 : opts.select) ? opts.select(matches) : matches;\n },\n structuralSharing: opts == null ? void 0 : opts.structuralSharing\n });\n}\nfunction useChildMatches(opts) {\n const contextMatchId = React.useContext(matchContext);\n return useMatches({\n select: (matches) => {\n matches = matches.slice(\n matches.findIndex((d) => d.id === contextMatchId) + 1\n );\n return (opts == null ? void 0 : opts.select) ? opts.select(matches) : matches;\n },\n structuralSharing: opts == null ? void 0 : opts.structuralSharing\n });\n}\nexport {\n MatchRoute,\n Matches,\n useChildMatches,\n useMatchRoute,\n useMatches,\n useParentMatches\n};\n//# sourceMappingURL=Matches.js.map\n","import { RouterCore } from \"@tanstack/router-core\";\nimport { createFileRoute, createLazyFileRoute } from \"./fileRoute.js\";\nconst createRouter = (options) => {\n return new Router(options);\n};\nclass Router extends RouterCore {\n constructor(options) {\n super(options);\n }\n}\nif (typeof globalThis !== \"undefined\") {\n globalThis.createFileRoute = createFileRoute;\n globalThis.createLazyFileRoute = createLazyFileRoute;\n} else if (typeof window !== \"undefined\") {\n window.createFileRoute = createFileRoute;\n window.createLazyFileRoute = createLazyFileRoute;\n}\nexport {\n Router,\n createRouter\n};\n//# sourceMappingURL=router.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport { Matches } from \"./Matches.js\";\nimport { getRouterContext } from \"./routerContext.js\";\nfunction RouterContextProvider({\n router,\n children,\n ...rest\n}) {\n if (Object.keys(rest).length > 0) {\n router.update({\n ...router.options,\n ...rest,\n context: {\n ...router.options.context,\n ...rest.context\n }\n });\n }\n const routerContext = getRouterContext();\n const provider = /* @__PURE__ */ jsx(routerContext.Provider, { value: router, children });\n if (router.options.Wrap) {\n return /* @__PURE__ */ jsx(router.options.Wrap, { children: provider });\n }\n return provider;\n}\nfunction RouterProvider({ router, ...rest }) {\n return /* @__PURE__ */ jsx(RouterContextProvider, { router, ...rest, children: /* @__PURE__ */ jsx(Matches, {}) });\n}\nexport {\n RouterContextProvider,\n RouterProvider\n};\n//# sourceMappingURL=RouterProvider.js.map\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import { forwardRef } from \"react\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction CheckCircleIcon(props, ref) {\n return /*#__PURE__*/_jsx(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"1em\",\n height: \"1em\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n ref: ref,\n ...props,\n children: /*#__PURE__*/_jsx(\"path\", {\n d: \"m10.6 13.8-2.15-2.15a.95.95 0 0 0-.7-.275.95.95 0 0 0-.7.275.95.95 0 0 0-.275.7q0 .425.275.7L9.9 15.9q.3.3.7.3t.7-.3l5.65-5.65a.95.95 0 0 0 .275-.7.95.95 0 0 0-.275-.7.95.95 0 0 0-.7-.275.95.95 0 0 0-.7.275zM12 22a9.7 9.7 0 0 1-3.9-.788 10.1 10.1 0 0 1-3.175-2.137q-1.35-1.35-2.137-3.175A9.7 9.7 0 0 1 2 12q0-2.075.788-3.9a10.1 10.1 0 0 1 2.137-3.175q1.35-1.35 3.175-2.137A9.7 9.7 0 0 1 12 2q2.075 0 3.9.788a10.1 10.1 0 0 1 3.175 2.137q1.35 1.35 2.137 3.175A9.7 9.7 0 0 1 22 12a9.7 9.7 0 0 1-.788 3.9 10.1 10.1 0 0 1-2.137 3.175q-1.35 1.35-3.175 2.137A9.7 9.7 0 0 1 12 22m0-2q3.35 0 5.675-2.325T20 12t-2.325-5.675T12 4 6.325 6.325 4 12t2.325 5.675T12 20\"\n })\n });\n}\n;\nCheckCircleIcon.displayName = \"CheckCircleIcon\";\nexport default forwardRef(CheckCircleIcon);","import { forwardRef } from \"react\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction ErrorSolidIcon(props, ref) {\n return /*#__PURE__*/_jsx(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"1em\",\n height: \"1em\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n ref: ref,\n ...props,\n children: /*#__PURE__*/_jsx(\"path\", {\n d: \"M12 17q.424 0 .713-.288A.97.97 0 0 0 13 16a.97.97 0 0 0-.287-.713A.97.97 0 0 0 12 15a.97.97 0 0 0-.713.287A.97.97 0 0 0 11 16q0 .424.287.712.288.288.713.288m0-4q.424 0 .713-.287A.97.97 0 0 0 13 12V8a.97.97 0 0 0-.287-.713A.97.97 0 0 0 12 7a.97.97 0 0 0-.713.287A.97.97 0 0 0 11 8v4q0 .424.287.713.288.287.713.287m0 9a9.7 9.7 0 0 1-3.9-.788 10.1 10.1 0 0 1-3.175-2.137q-1.35-1.35-2.137-3.175A9.7 9.7 0 0 1 2 12q0-2.075.788-3.9a10.1 10.1 0 0 1 2.137-3.175q1.35-1.35 3.175-2.137A9.7 9.7 0 0 1 12 2q2.075 0 3.9.788a10.1 10.1 0 0 1 3.175 2.137q1.35 1.35 2.137 3.175A9.7 9.7 0 0 1 22 12a9.7 9.7 0 0 1-.788 3.9 10.1 10.1 0 0 1-2.137 3.175q-1.35 1.35-3.175 2.137A9.7 9.7 0 0 1 12 22\"\n })\n });\n}\n;\nErrorSolidIcon.displayName = \"ErrorSolidIcon\";\nexport default forwardRef(ErrorSolidIcon);","import { forwardRef } from \"react\";\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nfunction InfoIcon(props, ref) {\n return /*#__PURE__*/_jsxs(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"1em\",\n height: \"1em\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n ref: ref,\n ...props,\n children: [/*#__PURE__*/_jsx(\"path\", {\n d: \"M11.288 7.288A.97.97 0 0 1 12 7q.424 0 .713.287Q13 7.576 13 8t-.287.713A.97.97 0 0 1 12 9a.97.97 0 0 1-.713-.287A.97.97 0 0 1 11 8q0-.424.287-.713m.001 4.001A.97.97 0 0 1 12 11q.424 0 .713.287.287.288.287.713v4q0 .424-.287.712A.97.97 0 0 1 12 17a.97.97 0 0 1-.713-.288A.97.97 0 0 1 11 16v-4q0-.424.287-.713\"\n }), /*#__PURE__*/_jsx(\"path\", {\n fillRule: \"evenodd\",\n d: \"M22 12c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10m-2 0a8 8 0 1 1-16 0 8 8 0 0 1 16 0\",\n clipRule: \"evenodd\"\n })]\n });\n}\n;\nInfoIcon.displayName = \"InfoIcon\";\nexport default forwardRef(InfoIcon);","import { forwardRef } from \"react\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction CloseIcon(props, ref) {\n return /*#__PURE__*/_jsx(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"1em\",\n height: \"1em\",\n fill: \"currentColor\",\n viewBox: \"0 0 24 24\",\n ref: ref,\n ...props,\n children: /*#__PURE__*/_jsx(\"path\", {\n d: \"M6.293 6.293a1 1 0 0 1 1.414 0L12 10.586l4.293-4.293a1 1 0 1 1 1.414 1.414L13.414 12l4.293 4.293a1 1 0 0 1-1.414 1.414L12 13.414l-4.293 4.293a1 1 0 0 1-1.414-1.414L10.586 12 6.293 7.707a1 1 0 0 1 0-1.414\"\n })\n });\n}\n;\nCloseIcon.displayName = \"CloseIcon\";\nexport default forwardRef(CloseIcon);","const alert = \"_alert_zx76t_10\";\nconst content = \"_content_zx76t_37\";\nconst icon = \"_icon_zx76t_48\";\nconst actions = \"_actions_zx76t_64\";\nconst styles = {\n alert,\n content,\n \"text-content\": \"_text-content_zx76t_44\",\n icon,\n actions\n};\nexport {\n actions,\n alert,\n content,\n styles as default,\n icon\n};\n//# sourceMappingURL=Alert.module.css.js.map\n","const typography = \"_typography_6v6n8_153\";\nconst styles = {\n \"font-body-xs-regular\": \"_font-body-xs-regular_6v6n8_12\",\n \"font-body-xs-semibold\": \"_font-body-xs-semibold_6v6n8_17\",\n \"font-body-xs-medium\": \"_font-body-xs-medium_6v6n8_22\",\n \"font-body-sm-regular\": \"_font-body-sm-regular_6v6n8_31\",\n \"font-body-sm-semibold\": \"_font-body-sm-semibold_6v6n8_36\",\n \"font-body-sm-medium\": \"_font-body-sm-medium_6v6n8_41\",\n \"font-body-md-regular\": \"_font-body-md-regular_6v6n8_50\",\n \"font-body-md-semibold\": \"_font-body-md-semibold_6v6n8_55\",\n \"font-body-md-medium\": \"_font-body-md-medium_6v6n8_60\",\n \"font-body-lg-regular\": \"_font-body-lg-regular_6v6n8_69\",\n \"font-body-lg-semibold\": \"_font-body-lg-semibold_6v6n8_74\",\n \"font-body-lg-medium\": \"_font-body-lg-medium_6v6n8_79\",\n \"font-heading-sm-regular\": \"_font-heading-sm-regular_6v6n8_88\",\n \"font-heading-sm-semibold\": \"_font-heading-sm-semibold_6v6n8_93\",\n \"font-heading-sm-medium\": \"_font-heading-sm-medium_6v6n8_98\",\n \"font-heading-md-regular\": \"_font-heading-md-regular_6v6n8_107\",\n \"font-heading-md-semibold\": \"_font-heading-md-semibold_6v6n8_112\",\n \"font-heading-lg-regular\": \"_font-heading-lg-regular_6v6n8_121\",\n \"font-heading-lg-semibold\": \"_font-heading-lg-semibold_6v6n8_126\",\n \"font-heading-xl-regular\": \"_font-heading-xl-regular_6v6n8_135\",\n \"font-heading-xl-semibold\": \"_font-heading-xl-semibold_6v6n8_140\",\n typography\n};\nexport {\n styles as default,\n typography\n};\n//# sourceMappingURL=Typography.module.css.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport classNames from \"classnames\";\nimport styles from \"./Typography.module.css.js\";\nconst Typography = ({\n as,\n children,\n type = \"body\",\n weight = \"regular\",\n size = \"md\",\n className,\n ...restProps\n}) => {\n const Component = as || \"p\";\n return /* @__PURE__ */ jsx(\n Component,\n {\n ...restProps,\n className: classNames(\n styles.typography,\n styles[`font-${type}-${size}-${weight}`],\n className\n ),\n children\n }\n );\n};\nexport {\n Typography\n};\n//# sourceMappingURL=Typography.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport { Typography } from \"./Typography.js\";\nconst Text = ({ as = \"p\", children, ...props }) => {\n return /* @__PURE__ */ jsx(Typography, { as, type: \"body\", ...props, children });\n};\nexport {\n Text\n};\n//# sourceMappingURL=Text.js.map\n","const destructive = \"_destructive_1pz9o_95\";\nconst styles = {\n \"icon-button\": \"_icon-button_1pz9o_8\",\n \"no-background\": \"_no-background_1pz9o_42\",\n destructive\n};\nexport {\n styles as default,\n destructive\n};\n//# sourceMappingURL=IconButton.module.css.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport { forwardRef } from \"react\";\nconst UnstyledButton = forwardRef(function UnstyledButton2({\n as,\n children,\n className,\n disabled,\n ...props\n}, ref) {\n const Component = as || \"button\";\n const {\n onClick,\n onSubmit,\n onPointerDown,\n onPointerUp,\n onKeyDown,\n onKeyUp,\n onKeyPress,\n ...restProps\n } = props;\n const eventHandlers = disabled ? {} : {\n onClick,\n onSubmit,\n onPointerDown,\n onPointerUp,\n onKeyDown,\n onKeyUp,\n onKeyPress\n };\n return /* @__PURE__ */ jsx(\n Component,\n {\n ref,\n className,\n role: as === \"a\" ? \"link\" : \"button\",\n tabIndex: 0,\n \"aria-disabled\": disabled,\n ...restProps,\n ...eventHandlers,\n children\n }\n );\n});\nexport {\n UnstyledButton\n};\n//# sourceMappingURL=UnstyledButton.js.map\n","const styles = {\n \"indicator-icon\": \"_indicator-icon_zr2a0_17\"\n};\nexport {\n styles as default\n};\n//# sourceMappingURL=IndicatorIcon.module.css.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport React, { forwardRef } from \"react\";\nimport classNames from \"classnames\";\nimport styles from \"./IndicatorIcon.module.css.js\";\nconst IndicatorIcon = forwardRef(function IconButton({ children, className, size = \"100%\", colour, indicator }, ref) {\n const classes = classNames(styles[\"indicator-icon\"], className);\n return /* @__PURE__ */ jsx(\n \"div\",\n {\n ref,\n className: classes,\n \"data-indicator\": indicator,\n style: {\n \"--cpd-icon-button-size\": size,\n \"--cpd-color-icon-tertiary\": colour\n },\n children: React.Children.only(children)\n }\n );\n});\nexport {\n IndicatorIcon\n};\n//# sourceMappingURL=IndicatorIcon.js.map\n","import { createContext, useContext } from \"react\";\nconst TooltipContext = createContext(null);\nfunction useTooltipContext() {\n const context = useContext(TooltipContext);\n if (context == null) {\n throw new Error(\"Tooltip components must be wrapped in \");\n }\n return context;\n}\nexport {\n TooltipContext,\n useTooltipContext\n};\n//# sourceMappingURL=TooltipContext.js.map\n","function hasWindow() {\n return typeof window !== 'undefined';\n}\nfunction getNodeName(node) {\n if (isNode(node)) {\n return (node.nodeName || '').toLowerCase();\n }\n // Mocked nodes in testing environments may not be instances of Node. By\n // returning `#document` an infinite loop won't occur.\n // https://github.com/floating-ui/floating-ui/issues/2317\n return '#document';\n}\nfunction getWindow(node) {\n var _node$ownerDocument;\n return (node == null || (_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;\n}\nfunction getDocumentElement(node) {\n var _ref;\n return (_ref = (isNode(node) ? node.ownerDocument : node.document) || window.document) == null ? void 0 : _ref.documentElement;\n}\nfunction isNode(value) {\n if (!hasWindow()) {\n return false;\n }\n return value instanceof Node || value instanceof getWindow(value).Node;\n}\nfunction isElement(value) {\n if (!hasWindow()) {\n return false;\n }\n return value instanceof Element || value instanceof getWindow(value).Element;\n}\nfunction isHTMLElement(value) {\n if (!hasWindow()) {\n return false;\n }\n return value instanceof HTMLElement || value instanceof getWindow(value).HTMLElement;\n}\nfunction isShadowRoot(value) {\n if (!hasWindow() || typeof ShadowRoot === 'undefined') {\n return false;\n }\n return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;\n}\nconst invalidOverflowDisplayValues = /*#__PURE__*/new Set(['inline', 'contents']);\nfunction isOverflowElement(element) {\n const {\n overflow,\n overflowX,\n overflowY,\n display\n } = getComputedStyle(element);\n return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && !invalidOverflowDisplayValues.has(display);\n}\nconst tableElements = /*#__PURE__*/new Set(['table', 'td', 'th']);\nfunction isTableElement(element) {\n return tableElements.has(getNodeName(element));\n}\nconst topLayerSelectors = [':popover-open', ':modal'];\nfunction isTopLayer(element) {\n return topLayerSelectors.some(selector => {\n try {\n return element.matches(selector);\n } catch (_e) {\n return false;\n }\n });\n}\nconst transformProperties = ['transform', 'translate', 'scale', 'rotate', 'perspective'];\nconst willChangeValues = ['transform', 'translate', 'scale', 'rotate', 'perspective', 'filter'];\nconst containValues = ['paint', 'layout', 'strict', 'content'];\nfunction isContainingBlock(elementOrCss) {\n const webkit = isWebKit();\n const css = isElement(elementOrCss) ? getComputedStyle(elementOrCss) : elementOrCss;\n\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n // https://drafts.csswg.org/css-transforms-2/#individual-transforms\n return transformProperties.some(value => css[value] ? css[value] !== 'none' : false) || (css.containerType ? css.containerType !== 'normal' : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== 'none' : false) || !webkit && (css.filter ? css.filter !== 'none' : false) || willChangeValues.some(value => (css.willChange || '').includes(value)) || containValues.some(value => (css.contain || '').includes(value));\n}\nfunction getContainingBlock(element) {\n let currentNode = getParentNode(element);\n while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {\n if (isContainingBlock(currentNode)) {\n return currentNode;\n } else if (isTopLayer(currentNode)) {\n return null;\n }\n currentNode = getParentNode(currentNode);\n }\n return null;\n}\nfunction isWebKit() {\n if (typeof CSS === 'undefined' || !CSS.supports) return false;\n return CSS.supports('-webkit-backdrop-filter', 'none');\n}\nconst lastTraversableNodeNames = /*#__PURE__*/new Set(['html', 'body', '#document']);\nfunction isLastTraversableNode(node) {\n return lastTraversableNodeNames.has(getNodeName(node));\n}\nfunction getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}\nfunction getNodeScroll(element) {\n if (isElement(element)) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n }\n return {\n scrollLeft: element.scrollX,\n scrollTop: element.scrollY\n };\n}\nfunction getParentNode(node) {\n if (getNodeName(node) === 'html') {\n return node;\n }\n const result =\n // Step into the shadow DOM of the parent of a slotted node.\n node.assignedSlot ||\n // DOM Element detected.\n node.parentNode ||\n // ShadowRoot detected.\n isShadowRoot(node) && node.host ||\n // Fallback.\n getDocumentElement(node);\n return isShadowRoot(result) ? result.host : result;\n}\nfunction getNearestOverflowAncestor(node) {\n const parentNode = getParentNode(node);\n if (isLastTraversableNode(parentNode)) {\n return node.ownerDocument ? node.ownerDocument.body : node.body;\n }\n if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {\n return parentNode;\n }\n return getNearestOverflowAncestor(parentNode);\n}\nfunction getOverflowAncestors(node, list, traverseIframes) {\n var _node$ownerDocument2;\n if (list === void 0) {\n list = [];\n }\n if (traverseIframes === void 0) {\n traverseIframes = true;\n }\n const scrollableAncestor = getNearestOverflowAncestor(node);\n const isBody = scrollableAncestor === ((_node$ownerDocument2 = node.ownerDocument) == null ? void 0 : _node$ownerDocument2.body);\n const win = getWindow(scrollableAncestor);\n if (isBody) {\n const frameElement = getFrameElement(win);\n return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : [], frameElement && traverseIframes ? getOverflowAncestors(frameElement) : []);\n }\n return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor, [], traverseIframes));\n}\nfunction getFrameElement(win) {\n return win.parent && Object.getPrototypeOf(win.parent) ? win.frameElement : null;\n}\n\nexport { getComputedStyle, getContainingBlock, getDocumentElement, getFrameElement, getNearestOverflowAncestor, getNodeName, getNodeScroll, getOverflowAncestors, getParentNode, getWindow, isContainingBlock, isElement, isHTMLElement, isLastTraversableNode, isNode, isOverflowElement, isShadowRoot, isTableElement, isTopLayer, isWebKit };\n","/**\n * Custom positioning reference element.\n * @see https://floating-ui.com/docs/virtual-elements\n */\n\nconst sides = ['top', 'right', 'bottom', 'left'];\nconst alignments = ['start', 'end'];\nconst placements = /*#__PURE__*/sides.reduce((acc, side) => acc.concat(side, side + \"-\" + alignments[0], side + \"-\" + alignments[1]), []);\nconst min = Math.min;\nconst max = Math.max;\nconst round = Math.round;\nconst floor = Math.floor;\nconst createCoords = v => ({\n x: v,\n y: v\n});\nconst oppositeSideMap = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nconst oppositeAlignmentMap = {\n start: 'end',\n end: 'start'\n};\nfunction clamp(start, value, end) {\n return max(start, min(value, end));\n}\nfunction evaluate(value, param) {\n return typeof value === 'function' ? value(param) : value;\n}\nfunction getSide(placement) {\n return placement.split('-')[0];\n}\nfunction getAlignment(placement) {\n return placement.split('-')[1];\n}\nfunction getOppositeAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}\nfunction getAxisLength(axis) {\n return axis === 'y' ? 'height' : 'width';\n}\nconst yAxisSides = /*#__PURE__*/new Set(['top', 'bottom']);\nfunction getSideAxis(placement) {\n return yAxisSides.has(getSide(placement)) ? 'y' : 'x';\n}\nfunction getAlignmentAxis(placement) {\n return getOppositeAxis(getSideAxis(placement));\n}\nfunction getAlignmentSides(placement, rects, rtl) {\n if (rtl === void 0) {\n rtl = false;\n }\n const alignment = getAlignment(placement);\n const alignmentAxis = getAlignmentAxis(placement);\n const length = getAxisLength(alignmentAxis);\n let mainAlignmentSide = alignmentAxis === 'x' ? alignment === (rtl ? 'end' : 'start') ? 'right' : 'left' : alignment === 'start' ? 'bottom' : 'top';\n if (rects.reference[length] > rects.floating[length]) {\n mainAlignmentSide = getOppositePlacement(mainAlignmentSide);\n }\n return [mainAlignmentSide, getOppositePlacement(mainAlignmentSide)];\n}\nfunction getExpandedPlacements(placement) {\n const oppositePlacement = getOppositePlacement(placement);\n return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];\n}\nfunction getOppositeAlignmentPlacement(placement) {\n return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);\n}\nconst lrPlacement = ['left', 'right'];\nconst rlPlacement = ['right', 'left'];\nconst tbPlacement = ['top', 'bottom'];\nconst btPlacement = ['bottom', 'top'];\nfunction getSideList(side, isStart, rtl) {\n switch (side) {\n case 'top':\n case 'bottom':\n if (rtl) return isStart ? rlPlacement : lrPlacement;\n return isStart ? lrPlacement : rlPlacement;\n case 'left':\n case 'right':\n return isStart ? tbPlacement : btPlacement;\n default:\n return [];\n }\n}\nfunction getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {\n const alignment = getAlignment(placement);\n let list = getSideList(getSide(placement), direction === 'start', rtl);\n if (alignment) {\n list = list.map(side => side + \"-\" + alignment);\n if (flipAlignment) {\n list = list.concat(list.map(getOppositeAlignmentPlacement));\n }\n }\n return list;\n}\nfunction getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);\n}\nfunction expandPaddingObject(padding) {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n ...padding\n };\n}\nfunction getPaddingObject(padding) {\n return typeof padding !== 'number' ? expandPaddingObject(padding) : {\n top: padding,\n right: padding,\n bottom: padding,\n left: padding\n };\n}\nfunction rectToClientRect(rect) {\n const {\n x,\n y,\n width,\n height\n } = rect;\n return {\n width,\n height,\n top: y,\n left: x,\n right: x + width,\n bottom: y + height,\n x,\n y\n };\n}\n\nexport { alignments, clamp, createCoords, evaluate, expandPaddingObject, floor, getAlignment, getAlignmentAxis, getAlignmentSides, getAxisLength, getExpandedPlacements, getOppositeAlignmentPlacement, getOppositeAxis, getOppositeAxisPlacements, getOppositePlacement, getPaddingObject, getSide, getSideAxis, max, min, placements, rectToClientRect, round, sides };\n","/*!\n* tabbable 6.2.0\n* @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE\n*/\n// NOTE: separate `:not()` selectors has broader browser support than the newer\n// `:not([inert], [inert] *)` (Feb 2023)\n// CAREFUL: JSDom does not support `:not([inert] *)` as a selector; using it causes\n// the entire query to fail, resulting in no nodes found, which will break a lot\n// of things... so we have to rely on JS to identify nodes inside an inert container\nvar candidateSelectors = ['input:not([inert])', 'select:not([inert])', 'textarea:not([inert])', 'a[href]:not([inert])', 'button:not([inert])', '[tabindex]:not(slot):not([inert])', 'audio[controls]:not([inert])', 'video[controls]:not([inert])', '[contenteditable]:not([contenteditable=\"false\"]):not([inert])', 'details>summary:first-of-type:not([inert])', 'details:not([inert])'];\nvar candidateSelector = /* #__PURE__ */candidateSelectors.join(',');\nvar NoElement = typeof Element === 'undefined';\nvar matches = NoElement ? function () {} : Element.prototype.matches || Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;\nvar getRootNode = !NoElement && Element.prototype.getRootNode ? function (element) {\n var _element$getRootNode;\n return element === null || element === void 0 ? void 0 : (_element$getRootNode = element.getRootNode) === null || _element$getRootNode === void 0 ? void 0 : _element$getRootNode.call(element);\n} : function (element) {\n return element === null || element === void 0 ? void 0 : element.ownerDocument;\n};\n\n/**\n * Determines if a node is inert or in an inert ancestor.\n * @param {Element} [node]\n * @param {boolean} [lookUp] If true and `node` is not inert, looks up at ancestors to\n * see if any of them are inert. If false, only `node` itself is considered.\n * @returns {boolean} True if inert itself or by way of being in an inert ancestor.\n * False if `node` is falsy.\n */\nvar isInert = function isInert(node, lookUp) {\n var _node$getAttribute;\n if (lookUp === void 0) {\n lookUp = true;\n }\n // CAREFUL: JSDom does not support inert at all, so we can't use the `HTMLElement.inert`\n // JS API property; we have to check the attribute, which can either be empty or 'true';\n // if it's `null` (not specified) or 'false', it's an active element\n var inertAtt = node === null || node === void 0 ? void 0 : (_node$getAttribute = node.getAttribute) === null || _node$getAttribute === void 0 ? void 0 : _node$getAttribute.call(node, 'inert');\n var inert = inertAtt === '' || inertAtt === 'true';\n\n // NOTE: this could also be handled with `node.matches('[inert], :is([inert] *)')`\n // if it weren't for `matches()` not being a function on shadow roots; the following\n // code works for any kind of node\n // CAREFUL: JSDom does not appear to support certain selectors like `:not([inert] *)`\n // so it likely would not support `:is([inert] *)` either...\n var result = inert || lookUp && node && isInert(node.parentNode); // recursive\n\n return result;\n};\n\n/**\n * Determines if a node's content is editable.\n * @param {Element} [node]\n * @returns True if it's content-editable; false if it's not or `node` is falsy.\n */\nvar isContentEditable = function isContentEditable(node) {\n var _node$getAttribute2;\n // CAREFUL: JSDom does not support the `HTMLElement.isContentEditable` API so we have\n // to use the attribute directly to check for this, which can either be empty or 'true';\n // if it's `null` (not specified) or 'false', it's a non-editable element\n var attValue = node === null || node === void 0 ? void 0 : (_node$getAttribute2 = node.getAttribute) === null || _node$getAttribute2 === void 0 ? void 0 : _node$getAttribute2.call(node, 'contenteditable');\n return attValue === '' || attValue === 'true';\n};\n\n/**\n * @param {Element} el container to check in\n * @param {boolean} includeContainer add container to check\n * @param {(node: Element) => boolean} filter filter candidates\n * @returns {Element[]}\n */\nvar getCandidates = function getCandidates(el, includeContainer, filter) {\n // even if `includeContainer=false`, we still have to check it for inertness because\n // if it's inert, all its children are inert\n if (isInert(el)) {\n return [];\n }\n var candidates = Array.prototype.slice.apply(el.querySelectorAll(candidateSelector));\n if (includeContainer && matches.call(el, candidateSelector)) {\n candidates.unshift(el);\n }\n candidates = candidates.filter(filter);\n return candidates;\n};\n\n/**\n * @callback GetShadowRoot\n * @param {Element} element to check for shadow root\n * @returns {ShadowRoot|boolean} ShadowRoot if available or boolean indicating if a shadowRoot is attached but not available.\n */\n\n/**\n * @callback ShadowRootFilter\n * @param {Element} shadowHostNode the element which contains shadow content\n * @returns {boolean} true if a shadow root could potentially contain valid candidates.\n */\n\n/**\n * @typedef {Object} CandidateScope\n * @property {Element} scopeParent contains inner candidates\n * @property {Element[]} candidates list of candidates found in the scope parent\n */\n\n/**\n * @typedef {Object} IterativeOptions\n * @property {GetShadowRoot|boolean} getShadowRoot true if shadow support is enabled; falsy if not;\n * if a function, implies shadow support is enabled and either returns the shadow root of an element\n * or a boolean stating if it has an undisclosed shadow root\n * @property {(node: Element) => boolean} filter filter candidates\n * @property {boolean} flatten if true then result will flatten any CandidateScope into the returned list\n * @property {ShadowRootFilter} shadowRootFilter filter shadow roots;\n */\n\n/**\n * @param {Element[]} elements list of element containers to match candidates from\n * @param {boolean} includeContainer add container list to check\n * @param {IterativeOptions} options\n * @returns {Array.}\n */\nvar getCandidatesIteratively = function getCandidatesIteratively(elements, includeContainer, options) {\n var candidates = [];\n var elementsToCheck = Array.from(elements);\n while (elementsToCheck.length) {\n var element = elementsToCheck.shift();\n if (isInert(element, false)) {\n // no need to look up since we're drilling down\n // anything inside this container will also be inert\n continue;\n }\n if (element.tagName === 'SLOT') {\n // add shadow dom slot scope (slot itself cannot be focusable)\n var assigned = element.assignedElements();\n var content = assigned.length ? assigned : element.children;\n var nestedCandidates = getCandidatesIteratively(content, true, options);\n if (options.flatten) {\n candidates.push.apply(candidates, nestedCandidates);\n } else {\n candidates.push({\n scopeParent: element,\n candidates: nestedCandidates\n });\n }\n } else {\n // check candidate element\n var validCandidate = matches.call(element, candidateSelector);\n if (validCandidate && options.filter(element) && (includeContainer || !elements.includes(element))) {\n candidates.push(element);\n }\n\n // iterate over shadow content if possible\n var shadowRoot = element.shadowRoot ||\n // check for an undisclosed shadow\n typeof options.getShadowRoot === 'function' && options.getShadowRoot(element);\n\n // no inert look up because we're already drilling down and checking for inertness\n // on the way down, so all containers to this root node should have already been\n // vetted as non-inert\n var validShadowRoot = !isInert(shadowRoot, false) && (!options.shadowRootFilter || options.shadowRootFilter(element));\n if (shadowRoot && validShadowRoot) {\n // add shadow dom scope IIF a shadow root node was given; otherwise, an undisclosed\n // shadow exists, so look at light dom children as fallback BUT create a scope for any\n // child candidates found because they're likely slotted elements (elements that are\n // children of the web component element (which has the shadow), in the light dom, but\n // slotted somewhere _inside_ the undisclosed shadow) -- the scope is created below,\n // _after_ we return from this recursive call\n var _nestedCandidates = getCandidatesIteratively(shadowRoot === true ? element.children : shadowRoot.children, true, options);\n if (options.flatten) {\n candidates.push.apply(candidates, _nestedCandidates);\n } else {\n candidates.push({\n scopeParent: element,\n candidates: _nestedCandidates\n });\n }\n } else {\n // there's not shadow so just dig into the element's (light dom) children\n // __without__ giving the element special scope treatment\n elementsToCheck.unshift.apply(elementsToCheck, element.children);\n }\n }\n }\n return candidates;\n};\n\n/**\n * @private\n * Determines if the node has an explicitly specified `tabindex` attribute.\n * @param {HTMLElement} node\n * @returns {boolean} True if so; false if not.\n */\nvar hasTabIndex = function hasTabIndex(node) {\n return !isNaN(parseInt(node.getAttribute('tabindex'), 10));\n};\n\n/**\n * Determine the tab index of a given node.\n * @param {HTMLElement} node\n * @returns {number} Tab order (negative, 0, or positive number).\n * @throws {Error} If `node` is falsy.\n */\nvar getTabIndex = function getTabIndex(node) {\n if (!node) {\n throw new Error('No node provided');\n }\n if (node.tabIndex < 0) {\n // in Chrome,
    ,