diff --git a/.github/workflows/facades.yml b/.github/workflows/facades.yml index 912ddd24763..d66009ce277 100644 --- a/.github/workflows/facades.yml +++ b/.github/workflows/facades.yml @@ -22,7 +22,7 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Setup PHP uses: shivammathur/setup-php@v2 @@ -57,17 +57,22 @@ jobs: php -f vendor/bin/facade.php -- \ CraftCms\\Cms\\Support\\Facades\\Announcements \ CraftCms\\Cms\\Support\\Facades\\Deprecator \ + CraftCms\\Cms\\Support\\Facades\\Entries \ CraftCms\\Cms\\Support\\Facades\\EntryTypes \ CraftCms\\Cms\\Support\\Facades\\Fields \ CraftCms\\Cms\\Support\\Facades\\I18N \ CraftCms\\Cms\\Support\\Facades\\ProjectConfig \ CraftCms\\Cms\\Support\\Facades\\Sections \ + CraftCms\\Cms\\Support\\Facades\\SiteGroups \ + CraftCms\\Cms\\Support\\Facades\\Sites \ CraftCms\\Cms\\Support\\Facades\\Structures \ CraftCms\\Cms\\Support\\Facades\\Updates \ - CraftCms\\Cms\\Support\\Facades\\UserGroups + CraftCms\\Cms\\Support\\Facades\\UserGroups \ + CraftCms\\Cms\\Support\\Facades\\UserPermissions \ + CraftCms\\Cms\\Support\\Facades\\Users - name: Commit facade docblocks - uses: stefanzweifel/git-auto-commit-action@v5 + uses: stefanzweifel/git-auto-commit-action@v7 with: commit_message: Update facade docblocks file_pattern: src/ diff --git a/CHANGELOG.md b/CHANGELOG.md index 5514030fee3..f16af0316a8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,12 +2,21 @@ ## Unreleased +- User queries now always return active, non-pending users first, unless otherwise specified by `orderBy`. ([#18148](https://github.com/craftcms/cms/issues/18148)) +- The `utils/fix-field-layout-uids` command now checks for duplicate top-level field layout UUIDs. ([#18193](https://github.com/craftcms/cms/pull/18193)) +- Fixed a bug where all plugin settings were being saved to the project config, rather than just posted settings. ([craftcms/commerce#4006](https://github.com/craftcms/commerce/issues/4006)) +- Fixed a bug where custom selects could be positioned incorrectly after the window was resized. ([#18179](https://github.com/craftcms/cms/issues/18179)) - Fixed a bug where Matrix fields’ Entry Types settings were partially interactive when admin changes were disallowed. ([#18145](https://github.com/craftcms/cms/pull/18145)) - Fixed a bug where users could be unable to sign in if an inactive user account existed with the same email address. ([#18148](https://github.com/craftcms/cms/issues/18148)) - Fixed a bug where Content Block fields could appear to be missing their content when viewing a revision. ([#18149](https://github.com/craftcms/cms/issues/18149)) - Fixed a bug where Dropdown and Radio Button fields weren’t handling `:empty:`/`:notempty:` element query params properly for options with blank values. ([#18156](https://github.com/craftcms/cms/issues/18156)) - Fixed a bug where chip icons were getting rounded. ([#18163](https://github.com/craftcms/cms/pull/18163)) - Fixed a bug where object templates that included another template were missing variables. ([#18165](https://github.com/craftcms/cms/issues/18165)) +- Fixed a JavaScript error that could occur if two control panel animations were triggered simultaneously. +- Fixed a bug where it wasn’t possible to copy/paste nested entries within Matrix fields set to the inline-editable blocks view mode, for unpublished owner elements. ([#18185](https://github.com/craftcms/cms/pull/18185)) +- Fixed a bug where custom fields’ checkboxes weren’t getting removed from field layouts’ “Card Attributes” lists when removed from the layout. +- Fixed an SSRF vulnerability. (GHSA-96pq-hxpw-rgh8) +- Fixed an XSS vulnerability. (GHSA-7pr4-wx9w-mqwr) ## 5.8.21 - 2025-12-04 @@ -20,10 +29,10 @@ - Fixed a bug where relation fields weren’t handling `:empty:`/`:notempty:` element query params properly if the field had multiple instances within a field layout. ([#18092](https://github.com/craftcms/cms/pull/18092)) - Fixed a bug where user preferences were being respected for users who formerly had access to the control panel. - Fixed a bug where nested entries could be reordered when their owner element was resaved programmatically. ([#18121](https://github.com/craftcms/cms/pull/18121)) -- Fixed RCE vulnerabilities. (GHSA-255j-qw47-wjh5, GHSA-742x-x762-7383) -- Fixed an SSRF vulnerability. (GHSA-x27p-wfqw-hfcc) -- Fixed a DoS vulnerability. (GHSA-v64r-7wg9-23pr) -- Fixed an information disclosure vulnerability. (GHSA-53vf-c43h-j2x9) +- Fixed RCE vulnerabilities. ([GHSA-255j-qw47-wjh5](https://github.com/craftcms/cms/security/advisories/GHSA-255j-qw47-wjh5), [GHSA-742x-x762-7383](https://github.com/craftcms/cms/security/advisories/GHSA-742x-x762-7383)) +- Fixed an SSRF vulnerability. ([GHSA-x27p-wfqw-hfcc](https://github.com/craftcms/cms/security/advisories/GHSA-x27p-wfqw-hfcc)) +- Fixed a DoS vulnerability. ([GHSA-v64r-7wg9-23pr](https://github.com/craftcms/cms/security/advisories/GHSA-v64r-7wg9-23pr)) +- Fixed an information disclosure vulnerability. ([GHSA-53vf-c43h-j2x9](https://github.com/craftcms/cms/security/advisories/GHSA-53vf-c43h-j2x9)) ## 5.8.20 - 2025-11-18 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 14f5f12ac05..476edd4ce53 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -67,6 +67,55 @@ If you want to help improve Craft’s translations, [sign up to be a translator] If you would like to work on a new core feature or improvement, first create a [GitHub issue](https://github.com/craftcms/cms/issues) for it if there’s not one already. As much as we appreciate community contributions, we are pretty selective about which sorts of features should make it into Craft itself rather than a plugin, so don’t take it the wrong way if we advise you to pursue the idea as a plugin instead. +## Control Panel Front End + +In order to work on the control panel front end, we recommend opening two terminal windows. + +1. Run `npm run dev` in one window to start the Vite development server. +2. Run `npm run dev:cp` in the other window to start the Vite process for the `@craftcms/cp` package. + +With both processes running, you'll be able to work on most aspects of the control panel. + +If getting into the weeds is your thing, more detail on these pieces is provided below. + +### Control Panel Assets + +The assets specific to the control panel live in the `resources` folder. Those are built using a fairly typical Vite setup. To develop assets for the control panel, there are two commands: +```shell +# Run the Vite development server +npm run dev + +# Build assets for production +npm run build +``` + +### `@craftcms/cp` package + +The control panel is largely backed by web components that live in the `@craftcms/cp` package within the `packages/craftcms-cp` directory. Like other packages, it has its own build process that can be run independently of the control panel. +```shell +# Run the build in watch mode. Assets will be rebuilt on every change +npm run dev:cp + +# Run the build for production +npm run build:cp +``` + +In practice, you rarely work on one without the other, so we recommend having two terminal panes open. One running the main control panel assets build and another building the web components. + +### Legacy Bundles + +> [!NOTE] +> Updating the legacy bundles should be a rare occurrence. Avoid when possible. + +All the styles and scripts used to support the control panel up until Craft 5 live in the [yii2-adapter](https://github.com/craftcms/yii2-adapter) package. That package has its own NPM dependencies and build process, but because it's common to have that package symlinked into your Craft 6 project, you're able to run the build scripts via the `build:bundles` command. +```sh +# Build assets for production +npm run build:bundles + +# Run dev server to develop a specific package +npm run dev:bundles -- -- --config-name=cp +``` + ## Pull Requests Pull requests should clearly describe the problem and solution. Include the relevant issue number if there is one. If the pull request fixes a bug, it should include a new test case that demonstrates the issue, if possible. diff --git a/package-lock.json b/package-lock.json index 8a7e9273e89..0dc3fa95b05 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,6 +11,7 @@ "dependencies": { "@craftcms/cp": "file:packages/craftcms-cp", "@inertiajs/vue3": "^2.2.7", + "@tanstack/vue-table": "^8.21.3", "@vueuse/core": "^14.0.0", "axios": "^1.13.2", "laravel-vite-plugin": "^2.0.1", @@ -6273,6 +6274,19 @@ "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, + "node_modules/@tanstack/table-core": { + "version": "8.21.3", + "resolved": "https://registry.npmjs.org/@tanstack/table-core/-/table-core-8.21.3.tgz", + "integrity": "sha512-ldZXEhOBb8Is7xLs01fR3YEc3DERiz5silj8tnGkFZytt1abEvl/GhUmCE0PMLaMPTa3Jk4HbKmRlHmu+gCftg==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, "node_modules/@tanstack/virtual-core": { "version": "3.13.12", "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.13.12.tgz", @@ -6283,6 +6297,25 @@ "url": "https://github.com/sponsors/tannerlinsley" } }, + "node_modules/@tanstack/vue-table": { + "version": "8.21.3", + "resolved": "https://registry.npmjs.org/@tanstack/vue-table/-/vue-table-8.21.3.tgz", + "integrity": "sha512-rusRyd77c5tDPloPskctMyPLFEQUeBzxdQ+2Eow4F7gDPlPOB1UnnhzfpdvqZ8ZyX2rRNGmqNnQWm87OI2OQPw==", + "license": "MIT", + "dependencies": { + "@tanstack/table-core": "8.21.3" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "vue": ">=3.2" + } + }, "node_modules/@testing-library/dom": { "version": "10.4.1", "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-10.4.1.tgz", diff --git a/package.json b/package.json index 1442fb8c80a..b5ce4b78bba 100644 --- a/package.json +++ b/package.json @@ -10,13 +10,13 @@ "prebuild": "npm run fix-prettier", "build": "vite build", "dev": "vite", - "build:bundles": "cd yii2-adapter && npm run build", - "dev:bundles": "cd yii2-adapter && npm run dev", - "serve:bundles": "cd yii2-adapter && npm run serve", - "dev:cp": "npm run dev -w @craftcms/cp", - "build:cp": "npm run build -w @craftcms/cp", - "test:cp": "npm run test -w @craftcms/cp", - "storybook:cp": "npm run storybook -w @craftcms/cp", + "build:bundles": "cd ./yii2-adapter && npm run build", + "dev:bundles": "cd ./yii2-adapter && npm run dev", + "serve:bundles": "cd ./yii2-adapter && npm run serve", + "dev:cp": "cd ./packages/craftcms-cp && npm run dev", + "build:cp": "cd ./packages/craftcms-cp && npm run build", + "test:cp": "cd ./packages/craftcms-cp && npm run test", + "storybook:cp": "cd ./packages/craftcms-cp && npm run storybook", "build:all": "npm run build:bundles && npm run build:cp && npm run build" }, "workspaces": [ @@ -53,6 +53,7 @@ "dependencies": { "@craftcms/cp": "file:packages/craftcms-cp", "@inertiajs/vue3": "^2.2.7", + "@tanstack/vue-table": "^8.21.3", "@vueuse/core": "^14.0.0", "axios": "^1.13.2", "laravel-vite-plugin": "^2.0.1", diff --git a/packages/craftcms-cp/src/components/action-item/action-item.ts b/packages/craftcms-cp/src/components/action-item/action-item.ts index bf5a1868057..6c58debfeaf 100644 --- a/packages/craftcms-cp/src/components/action-item/action-item.ts +++ b/packages/craftcms-cp/src/components/action-item/action-item.ts @@ -1,8 +1,8 @@ import {html, LitElement, nothing} from 'lit'; import {property} from 'lit/decorators.js'; import styles from './action-item.styles.js'; -import {Variant, type VariantKey} from '@/types'; -import variantsStyles from '@/styles/variants.styles'; +import {Variant, type VariantKey} from '@src/types'; +import variantsStyles from '@src/styles/variants.styles'; /** * @summary Either a link or button typically used in a menu. @@ -12,7 +12,7 @@ export default class CraftActionItem extends LitElement { @property() icon: string | null = null; @property() href: string | null = null; @property({type: Boolean}) disabled: boolean = false; - @property() variant: VariantKey = Variant.Default; + @property({reflect: true}) variant: VariantKey = Variant.Default; renderBody() { return html` diff --git a/packages/craftcms-cp/src/components/action-menu/action-menu.ts b/packages/craftcms-cp/src/components/action-menu/action-menu.ts index 8db69e187a0..99f6647fd55 100644 --- a/packages/craftcms-cp/src/components/action-menu/action-menu.ts +++ b/packages/craftcms-cp/src/components/action-menu/action-menu.ts @@ -1,7 +1,7 @@ import {css, html, LitElement} from 'lit'; import {OverlayMixin, withDropdownConfig} from '@lion/ui/overlays.js'; import {queryAssignedElements} from 'lit/decorators.js'; -import type CraftActionItem from '@/components/action-item/action-item'; +import type CraftActionItem from '@src/components/action-item/action-item'; import {uuid} from '@lion/ui/core.js'; /** @@ -13,6 +13,8 @@ import {uuid} from '@lion/ui/core.js'; export default class CraftActionMenu extends OverlayMixin(LitElement) { static override styles = css` ::slotted([slot='content']) { + font-size: var(--c-text-base); + font-weight: 400; display: grid; gap: var(--c-spacing-xs); border: 1px solid var(--c-color-neutral-border-subtle); diff --git a/packages/craftcms-cp/src/components/button/button.styles.ts b/packages/craftcms-cp/src/components/button/button.styles.ts index 4208c6cbbf0..d16899f7d7d 100644 --- a/packages/craftcms-cp/src/components/button/button.styles.ts +++ b/packages/craftcms-cp/src/components/button/button.styles.ts @@ -11,7 +11,7 @@ export default css` align-items: center; border-radius: var(--c-button-radius, var(--c-radius-sm)); color: var(--c-button-fg, inherit); - padding-inline: var(--c-button-spacing-inline, var(--c-spacing-lg)); + padding-inline: var(--c-button-spacing-inline, var(--c-spacing-md)); padding-block: 0; width: auto; min-height: var(--c-button-height, var(--c-size-control-md)); @@ -46,6 +46,7 @@ export default css` padding-inline: var(--c-spacing-sm); min-width: var(--c-size-control-sm); min-height: var(--c-size-control-sm); + font-size: 0.9em; craft-icon { font-size: 0.8em; diff --git a/packages/craftcms-cp/src/components/callout/callout.stories.ts b/packages/craftcms-cp/src/components/callout/callout.stories.ts index 1e13be675ba..bde500768f6 100644 --- a/packages/craftcms-cp/src/components/callout/callout.stories.ts +++ b/packages/craftcms-cp/src/components/callout/callout.stories.ts @@ -3,7 +3,7 @@ import type {Meta, StoryObj} from '@storybook/web-components-vite'; import {html} from 'lit'; import './callout.js'; -import {Variant, Appearance} from '@/types'; +import {Appearance, Variant} from '@src/types'; const variants = Object.values(Variant); const appearances = Object.values(Appearance); diff --git a/packages/craftcms-cp/src/components/callout/callout.ts b/packages/craftcms-cp/src/components/callout/callout.ts index 578fb35a0bd..a994836c79a 100644 --- a/packages/craftcms-cp/src/components/callout/callout.ts +++ b/packages/craftcms-cp/src/components/callout/callout.ts @@ -7,8 +7,8 @@ import { type AppearanceKey, Variant, type VariantKey, -} from '@/types/index.js'; -import variantsStyles from '@/styles/variants.styles'; +} from '@src/types/index.js'; +import variantsStyles from '@src/styles/variants.styles.js'; export default class CraftCallout extends LitElement { static override styles: CSSResultGroup = [variantsStyles, styles]; diff --git a/packages/craftcms-cp/src/components/indicator/indicator.stories.ts b/packages/craftcms-cp/src/components/indicator/indicator.stories.ts index dfda3a0a0de..d1184b7ff7f 100644 --- a/packages/craftcms-cp/src/components/indicator/indicator.stories.ts +++ b/packages/craftcms-cp/src/components/indicator/indicator.stories.ts @@ -3,7 +3,7 @@ import type {Meta, StoryObj} from '@storybook/web-components-vite'; import {html} from 'lit'; import './indicator.js'; -import {Variant} from '@/types'; +import {Variant} from '@src/types'; // More on how to set up stories at: https://storybook.js.org/docs/writing-stories const meta = { diff --git a/packages/craftcms-cp/src/components/indicator/indicator.ts b/packages/craftcms-cp/src/components/indicator/indicator.ts index 99f9e240c16..7522076f8eb 100644 --- a/packages/craftcms-cp/src/components/indicator/indicator.ts +++ b/packages/craftcms-cp/src/components/indicator/indicator.ts @@ -1,9 +1,8 @@ -import {LitElement, html, css} from 'lit'; +import {css, html, LitElement} from 'lit'; import {property} from 'lit/decorators.js'; -import {Variant, type VariantKey} from '@/types'; +import {Variant, type VariantKey} from '@src/types'; import {classMap} from 'lit/directives/class-map.js'; -import variantsStyles from '@/styles/variants.styles'; -import CraftCombobox from '@/components/combobox/combobox'; +import variantsStyles from '@src/styles/variants.styles'; export default class CraftIndicator extends LitElement { static override styles = [ diff --git a/packages/craftcms-cp/src/components/input-file/input-file.ts b/packages/craftcms-cp/src/components/input-file/input-file.ts index aa02d954729..92cf726f559 100644 --- a/packages/craftcms-cp/src/components/input-file/input-file.ts +++ b/packages/craftcms-cp/src/components/input-file/input-file.ts @@ -1,5 +1,5 @@ import {LionInputFile} from '@lion/ui/input-file.js'; -import {inputStyles} from '@/styles/form.styles'; +import {inputStyles} from '@src/styles/form.styles'; import styles from './input-file.styles.js'; import CraftSelectedFileList from './selected-file-list.js'; import {html} from 'lit'; diff --git a/packages/craftcms-cp/src/components/input/input.ts b/packages/craftcms-cp/src/components/input/input.ts index 8cf77f50126..e66fccfadf8 100644 --- a/packages/craftcms-cp/src/components/input/input.ts +++ b/packages/craftcms-cp/src/components/input/input.ts @@ -1,5 +1,5 @@ import {LionInput} from '@lion/ui/input.js'; -import {inputStyles} from '@/styles/form.styles'; +import {inputStyles} from '@src/styles/form.styles'; import styles from './input.styles.js'; import {property} from 'lit/decorators.js'; diff --git a/packages/craftcms-cp/src/components/nav-item/nav-item.styles.ts b/packages/craftcms-cp/src/components/nav-item/nav-item.styles.ts index 697b402f287..79997ed887b 100644 --- a/packages/craftcms-cp/src/components/nav-item/nav-item.styles.ts +++ b/packages/craftcms-cp/src/components/nav-item/nav-item.styles.ts @@ -4,16 +4,21 @@ export default css` .nav-item { display: grid; gap: var(--c-spacing-md); - grid-template-columns: calc(24rem / 16) 1fr auto; + grid-template-columns: 1fr auto; align-items: center; text-decoration: none; color: inherit; - padding-inline: var(--c-spacing-sm); + padding-inline: var(--c-spacing-md); padding-block: var(--c-spacing-sm); border-radius: var(--c-radius-md); position: relative; } + .nav-item--prefixed { + padding-inline: var(--c-spacing-sm); + grid-template-columns: calc(24rem / 16) 1fr auto; + } + :host([active]) .nav-item { &:before { content: ''; diff --git a/packages/craftcms-cp/src/components/nav-item/nav-item.ts b/packages/craftcms-cp/src/components/nav-item/nav-item.ts index ee6e37a3794..31d2df20e2e 100644 --- a/packages/craftcms-cp/src/components/nav-item/nav-item.ts +++ b/packages/craftcms-cp/src/components/nav-item/nav-item.ts @@ -1,7 +1,8 @@ -import {html, LitElement, css, nothing} from 'lit'; +import {html, LitElement, nothing} from 'lit'; import {styleMap} from 'lit/directives/style-map.js'; import {property, state} from 'lit/decorators.js'; import styles from './nav-item.styles'; +import {classMap} from 'lit/directives/class-map.js'; /** * @@ -65,44 +66,7 @@ export default class CraftNavItem extends LitElement { href="${this.url}" aria-current="${this.active ? 'page' : false}" > - - - - ${this.icon - ? html` ` - : html` `} - - ${this.indicator ? html`` : nothing} - - - - + ${this.renderPrefix()} ${this.renderSuffix(hasSubnav)} + + + ${this.icon + ? html` ` + : nothing} + + ${this.indicator ? html`` : nothing} + + + `; + } + + renderSuffix(hasSubnav: boolean = false) { + return html` + + `; + } + + renderItem(hasSubnav: boolean, hasPrefix: boolean = false) { return html` - - - - ${this.icon - ? html` ` - : html` `} - - ${this.indicator ? html`` : nothing} - - + ${hasPrefix ? this.renderPrefix() : nothing} - - + ${this.renderSuffix(hasSubnav)} `; } override render() { const hasSubnav = !!this.querySelector('[slot="subnav"]'); + const hasPrefix = + !!this.icon || + !!this.querySelector('[slot="prefix"]') || + !!this.querySelector('[slot="icon"]'); + return html`
  • ${this.iconOnly ? this.renderIconItem(hasSubnav) - : this.renderItem(hasSubnav)} + : this.renderItem(hasSubnav, hasPrefix)} ${hasSubnav ? html`
    = { * * https://github.com/shoelace-style/webawesome/blob/da206a87873e3ab43ded7466a05005225aa50e69/packages/webawesome/src/components/icon/library.default.ts */ -export function getIconUrl(name: string, family: string = 'classic', variant: string = 'regular') { +export function getIconUrl( + name: string, + family: string = 'classic', + variant: string = 'regular' +) { let folder = 'solid'; let resolvedVariant = variant; let resolvedName = name.endsWith('.svg') ? name.split('.svg')[0]! : name; @@ -110,6 +114,6 @@ export function configureIcons() { resolver: (name: string, family = 'classic', variant = 'solid') => { return getIconUrl(name, family, variant); }, - mutator: (svg) => svg.setAttribute('fill', 'currentColor') + mutator: (svg) => svg.setAttribute('fill', 'currentColor'), }); } diff --git a/packages/craftcms-cp/tsconfig.json b/packages/craftcms-cp/tsconfig.json index 33557f386ca..dd79d2798d1 100644 --- a/packages/craftcms-cp/tsconfig.json +++ b/packages/craftcms-cp/tsconfig.json @@ -7,7 +7,7 @@ "rootDir": ".", "types": ["vite/client"], "paths": { - "@/*": ["./src/*"] + "@src/*": ["./src/*"] } }, "include": ["src"] diff --git a/resources/build/CalloutReadOnly.vue_vue_type_script_setup_true_lang.js b/resources/build/CalloutReadOnly.vue_vue_type_script_setup_true_lang.js index bbee8abaff8..0fd33e0be16 100644 --- a/resources/build/CalloutReadOnly.vue_vue_type_script_setup_true_lang.js +++ b/resources/build/CalloutReadOnly.vue_vue_type_script_setup_true_lang.js @@ -1 +1 @@ -import{I as w,d as f,p as m,c as C,o as i,J as S,w as D,a as e,e as o,b,t as r,F as y,r as x,f as g,u as p,D as v,z as I,K as M,g as z,L,x as _}from"./cp2.js";import{_ as h,a as N,t as V}from"./_plugin-vue_export-helper.js";import"./legacy.js";function $(){const n=w();return new Proxy({},{get(t,a){return n.props.craft?.[a]}})}const B={class:"system-info__icon"},E=["src"],j={class:"system-info__name"},A=f({__name:"SystemInfo",setup(n){const t=$(),a=m(()=>t.system),d=m(()=>t.site),s=m(()=>d.value.url?"a":"div");return(l,c)=>(i(),C(S(s.value),{class:"system-info",href:d.value.url||"",target:d.value.url?"_blank":"",tabindex:"0"},{default:D(()=>[e("div",B,[a.value.icon?(i(),o("img",{key:0,src:a.value.icon.url,alt:""},null,8,E)):b("",!0)]),e("div",j,r(a.value.name),1)]),_:1},8,["href","target"]))}}),k=h(A,[["__scopeId","data-v-0a723ce7"]]),F=["icon","url","active","indicator"],J={key:0,slot:"subnav"},O=["icon","active","url","indicator"],P=f({__name:"MainNav",setup(n){const{nav:t}=$();return(a,d)=>(i(),o("craft-nav-list",null,[(i(!0),o(y,null,x(p(t),s=>(i(),o("craft-nav-item",{key:s.url,icon:s.icon,url:s.url,active:s.sel,indicator:!!s.badgeCount},[g(r(s.label)+" ",1),s.subnav?(i(),o(y,{key:0},[s.subnav?(i(),o("craft-nav-list",J,[(i(!0),o(y,null,x(s.subnav,l=>(i(),o("craft-nav-item",{key:l.url,icon:l.icon,active:l.sel,url:l.url,indicator:l.badgeCount},r(l.label),9,O))),128))])):b("",!0)],64)):b("",!0)],8,F))),128))]))}}),K={class:"flex justify-center py-4 px-2 text-muted"},Q={lang:"en",class:"flex items-center gap-2"},R={class:"edition-logo"},T={"aria-hidden":"true"},W={class:"sr-only"},q=f({__name:"EditionInfo",setup(n){const{app:t}=$(),a=m(()=>`${t.edition.name} Edition`);return(d,s)=>(i(),o("div",K,[e("div",null,[e("span",Q,[s[0]||(s[0]=g(" Craft CMS ",-1)),e("span",R,[e("span",T,r(p(t).edition.name),1),e("span",W,r(a.value),1)]),g(" "+r(p(t).version),1)])])]))}}),G=h(q,[["__scopeId","data-v-f8b4ece7"]]),H={},U={class:"dev-mode"};function X(n,t){return i(),o("div",U,[...t[0]||(t[0]=[e("div",{class:"inline-flex py-1 px-2 bg-slate-900 text-slate-100 font-mono text-xs rounded-lg"}," Dev Mode is enabled ",-1)])])}const Y=h(H,[["render",X],["__scopeId","data-v-52fa7a33"]]),Z=["data-visibility","data-mode"],ee={class:"cp-sidebar__header"},te={key:0,class:"sidebar-header"},se={class:"cp-sidebar__body"},ie={class:"cp-sidebar__footer"},ae=f({__name:"CpSidebar",props:{mode:{default:"floating"},visibility:{default:"hidden"}},emits:["close","dock"],setup(n,{emit:t}){const a=t;return(d,s)=>(i(),o("nav",{class:"cp-sidebar","data-visibility":n.visibility,"data-mode":n.mode},[e("div",ee,[n.mode!=="docked"?(i(),o("div",te,[v(k),s[2]||(s[2]=e("div",{class:"ml-auto"},null,-1)),e("craft-button",{size:"small",icon:"",onClick:s[0]||(s[0]=l=>a("close")),type:"button"},[...s[1]||(s[1]=[e("craft-icon",{name:"x",style:{"font-size":"0.7em"}},null,-1)])])])):b("",!0)]),e("div",se,[v(P)]),e("div",ie,[v(G),v(Y)])],8,Z))}}),ne=h(ae,[["__scopeId","data-v-db2bd122"]]),oe=f({__name:"VarDump",props:{data:{}},setup(n){return(t,a)=>(i(),o("pre",null,r(JSON.stringify(n.data,null,2)),1))}}),le=h(oe,[["__scopeId","data-v-7ba274be"]]),ce={class:"cp"},re={class:"cp__header"},de={class:"flex gap-2 p-2"},ue=["name"],_e={class:"cp__sidebar"},ve={class:"cp__main"},be={class:"container"},pe={class:"flex justify-between items-center pt-4 pb-2"},fe={class:"text-xl"},me={class:"flex gap-2 items-center"},he={class:"container"},ye={class:"cp__footer"},ge={class:"container"},$e={key:0,class:"fixed bottom-2 right-2 max-w-[600px]"},xe=f({__name:"AppLayout",props:{title:{},debug:{}},setup(n){I(c=>({v9f03939a:l.value}));const t=M({sidebar:{mode:"floating",visibility:"hidden"}}),a=N("(min-width: 1024px)");z(a,c=>{c?(t.sidebar.mode="docked",t.sidebar.visibility="visible"):(t.sidebar.mode="floating",t.sidebar.visibility="hidden")},{immediate:!0});function d(){t.sidebar.visibility==="visible"?t.sidebar.visibility="hidden":t.sidebar.visibility="visible"}const s=m(()=>t.sidebar.visibility==="visible"?"x":"bars"),l=m(()=>t.sidebar.mode==="docked"?t.sidebar.visibility==="visible"?"var(--global-sidebar-width)":"0":"auto");return(c,u)=>(i(),o(y,null,[v(p(L),{title:n.title},null,8,["title"]),e("div",ce,[e("div",re,[e("div",de,[p(a)?b("",!0):(i(),o("craft-button",{key:0,icon:"",type:"button",appearance:"plain",onClick:d},[e("craft-icon",{name:s.value},null,8,ue)])),p(a)?(i(),C(k,{key:1})):b("",!0),u[1]||(u[1]=e("div",{class:"ml-auto"},null,-1)),u[2]||(u[2]=e("craft-button",{icon:"",appearance:"plain"},[e("craft-icon",{name:"search"})],-1))])]),e("div",_e,[v(ne,{mode:t.sidebar.mode,visibility:t.sidebar.visibility,onClose:u[0]||(u[0]=ke=>t.sidebar.visibility="hidden")},null,8,["mode","visibility"])]),e("div",ve,[_(c.$slots,"main",{},()=>[e("main",null,[_(c.$slots,"header",{},()=>[e("div",be,[e("div",pe,[_(c.$slots,"title",{},()=>[e("h1",fe,r(n.title),1)],!0),e("div",me,[_(c.$slots,"actions",{},void 0,!0)])])])],!0),e("div",he,[_(c.$slots,"default",{},void 0,!0)])])],!0)]),e("div",ye,[e("footer",null,[e("div",ge,[_(c.$slots,"footer",{},void 0,!0)])])])]),n.debug?(i(),o("div",$e,[u[3]||(u[3]=e("div",{class:"flex justify-end"},[e("craft-button",{icon:"",size:"small"},[e("craft-icon",{label:"t('Close Debug panel')",name:"x"})])],-1)),v(le,{data:n.debug,class:"max-h-[50vh] overflow-scroll"},null,8,["data"])])):b("",!0)],64))}}),Ie=h(xe,[["__scopeId","data-v-b3795632"]]),Ce={appearance:"fill",rounded:"start",class:"border border-b-border-subtle"},Me=f({__name:"CalloutReadOnly",setup(n){return(t,a)=>(i(),o("craft-callout",Ce,[a[0]||(a[0]=e("span",{slot:"icon",class:"c-icon"},[e("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 640 512",width:"1em",height:"1em"},[e("path",{d:"M630.8 469.1l-95.4-74.8c1.4-2.1 2.7-4.3 4-6.5l4.7-8.1c6.1-11 11.4-22.4 15.8-34.3c3.2-8.7 .5-18.4-6.4-24.6l-43.3-39.4c1.1-8.3 1.7-16.8 1.7-25.4s-.6-17.1-1.7-25.4l43.3-39.4c6.9-6.2 9.6-15.9 6.4-24.6h.1c-4.4-12-9.7-23.4-15.8-34.4l-4.7-8.1c-6.6-11-14-21.4-22.1-31.2c-5.9-7.1-15.7-9.6-24.5-6.8l-55.7 17.7c-13.4-10.3-28.2-18.9-44-25.4l-12.5-57.1c-2-9.1-9-16.3-18.2-17.8C348.8 1.2 334.5 0 320 0s-28.7 1.2-42.5 3.6c-9.2 1.5-16.2 8.7-18.2 17.8l-12.5 57.1c-15.8 6.5-30.6 15.1-44 25.4l-55.7-17.7c-2-.6-4.1-1-6.2-1.1L38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7zM320 176c44.2 0 80 35.8 80 80s-1.8 19.4-5.1 28.2l-120.1-94.1c12.9-8.8 28.4-14 45.2-14zM247.4 289.6L82.5 160.3c-.8 2.1-1.7 4.2-2.4 6.3c-3.2 8.7-.5 18.4 6.4 24.6l43.3 39.4c-1.1 8.3-1.7 16.8-1.7 25.4s.6 17.1 1.7 25.5l-43.3 39.4c-6.9 6.2-9.6 15.9-6.4 24.6c4.4 11.9 9.7 23.3 15.8 34.3l4.7 8.1c6.6 11 14 21.4 22.1 31.2c5.9 7.1 15.7 9.6 24.5 6.8l55.6-17.8c13.4 10.3 28.2 18.9 44 25.4l12.5 57.1c2 9.1 9 16.3 18.2 17.8c13.8 2.3 28 3.5 42.5 3.5s28.7-1.2 42.5-3.5c9.2-1.5 16.2-8.7 18.2-17.8l12.5-57.1c8-3.3 15.8-7.2 23.3-11.5l-111.6-87.5c-25.5-4.9-46.7-22-57.4-45z"})])],-1)),_(t.$slots,"default",{},()=>[g(r(p(V)("Changes to these settings arenʼt permitted in this environment.")),1)])]))}});export{Ie as A,Me as _,$ as u}; +import{R as M,d as p,p as f,c as k,o as s,y as V,w as L,a as e,e as a,b as d,t as c,F as $,r as D,f as g,u as v,B as h,D as E,S as W,q as A,g as F,U as O,A as b,Q as x}from"./cp2.js";import"./legacy.js";import{_ as m,b as j,i as C}from"./_plugin-vue_export-helper.js";function w(){const i=M();return new Proxy({},{get(n,o){return i.props.craft?.[o]}})}const P={class:"system-info__icon"},Q=["src"],R={class:"system-info__name"},q=p({__name:"SystemInfo",setup(i){const n=w(),o=f(()=>n.system),u=f(()=>n.site),t=f(()=>u.value.url?"a":"div");return(l,y)=>(s(),k(V(t.value),{class:"system-info",href:u.value.url||"",target:u.value.url?"_blank":"",tabindex:"0"},{default:L(()=>[e("div",P,[o.value.icon?(s(),a("img",{key:0,src:o.value.icon.url,alt:""},null,8,Q)):d("",!0)]),e("div",R,c(o.value.name),1)]),_:1},8,["href","target"]))}}),N=m(q,[["__scopeId","data-v-0a723ce7"]]),J=["icon","url","active","indicator"],T={key:0,slot:"subnav"},U=["active","url","indicator"],G=["name"],H={key:1,class:"nav-indicator",slot:"icon"},K=p({__name:"MainNav",setup(i){const{nav:n}=w();return(o,u)=>(s(),a("craft-nav-list",null,[(s(!0),a($,null,D(v(n),t=>(s(),a("craft-nav-item",{key:t.url,icon:t.icon,url:t.url,active:t.sel,indicator:!!t.badgeCount},[g(c(t.label)+" ",1),t.subnav?(s(),a($,{key:0},[t.subnav?(s(),a("craft-nav-list",T,[(s(!0),a($,null,D(t.subnav,l=>(s(),a("craft-nav-item",{key:l.url,active:l.sel,url:l.url,indicator:!!l.badgeCount},[l.icon?(s(),a("craft-icon",{key:0,name:l.icon,slot:"icon"},null,8,G)):(s(),a("span",H)),g(" "+c(l.label),1)],8,U))),128))])):d("",!0)],64)):d("",!0)],8,J))),128))]))}}),X=m(K,[["__scopeId","data-v-21e92630"]]),Y={class:"flex justify-center py-4 px-2 text-muted"},Z={lang:"en",class:"flex items-center gap-2"},ee={class:"edition-logo"},te={"aria-hidden":"true"},se={class:"sr-only"},ae=p({__name:"EditionInfo",setup(i){const{app:n}=w(),o=f(()=>`${n.edition.name} Edition`);return(u,t)=>(s(),a("div",Y,[e("div",null,[e("span",Z,[t[0]||(t[0]=g(" Craft CMS ",-1)),e("span",ee,[e("span",te,c(v(n).edition.name),1),e("span",se,c(o.value),1)]),g(" "+c(v(n).version),1)])])]))}}),ie=m(ae,[["__scopeId","data-v-f8b4ece7"]]),ne={},oe={class:"dev-mode"};function le(i,n){return s(),a("div",oe,[...n[0]||(n[0]=[e("div",{class:"inline-flex py-1 px-2 bg-slate-900 text-slate-100 font-mono text-xs rounded-lg"}," Dev Mode is enabled ",-1)])])}const ce=m(ne,[["render",le],["__scopeId","data-v-52fa7a33"]]),re=["data-visibility","data-mode"],de={class:"cp-sidebar__header"},ue={key:0,class:"sidebar-header"},_e={class:"cp-sidebar__body"},ve={class:"cp-sidebar__footer"},fe=p({__name:"CpSidebar",props:{mode:{default:"floating"},visibility:{default:"hidden"}},emits:["close","dock"],setup(i,{emit:n}){const o=n;return(u,t)=>(s(),a("nav",{class:"cp-sidebar","data-visibility":i.visibility,"data-mode":i.mode},[e("div",de,[i.mode!=="docked"?(s(),a("div",ue,[h(N),t[2]||(t[2]=e("div",{class:"ml-auto"},null,-1)),e("craft-button",{size:"small",icon:"",onClick:t[0]||(t[0]=l=>o("close")),type:"button"},[...t[1]||(t[1]=[e("craft-icon",{name:"x",style:{"font-size":"0.7em"}},null,-1)])])])):d("",!0)]),e("div",_e,[h(X)]),e("div",ve,[h(ie),h(ce)])],8,re))}}),be=m(fe,[["__scopeId","data-v-db2bd122"]]),pe=p({__name:"VarDump",props:{data:{}},setup(i){return(n,o)=>(s(),a("pre",null,c(JSON.stringify(i.data,null,2)),1))}}),me=m(pe,[["__scopeId","data-v-0fbfca53"]]),he={class:"cp"},ye={class:"cp__header"},ge={class:"flex gap-2 p-2"},$e=["name"],xe={key:0,variant:"danger",rounded:"none"},ke={key:1,variant:"success",rounded:"none"},Ce={class:"cp__sidebar"},we={class:"cp__main"},Se={class:"flex justify-between items-center pt-4 pb-2"},De={class:"text-xl"},Me={class:"flex gap-2 items-center"},Ne={class:"cp__footer"},ze={key:0,class:"fixed bottom-2 right-2 max-w-[600px]"},Be={key:0,class:"absolute top-2 right-2"},Ie=["label"],Ve={key:1},Le=["label"],Ee=p({__name:"AppLayout",props:{title:{},debug:{},fullWidth:{type:Boolean,default:!1}},setup(i){E(_=>({aaeb19ca:I.value}));const n=M(),o=f(()=>n.props.flash?.error),u=f(()=>n.props.flash?.success),t=W({sidebar:{mode:"floating",visibility:"hidden"}}),l=j("(min-width: 1024px)"),y=A(!1);F(l,_=>{_?(t.sidebar.mode="docked",t.sidebar.visibility="visible"):(t.sidebar.mode="floating",t.sidebar.visibility="hidden")},{immediate:!0});function z(){t.sidebar.visibility==="visible"?t.sidebar.visibility="hidden":t.sidebar.visibility="visible"}const B=f(()=>t.sidebar.visibility==="visible"?"x":"bars"),I=f(()=>t.sidebar.mode==="docked"?t.sidebar.visibility==="visible"?"var(--global-sidebar-width)":"0":"auto");return(_,r)=>(s(),a($,null,[h(v(O),{title:i.title},null,8,["title"]),e("div",he,[e("div",ye,[e("div",ge,[v(l)?d("",!0):(s(),a("craft-button",{key:0,icon:"",type:"button",appearance:"plain",onClick:z},[e("craft-icon",{name:B.value},null,8,$e)])),v(l)?(s(),k(N,{key:1})):d("",!0),r[3]||(r[3]=e("div",{class:"ml-auto"},null,-1)),r[4]||(r[4]=e("craft-button",{icon:"",appearance:"plain"},[e("craft-icon",{name:"search"})],-1))]),o.value?(s(),a("craft-callout",xe,c(o.value),1)):d("",!0),u.value?(s(),a("craft-callout",ke,c(u.value),1)):d("",!0)]),e("div",Ce,[h(be,{mode:t.sidebar.mode,visibility:t.sidebar.visibility,onClose:r[0]||(r[0]=S=>t.sidebar.visibility="hidden")},null,8,["mode","visibility"])]),e("div",we,[b(_.$slots,"main",{},()=>[e("main",null,[b(_.$slots,"header",{},()=>[e("div",{class:x({container:!0,"container--full":i.fullWidth})},[e("div",Se,[b(_.$slots,"title",{},()=>[e("h1",De,c(i.title),1)],!0),e("div",Me,[b(_.$slots,"actions",{},void 0,!0)])])],2)],!0),e("div",{class:x({container:!0,"container--full":i.fullWidth})},[b(_.$slots,"default",{},void 0,!0)],2)])],!0)]),e("div",Ne,[e("footer",null,[e("div",{class:x({container:!0,"container--full":i.fullWidth})},[b(_.$slots,"footer",{},void 0,!0)],2)])])]),i.debug?(s(),a("div",ze,[y.value?(s(),a("div",Be,[e("craft-button",{icon:"",size:"small",type:"button",onClick:r[1]||(r[1]=S=>y.value=!1)},[e("craft-icon",{label:v(C)("Close Debug panel"),name:"x"},null,8,Ie)])])):(s(),a("div",Ve,[e("craft-button",{type:"button",onClick:r[2]||(r[2]=S=>y.value=!0),icon:""},[e("craft-icon",{name:"code",label:v(C)("Show debug variables")},null,8,Le)])])),y.value?(s(),k(me,{key:2,data:i.debug,class:"max-h-[50vh] overflow-scroll"},null,8,["data"])):d("",!0)])):d("",!0)],64))}}),je=m(Ee,[["__scopeId","data-v-14817ce8"]]),We={appearance:"fill",rounded:"start",class:"border border-b-border-subtle"},Pe=p({__name:"CalloutReadOnly",setup(i){return(n,o)=>(s(),a("craft-callout",We,[o[0]||(o[0]=e("span",{slot:"icon",class:"c-icon"},[e("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 640 512",width:"1em",height:"1em"},[e("path",{d:"M630.8 469.1l-95.4-74.8c1.4-2.1 2.7-4.3 4-6.5l4.7-8.1c6.1-11 11.4-22.4 15.8-34.3c3.2-8.7 .5-18.4-6.4-24.6l-43.3-39.4c1.1-8.3 1.7-16.8 1.7-25.4s-.6-17.1-1.7-25.4l43.3-39.4c6.9-6.2 9.6-15.9 6.4-24.6h.1c-4.4-12-9.7-23.4-15.8-34.4l-4.7-8.1c-6.6-11-14-21.4-22.1-31.2c-5.9-7.1-15.7-9.6-24.5-6.8l-55.7 17.7c-13.4-10.3-28.2-18.9-44-25.4l-12.5-57.1c-2-9.1-9-16.3-18.2-17.8C348.8 1.2 334.5 0 320 0s-28.7 1.2-42.5 3.6c-9.2 1.5-16.2 8.7-18.2 17.8l-12.5 57.1c-15.8 6.5-30.6 15.1-44 25.4l-55.7-17.7c-2-.6-4.1-1-6.2-1.1L38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7zM320 176c44.2 0 80 35.8 80 80s-1.8 19.4-5.1 28.2l-120.1-94.1c12.9-8.8 28.4-14 45.2-14zM247.4 289.6L82.5 160.3c-.8 2.1-1.7 4.2-2.4 6.3c-3.2 8.7-.5 18.4 6.4 24.6l43.3 39.4c-1.1 8.3-1.7 16.8-1.7 25.4s.6 17.1 1.7 25.5l-43.3 39.4c-6.9 6.2-9.6 15.9-6.4 24.6c4.4 11.9 9.7 23.3 15.8 34.3l4.7 8.1c6.6 11 14 21.4 22.1 31.2c5.9 7.1 15.7 9.6 24.5 6.8l55.6-17.8c13.4 10.3 28.2 18.9 44 25.4l12.5 57.1c2 9.1 9 16.3 18.2 17.8c13.8 2.3 28 3.5 42.5 3.5s28.7-1.2 42.5-3.5c9.2-1.5 16.2-8.7 18.2-17.8l12.5-57.1c8-3.3 15.8-7.2 23.3-11.5l-111.6-87.5c-25.5-4.9-46.7-22-57.4-45z"})])],-1)),b(n.$slots,"default",{},()=>[g(c(v(C)("Changes to these settings arenʼt permitted in this environment.")),1)])]))}});export{je as A,Pe as _,w as u}; diff --git a/resources/build/Install.js b/resources/build/Install.js index 6b6aaf615fb..7db07b34090 100644 --- a/resources/build/Install.js +++ b/resources/build/Install.js @@ -1 +1 @@ -import{M as re,g as K,d as L,p as $,e as a,o as t,F as g,E as S,b as v,G as C,u as r,r as _,t as f,a as s,q as E,N as le,x,c as U,w,O as ne,P as oe,J as ue,I as ie,v as de,D as B,T as te,z as ce,m as me,K as ae,L as fe,f as Q,Q as se,H as ve}from"./cp2.js";import{a as O}from"./legacy.js";import{t as p,b as pe,_ as A}from"./_plugin-vue_export-helper.js";const be=""+new URL("assets/installer-bg.png",import.meta.url).href,W=e=>{const d=re(e);K(d,async o=>{o?.tagName.includes("CRAFT-")&&(await customElements.whenDefined(o.tagName.toLowerCase()),await o?.updateComplete),o?.focus()})},ge=["label","has-feedback-for"],he={key:0,class:"error-list",slot:"feedback"},ye=["label","has-feedback-for"],ke={key:0,class:"error-list",slot:"feedback"},we=["label","has-feedback-for"],$e={key:0,class:"error-list",slot:"feedback"},_e=L({__name:"AccountFields",props:{modelValue:{default:()=>({})},errors:{default:()=>({})},showUsername:{type:Boolean,default:!0}},emits:["success","click:back","update:modelValue"],setup(e,{emit:d}){const o=d,h=e,l=$({get(){return h.modelValue},set(b){o("update:modelValue",b)}});return W("username-input"),(b,c)=>(t(),a(g,null,[e.showUsername?S((t(),a("craft-input",{key:0,label:r(p)("Username"),id:"account-username",name:"username","onUpdate:modelValue":c[0]||(c[0]=u=>l.value.username=u),"has-feedback-for":e.errors?.username?"error":"",maxlength:"255",ref:"username-input"},[e.errors?.username?(t(),a("ul",he,[(t(!0),a(g,null,_(e.errors?.username,u=>(t(),a("li",null,f(u),1))),256))])):v("",!0)],8,ge)),[[C,l.value.username]]):v("",!0),S(s("craft-input",{label:r(p)("Email"),id:"account-email",name:"email","onUpdate:modelValue":c[1]||(c[1]=u=>l.value.email=u),maxlength:"255",autocomplete:"email","has-feedback-for":e.errors?.email?"error":"",type:"email"},[e.errors?.email?(t(),a("ul",ke,[(t(!0),a(g,null,_(e.errors?.email,u=>(t(),a("li",null,f(u),1))),256))])):v("",!0)],8,ye),[[C,l.value.email]]),S(s("craft-input-password",{label:r(p)("Password"),id:"account-password",name:"password","onUpdate:modelValue":c[2]||(c[2]=u=>l.value.password=u),"has-feedback-for":e.errors?.password?"error":"",autocomplete:"new-password"},[e.errors?.password?(t(),a("ul",$e,[(t(!0),a(g,null,_(e.errors?.password,u=>(t(),a("li",null,f(u),1))),256))])):v("",!0)],8,we),[[C,l.value.password]])],64))}}),xe=["label"],Ve=["label"],Se=["label",".modelValue"],Ce={slot:"input"},Ue=["selected","value"],Le=L({__name:"SiteFields",props:{modelValue:{default:()=>({})},localeOptions:{default:()=>[]},errors:{default:()=>({})}},emits:["update:modelValue"],setup(e,{emit:d}){const o=d,h=e,l=$({get(){return h.modelValue},set(c){o("update:modelValue",c)}});function b(c){const u=c.target;o("update:modelValue",{...l.value,language:u?.modelValue})}return W("site-name"),(c,u)=>(t(),a(g,null,[S(s("craft-input",{name:"name",label:r(p)("System Name"),id:"site-name","onUpdate:modelValue":u[0]||(u[0]=i=>l.value.name=i),maxlength:"255",ref:"site-name"},null,8,xe),[[C,l.value.name]]),S(s("craft-input",{name:"baseUrl",label:r(p)("Base URL"),"onUpdate:modelValue":u[1]||(u[1]=i=>l.value.baseUrl=i)},null,8,Ve),[[C,l.value.baseUrl]]),s("craft-select",{label:r(p)("Language"),id:"site-language",name:"language",".modelValue":l.value.language,onModelValueChanged:b},[s("select",Ce,[(t(!0),a(g,null,_(e.localeOptions,i=>(t(),a("option",{key:i.id,selected:i.id===l.value.language,value:i.id},f(i.id)+" ("+f(i.name)+") ",9,Ue))),128))])],40,Se)],64))}}),Te=()=>{const e=E({start:{},license:{id:"license",label:"License"},account:{id:"account",label:"Account",action:"/admin/actions/install/validate-account",heading:p("Create your account")},db:{id:"db",label:"Database",action:"/admin/actions/install/validate-db",heading:p("Connect to your database")},site:{id:"site",label:"Site",action:"/admin/actions/install/validate-site",heading:p("Set up your site"),submitLabel:p("Finish up")},installing:{label:"Installing",id:"installing"}}),d=$(()=>Object.keys(e.value).reduce((b,c)=>{const u=e.value[c];return(u.hidden??!1)||(b[c]=u),b},{})),o=$(()=>Object.keys(d.value).reduce((b,c)=>{const u=d.value[c];return(u.label??!1)&&(b[c]=u),b},{})),h=pe(d),l=$(()=>h.stepNames.value[h.index.value]);return{...h,possibleSteps:e,currentId:l,dotSteps:o}},Ie=""+new URL("assets/account.png",import.meta.url).href,Be=""+new URL("assets/site.png",import.meta.url).href,De=""+new URL("assets/db.png",import.meta.url).href,Me=L({__name:"Callout",props:{variant:{default:"info"},appearance:{default:"default"}},setup(e){return(d,o)=>(t(),a("div",{class:le({callout:!0,"callout--danger":e.variant==="danger","callout--info":e.variant==="info","callout--success":e.variant==="success","callout--warning":e.variant==="warning","callout--emphasis":e.appearance==="emphasis","callout--default":e.appearance==="default","callout--outline":e.appearance==="outline","callout--plain":e.appearance==="plain"})},[x(d.$slots,"default",{},void 0,!0)],2))}}),Ne=A(Me,[["__scopeId","data-v-b7a3b948"]]),Pe={class:"grid grid-cols-5 gap-2"},Ee={class:"col-span-2"},Fe=["label",".modelValue"],Oe={slot:"input"},Ae=["value"],Re={key:0,class:"error-list",slot:"feedback"},He={class:"col-span-2"},je=["label"],qe={key:0,class:"error-list",slot:"feedback"},ze=["label"],Qe={key:0,class:"error-list",slot:"feedback"},Ge={key:0,class:"error-list col-span-5"},Je={class:"grid grid-cols-2 gap-2"},Ke=["label"],We={key:0,class:"error-list",slot:"feedback"},Xe=["label"],Ye={key:0,class:"error-list",slot:"feedback"},Ze={key:0,class:"error-list col-span-2"},et={class:"grid grid-cols-4 gap-2"},tt={class:"col-span-2"},at=["label"],st={key:0,class:"error-list",slot:"feedback"},lt=["label"],rt={key:0,class:"error-list",slot:"feedback"},nt=L({__name:"DbFields",props:{modelValue:{default:()=>({})},errors:{default:()=>({})}},emits:["update:modelValue"],setup(e,{emit:d}){const o=d,h=e,l=$({get(){return h.modelValue},set(u){o("update:modelValue",u)}});function b(u){const i=u.target;i&&(l.value[i.name]=i.modelValue)}const c=[{value:"mysql",label:"MySQL"},{value:"pgsql",label:"PostgreSQL"}];return W("db-driver"),(u,i)=>(t(),a(g,null,[e.errors&&e.errors["*"]?(t(),U(Ne,{key:0,variant:"danger"},{default:w(()=>[s("ul",null,[(t(!0),a(g,null,_(e.errors["*"],n=>(t(),a("li",null,f(n),1))),256))])]),_:1})):v("",!0),s("div",Pe,[s("div",Ee,[s("craft-select",{label:r(p)("Driver"),name:"driver",id:"db-driver",".modelValue":l.value.driver,onModelValueChanged:b,ref:"db-driver"},[s("select",Oe,[(t(),a(g,null,_(c,n=>s("option",{key:n.value,value:n.value},f(n.label),9,Ae)),64))]),e.errors?.driver?(t(),a("ul",Re,[(t(!0),a(g,null,_(e.errors?.driver,n=>(t(),a("li",null,f(n),1))),256))])):v("",!0)],40,Fe)]),s("div",He,[S(s("craft-input",{label:r(p)("Host"),name:"host",id:"db-host","onUpdate:modelValue":i[0]||(i[0]=n=>l.value.host=n),placeholder:"127.0.0.1"},[e.errors?.host?(t(),a("ul",qe,[(t(!0),a(g,null,_(e.errors?.host,n=>(t(),a("li",null,f(n),1))),256))])):v("",!0)],8,je),[[C,l.value.host]])]),s("div",null,[S(s("craft-input",{label:r(p)("Port"),name:"port",id:"db-port","onUpdate:modelValue":i[1]||(i[1]=n=>l.value.port=n),size:"7"},[e.errors?.port?(t(),a("ul",Qe,[(t(!0),a(g,null,_(e.errors?.port,n=>(t(),a("li",null,f(n),1))),256))])):v("",!0)],8,ze),[[C,l.value.port]])]),e.errors?.server?(t(),a("ul",Ge,[(t(!0),a(g,null,_(e.errors.server,n=>(t(),a("li",null,f(n),1))),256))])):v("",!0)]),s("div",Je,[s("div",null,[S(s("craft-input",{label:r(p)("Username"),name:"username",id:"db-username","onUpdate:modelValue":i[2]||(i[2]=n=>l.value.username=n),placeholder:"root"},[e.errors?.username?(t(),a("ul",We,[(t(!0),a(g,null,_(e.errors?.username,n=>(t(),a("li",null,f(n),1))),256))])):v("",!0)],8,Ke),[[C,l.value.username]])]),s("div",null,[S(s("craft-input-password",{label:r(p)("Password"),name:"password",id:"db-password","onUpdate:modelValue":i[3]||(i[3]=n=>l.value.password=n)},[e.errors?.password?(t(),a("ul",Ye,[(t(!0),a(g,null,_(e.errors?.password,n=>(t(),a("li",null,f(n),1))),256))])):v("",!0)],8,Xe),[[C,l.value.password]])]),e.errors?.user?(t(),a("ul",Ze,[(t(!0),a(g,null,_(e.errors.user,n=>(t(),a("li",null,f(n),1))),256))])):v("",!0)]),s("div",et,[s("div",tt,[S(s("craft-input",{label:r(p)("Database Name"),name:"name",id:"db-database","onUpdate:modelValue":i[4]||(i[4]=n=>l.value.database=n)},[e.errors?.database?(t(),a("ul",st,[(t(!0),a(g,null,_(e.errors?.database,n=>(t(),a("li",null,f(n),1))),256))])):v("",!0)],8,at),[[C,l.value.database]])]),s("div",null,[S(s("craft-input",{label:r(p)("Prefix"),name:"prefix",id:"db-prefix","onUpdate:modelValue":i[5]||(i[5]=n=>l.value.prefix=n),maxlength:"5",size:"7"},[e.errors?.prefix?(t(),a("ul",rt,[(t(!0),a(g,null,_(e.errors?.prefix,n=>(t(),a("li",null,f(n),1))),256))])):v("",!0)],8,lt),[[C,l.value.prefix]])])])],64))}});function ot(e,d={}){const{immediate:o=!0,refetch:h=!0,params:l,enabled:b=!0,debounce:c=0,transform:u=z=>z,onSuccess:i,onError:n,initialData:H=null,method:D="get",...j}=d,T=E(H),y=E("idle"),P=E(null),q=$(()=>y.value==="loading"),F=$(()=>y.value==="success"),m=$(()=>y.value==="error"),k=$(()=>r(e)),M=$(()=>r(b)),X=$(()=>r(l)),Y=$(()=>r(D.toLowerCase()));let I=null,N=null;const R=async(z={})=>{if(!(!k.value||!M.value)){I&&I.cancel("Request superseded by new request"),I=O.CancelToken.source(),y.value="loading",P.value=null;try{const V=await O({method:Y.value,url:k.value,params:X.value,cancelToken:I.token,data:Y.value==="get"?void 0:z,...j}),ee=u(V.data);y.value="success",T.value=ee,i?.(ee,V)}catch(V){O.isCancel(V)?y.value="aborted":O.isAxiosError(V)?(console.log("Axios error:",V.response?.data),y.value="error",P.value=V.response?.data||V.message||"Unknown error",n?.(V)):(console.log("Unkown error:",V.message),y.value="error",P.value=V.message||"Unknown error")}}},Z=()=>{N&&clearTimeout(N),c>0?N=setTimeout(()=>{R()},c):R()};return h?K([k,X,M],()=>{M.value?Z():(N&&clearTimeout(N),I&&I.cancel("Request disabled"))},{immediate:o,deep:!0}):o&&M.value&&Z(),{data:T,error:P,state:y,isLoading:q,isSuccess:F,isError:m,execute:R,refetch:()=>R(),abort:()=>{N&&clearTimeout(N),I&&I.cancel("Request cancelled by user")}}}function ut(e,d={}){return ot(e,{immediate:!1,...d,method:"post"})}const it={class:"pane__header"},dt={class:"pane__body"},ct={class:"pane__footer"},mt={class:"actions"},ft=L({__name:"Pane",props:{as:{default:"div"},variant:{},hideHeader:{type:Boolean,default:!1},hideFooter:{type:Boolean,default:!1}},setup(e){const d=ne(),o=$(()=>d.header),h=$(()=>d.footer||d.actions||d["primary-action"]||d["secondary-action"]);return(l,b)=>(t(),U(ue(e.as),oe({class:"pane"},l.$attrs),{default:w(()=>[o.value?x(l.$slots,"header",{key:0},()=>[s("div",it,[x(l.$slots,"title",{},void 0,!0),x(l.$slots,"header-actions",{},void 0,!0)])],!0):v("",!0),x(l.$slots,"body",{},()=>[s("div",dt,[x(l.$slots,"default",{},void 0,!0)])],!0),h.value?x(l.$slots,"footer",{key:1},()=>[s("div",ct,[x(l.$slots,"actions",{},()=>[s("div",mt,[x(l.$slots,"primary-action",{},void 0,!0),x(l.$slots,"secondary-action",{},void 0,!0)])],!0)])],!0):v("",!0)]),_:3},16))}}),J=A(ft,[["__scopeId","data-v-9d0bfd10"]]),vt={key:0,class:"content"},pt={key:1,class:"content"},bt={key:2,class:"content"},gt={class:"text-left border border-red-500 rounded p-4 text-red-800 bg-red-50 font-mono text-xs"},ht=L({__name:"InstallingScreen",props:{data:{}},setup(e){const{props:d}=ie(),o=e,{execute:h,error:l,isSuccess:b,isLoading:c,isError:u}=ut("/admin/actions/install/install",{onSuccess:i=>{setTimeout(()=>{window.location.href=d.postCpLoginRedirect},1e3)}});return de(async()=>{await h(o.data)}),(i,n)=>(t(),U(J,{class:"max-w-[80ch] mx-auto"},{default:w(()=>[r(c)?(t(),a("div",vt,[s("h2",null,f(r(p)("Installing Craft CMS…")),1),n[0]||(n[0]=s("craft-spinner",null,null,-1))])):r(b)?(t(),a("div",pt,[s("h2",null,f(r(p)("Craft is installed! 🎉")),1),n[1]||(n[1]=s("div",{class:"flex justify-center items-center"},[s("craft-icon",{name:"circle-check",variant:"regular",style:{color:"var(--c-color-success-bg-emphasis)","font-size":"2.5rem"}})],-1))])):v("",!0),r(u)?(t(),a("div",bt,[s("h2",null,f(r(p)("Install failed 😞")),1),s("div",gt,f(r(l).message),1)])):v("",!0)]),_:1}))}}),yt=A(ht,[["__scopeId","data-v-d53a06fb"]]),kt={key:0,class:"modal"},wt={key:0,class:"overlay"},$t=L({__name:"Modal",props:{isActive:{type:Boolean,default:!1},overlay:{type:Boolean,default:!0}},setup(e){const d=e,o=E(!1),h=d.overlay?200:0;return K(()=>d.isActive,l=>{l&&setTimeout(()=>{o.value=l},h)}),(l,b)=>(t(),a(g,null,[B(te,{name:"body"},{default:w(()=>[o.value?(t(),a("div",kt,[x(l.$slots,"default",{},void 0,!0)])):v("",!0)]),_:3}),e.overlay?(t(),U(te,{key:0,name:"fade",onAfterEnter:b[0]||(b[0]=c=>o.value=!0)},{default:w(()=>[e.isActive?(t(),a("div",wt)):v("",!0)]),_:1})):v("",!0)],64))}}),_t=A($t,[["__scopeId","data-v-11ae6053"]]),xt={class:"grid md:grid-cols-2 gap-4 items-center"},Vt={class:"aspect-[352/455] w-1/2 md:w-3/4 mx-auto"},St=["src"],Ct={class:"mb-4"},Ut={class:"grid gap-3 pr-6"},G=L({__name:"StepScreen",props:{illustrationSrc:{default:""},heading:{default:""}},setup(e){return(d,o)=>(t(),a("div",xt,[s("div",Vt,[s("img",{loading:"lazy",src:e.illustrationSrc,alt:"",width:"368"},null,8,St)]),s("div",null,[s("h2",Ct,f(e.heading),1),s("div",Ut,[x(d.$slots,"default")])])]))}}),Lt={class:"install"},Tt=["innerHTML"],It={class:"flex justify-center w-full"},Bt={key:2,class:"max-w-[80ch]"},Dt={class:"grid grid-cols-3 items-center gap-2"},Mt={class:"flex gap-2 justify-center"},Nt={class:"sr-only"},Pt=["loading"],Et=L({__name:"Install",props:{dbConfig:{},localeOptions:{},licenseHtml:{},defaultSystemName:{},defaultSiteUrl:{},defaultSiteLanguage:{},showDbScreen:{type:Boolean}},setup(e){ce(F=>({ea40fc04:d.value}));const d=$(()=>`url(${be})`),o=e,{dotSteps:h,current:l,currentId:b,goTo:c,goToNext:u,goToPrevious:i,isCurrent:n,possibleSteps:H}=Te(),D=E("idle");me(()=>{H.value.db.hidden=o.showDbScreen});function j(){c("license")}const T=ae({account:{},db:{},site:{}}),y=ae({account:{username:"",email:"",password:""},db:{driver:o.dbConfig.driver,host:o.dbConfig.host,port:o.dbConfig.port,database:o.dbConfig.database,username:o.dbConfig.username,password:o.dbConfig.password,prefix:o.dbConfig.prefix},site:{name:o.defaultSystemName,baseUrl:o.defaultSiteUrl,language:o.defaultSiteLanguage}}),P=$(()=>!n("start"));async function q(F){if(D.value==="loading")return;T[b.value]=null;const m=F.currentTarget;try{D.value="loading",await O.post(m.action,y[b.value]),u(),D.value="idle"}catch(k){T[b.value]=k.response.data.errors,D.value="error"}}return(F,m)=>(t(),a(g,null,[B(r(fe),{title:r(p)("Install Craft CMS")},null,8,["title"]),s("div",Lt,[r(n)("start")?(t(),a("craft-button",{key:0,type:"button",onClick:j,variant:"primary",class:"begin-button"},[Q(f(r(p)("Install Craft CMS"))+" ",1),m[6]||(m[6]=s("craft-icon",{name:"arrow-right",slot:"suffix"},null,-1))])):v("",!0),B(_t,{"is-active":P.value,overlay:!1},{default:w(()=>[r(n)("license")?(t(),U(J,{key:0,class:"max-w-[80ch] mx-auto"},{actions:w(()=>[s("div",It,[s("craft-button",{type:"button",variant:"primary",onClick:m[0]||(m[0]=k=>r(c)("account"))},f(r(p)("Got it")),1)])]),default:w(()=>[B(r(se),{data:"licenseHtml"},{fallback:w(()=>[...m[7]||(m[7]=[s("div",{class:"flex justify-center"},[s("craft-spinner")],-1)])]),default:w(()=>[s("div",{class:"license",innerHTML:e.licenseHtml},null,8,Tt)]),_:1})]),_:1})):r(n)("installing")?(t(),U(yt,{key:1,data:y,onSuccess:m[1]||(m[1]=k=>r(u)())},null,8,["data"])):(t(),a("div",Bt,[B(J,{as:"form",action:r(l).action,onSubmit:ve(q,["prevent"])},{actions:w(()=>[s("div",Dt,[s("craft-button",{type:"button",onClick:m[5]||(m[5]=(...k)=>r(i)&&r(i)(...k)),appearance:"plain",class:"justify-self-start"},[Q(f(r(p)("Back"))+" ",1),m[9]||(m[9]=s("craft-icon",{name:"arrow-left",slot:"prefix"},null,-1))]),s("ul",Mt,[(t(!0),a(g,null,_(r(h),(k,M)=>(t(),a("li",{key:M},[s("span",{class:le(["dot",{"dot--active":r(n)(M)}])},[s("span",Nt,f(k.label),1)],2)]))),128))]),s("craft-button",{class:"justify-self-end",type:"submit",variant:"primary",loading:D.value==="loading"},[Q(f(r(l).submitLabel??r(p)("Next"))+" ",1),m[10]||(m[10]=s("craft-icon",{name:"arrow-right",slot:"suffix"},null,-1))],8,Pt)])]),default:w(()=>[r(n)("account")?(t(),U(G,{key:0,"illustration-src":r(Ie),heading:r(l).heading,class:"screen"},{default:w(()=>[r(n)("account")?(t(),U(_e,{key:0,modelValue:y.account,"onUpdate:modelValue":m[2]||(m[2]=k=>y.account=k),errors:T.account},null,8,["modelValue","errors"])):v("",!0)]),_:1},8,["illustration-src","heading"])):v("",!0),r(n)("db")?(t(),U(G,{key:1,"illustration-src":r(De),heading:r(l).heading,class:"screen"},{default:w(()=>[B(nt,{modelValue:y.db,"onUpdate:modelValue":m[3]||(m[3]=k=>y.db=k),errors:T.db},null,8,["modelValue","errors"])]),_:1},8,["illustration-src","heading"])):v("",!0),r(n)("site")?(t(),U(G,{key:2,"illustration-src":r(Be),heading:r(l).heading,class:"screen"},{default:w(()=>[B(r(se),{data:"localeOptions"},{fallback:w(()=>[...m[8]||(m[8]=[s("craft-spinner",null,null,-1)])]),default:w(()=>[B(Le,{modelValue:y.site,"onUpdate:modelValue":m[4]||(m[4]=k=>y.site=k),localeOptions:e.localeOptions,errors:T.site},null,8,["modelValue","localeOptions","errors"])]),_:1})]),_:1},8,["illustration-src","heading"])):v("",!0)]),_:1},8,["action"])]))]),_:1},8,["is-active"])])],64))}}),jt=A(Et,[["__scopeId","data-v-6b52fc11"]]);export{jt as default}; +import{P as se,g as te,d as D,p as x,e as a,o as t,F as g,I as $,b,J as U,u as s,r as y,t as m,a as l,q as O,Q as ae,A as le,c as L,w as V,R as re,v as ne,D as oe,m as ue,S as Z,B as N,U as ie,f as H,N as ee,K as de}from"./cp2.js";import{a as R}from"./legacy.js";import{i as f,a as ce,_ as G}from"./_plugin-vue_export-helper.js";import{P as Q,M as me}from"./Modal.js";const fe=""+new URL("assets/installer-bg.png",import.meta.url).href,J=e=>{const p=se(e);te(p,async i=>{i?.tagName.includes("CRAFT-")&&(await customElements.whenDefined(i.tagName.toLowerCase()),await i?.updateComplete),i?.focus()})},pe=["label","has-feedback-for"],be={key:0,class:"error-list",slot:"feedback"},ve=["label","has-feedback-for"],ge={key:0,class:"error-list",slot:"feedback"},he=["label","has-feedback-for"],ke={key:0,class:"error-list",slot:"feedback"},ye=D({__name:"AccountFields",props:{modelValue:{default:()=>({})},errors:{default:()=>({})},showUsername:{type:Boolean,default:!0}},emits:["success","click:back","update:modelValue"],setup(e,{emit:p}){const i=p,w=e,n=x({get(){return w.modelValue},set(v){i("update:modelValue",v)}});return J("username-input"),(v,d)=>(t(),a(g,null,[e.showUsername?$((t(),a("craft-input",{key:0,label:s(f)("Username"),id:"account-username",name:"username","onUpdate:modelValue":d[0]||(d[0]=o=>n.value.username=o),"has-feedback-for":e.errors?.username?"error":"",maxlength:"255",ref:"username-input"},[e.errors?.username?(t(),a("ul",be,[(t(!0),a(g,null,y(e.errors?.username,o=>(t(),a("li",null,m(o),1))),256))])):b("",!0)],8,pe)),[[U,n.value.username]]):b("",!0),$(l("craft-input",{label:s(f)("Email"),id:"account-email",name:"email","onUpdate:modelValue":d[1]||(d[1]=o=>n.value.email=o),maxlength:"255",autocomplete:"email","has-feedback-for":e.errors?.email?"error":"",type:"email"},[e.errors?.email?(t(),a("ul",ge,[(t(!0),a(g,null,y(e.errors?.email,o=>(t(),a("li",null,m(o),1))),256))])):b("",!0)],8,ve),[[U,n.value.email]]),$(l("craft-input-password",{label:s(f)("Password"),id:"account-password",name:"password","onUpdate:modelValue":d[2]||(d[2]=o=>n.value.password=o),"has-feedback-for":e.errors?.password?"error":"",autocomplete:"new-password"},[e.errors?.password?(t(),a("ul",ke,[(t(!0),a(g,null,y(e.errors?.password,o=>(t(),a("li",null,m(o),1))),256))])):b("",!0)],8,he),[[U,n.value.password]])],64))}}),we=["label"],xe=["label"],Ve=["label",".modelValue"],Se={slot:"input"},$e=["selected","value"],Ue=D({__name:"SiteFields",props:{modelValue:{default:()=>({})},localeOptions:{default:()=>[]},errors:{default:()=>({})}},emits:["update:modelValue"],setup(e,{emit:p}){const i=p,w=e,n=x({get(){return w.modelValue},set(d){i("update:modelValue",d)}});function v(d){const o=d.target;i("update:modelValue",{...n.value,language:o?.modelValue})}return J("site-name"),(d,o)=>(t(),a(g,null,[$(l("craft-input",{name:"name",label:s(f)("System Name"),id:"site-name","onUpdate:modelValue":o[0]||(o[0]=u=>n.value.name=u),maxlength:"255",ref:"site-name"},null,8,we),[[U,n.value.name]]),$(l("craft-input",{name:"baseUrl",label:s(f)("Base URL"),"onUpdate:modelValue":o[1]||(o[1]=u=>n.value.baseUrl=u)},null,8,xe),[[U,n.value.baseUrl]]),l("craft-select",{label:s(f)("Language"),id:"site-language",name:"language",".modelValue":n.value.language,onModelValueChanged:v},[l("select",Se,[(t(!0),a(g,null,y(e.localeOptions,u=>(t(),a("option",{key:u.id,selected:u.id===n.value.language,value:u.id},m(u.id)+" ("+m(u.name)+") ",9,$e))),128))])],40,Ve)],64))}}),Ce=()=>{const e=O({start:{},license:{id:"license",label:"License"},account:{id:"account",label:"Account",action:"/admin/actions/install/validate-account",heading:f("Create your account")},db:{id:"db",label:"Database",action:"/admin/actions/install/validate-db",heading:f("Connect to your database")},site:{id:"site",label:"Site",action:"/admin/actions/install/validate-site",heading:f("Set up your site"),submitLabel:f("Finish up")},installing:{label:"Installing",id:"installing"}}),p=x(()=>Object.keys(e.value).reduce((v,d)=>{const o=e.value[d];return(o.hidden??!1)||(v[d]=o),v},{})),i=x(()=>Object.keys(p.value).reduce((v,d)=>{const o=p.value[d];return(o.label??!1)&&(v[d]=o),v},{})),w=ce(p),n=x(()=>w.stepNames.value[w.index.value]);return{...w,possibleSteps:e,currentId:n,dotSteps:i}},_e=""+new URL("assets/account.png",import.meta.url).href,Le=""+new URL("assets/site.png",import.meta.url).href,Te=""+new URL("assets/db.png",import.meta.url).href,Ie=D({__name:"Callout",props:{variant:{default:"info"},appearance:{default:"default"}},setup(e){return(p,i)=>(t(),a("div",{class:ae({callout:!0,"callout--danger":e.variant==="danger","callout--info":e.variant==="info","callout--success":e.variant==="success","callout--warning":e.variant==="warning","callout--emphasis":e.appearance==="emphasis","callout--default":e.appearance==="default","callout--outline":e.appearance==="outline","callout--plain":e.appearance==="plain"})},[le(p.$slots,"default",{},void 0,!0)],2))}}),Me=G(Ie,[["__scopeId","data-v-b7a3b948"]]),Ne={class:"grid grid-cols-5 gap-2"},De={class:"col-span-2"},Pe=["label",".modelValue"],Be={slot:"input"},Re=["value"],Oe={key:0,class:"error-list",slot:"feedback"},Ee={class:"col-span-2"},Fe=["label"],je={key:0,class:"error-list",slot:"feedback"},qe=["label"],Ae={key:0,class:"error-list",slot:"feedback"},He={key:0,class:"error-list col-span-5"},ze={class:"grid grid-cols-2 gap-2"},Qe=["label"],Ge={key:0,class:"error-list",slot:"feedback"},Je=["label"],Ke={key:0,class:"error-list",slot:"feedback"},We={key:0,class:"error-list col-span-2"},Xe={class:"grid grid-cols-4 gap-2"},Ye={class:"col-span-2"},Ze=["label"],et={key:0,class:"error-list",slot:"feedback"},tt=["label"],at={key:0,class:"error-list",slot:"feedback"},lt=D({__name:"DbFields",props:{modelValue:{default:()=>({})},errors:{default:()=>({})}},emits:["update:modelValue"],setup(e,{emit:p}){const i=p,w=e,n=x({get(){return w.modelValue},set(o){i("update:modelValue",o)}});function v(o){const u=o.target;u&&(n.value[u.name]=u.modelValue)}const d=[{value:"mysql",label:"MySQL"},{value:"pgsql",label:"PostgreSQL"}];return J("db-driver"),(o,u)=>(t(),a(g,null,[e.errors&&e.errors["*"]?(t(),L(Me,{key:0,variant:"danger"},{default:V(()=>[l("ul",null,[(t(!0),a(g,null,y(e.errors["*"],r=>(t(),a("li",null,m(r),1))),256))])]),_:1})):b("",!0),l("div",Ne,[l("div",De,[l("craft-select",{label:s(f)("Driver"),name:"driver",id:"db-driver",".modelValue":n.value.driver,onModelValueChanged:v,ref:"db-driver"},[l("select",Be,[(t(),a(g,null,y(d,r=>l("option",{key:r.value,value:r.value},m(r.label),9,Re)),64))]),e.errors?.driver?(t(),a("ul",Oe,[(t(!0),a(g,null,y(e.errors?.driver,r=>(t(),a("li",null,m(r),1))),256))])):b("",!0)],40,Pe)]),l("div",Ee,[$(l("craft-input",{label:s(f)("Host"),name:"host",id:"db-host","onUpdate:modelValue":u[0]||(u[0]=r=>n.value.host=r),placeholder:"127.0.0.1"},[e.errors?.host?(t(),a("ul",je,[(t(!0),a(g,null,y(e.errors?.host,r=>(t(),a("li",null,m(r),1))),256))])):b("",!0)],8,Fe),[[U,n.value.host]])]),l("div",null,[$(l("craft-input",{label:s(f)("Port"),name:"port",id:"db-port","onUpdate:modelValue":u[1]||(u[1]=r=>n.value.port=r),size:"7"},[e.errors?.port?(t(),a("ul",Ae,[(t(!0),a(g,null,y(e.errors?.port,r=>(t(),a("li",null,m(r),1))),256))])):b("",!0)],8,qe),[[U,n.value.port]])]),e.errors?.server?(t(),a("ul",He,[(t(!0),a(g,null,y(e.errors.server,r=>(t(),a("li",null,m(r),1))),256))])):b("",!0)]),l("div",ze,[l("div",null,[$(l("craft-input",{label:s(f)("Username"),name:"username",id:"db-username","onUpdate:modelValue":u[2]||(u[2]=r=>n.value.username=r),placeholder:"root"},[e.errors?.username?(t(),a("ul",Ge,[(t(!0),a(g,null,y(e.errors?.username,r=>(t(),a("li",null,m(r),1))),256))])):b("",!0)],8,Qe),[[U,n.value.username]])]),l("div",null,[$(l("craft-input-password",{label:s(f)("Password"),name:"password",id:"db-password","onUpdate:modelValue":u[3]||(u[3]=r=>n.value.password=r)},[e.errors?.password?(t(),a("ul",Ke,[(t(!0),a(g,null,y(e.errors?.password,r=>(t(),a("li",null,m(r),1))),256))])):b("",!0)],8,Je),[[U,n.value.password]])]),e.errors?.user?(t(),a("ul",We,[(t(!0),a(g,null,y(e.errors.user,r=>(t(),a("li",null,m(r),1))),256))])):b("",!0)]),l("div",Xe,[l("div",Ye,[$(l("craft-input",{label:s(f)("Database Name"),name:"name",id:"db-database","onUpdate:modelValue":u[4]||(u[4]=r=>n.value.database=r)},[e.errors?.database?(t(),a("ul",et,[(t(!0),a(g,null,y(e.errors?.database,r=>(t(),a("li",null,m(r),1))),256))])):b("",!0)],8,Ze),[[U,n.value.database]])]),l("div",null,[$(l("craft-input",{label:s(f)("Prefix"),name:"prefix",id:"db-prefix","onUpdate:modelValue":u[5]||(u[5]=r=>n.value.prefix=r),maxlength:"5",size:"7"},[e.errors?.prefix?(t(),a("ul",at,[(t(!0),a(g,null,y(e.errors?.prefix,r=>(t(),a("li",null,m(r),1))),256))])):b("",!0)],8,tt),[[U,n.value.prefix]])])])],64))}});function st(e,p={}){const{immediate:i=!0,refetch:w=!0,params:n,enabled:v=!0,debounce:d=0,transform:o=A=>A,onSuccess:u,onError:r,initialData:F=null,method:T="get",...j}=p,C=O(F),h=O("idle"),P=O(null),q=x(()=>h.value==="loading"),B=x(()=>h.value==="success"),c=x(()=>h.value==="error"),k=x(()=>s(e)),I=x(()=>s(v)),K=x(()=>s(n)),W=x(()=>s(T.toLowerCase()));let _=null,M=null;const E=async(A={})=>{if(!(!k.value||!I.value)){_&&_.cancel("Request superseded by new request"),_=R.CancelToken.source(),h.value="loading",P.value=null;try{const S=await R({method:W.value,url:k.value,params:K.value,cancelToken:_.token,data:W.value==="get"?void 0:A,...j}),Y=o(S.data);h.value="success",C.value=Y,u?.(Y,S)}catch(S){R.isCancel(S)?h.value="aborted":R.isAxiosError(S)?(console.log("Axios error:",S.response?.data),h.value="error",P.value=S.response?.data||S.message||"Unknown error",r?.(S)):(console.log("Unkown error:",S.message),h.value="error",P.value=S.message||"Unknown error")}}},X=()=>{M&&clearTimeout(M),d>0?M=setTimeout(()=>{E()},d):E()};return w?te([k,K,I],()=>{I.value?X():(M&&clearTimeout(M),_&&_.cancel("Request disabled"))},{immediate:i,deep:!0}):i&&I.value&&X(),{data:C,error:P,state:h,isLoading:q,isSuccess:B,isError:c,execute:E,refetch:()=>E(),abort:()=>{M&&clearTimeout(M),_&&_.cancel("Request cancelled by user")}}}function rt(e,p={}){return st(e,{immediate:!1,...p,method:"post"})}const nt={key:0,class:"content"},ot={key:1,class:"content"},ut={key:2,class:"content"},it={class:"text-left border border-red-500 rounded p-4 text-red-800 bg-red-50 font-mono text-xs"},dt=D({__name:"InstallingScreen",props:{data:{}},setup(e){const{props:p}=re(),i=e,{execute:w,error:n,isSuccess:v,isLoading:d,isError:o}=rt("/admin/actions/install/install",{onSuccess:u=>{setTimeout(()=>{window.location.href=p.postCpLoginRedirect},1e3)}});return ne(async()=>{await w(i.data)}),(u,r)=>(t(),L(Q,{class:"max-w-[80ch] mx-auto"},{default:V(()=>[s(d)?(t(),a("div",nt,[l("h2",null,m(s(f)("Installing Craft CMS…")),1),r[0]||(r[0]=l("craft-spinner",null,null,-1))])):s(v)?(t(),a("div",ot,[l("h2",null,m(s(f)("Craft is installed! 🎉")),1),r[1]||(r[1]=l("div",{class:"flex justify-center items-center"},[l("craft-icon",{name:"circle-check",variant:"regular",style:{color:"var(--c-color-success-bg-emphasis)","font-size":"2.5rem"}})],-1))])):b("",!0),s(o)?(t(),a("div",ut,[l("h2",null,m(s(f)("Install failed 😞")),1),l("div",it,m(s(n).message),1)])):b("",!0)]),_:1}))}}),ct=G(dt,[["__scopeId","data-v-d53a06fb"]]),mt={class:"grid md:grid-cols-2 gap-4 items-center"},ft={class:"aspect-[352/455] w-1/2 md:w-3/4 mx-auto"},pt=["src"],bt={class:"mb-4"},vt={class:"grid gap-3 pr-6"},z=D({__name:"StepScreen",props:{illustrationSrc:{default:""},heading:{default:""}},setup(e){return(p,i)=>(t(),a("div",mt,[l("div",ft,[l("img",{loading:"lazy",src:e.illustrationSrc,alt:"",width:"368"},null,8,pt)]),l("div",null,[l("h2",bt,m(e.heading),1),l("div",vt,[le(p.$slots,"default")])])]))}}),gt={class:"install"},ht=["innerHTML"],kt={class:"flex justify-center w-full"},yt={key:2,class:"max-w-[80ch]"},wt={class:"grid grid-cols-3 items-center gap-2"},xt={class:"flex gap-2 justify-center"},Vt={class:"sr-only"},St=["loading"],$t=D({__name:"Install",props:{dbConfig:{},localeOptions:{},licenseHtml:{},defaultSystemName:{},defaultSiteUrl:{},defaultSiteLanguage:{},showDbScreen:{type:Boolean}},setup(e){oe(B=>({ea40fc04:p.value}));const p=x(()=>`url(${fe})`),i=e,{dotSteps:w,current:n,currentId:v,goTo:d,goToNext:o,goToPrevious:u,isCurrent:r,possibleSteps:F}=Ce(),T=O("idle");ue(()=>{F.value.db.hidden=i.showDbScreen});function j(){d("license")}const C=Z({account:{},db:{},site:{}}),h=Z({account:{username:"",email:"",password:""},db:{driver:i.dbConfig.driver,host:i.dbConfig.host,port:i.dbConfig.port,database:i.dbConfig.database,username:i.dbConfig.username,password:i.dbConfig.password,prefix:i.dbConfig.prefix},site:{name:i.defaultSystemName,baseUrl:i.defaultSiteUrl,language:i.defaultSiteLanguage}}),P=x(()=>!r("start"));async function q(B){if(T.value==="loading")return;C[v.value]=null;const c=B.currentTarget;try{T.value="loading",await R.post(c.action,h[v.value]),o(),T.value="idle"}catch(k){C[v.value]=k.response.data.errors,T.value="error"}}return(B,c)=>(t(),a(g,null,[N(s(ie),{title:s(f)("Install Craft CMS")},null,8,["title"]),l("div",gt,[s(r)("start")?(t(),a("craft-button",{key:0,type:"button",onClick:j,variant:"primary",class:"begin-button"},[H(m(s(f)("Install Craft CMS"))+" ",1),c[6]||(c[6]=l("craft-icon",{name:"arrow-right",slot:"suffix"},null,-1))])):b("",!0),N(me,{"is-active":P.value,overlay:!1},{default:V(()=>[s(r)("license")?(t(),L(Q,{key:0,class:"max-w-[80ch] mx-auto"},{actions:V(()=>[l("div",kt,[l("craft-button",{type:"button",variant:"primary",onClick:c[0]||(c[0]=k=>s(d)("account"))},m(s(f)("Got it")),1)])]),default:V(()=>[N(s(ee),{data:"licenseHtml"},{fallback:V(()=>[...c[7]||(c[7]=[l("div",{class:"flex justify-center"},[l("craft-spinner")],-1)])]),default:V(()=>[l("div",{class:"license",innerHTML:e.licenseHtml},null,8,ht)]),_:1})]),_:1})):s(r)("installing")?(t(),L(ct,{key:1,data:h,onSuccess:c[1]||(c[1]=k=>s(o)())},null,8,["data"])):(t(),a("div",yt,[N(Q,{as:"form",action:s(n).action,onSubmit:de(q,["prevent"])},{actions:V(()=>[l("div",wt,[l("craft-button",{type:"button",onClick:c[5]||(c[5]=(...k)=>s(u)&&s(u)(...k)),appearance:"plain",class:"justify-self-start"},[H(m(s(f)("Back"))+" ",1),c[9]||(c[9]=l("craft-icon",{name:"arrow-left",slot:"prefix"},null,-1))]),l("ul",xt,[(t(!0),a(g,null,y(s(w),(k,I)=>(t(),a("li",{key:I},[l("span",{class:ae(["dot",{"dot--active":s(r)(I)}])},[l("span",Vt,m(k.label),1)],2)]))),128))]),l("craft-button",{class:"justify-self-end",type:"submit",variant:"primary",loading:T.value==="loading"},[H(m(s(n).submitLabel??s(f)("Next"))+" ",1),c[10]||(c[10]=l("craft-icon",{name:"arrow-right",slot:"suffix"},null,-1))],8,St)])]),default:V(()=>[s(r)("account")?(t(),L(z,{key:0,"illustration-src":s(_e),heading:s(n).heading,class:"screen"},{default:V(()=>[s(r)("account")?(t(),L(ye,{key:0,modelValue:h.account,"onUpdate:modelValue":c[2]||(c[2]=k=>h.account=k),errors:C.account},null,8,["modelValue","errors"])):b("",!0)]),_:1},8,["illustration-src","heading"])):b("",!0),s(r)("db")?(t(),L(z,{key:1,"illustration-src":s(Te),heading:s(n).heading,class:"screen"},{default:V(()=>[N(lt,{modelValue:h.db,"onUpdate:modelValue":c[3]||(c[3]=k=>h.db=k),errors:C.db},null,8,["modelValue","errors"])]),_:1},8,["illustration-src","heading"])):b("",!0),s(r)("site")?(t(),L(z,{key:2,"illustration-src":s(Le),heading:s(n).heading,class:"screen"},{default:V(()=>[N(s(ee),{data:"localeOptions"},{fallback:V(()=>[...c[8]||(c[8]=[l("craft-spinner",null,null,-1)])]),default:V(()=>[N(Ue,{modelValue:h.site,"onUpdate:modelValue":c[4]||(c[4]=k=>h.site=k),localeOptions:e.localeOptions,errors:C.site},null,8,["modelValue","localeOptions","errors"])]),_:1})]),_:1},8,["illustration-src","heading"])):b("",!0)]),_:1},8,["action"])]))]),_:1},8,["is-active"])])],64))}}),Mt=G($t,[["__scopeId","data-v-6b52fc11"]]);export{Mt as default}; diff --git a/resources/build/Modal.js b/resources/build/Modal.js new file mode 100644 index 00000000000..b0f3eaa9d2a --- /dev/null +++ b/resources/build/Modal.js @@ -0,0 +1 @@ +import{d as m,x as y,p as u,c as p,o as a,y as h,z as $,w as c,A as s,b as n,a as r,e as i,F as k,B,T as v}from"./cp2.js";import{_ as f,o as C}from"./_plugin-vue_export-helper.js";const b={class:"pane__header"},w={class:"pane__body"},A={class:"pane__footer"},F={class:"actions"},P=m({__name:"Pane",props:{as:{default:"div"},variant:{},hideHeader:{type:Boolean,default:!1},hideFooter:{type:Boolean,default:!1}},setup(o){const t=y(),d=u(()=>t.header||t.title||t["header-actions"]),l=u(()=>t.footer||t.actions||t["primary-action"]||t["secondary-action"]);return(e,_)=>(a(),p(h(o.as),$({class:"pane"},e.$attrs),{default:c(()=>[d.value?s(e.$slots,"header",{key:0},()=>[r("div",b,[s(e.$slots,"title",{},void 0,!0),s(e.$slots,"header-actions",{},void 0,!0)])],!0):n("",!0),s(e.$slots,"body",{},()=>[r("div",w,[s(e.$slots,"default",{},void 0,!0)])],!0),l.value?s(e.$slots,"footer",{key:1},()=>[r("div",A,[s(e.$slots,"actions",{},()=>[r("div",F,[s(e.$slots,"secondary-action",{},void 0,!0),s(e.$slots,"primary-action",{},void 0,!0)])],!0)])],!0):n("",!0)]),_:3},16))}}),E=f(P,[["__scopeId","data-v-c067a127"]]),M={key:0,class:"modal"},N={class:"content"},S=m({__name:"Modal",props:{isActive:{type:Boolean,default:!1},overlay:{type:Boolean,default:!0}},emits:["close"],setup(o,{emit:t}){const d=t;return C("Escape",l=>{d("close")}),(l,e)=>(a(),i(k,null,[B(v,{name:"body"},{default:c(()=>[o.isActive?(a(),i("div",M,[r("div",N,[s(l.$slots,"default",{},void 0,!0)])])):n("",!0)]),_:3}),o.overlay?(a(),p(v,{key:0,name:"fade"},{default:c(()=>[o.isActive?(a(),i("div",{key:0,class:"overlay",onClick:e[0]||(e[0]=_=>d("close"))})):n("",!0)]),_:1})):n("",!0)],64))}}),H=f(S,[["__scopeId","data-v-3d482c9f"]]);export{H as M,E as P}; diff --git a/resources/build/SettingsGeneralPage.js b/resources/build/SettingsGeneralPage.js index 5f294555229..f1bade66498 100644 --- a/resources/build/SettingsGeneralPage.js +++ b/resources/build/SettingsGeneralPage.js @@ -1 +1 @@ -import{c as $,o as s,w as _,x as I,T as F,d as D,y as E,z as M,p as S,A as U,e as r,B,b as y,a as e,t as f,C as A,D as V,E as z,u as a,F as v,r as k,f as w,G as C,H as N}from"./cp2.js";import{_ as L,u as P,t as m}from"./_plugin-vue_export-helper.js";import{u as R,_ as Z,A as q}from"./CalloutReadOnly.vue_vue_type_script_setup_true_lang.js";import"./legacy.js";const G=t=>{if(!t||!t.query&&!t.mergeQuery)return"";const l=t.query??t.mergeQuery,p=t.mergeQuery!==void 0,c=n=>n===!0?"1":n===!1?"0":n.toString(),b=new URLSearchParams(p&&typeof window<"u"?window.location.search:"");for(const n in l){if(l[n]===void 0||l[n]===null){b.delete(n);continue}if(Array.isArray(l[n]))b.has(`${n}[]`)&&b.delete(`${n}[]`),l[n].forEach(h=>{b.append(`${n}[]`,h.toString())});else if(typeof l[n]=="object"){b.forEach((h,i)=>{i.startsWith(`${n}[`)&&b.delete(i)});for(const h in l[n])typeof l[n][h]>"u"||["string","number","boolean"].includes(typeof l[n][h])&&b.set(`${n}[${h}]`,c(l[n][h]))}else b.set(n,c(l[n]))}const u=b.toString();return u.length>0?`?${u}`:""},g=t=>({url:g.url(t),method:"post"});g.definition={methods:["post"],url:"/admin/settings/general"};g.url=t=>g.definition.url+G(t);g.post=t=>({url:g.url(t),method:"post"});const H={Solo:0,Team:1,Pro:2,Enterprise:3},Q={};function K(t,l){return s(),$(F,{name:"fade"},{default:_(()=>[I(t.$slots,"default",{},void 0,!0)]),_:3})}const j=L(Q,[["render",K],["__scopeId","data-v-623c0700"]]),W=["label","name","button-label","help-text","disabled","multiple",".uploadResponse","has-feedback-for"],J={key:0,class:"error-list",slot:"feedback"},X=D({__name:"FileUpload",props:E({label:{},name:{},buttonLabel:{default:"Select file"},helpText:{},thumbnailSize:{default:120},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},error:{default:null}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t){M(h=>({c33cc0a6:c.value}));const l=U(t,"modelValue"),p=t,c=S(()=>isNaN(Number(p.thumbnailSize))?p.thumbnailSize:`calc(${p.thumbnailSize}rem / 16)`);function b(h){l.value=p.multiple?h.detail?.newFiles:h.detail?.newFiles?.[0]||null}function u(h){l.value=null}const n=S(()=>l.value?(Array.isArray(l.value)?l.value:[l.value]).map(i=>({name:i.name,status:"SUCCESS",downloadUrl:i.url,errorMessage:"",id:i.name})):[]);return(h,i)=>(s(),r("craft-input-file",{label:t.label,name:t.name,"button-label":t.buttonLabel,"help-text":t.helpText,disabled:t.disabled,multiple:t.multiple,".uploadResponse":n.value,onFileRemoved:u,onFileListChanged:b,"has-feedback-for":t.error?"error":"",style:B({"--thumbnail-size":c.value})},[t.error?(s(),r("ul",J,[e("li",null,f(t.error),1)])):y("",!0)],44,W))}}),O=L(X,[["__scopeId","data-v-e8396b7f"]]),Y={key:0,class:"flex gap-1 items-center text-sm"},ee={key:1,class:"tw:flex tw:gap-1 tw:items-center tw:text-sm"},te={key:0},ae=["loading"],le={slot:"content"},oe={class:"bg-white border border-border-subtle rounded-sm shadow-sm"},ne={class:"grid gap-3 p-5"},se={key:0,variant:"danger",icon:"exclamation-triangle"},re={slot:"title",class:"tw:font-bold"},ie=["label","has-feedback-for","disabled"],de=[".choiceValue",".hint"],ue={slot:"after"},ce={variant:"info",appearance:"plain",class:"p-0",icon:"lightbulb"},me={href:"https://craftcms.com/docs/5.x/configure.html#control-panel-settings"},fe={slot:"feedback"},he={key:0,class:"error-list"},be=["label",".modelValue","has-feedback-for","disabled"],ye={class:"tw:flex tw:items-center tw:gap-1"},pe={class:"tw:flex tw:items-center tw:gap-1"},ve=[".choiceValue"],ge={class:"tw:flex tw:items-center tw:gap-1"},we=["variant"],ke={class:"tw:font-mono"},xe=["innerHTML"],Ve={slot:"feedback"},_e={key:0,class:"error-list"},Se=["label","has-feedback-for","disabled"],Le=["innerHTML"],Te={key:0,class:"error-list",slot:"feedback"},ze=["label",".modelValue","has-feedback-for","disabled"],Ce=[".choiceValue"],Oe={key:0,class:"error-list",slot:"feedback"},$e={class:"p-4 grid gap-3"},De=D({__name:"SettingsGeneralPage",props:{readOnly:{type:Boolean},system:{},nameSuggestions:{},timezoneOptions:{},systemStatusOptions:{},siteIcon:{},siteLogo:{},saveUrl:{},flash:{},errors:{}},setup(t){const l=t,p=S(()=>l.flash),c=S(()=>l.errors),{app:b}=R(),u=A({name:l.system.name,live:l.system.live,retryDuration:l.system.retryDuration,timeZone:l.system.timeZone,siteIcon:l.siteIcon,siteLogo:l.siteLogo});function n(i){const o=i.target;o&&(u[o.name]=o.modelValue)}P("keydown",i=>{(i.metaKey||i.ctrlKey)&&i.key==="s"&&(i.preventDefault(),h())});function h(){u.transform(i=>(i.siteIcon!==null&&!(i.siteIcon instanceof File)&&delete i.siteIcon,i.siteLogo!==null&&!(i.siteLogo instanceof File)&&delete i.siteLogo,i)).clearErrors().submit(g())}return(i,o)=>(s(),r("form",{onSubmit:N(h,["prevent"])},[V(q,{title:a(m)("General Settings")},{actions:_(()=>[V(j,null,{default:_(()=>[a(u).recentlySuccessful&&p.value?.success?(s(),r("div",Y,[o[4]||(o[4]=e("craft-icon",{name:"circle-check",style:{color:"var(--c-color-success-bg-emphasis)"}},null,-1)),w(" "+f(p.value.success),1)])):y("",!0),a(u).hasErrors?(s(),r("div",ee,[o[5]||(o[5]=e("craft-icon",{name:"exclamation-triangle",style:{color:"var(--c-color-danger-bg-emphasis)"}},null,-1)),w(" "+f(a(m)("Could not save settings")),1)])):y("",!0)]),_:1}),t.readOnly?y("",!0):(s(),r("craft-button-group",te,[e("craft-button",{type:"submit",variant:"primary",loading:a(u).processing},f(a(m)("Save")),9,ae),e("craft-action-menu",null,[o[7]||(o[7]=e("craft-button",{slot:"invoker",variant:"primary",type:"button",icon:""},[e("craft-icon",{name:"chevron-down"})],-1)),e("div",le,[e("craft-action-item",{onClick:h},[w(f(a(m)("Save and continue editing"))+" ",1),o[6]||(o[6]=e("craft-shortcut",{slot:"suffix",class:"ml-2"},"S",-1))])])])]))]),default:_(()=>[e("div",oe,[t.readOnly?(s(),$(Z,{key:0})):y("",!0),e("div",ne,[a(u).hasErrors?(s(),r("craft-callout",se,[e("div",re,f(a(m)("Could not save settings")),1),e("ul",null,[(s(!0),r(v,null,k(c.value,(d,T)=>(s(),r("li",null,f(d),1))),256))])])):y("",!0),z(e("craft-combobox",{label:a(m)("System Name"),id:"name",name:"name","onUpdate:modelValue":o[0]||(o[0]=d=>a(u).name=d),"has-feedback-for":c.value?.name?"error":"",disabled:t.readOnly,"require-option-match":!1,"show-all-on-empty":""},[(s(!0),r(v,null,k(t.nameSuggestions,(d,T)=>(s(),r(v,{key:T},[(s(!0),r(v,null,k(d.data,x=>(s(),r("craft-option",{key:x.name,".choiceValue":x.name,".hint":x.hint},f(x.name),41,de))),128))],64))),128)),e("div",ue,[e("craft-callout",ce,[w(f(a(m)("This can begin with an environment variable."))+" ",1),e("a",me,f(a(m)("Learn more")),1)])]),e("div",fe,[c.value?.name?(s(),r("ul",he,[e("li",null,f(c.value.name),1)])):y("",!0)])],8,ie),[[C,a(u).name]]),e("craft-combobox",{label:a(m)("System Status"),id:"live",name:"live",".modelValue":t.system.live?"1":"0","has-feedback-for":c.value?.live?"error":"",onModelValueChanged:n,disabled:t.readOnly,"show-all-on-empty":""},[e("craft-option",{".choiceValue":"1"},[e("div",ye,[o[8]||(o[8]=e("craft-indicator",{variant:"success"},null,-1)),e("span",null,f(a(m)("Online")),1)])],32),e("craft-option",{".choiceValue":"0"},[e("div",pe,[o[9]||(o[9]=e("craft-indicator",{variant:"danger"},null,-1)),e("span",null,f(a(m)("Offline")),1)])],32),(s(!0),r(v,null,k(t.systemStatusOptions,d=>(s(),r(v,{key:d.label},[d.optgroup?(s(),r(v,{key:0},[],64)):(s(),r("craft-option",{key:1,".choiceValue":d.value},[e("div",ge,[e("craft-indicator",{variant:d.value?"success":"error"},null,8,we),e("span",ke,f(d.label),1)])],40,ve))],64))),128)),e("craft-callout",{slot:"after",variant:"info",appearance:"plain",class:"p-0",icon:"lightbulb",innerHTML:a(m)("This can be set to an environment variable with a boolean value ({examples})",{examples:"yes/no/true/false/on/off/0/1"})},null,8,xe),e("div",Ve,[c.value.live?(s(),r("ul",_e,[e("li",null,f(c.value.live),1)])):y("",!0)])],40,be),z(e("craft-input",{label:a(m)("Retry Duration"),id:"retry-duration",name:"retryDuration","onUpdate:modelValue":o[1]||(o[1]=d=>a(u).retryDuration=d),"has-feedback-for":c.value?.retryDuration?"error":"",inputmode:"numeric",size:"4",disabled:t.readOnly},[e("div",{slot:"help-text",innerHTML:a(m)("The number of seconds that the Retry-After HTTP header should be set to for 503 responses when the system is offline.")},null,8,Le),c.value?.retryDuration?(s(),r("ul",Te,[e("li",null,f(c.value.retryDuration),1)])):y("",!0)],8,Se),[[C,a(u).retryDuration]]),e("craft-combobox",{label:a(m)("Time Zone"),id:"time-zone",name:"timeZone",".modelValue":a(u).timeZone,onModelValueChanged:n,"has-feedback-for":c.value?.timeZone?"error":"",disabled:t.readOnly,"show-all-on-empty":""},[(s(!0),r(v,null,k(t.timezoneOptions,d=>(s(),r("craft-option",{key:d.value,".choiceValue":d.value},f(d.label)+f(d.data?.hint?` — ${d.data.hint}`:""),41,Ce))),128)),o[10]||(o[10]=e("craft-callout",{slot:"after",variant:"info",appearance:"plain",class:"p-0",icon:"lightbulb"},[w(" This can be set to an environment variable with a value of a "),e("a",{href:"https://www.php.net/manual/en/timezones.php",rel:"noopener",target:"_blank"},"supported time zone"),w(". ")],-1)),c.value?.timeZone?(s(),r("ul",Oe,[e("li",null,f(c.value.timeZone),1)])):y("",!0)],40,ze)]),a(b).edition.value>=a(H).Pro?(s(),r(v,{key:1},[o[11]||(o[11]=e("hr",null,null,-1)),e("div",$e,[V(O,{label:a(m)("Site Icon"),name:"siteIcon",modelValue:a(u).siteIcon,"onUpdate:modelValue":o[2]||(o[2]=d=>a(u).siteIcon=d),"help-text":a(m)("Square SVG file recommended. The logo will be displayed at {size} by {size}.",{size:"32px"}),"thumbnail-size":32,disabled:t.readOnly,error:a(u).errors.siteIcon},null,8,["label","modelValue","help-text","disabled","error"]),V(O,{label:a(m)("Login Page Logo"),modelValue:a(u).siteLogo,"onUpdate:modelValue":o[3]||(o[3]=d=>a(u).siteLogo=d),name:"siteLogo","help-text":a(m)("SVG file recommended. The logo will be displayed at {size} wide.",{size:"288px"}),disabled:t.readOnly,"thumbnail-size":288,error:a(u).errors.siteLogo},null,8,["label","modelValue","help-text","disabled","error"])])],64)):y("",!0)])]),_:1},8,["title"])],32))}}),Ue=L(De,[["__scopeId","data-v-56327788"]]);export{Ue as default}; +import{c as O,o,w as _,A as F,T as M,d as D,C as U,D as B,p as x,E,e as n,G as N,b as f,a as e,t as u,H as Z,B as V,I as z,u as t,F as h,r as g,f as y,J as C,K as $}from"./cp2.js";import{_ as L,u as P,i as d}from"./_plugin-vue_export-helper.js";import{u as R,_ as A,A as G}from"./CalloutReadOnly.vue_vue_type_script_setup_true_lang.js";import{q as H}from"./index.js";import"./legacy.js";const v=a=>({url:v.url(a),method:"post"});v.definition={methods:["post"],url:"/admin/settings/general"};v.url=a=>v.definition.url+H(a);v.post=a=>({url:v.url(a),method:"post"});const q={Solo:0,Team:1,Pro:2,Enterprise:3},K={};function J(a,c){return o(),O(M,{name:"fade"},{default:_(()=>[F(a.$slots,"default",{},void 0,!0)]),_:3})}const j=L(K,[["render",J],["__scopeId","data-v-623c0700"]]),Q=["label","name","button-label","help-text","disabled","multiple",".uploadResponse","has-feedback-for"],W={key:0,class:"error-list",slot:"feedback"},X=D({__name:"FileUpload",props:U({label:{},name:{},buttonLabel:{default:"Select file"},helpText:{},thumbnailSize:{default:120},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},error:{default:null}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){B(b=>({c33cc0a6:m.value}));const c=E(a,"modelValue"),p=a,m=x(()=>isNaN(Number(p.thumbnailSize))?p.thumbnailSize:`calc(${p.thumbnailSize}rem / 16)`);function S(b){c.value=p.multiple?b.detail?.newFiles:b.detail?.newFiles?.[0]||null}function r(b){c.value=null}const k=x(()=>c.value?(Array.isArray(c.value)?c.value:[c.value]).map(i=>({name:i.name,status:"SUCCESS",downloadUrl:i.url,errorMessage:"",id:i.name})):[]);return(b,i)=>(o(),n("craft-input-file",{label:a.label,name:a.name,"button-label":a.buttonLabel,"help-text":a.helpText,disabled:a.disabled,multiple:a.multiple,".uploadResponse":k.value,onFileRemoved:r,onFileListChanged:S,"has-feedback-for":a.error?"error":"",style:N({"--thumbnail-size":m.value})},[a.error?(o(),n("ul",W,[e("li",null,u(a.error),1)])):f("",!0)],44,Q))}}),I=L(X,[["__scopeId","data-v-e8396b7f"]]),Y={key:0,class:"flex gap-1 items-center text-sm"},ee={key:1,class:"tw:flex tw:gap-1 tw:items-center tw:text-sm"},te={key:0},ae=["loading"],le={slot:"content"},oe={class:"bg-white border border-border-subtle rounded-sm shadow-sm"},ne={class:"grid gap-3 p-5"},se={key:0,variant:"danger",icon:"exclamation-triangle"},ie={slot:"title",class:"tw:font-bold"},re=["label","has-feedback-for","disabled"],de=[".choiceValue",".hint"],ue={slot:"after"},ce={variant:"info",appearance:"plain",class:"p-0",icon:"lightbulb"},me={href:"https://craftcms.com/docs/5.x/configure.html#control-panel-settings"},fe={slot:"feedback"},be={key:0,class:"error-list"},he=["label",".modelValue","has-feedback-for","disabled"],pe={class:"tw:flex tw:items-center tw:gap-1"},ve={class:"tw:flex tw:items-center tw:gap-1"},ye=[".choiceValue"],ge={class:"tw:flex tw:items-center tw:gap-1"},ke=["variant"],we={class:"tw:font-mono"},Ve=["innerHTML"],_e={slot:"feedback"},xe={key:0,class:"error-list"},Se=["label","has-feedback-for","disabled"],Le=["innerHTML"],Te={key:0,class:"error-list",slot:"feedback"},ze=["label",".modelValue","has-feedback-for","disabled"],Ce=[".choiceValue"],Ie={key:0,class:"error-list",slot:"feedback"},Oe={class:"p-4 grid gap-3"},De=D({__name:"SettingsGeneralPage",props:{readOnly:{type:Boolean},system:{},nameSuggestions:{},timezoneOptions:{},systemStatusOptions:{},siteIcon:{},siteLogo:{},saveUrl:{},flash:{},errors:{}},setup(a){const c=a,p=x(()=>c.flash),m=x(()=>c.errors),{app:S}=R(),r=Z({name:c.system.name,live:c.system.live,retryDuration:c.system.retryDuration,timeZone:c.system.timeZone,siteIcon:c.siteIcon,siteLogo:c.siteLogo});function k(i){const l=i.target;l&&(r[l.name]=l.modelValue)}P("keydown",i=>{(i.metaKey||i.ctrlKey)&&i.key==="s"&&(i.preventDefault(),b())});function b(){r.transform(i=>(i.siteIcon!==null&&!(i.siteIcon instanceof File)&&delete i.siteIcon,i.siteLogo!==null&&!(i.siteLogo instanceof File)&&delete i.siteLogo,i)).clearErrors().submit(v())}return(i,l)=>(o(),n("form",{onSubmit:$(b,["prevent"])},[V(G,{title:t(d)("General Settings")},{actions:_(()=>[V(j,null,{default:_(()=>[t(r).recentlySuccessful&&p.value?.success?(o(),n("div",Y,[l[4]||(l[4]=e("craft-icon",{name:"circle-check",style:{color:"var(--c-color-success-bg-emphasis)"}},null,-1)),y(" "+u(p.value.success),1)])):f("",!0),t(r).hasErrors?(o(),n("div",ee,[l[5]||(l[5]=e("craft-icon",{name:"exclamation-triangle",style:{color:"var(--c-color-danger-bg-emphasis)"}},null,-1)),y(" "+u(t(d)("Could not save settings")),1)])):f("",!0)]),_:1}),a.readOnly?f("",!0):(o(),n("craft-button-group",te,[e("craft-button",{type:"submit",variant:"primary",loading:t(r).processing},u(t(d)("Save")),9,ae),e("craft-action-menu",null,[l[7]||(l[7]=e("craft-button",{slot:"invoker",variant:"primary",type:"button",icon:""},[e("craft-icon",{name:"chevron-down"})],-1)),e("div",le,[e("craft-action-item",{onClick:b},[y(u(t(d)("Save and continue editing"))+" ",1),l[6]||(l[6]=e("craft-shortcut",{slot:"suffix",class:"ml-2"},"S",-1))])])])]))]),default:_(()=>[e("div",oe,[a.readOnly?(o(),O(A,{key:0})):f("",!0),e("div",ne,[t(r).hasErrors?(o(),n("craft-callout",se,[e("div",ie,u(t(d)("Could not save settings")),1),e("ul",null,[(o(!0),n(h,null,g(m.value,(s,T)=>(o(),n("li",null,u(s),1))),256))])])):f("",!0),z(e("craft-combobox",{label:t(d)("System Name"),id:"name",name:"name","onUpdate:modelValue":l[0]||(l[0]=s=>t(r).name=s),"has-feedback-for":m.value?.name?"error":"",disabled:a.readOnly,"require-option-match":!1,"show-all-on-empty":""},[(o(!0),n(h,null,g(a.nameSuggestions,(s,T)=>(o(),n(h,{key:T},[(o(!0),n(h,null,g(s.data,w=>(o(),n("craft-option",{key:w.name,".choiceValue":w.name,".hint":w.hint},u(w.name),41,de))),128))],64))),128)),e("div",ue,[e("craft-callout",ce,[y(u(t(d)("This can begin with an environment variable."))+" ",1),e("a",me,u(t(d)("Learn more")),1)])]),e("div",fe,[m.value?.name?(o(),n("ul",be,[e("li",null,u(m.value.name),1)])):f("",!0)])],8,re),[[C,t(r).name]]),e("craft-combobox",{label:t(d)("System Status"),id:"live",name:"live",".modelValue":a.system.live?"1":"0","has-feedback-for":m.value?.live?"error":"",onModelValueChanged:k,disabled:a.readOnly,"show-all-on-empty":""},[e("craft-option",{".choiceValue":"1"},[e("div",pe,[l[8]||(l[8]=e("craft-indicator",{variant:"success"},null,-1)),e("span",null,u(t(d)("Online")),1)])],32),e("craft-option",{".choiceValue":"0"},[e("div",ve,[l[9]||(l[9]=e("craft-indicator",{variant:"danger"},null,-1)),e("span",null,u(t(d)("Offline")),1)])],32),(o(!0),n(h,null,g(a.systemStatusOptions,s=>(o(),n(h,{key:s.label},[s.optgroup?(o(),n(h,{key:0},[],64)):(o(),n("craft-option",{key:1,".choiceValue":s.value},[e("div",ge,[e("craft-indicator",{variant:s.value?"success":"error"},null,8,ke),e("span",we,u(s.label),1)])],40,ye))],64))),128)),e("craft-callout",{slot:"after",variant:"info",appearance:"plain",class:"p-0",icon:"lightbulb",innerHTML:t(d)("This can be set to an environment variable with a boolean value ({examples})",{examples:"yes/no/true/false/on/off/0/1"})},null,8,Ve),e("div",_e,[m.value.live?(o(),n("ul",xe,[e("li",null,u(m.value.live),1)])):f("",!0)])],40,he),z(e("craft-input",{label:t(d)("Retry Duration"),id:"retry-duration",name:"retryDuration","onUpdate:modelValue":l[1]||(l[1]=s=>t(r).retryDuration=s),"has-feedback-for":m.value?.retryDuration?"error":"",inputmode:"numeric",size:"4",disabled:a.readOnly},[e("div",{slot:"help-text",innerHTML:t(d)("The number of seconds that the Retry-After HTTP header should be set to for 503 responses when the system is offline.")},null,8,Le),m.value?.retryDuration?(o(),n("ul",Te,[e("li",null,u(m.value.retryDuration),1)])):f("",!0)],8,Se),[[C,t(r).retryDuration]]),e("craft-combobox",{label:t(d)("Time Zone"),id:"time-zone",name:"timeZone",".modelValue":t(r).timeZone,onModelValueChanged:k,"has-feedback-for":m.value?.timeZone?"error":"",disabled:a.readOnly,"show-all-on-empty":""},[(o(!0),n(h,null,g(a.timezoneOptions,s=>(o(),n("craft-option",{key:s.value,".choiceValue":s.value},u(s.label)+u(s.data?.hint?` — ${s.data.hint}`:""),41,Ce))),128)),l[10]||(l[10]=e("craft-callout",{slot:"after",variant:"info",appearance:"plain",class:"p-0",icon:"lightbulb"},[y(" This can be set to an environment variable with a value of a "),e("a",{href:"https://www.php.net/manual/en/timezones.php",rel:"noopener",target:"_blank"},"supported time zone"),y(". ")],-1)),m.value?.timeZone?(o(),n("ul",Ie,[e("li",null,u(m.value.timeZone),1)])):f("",!0)],40,ze)]),t(S).edition.value>=t(q).Pro?(o(),n(h,{key:1},[l[11]||(l[11]=e("hr",null,null,-1)),e("div",Oe,[V(I,{label:t(d)("Site Icon"),name:"siteIcon",modelValue:t(r).siteIcon,"onUpdate:modelValue":l[2]||(l[2]=s=>t(r).siteIcon=s),"help-text":t(d)("Square SVG file recommended. The logo will be displayed at {size} by {size}.",{size:"32px"}),"thumbnail-size":32,disabled:a.readOnly,error:t(r).errors.siteIcon},null,8,["label","modelValue","help-text","disabled","error"]),V(I,{label:t(d)("Login Page Logo"),modelValue:t(r).siteLogo,"onUpdate:modelValue":l[3]||(l[3]=s=>t(r).siteLogo=s),name:"siteLogo","help-text":t(d)("SVG file recommended. The logo will be displayed at {size} wide.",{size:"288px"}),disabled:a.readOnly,"thumbnail-size":288,error:t(r).errors.siteLogo},null,8,["label","modelValue","help-text","disabled","error"])])],64)):f("",!0)])]),_:1},8,["title"])],32))}}),Ne=L(De,[["__scopeId","data-v-56327788"]]);export{Ne as default}; diff --git a/resources/build/SettingsIndexPage.js b/resources/build/SettingsIndexPage.js index 43bfc39ea9c..299e403732a 100644 --- a/resources/build/SettingsIndexPage.js +++ b/resources/build/SettingsIndexPage.js @@ -1 +1 @@ -import{d as m,c as l,o as t,w as p,a as e,b as f,e as a,F as c,r,t as d,f as y,u as _}from"./cp2.js";import"./legacy.js";import{_ as b,A as v}from"./CalloutReadOnly.vue_vue_type_script_setup_true_lang.js";import{t as g,_ as x}from"./_plugin-vue_export-helper.js";const $={class:"py-3"},k={class:"grid gap-6"},B=["id"],S=["aria-labelledby"],C={class:"settings-grid"},I=["href"],N={class:"settings-content"},V={class:"settings-icon"},w=["name","label"],A=m({__name:"SettingsIndexPage",props:{readOnly:{type:Boolean},settings:{}},setup(n){return(F,L)=>(t(),l(v,{title:_(g)("Settings")},{default:p(()=>[e("div",$,[n.readOnly?(t(),l(b,{key:0})):f("",!0),e("div",k,[(t(!0),a(c,null,r(n.settings,(u,o,i)=>(t(),a("div",{key:o},[e("h2",{id:`category-heading-${i}`,class:"mb-2 text-lg leading-tight"},d(o),9,B),e("nav",{"aria-labelledby":`category-heading-${i}`},[e("ul",C,[(t(!0),a(c,null,r(u,(s,h)=>(t(),a("li",null,[e("a",{href:s.url||`settings/${h}`,class:"settings-item"},[e("div",N,[e("div",V,[e("craft-icon",{name:s.icon,style:{"font-size":"calc(40rem / 16)"},label:`${s.label} - ${_(g)("Settings")}`},null,8,w)]),y(" "+d(s.label),1)])],8,I)]))),256))])],8,S)]))),128))])])]),_:1},8,["title"]))}}),E=x(A,[["__scopeId","data-v-e6c2dce9"]]);export{E as default}; +import{d as m,c as l,o as t,w as p,a as e,b as f,e as a,F as c,r,t as d,f as y,u as _}from"./cp2.js";import"./legacy.js";import{_ as b,A as v}from"./CalloutReadOnly.vue_vue_type_script_setup_true_lang.js";import{i as g,_ as x}from"./_plugin-vue_export-helper.js";const $={class:"py-3"},k={class:"grid gap-6"},B=["id"],S=["aria-labelledby"],C={class:"settings-grid"},I=["href"],N={class:"settings-content"},V={class:"settings-icon"},w=["name","label"],A=m({__name:"SettingsIndexPage",props:{readOnly:{type:Boolean},settings:{}},setup(n){return(F,L)=>(t(),l(v,{title:_(g)("Settings")},{default:p(()=>[e("div",$,[n.readOnly?(t(),l(b,{key:0})):f("",!0),e("div",k,[(t(!0),a(c,null,r(n.settings,(u,i,o)=>(t(),a("div",{key:i},[e("h2",{id:`category-heading-${o}`,class:"mb-2 text-lg leading-tight"},d(i),9,B),e("nav",{"aria-labelledby":`category-heading-${o}`},[e("ul",C,[(t(!0),a(c,null,r(u,(s,h)=>(t(),a("li",null,[e("a",{href:s.url||`settings/${h}`,class:"settings-item"},[e("div",N,[e("div",V,[e("craft-icon",{name:s.icon,style:{"font-size":"calc(40rem / 16)"},label:`${s.label} - ${_(g)("Settings")}`},null,8,w)]),y(" "+d(s.label),1)])],8,I)]))),256))])],8,S)]))),128))])])]),_:1},8,["title"]))}}),E=x(A,[["__scopeId","data-v-e6c2dce9"]]);export{E as default}; diff --git a/resources/build/SettingsSitesIndex.js b/resources/build/SettingsSitesIndex.js new file mode 100644 index 00000000000..772cd5c0366 --- /dev/null +++ b/resources/build/SettingsSitesIndex.js @@ -0,0 +1,4 @@ +import{d as W,L as Ne,s as je,g as Ue,q as ge,m as Xe,M as I,u as w,e as x,o as $,a as v,F as G,r as k,G as $e,c as U,b,B as X,w as A,K as de,A as Ke,t as V,H as We,p as Je,f as q,I as Fe,J as xe,N as Ye,O as Qe}from"./cp2.js";import"./legacy.js";import{_ as Ze,A as be}from"./CalloutReadOnly.vue_vue_type_script_setup_true_lang.js";import{_ as Ie,i as _}from"./_plugin-vue_export-helper.js";import{P as et,M as tt}from"./Modal.js";import{q as De,a as nt}from"./index.js";function ot(){return{accessor:(e,o)=>typeof e=="function"?{...o,accessorFn:e}:{...o,accessorKey:e},display:e=>e,group:e=>e}}function z(e,o){return typeof e=="function"?e(o):e}function P(e,o){return t=>{o.setState(n=>({...n,[e]:z(t,n[e])}))}}function ee(e){return e instanceof Function}function rt(e){return Array.isArray(e)&&e.every(o=>typeof o=="number")}function it(e,o){const t=[],n=r=>{r.forEach(i=>{t.push(i);const l=o(i);l!=null&&l.length&&n(l)})};return n(e),t}function S(e,o,t){let n=[],r;return i=>{let l;t.key&&t.debug&&(l=Date.now());const s=e(i);if(!(s.length!==n.length||s.some((c,f)=>n[f]!==c)))return r;n=s;let d;if(t.key&&t.debug&&(d=Date.now()),r=o(...s),t==null||t.onChange==null||t.onChange(r),t.key&&t.debug&&t!=null&&t.debug()){const c=Math.round((Date.now()-l)*100)/100,f=Math.round((Date.now()-d)*100)/100,g=f/16,a=(p,m)=>{for(p=String(p);p.length{var r;return(r=e?.debugAll)!=null?r:e[o]},key:!1,onChange:n}}function lt(e,o,t,n){const r=()=>{var l;return(l=i.getValue())!=null?l:e.options.renderFallbackValue},i={id:`${o.id}_${t.id}`,row:o,column:t,getValue:()=>o.getValue(n),renderValue:r,getContext:S(()=>[e,t,o,i],(l,s,u,d)=>({table:l,column:s,row:u,cell:d,getValue:d.getValue,renderValue:d.renderValue}),C(e.options,"debugCells"))};return e._features.forEach(l=>{l.createCell==null||l.createCell(i,t,o,e)},{}),i}function st(e,o,t,n){var r,i;const s={...e._getDefaultColumnDef(),...o},u=s.accessorKey;let d=(r=(i=s.id)!=null?i:u?typeof String.prototype.replaceAll=="function"?u.replaceAll(".","_"):u.replace(/\./g,"_"):void 0)!=null?r:typeof s.header=="string"?s.header:void 0,c;if(s.accessorFn?c=s.accessorFn:u&&(u.includes(".")?c=g=>{let a=g;for(const m of u.split(".")){var p;a=(p=a)==null?void 0:p[m]}return a}:c=g=>g[s.accessorKey]),!d)throw new Error;let f={id:`${String(d)}`,accessorFn:c,parent:n,depth:t,columnDef:s,columns:[],getFlatColumns:S(()=>[!0],()=>{var g;return[f,...(g=f.columns)==null?void 0:g.flatMap(a=>a.getFlatColumns())]},C(e.options,"debugColumns")),getLeafColumns:S(()=>[e._getOrderColumnsFn()],g=>{var a;if((a=f.columns)!=null&&a.length){let p=f.columns.flatMap(m=>m.getLeafColumns());return g(p)}return[f]},C(e.options,"debugColumns"))};for(const g of e._features)g.createColumn==null||g.createColumn(f,e);return f}const M="debugHeaders";function Ve(e,o,t){var n;let i={id:(n=t.id)!=null?n:o.id,column:o,index:t.index,isPlaceholder:!!t.isPlaceholder,placeholderId:t.placeholderId,depth:t.depth,subHeaders:[],colSpan:0,rowSpan:0,headerGroup:null,getLeafHeaders:()=>{const l=[],s=u=>{u.subHeaders&&u.subHeaders.length&&u.subHeaders.map(s),l.push(u)};return s(i),l},getContext:()=>({table:e,header:i,column:o})};return e._features.forEach(l=>{l.createHeader==null||l.createHeader(i,e)}),i}const ut={createTable:e=>{e.getHeaderGroups=S(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.left,e.getState().columnPinning.right],(o,t,n,r)=>{var i,l;const s=(i=n?.map(f=>t.find(g=>g.id===f)).filter(Boolean))!=null?i:[],u=(l=r?.map(f=>t.find(g=>g.id===f)).filter(Boolean))!=null?l:[],d=t.filter(f=>!(n!=null&&n.includes(f.id))&&!(r!=null&&r.includes(f.id)));return J(o,[...s,...d,...u],e)},C(e.options,M)),e.getCenterHeaderGroups=S(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.left,e.getState().columnPinning.right],(o,t,n,r)=>(t=t.filter(i=>!(n!=null&&n.includes(i.id))&&!(r!=null&&r.includes(i.id))),J(o,t,e,"center")),C(e.options,M)),e.getLeftHeaderGroups=S(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.left],(o,t,n)=>{var r;const i=(r=n?.map(l=>t.find(s=>s.id===l)).filter(Boolean))!=null?r:[];return J(o,i,e,"left")},C(e.options,M)),e.getRightHeaderGroups=S(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.right],(o,t,n)=>{var r;const i=(r=n?.map(l=>t.find(s=>s.id===l)).filter(Boolean))!=null?r:[];return J(o,i,e,"right")},C(e.options,M)),e.getFooterGroups=S(()=>[e.getHeaderGroups()],o=>[...o].reverse(),C(e.options,M)),e.getLeftFooterGroups=S(()=>[e.getLeftHeaderGroups()],o=>[...o].reverse(),C(e.options,M)),e.getCenterFooterGroups=S(()=>[e.getCenterHeaderGroups()],o=>[...o].reverse(),C(e.options,M)),e.getRightFooterGroups=S(()=>[e.getRightHeaderGroups()],o=>[...o].reverse(),C(e.options,M)),e.getFlatHeaders=S(()=>[e.getHeaderGroups()],o=>o.map(t=>t.headers).flat(),C(e.options,M)),e.getLeftFlatHeaders=S(()=>[e.getLeftHeaderGroups()],o=>o.map(t=>t.headers).flat(),C(e.options,M)),e.getCenterFlatHeaders=S(()=>[e.getCenterHeaderGroups()],o=>o.map(t=>t.headers).flat(),C(e.options,M)),e.getRightFlatHeaders=S(()=>[e.getRightHeaderGroups()],o=>o.map(t=>t.headers).flat(),C(e.options,M)),e.getCenterLeafHeaders=S(()=>[e.getCenterFlatHeaders()],o=>o.filter(t=>{var n;return!((n=t.subHeaders)!=null&&n.length)}),C(e.options,M)),e.getLeftLeafHeaders=S(()=>[e.getLeftFlatHeaders()],o=>o.filter(t=>{var n;return!((n=t.subHeaders)!=null&&n.length)}),C(e.options,M)),e.getRightLeafHeaders=S(()=>[e.getRightFlatHeaders()],o=>o.filter(t=>{var n;return!((n=t.subHeaders)!=null&&n.length)}),C(e.options,M)),e.getLeafHeaders=S(()=>[e.getLeftHeaderGroups(),e.getCenterHeaderGroups(),e.getRightHeaderGroups()],(o,t,n)=>{var r,i,l,s,u,d;return[...(r=(i=o[0])==null?void 0:i.headers)!=null?r:[],...(l=(s=t[0])==null?void 0:s.headers)!=null?l:[],...(u=(d=n[0])==null?void 0:d.headers)!=null?u:[]].map(c=>c.getLeafHeaders()).flat()},C(e.options,M))}};function J(e,o,t,n){var r,i;let l=0;const s=function(g,a){a===void 0&&(a=1),l=Math.max(l,a),g.filter(p=>p.getIsVisible()).forEach(p=>{var m;(m=p.columns)!=null&&m.length&&s(p.columns,a+1)},0)};s(e);let u=[];const d=(g,a)=>{const p={depth:a,id:[n,`${a}`].filter(Boolean).join("_"),headers:[]},m=[];g.forEach(R=>{const h=[...m].reverse()[0],y=R.column.depth===p.depth;let F,H=!1;if(y&&R.column.parent?F=R.column.parent:(F=R.column,H=!0),h&&h?.column===F)h.subHeaders.push(R);else{const O=Ve(t,F,{id:[n,a,F.id,R?.id].filter(Boolean).join("_"),isPlaceholder:H,placeholderId:H?`${m.filter(te=>te.column===F).length}`:void 0,depth:a,index:m.length});O.subHeaders.push(R),m.push(O)}p.headers.push(R),R.headerGroup=p}),u.push(p),a>0&&d(m,a-1)},c=o.map((g,a)=>Ve(t,g,{depth:l,index:a}));d(c,l-1),u.reverse();const f=g=>g.filter(p=>p.column.getIsVisible()).map(p=>{let m=0,R=0,h=[0];p.subHeaders&&p.subHeaders.length?(h=[],f(p.subHeaders).forEach(F=>{let{colSpan:H,rowSpan:O}=F;m+=H,h.push(O)})):m=1;const y=Math.min(...h);return R=R+y,p.colSpan=m,p.rowSpan=R,{colSpan:m,rowSpan:R}});return f((r=(i=u[0])==null?void 0:i.headers)!=null?r:[]),u}const at=(e,o,t,n,r,i,l)=>{let s={id:o,index:n,original:t,depth:r,parentId:l,_valuesCache:{},_uniqueValuesCache:{},getValue:u=>{if(s._valuesCache.hasOwnProperty(u))return s._valuesCache[u];const d=e.getColumn(u);if(d!=null&&d.accessorFn)return s._valuesCache[u]=d.accessorFn(s.original,n),s._valuesCache[u]},getUniqueValues:u=>{if(s._uniqueValuesCache.hasOwnProperty(u))return s._uniqueValuesCache[u];const d=e.getColumn(u);if(d!=null&&d.accessorFn)return d.columnDef.getUniqueValues?(s._uniqueValuesCache[u]=d.columnDef.getUniqueValues(s.original,n),s._uniqueValuesCache[u]):(s._uniqueValuesCache[u]=[s.getValue(u)],s._uniqueValuesCache[u])},renderValue:u=>{var d;return(d=s.getValue(u))!=null?d:e.options.renderFallbackValue},subRows:[],getLeafRows:()=>it(s.subRows,u=>u.subRows),getParentRow:()=>s.parentId?e.getRow(s.parentId,!0):void 0,getParentRows:()=>{let u=[],d=s;for(;;){const c=d.getParentRow();if(!c)break;u.push(c),d=c}return u.reverse()},getAllCells:S(()=>[e.getAllLeafColumns()],u=>u.map(d=>lt(e,s,d,d.id)),C(e.options,"debugRows")),_getAllCellsByColumnId:S(()=>[s.getAllCells()],u=>u.reduce((d,c)=>(d[c.column.id]=c,d),{}),C(e.options,"debugRows"))};for(let u=0;u{e._getFacetedRowModel=o.options.getFacetedRowModel&&o.options.getFacetedRowModel(o,e.id),e.getFacetedRowModel=()=>e._getFacetedRowModel?e._getFacetedRowModel():o.getPreFilteredRowModel(),e._getFacetedUniqueValues=o.options.getFacetedUniqueValues&&o.options.getFacetedUniqueValues(o,e.id),e.getFacetedUniqueValues=()=>e._getFacetedUniqueValues?e._getFacetedUniqueValues():new Map,e._getFacetedMinMaxValues=o.options.getFacetedMinMaxValues&&o.options.getFacetedMinMaxValues(o,e.id),e.getFacetedMinMaxValues=()=>{if(e._getFacetedMinMaxValues)return e._getFacetedMinMaxValues()}}},Ae=(e,o,t)=>{var n,r;const i=t==null||(n=t.toString())==null?void 0:n.toLowerCase();return!!(!((r=e.getValue(o))==null||(r=r.toString())==null||(r=r.toLowerCase())==null)&&r.includes(i))};Ae.autoRemove=e=>D(e);const Ee=(e,o,t)=>{var n;return!!(!((n=e.getValue(o))==null||(n=n.toString())==null)&&n.includes(t))};Ee.autoRemove=e=>D(e);const Ge=(e,o,t)=>{var n;return((n=e.getValue(o))==null||(n=n.toString())==null?void 0:n.toLowerCase())===t?.toLowerCase()};Ge.autoRemove=e=>D(e);const He=(e,o,t)=>{var n;return(n=e.getValue(o))==null?void 0:n.includes(t)};He.autoRemove=e=>D(e);const ze=(e,o,t)=>!t.some(n=>{var r;return!((r=e.getValue(o))!=null&&r.includes(n))});ze.autoRemove=e=>D(e)||!(e!=null&&e.length);const Le=(e,o,t)=>t.some(n=>{var r;return(r=e.getValue(o))==null?void 0:r.includes(n)});Le.autoRemove=e=>D(e)||!(e!=null&&e.length);const Oe=(e,o,t)=>e.getValue(o)===t;Oe.autoRemove=e=>D(e);const ke=(e,o,t)=>e.getValue(o)==t;ke.autoRemove=e=>D(e);const Ce=(e,o,t)=>{let[n,r]=t;const i=e.getValue(o);return i>=n&&i<=r};Ce.resolveFilterValue=e=>{let[o,t]=e,n=typeof o!="number"?parseFloat(o):o,r=typeof t!="number"?parseFloat(t):t,i=o===null||Number.isNaN(n)?-1/0:n,l=t===null||Number.isNaN(r)?1/0:r;if(i>l){const s=i;i=l,l=s}return[i,l]};Ce.autoRemove=e=>D(e)||D(e[0])&&D(e[1]);const E={includesString:Ae,includesStringSensitive:Ee,equalsString:Ge,arrIncludes:He,arrIncludesAll:ze,arrIncludesSome:Le,equals:Oe,weakEquals:ke,inNumberRange:Ce};function D(e){return e==null||e===""}const dt={getDefaultColumnDef:()=>({filterFn:"auto"}),getInitialState:e=>({columnFilters:[],...e}),getDefaultOptions:e=>({onColumnFiltersChange:P("columnFilters",e),filterFromLeafRows:!1,maxLeafRowFilterDepth:100}),createColumn:(e,o)=>{e.getAutoFilterFn=()=>{const t=o.getCoreRowModel().flatRows[0],n=t?.getValue(e.id);return typeof n=="string"?E.includesString:typeof n=="number"?E.inNumberRange:typeof n=="boolean"||n!==null&&typeof n=="object"?E.equals:Array.isArray(n)?E.arrIncludes:E.weakEquals},e.getFilterFn=()=>{var t,n;return ee(e.columnDef.filterFn)?e.columnDef.filterFn:e.columnDef.filterFn==="auto"?e.getAutoFilterFn():(t=(n=o.options.filterFns)==null?void 0:n[e.columnDef.filterFn])!=null?t:E[e.columnDef.filterFn]},e.getCanFilter=()=>{var t,n,r;return((t=e.columnDef.enableColumnFilter)!=null?t:!0)&&((n=o.options.enableColumnFilters)!=null?n:!0)&&((r=o.options.enableFilters)!=null?r:!0)&&!!e.accessorFn},e.getIsFiltered=()=>e.getFilterIndex()>-1,e.getFilterValue=()=>{var t;return(t=o.getState().columnFilters)==null||(t=t.find(n=>n.id===e.id))==null?void 0:t.value},e.getFilterIndex=()=>{var t,n;return(t=(n=o.getState().columnFilters)==null?void 0:n.findIndex(r=>r.id===e.id))!=null?t:-1},e.setFilterValue=t=>{o.setColumnFilters(n=>{const r=e.getFilterFn(),i=n?.find(c=>c.id===e.id),l=z(t,i?i.value:void 0);if(Me(r,l,e)){var s;return(s=n?.filter(c=>c.id!==e.id))!=null?s:[]}const u={id:e.id,value:l};if(i){var d;return(d=n?.map(c=>c.id===e.id?u:c))!=null?d:[]}return n!=null&&n.length?[...n,u]:[u]})}},createRow:(e,o)=>{e.columnFilters={},e.columnFiltersMeta={}},createTable:e=>{e.setColumnFilters=o=>{const t=e.getAllLeafColumns(),n=r=>{var i;return(i=z(o,r))==null?void 0:i.filter(l=>{const s=t.find(u=>u.id===l.id);if(s){const u=s.getFilterFn();if(Me(u,l.value,s))return!1}return!0})};e.options.onColumnFiltersChange==null||e.options.onColumnFiltersChange(n)},e.resetColumnFilters=o=>{var t,n;e.setColumnFilters(o?[]:(t=(n=e.initialState)==null?void 0:n.columnFilters)!=null?t:[])},e.getPreFilteredRowModel=()=>e.getCoreRowModel(),e.getFilteredRowModel=()=>(!e._getFilteredRowModel&&e.options.getFilteredRowModel&&(e._getFilteredRowModel=e.options.getFilteredRowModel(e)),e.options.manualFiltering||!e._getFilteredRowModel?e.getPreFilteredRowModel():e._getFilteredRowModel())}};function Me(e,o,t){return(e&&e.autoRemove?e.autoRemove(o,t):!1)||typeof o>"u"||typeof o=="string"&&!o}const ct=(e,o,t)=>t.reduce((n,r)=>{const i=r.getValue(e);return n+(typeof i=="number"?i:0)},0),ft=(e,o,t)=>{let n;return t.forEach(r=>{const i=r.getValue(e);i!=null&&(n>i||n===void 0&&i>=i)&&(n=i)}),n},pt=(e,o,t)=>{let n;return t.forEach(r=>{const i=r.getValue(e);i!=null&&(n=i)&&(n=i)}),n},mt=(e,o,t)=>{let n,r;return t.forEach(i=>{const l=i.getValue(e);l!=null&&(n===void 0?l>=l&&(n=r=l):(n>l&&(n=l),r{let t=0,n=0;if(o.forEach(r=>{let i=r.getValue(e);i!=null&&(i=+i)>=i&&(++t,n+=i)}),t)return n/t},Ct=(e,o)=>{if(!o.length)return;const t=o.map(i=>i.getValue(e));if(!rt(t))return;if(t.length===1)return t[0];const n=Math.floor(t.length/2),r=t.sort((i,l)=>i-l);return t.length%2!==0?r[n]:(r[n-1]+r[n])/2},vt=(e,o)=>Array.from(new Set(o.map(t=>t.getValue(e))).values()),ht=(e,o)=>new Set(o.map(t=>t.getValue(e))).size,wt=(e,o)=>o.length,ne={sum:ct,min:ft,max:pt,extent:mt,mean:St,median:Ct,unique:vt,uniqueCount:ht,count:wt},Rt={getDefaultColumnDef:()=>({aggregatedCell:e=>{var o,t;return(o=(t=e.getValue())==null||t.toString==null?void 0:t.toString())!=null?o:null},aggregationFn:"auto"}),getInitialState:e=>({grouping:[],...e}),getDefaultOptions:e=>({onGroupingChange:P("grouping",e),groupedColumnMode:"reorder"}),createColumn:(e,o)=>{e.toggleGrouping=()=>{o.setGrouping(t=>t!=null&&t.includes(e.id)?t.filter(n=>n!==e.id):[...t??[],e.id])},e.getCanGroup=()=>{var t,n;return((t=e.columnDef.enableGrouping)!=null?t:!0)&&((n=o.options.enableGrouping)!=null?n:!0)&&(!!e.accessorFn||!!e.columnDef.getGroupingValue)},e.getIsGrouped=()=>{var t;return(t=o.getState().grouping)==null?void 0:t.includes(e.id)},e.getGroupedIndex=()=>{var t;return(t=o.getState().grouping)==null?void 0:t.indexOf(e.id)},e.getToggleGroupingHandler=()=>{const t=e.getCanGroup();return()=>{t&&e.toggleGrouping()}},e.getAutoAggregationFn=()=>{const t=o.getCoreRowModel().flatRows[0],n=t?.getValue(e.id);if(typeof n=="number")return ne.sum;if(Object.prototype.toString.call(n)==="[object Date]")return ne.extent},e.getAggregationFn=()=>{var t,n;if(!e)throw new Error;return ee(e.columnDef.aggregationFn)?e.columnDef.aggregationFn:e.columnDef.aggregationFn==="auto"?e.getAutoAggregationFn():(t=(n=o.options.aggregationFns)==null?void 0:n[e.columnDef.aggregationFn])!=null?t:ne[e.columnDef.aggregationFn]}},createTable:e=>{e.setGrouping=o=>e.options.onGroupingChange==null?void 0:e.options.onGroupingChange(o),e.resetGrouping=o=>{var t,n;e.setGrouping(o?[]:(t=(n=e.initialState)==null?void 0:n.grouping)!=null?t:[])},e.getPreGroupedRowModel=()=>e.getFilteredRowModel(),e.getGroupedRowModel=()=>(!e._getGroupedRowModel&&e.options.getGroupedRowModel&&(e._getGroupedRowModel=e.options.getGroupedRowModel(e)),e.options.manualGrouping||!e._getGroupedRowModel?e.getPreGroupedRowModel():e._getGroupedRowModel())},createRow:(e,o)=>{e.getIsGrouped=()=>!!e.groupingColumnId,e.getGroupingValue=t=>{if(e._groupingValuesCache.hasOwnProperty(t))return e._groupingValuesCache[t];const n=o.getColumn(t);return n!=null&&n.columnDef.getGroupingValue?(e._groupingValuesCache[t]=n.columnDef.getGroupingValue(e.original),e._groupingValuesCache[t]):e.getValue(t)},e._groupingValuesCache={}},createCell:(e,o,t,n)=>{e.getIsGrouped=()=>o.getIsGrouped()&&o.id===t.groupingColumnId,e.getIsPlaceholder=()=>!e.getIsGrouped()&&o.getIsGrouped(),e.getIsAggregated=()=>{var r;return!e.getIsGrouped()&&!e.getIsPlaceholder()&&!!((r=t.subRows)!=null&&r.length)}}};function _t(e,o,t){if(!(o!=null&&o.length)||!t)return e;const n=e.filter(i=>!o.includes(i.id));return t==="remove"?n:[...o.map(i=>e.find(l=>l.id===i)).filter(Boolean),...n]}const $t={getInitialState:e=>({columnOrder:[],...e}),getDefaultOptions:e=>({onColumnOrderChange:P("columnOrder",e)}),createColumn:(e,o)=>{e.getIndex=S(t=>[K(o,t)],t=>t.findIndex(n=>n.id===e.id),C(o.options,"debugColumns")),e.getIsFirstColumn=t=>{var n;return((n=K(o,t)[0])==null?void 0:n.id)===e.id},e.getIsLastColumn=t=>{var n;const r=K(o,t);return((n=r[r.length-1])==null?void 0:n.id)===e.id}},createTable:e=>{e.setColumnOrder=o=>e.options.onColumnOrderChange==null?void 0:e.options.onColumnOrderChange(o),e.resetColumnOrder=o=>{var t;e.setColumnOrder(o?[]:(t=e.initialState.columnOrder)!=null?t:[])},e._getOrderColumnsFn=S(()=>[e.getState().columnOrder,e.getState().grouping,e.options.groupedColumnMode],(o,t,n)=>r=>{let i=[];if(!(o!=null&&o.length))i=r;else{const l=[...o],s=[...r];for(;s.length&&l.length;){const u=l.shift(),d=s.findIndex(c=>c.id===u);d>-1&&i.push(s.splice(d,1)[0])}i=[...i,...s]}return _t(i,t,n)},C(e.options,"debugTable"))}},oe=()=>({left:[],right:[]}),Ft={getInitialState:e=>({columnPinning:oe(),...e}),getDefaultOptions:e=>({onColumnPinningChange:P("columnPinning",e)}),createColumn:(e,o)=>{e.pin=t=>{const n=e.getLeafColumns().map(r=>r.id).filter(Boolean);o.setColumnPinning(r=>{var i,l;if(t==="right"){var s,u;return{left:((s=r?.left)!=null?s:[]).filter(f=>!(n!=null&&n.includes(f))),right:[...((u=r?.right)!=null?u:[]).filter(f=>!(n!=null&&n.includes(f))),...n]}}if(t==="left"){var d,c;return{left:[...((d=r?.left)!=null?d:[]).filter(f=>!(n!=null&&n.includes(f))),...n],right:((c=r?.right)!=null?c:[]).filter(f=>!(n!=null&&n.includes(f)))}}return{left:((i=r?.left)!=null?i:[]).filter(f=>!(n!=null&&n.includes(f))),right:((l=r?.right)!=null?l:[]).filter(f=>!(n!=null&&n.includes(f)))}})},e.getCanPin=()=>e.getLeafColumns().some(n=>{var r,i,l;return((r=n.columnDef.enablePinning)!=null?r:!0)&&((i=(l=o.options.enableColumnPinning)!=null?l:o.options.enablePinning)!=null?i:!0)}),e.getIsPinned=()=>{const t=e.getLeafColumns().map(s=>s.id),{left:n,right:r}=o.getState().columnPinning,i=t.some(s=>n?.includes(s)),l=t.some(s=>r?.includes(s));return i?"left":l?"right":!1},e.getPinnedIndex=()=>{var t,n;const r=e.getIsPinned();return r?(t=(n=o.getState().columnPinning)==null||(n=n[r])==null?void 0:n.indexOf(e.id))!=null?t:-1:0}},createRow:(e,o)=>{e.getCenterVisibleCells=S(()=>[e._getAllVisibleCells(),o.getState().columnPinning.left,o.getState().columnPinning.right],(t,n,r)=>{const i=[...n??[],...r??[]];return t.filter(l=>!i.includes(l.column.id))},C(o.options,"debugRows")),e.getLeftVisibleCells=S(()=>[e._getAllVisibleCells(),o.getState().columnPinning.left],(t,n)=>(n??[]).map(i=>t.find(l=>l.column.id===i)).filter(Boolean).map(i=>({...i,position:"left"})),C(o.options,"debugRows")),e.getRightVisibleCells=S(()=>[e._getAllVisibleCells(),o.getState().columnPinning.right],(t,n)=>(n??[]).map(i=>t.find(l=>l.column.id===i)).filter(Boolean).map(i=>({...i,position:"right"})),C(o.options,"debugRows"))},createTable:e=>{e.setColumnPinning=o=>e.options.onColumnPinningChange==null?void 0:e.options.onColumnPinningChange(o),e.resetColumnPinning=o=>{var t,n;return e.setColumnPinning(o?oe():(t=(n=e.initialState)==null?void 0:n.columnPinning)!=null?t:oe())},e.getIsSomeColumnsPinned=o=>{var t;const n=e.getState().columnPinning;if(!o){var r,i;return!!((r=n.left)!=null&&r.length||(i=n.right)!=null&&i.length)}return!!((t=n[o])!=null&&t.length)},e.getLeftLeafColumns=S(()=>[e.getAllLeafColumns(),e.getState().columnPinning.left],(o,t)=>(t??[]).map(n=>o.find(r=>r.id===n)).filter(Boolean),C(e.options,"debugColumns")),e.getRightLeafColumns=S(()=>[e.getAllLeafColumns(),e.getState().columnPinning.right],(o,t)=>(t??[]).map(n=>o.find(r=>r.id===n)).filter(Boolean),C(e.options,"debugColumns")),e.getCenterLeafColumns=S(()=>[e.getAllLeafColumns(),e.getState().columnPinning.left,e.getState().columnPinning.right],(o,t,n)=>{const r=[...t??[],...n??[]];return o.filter(i=>!r.includes(i.id))},C(e.options,"debugColumns"))}};function xt(e){return e||(typeof document<"u"?document:null)}const Y={size:150,minSize:20,maxSize:Number.MAX_SAFE_INTEGER},re=()=>({startOffset:null,startSize:null,deltaOffset:null,deltaPercentage:null,isResizingColumn:!1,columnSizingStart:[]}),Vt={getDefaultColumnDef:()=>Y,getInitialState:e=>({columnSizing:{},columnSizingInfo:re(),...e}),getDefaultOptions:e=>({columnResizeMode:"onEnd",columnResizeDirection:"ltr",onColumnSizingChange:P("columnSizing",e),onColumnSizingInfoChange:P("columnSizingInfo",e)}),createColumn:(e,o)=>{e.getSize=()=>{var t,n,r;const i=o.getState().columnSizing[e.id];return Math.min(Math.max((t=e.columnDef.minSize)!=null?t:Y.minSize,(n=i??e.columnDef.size)!=null?n:Y.size),(r=e.columnDef.maxSize)!=null?r:Y.maxSize)},e.getStart=S(t=>[t,K(o,t),o.getState().columnSizing],(t,n)=>n.slice(0,e.getIndex(t)).reduce((r,i)=>r+i.getSize(),0),C(o.options,"debugColumns")),e.getAfter=S(t=>[t,K(o,t),o.getState().columnSizing],(t,n)=>n.slice(e.getIndex(t)+1).reduce((r,i)=>r+i.getSize(),0),C(o.options,"debugColumns")),e.resetSize=()=>{o.setColumnSizing(t=>{let{[e.id]:n,...r}=t;return r})},e.getCanResize=()=>{var t,n;return((t=e.columnDef.enableResizing)!=null?t:!0)&&((n=o.options.enableColumnResizing)!=null?n:!0)},e.getIsResizing=()=>o.getState().columnSizingInfo.isResizingColumn===e.id},createHeader:(e,o)=>{e.getSize=()=>{let t=0;const n=r=>{if(r.subHeaders.length)r.subHeaders.forEach(n);else{var i;t+=(i=r.column.getSize())!=null?i:0}};return n(e),t},e.getStart=()=>{if(e.index>0){const t=e.headerGroup.headers[e.index-1];return t.getStart()+t.getSize()}return 0},e.getResizeHandler=t=>{const n=o.getColumn(e.column.id),r=n?.getCanResize();return i=>{if(!n||!r||(i.persist==null||i.persist(),ie(i)&&i.touches&&i.touches.length>1))return;const l=e.getSize(),s=e?e.getLeafHeaders().map(h=>[h.column.id,h.column.getSize()]):[[n.id,n.getSize()]],u=ie(i)?Math.round(i.touches[0].clientX):i.clientX,d={},c=(h,y)=>{typeof y=="number"&&(o.setColumnSizingInfo(F=>{var H,O;const te=o.options.columnResizeDirection==="rtl"?-1:1,we=(y-((H=F?.startOffset)!=null?H:0))*te,Re=Math.max(we/((O=F?.startSize)!=null?O:0),-.999999);return F.columnSizingStart.forEach(Te=>{let[qe,_e]=Te;d[qe]=Math.round(Math.max(_e+_e*Re,0)*100)/100}),{...F,deltaOffset:we,deltaPercentage:Re}}),(o.options.columnResizeMode==="onChange"||h==="end")&&o.setColumnSizing(F=>({...F,...d})))},f=h=>c("move",h),g=h=>{c("end",h),o.setColumnSizingInfo(y=>({...y,isResizingColumn:!1,startOffset:null,startSize:null,deltaOffset:null,deltaPercentage:null,columnSizingStart:[]}))},a=xt(t),p={moveHandler:h=>f(h.clientX),upHandler:h=>{a?.removeEventListener("mousemove",p.moveHandler),a?.removeEventListener("mouseup",p.upHandler),g(h.clientX)}},m={moveHandler:h=>(h.cancelable&&(h.preventDefault(),h.stopPropagation()),f(h.touches[0].clientX),!1),upHandler:h=>{var y;a?.removeEventListener("touchmove",m.moveHandler),a?.removeEventListener("touchend",m.upHandler),h.cancelable&&(h.preventDefault(),h.stopPropagation()),g((y=h.touches[0])==null?void 0:y.clientX)}},R=Mt()?{passive:!1}:!1;ie(i)?(a?.addEventListener("touchmove",m.moveHandler,R),a?.addEventListener("touchend",m.upHandler,R)):(a?.addEventListener("mousemove",p.moveHandler,R),a?.addEventListener("mouseup",p.upHandler,R)),o.setColumnSizingInfo(h=>({...h,startOffset:u,startSize:l,deltaOffset:0,deltaPercentage:0,columnSizingStart:s,isResizingColumn:n.id}))}}},createTable:e=>{e.setColumnSizing=o=>e.options.onColumnSizingChange==null?void 0:e.options.onColumnSizingChange(o),e.setColumnSizingInfo=o=>e.options.onColumnSizingInfoChange==null?void 0:e.options.onColumnSizingInfoChange(o),e.resetColumnSizing=o=>{var t;e.setColumnSizing(o?{}:(t=e.initialState.columnSizing)!=null?t:{})},e.resetHeaderSizeInfo=o=>{var t;e.setColumnSizingInfo(o?re():(t=e.initialState.columnSizingInfo)!=null?t:re())},e.getTotalSize=()=>{var o,t;return(o=(t=e.getHeaderGroups()[0])==null?void 0:t.headers.reduce((n,r)=>n+r.getSize(),0))!=null?o:0},e.getLeftTotalSize=()=>{var o,t;return(o=(t=e.getLeftHeaderGroups()[0])==null?void 0:t.headers.reduce((n,r)=>n+r.getSize(),0))!=null?o:0},e.getCenterTotalSize=()=>{var o,t;return(o=(t=e.getCenterHeaderGroups()[0])==null?void 0:t.headers.reduce((n,r)=>n+r.getSize(),0))!=null?o:0},e.getRightTotalSize=()=>{var o,t;return(o=(t=e.getRightHeaderGroups()[0])==null?void 0:t.headers.reduce((n,r)=>n+r.getSize(),0))!=null?o:0}}};let Q=null;function Mt(){if(typeof Q=="boolean")return Q;let e=!1;try{const o={get passive(){return e=!0,!1}},t=()=>{};window.addEventListener("test",t,o),window.removeEventListener("test",t)}catch{e=!1}return Q=e,Q}function ie(e){return e.type==="touchstart"}const yt={getInitialState:e=>({columnVisibility:{},...e}),getDefaultOptions:e=>({onColumnVisibilityChange:P("columnVisibility",e)}),createColumn:(e,o)=>{e.toggleVisibility=t=>{e.getCanHide()&&o.setColumnVisibility(n=>({...n,[e.id]:t??!e.getIsVisible()}))},e.getIsVisible=()=>{var t,n;const r=e.columns;return(t=r.length?r.some(i=>i.getIsVisible()):(n=o.getState().columnVisibility)==null?void 0:n[e.id])!=null?t:!0},e.getCanHide=()=>{var t,n;return((t=e.columnDef.enableHiding)!=null?t:!0)&&((n=o.options.enableHiding)!=null?n:!0)},e.getToggleVisibilityHandler=()=>t=>{e.toggleVisibility==null||e.toggleVisibility(t.target.checked)}},createRow:(e,o)=>{e._getAllVisibleCells=S(()=>[e.getAllCells(),o.getState().columnVisibility],t=>t.filter(n=>n.column.getIsVisible()),C(o.options,"debugRows")),e.getVisibleCells=S(()=>[e.getLeftVisibleCells(),e.getCenterVisibleCells(),e.getRightVisibleCells()],(t,n,r)=>[...t,...n,...r],C(o.options,"debugRows"))},createTable:e=>{const o=(t,n)=>S(()=>[n(),n().filter(r=>r.getIsVisible()).map(r=>r.id).join("_")],r=>r.filter(i=>i.getIsVisible==null?void 0:i.getIsVisible()),C(e.options,"debugColumns"));e.getVisibleFlatColumns=o("getVisibleFlatColumns",()=>e.getAllFlatColumns()),e.getVisibleLeafColumns=o("getVisibleLeafColumns",()=>e.getAllLeafColumns()),e.getLeftVisibleLeafColumns=o("getLeftVisibleLeafColumns",()=>e.getLeftLeafColumns()),e.getRightVisibleLeafColumns=o("getRightVisibleLeafColumns",()=>e.getRightLeafColumns()),e.getCenterVisibleLeafColumns=o("getCenterVisibleLeafColumns",()=>e.getCenterLeafColumns()),e.setColumnVisibility=t=>e.options.onColumnVisibilityChange==null?void 0:e.options.onColumnVisibilityChange(t),e.resetColumnVisibility=t=>{var n;e.setColumnVisibility(t?{}:(n=e.initialState.columnVisibility)!=null?n:{})},e.toggleAllColumnsVisible=t=>{var n;t=(n=t)!=null?n:!e.getIsAllColumnsVisible(),e.setColumnVisibility(e.getAllLeafColumns().reduce((r,i)=>({...r,[i.id]:t||!(i.getCanHide!=null&&i.getCanHide())}),{}))},e.getIsAllColumnsVisible=()=>!e.getAllLeafColumns().some(t=>!(t.getIsVisible!=null&&t.getIsVisible())),e.getIsSomeColumnsVisible=()=>e.getAllLeafColumns().some(t=>t.getIsVisible==null?void 0:t.getIsVisible()),e.getToggleAllColumnsVisibilityHandler=()=>t=>{var n;e.toggleAllColumnsVisible((n=t.target)==null?void 0:n.checked)}}};function K(e,o){return o?o==="center"?e.getCenterVisibleLeafColumns():o==="left"?e.getLeftVisibleLeafColumns():e.getRightVisibleLeafColumns():e.getVisibleLeafColumns()}const Pt={createTable:e=>{e._getGlobalFacetedRowModel=e.options.getFacetedRowModel&&e.options.getFacetedRowModel(e,"__global__"),e.getGlobalFacetedRowModel=()=>e.options.manualFiltering||!e._getGlobalFacetedRowModel?e.getPreFilteredRowModel():e._getGlobalFacetedRowModel(),e._getGlobalFacetedUniqueValues=e.options.getFacetedUniqueValues&&e.options.getFacetedUniqueValues(e,"__global__"),e.getGlobalFacetedUniqueValues=()=>e._getGlobalFacetedUniqueValues?e._getGlobalFacetedUniqueValues():new Map,e._getGlobalFacetedMinMaxValues=e.options.getFacetedMinMaxValues&&e.options.getFacetedMinMaxValues(e,"__global__"),e.getGlobalFacetedMinMaxValues=()=>{if(e._getGlobalFacetedMinMaxValues)return e._getGlobalFacetedMinMaxValues()}}},It={getInitialState:e=>({globalFilter:void 0,...e}),getDefaultOptions:e=>({onGlobalFilterChange:P("globalFilter",e),globalFilterFn:"auto",getColumnCanGlobalFilter:o=>{var t;const n=(t=e.getCoreRowModel().flatRows[0])==null||(t=t._getAllCellsByColumnId()[o.id])==null?void 0:t.getValue();return typeof n=="string"||typeof n=="number"}}),createColumn:(e,o)=>{e.getCanGlobalFilter=()=>{var t,n,r,i;return((t=e.columnDef.enableGlobalFilter)!=null?t:!0)&&((n=o.options.enableGlobalFilter)!=null?n:!0)&&((r=o.options.enableFilters)!=null?r:!0)&&((i=o.options.getColumnCanGlobalFilter==null?void 0:o.options.getColumnCanGlobalFilter(e))!=null?i:!0)&&!!e.accessorFn}},createTable:e=>{e.getGlobalAutoFilterFn=()=>E.includesString,e.getGlobalFilterFn=()=>{var o,t;const{globalFilterFn:n}=e.options;return ee(n)?n:n==="auto"?e.getGlobalAutoFilterFn():(o=(t=e.options.filterFns)==null?void 0:t[n])!=null?o:E[n]},e.setGlobalFilter=o=>{e.options.onGlobalFilterChange==null||e.options.onGlobalFilterChange(o)},e.resetGlobalFilter=o=>{e.setGlobalFilter(o?void 0:e.initialState.globalFilter)}}},Dt={getInitialState:e=>({expanded:{},...e}),getDefaultOptions:e=>({onExpandedChange:P("expanded",e),paginateExpandedRows:!0}),createTable:e=>{let o=!1,t=!1;e._autoResetExpanded=()=>{var n,r;if(!o){e._queue(()=>{o=!0});return}if((n=(r=e.options.autoResetAll)!=null?r:e.options.autoResetExpanded)!=null?n:!e.options.manualExpanding){if(t)return;t=!0,e._queue(()=>{e.resetExpanded(),t=!1})}},e.setExpanded=n=>e.options.onExpandedChange==null?void 0:e.options.onExpandedChange(n),e.toggleAllRowsExpanded=n=>{n??!e.getIsAllRowsExpanded()?e.setExpanded(!0):e.setExpanded({})},e.resetExpanded=n=>{var r,i;e.setExpanded(n?{}:(r=(i=e.initialState)==null?void 0:i.expanded)!=null?r:{})},e.getCanSomeRowsExpand=()=>e.getPrePaginationRowModel().flatRows.some(n=>n.getCanExpand()),e.getToggleAllRowsExpandedHandler=()=>n=>{n.persist==null||n.persist(),e.toggleAllRowsExpanded()},e.getIsSomeRowsExpanded=()=>{const n=e.getState().expanded;return n===!0||Object.values(n).some(Boolean)},e.getIsAllRowsExpanded=()=>{const n=e.getState().expanded;return typeof n=="boolean"?n===!0:!(!Object.keys(n).length||e.getRowModel().flatRows.some(r=>!r.getIsExpanded()))},e.getExpandedDepth=()=>{let n=0;return(e.getState().expanded===!0?Object.keys(e.getRowModel().rowsById):Object.keys(e.getState().expanded)).forEach(i=>{const l=i.split(".");n=Math.max(n,l.length)}),n},e.getPreExpandedRowModel=()=>e.getSortedRowModel(),e.getExpandedRowModel=()=>(!e._getExpandedRowModel&&e.options.getExpandedRowModel&&(e._getExpandedRowModel=e.options.getExpandedRowModel(e)),e.options.manualExpanding||!e._getExpandedRowModel?e.getPreExpandedRowModel():e._getExpandedRowModel())},createRow:(e,o)=>{e.toggleExpanded=t=>{o.setExpanded(n=>{var r;const i=n===!0?!0:!!(n!=null&&n[e.id]);let l={};if(n===!0?Object.keys(o.getRowModel().rowsById).forEach(s=>{l[s]=!0}):l=n,t=(r=t)!=null?r:!i,!i&&t)return{...l,[e.id]:!0};if(i&&!t){const{[e.id]:s,...u}=l;return u}return n})},e.getIsExpanded=()=>{var t;const n=o.getState().expanded;return!!((t=o.options.getIsRowExpanded==null?void 0:o.options.getIsRowExpanded(e))!=null?t:n===!0||n?.[e.id])},e.getCanExpand=()=>{var t,n,r;return(t=o.options.getRowCanExpand==null?void 0:o.options.getRowCanExpand(e))!=null?t:((n=o.options.enableExpanding)!=null?n:!0)&&!!((r=e.subRows)!=null&&r.length)},e.getIsAllParentsExpanded=()=>{let t=!0,n=e;for(;t&&n.parentId;)n=o.getRow(n.parentId,!0),t=n.getIsExpanded();return t},e.getToggleExpandedHandler=()=>{const t=e.getCanExpand();return()=>{t&&e.toggleExpanded()}}}},ce=0,fe=10,le=()=>({pageIndex:ce,pageSize:fe}),At={getInitialState:e=>({...e,pagination:{...le(),...e?.pagination}}),getDefaultOptions:e=>({onPaginationChange:P("pagination",e)}),createTable:e=>{let o=!1,t=!1;e._autoResetPageIndex=()=>{var n,r;if(!o){e._queue(()=>{o=!0});return}if((n=(r=e.options.autoResetAll)!=null?r:e.options.autoResetPageIndex)!=null?n:!e.options.manualPagination){if(t)return;t=!0,e._queue(()=>{e.resetPageIndex(),t=!1})}},e.setPagination=n=>{const r=i=>z(n,i);return e.options.onPaginationChange==null?void 0:e.options.onPaginationChange(r)},e.resetPagination=n=>{var r;e.setPagination(n?le():(r=e.initialState.pagination)!=null?r:le())},e.setPageIndex=n=>{e.setPagination(r=>{let i=z(n,r.pageIndex);const l=typeof e.options.pageCount>"u"||e.options.pageCount===-1?Number.MAX_SAFE_INTEGER:e.options.pageCount-1;return i=Math.max(0,Math.min(i,l)),{...r,pageIndex:i}})},e.resetPageIndex=n=>{var r,i;e.setPageIndex(n?ce:(r=(i=e.initialState)==null||(i=i.pagination)==null?void 0:i.pageIndex)!=null?r:ce)},e.resetPageSize=n=>{var r,i;e.setPageSize(n?fe:(r=(i=e.initialState)==null||(i=i.pagination)==null?void 0:i.pageSize)!=null?r:fe)},e.setPageSize=n=>{e.setPagination(r=>{const i=Math.max(1,z(n,r.pageSize)),l=r.pageSize*r.pageIndex,s=Math.floor(l/i);return{...r,pageIndex:s,pageSize:i}})},e.setPageCount=n=>e.setPagination(r=>{var i;let l=z(n,(i=e.options.pageCount)!=null?i:-1);return typeof l=="number"&&(l=Math.max(-1,l)),{...r,pageCount:l}}),e.getPageOptions=S(()=>[e.getPageCount()],n=>{let r=[];return n&&n>0&&(r=[...new Array(n)].fill(null).map((i,l)=>l)),r},C(e.options,"debugTable")),e.getCanPreviousPage=()=>e.getState().pagination.pageIndex>0,e.getCanNextPage=()=>{const{pageIndex:n}=e.getState().pagination,r=e.getPageCount();return r===-1?!0:r===0?!1:ne.setPageIndex(n=>n-1),e.nextPage=()=>e.setPageIndex(n=>n+1),e.firstPage=()=>e.setPageIndex(0),e.lastPage=()=>e.setPageIndex(e.getPageCount()-1),e.getPrePaginationRowModel=()=>e.getExpandedRowModel(),e.getPaginationRowModel=()=>(!e._getPaginationRowModel&&e.options.getPaginationRowModel&&(e._getPaginationRowModel=e.options.getPaginationRowModel(e)),e.options.manualPagination||!e._getPaginationRowModel?e.getPrePaginationRowModel():e._getPaginationRowModel()),e.getPageCount=()=>{var n;return(n=e.options.pageCount)!=null?n:Math.ceil(e.getRowCount()/e.getState().pagination.pageSize)},e.getRowCount=()=>{var n;return(n=e.options.rowCount)!=null?n:e.getPrePaginationRowModel().rows.length}}},se=()=>({top:[],bottom:[]}),Et={getInitialState:e=>({rowPinning:se(),...e}),getDefaultOptions:e=>({onRowPinningChange:P("rowPinning",e)}),createRow:(e,o)=>{e.pin=(t,n,r)=>{const i=n?e.getLeafRows().map(u=>{let{id:d}=u;return d}):[],l=r?e.getParentRows().map(u=>{let{id:d}=u;return d}):[],s=new Set([...l,e.id,...i]);o.setRowPinning(u=>{var d,c;if(t==="bottom"){var f,g;return{top:((f=u?.top)!=null?f:[]).filter(m=>!(s!=null&&s.has(m))),bottom:[...((g=u?.bottom)!=null?g:[]).filter(m=>!(s!=null&&s.has(m))),...Array.from(s)]}}if(t==="top"){var a,p;return{top:[...((a=u?.top)!=null?a:[]).filter(m=>!(s!=null&&s.has(m))),...Array.from(s)],bottom:((p=u?.bottom)!=null?p:[]).filter(m=>!(s!=null&&s.has(m)))}}return{top:((d=u?.top)!=null?d:[]).filter(m=>!(s!=null&&s.has(m))),bottom:((c=u?.bottom)!=null?c:[]).filter(m=>!(s!=null&&s.has(m)))}})},e.getCanPin=()=>{var t;const{enableRowPinning:n,enablePinning:r}=o.options;return typeof n=="function"?n(e):(t=n??r)!=null?t:!0},e.getIsPinned=()=>{const t=[e.id],{top:n,bottom:r}=o.getState().rowPinning,i=t.some(s=>n?.includes(s)),l=t.some(s=>r?.includes(s));return i?"top":l?"bottom":!1},e.getPinnedIndex=()=>{var t,n;const r=e.getIsPinned();if(!r)return-1;const i=(t=r==="top"?o.getTopRows():o.getBottomRows())==null?void 0:t.map(l=>{let{id:s}=l;return s});return(n=i?.indexOf(e.id))!=null?n:-1}},createTable:e=>{e.setRowPinning=o=>e.options.onRowPinningChange==null?void 0:e.options.onRowPinningChange(o),e.resetRowPinning=o=>{var t,n;return e.setRowPinning(o?se():(t=(n=e.initialState)==null?void 0:n.rowPinning)!=null?t:se())},e.getIsSomeRowsPinned=o=>{var t;const n=e.getState().rowPinning;if(!o){var r,i;return!!((r=n.top)!=null&&r.length||(i=n.bottom)!=null&&i.length)}return!!((t=n[o])!=null&&t.length)},e._getPinnedRows=(o,t,n)=>{var r;return((r=e.options.keepPinnedRows)==null||r?(t??[]).map(l=>{const s=e.getRow(l,!0);return s.getIsAllParentsExpanded()?s:null}):(t??[]).map(l=>o.find(s=>s.id===l))).filter(Boolean).map(l=>({...l,position:n}))},e.getTopRows=S(()=>[e.getRowModel().rows,e.getState().rowPinning.top],(o,t)=>e._getPinnedRows(o,t,"top"),C(e.options,"debugRows")),e.getBottomRows=S(()=>[e.getRowModel().rows,e.getState().rowPinning.bottom],(o,t)=>e._getPinnedRows(o,t,"bottom"),C(e.options,"debugRows")),e.getCenterRows=S(()=>[e.getRowModel().rows,e.getState().rowPinning.top,e.getState().rowPinning.bottom],(o,t,n)=>{const r=new Set([...t??[],...n??[]]);return o.filter(i=>!r.has(i.id))},C(e.options,"debugRows"))}},Gt={getInitialState:e=>({rowSelection:{},...e}),getDefaultOptions:e=>({onRowSelectionChange:P("rowSelection",e),enableRowSelection:!0,enableMultiRowSelection:!0,enableSubRowSelection:!0}),createTable:e=>{e.setRowSelection=o=>e.options.onRowSelectionChange==null?void 0:e.options.onRowSelectionChange(o),e.resetRowSelection=o=>{var t;return e.setRowSelection(o?{}:(t=e.initialState.rowSelection)!=null?t:{})},e.toggleAllRowsSelected=o=>{e.setRowSelection(t=>{o=typeof o<"u"?o:!e.getIsAllRowsSelected();const n={...t},r=e.getPreGroupedRowModel().flatRows;return o?r.forEach(i=>{i.getCanSelect()&&(n[i.id]=!0)}):r.forEach(i=>{delete n[i.id]}),n})},e.toggleAllPageRowsSelected=o=>e.setRowSelection(t=>{const n=typeof o<"u"?o:!e.getIsAllPageRowsSelected(),r={...t};return e.getRowModel().rows.forEach(i=>{pe(r,i.id,n,!0,e)}),r}),e.getPreSelectedRowModel=()=>e.getCoreRowModel(),e.getSelectedRowModel=S(()=>[e.getState().rowSelection,e.getCoreRowModel()],(o,t)=>Object.keys(o).length?ue(e,t):{rows:[],flatRows:[],rowsById:{}},C(e.options,"debugTable")),e.getFilteredSelectedRowModel=S(()=>[e.getState().rowSelection,e.getFilteredRowModel()],(o,t)=>Object.keys(o).length?ue(e,t):{rows:[],flatRows:[],rowsById:{}},C(e.options,"debugTable")),e.getGroupedSelectedRowModel=S(()=>[e.getState().rowSelection,e.getSortedRowModel()],(o,t)=>Object.keys(o).length?ue(e,t):{rows:[],flatRows:[],rowsById:{}},C(e.options,"debugTable")),e.getIsAllRowsSelected=()=>{const o=e.getFilteredRowModel().flatRows,{rowSelection:t}=e.getState();let n=!!(o.length&&Object.keys(t).length);return n&&o.some(r=>r.getCanSelect()&&!t[r.id])&&(n=!1),n},e.getIsAllPageRowsSelected=()=>{const o=e.getPaginationRowModel().flatRows.filter(r=>r.getCanSelect()),{rowSelection:t}=e.getState();let n=!!o.length;return n&&o.some(r=>!t[r.id])&&(n=!1),n},e.getIsSomeRowsSelected=()=>{var o;const t=Object.keys((o=e.getState().rowSelection)!=null?o:{}).length;return t>0&&t{const o=e.getPaginationRowModel().flatRows;return e.getIsAllPageRowsSelected()?!1:o.filter(t=>t.getCanSelect()).some(t=>t.getIsSelected()||t.getIsSomeSelected())},e.getToggleAllRowsSelectedHandler=()=>o=>{e.toggleAllRowsSelected(o.target.checked)},e.getToggleAllPageRowsSelectedHandler=()=>o=>{e.toggleAllPageRowsSelected(o.target.checked)}},createRow:(e,o)=>{e.toggleSelected=(t,n)=>{const r=e.getIsSelected();o.setRowSelection(i=>{var l;if(t=typeof t<"u"?t:!r,e.getCanSelect()&&r===t)return i;const s={...i};return pe(s,e.id,t,(l=n?.selectChildren)!=null?l:!0,o),s})},e.getIsSelected=()=>{const{rowSelection:t}=o.getState();return ve(e,t)},e.getIsSomeSelected=()=>{const{rowSelection:t}=o.getState();return me(e,t)==="some"},e.getIsAllSubRowsSelected=()=>{const{rowSelection:t}=o.getState();return me(e,t)==="all"},e.getCanSelect=()=>{var t;return typeof o.options.enableRowSelection=="function"?o.options.enableRowSelection(e):(t=o.options.enableRowSelection)!=null?t:!0},e.getCanSelectSubRows=()=>{var t;return typeof o.options.enableSubRowSelection=="function"?o.options.enableSubRowSelection(e):(t=o.options.enableSubRowSelection)!=null?t:!0},e.getCanMultiSelect=()=>{var t;return typeof o.options.enableMultiRowSelection=="function"?o.options.enableMultiRowSelection(e):(t=o.options.enableMultiRowSelection)!=null?t:!0},e.getToggleSelectedHandler=()=>{const t=e.getCanSelect();return n=>{var r;t&&e.toggleSelected((r=n.target)==null?void 0:r.checked)}}}},pe=(e,o,t,n,r)=>{var i;const l=r.getRow(o,!0);t?(l.getCanMultiSelect()||Object.keys(e).forEach(s=>delete e[s]),l.getCanSelect()&&(e[o]=!0)):delete e[o],n&&(i=l.subRows)!=null&&i.length&&l.getCanSelectSubRows()&&l.subRows.forEach(s=>pe(e,s.id,t,n,r))};function ue(e,o){const t=e.getState().rowSelection,n=[],r={},i=function(l,s){return l.map(u=>{var d;const c=ve(u,t);if(c&&(n.push(u),r[u.id]=u),(d=u.subRows)!=null&&d.length&&(u={...u,subRows:i(u.subRows)}),c)return u}).filter(Boolean)};return{rows:i(o.rows),flatRows:n,rowsById:r}}function ve(e,o){var t;return(t=o[e.id])!=null?t:!1}function me(e,o,t){var n;if(!((n=e.subRows)!=null&&n.length))return!1;let r=!0,i=!1;return e.subRows.forEach(l=>{if(!(i&&!r)&&(l.getCanSelect()&&(ve(l,o)?i=!0:r=!1),l.subRows&&l.subRows.length)){const s=me(l,o);s==="all"?i=!0:(s==="some"&&(i=!0),r=!1)}}),r?"all":i?"some":!1}const Se=/([0-9]+)/gm,Ht=(e,o,t)=>Be(L(e.getValue(t)).toLowerCase(),L(o.getValue(t)).toLowerCase()),zt=(e,o,t)=>Be(L(e.getValue(t)),L(o.getValue(t))),Lt=(e,o,t)=>he(L(e.getValue(t)).toLowerCase(),L(o.getValue(t)).toLowerCase()),Ot=(e,o,t)=>he(L(e.getValue(t)),L(o.getValue(t))),kt=(e,o,t)=>{const n=e.getValue(t),r=o.getValue(t);return n>r?1:nhe(e.getValue(t),o.getValue(t));function he(e,o){return e===o?0:e>o?1:-1}function L(e){return typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?"":String(e):typeof e=="string"?e:""}function Be(e,o){const t=e.split(Se).filter(Boolean),n=o.split(Se).filter(Boolean);for(;t.length&&n.length;){const r=t.shift(),i=n.shift(),l=parseInt(r,10),s=parseInt(i,10),u=[l,s].sort();if(isNaN(u[0])){if(r>i)return 1;if(i>r)return-1;continue}if(isNaN(u[1]))return isNaN(l)?-1:1;if(l>s)return 1;if(s>l)return-1}return t.length-n.length}const N={alphanumeric:Ht,alphanumericCaseSensitive:zt,text:Lt,textCaseSensitive:Ot,datetime:kt,basic:Bt},Tt={getInitialState:e=>({sorting:[],...e}),getDefaultColumnDef:()=>({sortingFn:"auto",sortUndefined:1}),getDefaultOptions:e=>({onSortingChange:P("sorting",e),isMultiSortEvent:o=>o.shiftKey}),createColumn:(e,o)=>{e.getAutoSortingFn=()=>{const t=o.getFilteredRowModel().flatRows.slice(10);let n=!1;for(const r of t){const i=r?.getValue(e.id);if(Object.prototype.toString.call(i)==="[object Date]")return N.datetime;if(typeof i=="string"&&(n=!0,i.split(Se).length>1))return N.alphanumeric}return n?N.text:N.basic},e.getAutoSortDir=()=>{const t=o.getFilteredRowModel().flatRows[0];return typeof t?.getValue(e.id)=="string"?"asc":"desc"},e.getSortingFn=()=>{var t,n;if(!e)throw new Error;return ee(e.columnDef.sortingFn)?e.columnDef.sortingFn:e.columnDef.sortingFn==="auto"?e.getAutoSortingFn():(t=(n=o.options.sortingFns)==null?void 0:n[e.columnDef.sortingFn])!=null?t:N[e.columnDef.sortingFn]},e.toggleSorting=(t,n)=>{const r=e.getNextSortingOrder(),i=typeof t<"u"&&t!==null;o.setSorting(l=>{const s=l?.find(a=>a.id===e.id),u=l?.findIndex(a=>a.id===e.id);let d=[],c,f=i?t:r==="desc";if(l!=null&&l.length&&e.getCanMultiSort()&&n?s?c="toggle":c="add":l!=null&&l.length&&u!==l.length-1?c="replace":s?c="toggle":c="replace",c==="toggle"&&(i||r||(c="remove")),c==="add"){var g;d=[...l,{id:e.id,desc:f}],d.splice(0,d.length-((g=o.options.maxMultiSortColCount)!=null?g:Number.MAX_SAFE_INTEGER))}else c==="toggle"?d=l.map(a=>a.id===e.id?{...a,desc:f}:a):c==="remove"?d=l.filter(a=>a.id!==e.id):d=[{id:e.id,desc:f}];return d})},e.getFirstSortDir=()=>{var t,n;return((t=(n=e.columnDef.sortDescFirst)!=null?n:o.options.sortDescFirst)!=null?t:e.getAutoSortDir()==="desc")?"desc":"asc"},e.getNextSortingOrder=t=>{var n,r;const i=e.getFirstSortDir(),l=e.getIsSorted();return l?l!==i&&((n=o.options.enableSortingRemoval)==null||n)&&(!(t&&(r=o.options.enableMultiRemove)!=null)||r)?!1:l==="desc"?"asc":"desc":i},e.getCanSort=()=>{var t,n;return((t=e.columnDef.enableSorting)!=null?t:!0)&&((n=o.options.enableSorting)!=null?n:!0)&&!!e.accessorFn},e.getCanMultiSort=()=>{var t,n;return(t=(n=e.columnDef.enableMultiSort)!=null?n:o.options.enableMultiSort)!=null?t:!!e.accessorFn},e.getIsSorted=()=>{var t;const n=(t=o.getState().sorting)==null?void 0:t.find(r=>r.id===e.id);return n?n.desc?"desc":"asc":!1},e.getSortIndex=()=>{var t,n;return(t=(n=o.getState().sorting)==null?void 0:n.findIndex(r=>r.id===e.id))!=null?t:-1},e.clearSorting=()=>{o.setSorting(t=>t!=null&&t.length?t.filter(n=>n.id!==e.id):[])},e.getToggleSortingHandler=()=>{const t=e.getCanSort();return n=>{t&&(n.persist==null||n.persist(),e.toggleSorting==null||e.toggleSorting(void 0,e.getCanMultiSort()?o.options.isMultiSortEvent==null?void 0:o.options.isMultiSortEvent(n):!1))}}},createTable:e=>{e.setSorting=o=>e.options.onSortingChange==null?void 0:e.options.onSortingChange(o),e.resetSorting=o=>{var t,n;e.setSorting(o?[]:(t=(n=e.initialState)==null?void 0:n.sorting)!=null?t:[])},e.getPreSortedRowModel=()=>e.getGroupedRowModel(),e.getSortedRowModel=()=>(!e._getSortedRowModel&&e.options.getSortedRowModel&&(e._getSortedRowModel=e.options.getSortedRowModel(e)),e.options.manualSorting||!e._getSortedRowModel?e.getPreSortedRowModel():e._getSortedRowModel())}},qt=[ut,yt,$t,Ft,gt,dt,Pt,It,Tt,Rt,Dt,At,Et,Gt,Vt];function Nt(e){var o,t;const n=[...qt,...(o=e._features)!=null?o:[]];let r={_features:n};const i=r._features.reduce((g,a)=>Object.assign(g,a.getDefaultOptions==null?void 0:a.getDefaultOptions(r)),{}),l=g=>r.options.mergeOptions?r.options.mergeOptions(i,g):{...i,...g};let u={...{},...(t=e.initialState)!=null?t:{}};r._features.forEach(g=>{var a;u=(a=g.getInitialState==null?void 0:g.getInitialState(u))!=null?a:u});const d=[];let c=!1;const f={_features:n,options:{...i,...e},initialState:u,_queue:g=>{d.push(g),c||(c=!0,Promise.resolve().then(()=>{for(;d.length;)d.shift()();c=!1}).catch(a=>setTimeout(()=>{throw a})))},reset:()=>{r.setState(r.initialState)},setOptions:g=>{const a=z(g,r.options);r.options=l(a)},getState:()=>r.options.state,setState:g=>{r.options.onStateChange==null||r.options.onStateChange(g)},_getRowId:(g,a,p)=>{var m;return(m=r.options.getRowId==null?void 0:r.options.getRowId(g,a,p))!=null?m:`${p?[p.id,a].join("."):a}`},getCoreRowModel:()=>(r._getCoreRowModel||(r._getCoreRowModel=r.options.getCoreRowModel(r)),r._getCoreRowModel()),getRowModel:()=>r.getPaginationRowModel(),getRow:(g,a)=>{let p=(a?r.getPrePaginationRowModel():r.getRowModel()).rowsById[g];if(!p&&(p=r.getCoreRowModel().rowsById[g],!p))throw new Error;return p},_getDefaultColumnDef:S(()=>[r.options.defaultColumn],g=>{var a;return g=(a=g)!=null?a:{},{header:p=>{const m=p.header.column.columnDef;return m.accessorKey?m.accessorKey:m.accessorFn?m.id:null},cell:p=>{var m,R;return(m=(R=p.renderValue())==null||R.toString==null?void 0:R.toString())!=null?m:null},...r._features.reduce((p,m)=>Object.assign(p,m.getDefaultColumnDef==null?void 0:m.getDefaultColumnDef()),{}),...g}},C(e,"debugColumns")),_getColumnDefs:()=>r.options.columns,getAllColumns:S(()=>[r._getColumnDefs()],g=>{const a=function(p,m,R){return R===void 0&&(R=0),p.map(h=>{const y=st(r,h,R,m),F=h;return y.columns=F.columns?a(F.columns,y,R+1):[],y})};return a(g)},C(e,"debugColumns")),getAllFlatColumns:S(()=>[r.getAllColumns()],g=>g.flatMap(a=>a.getFlatColumns()),C(e,"debugColumns")),_getAllFlatColumnsById:S(()=>[r.getAllFlatColumns()],g=>g.reduce((a,p)=>(a[p.id]=p,a),{}),C(e,"debugColumns")),getAllLeafColumns:S(()=>[r.getAllColumns(),r._getOrderColumnsFn()],(g,a)=>{let p=g.flatMap(m=>m.getLeafColumns());return a(p)},C(e,"debugColumns")),getColumn:g=>r._getAllFlatColumnsById()[g]};Object.assign(r,f);for(let g=0;gS(()=>[e.options.data],o=>{const t={rows:[],flatRows:[],rowsById:{}},n=function(r,i,l){i===void 0&&(i=0);const s=[];for(let d=0;de._autoResetPageIndex()))}function Z(){return!0}const Ut=Symbol("merge-proxy"),Xt={get(e,o,t){return o===Ut?t:e.get(o)},has(e,o){return e.has(o)},set:Z,deleteProperty:Z,getOwnPropertyDescriptor(e,o){return{configurable:!0,enumerable:!0,get(){return e.get(o)},set:Z,deleteProperty:Z}},ownKeys(e){return e.keys()}};function ae(e){return"value"in e?e.value:e}function j(){for(var e=arguments.length,o=new Array(e),t=0;t=0;r--){const i=ae(o[r])[n];if(i!==void 0)return i}},has(n){for(let r=o.length-1;r>=0;r--)if(n in ae(o[r]))return!0;return!1},keys(){const n=[];for(let r=0;r()=>typeof e.render=="function"||typeof e.render=="object"?I(e.render,e.props):e.render});function Pe(e){return j(e,{data:w(e.data)})}function Kt(e){const o=Ne(e.data),t=j({state:{},onStateChange:()=>{},renderFallbackValue:null,mergeOptions(i,l){return o?{...i,...l}:j(i,l)}},o?Pe(e):e),n=Nt(t);if(o){const i=je(e.data);Ue(i,()=>{n.setState(l=>({...l,data:i.value}))},{immediate:!0})}const r=ge(n.initialState);return Xe(()=>{n.setOptions(i=>{var l;const s=new Proxy({},{get:(u,d)=>r.value[d]});return j(i,o?Pe(e):e,{state:j(s,(l=e.state)!=null?l:{}),onStateChange:u=>{u instanceof Function?r.value=u(r.value):r.value=u,e.onStateChange==null||e.onStateChange(u)}})})}),n}const Wt=["colSpan"],Jt=W({__name:"AdminTable",props:{table:{}},setup(e){return(o,t)=>($(),x("div",null,[v("div",null,[v("table",null,[v("thead",null,[($(!0),x(G,null,k(e.table.getHeaderGroups(),n=>($(),x("tr",{key:n.id},[($(!0),x(G,null,k(n.headers,r=>($(),x("th",{key:r.id,colSpan:r.colSpan,style:$e({width:`${r.getSize()}px`}),class:"cell cell--header"},[r.isPlaceholder?b("",!0):($(),U(w(ye),{key:0,render:r.column.columnDef.header,props:r.getContext()},null,8,["render","props"]))],12,Wt))),128))]))),128))]),v("tbody",null,[($(!0),x(G,null,k(e.table.getRowModel().rows,n=>($(),x("tr",{key:n.id},[($(!0),x(G,null,k(n.getVisibleCells(),r=>($(),x("td",{key:r.id,style:$e({width:`${r.column.getSize()}px`}),class:"cell"},[X(w(ye),{render:r.column.columnDef.cell,props:r.getContext()},null,8,["render","props"])],4))),128))]))),128))])])])]))}}),Yt=Ie(Jt,[["__scopeId","data-v-2688678f"]]),Qt=["loading"],Zt=W({__name:"ModalForm",props:{isActive:{type:Boolean},overlay:{type:Boolean,default:!0},loading:{type:Boolean,default:!1}},emits:["close","submit"],setup(e,{emit:o}){const t=o;function n(){t("submit")}return(r,i)=>($(),U(tt,{isActive:e.isActive,overlay:e.overlay,onClose:i[1]||(i[1]=l=>t("close"))},{default:A(()=>[v("form",{onSubmit:de(n,["prevent"])},[X(et,{class:"w-[60ch] mx-auto"},{"secondary-action":A(()=>[v("craft-button",{type:"reset",onClick:i[0]||(i[0]=l=>t("close")),appearance:"plain"},V(w(_)("Cancel")),1)]),"primary-action":A(()=>[v("craft-button",{type:"submit",variant:"primary",loading:e.loading},V(w(_)("Save")),9,Qt)]),default:A(()=>[Ke(r.$slots,"default")]),_:3})],32)]),_:3},8,["isActive","overlay"]))}}),B=e=>({url:B.url(e),method:"post"});B.definition={methods:["post"],url:"/admin/settings/site-groups"};B.url=e=>B.definition.url+De(e);B.post=e=>({url:B.url(e),method:"post"});const T=(e,o)=>({url:T.url(e,o),method:"delete"});T.definition={methods:["delete"],url:"/admin/settings/site-groups/{groupId}"};T.url=(e,o)=>{(typeof e=="string"||typeof e=="number")&&(e={groupId:e}),Array.isArray(e)&&(e={groupId:e[0]}),e=nt(e);const t={groupId:e.groupId};return T.definition.url.replace("{groupId}",t.groupId.toString()).replace(/\/+$/,"")+De(o)};T.delete=(e,o)=>({url:T.url(e,o),method:"delete"});const bt={type:"button",icon:"",size:"small",slot:"invoker"},en=["label"],tn={slot:"content"},nn=W({__name:"SiteGroupActions",emits:["click:rename","click:delete"],setup(e,{emit:o}){const t=o;return(n,r)=>($(),x("craft-action-menu",null,[v("craft-button",bt,[v("craft-icon",{name:"gear",label:w(_)("Site group Actions")},null,8,en)]),v("div",tn,[v("craft-action-item",{onClick:r[0]||(r[0]=de(i=>t("click:rename"),["prevent"]))},V(w(_)("Rename Group")),1),v("craft-action-item",{variant:"danger",onClick:r[1]||(r[1]=de(i=>t("click:delete"),["prevent"]))},V(w(_)("Delete Group")),1)])]))}}),on={class:"flex gap-2 items-center"},rn={class:"title text-xl"},ln={variant:"primary"},sn={class:"interior"},un={class:""},an=["active"],gn=["url","active"],dn={class:"mt-4 flex gap-2 border-t border-t-border-subtle pt-2"},cn={class:"bg-white border border-border-subtle rounded-sm shadow-sm overflow-hidden"},fn={key:2,class:"py-20"},pn={class:"w-[60ch] mx-auto text-center grid gap-3 justify-items-center text-gray-500"},mn=["label","help-text"],Sn={slot:"after"},Cn={variant:"info",appearance:"plain",class:"p-0",icon:"lightbulb"},vn={href:"https://craftcms.com/docs/5.x/configure.html#control-panel-settings"},hn=["label","help-text","has-feedback-for"],wn=[".choiceValue",".hint"],Rn={slot:"after"},_n={variant:"info",appearance:"plain",class:"p-0",icon:"lightbulb"},$n={href:"https://craftcms.com/docs/5.x/configure.html#control-panel-settings"},Fn={slot:"feedback"},xn={key:0,class:"error-list"},Vn=W({__name:"SettingsSitesIndex",props:{readOnly:{type:Boolean},group:{},groups:{},sites:{},nameSuggestions:{},flash:{}},setup(e){const o=e,t=ge(!1),n=ot(),r=We({id:o.group?.id??null,name:o.group?.name??""});function i(){r.clearErrors().submit(B(),{onSuccess:()=>{t.value=!1,r.reset()}})}function l(f){f==="create"?(r.name="",r.id=null):f==="update"&&(r.name=o.group?.rawName??o.group?.name??"",r.id=o.group?.id??null),t.value=!0}const s=ge([n.accessor("name",{header:()=>_("Name"),cell:({row:f,getValue:g})=>I("a",{href:`/admin/settings/sites/${f.original.id}`},I("div",{class:"flex gap-2"},[I("craft-indicator",{variant:f.original.enabled?"success":"danger"}),I("span",g())]))}),n.accessor("handle",{header:()=>_("Handle"),cell:f=>I("code",f.getValue())}),n.accessor("language",{header:()=>_("Language"),cell:f=>I("code",f.getValue())}),n.accessor("primary",{header:()=>_("Primary"),cell:f=>f.getValue()?I("craft-icon",{name:"check"}):""}),n.accessor("baseUrl",{header:()=>_("Base URL"),cell:f=>I("code",f.getValue())}),n.accessor("group.name",{header:()=>_("Group")}),n.display({id:"delete",cell:()=>I("div",{class:"flex justify-end gap-2"},I("craft-button",{size:"small",icon:!0,type:"button",appearance:"plain","@click":()=>alert("To do")},I("craft-icon",{name:"x",label:_("Delete site")})))})]),u=Kt({get data(){return o.sites},get columns(){return s.value},getCoreRowModel:jt(),defaultColumn:{size:"auto",minSize:50,maxSize:200}});function d(){o.group?.id&&confirm(_("Are you sure you want to delete this group?"))&&Qe.delete(T({groupId:o.group.id}))}const c=Je(()=>o.group?.name?o.group.name:_("Sites"));return(f,g)=>($(),x(G,null,[X(be,{debug:{form:w(r),$props:f.$props},"full-width":!0,title:c.value},{title:A(()=>[v("div",on,[v("h1",rn,V(c.value),1),e.group?($(),U(nn,{key:0,class:"inline-block","onClick:rename":g[0]||(g[0]=a=>l("update")),"onClick:delete":d})):b("",!0)])]),actions:A(()=>[v("craft-button",ln,[g[6]||(g[6]=v("craft-icon",{name:"plus",slot:"prefix"},null,-1)),q(" "+V(w(_)("New site")),1)])]),default:A(()=>[v("div",sn,[v("div",un,[v("nav",null,[v("craft-nav-list",null,[v("craft-nav-item",{url:"/admin/settings/sites",active:!e.group},V(w(_)("All Sites")),9,an),($(!0),x(G,null,k(e.groups,a=>($(),x("craft-nav-item",{key:a.id,url:`/admin/settings/sites?groupId=${a.id}`,active:e.group&&a.id===e.group.id,"suffix-only-on-hover":""},V(a.name),9,gn))),128))])]),v("div",dn,[v("craft-button",{type:"button",onClick:g[1]||(g[1]=a=>l("create")),size:"small"},[g[7]||(g[7]=v("craft-icon",{name:"plus",slot:"prefix"},null,-1)),q(" "+V(w(_)("New Group")),1)])])]),v("div",null,[v("div",cn,[v("div",null,[e.readOnly?($(),U(Ze,{key:0})):b("",!0),e.sites.length?($(),U(Yt,{key:1,table:w(u)},null,8,["table"])):($(),x("div",fn,[v("div",pn,[g[9]||(g[9]=v("craft-icon",{name:"light/earth-americas",style:{"font-size":"calc(48rem / 16)"}},null,-1)),v("p",null,V(w(_)("No sites exist for this group yet.")),1),v("craft-button",null,[g[8]||(g[8]=v("craft-icon",{name:"plus",slot:"prefix"},null,-1)),q(" "+V(w(_)("New site")),1)])])]))])])])])]),_:1},8,["debug","title"]),X(Zt,{"is-active":t.value,onClose:g[5]||(g[5]=a=>{t.value=!1,w(r).reset()}),onSubmit:i,loading:w(r).processing},{default:A(()=>[Fe(v("craft-input",{name:"id",id:"id","onUpdate:modelValue":g[2]||(g[2]=a=>w(r).id=a),type:"hidden"},null,512),[[xe,w(r).id]]),X(w(Ye),{data:"nameSuggestions"},{fallback:A(()=>[v("craft-input",{readonly:"",name:"readonly-name",label:w(_)("Group Name"),"help-text":w(_)("What this group will be called in the control panel.")},[v("div",Sn,[v("craft-callout",Cn,[q(V(w(_)("This can begin with an environment variable."))+" ",1),v("a",vn,V(w(_)("Learn more")),1)])])],8,mn)]),default:A(()=>[Fe(v("craft-combobox",{".requireOptionMatch":!1,label:w(_)("Group Name"),id:"name",name:"name",required:"","help-text":w(_)("What this group will be called in the control panel."),"has-feedback-for":w(r).errors?.name?"error":"","show-all-on-empty":"","onUpdate:modelValue":g[3]||(g[3]=a=>w(r).name=a),onModelValueChanged:g[4]||(g[4]=a=>w(r).name=a.target?.modelValue)},[($(!0),x(G,null,k(e.nameSuggestions,(a,p)=>($(),x(G,{key:p},[($(!0),x(G,null,k(a.data,m=>($(),x("craft-option",{key:m.name,".choiceValue":m.name,".hint":m.hint},V(m.name),41,wn))),128))],64))),128)),v("div",Rn,[v("craft-callout",_n,[q(V(w(_)("This can begin with an environment variable."))+" ",1),v("a",$n,V(w(_)("Learn more")),1)])]),v("div",Fn,[w(r).errors?.name?($(),x("ul",xn,[v("li",null,V(w(r).errors.name),1)])):b("",!0)])],40,hn),[[xe,w(r).name]])]),_:1})]),_:1},8,["is-active","loading"])],64))}}),En=Ie(Vn,[["__scopeId","data-v-63f287b8"]]);export{En as default}; diff --git a/resources/build/_plugin-vue_export-helper.js b/resources/build/_plugin-vue_export-helper.js index 5d131786687..28c1ea5d6e2 100644 --- a/resources/build/_plugin-vue_export-helper.js +++ b/resources/build/_plugin-vue_export-helper.js @@ -1 +1 @@ -import{g as D,h as A,i as $,j as F,k as W,l as P,s as y,m as k,n as h,p as m,q as M,v as B,u as G}from"./cp2.js";function z(e,i){if(typeof d3<"u"&&typeof d3FormatLocaleDefinition<"u")return typeof i>"u"&&(i=",.0f"),d3.formatLocale(d3FormatLocaleDefinition).format(i)(e);const n=typeof e=="string"?parseFloat(e):e;if(isNaN(n))return String(e);if(i){const t=i.includes(","),r=i.match(/\.(\d+)/),u=r?parseInt(r[1],10):0;return new Intl.NumberFormat("en-US",{useGrouping:t,minimumFractionDigits:u,maximumFractionDigits:u}).format(n)}return new Intl.NumberFormat("en-US",{useGrouping:!0,minimumFractionDigits:0,maximumFractionDigits:0}).format(n)}function j(e){let i=1,n,t;const r=[...e];if((n=t=r.indexOf("{"))===-1)return[e];let u=[r.slice(0,t).join("")];for(;;){let a=r.indexOf("{",t+1),o=r.indexOf("}",t+1);if(a===-1&&o===-1||(a===-1&&(a=r.length),o!==-1&&o>a?(i++,t=a):o!==-1&&(i--,t=o),i===0&&(u.push(r.slice(n+1,t).join("").split(",",3)),n=t+1,u.push(r.slice(n,a===-1?r.length:a).join("")),n=a===-1?r.length:a),i!==0&&(a===-1||o===-1)))break}return i!==0?!1:u}function R(e,i={}){const n=e[0]?.trim();if(!n||typeof i[n]>"u")return`{${e.join(",")}}`;const t=i[n],r=typeof e[1]<"u"?e[1].trim():"none";switch(r){case"number":return(()=>{let u=typeof e[2]<"u"?e[2].trim():null;if(u!==null&&u!=="integer")throw"Message format 'number' is only supported for integer values.";let a=z(t),o;return u===null&&(o=`${t}`.indexOf("."))!==-1&&(a+=`.${t.substring(o+1)}`),a})();case"none":return t;case"select":return(()=>{if(typeof e[2]>"u")return!1;let u=j(e[2]);if(u===!1)return!1;let a=u.length,o=!1;for(let s=0;s+1{if(typeof e[2]>"u")return!1;let u=j(e[2]);if(u===!1)return!1;const a=u.length;let o=!1,s=0;for(let l=0;l+1v.replace("#",String(t-s))).join(",")}}return o===!1?!1:w(o,i)})();default:throw new Error(`Message format '${r}' is not supported.`)}}function w(e,i){let n;if((n=j(e))===!1)throw new Error("Message pattern is invalid.");for(let t=0;t{var i;const n=e[0],t=(i=F())===null||i===void 0?void 0:i.proxy,r=t??A();if(r==null&&!W())throw new Error("injectLocal must be called in setup");return r&&b.has(r)&&n in b.get(r)?b.get(r)[n]:P(...e)},V=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const H=Object.prototype.toString,J=e=>H.call(e)==="[object Object]";function O(e){return e.endsWith("rem")?Number.parseFloat(e)*16:Number.parseFloat(e)}function x(e){return Array.isArray(e)?e:[e]}function K(e,i,n){return D(e,i,{...n,immediate:!0})}const E=V?window:void 0;function X(e){var i;const n=h(e);return(i=n?.$el)!==null&&i!==void 0?i:n}function Y(...e){const i=[],n=()=>{i.forEach(o=>o()),i.length=0},t=(o,s,l,c)=>(o.addEventListener(s,l,c),()=>o.removeEventListener(s,l,c)),r=m(()=>{const o=x(h(e[0])).filter(s=>s!=null);return o.every(s=>typeof s!="string")?o:void 0}),u=K(()=>{var o,s;return[(o=(s=r.value)===null||s===void 0?void 0:s.map(l=>X(l)))!==null&&o!==void 0?o:[E].filter(l=>l!=null),x(h(r.value?e[1]:e[0])),x(G(r.value?e[2]:e[1])),h(r.value?e[3]:e[2])]},([o,s,l,c])=>{if(n(),!o?.length||!s?.length||!l?.length)return;const p=J(c)?{...c}:c;i.push(...o.flatMap(d=>s.flatMap(v=>l.map(g=>t(d,v,g,p)))))},{flush:"post"}),a=()=>{u(),n()};return Q(n),a}function Z(){const e=y(!1),i=F();return i&&B(()=>{e.value=!0},i),e}function q(e){const i=Z();return m(()=>(i.value,!!e()))}const _=Symbol("vueuse-ssr-width");function ee(){const e=W()?U(_,null):null;return typeof e=="number"?e:void 0}function re(e,i={}){const{window:n=E,ssrWidth:t=ee()}=i,r=q(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function"),u=y(typeof t=="number"),a=y(),o=y(!1),s=l=>{o.value=l.matches};return k(()=>{if(u.value){u.value=!r.value,o.value=h(e).split(",").some(l=>{const c=l.includes("not all"),p=l.match(/\(\s*min-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),d=l.match(/\(\s*max-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/);let v=!!(p||d);return p&&v&&(v=t>=O(p[1])),d&&v&&(v=t<=O(d[1])),c?!v:v});return}r.value&&(a.value=n.matchMedia(h(e)),o.value=a.value.matches)}),Y(a,"change",s,{passive:!0}),m(()=>o.value)}function ie(e,i){const n=M(e),t=m(()=>Array.isArray(n.value)?n.value:Object.keys(n.value)),r=M(t.value.indexOf(t.value[0])),u=m(()=>c(r.value)),a=m(()=>r.value===0),o=m(()=>r.value===t.value.length-1),s=m(()=>t.value[r.value+1]),l=m(()=>t.value[r.value-1]);function c(f){return Array.isArray(n.value)?n.value[f]:n.value[t.value[f]]}function p(f){if(t.value.includes(f))return c(t.value.indexOf(f))}function d(f){t.value.includes(f)&&(r.value=t.value.indexOf(f))}function v(){o.value||r.value++}function g(){a.value||r.value--}function I(f){S(f)&&d(f)}function N(f){return t.value.indexOf(f)===r.value+1}function T(f){return t.value.indexOf(f)===r.value-1}function L(f){return t.value.indexOf(f)===r.value}function C(f){return r.valuet.value.indexOf(f)}return{steps:n,stepNames:t,index:r,current:u,next:s,previous:l,isFirst:a,isLast:o,at:c,get:p,goTo:d,goToNext:v,goToPrevious:g,goBackTo:I,isNext:N,isPrevious:T,isCurrent:L,isBefore:C,isAfter:S}}const oe=(e,i)=>{const n=e.__vccOpts||e;for(const[t,r]of i)n[t]=r;return n};export{oe as _,re as a,ie as b,ne as t,Y as u}; +import{g as C,h as W,i as F,j as E,k as N,l as P,s as y,m as B,n as h,p as m,q as M,v as G,u as R}from"./cp2.js";function z(e,r){if(typeof d3<"u"&&typeof d3FormatLocaleDefinition<"u")return r===void 0&&(r=",.0f"),d3.formatLocale(d3FormatLocaleDefinition).format(r)(e);let n=typeof e=="string"?parseFloat(e):e;if(isNaN(n))return String(e);if(r){let t=r.includes(","),i=r.match(/\.(\d+)/),u=i?parseInt(i[1],10):0;return new Intl.NumberFormat("en-US",{useGrouping:t,minimumFractionDigits:u,maximumFractionDigits:u}).format(n)}return new Intl.NumberFormat("en-US",{useGrouping:!0,minimumFractionDigits:0,maximumFractionDigits:0}).format(n)}function x(e){let r=1,n,t,i=[...e];if((n=t=i.indexOf("{"))===-1)return[e];let u=[i.slice(0,t).join("")];for(;;){let s=i.indexOf("{",t+1),o=i.indexOf("}",t+1);if(s===-1&&o===-1||(s===-1&&(s=i.length),o!==-1&&o>s?(r++,t=s):o!==-1&&(r--,t=o),r===0&&(u.push(i.slice(n+1,t).join("").split(",",3)),n=t+1,u.push(i.slice(n,s===-1?i.length:s).join("")),n=s===-1?i.length:s),r!==0&&(s===-1||o===-1)))break}return r===0?u:!1}function K(e,r={}){let n=e[0]?.trim();if(!n||r[n]===void 0)return`{${e.join(",")}}`;let t=r[n],i=e[1]===void 0?"none":e[1].trim();switch(i){case"number":return(()=>{let u=e[2]===void 0?null:e[2].trim();if(u!==null&&u!=="integer")throw"Message format 'number' is only supported for integer values.";let s=z(t),o;return u===null&&(o=`${t}`.indexOf("."))!==-1&&(s+=`.${t.substring(o+1)}`),s})();case"none":return t;case"select":return(()=>{if(e[2]===void 0)return!1;let u=x(e[2]);if(u===!1)return!1;let s=u.length,o=!1;for(let a=0;a+1{if(e[2]===void 0)return!1;let u=x(e[2]);if(u===!1)return!1;let s=u.length,o=!1,a=0;for(let l=0;l+1p.replace("#",String(t-a))).join(",")}}return o===!1?!1:S(o,r)})();default:throw Error(`Message format '${i}' is not supported.`)}}function S(e,r){let n;if((n=x(e))===!1)throw Error("Message pattern is invalid.");for(let t=0;t{var r;const n=e[0],t=(r=E())===null||r===void 0?void 0:r.proxy,i=t??W();if(i==null&&!N())throw new Error("injectLocal must be called in setup");return i&&b.has(i)&&n in b.get(i)?b.get(i)[n]:P(...e)},V=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const H=Object.prototype.toString,J=e=>H.call(e)==="[object Object]";function A(e){return e.endsWith("rem")?Number.parseFloat(e)*16:Number.parseFloat(e)}function j(e){return Array.isArray(e)?e:[e]}function X(e,r,n){return C(e,r,{...n,immediate:!0})}const O=V?window:void 0;function Y(e){var r;const n=h(e);return(r=n?.$el)!==null&&r!==void 0?r:n}function k(...e){const r=[],n=()=>{r.forEach(o=>o()),r.length=0},t=(o,a,l,f)=>(o.addEventListener(a,l,f),()=>o.removeEventListener(a,l,f)),i=m(()=>{const o=j(h(e[0])).filter(a=>a!=null);return o.every(a=>typeof a!="string")?o:void 0}),u=X(()=>{var o,a;return[(o=(a=i.value)===null||a===void 0?void 0:a.map(l=>Y(l)))!==null&&o!==void 0?o:[O].filter(l=>l!=null),j(h(i.value?e[1]:e[0])),j(R(i.value?e[2]:e[1])),h(i.value?e[3]:e[2])]},([o,a,l,f])=>{if(n(),!o?.length||!a?.length||!l?.length)return;const v=J(f)?{...f}:f;r.push(...o.flatMap(d=>a.flatMap(p=>l.map(g=>t(d,p,g,v)))))},{flush:"post"}),s=()=>{u(),n()};return Q(n),s}function Z(){const e=y(!1),r=E();return r&&G(()=>{e.value=!0},r),e}function q(e){const r=Z();return m(()=>(r.value,!!e()))}function _(e){return typeof e=="function"?e:typeof e=="string"?r=>r.key===e:Array.isArray(e)?r=>e.includes(r.key):()=>!0}function ie(...e){let r,n,t={};e.length===3?(r=e[0],n=e[1],t=e[2]):e.length===2?typeof e[1]=="object"?(r=!0,n=e[0],t=e[1]):(r=e[0],n=e[1]):(r=!0,n=e[0]);const{target:i=O,eventName:u="keydown",passive:s=!1,dedupe:o=!1}=t,a=_(r);return k(i,u,f=>{f.repeat&&h(o)||a(f)&&n(f)},s)}const ee=Symbol("vueuse-ssr-width");function te(){const e=N()?U(ee,null):null;return typeof e=="number"?e:void 0}function oe(e,r={}){const{window:n=O,ssrWidth:t=te()}=r,i=q(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function"),u=y(typeof t=="number"),s=y(),o=y(!1),a=l=>{o.value=l.matches};return B(()=>{if(u.value){u.value=!i.value,o.value=h(e).split(",").some(l=>{const f=l.includes("not all"),v=l.match(/\(\s*min-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),d=l.match(/\(\s*max-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/);let p=!!(v||d);return v&&p&&(p=t>=A(v[1])),d&&p&&(p=t<=A(d[1])),f?!p:p});return}i.value&&(s.value=n.matchMedia(h(e)),o.value=s.value.matches)}),k(s,"change",a,{passive:!0}),m(()=>o.value)}function ue(e,r){const n=M(e),t=m(()=>Array.isArray(n.value)?n.value:Object.keys(n.value)),i=M(t.value.indexOf(t.value[0])),u=m(()=>f(i.value)),s=m(()=>i.value===0),o=m(()=>i.value===t.value.length-1),a=m(()=>t.value[i.value+1]),l=m(()=>t.value[i.value-1]);function f(c){return Array.isArray(n.value)?n.value[c]:n.value[t.value[c]]}function v(c){if(t.value.includes(c))return f(t.value.indexOf(c))}function d(c){t.value.includes(c)&&(i.value=t.value.indexOf(c))}function p(){o.value||i.value++}function g(){s.value||i.value--}function I(c){w(c)&&d(c)}function L(c){return t.value.indexOf(c)===i.value+1}function D(c){return t.value.indexOf(c)===i.value-1}function T(c){return t.value.indexOf(c)===i.value}function $(c){return i.valuet.value.indexOf(c)}return{steps:n,stepNames:t,index:i,current:u,next:a,previous:l,isFirst:s,isLast:o,at:f,get:v,goTo:d,goToNext:p,goToPrevious:g,goBackTo:I,isNext:L,isPrevious:D,isCurrent:T,isBefore:$,isAfter:w}}const ae=(e,r)=>{const n=e.__vccOpts||e;for(const[t,i]of r)n[t]=i;return n};export{ae as _,ue as a,oe as b,re as i,ie as o,k as u}; diff --git a/resources/build/assets/CalloutReadOnly.css b/resources/build/assets/CalloutReadOnly.css index 417bf54b65f..02395e605bb 100644 --- a/resources/build/assets/CalloutReadOnly.css +++ b/resources/build/assets/CalloutReadOnly.css @@ -1 +1 @@ -.system-info[data-v-0a723ce7]{display:grid;grid-template-columns:2rem auto;gap:var(--c-spacing-md);align-items:center;color:currentColor}.system-info__icon[data-v-0a723ce7]{aspect-ratio:1}[data-v-0a723ce7] svg{fill:currentColor;max-width:100%;height:auto}.edition-logo[data-v-f8b4ece7]{-webkit-user-select:none;user-select:none;border:1px solid currentColor;border-radius:3px;display:inline-flex;box-sizing:content-box;font-size:11px;padding-block:6px;padding-inline:7px 5px;line-height:8px;font-weight:600;letter-spacing:1.7px;text-transform:uppercase}.dev-mode[data-v-52fa7a33]{padding:calc(var(--spacing) * 2);text-align:center;background-image:repeating-linear-gradient(-45deg,transparent,transparent 12px,var(--color-yellow-400) 12px,var(--color-yellow-400) 20px);background-color:var(--color-slate-900)}.cp-sidebar[data-v-db2bd122]{height:100%;width:var(--global-sidebar-width);background-color:var(--c-bg-overlay);display:grid;grid-template-rows:minmax(0,auto) 1fr minmax(0,auto)}.cp-sidebar[data-mode=docked][data-v-db2bd122]{position:relative;transform:0}.cp-sidebar[data-mode=floating][data-v-db2bd122]{position:fixed;inset-block-start:0;inset-block-end:0;inset-inline-start:0;inset-inline-end:auto;border-radius:0 var(--c-radius-md) var(--c-radius-md) 0;box-shadow:var(--c-shadow-lg);transform:translate(0);max-width:90%;z-index:100;transition:transform .2s cubic-bezier(0,.55,.45,1)}.cp-sidebar[data-visibility=hidden][data-v-db2bd122]{transform:translate(-100%)}.cp-sidebar__body[data-v-db2bd122]{padding-block:var(--c-spacing-md);padding-inline:var(--c-spacing-md)}.sidebar-header[data-v-db2bd122]{padding-block:var(--c-spacing-md);padding-inline:var(--c-spacing-md);display:flex;justify-content:space-between;align-items:center}.cp-sidebar__body[data-v-db2bd122]{overflow-y:scroll;background:linear-gradient(#fff 30%,#fff0) center top,linear-gradient(#fff0,#fff 70%) center bottom,linear-gradient(to bottom,#0000001a,#0000) center top,linear-gradient(to top,#0000001a,#0000) center bottom;background-repeat:no-repeat;background-size:100% 2.5rem,100% 2.5rem,100% .5rem,100% .5rem;background-attachment:local,local,scroll,scroll}pre[data-v-7ba274be]{font-size:.7rem;padding:var(--c-spacing-md);border:1px solid var(--color-slate-400);background-color:var(--color-slate-200);border-radius:var(--c-radius-md);overflow:auto}.cp[data-v-b3795632]{display:grid}.cp__header[data-v-b3795632]{color:var(--color-slate-200);background-color:var(--color-slate-950)}.container[data-v-b3795632]{max-width:var(--global-content-width);margin:0 auto;padding-inline:var(--c-spacing-lg)}@media screen and (min-width:1024px){.cp[data-v-b3795632]{grid-template-columns:var(--v9f03939a) minmax(0,1fr);grid-template-areas:"header header" "sidebar main";grid-template-rows:auto 1fr;min-height:100vh}.cp__header[data-v-b3795632]{grid-area:header}.cp__sidebar[data-v-b3795632]{grid-area:sidebar}.cp__main[data-v-b3795632]{grid-area:main}} +.system-info[data-v-0a723ce7]{display:grid;grid-template-columns:2rem auto;gap:var(--c-spacing-md);align-items:center;color:currentColor}.system-info__icon[data-v-0a723ce7]{aspect-ratio:1}[data-v-0a723ce7] svg{fill:currentColor;max-width:100%;height:auto}.nav-indicator[data-v-21e92630]{--nav-item-indicator-size: .25rem ;display:inline-flex;width:var(--nav-item-indicator-size);border-radius:var(--c-radius-full);aspect-ratio:1;background-color:currentcolor}.nav-indicator[active][data-v-21e92630]{--nav-item-indicator-size: .375rem }.edition-logo[data-v-f8b4ece7]{-webkit-user-select:none;user-select:none;border:1px solid currentColor;border-radius:3px;display:inline-flex;box-sizing:content-box;font-size:11px;padding-block:6px;padding-inline:7px 5px;line-height:8px;font-weight:600;letter-spacing:1.7px;text-transform:uppercase}.dev-mode[data-v-52fa7a33]{padding:calc(var(--spacing) * 2);text-align:center;background-image:repeating-linear-gradient(-45deg,transparent,transparent 12px,var(--color-yellow-400) 12px,var(--color-yellow-400) 20px);background-color:var(--color-slate-900)}.cp-sidebar[data-v-db2bd122]{height:100%;width:var(--global-sidebar-width);background-color:var(--c-bg-overlay);display:grid;grid-template-rows:minmax(0,auto) 1fr minmax(0,auto)}.cp-sidebar[data-mode=docked][data-v-db2bd122]{position:relative;transform:0}.cp-sidebar[data-mode=floating][data-v-db2bd122]{position:fixed;inset-block-start:0;inset-block-end:0;inset-inline-start:0;inset-inline-end:auto;border-radius:0 var(--c-radius-md) var(--c-radius-md) 0;box-shadow:var(--c-shadow-lg);transform:translate(0);max-width:90%;z-index:100;transition:transform .2s cubic-bezier(0,.55,.45,1)}.cp-sidebar[data-visibility=hidden][data-v-db2bd122]{transform:translate(-100%)}.cp-sidebar__body[data-v-db2bd122]{padding-block:var(--c-spacing-md);padding-inline:var(--c-spacing-md)}.sidebar-header[data-v-db2bd122]{padding-block:var(--c-spacing-md);padding-inline:var(--c-spacing-md);display:flex;justify-content:space-between;align-items:center}.cp-sidebar__body[data-v-db2bd122]{overflow-y:scroll;background:linear-gradient(#fff 30%,#fff0) center top,linear-gradient(#fff0,#fff 70%) center bottom,linear-gradient(to bottom,#0000001a,#0000) center top,linear-gradient(to top,#0000001a,#0000) center bottom;background-repeat:no-repeat;background-size:100% 2.5rem,100% 2.5rem,100% .5rem,100% .5rem;background-attachment:local,local,scroll,scroll}pre[data-v-0fbfca53]{font-size:.7rem;padding:var(--c-spacing-md);border:1px solid var(--color-slate-400);background-color:var(--color-slate-50);border-radius:var(--c-radius-md);overflow:auto}.cp[data-v-14817ce8]{display:grid}.cp__header[data-v-14817ce8]{color:var(--color-slate-200);background-color:var(--color-slate-950)}.container[data-v-14817ce8]{max-width:var(--global-content-width);margin:0 auto;padding-inline:var(--c-spacing-lg)}.container--full[data-v-14817ce8]{max-width:none}@media screen and (min-width:1024px){.cp[data-v-14817ce8]{grid-template-columns:var(--aaeb19ca) minmax(0,1fr);grid-template-areas:"header header" "sidebar main";grid-template-rows:auto 1fr;min-height:100vh}.cp__header[data-v-14817ce8]{grid-area:header}.cp__sidebar[data-v-14817ce8]{grid-area:sidebar}.cp__main[data-v-14817ce8]{grid-area:main}} diff --git a/resources/build/assets/Install.css b/resources/build/assets/Install.css index 22de02fb9e9..e7c0343e084 100644 --- a/resources/build/assets/Install.css +++ b/resources/build/assets/Install.css @@ -1 +1 @@ -.callout[data-v-b7a3b948]{background-color:var(--c-callout-bg);padding:var(--c-callout-padding, var(--c-spacing-md));border:1px solid var(--c-callout-border-color);color:var(--c-callout-fg);border-radius:var(--c-callout-radius)}.callout--danger[data-v-b7a3b948]{--c-callout-border-color: var(--c-color-danger-border-normal);--c-callout-fg: var(--c-color-danger-on-normal);--c-callout-bg: var(--c-color-danger-bg-normal)}.pane[data-v-9d0bfd10]{--_pane-spacing: var(--c-spacing-lg);background-color:var(--c-pane-bg);overflow-y:scroll;-webkit-overflow-scrolling:touch;border-radius:var(--c-pane-radius);border:var(--c-pane-border);display:grid}.pane__header[data-v-9d0bfd10],.pane__body[data-v-9d0bfd10]{padding-inline:var(--_pane-spacing);padding-block:var(--_pane-spacing)}.pane__footer[data-v-9d0bfd10]{border-top:1px solid var(--c-color-neutral-border-subtle);padding-inline:var(--_pane-spacing);padding-block:var(--_pane-spacing)}.actions[data-v-9d0bfd10]{display:flex;justify-content:space-between;align-items:center}.content[data-v-d53a06fb]{padding:var(--c-spacing-lg);display:grid;justify-content:center;align-items:center;gap:var(--c-spacing-lg);text-align:center}.modal[data-v-11ae6053]{max-width:calc(100vw - (var(--c-spacing-lg) * 2));max-height:calc(100vh - (var(--c-spacing-lg) * 2));box-shadow:var(--c-modal-shadow);-webkit-overflow-scrolling:touch;border-radius:var(--c-modal-radius);border:var(--c-modal-border);position:relative;z-index:1;overflow-y:scroll}.overlay[data-v-11ae6053]{position:fixed;inset:0;background-color:#00000080}@media(prefers-reduced-motion:no-preference){.body-enter-active[data-v-11ae6053]{animation:body-in-11ae6053 .2s}.body-leave-active[data-v-11ae6053]{animation:body-in-11ae6053 .2s reverse}@keyframes body-in-11ae6053{0%{opacity:0;transform:scale(.9) translateY(2rem)}to{opacity:1;transform:scale(1) translateY(0)}}.fade-enter-active[data-v-11ae6053],.fade-leave-active[data-v-11ae6053]{transition:opacity .5s ease}.fade-enter-from[data-v-11ae6053],.fade-leave-to[data-v-11ae6053]{opacity:0}}.install[data-v-6b52fc11]{background-image:var(--ea40fc04);background-position:50% 50%;background-repeat:no-repeat;background-size:cover;height:100vh;display:grid;place-items:center;justify-items:center}.begin-button[data-v-6b52fc11]{border-radius:var(--c-radius-lg);font-size:1.1875rem;min-height:3.125rem;padding-block:0;padding-inline:1.5em;box-shadow:inset 0 1px #fff3,inset 0 -1px #0002,0 0 0 1px #21377066,0 0 1px 2px #21377055,0 10px 10px -10px #213770,0 10px 20px -10px #213770}.dot[data-v-6b52fc11]{display:inline-block;appearance:none;border:1px solid var(--c-color-neutral-border-subtle);background-color:var(--c-color-neutral-bg-subtle);border-radius:var(--c-radius-full);padding:0;width:.625rem;height:.625rem;flex-shrink:0}.dot--active[data-v-6b52fc11]{background-color:var(--c-color-accent-bg-emphasis);border:1px solid var(--c-color-accent-border-emphasis)}.license[data-v-6b52fc11]{font-size:.8125rem;font-family:var(--c-font-mono);padding:var(--c-spacing-lg)}.license[data-v-6b52fc11] *+*{margin-block:1em}.license[data-v-6b52fc11] ol{list-style-type:decimal;padding-inline-start:2.25em} +.callout[data-v-b7a3b948]{background-color:var(--c-callout-bg);padding:var(--c-callout-padding, var(--c-spacing-md));border:1px solid var(--c-callout-border-color);color:var(--c-callout-fg);border-radius:var(--c-callout-radius)}.callout--danger[data-v-b7a3b948]{--c-callout-border-color: var(--c-color-danger-border-normal);--c-callout-fg: var(--c-color-danger-on-normal);--c-callout-bg: var(--c-color-danger-bg-normal)}.content[data-v-d53a06fb]{padding:var(--c-spacing-lg);display:grid;justify-content:center;align-items:center;gap:var(--c-spacing-lg);text-align:center}.install[data-v-6b52fc11]{background-image:var(--ea40fc04);background-position:50% 50%;background-repeat:no-repeat;background-size:cover;height:100vh;display:grid;place-items:center;justify-items:center}.begin-button[data-v-6b52fc11]{border-radius:var(--c-radius-lg);font-size:1.1875rem;min-height:3.125rem;padding-block:0;padding-inline:1.5em;box-shadow:inset 0 1px #fff3,inset 0 -1px #0002,0 0 0 1px #21377066,0 0 1px 2px #21377055,0 10px 10px -10px #213770,0 10px 20px -10px #213770}.dot[data-v-6b52fc11]{display:inline-block;appearance:none;border:1px solid var(--c-color-neutral-border-subtle);background-color:var(--c-color-neutral-bg-subtle);border-radius:var(--c-radius-full);padding:0;width:.625rem;height:.625rem;flex-shrink:0}.dot--active[data-v-6b52fc11]{background-color:var(--c-color-accent-bg-emphasis);border:1px solid var(--c-color-accent-border-emphasis)}.license[data-v-6b52fc11]{font-size:.8125rem;font-family:var(--c-font-mono);padding:var(--c-spacing-lg)}.license[data-v-6b52fc11] *+*{margin-block:1em}.license[data-v-6b52fc11] ol{list-style-type:decimal;padding-inline-start:2.25em} diff --git a/resources/build/assets/Modal.css b/resources/build/assets/Modal.css new file mode 100644 index 00000000000..00c07367cec --- /dev/null +++ b/resources/build/assets/Modal.css @@ -0,0 +1 @@ +.pane[data-v-c067a127]{--_pane-spacing: var(--c-spacing-lg);background-color:var(--c-pane-bg);overflow-y:scroll;-webkit-overflow-scrolling:touch;border-radius:var(--c-pane-radius);border:var(--c-pane-border);display:grid}.pane__header[data-v-c067a127],.pane__body[data-v-c067a127]{padding-inline:var(--_pane-spacing);padding-block:var(--_pane-spacing)}.pane__footer[data-v-c067a127]{border-top:1px solid var(--c-color-neutral-border-subtle);padding-inline:var(--_pane-spacing);padding-block:var(--_pane-spacing)}.actions[data-v-c067a127]{display:flex;gap:var(--c-spacing-md);justify-content:end;align-items:center}.content[data-v-3d482c9f]{max-width:calc(100vw - (var(--c-spacing-lg) * 2));max-height:calc(100vh - (var(--c-spacing-lg) * 2));box-shadow:var(--c-modal-shadow);-webkit-overflow-scrolling:touch;border-radius:var(--c-modal-radius);border:var(--c-modal-border);position:relative;overflow-y:scroll;pointer-events:auto}.modal[data-v-3d482c9f],.overlay[data-v-3d482c9f]{position:fixed;width:100vw;height:100vh;inset:0}.modal[data-v-3d482c9f]{z-index:10002;display:grid;justify-content:center;align-items:center;pointer-events:none}.overlay[data-v-3d482c9f]{z-index:10001;background-color:#00000080}@media(prefers-reduced-motion:no-preference){.body-enter-active[data-v-3d482c9f]{animation:body-in-3d482c9f .25s}.body-leave-active[data-v-3d482c9f]{animation:body-in-3d482c9f .25s reverse}@keyframes body-in-3d482c9f{0%{opacity:0;transform:scale(.9) translateY(2rem)}to{opacity:1;transform:scale(1) translateY(0)}}.fade-enter-active[data-v-3d482c9f],.fade-leave-active[data-v-3d482c9f]{transition:opacity .1s ease}.fade-enter-from[data-v-3d482c9f],.fade-leave-to[data-v-3d482c9f]{opacity:0}} diff --git a/resources/build/assets/SettingsSitesIndex.css b/resources/build/assets/SettingsSitesIndex.css new file mode 100644 index 00000000000..b659cb5bd48 --- /dev/null +++ b/resources/build/assets/SettingsSitesIndex.css @@ -0,0 +1 @@ +table[data-v-2688678f]{width:100%;border-collapse:collapse}.cell[data-v-2688678f]{padding:var(--c-spacing-md)}thead tr[data-v-2688678f]{background-color:var(--c-color-neutral-bg-normal)}th[data-v-2688678f]{background-color:var(--c-color-neutral-bg-normal);text-align:left}.interior[data-v-63f287b8]{display:grid;grid-template-columns:minmax(7.5rem,16%) 1fr;gap:var(--c-spacing-md)}.title[data-v-63f287b8]{display:flex;align-items:center;gap:var(--c-spacing-md)}.separator[data-v-63f287b8]{font-size:.8em;font-weight:400;opacity:.5} diff --git a/resources/build/assets/cp.css b/resources/build/assets/cp.css index 01f587c1477..b29ab0348cc 100644 --- a/resources/build/assets/cp.css +++ b/resources/build/assets/cp.css @@ -1 +1 @@ -@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-100:oklch(93.6% .032 17.717);--color-red-200:oklch(88.5% .062 18.334);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-orange-400:oklch(75% .183 55.934);--color-orange-700:oklch(55.3% .195 38.402);--color-yellow-50:oklch(98.7% .026 102.212);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-400:oklch(85.2% .199 91.936);--color-yellow-600:oklch(68.1% .162 75.834);--color-yellow-700:oklch(55.4% .135 66.442);--color-yellow-800:oklch(47.6% .114 61.907);--color-yellow-900:oklch(42.1% .095 57.708);--color-yellow-950:oklch(28.6% .066 53.813);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-200:oklch(90.5% .093 164.15);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-emerald-800:oklch(43.2% .095 166.913);--color-emerald-900:oklch(37.8% .077 168.94);--color-emerald-950:oklch(26.2% .051 172.552);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-blue-900:oklch(37.9% .146 265.522);--color-blue-950:oklch(28.2% .091 267.935);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-300:oklch(86.9% .022 252.894);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--color-slate-950:oklch(12.9% .042 264.695);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--font-weight-medium:500;--font-weight-bold:700;--leading-tight:1.25;--leading-normal:1.5;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--inset-shadow-sm:inset 0 2px 4px #0000000d;--ease-in:cubic-bezier(.4,0,1,1);--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--color-border-subtle:var(--c-color-neutral-border-subtle)}}@layer base,components;@layer cp{@layer preflight{*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;tab-size:4;font-family:system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;line-height:1.15}body{margin:0}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{border-color:currentColor}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:100%;line-height:1.15}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}ol,ul,menu{list-style:none}img{max-width:100%;height:auto;display:flex}}@layer theme{:root,:host{--c-text-lg: 1rem ;--c-text-base: .875rem ;--c-text-sm: .6875rem ;--c-leading-normal:1.42;--c-bg-body:var(--color-slate-50);--c-bg-raised:#fff;--c-bg-sunken:var(--color-slate-100);--c-bg-form-control:#d9e5f20d;--c-bg-overlay:#fff;--c-bg-default:#fff;--c-bg-accent:var(--color-blue-500);--c-fg-white:var(--color-white);--c-fg-text:#3f4d5a;--c-fg-muted:var(--color-slate-500);--c-fg-link:var(--color-blue-600);--c-fg-on-accent:var(--color-white);--c-fg-on-accent-subtle:var(--color-slate-800);--c-fg-on-sunken:var(--c-fg-text);--c-color-neutral-bg-emphasis:var(--color-slate-600);--c-color-neutral-bg-normal:var(--color-slate-100);--c-color-neutral-bg-subtle:var(--color-slate-50);--c-color-neutral-border-emphasis:var(--color-slate-800);--c-color-neutral-border-normal:var(--color-slate-600);--c-color-neutral-border-subtle:var(--color-slate-300);--c-color-neutral-on-emphasis:var(--color-slate-50);--c-color-neutral-on-normal:var(--color-slate-700);--c-color-neutral-on-subtle:var(--color-slate-800);--c-color-brand-bg-emphasis:var(--color-red-600);--c-color-brand-bg-subtle:var(--color-red-100);--c-color-brand-border-emphasis:var(--color-red-600);--c-color-brand-border-subtle:var(--color-red-600);--c-color-brand-on-emphasis:var(--color-red-100);--c-color-brand-on-subtle:var(--color-red-800);--c-color-accent-bg-emphasis:var(--color-blue-600);--c-color-accent-bg-normal:var(--color-blue-100);--c-color-accent-bg-subtle:var(--color-blue-50);--c-color-accent-border-emphasis:var(--color-blue-800);--c-color-accent-border-normal:var(--color-blue-600);--c-color-accent-border-subtle:var(--color-blue-400);--c-color-accent-on-emphasis:var(--color-blue-50);--c-color-accent-on-normal:var(--color-blue-900);--c-color-accent-on-subtle:var(--color-blue-900);--c-color-info-bg-emphasis:var(--color-blue-600);--c-color-info-bg-normal:var(--color-blue-100);--c-color-info-bg-subtle:var(--color-blue-50);--c-color-info-border-emphasis:var(--color-blue-800);--c-color-info-border-normal:var(--color-blue-600);--c-color-info-border-subtle:var(--color-blue-400);--c-color-info-on-emphasis:var(--color-blue-50);--c-color-info-on-normal:var(--color-blue-700);--c-color-info-on-subtle:var(--color-blue-800);--c-color-success-bg-emphasis:var(--color-emerald-600);--c-color-success-bg-normal:var(--color-emerald-100);--c-color-success-bg-subtle:var(--color-emerald-50);--c-color-success-border-emphasis:var(--color-emerald-800);--c-color-success-border-normal:var(--color-emerald-600);--c-color-success-border-subtle:var(--color-emerald-400);--c-color-success-on-emphasis:var(--color-emerald-50);--c-color-success-on-normal:var(--color-emerald-700);--c-color-success-on-subtle:var(--color-emerald-800);--c-color-warning-bg-emphasis:var(--color-yellow-600);--c-color-warning-bg-normal:var(--color-yellow-100);--c-color-warning-bg-subtle:var(--color-yellow-50);--c-color-warning-border-emphasis:var(--color-yellow-800);--c-color-warning-border-normal:var(--color-yellow-600);--c-color-warning-border-subtle:var(--color-yellow-400);--c-color-warning-on-emphasis:var(--color-yellow-50);--c-color-warning-on-normal:var(--color-yellow-700);--c-color-warning-on-subtle:var(--color-yellow-800);--c-color-danger-bg-emphasis:var(--color-red-600);--c-color-danger-bg-normal:var(--color-red-100);--c-color-danger-bg-subtle:var(--color-red-50);--c-color-danger-border-emphasis:var(--color-red-800);--c-color-danger-border-normal:var(--color-red-600);--c-color-danger-border-subtle:var(--color-red-400);--c-color-danger-on-emphasis:var(--color-red-50);--c-color-danger-on-normal:var(--color-red-700);--c-color-danger-on-subtle:var(--color-red-800);--c-font-body:system-ui,BlinkMacSystemFont,-apple-system,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--c-font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--c-border-faint:#e2ebf3;--c-border-subtle:var(--color-slate-300);--c-border-default:#a5b3c0;--c-border-emphasized:#698096;--c-border-strong:#3f4d5a;--c-border-accent:var(--color-blue-600);--c-border-form-control:var(--color-slate-500);--c-radius-sm:3px;--c-radius-md:4px;--c-radius-lg:6px;--c-radius-xl:12px;--c-radius-full:calc(Infinity*1px);--c-spacing:.125rem;--c-spacing-1px:1px;--c-spacing-xs:calc(var(--c-spacing)*.5);--c-spacing-sm:calc(var(--c-spacing)*1);--c-spacing-md:calc(var(--c-spacing)*2);--c-spacing-lg:calc(var(--c-spacing)*4);--c-spacing-xl:calc(var(--c-spacing)*8);--c-spacing-2xl:calc(var(--c-spacing)*16)}@media screen and (min-width:1024px){:root,:host{--c-spacing:.25rem}}:root,:host{--c-size-touch-target: 2.125rem ;--c-size-icon-xs: .625rem ;--c-size-icon-sm: .75rem ;--c-size-icon-md: .875rem ;--c-size-icon-lg: 1.375rem ;--c-size-icon-xl: 1.875rem ;--c-size-control-sm: 1.25rem ;--c-size-control-md: 2.125rem ;--c-size-control-lg: 2.75rem ;--c-shadow-2xs:0 1px #0000000d;--c-shadow-xs:0 1px 2px 0 #0000000d;--c-shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--c-shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--c-shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--c-shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--c-shadow-2xl:0 25px 50px -12px #00000040;--c-status-live-bg:var(--color-emerald-500);--c-status-live-border:var(--color-emerald-700);--c-status-live-fg:var(--color-emerald-700);--c-status-enabled-bg:var(--color-emerald-500);--c-status-enabled-border:var(--color-emerald-700);--c-status-enabled-fg:var(--color-emerald-700);--c-status-pending-bg:var(--color-orange-400);--c-status-pending-fg:var(--color-orange-700);--c-status-pending-border:var(--color-orange-700);--c-status-expired-bg:var(--color-red-400);--c-status-expired-fg:var(--color-red-700);--c-status-expired-border:var(--color-red-700);--c-status-disabled-bg:var(--color-slate-200);--c-status-disabled-fg:var(--color-slate-600);--c-status-disabled-border:var(--color-slate-600);--c-form-control-bg:var(--c-bg-form-control);--c-form-control-fg:var(--c-fg-text);--c-form-control-border:var(--color-slate-500);--c-form-control-radius:var(--c-radius-md);--c-form-control-spacing-inline:var(--c-spacing-md);--c-form-control-spacing-block:var(--c-spacing-sm);--c-form-control-height:var(--c-size-control-md);--c-input-bg:var(--c-form-control-bg);--c-input-fg:var(--c-form-control-fg);--c-input-border-color:var(--c-form-control-border);--c-input-border:1px solid var(--c-input-border-color);--c-input-radius:var(--c-form-control-radius);--c-input-spacing-inline:var(--c-form-control-spacing-inline);--c-input-spacing-block:var(--c-form-control-spacing-block);--c-input-shadow:var(--inset-shadow-sm);--c-select-bg:var(--c-form-control-bg);--c-select-fg:var(--c-form-control-fg);--c-select-border-color:var(--c-form-control-border);--c-select-border:1px solid var(--c-select-border-color);--c-select-radius:var(--c-form-control-radius);--c-select-spacing-inline:var(--c-form-control-spacing-inline);--c-select-spacing-block:var(--c-form-control-spacing-block);--c-select-shadow:var(--shadow-sm);--c-button-default-bg:var(--color-slate-200);--c-button-default-bg-hover:var(--color-slate-300);--c-button-default-fg:var(--c-fg-text);--c-button-default-fg-hover:var(--c-button-default-fg);--c-button-default-border:var(--color-slate-300);--c-button-default-border-hover:var(--c-button-default-border);--c-button-primary-bg:var(--color-red-600);--c-button-primary-border:var(--color-red-700);--c-button-primary-fg:var(--color-white);--c-button-primary-bg-hover:var(--color-red-700);--c-button-primary-border-hover:var(--c-button-primary-border);--c-button-primary-fg-hover:var(--c-button-primary-fg);--c-button-danger-bg:var(--color-red-600);--c-button-danger-border:var(--color-red-700);--c-button-danger-fg:var(--color-white);--c-button-danger-bg-hover:var(--color-red-700);--c-button-danger-border-hover:var(--c-button-danger-border);--c-button-danger-fg-hover:var(--c-button-danger-fg);--c-pane-bg:var(--c-bg-overlay);--c-pane-fg:var(--c-fg-text);--c-pane-border:1px solid transparent;--c-pane-radius:var(--c-radius-md);--c-callout-radius:var(--c-pane-radius);--c-modal-bg:var(--c-pane-bg);--c-modal-fg:var(--c-pane-fg);--c-modal-radius:var(--c-radius-lg);--c-modal-border:var(--c-pane-border);--c-modal-shadow:0 0 0 1px hsl(from var(--color-gray-400)h s l/25%),0 25px 100px hsl(from var(--color-gray-900)h s l/50%);--wa-panel-border-style:solid;--wa-panel-border-width:1px;--wa-color-surface-border:var(--c-border-subtle);--wa-panel-border-color:var(--c-border-subtle);--wa-panel-border-radius:var(--c-radius-md);--wa-color-surface-raised:var(--c-bg-raised);--wa-shadow-l:var(--c-shadow-lg)}[data-theme=dark]{color-scheme:dark;--c-bg-body:var(--color-slate-800);--c-bg-button:#333;--c-bg-sunken:#091120;--c-bg-raised:var(--color-slate-900);--c-bg-form-control:var(--color-slate-900);--c-bg-overlay:var(--color-slate-950);--c-fg-text:var(--color-slate-50);--c-fg-muted:var(--color-slate-400);--c-fg-link:var(--color-blue-400);--c-border-faint:#000;--c-border-subtle:#1a2744;--c-border-form-control:var(--color-slate-600);--c-color-neutral-bg-emphasis:var(--color-slate-400);--c-color-neutral-bg-subtle:var(--color-slate-900);--c-color-neutral-bg-faint:var(--color-slate-950);--c-color-neutral-border-emphasis:var(--color-slate-400);--c-color-neutral-border-subtle:var(--color-slate-600);--c-color-neutral-on-emphasis:var(--color-slate-900);--c-color-neutral-on-subtle:var(--color-slate-300);--c-color-accent-bg-emphasis:var(--color-blue-400);--c-color-accent-bg-subtle:var(--color-blue-900);--c-color-accent-border-emphasis:var(--color-blue-400);--c-color-accent-border-subtle:var(--color-blue-400);--c-color-accent-on-emphasis:var(--color-slate-950);--c-color-accent-on-subtle:var(--color-blue-200);--c-color-info-bg-emphasis:var(--color-blue-600);--c-color-info-bg-subtle:var(--color-blue-950);--c-color-info-border-emphasis:var(--color-blue-600);--c-color-info-border-subtle:var(--color-blue-600);--c-color-info-on-emphasis:var(--color-blue-100);--c-color-info-on-subtle:var(--color-blue-200);--c-color-success-bg-emphasis:var(--color-emerald-400);--c-color-success-bg-normal:var(--color-emerald-800);--c-color-success-bg-subtle:var(--color-emerald-900);--c-color-success-border-emphasis:var(--color-emerald-400);--c-color-success-border-normal:var(--color-emerald-900);--c-color-success-border-subtle:var(--color-emerald-400);--c-color-success-on-emphasis:var(--color-emerald-950);--c-color-success-on-normal:var(--color-emerald-200);--c-color-success-on-subtle:var(--color-emerald-400);--c-color-warning-bg-emphasis:var(--color-yellow-400);--c-color-warning-bg-subtle:var(--color-yellow-900);--c-color-warning-border-emphasis:var(--color-yellow-400);--c-color-warning-border-subtle:var(--color-yellow-400);--c-color-warning-on-emphasis:var(--color-yellow-950);--c-color-warning-on-subtle:var(--color-yellow-100);--c-color-danger-bg-emphasis:var(--color-red-500);--c-color-danger-bg-normal:var(--color-red-800);--c-color-danger-bg-subtle:var(--color-red-900);--c-color-danger-border-emphasis:var(--color-red-600);--c-color-danger-border-normal:var(--color-red-900);--c-color-danger-border-subtle:var(--color-red-900);--c-color-danger-on-emphasis:var(--color-red-100);--c-color-danger-on-normal:var(--color-red-200);--c-color-danger-on-subtle:var(--color-red-400);--c-button-default-bg:var(--color-slate-800);--c-button-default-border:var(--color-slate-700);--c-button-default-bg-hover:var(--color-slate-700)}}@layer base{html,body{background-color:var(--c-bg-body)}body{width:100%;font-family:var(--c-font-body,sans-serif);font-size:var(--c-text-base);line-height:var(--c-leading-normal);color:var(--c-fg-text);-webkit-font-smoothing:subpixel-antialiased;overflow-x:hidden}h1,h2,h3,h4,h5,h6,p,pre{margin:0}a{cursor:pointer;color:var(--c-fg-link)}ol,ul{margin:0;padding:0;list-style:none}code{padding:0 var(--c-spacing-sm);border-radius:var(--c-radius-sm);background-color:#0000000d;border:1px solid #0003;font-size:.9em;display:inline-flex}hr{border:0;border-top:1px solid var(--c-color-neutral-border-subtle);width:100%;display:block}}@layer components,utilities;.resizable-container{resize:both;border:2px solid;width:300px;padding:20px;overflow:auto}.skip-link{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.skip-link:focus{clip:auto;white-space:normal;width:auto;height:auto;inset-inline-start:0;overflow:visible}.error-list{color:var(--c-color-danger-on-normal);margin:0;padding:0;list-style:none}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.c-icon{width:1.25em;height:1em;display:inline-flex}.c-icon svg{height:1em;overflow:visible}}@layer utilities{.\@container{container-type:inline-size}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.right-2{right:calc(var(--spacing)*2)}.bottom-2{bottom:calc(var(--spacing)*2)}.col-span-2{grid-column:span 2/span 2}.col-span-5{grid-column:span 5/span 5}.\!container{width:100%!important}@media(min-width:40rem){.\!container{max-width:40rem!important}}@media(min-width:48rem){.\!container{max-width:48rem!important}}@media(min-width:64rem){.\!container{max-width:64rem!important}}@media(min-width:80rem){.\!container{max-width:80rem!important}}@media(min-width:96rem){.\!container{max-width:96rem!important}}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.container\!{width:100%!important}@media(min-width:40rem){.container\!{max-width:40rem!important}}@media(min-width:48rem){.container\!{max-width:48rem!important}}@media(min-width:64rem){.container\!{max-width:64rem!important}}@media(min-width:80rem){.container\!{max-width:80rem!important}}@media(min-width:96rem){.container\!{max-width:96rem!important}}.mx-0{margin-inline:calc(var(--spacing)*0)}.mx-auto{margin-inline:auto}.my-0{margin-block:calc(var(--spacing)*0)}.mt-0{margin-top:calc(var(--spacing)*0)}.mt-1{margin-top:calc(var(--spacing)*1)}.mr-0{margin-right:calc(var(--spacing)*0)}.mb-0{margin-bottom:calc(var(--spacing)*0)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-16{margin-bottom:calc(var(--spacing)*16)}.ml-0{margin-left:calc(var(--spacing)*0)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.hidden\!{display:none!important}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.table-row{display:table-row}.table-row-group{display:table-row-group}.aspect-\[352\/455\]{aspect-ratio:352/455}.h-1{height:calc(var(--spacing)*1)}.max-h-\[50vh\]{max-height:50vh}.w-1\/2{width:50%}.w-full{width:100%}.max-w-\[80ch\]{max-width:80ch}.max-w-\[600px\]{max-width:600px}.flex-shrink,.shrink{flex-shrink:1}.flex-grow,.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.transform\!{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)!important}.resize{resize:both}.resize\!{resize:both!important}.columns-3{columns:3}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing)*1)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}.self-center{align-self:center}.justify-self-end{justify-self:flex-end}.justify-self-start{justify-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-scroll{overflow:scroll}.rounded{border-radius:.25rem}.rounded-lg{border-radius:var(--radius-lg)}.rounded-sm{border-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-none{--tw-border-style:none;border-style:none}.border-border-subtle{border-color:var(--color-border-subtle)}.border-red-500{border-color:var(--color-red-500)}.border-b-border-subtle{border-bottom-color:var(--color-border-subtle)}.bg-black{background-color:var(--color-black)}.bg-red-50{background-color:var(--color-red-50)}.bg-slate-900{background-color:var(--color-slate-900)}.bg-white{background-color:var(--color-white)}.mask-repeat{-webkit-mask-repeat:repeat;mask-repeat:repeat}.p-0{padding:calc(var(--spacing)*0)}.p-2{padding:calc(var(--spacing)*2)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.px-0{padding-inline:calc(var(--spacing)*0)}.px-2{padding-inline:calc(var(--spacing)*2)}.py-0{padding-block:calc(var(--spacing)*0)}.py-1{padding-block:calc(var(--spacing)*1)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.pt-0{padding-top:calc(var(--spacing)*0)}.pt-4{padding-top:calc(var(--spacing)*4)}.pr-0{padding-right:calc(var(--spacing)*0)}.pr-6{padding-right:calc(var(--spacing)*6)}.pb-0{padding-bottom:calc(var(--spacing)*0)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pl-0{padding-left:calc(var(--spacing)*0)}.text-left{text-align:left}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.text-wrap{text-wrap:wrap}.text-red-800{color:var(--color-red-800)}.text-slate-100{color:var(--color-slate-100)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.shadow,.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a))drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a)drop-shadow(0 1px 1px #0000000f);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter\!{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)!important}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.select-all{-webkit-user-select:all;user-select:all}@media(min-width:48rem){.md\:w-3\/4{width:75%}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}.\[\&\[disabled\]\]\:opacity-50[disabled]{opacity:.5}}.global-sidebar{--is-always-visible:true;grid-template-columns:var(--global-sidebar-width);grid-template-rows:calc(var(--header-height) + 1px)minmax(0,1fr)auto;-webkit-overflow-scrolling:touch;background-color:var(--gray-150);border-inline-end:1px solid var(--border-hairline);height:100vh;width:var(--global-sidebar-width);isolation:isolate;z-index:1;grid-auto-flow:row;padding:0;display:grid;position:sticky;inset-block-start:0}@media only screen and (max-width:124.938rem){.global-sidebar{--is-always-visible:false}}.global-sidebar__nav{padding-block:var(--s);padding-inline:var(--s);-webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior:contain;overflow:hidden auto}.global-sidebar__footer{border-block-start:1px solid var(--border-hairline);margin-block-start:auto}.nav-indicator{width:var(--nav-item-indicator-size);border-radius:var(--radius-sm);aspect-ratio:1;background-color:currentColor}:root{--global-sidebar-width: 14.125rem ;--global-content-width: 90rem ;--header-height: 2.75rem }@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false} +@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-100:oklch(93.6% .032 17.717);--color-red-200:oklch(88.5% .062 18.334);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-orange-400:oklch(75% .183 55.934);--color-orange-700:oklch(55.3% .195 38.402);--color-yellow-50:oklch(98.7% .026 102.212);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-400:oklch(85.2% .199 91.936);--color-yellow-600:oklch(68.1% .162 75.834);--color-yellow-700:oklch(55.4% .135 66.442);--color-yellow-800:oklch(47.6% .114 61.907);--color-yellow-900:oklch(42.1% .095 57.708);--color-yellow-950:oklch(28.6% .066 53.813);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-200:oklch(90.5% .093 164.15);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-emerald-800:oklch(43.2% .095 166.913);--color-emerald-900:oklch(37.8% .077 168.94);--color-emerald-950:oklch(26.2% .051 172.552);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-blue-900:oklch(37.9% .146 265.522);--color-blue-950:oklch(28.2% .091 267.935);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-300:oklch(86.9% .022 252.894);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--color-slate-950:oklch(12.9% .042 264.695);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--font-weight-medium:500;--font-weight-bold:700;--leading-tight:1.25;--leading-normal:1.5;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--inset-shadow-sm:inset 0 2px 4px #0000000d;--ease-in:cubic-bezier(.4,0,1,1);--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--color-border-subtle:var(--c-color-neutral-border-subtle)}}@layer base,components;@layer cp{@layer preflight{*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;tab-size:4;font-family:system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;line-height:1.15}body{margin:0}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.9em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{border-color:currentColor}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:100%;line-height:1.15}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}ol,ul,menu{list-style:none}img{max-width:100%;height:auto;display:flex}}@layer theme{:root,:host{--c-text-lg: 1rem ;--c-text-base: .875rem ;--c-text-sm: .6875rem ;--c-leading-normal:1.42;--c-bg-body:var(--color-slate-50);--c-bg-raised:#fff;--c-bg-sunken:var(--color-slate-100);--c-bg-form-control:#d9e5f20d;--c-bg-overlay:#fff;--c-bg-default:#fff;--c-bg-accent:var(--color-blue-500);--c-fg-white:var(--color-white);--c-fg-text:#3f4d5a;--c-fg-muted:var(--color-slate-500);--c-fg-link:var(--color-blue-600);--c-fg-on-accent:var(--color-white);--c-fg-on-accent-subtle:var(--color-slate-800);--c-fg-on-sunken:var(--c-fg-text);--c-color-neutral-bg-emphasis:var(--color-slate-600);--c-color-neutral-bg-normal:var(--color-slate-100);--c-color-neutral-bg-subtle:var(--color-slate-50);--c-color-neutral-border-emphasis:var(--color-slate-800);--c-color-neutral-border-normal:var(--color-slate-600);--c-color-neutral-border-subtle:var(--color-slate-300);--c-color-neutral-on-emphasis:var(--color-slate-50);--c-color-neutral-on-normal:var(--color-slate-700);--c-color-neutral-on-subtle:var(--color-slate-800);--c-color-brand-bg-emphasis:var(--color-red-600);--c-color-brand-bg-subtle:var(--color-red-100);--c-color-brand-border-emphasis:var(--color-red-600);--c-color-brand-border-subtle:var(--color-red-600);--c-color-brand-on-emphasis:var(--color-red-100);--c-color-brand-on-subtle:var(--color-red-800);--c-color-accent-bg-emphasis:var(--color-blue-600);--c-color-accent-bg-normal:var(--color-blue-100);--c-color-accent-bg-subtle:var(--color-blue-50);--c-color-accent-border-emphasis:var(--color-blue-800);--c-color-accent-border-normal:var(--color-blue-600);--c-color-accent-border-subtle:var(--color-blue-400);--c-color-accent-on-emphasis:var(--color-blue-50);--c-color-accent-on-normal:var(--color-blue-900);--c-color-accent-on-subtle:var(--color-blue-900);--c-color-info-bg-emphasis:var(--color-blue-600);--c-color-info-bg-normal:var(--color-blue-100);--c-color-info-bg-subtle:var(--color-blue-50);--c-color-info-border-emphasis:var(--color-blue-800);--c-color-info-border-normal:var(--color-blue-600);--c-color-info-border-subtle:var(--color-blue-400);--c-color-info-on-emphasis:var(--color-blue-50);--c-color-info-on-normal:var(--color-blue-700);--c-color-info-on-subtle:var(--color-blue-800);--c-color-success-bg-emphasis:var(--color-emerald-600);--c-color-success-bg-normal:var(--color-emerald-100);--c-color-success-bg-subtle:var(--color-emerald-50);--c-color-success-border-emphasis:var(--color-emerald-800);--c-color-success-border-normal:var(--color-emerald-600);--c-color-success-border-subtle:var(--color-emerald-400);--c-color-success-on-emphasis:var(--color-emerald-50);--c-color-success-on-normal:var(--color-emerald-700);--c-color-success-on-subtle:var(--color-emerald-800);--c-color-warning-bg-emphasis:var(--color-yellow-600);--c-color-warning-bg-normal:var(--color-yellow-100);--c-color-warning-bg-subtle:var(--color-yellow-50);--c-color-warning-border-emphasis:var(--color-yellow-800);--c-color-warning-border-normal:var(--color-yellow-600);--c-color-warning-border-subtle:var(--color-yellow-400);--c-color-warning-on-emphasis:var(--color-yellow-50);--c-color-warning-on-normal:var(--color-yellow-700);--c-color-warning-on-subtle:var(--color-yellow-800);--c-color-danger-bg-emphasis:var(--color-red-600);--c-color-danger-bg-normal:var(--color-red-100);--c-color-danger-bg-subtle:var(--color-red-50);--c-color-danger-border-emphasis:var(--color-red-800);--c-color-danger-border-normal:var(--color-red-600);--c-color-danger-border-subtle:var(--color-red-400);--c-color-danger-on-emphasis:var(--color-red-50);--c-color-danger-on-normal:var(--color-red-700);--c-color-danger-on-subtle:var(--color-red-800);--c-font-body:system-ui,BlinkMacSystemFont,-apple-system,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--c-font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--c-border-faint:#e2ebf3;--c-border-subtle:var(--color-slate-300);--c-border-default:#a5b3c0;--c-border-emphasized:#698096;--c-border-strong:#3f4d5a;--c-border-accent:var(--color-blue-600);--c-border-form-control:var(--color-slate-500);--c-radius-sm:3px;--c-radius-md:4px;--c-radius-lg:6px;--c-radius-xl:12px;--c-radius-full:calc(Infinity*1px);--c-spacing:.125rem;--c-spacing-1px:1px;--c-spacing-xs:calc(var(--c-spacing)*.5);--c-spacing-sm:calc(var(--c-spacing)*1);--c-spacing-md:calc(var(--c-spacing)*2);--c-spacing-lg:calc(var(--c-spacing)*4);--c-spacing-xl:calc(var(--c-spacing)*8);--c-spacing-2xl:calc(var(--c-spacing)*16)}@media screen and (min-width:1024px){:root,:host{--c-spacing:.25rem}}:root,:host{--c-size-touch-target: 2.125rem ;--c-size-icon-xs: .625rem ;--c-size-icon-sm: .75rem ;--c-size-icon-md: .875rem ;--c-size-icon-lg: 1.375rem ;--c-size-icon-xl: 1.875rem ;--c-size-control-sm: 1.5rem ;--c-size-control-md: 2.125rem ;--c-size-control-lg: 2.75rem ;--c-shadow-2xs:0 1px #0000000d;--c-shadow-xs:0 1px 2px 0 #0000000d;--c-shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--c-shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--c-shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--c-shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--c-shadow-2xl:0 25px 50px -12px #00000040;--c-status-live-bg:var(--color-emerald-500);--c-status-live-border:var(--color-emerald-700);--c-status-live-fg:var(--color-emerald-700);--c-status-enabled-bg:var(--color-emerald-500);--c-status-enabled-border:var(--color-emerald-700);--c-status-enabled-fg:var(--color-emerald-700);--c-status-pending-bg:var(--color-orange-400);--c-status-pending-fg:var(--color-orange-700);--c-status-pending-border:var(--color-orange-700);--c-status-expired-bg:var(--color-red-400);--c-status-expired-fg:var(--color-red-700);--c-status-expired-border:var(--color-red-700);--c-status-disabled-bg:var(--color-slate-200);--c-status-disabled-fg:var(--color-slate-600);--c-status-disabled-border:var(--color-slate-600);--c-form-control-bg:var(--c-bg-form-control);--c-form-control-fg:var(--c-fg-text);--c-form-control-border:var(--color-slate-500);--c-form-control-radius:var(--c-radius-md);--c-form-control-spacing-inline:var(--c-spacing-md);--c-form-control-spacing-block:var(--c-spacing-sm);--c-form-control-height:var(--c-size-control-md);--c-input-bg:var(--c-form-control-bg);--c-input-fg:var(--c-form-control-fg);--c-input-border-color:var(--c-form-control-border);--c-input-border:1px solid var(--c-input-border-color);--c-input-radius:var(--c-form-control-radius);--c-input-spacing-inline:var(--c-form-control-spacing-inline);--c-input-spacing-block:var(--c-form-control-spacing-block);--c-input-shadow:var(--inset-shadow-sm);--c-select-bg:var(--c-form-control-bg);--c-select-fg:var(--c-form-control-fg);--c-select-border-color:var(--c-form-control-border);--c-select-border:1px solid var(--c-select-border-color);--c-select-radius:var(--c-form-control-radius);--c-select-spacing-inline:var(--c-form-control-spacing-inline);--c-select-spacing-block:var(--c-form-control-spacing-block);--c-select-shadow:var(--shadow-sm);--c-button-default-bg:var(--color-slate-200);--c-button-default-bg-hover:var(--color-slate-300);--c-button-default-fg:var(--c-fg-text);--c-button-default-fg-hover:var(--c-button-default-fg);--c-button-default-border:var(--color-slate-300);--c-button-default-border-hover:var(--c-button-default-border);--c-button-primary-bg:var(--color-red-600);--c-button-primary-border:var(--color-red-700);--c-button-primary-fg:var(--color-white);--c-button-primary-bg-hover:var(--color-red-700);--c-button-primary-border-hover:var(--c-button-primary-border);--c-button-primary-fg-hover:var(--c-button-primary-fg);--c-button-danger-bg:var(--color-red-600);--c-button-danger-border:var(--color-red-700);--c-button-danger-fg:var(--color-white);--c-button-danger-bg-hover:var(--color-red-700);--c-button-danger-border-hover:var(--c-button-danger-border);--c-button-danger-fg-hover:var(--c-button-danger-fg);--c-pane-bg:var(--c-bg-overlay);--c-pane-fg:var(--c-fg-text);--c-pane-border:1px solid transparent;--c-pane-radius:var(--c-radius-md);--c-callout-radius:var(--c-pane-radius);--c-modal-bg:var(--c-pane-bg);--c-modal-fg:var(--c-pane-fg);--c-modal-radius:var(--c-radius-lg);--c-modal-border:var(--c-pane-border);--c-modal-shadow:0 0 0 1px hsl(from var(--color-gray-400)h s l/25%),0 25px 100px hsl(from var(--color-gray-900)h s l/50%);--wa-panel-border-style:solid;--wa-panel-border-width:1px;--wa-color-surface-border:var(--c-border-subtle);--wa-panel-border-color:var(--c-border-subtle);--wa-panel-border-radius:var(--c-radius-md);--wa-color-surface-raised:var(--c-bg-raised);--wa-shadow-l:var(--c-shadow-lg)}[data-theme=dark]{color-scheme:dark;--c-bg-body:var(--color-slate-800);--c-bg-button:#333;--c-bg-sunken:#091120;--c-bg-raised:var(--color-slate-900);--c-bg-form-control:var(--color-slate-900);--c-bg-overlay:var(--color-slate-950);--c-fg-text:var(--color-slate-50);--c-fg-muted:var(--color-slate-400);--c-fg-link:var(--color-blue-400);--c-border-faint:#000;--c-border-subtle:#1a2744;--c-border-form-control:var(--color-slate-600);--c-color-neutral-bg-emphasis:var(--color-slate-400);--c-color-neutral-bg-subtle:var(--color-slate-900);--c-color-neutral-bg-faint:var(--color-slate-950);--c-color-neutral-border-emphasis:var(--color-slate-400);--c-color-neutral-border-subtle:var(--color-slate-600);--c-color-neutral-on-emphasis:var(--color-slate-900);--c-color-neutral-on-subtle:var(--color-slate-300);--c-color-accent-bg-emphasis:var(--color-blue-400);--c-color-accent-bg-subtle:var(--color-blue-900);--c-color-accent-border-emphasis:var(--color-blue-400);--c-color-accent-border-subtle:var(--color-blue-400);--c-color-accent-on-emphasis:var(--color-slate-950);--c-color-accent-on-subtle:var(--color-blue-200);--c-color-info-bg-emphasis:var(--color-blue-600);--c-color-info-bg-subtle:var(--color-blue-950);--c-color-info-border-emphasis:var(--color-blue-600);--c-color-info-border-subtle:var(--color-blue-600);--c-color-info-on-emphasis:var(--color-blue-100);--c-color-info-on-subtle:var(--color-blue-200);--c-color-success-bg-emphasis:var(--color-emerald-400);--c-color-success-bg-normal:var(--color-emerald-800);--c-color-success-bg-subtle:var(--color-emerald-900);--c-color-success-border-emphasis:var(--color-emerald-400);--c-color-success-border-normal:var(--color-emerald-900);--c-color-success-border-subtle:var(--color-emerald-400);--c-color-success-on-emphasis:var(--color-emerald-950);--c-color-success-on-normal:var(--color-emerald-200);--c-color-success-on-subtle:var(--color-emerald-400);--c-color-warning-bg-emphasis:var(--color-yellow-400);--c-color-warning-bg-subtle:var(--color-yellow-900);--c-color-warning-border-emphasis:var(--color-yellow-400);--c-color-warning-border-subtle:var(--color-yellow-400);--c-color-warning-on-emphasis:var(--color-yellow-950);--c-color-warning-on-subtle:var(--color-yellow-100);--c-color-danger-bg-emphasis:var(--color-red-500);--c-color-danger-bg-normal:var(--color-red-800);--c-color-danger-bg-subtle:var(--color-red-900);--c-color-danger-border-emphasis:var(--color-red-600);--c-color-danger-border-normal:var(--color-red-900);--c-color-danger-border-subtle:var(--color-red-900);--c-color-danger-on-emphasis:var(--color-red-100);--c-color-danger-on-normal:var(--color-red-200);--c-color-danger-on-subtle:var(--color-red-400);--c-button-default-bg:var(--color-slate-800);--c-button-default-border:var(--color-slate-700);--c-button-default-bg-hover:var(--color-slate-700)}}@layer base{html,body{background-color:var(--c-bg-body)}body{width:100%;font-family:var(--c-font-body,sans-serif);font-size:var(--c-text-base);line-height:var(--c-leading-normal);color:var(--c-fg-text);-webkit-font-smoothing:subpixel-antialiased;overflow-x:hidden}h1,h2,h3,h4,h5,h6,p,pre{margin:0}a{cursor:pointer;color:var(--c-fg-link)}ol,ul{margin:0;padding:0;list-style:none}.code{padding:0 var(--c-spacing-sm);border-radius:var(--c-radius-sm);background-color:#0000000d;border:1px solid #0003;font-size:.9em;display:inline-flex}hr{border:0;border-top:1px solid var(--c-color-neutral-border-subtle);width:100%;display:block}}@layer components,utilities;.resizable-container{resize:both;border:2px solid;width:300px;padding:20px;overflow:auto}.skip-link{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.skip-link:focus{clip:auto;white-space:normal;width:auto;height:auto;inset-inline-start:0;overflow:visible}.error-list{color:var(--c-color-danger-on-normal);margin:0;padding:0;list-style:none}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.c-icon{width:1.25em;height:1em;display:inline-flex}.c-icon svg{height:1em;overflow:visible}}@layer utilities{.\@container{container-type:inline-size}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-2{top:calc(var(--spacing)*2)}.right-2{right:calc(var(--spacing)*2)}.bottom-2{bottom:calc(var(--spacing)*2)}.col-span-2{grid-column:span 2/span 2}.col-span-5{grid-column:span 5/span 5}.\!container{width:100%!important}@media(min-width:40rem){.\!container{max-width:40rem!important}}@media(min-width:48rem){.\!container{max-width:48rem!important}}@media(min-width:64rem){.\!container{max-width:64rem!important}}@media(min-width:80rem){.\!container{max-width:80rem!important}}@media(min-width:96rem){.\!container{max-width:96rem!important}}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.container\!{width:100%!important}@media(min-width:40rem){.container\!{max-width:40rem!important}}@media(min-width:48rem){.container\!{max-width:48rem!important}}@media(min-width:64rem){.container\!{max-width:64rem!important}}@media(min-width:80rem){.container\!{max-width:80rem!important}}@media(min-width:96rem){.container\!{max-width:96rem!important}}.mx-0{margin-inline:calc(var(--spacing)*0)}.mx-auto{margin-inline:auto}.my-0{margin-block:calc(var(--spacing)*0)}.mt-0{margin-top:calc(var(--spacing)*0)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-4{margin-top:calc(var(--spacing)*4)}.mr-0{margin-right:calc(var(--spacing)*0)}.mb-0{margin-bottom:calc(var(--spacing)*0)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-16{margin-bottom:calc(var(--spacing)*16)}.ml-0{margin-left:calc(var(--spacing)*0)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.hidden\!{display:none!important}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.table-row{display:table-row}.table-row-group{display:table-row-group}.aspect-\[352\/455\]{aspect-ratio:352/455}.h-1{height:calc(var(--spacing)*1)}.max-h-\[50vh\]{max-height:50vh}.w-1\/2{width:50%}.w-\[60ch\]{width:60ch}.w-full{width:100%}.max-w-\[80ch\]{max-width:80ch}.max-w-\[600px\]{max-width:600px}.flex-shrink,.shrink{flex-shrink:1}.flex-grow,.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.transform\!{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)!important}.resize{resize:both}.resize\!{resize:both!important}.columns-3{columns:3}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-items-center{justify-items:center}.gap-1{gap:calc(var(--spacing)*1)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}.self-center{align-self:center}.justify-self-end{justify-self:flex-end}.justify-self-start{justify-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-scroll{overflow:scroll}.rounded{border-radius:.25rem}.rounded-lg{border-radius:var(--radius-lg)}.rounded-sm{border-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-none{--tw-border-style:none;border-style:none}.border-border-subtle{border-color:var(--color-border-subtle)}.border-red-500{border-color:var(--color-red-500)}.border-t-border-subtle{border-top-color:var(--color-border-subtle)}.border-b-border-subtle{border-bottom-color:var(--color-border-subtle)}.bg-black{background-color:var(--color-black)}.bg-red-50{background-color:var(--color-red-50)}.bg-slate-900{background-color:var(--color-slate-900)}.bg-white{background-color:var(--color-white)}.mask-repeat{-webkit-mask-repeat:repeat;mask-repeat:repeat}.p-0{padding:calc(var(--spacing)*0)}.p-2{padding:calc(var(--spacing)*2)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.px-0{padding-inline:calc(var(--spacing)*0)}.px-2{padding-inline:calc(var(--spacing)*2)}.py-0{padding-block:calc(var(--spacing)*0)}.py-1{padding-block:calc(var(--spacing)*1)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-20{padding-block:calc(var(--spacing)*20)}.pt-0{padding-top:calc(var(--spacing)*0)}.pt-2{padding-top:calc(var(--spacing)*2)}.pt-4{padding-top:calc(var(--spacing)*4)}.pr-0{padding-right:calc(var(--spacing)*0)}.pr-6{padding-right:calc(var(--spacing)*6)}.pb-0{padding-bottom:calc(var(--spacing)*0)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pl-0{padding-left:calc(var(--spacing)*0)}.text-center{text-align:center}.text-left{text-align:left}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.text-wrap{text-wrap:wrap}.text-gray-500{color:var(--color-gray-500)}.text-red-800{color:var(--color-red-800)}.text-slate-100{color:var(--color-slate-100)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.shadow,.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a))drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a)drop-shadow(0 1px 1px #0000000f);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter\!{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)!important}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.select-all{-webkit-user-select:all;user-select:all}@media(min-width:48rem){.md\:w-3\/4{width:75%}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}.\[\&\[disabled\]\]\:opacity-50[disabled]{opacity:.5}}.global-sidebar{--is-always-visible:true;grid-template-columns:var(--global-sidebar-width);grid-template-rows:calc(var(--header-height) + 1px)minmax(0,1fr)auto;-webkit-overflow-scrolling:touch;background-color:var(--gray-150);border-inline-end:1px solid var(--border-hairline);height:100vh;width:var(--global-sidebar-width);isolation:isolate;z-index:1;grid-auto-flow:row;padding:0;display:grid;position:sticky;inset-block-start:0}@media only screen and (max-width:124.938rem){.global-sidebar{--is-always-visible:false}}.global-sidebar__nav{padding-block:var(--s);padding-inline:var(--s);-webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior:contain;overflow:hidden auto}.global-sidebar__footer{border-block-start:1px solid var(--border-hairline);margin-block-start:auto}.nav-indicator{width:var(--nav-item-indicator-size);border-radius:var(--radius-sm);aspect-ratio:1;background-color:currentColor}:root{--global-sidebar-width: 14.125rem ;--global-content-width: 90rem ;--header-height: 2.75rem }@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false} diff --git a/resources/build/cp2.js b/resources/build/cp2.js index 14ffe335d4d..5aa70a13a84 100644 --- a/resources/build/cp2.js +++ b/resources/build/cp2.js @@ -1,16 +1,16 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./Install.js","./legacy.js","./_plugin-vue_export-helper.js","./assets/Install.css","./SettingsGeneralPage.js","./CalloutReadOnly.vue_vue_type_script_setup_true_lang.js","./assets/CalloutReadOnly.css","./assets/SettingsGeneralPage.css","./SettingsIndexPage.js","./assets/SettingsIndexPage.css"])))=>i.map(i=>d[i]); -import{a as Hc,_ as Ro}from"./legacy.js";function At(e){const t=Object.create(null);for(const r of e.split(","))t[r]=1;return r=>r in t}const le={},wn=[],Qe=()=>{},Sn=()=>!1,an=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Al=e=>e.startsWith("onUpdate:"),oe=Object.assign,Cl=(e,t)=>{const r=e.indexOf(t);r>-1&&e.splice(r,1)},cm=Object.prototype.hasOwnProperty,pe=(e,t)=>cm.call(e,t),K=Array.isArray,En=e=>Hn(e)==="[object Map]",ln=e=>Hn(e)==="[object Set]",jc=e=>Hn(e)==="[object Date]",fm=e=>Hn(e)==="[object RegExp]",Y=e=>typeof e=="function",ee=e=>typeof e=="string",yt=e=>typeof e=="symbol",me=e=>e!==null&&typeof e=="object",Ol=e=>(me(e)||Y(e))&&Y(e.then)&&Y(e.catch),Ah=Object.prototype.toString,Hn=e=>Ah.call(e),um=e=>Hn(e).slice(8,-1),Gs=e=>Hn(e)==="[object Object]",xl=e=>ee(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Ir=At(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),hm=At("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),zs=e=>{const t=Object.create(null);return(r=>t[r]||(t[r]=e(r)))},pm=/-\w/g,Te=zs(e=>e.replace(pm,t=>t.slice(1).toUpperCase())),dm=/\B([A-Z])/g,pt=zs(e=>e.replace(dm,"-$1").toLowerCase()),cn=zs(e=>e.charAt(0).toUpperCase()+e.slice(1)),Tn=zs(e=>e?`on${cn(e)}`:""),ot=(e,t)=>!Object.is(e,t),Pn=(e,...t)=>{for(let r=0;r{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:n,value:r})},Js=e=>{const t=parseFloat(e);return isNaN(t)?e:t},ds=e=>{const t=ee(e)?Number(e):NaN;return isNaN(t)?e:t};let Uc;const Qs=()=>Uc||(Uc=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function gm(e,t){return e+JSON.stringify(t,(r,n)=>typeof n=="function"?n.toString():n)}const mm="Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error,Symbol",ym=At(mm);function Ii(e){if(K(e)){const t={};for(let r=0;r{if(r){const n=r.split(bm);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function Ri(e){let t="";if(ee(e))t=e;else if(K(e))for(let r=0;rLr(r,t))}const Ih=e=>!!(e&&e.__v_isRef===!0),Rh=e=>ee(e)?e:e==null?"":K(e)||me(e)&&(e.toString===Ah||!Y(e.toString))?Ih(e)?Rh(e.value):JSON.stringify(e,Nh,2):String(e),Nh=(e,t)=>Ih(t)?Nh(e,t.value):En(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((r,[n,i],s)=>(r[No(n,s)+" =>"]=i,r),{})}:ln(t)?{[`Set(${t.size})`]:[...t.values()].map(r=>No(r))}:yt(t)?No(t):me(t)&&!K(t)&&!Gs(t)?String(t):t,No=(e,t="")=>{var r;return yt(e)?`Symbol(${(r=e.description)!=null?r:t})`:e};function $m(e){return e==null?"initial":typeof e=="string"?e===""?" ":e:String(e)}let Ze;class Il{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=Ze,!t&&Ze&&(this.index=(Ze.scopes||(Ze.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,r;if(this.scopes)for(t=0,r=this.scopes.length;t0&&--this._on===0&&(Ze=this.prevScope,this.prevScope=void 0)}stop(t){if(this._active){this._active=!1;let r,n;for(r=0,n=this.effects.length;r0)return;if(ni){let t=ni;for(ni=void 0;t;){const r=t.next;t.next=void 0,t.flags&=-9,t=r}}let e;for(;ri;){let t=ri;for(ri=void 0;t;){const r=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(n){e||(e=n)}t=r}}if(e)throw e}function Dh(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Lh(e){let t,r=e.depsTail,n=r;for(;n;){const i=n.prevDep;n.version===-1?(n===r&&(r=i),$l(n),Dm(n)):t=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=i}e.deps=t,e.depsTail=r}function ja(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(kh(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function kh(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===pi)||(e.globalVersion=pi,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!ja(e))))return;e.flags|=2;const t=e.dep,r=Se,n=Ut;Se=e,Ut=!0;try{Dh(e);const i=e.fn(e._value);(t.version===0||ot(i,e._value))&&(e.flags|=128,e._value=i,t.version++)}catch(i){throw t.version++,i}finally{Se=r,Ut=n,Lh(e),e.flags&=-3}}function $l(e,t=!1){const{dep:r,prevSub:n,nextSub:i}=e;if(n&&(n.nextSub=i,e.prevSub=void 0),i&&(i.prevSub=n,e.nextSub=void 0),r.subs===e&&(r.subs=n,!n&&r.computed)){r.computed.flags&=-5;for(let s=r.computed.deps;s;s=s.nextDep)$l(s,!0)}!t&&!--r.sc&&r.map&&r.map.delete(r.key)}function Dm(e){const{prevDep:t,nextDep:r}=e;t&&(t.nextDep=r,e.prevDep=void 0),r&&(r.prevDep=t,e.nextDep=void 0)}function Lm(e,t){e.effect instanceof hi&&(e=e.effect.fn);const r=new hi(e);t&&oe(r,t);try{r.run()}catch(i){throw r.stop(),i}const n=r.run.bind(r);return n.effect=r,n}function km(e){e.effect.stop()}let Ut=!0;const qh=[];function ur(){qh.push(Ut),Ut=!1}function hr(){const e=qh.pop();Ut=e===void 0?!0:e}function Vc(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const r=Se;Se=void 0;try{t()}finally{Se=r}}}let pi=0;class qm{constructor(t,r){this.sub=t,this.dep=r,this.version=r.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class Ys{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!Se||!Ut||Se===this.computed)return;let r=this.activeLink;if(r===void 0||r.sub!==Se)r=this.activeLink=new qm(Se,this),Se.deps?(r.prevDep=Se.depsTail,Se.depsTail.nextDep=r,Se.depsTail=r):Se.deps=Se.depsTail=r,Bh(r);else if(r.version===-1&&(r.version=this.version,r.nextDep)){const n=r.nextDep;n.prevDep=r.prevDep,r.prevDep&&(r.prevDep.nextDep=n),r.prevDep=Se.depsTail,r.nextDep=void 0,Se.depsTail.nextDep=r,Se.depsTail=r,Se.deps===r&&(Se.deps=n)}return r}trigger(t){this.version++,pi++,this.notify(t)}notify(t){Rl();try{for(let r=this.subs;r;r=r.prevSub)r.sub.notify()&&r.sub.dep.notify()}finally{Nl()}}}function Bh(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let n=t.deps;n;n=n.nextDep)Bh(n)}const r=e.dep.subs;r!==e&&(e.prevSub=r,r&&(r.nextSub=e)),e.dep.subs=e}}const gs=new WeakMap,Jr=Symbol(""),Ua=Symbol(""),di=Symbol("");function tt(e,t,r){if(Ut&&Se){let n=gs.get(e);n||gs.set(e,n=new Map);let i=n.get(r);i||(n.set(r,i=new Ys),i.map=n,i.key=r),i.track()}}function sr(e,t,r,n,i,s){const o=gs.get(e);if(!o){pi++;return}const a=l=>{l&&l.trigger()};if(Rl(),t==="clear")o.forEach(a);else{const l=K(e),u=l&&xl(r);if(l&&r==="length"){const f=Number(n);o.forEach((c,p)=>{(p==="length"||p===di||!yt(p)&&p>=f)&&a(c)})}else switch((r!==void 0||o.has(void 0))&&a(o.get(r)),u&&a(o.get(di)),t){case"add":l?u&&a(o.get("length")):(a(o.get(Jr)),En(e)&&a(o.get(Ua)));break;case"delete":l||(a(o.get(Jr)),En(e)&&a(o.get(Ua)));break;case"set":En(e)&&a(o.get(Jr));break}}Nl()}function Bm(e,t){const r=gs.get(e);return r&&r.get(t)}function gn(e){const t=ue(e);return t===e?t:(tt(t,"iterate",di),Pt(e)?t:t.map(Ge))}function Zs(e){return tt(e=ue(e),"iterate",di),e}const Hm={__proto__:null,[Symbol.iterator](){return Mo(this,Symbol.iterator,Ge)},concat(...e){return gn(this).concat(...e.map(t=>K(t)?gn(t):t))},entries(){return Mo(this,"entries",e=>(e[1]=Ge(e[1]),e))},every(e,t){return Zt(this,"every",e,t,void 0,arguments)},filter(e,t){return Zt(this,"filter",e,t,r=>r.map(Ge),arguments)},find(e,t){return Zt(this,"find",e,t,Ge,arguments)},findIndex(e,t){return Zt(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Zt(this,"findLast",e,t,Ge,arguments)},findLastIndex(e,t){return Zt(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Zt(this,"forEach",e,t,void 0,arguments)},includes(...e){return Fo(this,"includes",e)},indexOf(...e){return Fo(this,"indexOf",e)},join(e){return gn(this).join(e)},lastIndexOf(...e){return Fo(this,"lastIndexOf",e)},map(e,t){return Zt(this,"map",e,t,void 0,arguments)},pop(){return zn(this,"pop")},push(...e){return zn(this,"push",e)},reduce(e,...t){return Wc(this,"reduce",e,t)},reduceRight(e,...t){return Wc(this,"reduceRight",e,t)},shift(){return zn(this,"shift")},some(e,t){return Zt(this,"some",e,t,void 0,arguments)},splice(...e){return zn(this,"splice",e)},toReversed(){return gn(this).toReversed()},toSorted(e){return gn(this).toSorted(e)},toSpliced(...e){return gn(this).toSpliced(...e)},unshift(...e){return zn(this,"unshift",e)},values(){return Mo(this,"values",Ge)}};function Mo(e,t,r){const n=Zs(e),i=n[t]();return n!==e&&!Pt(e)&&(i._next=i.next,i.next=()=>{const s=i._next();return s.done||(s.value=r(s.value)),s}),i}const jm=Array.prototype;function Zt(e,t,r,n,i,s){const o=Zs(e),a=o!==e&&!Pt(e),l=o[t];if(l!==jm[t]){const c=l.apply(e,s);return a?Ge(c):c}let u=r;o!==e&&(a?u=function(c,p){return r.call(this,Ge(c),p,e)}:r.length>2&&(u=function(c,p){return r.call(this,c,p,e)}));const f=l.call(o,u,n);return a&&i?i(f):f}function Wc(e,t,r,n){const i=Zs(e);let s=r;return i!==e&&(Pt(e)?r.length>3&&(s=function(o,a,l){return r.call(this,o,a,l,e)}):s=function(o,a,l){return r.call(this,o,Ge(a),l,e)}),i[t](s,...n)}function Fo(e,t,r){const n=ue(e);tt(n,"iterate",di);const i=n[t](...r);return(i===-1||i===!1)&&ro(r[0])?(r[0]=ue(r[0]),n[t](...r)):i}function zn(e,t,r=[]){ur(),Rl();const n=ue(e)[t].apply(e,r);return Nl(),hr(),n}const Um=At("__proto__,__v_isRef,__isVue"),Hh=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(yt));function Vm(e){yt(e)||(e=String(e));const t=ue(this);return tt(t,"has",e),t.hasOwnProperty(e)}class jh{constructor(t=!1,r=!1){this._isReadonly=t,this._isShallow=r}get(t,r,n){if(r==="__v_skip")return t.__v_skip;const i=this._isReadonly,s=this._isShallow;if(r==="__v_isReactive")return!i;if(r==="__v_isReadonly")return i;if(r==="__v_isShallow")return s;if(r==="__v_raw")return n===(i?s?zh:Gh:s?Kh:Wh).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(n)?t:void 0;const o=K(t);if(!i){let l;if(o&&(l=Hm[r]))return l;if(r==="hasOwnProperty")return Vm}const a=Reflect.get(t,r,Be(t)?t:n);if((yt(r)?Hh.has(r):Um(r))||(i||tt(t,"get",r),s))return a;if(Be(a)){const l=o&&xl(r)?a:a.value;return i&&me(l)?ms(l):l}return me(a)?i?ms(a):jn(a):a}}class Uh extends jh{constructor(t=!1){super(!1,t)}set(t,r,n,i){let s=t[r];if(!this._isShallow){const l=pr(s);if(!Pt(n)&&!pr(n)&&(s=ue(s),n=ue(n)),!K(t)&&Be(s)&&!Be(n))return l||(s.value=n),!0}const o=K(t)&&xl(r)?Number(r)e,Hi=e=>Reflect.getPrototypeOf(e);function Jm(e,t,r){return function(...n){const i=this.__v_raw,s=ue(i),o=En(s),a=e==="entries"||e===Symbol.iterator&&o,l=e==="keys"&&o,u=i[e](...n),f=r?Va:t?vs:Ge;return!t&&tt(s,"iterate",l?Ua:Jr),{next(){const{value:c,done:p}=u.next();return p?{value:c,done:p}:{value:a?[f(c[0]),f(c[1])]:f(c),done:p}},[Symbol.iterator](){return this}}}}function ji(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Qm(e,t){const r={get(i){const s=this.__v_raw,o=ue(s),a=ue(i);e||(ot(i,a)&&tt(o,"get",i),tt(o,"get",a));const{has:l}=Hi(o),u=t?Va:e?vs:Ge;if(l.call(o,i))return u(s.get(i));if(l.call(o,a))return u(s.get(a));s!==o&&s.get(i)},get size(){const i=this.__v_raw;return!e&&tt(ue(i),"iterate",Jr),i.size},has(i){const s=this.__v_raw,o=ue(s),a=ue(i);return e||(ot(i,a)&&tt(o,"has",i),tt(o,"has",a)),i===a?s.has(i):s.has(i)||s.has(a)},forEach(i,s){const o=this,a=o.__v_raw,l=ue(a),u=t?Va:e?vs:Ge;return!e&&tt(l,"iterate",Jr),a.forEach((f,c)=>i.call(s,u(f),u(c),o))}};return oe(r,e?{add:ji("add"),set:ji("set"),delete:ji("delete"),clear:ji("clear")}:{add(i){!t&&!Pt(i)&&!pr(i)&&(i=ue(i));const s=ue(this);return Hi(s).has.call(s,i)||(s.add(i),sr(s,"add",i,i)),this},set(i,s){!t&&!Pt(s)&&!pr(s)&&(s=ue(s));const o=ue(this),{has:a,get:l}=Hi(o);let u=a.call(o,i);u||(i=ue(i),u=a.call(o,i));const f=l.call(o,i);return o.set(i,s),u?ot(s,f)&&sr(o,"set",i,s):sr(o,"add",i,s),this},delete(i){const s=ue(this),{has:o,get:a}=Hi(s);let l=o.call(s,i);l||(i=ue(i),l=o.call(s,i)),a&&a.call(s,i);const u=s.delete(i);return l&&sr(s,"delete",i,void 0),u},clear(){const i=ue(this),s=i.size!==0,o=i.clear();return s&&sr(i,"clear",void 0,void 0),o}}),["keys","values","entries",Symbol.iterator].forEach(i=>{r[i]=Jm(i,e,t)}),r}function eo(e,t){const r=Qm(e,t);return(n,i,s)=>i==="__v_isReactive"?!e:i==="__v_isReadonly"?e:i==="__v_raw"?n:Reflect.get(pe(r,i)&&i in n?r:n,i,s)}const Xm={get:eo(!1,!1)},Ym={get:eo(!1,!0)},Zm={get:eo(!0,!1)},ey={get:eo(!0,!0)},Wh=new WeakMap,Kh=new WeakMap,Gh=new WeakMap,zh=new WeakMap;function ty(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function ry(e){return e.__v_skip||!Object.isExtensible(e)?0:ty(um(e))}function jn(e){return pr(e)?e:to(e,!1,Wm,Xm,Wh)}function Jh(e){return to(e,!1,Gm,Ym,Kh)}function ms(e){return to(e,!0,Km,Zm,Gh)}function ny(e){return to(e,!0,zm,ey,zh)}function to(e,t,r,n,i){if(!me(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const s=ry(e);if(s===0)return e;const o=i.get(e);if(o)return o;const a=new Proxy(e,s===2?n:r);return i.set(e,a),a}function Rr(e){return pr(e)?Rr(e.__v_raw):!!(e&&e.__v_isReactive)}function pr(e){return!!(e&&e.__v_isReadonly)}function Pt(e){return!!(e&&e.__v_isShallow)}function ro(e){return e?!!e.__v_raw:!1}function ue(e){const t=e&&e.__v_raw;return t?ue(t):e}function ys(e){return!pe(e,"__v_skip")&&Object.isExtensible(e)&&Ch(e,"__v_skip",!0),e}const Ge=e=>me(e)?jn(e):e,vs=e=>me(e)?ms(e):e;function Be(e){return e?e.__v_isRef===!0:!1}function Nr(e){return Qh(e,!1)}function Ml(e){return Qh(e,!0)}function Qh(e,t){return Be(e)?e:new iy(e,t)}class iy{constructor(t,r){this.dep=new Ys,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=r?t:ue(t),this._value=r?t:Ge(t),this.__v_isShallow=r}get value(){return this.dep.track(),this._value}set value(t){const r=this._rawValue,n=this.__v_isShallow||Pt(t)||pr(t);t=n?t:ue(t),ot(t,r)&&(this._rawValue=t,this._value=n?t:Ge(t),this.dep.trigger())}}function sy(e){e.dep&&e.dep.trigger()}function no(e){return Be(e)?e.value:e}function oy(e){return Y(e)?e():no(e)}const ay={get:(e,t,r)=>t==="__v_raw"?e:no(Reflect.get(e,t,r)),set:(e,t,r,n)=>{const i=e[t];return Be(i)&&!Be(r)?(i.value=r,!0):Reflect.set(e,t,r,n)}};function Fl(e){return Rr(e)?e:new Proxy(e,ay)}class ly{constructor(t){this.__v_isRef=!0,this._value=void 0;const r=this.dep=new Ys,{get:n,set:i}=t(r.track.bind(r),r.trigger.bind(r));this._get=n,this._set=i}get value(){return this._value=this._get()}set value(t){this._set(t)}}function Xh(e){return new ly(e)}function cy(e){const t=K(e)?new Array(e.length):{};for(const r in e)t[r]=Yh(e,r);return t}class fy{constructor(t,r,n){this._object=t,this._key=r,this._defaultValue=n,this.__v_isRef=!0,this._value=void 0}get value(){const t=this._object[this._key];return this._value=t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return Bm(ue(this._object),this._key)}}class uy{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function hy(e,t,r){return Be(e)?e:Y(e)?new uy(e):me(e)&&arguments.length>1?Yh(e,t,r):Nr(e)}function Yh(e,t,r){const n=e[t];return Be(n)?n:new fy(e,t,r)}class py{constructor(t,r,n){this.fn=t,this.setter=r,this._value=void 0,this.dep=new Ys(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=pi-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!r,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&Se!==this)return Fh(this,!0),!0}get value(){const t=this.dep.track();return kh(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function dy(e,t,r=!1){let n,i;return Y(e)?n=e:(n=e.get,i=e.set),new py(n,i,r)}const gy={GET:"get",HAS:"has",ITERATE:"iterate"},my={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"},Ui={},bs=new WeakMap;let Pr;function yy(){return Pr}function Zh(e,t=!1,r=Pr){if(r){let n=bs.get(r);n||bs.set(r,n=[]),n.push(e)}}function vy(e,t,r=le){const{immediate:n,deep:i,once:s,scheduler:o,augmentJob:a,call:l}=r,u=v=>i?v:Pt(v)||i===!1||i===0?or(v,1):or(v);let f,c,p,h,d=!1,m=!1;if(Be(e)?(c=()=>e.value,d=Pt(e)):Rr(e)?(c=()=>u(e),d=!0):K(e)?(m=!0,d=e.some(v=>Rr(v)||Pt(v)),c=()=>e.map(v=>{if(Be(v))return v.value;if(Rr(v))return u(v);if(Y(v))return l?l(v,2):v()})):Y(e)?t?c=l?()=>l(e,2):e:c=()=>{if(p){ur();try{p()}finally{hr()}}const v=Pr;Pr=f;try{return l?l(e,3,[h]):e(h)}finally{Pr=v}}:c=Qe,t&&i){const v=c,E=i===!0?1/0:i;c=()=>or(v(),E)}const S=$h(),_=()=>{f.stop(),S&&S.active&&Cl(S.effects,f)};if(s&&t){const v=t;t=(...E)=>{v(...E),_()}}let g=m?new Array(e.length).fill(Ui):Ui;const y=v=>{if(!(!(f.flags&1)||!f.dirty&&!v))if(t){const E=f.run();if(i||d||(m?E.some((O,N)=>ot(O,g[N])):ot(E,g))){p&&p();const O=Pr;Pr=f;try{const N=[E,g===Ui?void 0:m&&g[0]===Ui?[]:g,h];g=E,l?l(t,3,N):t(...N)}finally{Pr=O}}}else f.run()};return a&&a(y),f=new hi(c),f.scheduler=o?()=>o(y,!1):y,h=v=>Zh(v,!1,f),p=f.onStop=()=>{const v=bs.get(f);if(v){if(l)l(v,4);else for(const E of v)E();bs.delete(f)}},t?n?y(!0):g=f.run():o?o(y.bind(null,!0),!0):f.run(),_.pause=f.pause.bind(f),_.resume=f.resume.bind(f),_.stop=_,_}function or(e,t=1/0,r){if(t<=0||!me(e)||e.__v_skip||(r=r||new Map,(r.get(e)||0)>=t))return e;if(r.set(e,t),t--,Be(e))or(e.value,t,r);else if(K(e))for(let n=0;n{or(n,t,r)});else if(Gs(e)){for(const n in e)or(e[n],t,r);for(const n of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,n)&&or(e[n],t,r)}return e}const ep=[];function by(e){ep.push(e)}function Sy(){ep.pop()}function _y(e,t){}const wy={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER",COMPONENT_UPDATE:15,15:"COMPONENT_UPDATE",APP_UNMOUNT_CLEANUP:16,16:"APP_UNMOUNT_CLEANUP"},Ey={sp:"serverPrefetch hook",bc:"beforeCreate hook",c:"created hook",bm:"beforeMount hook",m:"mounted hook",bu:"beforeUpdate hook",u:"updated",bum:"beforeUnmount hook",um:"unmounted hook",a:"activated hook",da:"deactivated hook",ec:"errorCaptured hook",rtc:"renderTracked hook",rtg:"renderTriggered hook",0:"setup function",1:"render function",2:"watcher getter",3:"watcher callback",4:"watcher cleanup function",5:"native event handler",6:"component event handler",7:"vnode hook",8:"directive hook",9:"transition hook",10:"app errorHandler",11:"app warnHandler",12:"ref function",13:"async component loader",14:"scheduler flush",15:"component update",16:"app unmount cleanup function"};function Un(e,t,r,n){try{return n?e(...n):e()}catch(i){fn(i,t,r)}}function Ft(e,t,r,n){if(Y(e)){const i=Un(e,t,r,n);return i&&Ol(i)&&i.catch(s=>{fn(s,t,r)}),i}if(K(e)){const i=[];for(let s=0;s>>1,i=at[n],s=mi(i);s=mi(r)?at.push(e):at.splice(Py(t),0,e),e.flags|=1,rp()}}function rp(){Ss||(Ss=tp.then(np))}function gi(e){K(e)?An.push(...e):Ar&&e.id===-1?Ar.splice(vn+1,0,e):e.flags&1||(An.push(e),e.flags|=1),rp()}function Kc(e,t,r=Gt+1){for(;rmi(r)-mi(n));if(An.length=0,Ar){Ar.push(...t);return}for(Ar=t,vn=0;vne.id==null?e.flags&2?-1:1/0:e.id;function np(e){try{for(Gt=0;Gtbn.emit(i,...s)),Vi=[]):typeof window<"u"&&window.HTMLElement&&!((n=(r=window.navigator)==null?void 0:r.userAgent)!=null&&n.includes("jsdom"))?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(s=>{ip(s,t)}),setTimeout(()=>{bn||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,Vi=[])},3e3)):Vi=[]}let Je=null,so=null;function yi(e){const t=Je;return Je=e,so=e&&e.type.__scopeId||null,t}function Ay(e){so=e}function Cy(){so=null}const Oy=e=>Ll;function Ll(e,t=Je,r){if(!t||e._n)return e;const n=(...i)=>{n._d&&_i(-1);const s=yi(t);let o;try{o=e(...i)}finally{yi(s),n._d&&_i(1)}return o};return n._n=!0,n._c=!0,n._d=!0,n}function xy(e,t){if(Je===null)return e;const r=Fi(Je),n=e.dirs||(e.dirs=[]);for(let i=0;ie.__isTeleport,ii=e=>e&&(e.disabled||e.disabled===""),Gc=e=>e&&(e.defer||e.defer===""),zc=e=>typeof SVGElement<"u"&&e instanceof SVGElement,Jc=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,Wa=(e,t)=>{const r=e&&e.to;return ee(r)?t?t(r):null:r},ap={name:"Teleport",__isTeleport:!0,process(e,t,r,n,i,s,o,a,l,u){const{mc:f,pc:c,pbc:p,o:{insert:h,querySelector:d,createText:m,createComment:S}}=u,_=ii(t.props);let{shapeFlag:g,children:y,dynamicChildren:v}=t;if(e==null){const E=t.el=m(""),O=t.anchor=m("");h(E,r,n),h(O,r,n);const N=(P,C)=>{g&16&&f(y,P,C,i,s,o,a,l)},I=()=>{const P=t.target=Wa(t.props,d),C=lp(P,t,m,h);P&&(o!=="svg"&&zc(P)?o="svg":o!=="mathml"&&Jc(P)&&(o="mathml"),i&&i.isCE&&(i.ce._teleportTargets||(i.ce._teleportTargets=new Set)).add(P),_||(N(P,C),ns(t,!1)))};_&&(N(r,O),ns(t,!0)),Gc(t.props)?(t.el.__isMounted=!1,ke(()=>{I(),delete t.el.__isMounted},s)):I()}else{if(Gc(t.props)&&e.el.__isMounted===!1){ke(()=>{ap.process(e,t,r,n,i,s,o,a,l,u)},s);return}t.el=e.el,t.targetStart=e.targetStart;const E=t.anchor=e.anchor,O=t.target=e.target,N=t.targetAnchor=e.targetAnchor,I=ii(e.props),P=I?r:O,C=I?E:N;if(o==="svg"||zc(O)?o="svg":(o==="mathml"||Jc(O))&&(o="mathml"),v?(p(e.dynamicChildren,v,P,i,s,o,a),zl(e,t,!0)):l||c(e,t,P,C,i,s,o,a,!1),_)I?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Wi(t,r,E,u,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const M=t.target=Wa(t.props,d);M&&Wi(t,M,null,u,0)}else I&&Wi(t,O,N,u,1);ns(t,_)}},remove(e,t,r,{um:n,o:{remove:i}},s){const{shapeFlag:o,children:a,anchor:l,targetStart:u,targetAnchor:f,target:c,props:p}=e;if(c&&(i(u),i(f)),s&&i(l),o&16){const h=s||!ii(p);for(let d=0;d{e.isMounted=!0}),co(()=>{e.isUnmounting=!0}),e}const xt=[Function,Array],ql={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:xt,onEnter:xt,onAfterEnter:xt,onEnterCancelled:xt,onBeforeLeave:xt,onLeave:xt,onAfterLeave:xt,onLeaveCancelled:xt,onBeforeAppear:xt,onAppear:xt,onAfterAppear:xt,onAppearCancelled:xt},cp=e=>{const t=e.subTree;return t.component?cp(t.component):t},Ny={name:"BaseTransition",props:ql,setup(e,{slots:t}){const r=vt(),n=kl();return()=>{const i=t.default&&oo(t.default(),!0);if(!i||!i.length)return;const s=fp(i),o=ue(e),{mode:a}=o;if(n.isLeaving)return Do(s);const l=Qc(s);if(!l)return Do(s);let u=xn(l,o,n,r,c=>u=c);l.type!==Ie&&dr(l,u);let f=r.subTree&&Qc(r.subTree);if(f&&f.type!==Ie&&!jt(f,l)&&cp(r).type!==Ie){let c=xn(f,o,n,r);if(dr(f,c),a==="out-in"&&l.type!==Ie)return n.isLeaving=!0,c.afterLeave=()=>{n.isLeaving=!1,r.job.flags&8||r.update(),delete c.afterLeave,f=void 0},Do(s);a==="in-out"&&l.type!==Ie?c.delayLeave=(p,h,d)=>{const m=hp(n,f);m[String(f.key)]=f,p[ir]=()=>{h(),p[ir]=void 0,delete u.delayedLeave,f=void 0},u.delayedLeave=()=>{d(),delete u.delayedLeave,f=void 0}}:f=void 0}else f&&(f=void 0);return s}}};function fp(e){let t=e[0];if(e.length>1){for(const r of e)if(r.type!==Ie){t=r;break}}return t}const up=Ny;function hp(e,t){const{leavingVNodes:r}=e;let n=r.get(t.type);return n||(n=Object.create(null),r.set(t.type,n)),n}function xn(e,t,r,n,i){const{appear:s,mode:o,persisted:a=!1,onBeforeEnter:l,onEnter:u,onAfterEnter:f,onEnterCancelled:c,onBeforeLeave:p,onLeave:h,onAfterLeave:d,onLeaveCancelled:m,onBeforeAppear:S,onAppear:_,onAfterAppear:g,onAppearCancelled:y}=t,v=String(e.key),E=hp(r,e),O=(P,C)=>{P&&Ft(P,n,9,C)},N=(P,C)=>{const M=C[1];O(P,C),K(P)?P.every(T=>T.length<=1)&&M():P.length<=1&&M()},I={mode:o,persisted:a,beforeEnter(P){let C=l;if(!r.isMounted)if(s)C=S||l;else return;P[ir]&&P[ir](!0);const M=E[v];M&&jt(e,M)&&M.el[ir]&&M.el[ir](),O(C,[P])},enter(P){let C=u,M=f,T=c;if(!r.isMounted)if(s)C=_||u,M=g||f,T=y||c;else return;let q=!1;const W=P[Ki]=G=>{q||(q=!0,G?O(T,[P]):O(M,[P]),I.delayedLeave&&I.delayedLeave(),P[Ki]=void 0)};C?N(C,[P,W]):W()},leave(P,C){const M=String(e.key);if(P[Ki]&&P[Ki](!0),r.isUnmounting)return C();O(p,[P]);let T=!1;const q=P[ir]=W=>{T||(T=!0,C(),W?O(m,[P]):O(d,[P]),P[ir]=void 0,E[M]===e&&delete E[M])};E[M]=e,h?N(h,[P,q]):q()},clone(P){const C=xn(P,t,r,n,i);return i&&i(C),C}};return I}function Do(e){if(Ni(e))return e=Jt(e),e.children=null,e}function Qc(e){if(!Ni(e))return op(e.type)&&e.children?fp(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:r}=e;if(r){if(t&16)return r[0];if(t&32&&Y(r.default))return r.default()}}function dr(e,t){e.shapeFlag&6&&e.component?(e.transition=t,dr(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function oo(e,t=!1,r){let n=[],i=0;for(let s=0;s1)for(let s=0;sr.value,set:s=>r.value=s})}return r}const ws=new WeakMap;function Cn(e,t,r,n,i=!1){if(K(e)){e.forEach((d,m)=>Cn(d,t&&(K(t)?t[m]:t),r,n,i));return}if($r(n)&&!i){n.shapeFlag&512&&n.type.__asyncResolved&&n.component.subTree.component&&Cn(e,t,r,n.component.subTree);return}const s=n.shapeFlag&4?Fi(n.component):n.el,o=i?null:s,{i:a,r:l}=e,u=t&&t.r,f=a.refs===le?a.refs={}:a.refs,c=a.setupState,p=ue(c),h=c===le?Sn:d=>pe(p,d);if(u!=null&&u!==l){if(Xc(t),ee(u))f[u]=null,h(u)&&(c[u]=null);else if(Be(u)){u.value=null;const d=t;d.k&&(f[d.k]=null)}}if(Y(l))Un(l,a,12,[o,f]);else{const d=ee(l),m=Be(l);if(d||m){const S=()=>{if(e.f){const _=d?h(l)?c[l]:f[l]:l.value;if(i)K(_)&&Cl(_,s);else if(K(_))_.includes(s)||_.push(s);else if(d)f[l]=[s],h(l)&&(c[l]=f[l]);else{const g=[s];l.value=g,e.k&&(f[e.k]=g)}}else d?(f[l]=o,h(l)&&(c[l]=o)):m&&(l.value=o,e.k&&(f[e.k]=o))};if(o){const _=()=>{S(),ws.delete(e)};_.id=-1,ws.set(e,_),ke(_,r)}else Xc(e),S()}}}function Xc(e){const t=ws.get(e);t&&(t.flags|=8,ws.delete(e))}let Yc=!1;const mn=()=>{Yc||(console.error("Hydration completed but contains mismatches."),Yc=!0)},Fy=e=>e.namespaceURI.includes("svg")&&e.tagName!=="foreignObject",Dy=e=>e.namespaceURI.includes("MathML"),Gi=e=>{if(e.nodeType===1){if(Fy(e))return"svg";if(Dy(e))return"mathml"}},_n=e=>e.nodeType===8;function Ly(e){const{mt:t,p:r,o:{patchProp:n,createText:i,nextSibling:s,parentNode:o,remove:a,insert:l,createComment:u}}=e,f=(y,v)=>{if(!v.hasChildNodes()){r(null,y,v),_s(),v._vnode=y;return}c(v.firstChild,y,null,null,null),_s(),v._vnode=y},c=(y,v,E,O,N,I=!1)=>{I=I||!!v.dynamicChildren;const P=_n(y)&&y.data==="[",C=()=>m(y,v,E,O,N,P),{type:M,ref:T,shapeFlag:q,patchFlag:W}=v;let G=y.nodeType;v.el=y,W===-2&&(I=!1,v.dynamicChildren=null);let U=null;switch(M){case Mr:G!==3?v.children===""?(l(v.el=i(""),o(y),y),U=y):U=C():(y.data!==v.children&&(mn(),y.data=v.children),U=s(y));break;case Ie:g(y)?(U=s(y),_(v.el=y.content.firstChild,y,E)):G!==8||P?U=C():U=s(y);break;case Yr:if(P&&(y=s(y),G=y.nodeType),G===1||G===3){U=y;const z=!v.children.length;for(let k=0;k{I=I||!!v.dynamicChildren;const{type:P,props:C,patchFlag:M,shapeFlag:T,dirs:q,transition:W}=v,G=P==="input"||P==="option";if(G||M!==-1){q&&zt(v,null,E,"created");let U=!1;if(g(y)){U=Lp(null,W)&&E&&E.vnode.props&&E.vnode.props.appear;const k=y.content.firstChild;if(U){const re=k.getAttribute("class");re&&(k.$cls=re),W.beforeEnter(k)}_(k,y,E),v.el=y=k}if(T&16&&!(C&&(C.innerHTML||C.textContent))){let k=h(y.firstChild,v,y,E,O,N,I);for(;k;){zi(y,1)||mn();const re=k;k=k.nextSibling,a(re)}}else if(T&8){let k=v.children;k[0]===` +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./Install.js","./legacy.js","./_plugin-vue_export-helper.js","./Modal.js","./assets/Modal.css","./assets/Install.css","./SettingsGeneralPage.js","./CalloutReadOnly.vue_vue_type_script_setup_true_lang.js","./assets/CalloutReadOnly.css","./index.js","./assets/SettingsGeneralPage.css","./SettingsIndexPage.js","./assets/SettingsIndexPage.css","./SettingsSitesIndex.js","./assets/SettingsSitesIndex.css"])))=>i.map(i=>d[i]); +import{a as Hc,_ as Hi}from"./legacy.js";function At(e){const t=Object.create(null);for(const r of e.split(","))t[r]=1;return r=>r in t}const le={},wn=[],Qe=()=>{},Sn=()=>!1,an=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Al=e=>e.startsWith("onUpdate:"),oe=Object.assign,Cl=(e,t)=>{const r=e.indexOf(t);r>-1&&e.splice(r,1)},cm=Object.prototype.hasOwnProperty,pe=(e,t)=>cm.call(e,t),K=Array.isArray,En=e=>Hn(e)==="[object Map]",ln=e=>Hn(e)==="[object Set]",jc=e=>Hn(e)==="[object Date]",fm=e=>Hn(e)==="[object RegExp]",Y=e=>typeof e=="function",ee=e=>typeof e=="string",yt=e=>typeof e=="symbol",me=e=>e!==null&&typeof e=="object",Ol=e=>(me(e)||Y(e))&&Y(e.then)&&Y(e.catch),Ah=Object.prototype.toString,Hn=e=>Ah.call(e),um=e=>Hn(e).slice(8,-1),zs=e=>Hn(e)==="[object Object]",xl=e=>ee(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Ir=At(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),hm=At("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),Js=e=>{const t=Object.create(null);return(r=>t[r]||(t[r]=e(r)))},pm=/-\w/g,Te=Js(e=>e.replace(pm,t=>t.slice(1).toUpperCase())),dm=/\B([A-Z])/g,pt=Js(e=>e.replace(dm,"-$1").toLowerCase()),cn=Js(e=>e.charAt(0).toUpperCase()+e.slice(1)),Tn=Js(e=>e?`on${cn(e)}`:""),ot=(e,t)=>!Object.is(e,t),Pn=(e,...t)=>{for(let r=0;r{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:n,value:r})},Qs=e=>{const t=parseFloat(e);return isNaN(t)?e:t},gs=e=>{const t=ee(e)?Number(e):NaN;return isNaN(t)?e:t};let Uc;const Xs=()=>Uc||(Uc=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function gm(e,t){return e+JSON.stringify(t,(r,n)=>typeof n=="function"?n.toString():n)}const mm="Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error,Symbol",ym=At(mm);function Ii(e){if(K(e)){const t={};for(let r=0;r{if(r){const n=r.split(bm);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function Ri(e){let t="";if(ee(e))t=e;else if(K(e))for(let r=0;rLr(r,t))}const Ih=e=>!!(e&&e.__v_isRef===!0),Rh=e=>ee(e)?e:e==null?"":K(e)||me(e)&&(e.toString===Ah||!Y(e.toString))?Ih(e)?Rh(e.value):JSON.stringify(e,Nh,2):String(e),Nh=(e,t)=>Ih(t)?Nh(e,t.value):En(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((r,[n,i],s)=>(r[No(n,s)+" =>"]=i,r),{})}:ln(t)?{[`Set(${t.size})`]:[...t.values()].map(r=>No(r))}:yt(t)?No(t):me(t)&&!K(t)&&!zs(t)?String(t):t,No=(e,t="")=>{var r;return yt(e)?`Symbol(${(r=e.description)!=null?r:t})`:e};function $m(e){return e==null?"initial":typeof e=="string"?e===""?" ":e:String(e)}let Ze;class Il{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=Ze,!t&&Ze&&(this.index=(Ze.scopes||(Ze.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,r;if(this.scopes)for(t=0,r=this.scopes.length;t0&&--this._on===0&&(Ze=this.prevScope,this.prevScope=void 0)}stop(t){if(this._active){this._active=!1;let r,n;for(r=0,n=this.effects.length;r0)return;if(ni){let t=ni;for(ni=void 0;t;){const r=t.next;t.next=void 0,t.flags&=-9,t=r}}let e;for(;ri;){let t=ri;for(ri=void 0;t;){const r=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(n){e||(e=n)}t=r}}if(e)throw e}function Dh(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Lh(e){let t,r=e.depsTail,n=r;for(;n;){const i=n.prevDep;n.version===-1?(n===r&&(r=i),$l(n),Dm(n)):t=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=i}e.deps=t,e.depsTail=r}function ja(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(kh(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function kh(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===pi)||(e.globalVersion=pi,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!ja(e))))return;e.flags|=2;const t=e.dep,r=Se,n=Ut;Se=e,Ut=!0;try{Dh(e);const i=e.fn(e._value);(t.version===0||ot(i,e._value))&&(e.flags|=128,e._value=i,t.version++)}catch(i){throw t.version++,i}finally{Se=r,Ut=n,Lh(e),e.flags&=-3}}function $l(e,t=!1){const{dep:r,prevSub:n,nextSub:i}=e;if(n&&(n.nextSub=i,e.prevSub=void 0),i&&(i.prevSub=n,e.nextSub=void 0),r.subs===e&&(r.subs=n,!n&&r.computed)){r.computed.flags&=-5;for(let s=r.computed.deps;s;s=s.nextDep)$l(s,!0)}!t&&!--r.sc&&r.map&&r.map.delete(r.key)}function Dm(e){const{prevDep:t,nextDep:r}=e;t&&(t.nextDep=r,e.prevDep=void 0),r&&(r.prevDep=t,e.nextDep=void 0)}function Lm(e,t){e.effect instanceof hi&&(e=e.effect.fn);const r=new hi(e);t&&oe(r,t);try{r.run()}catch(i){throw r.stop(),i}const n=r.run.bind(r);return n.effect=r,n}function km(e){e.effect.stop()}let Ut=!0;const qh=[];function ur(){qh.push(Ut),Ut=!1}function hr(){const e=qh.pop();Ut=e===void 0?!0:e}function Vc(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const r=Se;Se=void 0;try{t()}finally{Se=r}}}let pi=0;class qm{constructor(t,r){this.sub=t,this.dep=r,this.version=r.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class Zs{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!Se||!Ut||Se===this.computed)return;let r=this.activeLink;if(r===void 0||r.sub!==Se)r=this.activeLink=new qm(Se,this),Se.deps?(r.prevDep=Se.depsTail,Se.depsTail.nextDep=r,Se.depsTail=r):Se.deps=Se.depsTail=r,Bh(r);else if(r.version===-1&&(r.version=this.version,r.nextDep)){const n=r.nextDep;n.prevDep=r.prevDep,r.prevDep&&(r.prevDep.nextDep=n),r.prevDep=Se.depsTail,r.nextDep=void 0,Se.depsTail.nextDep=r,Se.depsTail=r,Se.deps===r&&(Se.deps=n)}return r}trigger(t){this.version++,pi++,this.notify(t)}notify(t){Rl();try{for(let r=this.subs;r;r=r.prevSub)r.sub.notify()&&r.sub.dep.notify()}finally{Nl()}}}function Bh(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let n=t.deps;n;n=n.nextDep)Bh(n)}const r=e.dep.subs;r!==e&&(e.prevSub=r,r&&(r.nextSub=e)),e.dep.subs=e}}const ms=new WeakMap,Jr=Symbol(""),Ua=Symbol(""),di=Symbol("");function tt(e,t,r){if(Ut&&Se){let n=ms.get(e);n||ms.set(e,n=new Map);let i=n.get(r);i||(n.set(r,i=new Zs),i.map=n,i.key=r),i.track()}}function sr(e,t,r,n,i,s){const o=ms.get(e);if(!o){pi++;return}const a=l=>{l&&l.trigger()};if(Rl(),t==="clear")o.forEach(a);else{const l=K(e),u=l&&xl(r);if(l&&r==="length"){const f=Number(n);o.forEach((c,p)=>{(p==="length"||p===di||!yt(p)&&p>=f)&&a(c)})}else switch((r!==void 0||o.has(void 0))&&a(o.get(r)),u&&a(o.get(di)),t){case"add":l?u&&a(o.get("length")):(a(o.get(Jr)),En(e)&&a(o.get(Ua)));break;case"delete":l||(a(o.get(Jr)),En(e)&&a(o.get(Ua)));break;case"set":En(e)&&a(o.get(Jr));break}}Nl()}function Bm(e,t){const r=ms.get(e);return r&&r.get(t)}function gn(e){const t=ue(e);return t===e?t:(tt(t,"iterate",di),Pt(e)?t:t.map(Ge))}function eo(e){return tt(e=ue(e),"iterate",di),e}const Hm={__proto__:null,[Symbol.iterator](){return Mo(this,Symbol.iterator,Ge)},concat(...e){return gn(this).concat(...e.map(t=>K(t)?gn(t):t))},entries(){return Mo(this,"entries",e=>(e[1]=Ge(e[1]),e))},every(e,t){return Zt(this,"every",e,t,void 0,arguments)},filter(e,t){return Zt(this,"filter",e,t,r=>r.map(Ge),arguments)},find(e,t){return Zt(this,"find",e,t,Ge,arguments)},findIndex(e,t){return Zt(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Zt(this,"findLast",e,t,Ge,arguments)},findLastIndex(e,t){return Zt(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Zt(this,"forEach",e,t,void 0,arguments)},includes(...e){return Fo(this,"includes",e)},indexOf(...e){return Fo(this,"indexOf",e)},join(e){return gn(this).join(e)},lastIndexOf(...e){return Fo(this,"lastIndexOf",e)},map(e,t){return Zt(this,"map",e,t,void 0,arguments)},pop(){return zn(this,"pop")},push(...e){return zn(this,"push",e)},reduce(e,...t){return Wc(this,"reduce",e,t)},reduceRight(e,...t){return Wc(this,"reduceRight",e,t)},shift(){return zn(this,"shift")},some(e,t){return Zt(this,"some",e,t,void 0,arguments)},splice(...e){return zn(this,"splice",e)},toReversed(){return gn(this).toReversed()},toSorted(e){return gn(this).toSorted(e)},toSpliced(...e){return gn(this).toSpliced(...e)},unshift(...e){return zn(this,"unshift",e)},values(){return Mo(this,"values",Ge)}};function Mo(e,t,r){const n=eo(e),i=n[t]();return n!==e&&!Pt(e)&&(i._next=i.next,i.next=()=>{const s=i._next();return s.done||(s.value=r(s.value)),s}),i}const jm=Array.prototype;function Zt(e,t,r,n,i,s){const o=eo(e),a=o!==e&&!Pt(e),l=o[t];if(l!==jm[t]){const c=l.apply(e,s);return a?Ge(c):c}let u=r;o!==e&&(a?u=function(c,p){return r.call(this,Ge(c),p,e)}:r.length>2&&(u=function(c,p){return r.call(this,c,p,e)}));const f=l.call(o,u,n);return a&&i?i(f):f}function Wc(e,t,r,n){const i=eo(e);let s=r;return i!==e&&(Pt(e)?r.length>3&&(s=function(o,a,l){return r.call(this,o,a,l,e)}):s=function(o,a,l){return r.call(this,o,Ge(a),l,e)}),i[t](s,...n)}function Fo(e,t,r){const n=ue(e);tt(n,"iterate",di);const i=n[t](...r);return(i===-1||i===!1)&&no(r[0])?(r[0]=ue(r[0]),n[t](...r)):i}function zn(e,t,r=[]){ur(),Rl();const n=ue(e)[t].apply(e,r);return Nl(),hr(),n}const Um=At("__proto__,__v_isRef,__isVue"),Hh=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(yt));function Vm(e){yt(e)||(e=String(e));const t=ue(this);return tt(t,"has",e),t.hasOwnProperty(e)}class jh{constructor(t=!1,r=!1){this._isReadonly=t,this._isShallow=r}get(t,r,n){if(r==="__v_skip")return t.__v_skip;const i=this._isReadonly,s=this._isShallow;if(r==="__v_isReactive")return!i;if(r==="__v_isReadonly")return i;if(r==="__v_isShallow")return s;if(r==="__v_raw")return n===(i?s?zh:Gh:s?Kh:Wh).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(n)?t:void 0;const o=K(t);if(!i){let l;if(o&&(l=Hm[r]))return l;if(r==="hasOwnProperty")return Vm}const a=Reflect.get(t,r,Be(t)?t:n);if((yt(r)?Hh.has(r):Um(r))||(i||tt(t,"get",r),s))return a;if(Be(a)){const l=o&&xl(r)?a:a.value;return i&&me(l)?ys(l):l}return me(a)?i?ys(a):jn(a):a}}class Uh extends jh{constructor(t=!1){super(!1,t)}set(t,r,n,i){let s=t[r];if(!this._isShallow){const l=pr(s);if(!Pt(n)&&!pr(n)&&(s=ue(s),n=ue(n)),!K(t)&&Be(s)&&!Be(n))return l||(s.value=n),!0}const o=K(t)&&xl(r)?Number(r)e,ji=e=>Reflect.getPrototypeOf(e);function Jm(e,t,r){return function(...n){const i=this.__v_raw,s=ue(i),o=En(s),a=e==="entries"||e===Symbol.iterator&&o,l=e==="keys"&&o,u=i[e](...n),f=r?Va:t?bs:Ge;return!t&&tt(s,"iterate",l?Ua:Jr),{next(){const{value:c,done:p}=u.next();return p?{value:c,done:p}:{value:a?[f(c[0]),f(c[1])]:f(c),done:p}},[Symbol.iterator](){return this}}}}function Ui(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Qm(e,t){const r={get(i){const s=this.__v_raw,o=ue(s),a=ue(i);e||(ot(i,a)&&tt(o,"get",i),tt(o,"get",a));const{has:l}=ji(o),u=t?Va:e?bs:Ge;if(l.call(o,i))return u(s.get(i));if(l.call(o,a))return u(s.get(a));s!==o&&s.get(i)},get size(){const i=this.__v_raw;return!e&&tt(ue(i),"iterate",Jr),i.size},has(i){const s=this.__v_raw,o=ue(s),a=ue(i);return e||(ot(i,a)&&tt(o,"has",i),tt(o,"has",a)),i===a?s.has(i):s.has(i)||s.has(a)},forEach(i,s){const o=this,a=o.__v_raw,l=ue(a),u=t?Va:e?bs:Ge;return!e&&tt(l,"iterate",Jr),a.forEach((f,c)=>i.call(s,u(f),u(c),o))}};return oe(r,e?{add:Ui("add"),set:Ui("set"),delete:Ui("delete"),clear:Ui("clear")}:{add(i){!t&&!Pt(i)&&!pr(i)&&(i=ue(i));const s=ue(this);return ji(s).has.call(s,i)||(s.add(i),sr(s,"add",i,i)),this},set(i,s){!t&&!Pt(s)&&!pr(s)&&(s=ue(s));const o=ue(this),{has:a,get:l}=ji(o);let u=a.call(o,i);u||(i=ue(i),u=a.call(o,i));const f=l.call(o,i);return o.set(i,s),u?ot(s,f)&&sr(o,"set",i,s):sr(o,"add",i,s),this},delete(i){const s=ue(this),{has:o,get:a}=ji(s);let l=o.call(s,i);l||(i=ue(i),l=o.call(s,i)),a&&a.call(s,i);const u=s.delete(i);return l&&sr(s,"delete",i,void 0),u},clear(){const i=ue(this),s=i.size!==0,o=i.clear();return s&&sr(i,"clear",void 0,void 0),o}}),["keys","values","entries",Symbol.iterator].forEach(i=>{r[i]=Jm(i,e,t)}),r}function to(e,t){const r=Qm(e,t);return(n,i,s)=>i==="__v_isReactive"?!e:i==="__v_isReadonly"?e:i==="__v_raw"?n:Reflect.get(pe(r,i)&&i in n?r:n,i,s)}const Xm={get:to(!1,!1)},Ym={get:to(!1,!0)},Zm={get:to(!0,!1)},ey={get:to(!0,!0)},Wh=new WeakMap,Kh=new WeakMap,Gh=new WeakMap,zh=new WeakMap;function ty(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function ry(e){return e.__v_skip||!Object.isExtensible(e)?0:ty(um(e))}function jn(e){return pr(e)?e:ro(e,!1,Wm,Xm,Wh)}function Jh(e){return ro(e,!1,Gm,Ym,Kh)}function ys(e){return ro(e,!0,Km,Zm,Gh)}function ny(e){return ro(e,!0,zm,ey,zh)}function ro(e,t,r,n,i){if(!me(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const s=ry(e);if(s===0)return e;const o=i.get(e);if(o)return o;const a=new Proxy(e,s===2?n:r);return i.set(e,a),a}function Rr(e){return pr(e)?Rr(e.__v_raw):!!(e&&e.__v_isReactive)}function pr(e){return!!(e&&e.__v_isReadonly)}function Pt(e){return!!(e&&e.__v_isShallow)}function no(e){return e?!!e.__v_raw:!1}function ue(e){const t=e&&e.__v_raw;return t?ue(t):e}function vs(e){return!pe(e,"__v_skip")&&Object.isExtensible(e)&&Ch(e,"__v_skip",!0),e}const Ge=e=>me(e)?jn(e):e,bs=e=>me(e)?ys(e):e;function Be(e){return e?e.__v_isRef===!0:!1}function Nr(e){return Qh(e,!1)}function Ml(e){return Qh(e,!0)}function Qh(e,t){return Be(e)?e:new iy(e,t)}class iy{constructor(t,r){this.dep=new Zs,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=r?t:ue(t),this._value=r?t:Ge(t),this.__v_isShallow=r}get value(){return this.dep.track(),this._value}set value(t){const r=this._rawValue,n=this.__v_isShallow||Pt(t)||pr(t);t=n?t:ue(t),ot(t,r)&&(this._rawValue=t,this._value=n?t:Ge(t),this.dep.trigger())}}function sy(e){e.dep&&e.dep.trigger()}function io(e){return Be(e)?e.value:e}function oy(e){return Y(e)?e():io(e)}const ay={get:(e,t,r)=>t==="__v_raw"?e:io(Reflect.get(e,t,r)),set:(e,t,r,n)=>{const i=e[t];return Be(i)&&!Be(r)?(i.value=r,!0):Reflect.set(e,t,r,n)}};function Fl(e){return Rr(e)?e:new Proxy(e,ay)}class ly{constructor(t){this.__v_isRef=!0,this._value=void 0;const r=this.dep=new Zs,{get:n,set:i}=t(r.track.bind(r),r.trigger.bind(r));this._get=n,this._set=i}get value(){return this._value=this._get()}set value(t){this._set(t)}}function Xh(e){return new ly(e)}function cy(e){const t=K(e)?new Array(e.length):{};for(const r in e)t[r]=Yh(e,r);return t}class fy{constructor(t,r,n){this._object=t,this._key=r,this._defaultValue=n,this.__v_isRef=!0,this._value=void 0}get value(){const t=this._object[this._key];return this._value=t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return Bm(ue(this._object),this._key)}}class uy{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function hy(e,t,r){return Be(e)?e:Y(e)?new uy(e):me(e)&&arguments.length>1?Yh(e,t,r):Nr(e)}function Yh(e,t,r){const n=e[t];return Be(n)?n:new fy(e,t,r)}class py{constructor(t,r,n){this.fn=t,this.setter=r,this._value=void 0,this.dep=new Zs(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=pi-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!r,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&Se!==this)return Fh(this,!0),!0}get value(){const t=this.dep.track();return kh(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function dy(e,t,r=!1){let n,i;return Y(e)?n=e:(n=e.get,i=e.set),new py(n,i,r)}const gy={GET:"get",HAS:"has",ITERATE:"iterate"},my={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"},Vi={},Ss=new WeakMap;let Pr;function yy(){return Pr}function Zh(e,t=!1,r=Pr){if(r){let n=Ss.get(r);n||Ss.set(r,n=[]),n.push(e)}}function vy(e,t,r=le){const{immediate:n,deep:i,once:s,scheduler:o,augmentJob:a,call:l}=r,u=v=>i?v:Pt(v)||i===!1||i===0?or(v,1):or(v);let f,c,p,h,d=!1,m=!1;if(Be(e)?(c=()=>e.value,d=Pt(e)):Rr(e)?(c=()=>u(e),d=!0):K(e)?(m=!0,d=e.some(v=>Rr(v)||Pt(v)),c=()=>e.map(v=>{if(Be(v))return v.value;if(Rr(v))return u(v);if(Y(v))return l?l(v,2):v()})):Y(e)?t?c=l?()=>l(e,2):e:c=()=>{if(p){ur();try{p()}finally{hr()}}const v=Pr;Pr=f;try{return l?l(e,3,[h]):e(h)}finally{Pr=v}}:c=Qe,t&&i){const v=c,E=i===!0?1/0:i;c=()=>or(v(),E)}const S=$h(),_=()=>{f.stop(),S&&S.active&&Cl(S.effects,f)};if(s&&t){const v=t;t=(...E)=>{v(...E),_()}}let g=m?new Array(e.length).fill(Vi):Vi;const y=v=>{if(!(!(f.flags&1)||!f.dirty&&!v))if(t){const E=f.run();if(i||d||(m?E.some((O,N)=>ot(O,g[N])):ot(E,g))){p&&p();const O=Pr;Pr=f;try{const N=[E,g===Vi?void 0:m&&g[0]===Vi?[]:g,h];g=E,l?l(t,3,N):t(...N)}finally{Pr=O}}}else f.run()};return a&&a(y),f=new hi(c),f.scheduler=o?()=>o(y,!1):y,h=v=>Zh(v,!1,f),p=f.onStop=()=>{const v=Ss.get(f);if(v){if(l)l(v,4);else for(const E of v)E();Ss.delete(f)}},t?n?y(!0):g=f.run():o?o(y.bind(null,!0),!0):f.run(),_.pause=f.pause.bind(f),_.resume=f.resume.bind(f),_.stop=_,_}function or(e,t=1/0,r){if(t<=0||!me(e)||e.__v_skip||(r=r||new Map,(r.get(e)||0)>=t))return e;if(r.set(e,t),t--,Be(e))or(e.value,t,r);else if(K(e))for(let n=0;n{or(n,t,r)});else if(zs(e)){for(const n in e)or(e[n],t,r);for(const n of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,n)&&or(e[n],t,r)}return e}const ep=[];function by(e){ep.push(e)}function Sy(){ep.pop()}function _y(e,t){}const wy={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER",COMPONENT_UPDATE:15,15:"COMPONENT_UPDATE",APP_UNMOUNT_CLEANUP:16,16:"APP_UNMOUNT_CLEANUP"},Ey={sp:"serverPrefetch hook",bc:"beforeCreate hook",c:"created hook",bm:"beforeMount hook",m:"mounted hook",bu:"beforeUpdate hook",u:"updated",bum:"beforeUnmount hook",um:"unmounted hook",a:"activated hook",da:"deactivated hook",ec:"errorCaptured hook",rtc:"renderTracked hook",rtg:"renderTriggered hook",0:"setup function",1:"render function",2:"watcher getter",3:"watcher callback",4:"watcher cleanup function",5:"native event handler",6:"component event handler",7:"vnode hook",8:"directive hook",9:"transition hook",10:"app errorHandler",11:"app warnHandler",12:"ref function",13:"async component loader",14:"scheduler flush",15:"component update",16:"app unmount cleanup function"};function Un(e,t,r,n){try{return n?e(...n):e()}catch(i){fn(i,t,r)}}function Ft(e,t,r,n){if(Y(e)){const i=Un(e,t,r,n);return i&&Ol(i)&&i.catch(s=>{fn(s,t,r)}),i}if(K(e)){const i=[];for(let s=0;s>>1,i=at[n],s=mi(i);s=mi(r)?at.push(e):at.splice(Py(t),0,e),e.flags|=1,rp()}}function rp(){_s||(_s=tp.then(np))}function gi(e){K(e)?An.push(...e):Ar&&e.id===-1?Ar.splice(vn+1,0,e):e.flags&1||(An.push(e),e.flags|=1),rp()}function Kc(e,t,r=Gt+1){for(;rmi(r)-mi(n));if(An.length=0,Ar){Ar.push(...t);return}for(Ar=t,vn=0;vne.id==null?e.flags&2?-1:1/0:e.id;function np(e){try{for(Gt=0;Gtbn.emit(i,...s)),Wi=[]):typeof window<"u"&&window.HTMLElement&&!((n=(r=window.navigator)==null?void 0:r.userAgent)!=null&&n.includes("jsdom"))?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(s=>{ip(s,t)}),setTimeout(()=>{bn||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,Wi=[])},3e3)):Wi=[]}let Je=null,oo=null;function yi(e){const t=Je;return Je=e,oo=e&&e.type.__scopeId||null,t}function Ay(e){oo=e}function Cy(){oo=null}const Oy=e=>Ll;function Ll(e,t=Je,r){if(!t||e._n)return e;const n=(...i)=>{n._d&&_i(-1);const s=yi(t);let o;try{o=e(...i)}finally{yi(s),n._d&&_i(1)}return o};return n._n=!0,n._c=!0,n._d=!0,n}function xy(e,t){if(Je===null)return e;const r=Fi(Je),n=e.dirs||(e.dirs=[]);for(let i=0;ie.__isTeleport,ii=e=>e&&(e.disabled||e.disabled===""),Gc=e=>e&&(e.defer||e.defer===""),zc=e=>typeof SVGElement<"u"&&e instanceof SVGElement,Jc=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,Wa=(e,t)=>{const r=e&&e.to;return ee(r)?t?t(r):null:r},ap={name:"Teleport",__isTeleport:!0,process(e,t,r,n,i,s,o,a,l,u){const{mc:f,pc:c,pbc:p,o:{insert:h,querySelector:d,createText:m,createComment:S}}=u,_=ii(t.props);let{shapeFlag:g,children:y,dynamicChildren:v}=t;if(e==null){const E=t.el=m(""),O=t.anchor=m("");h(E,r,n),h(O,r,n);const N=(P,C)=>{g&16&&f(y,P,C,i,s,o,a,l)},I=()=>{const P=t.target=Wa(t.props,d),C=lp(P,t,m,h);P&&(o!=="svg"&&zc(P)?o="svg":o!=="mathml"&&Jc(P)&&(o="mathml"),i&&i.isCE&&(i.ce._teleportTargets||(i.ce._teleportTargets=new Set)).add(P),_||(N(P,C),is(t,!1)))};_&&(N(r,O),is(t,!0)),Gc(t.props)?(t.el.__isMounted=!1,ke(()=>{I(),delete t.el.__isMounted},s)):I()}else{if(Gc(t.props)&&e.el.__isMounted===!1){ke(()=>{ap.process(e,t,r,n,i,s,o,a,l,u)},s);return}t.el=e.el,t.targetStart=e.targetStart;const E=t.anchor=e.anchor,O=t.target=e.target,N=t.targetAnchor=e.targetAnchor,I=ii(e.props),P=I?r:O,C=I?E:N;if(o==="svg"||zc(O)?o="svg":(o==="mathml"||Jc(O))&&(o="mathml"),v?(p(e.dynamicChildren,v,P,i,s,o,a),zl(e,t,!0)):l||c(e,t,P,C,i,s,o,a,!1),_)I?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Ki(t,r,E,u,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const M=t.target=Wa(t.props,d);M&&Ki(t,M,null,u,0)}else I&&Ki(t,O,N,u,1);is(t,_)}},remove(e,t,r,{um:n,o:{remove:i}},s){const{shapeFlag:o,children:a,anchor:l,targetStart:u,targetAnchor:f,target:c,props:p}=e;if(c&&(i(u),i(f)),s&&i(l),o&16){const h=s||!ii(p);for(let d=0;d{e.isMounted=!0}),fo(()=>{e.isUnmounting=!0}),e}const xt=[Function,Array],ql={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:xt,onEnter:xt,onAfterEnter:xt,onEnterCancelled:xt,onBeforeLeave:xt,onLeave:xt,onAfterLeave:xt,onLeaveCancelled:xt,onBeforeAppear:xt,onAppear:xt,onAfterAppear:xt,onAppearCancelled:xt},cp=e=>{const t=e.subTree;return t.component?cp(t.component):t},Ny={name:"BaseTransition",props:ql,setup(e,{slots:t}){const r=vt(),n=kl();return()=>{const i=t.default&&ao(t.default(),!0);if(!i||!i.length)return;const s=fp(i),o=ue(e),{mode:a}=o;if(n.isLeaving)return Do(s);const l=Qc(s);if(!l)return Do(s);let u=xn(l,o,n,r,c=>u=c);l.type!==Ie&&dr(l,u);let f=r.subTree&&Qc(r.subTree);if(f&&f.type!==Ie&&!jt(f,l)&&cp(r).type!==Ie){let c=xn(f,o,n,r);if(dr(f,c),a==="out-in"&&l.type!==Ie)return n.isLeaving=!0,c.afterLeave=()=>{n.isLeaving=!1,r.job.flags&8||r.update(),delete c.afterLeave,f=void 0},Do(s);a==="in-out"&&l.type!==Ie?c.delayLeave=(p,h,d)=>{const m=hp(n,f);m[String(f.key)]=f,p[ir]=()=>{h(),p[ir]=void 0,delete u.delayedLeave,f=void 0},u.delayedLeave=()=>{d(),delete u.delayedLeave,f=void 0}}:f=void 0}else f&&(f=void 0);return s}}};function fp(e){let t=e[0];if(e.length>1){for(const r of e)if(r.type!==Ie){t=r;break}}return t}const up=Ny;function hp(e,t){const{leavingVNodes:r}=e;let n=r.get(t.type);return n||(n=Object.create(null),r.set(t.type,n)),n}function xn(e,t,r,n,i){const{appear:s,mode:o,persisted:a=!1,onBeforeEnter:l,onEnter:u,onAfterEnter:f,onEnterCancelled:c,onBeforeLeave:p,onLeave:h,onAfterLeave:d,onLeaveCancelled:m,onBeforeAppear:S,onAppear:_,onAfterAppear:g,onAppearCancelled:y}=t,v=String(e.key),E=hp(r,e),O=(P,C)=>{P&&Ft(P,n,9,C)},N=(P,C)=>{const M=C[1];O(P,C),K(P)?P.every(T=>T.length<=1)&&M():P.length<=1&&M()},I={mode:o,persisted:a,beforeEnter(P){let C=l;if(!r.isMounted)if(s)C=S||l;else return;P[ir]&&P[ir](!0);const M=E[v];M&&jt(e,M)&&M.el[ir]&&M.el[ir](),O(C,[P])},enter(P){let C=u,M=f,T=c;if(!r.isMounted)if(s)C=_||u,M=g||f,T=y||c;else return;let q=!1;const W=P[Gi]=G=>{q||(q=!0,G?O(T,[P]):O(M,[P]),I.delayedLeave&&I.delayedLeave(),P[Gi]=void 0)};C?N(C,[P,W]):W()},leave(P,C){const M=String(e.key);if(P[Gi]&&P[Gi](!0),r.isUnmounting)return C();O(p,[P]);let T=!1;const q=P[ir]=W=>{T||(T=!0,C(),W?O(m,[P]):O(d,[P]),P[ir]=void 0,E[M]===e&&delete E[M])};E[M]=e,h?N(h,[P,q]):q()},clone(P){const C=xn(P,t,r,n,i);return i&&i(C),C}};return I}function Do(e){if(Ni(e))return e=Jt(e),e.children=null,e}function Qc(e){if(!Ni(e))return op(e.type)&&e.children?fp(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:r}=e;if(r){if(t&16)return r[0];if(t&32&&Y(r.default))return r.default()}}function dr(e,t){e.shapeFlag&6&&e.component?(e.transition=t,dr(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function ao(e,t=!1,r){let n=[],i=0;for(let s=0;s1)for(let s=0;sr.value,set:s=>r.value=s})}return r}const Es=new WeakMap;function Cn(e,t,r,n,i=!1){if(K(e)){e.forEach((d,m)=>Cn(d,t&&(K(t)?t[m]:t),r,n,i));return}if($r(n)&&!i){n.shapeFlag&512&&n.type.__asyncResolved&&n.component.subTree.component&&Cn(e,t,r,n.component.subTree);return}const s=n.shapeFlag&4?Fi(n.component):n.el,o=i?null:s,{i:a,r:l}=e,u=t&&t.r,f=a.refs===le?a.refs={}:a.refs,c=a.setupState,p=ue(c),h=c===le?Sn:d=>pe(p,d);if(u!=null&&u!==l){if(Xc(t),ee(u))f[u]=null,h(u)&&(c[u]=null);else if(Be(u)){u.value=null;const d=t;d.k&&(f[d.k]=null)}}if(Y(l))Un(l,a,12,[o,f]);else{const d=ee(l),m=Be(l);if(d||m){const S=()=>{if(e.f){const _=d?h(l)?c[l]:f[l]:l.value;if(i)K(_)&&Cl(_,s);else if(K(_))_.includes(s)||_.push(s);else if(d)f[l]=[s],h(l)&&(c[l]=f[l]);else{const g=[s];l.value=g,e.k&&(f[e.k]=g)}}else d?(f[l]=o,h(l)&&(c[l]=o)):m&&(l.value=o,e.k&&(f[e.k]=o))};if(o){const _=()=>{S(),Es.delete(e)};_.id=-1,Es.set(e,_),ke(_,r)}else Xc(e),S()}}}function Xc(e){const t=Es.get(e);t&&(t.flags|=8,Es.delete(e))}let Yc=!1;const mn=()=>{Yc||(console.error("Hydration completed but contains mismatches."),Yc=!0)},Fy=e=>e.namespaceURI.includes("svg")&&e.tagName!=="foreignObject",Dy=e=>e.namespaceURI.includes("MathML"),zi=e=>{if(e.nodeType===1){if(Fy(e))return"svg";if(Dy(e))return"mathml"}},_n=e=>e.nodeType===8;function Ly(e){const{mt:t,p:r,o:{patchProp:n,createText:i,nextSibling:s,parentNode:o,remove:a,insert:l,createComment:u}}=e,f=(y,v)=>{if(!v.hasChildNodes()){r(null,y,v),ws(),v._vnode=y;return}c(v.firstChild,y,null,null,null),ws(),v._vnode=y},c=(y,v,E,O,N,I=!1)=>{I=I||!!v.dynamicChildren;const P=_n(y)&&y.data==="[",C=()=>m(y,v,E,O,N,P),{type:M,ref:T,shapeFlag:q,patchFlag:W}=v;let G=y.nodeType;v.el=y,W===-2&&(I=!1,v.dynamicChildren=null);let U=null;switch(M){case Mr:G!==3?v.children===""?(l(v.el=i(""),o(y),y),U=y):U=C():(y.data!==v.children&&(mn(),y.data=v.children),U=s(y));break;case Ie:g(y)?(U=s(y),_(v.el=y.content.firstChild,y,E)):G!==8||P?U=C():U=s(y);break;case Yr:if(P&&(y=s(y),G=y.nodeType),G===1||G===3){U=y;const z=!v.children.length;for(let k=0;k{I=I||!!v.dynamicChildren;const{type:P,props:C,patchFlag:M,shapeFlag:T,dirs:q,transition:W}=v,G=P==="input"||P==="option";if(G||M!==-1){q&&zt(v,null,E,"created");let U=!1;if(g(y)){U=Lp(null,W)&&E&&E.vnode.props&&E.vnode.props.appear;const k=y.content.firstChild;if(U){const re=k.getAttribute("class");re&&(k.$cls=re),W.beforeEnter(k)}_(k,y,E),v.el=y=k}if(T&16&&!(C&&(C.innerHTML||C.textContent))){let k=h(y.firstChild,v,y,E,O,N,I);for(;k;){Ji(y,1)||mn();const re=k;k=k.nextSibling,a(re)}}else if(T&8){let k=v.children;k[0]===` `&&(y.tagName==="PRE"||y.tagName==="TEXTAREA")&&(k=k.slice(1));const{textContent:re}=y;re!==k&&re!==k.replace(/\r\n|\r/g,` -`)&&(zi(y,0)||mn(),y.textContent=v.children)}if(C){if(G||!I||M&48){const k=y.tagName.includes("-");for(const re in C)(G&&(re.endsWith("value")||re==="indeterminate")||an(re)&&!Ir(re)||re[0]==="."||k)&&n(y,re,null,C[re],void 0,E)}else if(C.onClick)n(y,"onClick",null,C.onClick,void 0,E);else if(M&4&&Rr(C.style))for(const k in C.style)C.style[k]}let z;(z=C&&C.onVnodeBeforeMount)&&ut(z,E,v),q&&zt(v,null,E,"beforeMount"),((z=C&&C.onVnodeMounted)||q||U)&&Kp(()=>{z&&ut(z,E,v),U&&W.enter(y),q&&zt(v,null,E,"mounted")},O)}return y.nextSibling},h=(y,v,E,O,N,I,P)=>{P=P||!!v.dynamicChildren;const C=v.children,M=C.length;for(let T=0;T{const{slotScopeIds:P}=v;P&&(N=N?N.concat(P):P);const C=o(y),M=h(s(y),v,C,E,O,N,I);return M&&_n(M)&&M.data==="]"?s(v.anchor=M):(mn(),l(v.anchor=u("]"),C,M),M)},m=(y,v,E,O,N,I)=>{if(zi(y.parentElement,1)||mn(),v.el=null,I){const M=S(y);for(;;){const T=s(y);if(T&&T!==M)a(T);else break}}const P=s(y),C=o(y);return a(y),r(null,v,C,P,E,O,Gi(C),N),E&&(E.vnode.el=v.el,ho(E,v.el)),P},S=(y,v="[",E="]")=>{let O=0;for(;y;)if(y=s(y),y&&_n(y)&&(y.data===v&&O++,y.data===E)){if(O===0)return s(y);O--}return y},_=(y,v,E)=>{const O=v.parentNode;O&&O.replaceChild(y,v);let N=E;for(;N;)N.vnode.el===v&&(N.vnode.el=N.subTree.el=y),N=N.parent},g=y=>y.nodeType===1&&y.tagName==="TEMPLATE";return[f,c]}const Zc="data-allow-mismatch",ky={0:"text",1:"children",2:"class",3:"style",4:"attribute"};function zi(e,t){if(t===0||t===1)for(;e&&!e.hasAttribute(Zc);)e=e.parentElement;const r=e&&e.getAttribute(Zc);if(r==null)return!1;if(r==="")return!0;{const n=r.split(",");return t===0&&n.includes("children")?!0:n.includes(ky[t])}}const qy=Qs().requestIdleCallback||(e=>setTimeout(e,1)),By=Qs().cancelIdleCallback||(e=>clearTimeout(e)),Hy=(e=1e4)=>t=>{const r=qy(t,{timeout:e});return()=>By(r)};function jy(e){const{top:t,left:r,bottom:n,right:i}=e.getBoundingClientRect(),{innerHeight:s,innerWidth:o}=window;return(t>0&&t0&&n0&&r0&&i(t,r)=>{const n=new IntersectionObserver(i=>{for(const s of i)if(s.isIntersecting){n.disconnect(),t();break}},e);return r(i=>{if(i instanceof Element){if(jy(i))return t(),n.disconnect(),!1;n.observe(i)}}),()=>n.disconnect()},Vy=e=>t=>{if(e){const r=matchMedia(e);if(r.matches)t();else return r.addEventListener("change",t,{once:!0}),()=>r.removeEventListener("change",t)}},Wy=(e=[])=>(t,r)=>{ee(e)&&(e=[e]);let n=!1;const i=o=>{n||(n=!0,s(),t(),o.target.dispatchEvent(new o.constructor(o.type,o)))},s=()=>{r(o=>{for(const a of e)o.removeEventListener(a,i)})};return r(o=>{for(const a of e)o.addEventListener(a,i,{once:!0})}),s};function Ky(e,t){if(_n(e)&&e.data==="["){let r=1,n=e.nextSibling;for(;n;){if(n.nodeType===1){if(t(n)===!1)break}else if(_n(n))if(n.data==="]"){if(--r===0)break}else n.data==="["&&r++;n=n.nextSibling}}else t(e)}const $r=e=>!!e.type.__asyncLoader;function Gy(e){Y(e)&&(e={loader:e});const{loader:t,loadingComponent:r,errorComponent:n,delay:i=200,hydrate:s,timeout:o,suspensible:a=!0,onError:l}=e;let u=null,f,c=0;const p=()=>(c++,u=null,h()),h=()=>{let d;return u||(d=u=t().catch(m=>{if(m=m instanceof Error?m:new Error(String(m)),l)return new Promise((S,_)=>{l(m,()=>S(p()),()=>_(m),c+1)});throw m}).then(m=>d!==u&&u?u:(m&&(m.__esModule||m[Symbol.toStringTag]==="Module")&&(m=m.default),f=m,m)))};return Vn({name:"AsyncComponentWrapper",__asyncLoader:h,__asyncHydrate(d,m,S){let _=!1;(m.bu||(m.bu=[])).push(()=>_=!0);const g=()=>{_||S()},y=s?()=>{const v=s(g,E=>Ky(d,E));v&&(m.bum||(m.bum=[])).push(v)}:g;f?y():h().then(()=>!m.isUnmounted&&y())},get __asyncResolved(){return f},setup(){const d=ze;if(Bl(d),f)return()=>Ji(f,d);const m=y=>{u=null,fn(y,d,13,!n)};if(a&&d.suspense||In)return h().then(y=>()=>Ji(y,d)).catch(y=>(m(y),()=>n?Ce(n,{error:y}):null));const S=Nr(!1),_=Nr(),g=Nr(!!i);return i&&setTimeout(()=>{g.value=!1},i),o!=null&&setTimeout(()=>{if(!S.value&&!_.value){const y=new Error(`Async component timed out after ${o}ms.`);m(y),_.value=y}},o),h().then(()=>{S.value=!0,d.parent&&Ni(d.parent.vnode)&&d.parent.update()}).catch(y=>{m(y),_.value=y}),()=>{if(S.value&&f)return Ji(f,d);if(_.value&&n)return Ce(n,{error:_.value});if(r&&!g.value)return Ji(r,d)}}})}function Ji(e,t){const{ref:r,props:n,children:i,ce:s}=t.vnode,o=Ce(e,n,i);return o.ref=r,o.ce=s,delete t.vnode.ce,o}const Ni=e=>e.type.__isKeepAlive,zy={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const r=vt(),n=r.ctx;if(!n.renderer)return()=>{const g=t.default&&t.default();return g&&g.length===1?g[0]:g};const i=new Map,s=new Set;let o=null;const a=r.suspense,{renderer:{p:l,m:u,um:f,o:{createElement:c}}}=n,p=c("div");n.activate=(g,y,v,E,O)=>{const N=g.component;u(g,y,v,0,a),l(N.vnode,g,y,v,N,a,E,g.slotScopeIds,O),ke(()=>{N.isDeactivated=!1,N.a&&Pn(N.a);const I=g.props&&g.props.onVnodeMounted;I&&ut(I,N.parent,g)},a)},n.deactivate=g=>{const y=g.component;Ts(y.m),Ts(y.a),u(g,p,null,1,a),ke(()=>{y.da&&Pn(y.da);const v=g.props&&g.props.onVnodeUnmounted;v&&ut(v,y.parent,g),y.isDeactivated=!0},a)};function h(g){Lo(g),f(g,r,a,!0)}function d(g){i.forEach((y,v)=>{const E=rl(y.type);E&&!g(E)&&m(v)})}function m(g){const y=i.get(g);y&&(!o||!jt(y,o))?h(y):o&&Lo(o),i.delete(g),s.delete(g)}Xr(()=>[e.include,e.exclude],([g,y])=>{g&&d(v=>Zn(g,v)),y&&d(v=>!Zn(y,v))},{flush:"post",deep:!0});let S=null;const _=()=>{S!=null&&(Ps(r.subTree.type)?ke(()=>{i.set(S,Qi(r.subTree))},r.subTree.suspense):i.set(S,Qi(r.subTree)))};return $i(_),lo(_),co(()=>{i.forEach(g=>{const{subTree:y,suspense:v}=r,E=Qi(y);if(g.type===E.type&&g.key===E.key){Lo(E);const O=E.component.da;O&&ke(O,v);return}h(g)})}),()=>{if(S=null,!t.default)return o=null;const g=t.default(),y=g[0];if(g.length>1)return o=null,g;if(!gr(y)||!(y.shapeFlag&4)&&!(y.shapeFlag&128))return o=null,y;let v=Qi(y);if(v.type===Ie)return o=null,v;const E=v.type,O=rl($r(v)?v.type.__asyncResolved||{}:E),{include:N,exclude:I,max:P}=e;if(N&&(!O||!Zn(N,O))||I&&O&&Zn(I,O))return v.shapeFlag&=-257,o=v,y;const C=v.key==null?E:v.key,M=i.get(C);return v.el&&(v=Jt(v),y.shapeFlag&128&&(y.ssContent=v)),S=C,M?(v.el=M.el,v.component=M.component,v.transition&&dr(v,v.transition),v.shapeFlag|=512,s.delete(C),s.add(C)):(s.add(C),P&&s.size>parseInt(P,10)&&m(s.values().next().value)),v.shapeFlag|=256,o=v,Ps(y.type)?y:v}}},Jy=zy;function Zn(e,t){return K(e)?e.some(r=>Zn(r,t)):ee(e)?e.split(",").includes(t):fm(e)?(e.lastIndex=0,e.test(t)):!1}function pp(e,t){gp(e,"a",t)}function dp(e,t){gp(e,"da",t)}function gp(e,t,r=ze){const n=e.__wdc||(e.__wdc=()=>{let i=r;for(;i;){if(i.isDeactivated)return;i=i.parent}return e()});if(ao(t,n,r),r){let i=r.parent;for(;i&&i.parent;)Ni(i.parent.vnode)&&Qy(n,t,r,i),i=i.parent}}function Qy(e,t,r,n){const i=ao(t,e,n,!0);fo(()=>{Cl(n[t],i)},r)}function Lo(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function Qi(e){return e.shapeFlag&128?e.ssContent:e}function ao(e,t,r=ze,n=!1){if(r){const i=r[e]||(r[e]=[]),s=t.__weh||(t.__weh=(...o)=>{ur();const a=nn(r),l=Ft(t,r,e,o);return a(),hr(),l});return n?i.unshift(s):i.push(s),s}}const yr=e=>(t,r=ze)=>{(!In||e==="sp")&&ao(e,(...n)=>t(...n),r)},mp=yr("bm"),$i=yr("m"),Hl=yr("bu"),lo=yr("u"),co=yr("bum"),fo=yr("um"),yp=yr("sp"),vp=yr("rtg"),bp=yr("rtc");function Sp(e,t=ze){ao("ec",e,t)}const jl="components",Xy="directives";function Yy(e,t){return Ul(jl,e,!0,t)||e}const _p=Symbol.for("v-ndc");function Zy(e){return ee(e)?Ul(jl,e,!1)||e:e||_p}function ev(e){return Ul(Xy,e)}function Ul(e,t,r=!0,n=!1){const i=Je||ze;if(i){const s=i.type;if(e===jl){const a=rl(s,!1);if(a&&(a===t||a===Te(t)||a===cn(Te(t))))return s}const o=ef(i[e]||s[e],t)||ef(i.appContext[e],t);return!o&&n?s:o}}function ef(e,t){return e&&(e[t]||e[Te(t)]||e[cn(Te(t))])}function tv(e,t,r,n){let i;const s=r&&r[n],o=K(e);if(o||ee(e)){const a=o&&Rr(e);let l=!1,u=!1;a&&(l=!Pt(e),u=pr(e),e=Zs(e)),i=new Array(e.length);for(let f=0,c=e.length;ft(a,l,void 0,s&&s[l]));else{const a=Object.keys(e);i=new Array(a.length);for(let l=0,u=a.length;l{const s=n.fn(...i);return s&&(s.key=n.key),s}:n.fn)}return e}function nv(e,t,r={},n,i){if(Je.ce||Je.parent&&$r(Je.parent)&&Je.parent.ce){const u=Object.keys(r).length>0;return t!=="default"&&(r.name=t),Si(),As(Ue,null,[Ce("slot",r,n&&n())],u?-2:64)}let s=e[t];s&&s._c&&(s._d=!1),Si();const o=s&&Vl(s(r)),a=r.key||o&&o.key,l=As(Ue,{key:(a&&!yt(a)?a:`_${t}`)+(!o&&n?"_fb":"")},o||(n?n():[]),o&&e._===1?64:-2);return!i&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),s&&s._c&&(s._d=!0),l}function Vl(e){return e.some(t=>gr(t)?!(t.type===Ie||t.type===Ue&&!Vl(t.children)):!0)?e:null}function iv(e,t){const r={};for(const n in e)r[t&&/[A-Z]/.test(n)?`on:${n}`:Tn(n)]=e[n];return r}const Ka=e=>e?Zp(e)?Fi(e):Ka(e.parent):null,si=oe(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Ka(e.parent),$root:e=>Ka(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Wl(e),$forceUpdate:e=>e.f||(e.f=()=>{Dl(e.update)}),$nextTick:e=>e.n||(e.n=io.bind(e.proxy)),$watch:e=>Dv.bind(e)}),ko=(e,t)=>e!==le&&!e.__isScriptSetup&&pe(e,t),Ga={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:r,setupState:n,data:i,props:s,accessCache:o,type:a,appContext:l}=e;let u;if(t[0]!=="$"){const h=o[t];if(h!==void 0)switch(h){case 1:return n[t];case 2:return i[t];case 4:return r[t];case 3:return s[t]}else{if(ko(n,t))return o[t]=1,n[t];if(i!==le&&pe(i,t))return o[t]=2,i[t];if((u=e.propsOptions[0])&&pe(u,t))return o[t]=3,s[t];if(r!==le&&pe(r,t))return o[t]=4,r[t];za&&(o[t]=0)}}const f=si[t];let c,p;if(f)return t==="$attrs"&&tt(e.attrs,"get",""),f(e);if((c=a.__cssModules)&&(c=c[t]))return c;if(r!==le&&pe(r,t))return o[t]=4,r[t];if(p=l.config.globalProperties,pe(p,t))return p[t]},set({_:e},t,r){const{data:n,setupState:i,ctx:s}=e;return ko(i,t)?(i[t]=r,!0):n!==le&&pe(n,t)?(n[t]=r,!0):pe(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(s[t]=r,!0)},has({_:{data:e,setupState:t,accessCache:r,ctx:n,appContext:i,propsOptions:s,type:o}},a){let l,u;return!!(r[a]||e!==le&&a[0]!=="$"&&pe(e,a)||ko(t,a)||(l=s[0])&&pe(l,a)||pe(n,a)||pe(si,a)||pe(i.config.globalProperties,a)||(u=o.__cssModules)&&u[a])},defineProperty(e,t,r){return r.get!=null?e._.accessCache[t]=0:pe(r,"value")&&this.set(e,t,r.value,null),Reflect.defineProperty(e,t,r)}},sv=oe({},Ga,{get(e,t){if(t!==Symbol.unscopables)return Ga.get(e,t,e)},has(e,t){return t[0]!=="_"&&!ym(t)}});function ov(){return null}function av(){return null}function lv(e){}function cv(e){}function fv(){return null}function uv(){}function hv(e,t){return null}function pv(){return wp().slots}function dv(){return wp().attrs}function wp(e){const t=vt();return t.setupContext||(t.setupContext=nd(t))}function vi(e){return K(e)?e.reduce((t,r)=>(t[r]=null,t),{}):e}function gv(e,t){const r=vi(e);for(const n in t){if(n.startsWith("__skip"))continue;let i=r[n];i?K(i)||Y(i)?i=r[n]={type:i,default:t[n]}:i.default=t[n]:i===null&&(i=r[n]={default:t[n]}),i&&t[`__skip_${n}`]&&(i.skipFactory=!0)}return r}function mv(e,t){return!e||!t?e||t:K(e)&&K(t)?e.concat(t):oe({},vi(e),vi(t))}function yv(e,t){const r={};for(const n in e)t.includes(n)||Object.defineProperty(r,n,{enumerable:!0,get:()=>e[n]});return r}function vv(e){const t=vt();let r=e();return Za(),Ol(r)&&(r=r.catch(n=>{throw nn(t),n})),[r,()=>nn(t)]}let za=!0;function bv(e){const t=Wl(e),r=e.proxy,n=e.ctx;za=!1,t.beforeCreate&&tf(t.beforeCreate,e,"bc");const{data:i,computed:s,methods:o,watch:a,provide:l,inject:u,created:f,beforeMount:c,mounted:p,beforeUpdate:h,updated:d,activated:m,deactivated:S,beforeDestroy:_,beforeUnmount:g,destroyed:y,unmounted:v,render:E,renderTracked:O,renderTriggered:N,errorCaptured:I,serverPrefetch:P,expose:C,inheritAttrs:M,components:T,directives:q,filters:W}=t;if(u&&Sv(u,n,null),o)for(const z in o){const k=o[z];Y(k)&&(n[z]=k.bind(r))}if(i){const z=i.call(r,r);me(z)&&(e.data=jn(z))}if(za=!0,s)for(const z in s){const k=s[z],re=Y(k)?k.bind(r,r):Y(k.get)?k.get.bind(r,r):Qe,Re=!Y(k)&&Y(k.set)?k.set.bind(r):Qe,Me=ft({get:re,set:Re});Object.defineProperty(n,z,{enumerable:!0,configurable:!0,get:()=>Me.value,set:Fe=>Me.value=Fe})}if(a)for(const z in a)Ep(a[z],n,r,z);if(l){const z=Y(l)?l.call(r):l;Reflect.ownKeys(z).forEach(k=>{Pp(k,z[k])})}f&&tf(f,e,"c");function U(z,k){K(k)?k.forEach(re=>z(re.bind(r))):k&&z(k.bind(r))}if(U(mp,c),U($i,p),U(Hl,h),U(lo,d),U(pp,m),U(dp,S),U(Sp,I),U(bp,O),U(vp,N),U(co,g),U(fo,v),U(yp,P),K(C))if(C.length){const z=e.exposed||(e.exposed={});C.forEach(k=>{Object.defineProperty(z,k,{get:()=>r[k],set:re=>r[k]=re,enumerable:!0})})}else e.exposed||(e.exposed={});E&&e.render===Qe&&(e.render=E),M!=null&&(e.inheritAttrs=M),T&&(e.components=T),q&&(e.directives=q),P&&Bl(e)}function Sv(e,t,r=Qe){K(e)&&(e=Ja(e));for(const n in e){const i=e[n];let s;me(i)?"default"in i?s=oi(i.from||n,i.default,!0):s=oi(i.from||n):s=oi(i),Be(s)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>s.value,set:o=>s.value=o}):t[n]=s}}function tf(e,t,r){Ft(K(e)?e.map(n=>n.bind(t.proxy)):e.bind(t.proxy),t,r)}function Ep(e,t,r,n){let i=n.includes(".")?jp(r,n):()=>r[n];if(ee(e)){const s=t[e];Y(s)&&Xr(i,s)}else if(Y(e))Xr(i,e.bind(r));else if(me(e))if(K(e))e.forEach(s=>Ep(s,t,r,n));else{const s=Y(e.handler)?e.handler.bind(r):t[e.handler];Y(s)&&Xr(i,s,e)}}function Wl(e){const t=e.type,{mixins:r,extends:n}=t,{mixins:i,optionsCache:s,config:{optionMergeStrategies:o}}=e.appContext,a=s.get(t);let l;return a?l=a:!i.length&&!r&&!n?l=t:(l={},i.length&&i.forEach(u=>Es(l,u,o,!0)),Es(l,t,o)),me(t)&&s.set(t,l),l}function Es(e,t,r,n=!1){const{mixins:i,extends:s}=t;s&&Es(e,s,r,!0),i&&i.forEach(o=>Es(e,o,r,!0));for(const o in t)if(!(n&&o==="expose")){const a=_v[o]||r&&r[o];e[o]=a?a(e[o],t[o]):t[o]}return e}const _v={data:rf,props:nf,emits:nf,methods:ei,computed:ei,beforeCreate:st,created:st,beforeMount:st,mounted:st,beforeUpdate:st,updated:st,beforeDestroy:st,beforeUnmount:st,destroyed:st,unmounted:st,activated:st,deactivated:st,errorCaptured:st,serverPrefetch:st,components:ei,directives:ei,watch:Ev,provide:rf,inject:wv};function rf(e,t){return t?e?function(){return oe(Y(e)?e.call(this,this):e,Y(t)?t.call(this,this):t)}:t:e}function wv(e,t){return ei(Ja(e),Ja(t))}function Ja(e){if(K(e)){const t={};for(let r=0;r1)return r&&Y(t)?t.call(n&&n.proxy):t}}function Av(){return!!(vt()||Qr)}const Ap={},Cp=()=>Object.create(Ap),Op=e=>Object.getPrototypeOf(e)===Ap;function Cv(e,t,r,n=!1){const i={},s=Cp();e.propsDefaults=Object.create(null),xp(e,t,i,s);for(const o in e.propsOptions[0])o in i||(i[o]=void 0);r?e.props=n?i:Jh(i):e.type.props?e.props=i:e.props=s,e.attrs=s}function Ov(e,t,r,n){const{props:i,attrs:s,vnode:{patchFlag:o}}=e,a=ue(i),[l]=e.propsOptions;let u=!1;if((n||o>0)&&!(o&16)){if(o&8){const f=e.vnode.dynamicProps;for(let c=0;c{l=!0;const[p,h]=Ip(c,t,!0);oe(o,p),h&&a.push(...h)};!r&&t.mixins.length&&t.mixins.forEach(f),e.extends&&f(e.extends),e.mixins&&e.mixins.forEach(f)}if(!s&&!l)return me(e)&&n.set(e,wn),wn;if(K(s))for(let f=0;fe==="_"||e==="_ctx"||e==="$stable",Gl=e=>K(e)?e.map(ht):[ht(e)],Iv=(e,t,r)=>{if(t._n)return t;const n=Ll((...i)=>Gl(t(...i)),r);return n._c=!1,n},Rp=(e,t,r)=>{const n=e._ctx;for(const i in e){if(Kl(i))continue;const s=e[i];if(Y(s))t[i]=Iv(i,s,n);else if(s!=null){const o=Gl(s);t[i]=()=>o}}},Np=(e,t)=>{const r=Gl(t);e.slots.default=()=>r},$p=(e,t,r)=>{for(const n in t)(r||!Kl(n))&&(e[n]=t[n])},Rv=(e,t,r)=>{const n=e.slots=Cp();if(e.vnode.shapeFlag&32){const i=t._;i?($p(n,t,r),r&&Ch(n,"_",i,!0)):Rp(t,n)}else t&&Np(e,t)},Nv=(e,t,r)=>{const{vnode:n,slots:i}=e;let s=!0,o=le;if(n.shapeFlag&32){const a=t._;a?r&&a===1?s=!1:$p(i,t,r):(s=!t.$stable,Rp(t,i)),o=t}else t&&(Np(e,t),o={default:1});if(s)for(const a in i)!Kl(a)&&o[a]==null&&delete i[a]},ke=Kp;function Mp(e){return Dp(e)}function Fp(e){return Dp(e,Ly)}function Dp(e,t){const r=Qs();r.__VUE__=!0;const{insert:n,remove:i,patchProp:s,createElement:o,createText:a,createComment:l,setText:u,setElementText:f,parentNode:c,nextSibling:p,setScopeId:h=Qe,insertStaticContent:d}=e,m=(b,w,R,D=null,$=null,F=null,j=void 0,H=null,B=!!w.dynamicChildren)=>{if(b===w)return;b&&!jt(b,w)&&(D=bt(b),Fe(b,$,F,!0),b=null),w.patchFlag===-2&&(B=!1,w.dynamicChildren=null);const{type:L,ref:J,shapeFlag:V}=w;switch(L){case Mr:S(b,w,R,D);break;case Ie:_(b,w,R,D);break;case Yr:b==null&&g(w,R,D,j);break;case Ue:T(b,w,R,D,$,F,j,H,B);break;default:V&1?E(b,w,R,D,$,F,j,H,B):V&6?q(b,w,R,D,$,F,j,H,B):(V&64||V&128)&&L.process(b,w,R,D,$,F,j,H,B,ne)}J!=null&&$?Cn(J,b&&b.ref,F,w||b,!w):J==null&&b&&b.ref!=null&&Cn(b.ref,null,F,b,!0)},S=(b,w,R,D)=>{if(b==null)n(w.el=a(w.children),R,D);else{const $=w.el=b.el;w.children!==b.children&&u($,w.children)}},_=(b,w,R,D)=>{b==null?n(w.el=l(w.children||""),R,D):w.el=b.el},g=(b,w,R,D)=>{[b.el,b.anchor]=d(b.children,w,R,D,b.el,b.anchor)},y=({el:b,anchor:w},R,D)=>{let $;for(;b&&b!==w;)$=p(b),n(b,R,D),b=$;n(w,R,D)},v=({el:b,anchor:w})=>{let R;for(;b&&b!==w;)R=p(b),i(b),b=R;i(w)},E=(b,w,R,D,$,F,j,H,B)=>{if(w.type==="svg"?j="svg":w.type==="math"&&(j="mathml"),b==null)O(w,R,D,$,F,j,H,B);else{const L=b.el&&b.el._isVueCE?b.el:null;try{L&&L._beginPatch(),P(b,w,$,F,j,H,B)}finally{L&&L._endPatch()}}},O=(b,w,R,D,$,F,j,H)=>{let B,L;const{props:J,shapeFlag:V,transition:Q,dirs:Z}=b;if(B=b.el=o(b.type,F,J&&J.is,J),V&8?f(B,b.children):V&16&&I(b.children,B,null,D,$,qo(b,F),j,H),Z&&zt(b,null,D,"created"),N(B,b,b.scopeId,j,D),J){for(const ve in J)ve!=="value"&&!Ir(ve)&&s(B,ve,null,J[ve],F,D);"value"in J&&s(B,"value",null,J.value,F),(L=J.onVnodeBeforeMount)&&ut(L,D,b)}Z&&zt(b,null,D,"beforeMount");const se=Lp($,Q);se&&Q.beforeEnter(B),n(B,w,R),((L=J&&J.onVnodeMounted)||se||Z)&&ke(()=>{L&&ut(L,D,b),se&&Q.enter(B),Z&&zt(b,null,D,"mounted")},$)},N=(b,w,R,D,$)=>{if(R&&h(b,R),D)for(let F=0;F{for(let L=B;L{const H=w.el=b.el;let{patchFlag:B,dynamicChildren:L,dirs:J}=w;B|=b.patchFlag&16;const V=b.props||le,Q=w.props||le;let Z;if(R&&Ur(R,!1),(Z=Q.onVnodeBeforeUpdate)&&ut(Z,R,w,b),J&&zt(w,b,R,"beforeUpdate"),R&&Ur(R,!0),(V.innerHTML&&Q.innerHTML==null||V.textContent&&Q.textContent==null)&&f(H,""),L?C(b.dynamicChildren,L,H,R,D,qo(w,$),F):j||k(b,w,H,null,R,D,qo(w,$),F,!1),B>0){if(B&16)M(H,V,Q,R,$);else if(B&2&&V.class!==Q.class&&s(H,"class",null,Q.class,$),B&4&&s(H,"style",V.style,Q.style,$),B&8){const se=w.dynamicProps;for(let ve=0;ve{Z&&ut(Z,R,w,b),J&&zt(w,b,R,"updated")},D)},C=(b,w,R,D,$,F,j)=>{for(let H=0;H{if(w!==R){if(w!==le)for(const F in w)!Ir(F)&&!(F in R)&&s(b,F,w[F],null,$,D);for(const F in R){if(Ir(F))continue;const j=R[F],H=w[F];j!==H&&F!=="value"&&s(b,F,H,j,$,D)}"value"in R&&s(b,"value",w.value,R.value,$)}},T=(b,w,R,D,$,F,j,H,B)=>{const L=w.el=b?b.el:a(""),J=w.anchor=b?b.anchor:a("");let{patchFlag:V,dynamicChildren:Q,slotScopeIds:Z}=w;Z&&(H=H?H.concat(Z):Z),b==null?(n(L,R,D),n(J,R,D),I(w.children||[],R,J,$,F,j,H,B)):V>0&&V&64&&Q&&b.dynamicChildren?(C(b.dynamicChildren,Q,R,$,F,j,H),(w.key!=null||$&&w===$.subTree)&&zl(b,w,!0)):k(b,w,R,J,$,F,j,H,B)},q=(b,w,R,D,$,F,j,H,B)=>{w.slotScopeIds=H,b==null?w.shapeFlag&512?$.ctx.activate(w,R,D,j,B):W(w,R,D,$,F,j,B):G(b,w,B)},W=(b,w,R,D,$,F,j)=>{const H=b.component=Yp(b,D,$);if(Ni(b)&&(H.ctx.renderer=ne),ed(H,!1,j),H.asyncDep){if($&&$.registerDep(H,U,j),!b.el){const B=H.subTree=Ce(Ie);_(null,B,w,R),b.placeholder=B.el}}else U(H,b,w,R,$,F,j)},G=(b,w,R)=>{const D=w.component=b.component;if(Uv(b,w,R))if(D.asyncDep&&!D.asyncResolved){z(D,w,R);return}else D.next=w,D.update();else w.el=b.el,D.vnode=w},U=(b,w,R,D,$,F,j)=>{const H=()=>{if(b.isMounted){let{next:V,bu:Q,u:Z,parent:se,vnode:ve}=b;{const it=kp(b);if(it){V&&(V.el=ve.el,z(b,V,j)),it.asyncDep.then(()=>{b.isUnmounted||H()});return}}let ce=V,je;Ur(b,!1),V?(V.el=ve.el,z(b,V,j)):V=ve,Q&&Pn(Q),(je=V.props&&V.props.onVnodeBeforeUpdate)&&ut(je,se,V,ve),Ur(b,!0);const De=is(b),St=b.subTree;b.subTree=De,m(St,De,c(St.el),bt(St),b,$,F),V.el=De.el,ce===null&&ho(b,De.el),Z&&ke(Z,$),(je=V.props&&V.props.onVnodeUpdated)&&ke(()=>ut(je,se,V,ve),$)}else{let V;const{el:Q,props:Z}=w,{bm:se,m:ve,parent:ce,root:je,type:De}=b,St=$r(w);if(Ur(b,!1),se&&Pn(se),!St&&(V=Z&&Z.onVnodeBeforeMount)&&ut(V,ce,w),Ur(b,!0),Q&&ge){const it=()=>{b.subTree=is(b),ge(Q,b.subTree,b,$,null)};St&&De.__asyncHydrate?De.__asyncHydrate(Q,b,it):it()}else{je.ce&&je.ce._def.shadowRoot!==!1&&je.ce._injectChildStyle(De);const it=b.subTree=is(b);m(null,it,R,D,b,$,F),w.el=it.el}if(ve&&ke(ve,$),!St&&(V=Z&&Z.onVnodeMounted)){const it=w;ke(()=>ut(V,ce,it),$)}(w.shapeFlag&256||ce&&$r(ce.vnode)&&ce.vnode.shapeFlag&256)&&b.a&&ke(b.a,$),b.isMounted=!0,w=R=D=null}};b.scope.on();const B=b.effect=new hi(H);b.scope.off();const L=b.update=B.run.bind(B),J=b.job=B.runIfDirty.bind(B);J.i=b,J.id=b.uid,B.scheduler=()=>Dl(J),Ur(b,!0),L()},z=(b,w,R)=>{w.component=b;const D=b.vnode.props;b.vnode=w,b.next=null,Ov(b,w.props,D,R),Nv(b,w.children,R),ur(),Kc(b),hr()},k=(b,w,R,D,$,F,j,H,B=!1)=>{const L=b&&b.children,J=b?b.shapeFlag:0,V=w.children,{patchFlag:Q,shapeFlag:Z}=w;if(Q>0){if(Q&128){Re(L,V,R,D,$,F,j,H,B);return}else if(Q&256){re(L,V,R,D,$,F,j,H,B);return}}Z&8?(J&16&&He(L,$,F),V!==L&&f(R,V)):J&16?Z&16?Re(L,V,R,D,$,F,j,H,B):He(L,$,F,!0):(J&8&&f(R,""),Z&16&&I(V,R,D,$,F,j,H,B))},re=(b,w,R,D,$,F,j,H,B)=>{b=b||wn,w=w||wn;const L=b.length,J=w.length,V=Math.min(L,J);let Q;for(Q=0;QJ?He(b,$,F,!0,!1,V):I(w,R,D,$,F,j,H,B,V)},Re=(b,w,R,D,$,F,j,H,B)=>{let L=0;const J=w.length;let V=b.length-1,Q=J-1;for(;L<=V&&L<=Q;){const Z=b[L],se=w[L]=B?Cr(w[L]):ht(w[L]);if(jt(Z,se))m(Z,se,R,null,$,F,j,H,B);else break;L++}for(;L<=V&&L<=Q;){const Z=b[V],se=w[Q]=B?Cr(w[Q]):ht(w[Q]);if(jt(Z,se))m(Z,se,R,null,$,F,j,H,B);else break;V--,Q--}if(L>V){if(L<=Q){const Z=Q+1,se=ZQ)for(;L<=V;)Fe(b[L],$,F,!0),L++;else{const Z=L,se=L,ve=new Map;for(L=se;L<=Q;L++){const A=w[L]=B?Cr(w[L]):ht(w[L]);A.key!=null&&ve.set(A.key,L)}let ce,je=0;const De=Q-se+1;let St=!1,it=0;const Yt=new Array(De);for(L=0;L=De){Fe(A,$,F,!0);continue}let x;if(A.key!=null)x=ve.get(A.key);else for(ce=se;ce<=Q;ce++)if(Yt[ce-se]===0&&jt(A,w[ce])){x=ce;break}x===void 0?Fe(A,$,F,!0):(Yt[x-se]=L+1,x>=it?it=x:St=!0,m(A,w[x],R,null,$,F,j,H,B),je++)}const Hr=St?$v(Yt):wn;for(ce=Hr.length-1,L=De-1;L>=0;L--){const A=se+L,x=w[A],fe=w[A+1],ye=A+1{const{el:F,type:j,transition:H,children:B,shapeFlag:L}=b;if(L&6){Me(b.component.subTree,w,R,D);return}if(L&128){b.suspense.move(w,R,D);return}if(L&64){j.move(b,w,R,ne);return}if(j===Ue){n(F,w,R);for(let V=0;VH.enter(F),$);else{const{leave:V,delayLeave:Q,afterLeave:Z}=H,se=()=>{b.ctx.isUnmounted?i(F):n(F,w,R)},ve=()=>{F._isLeaving&&F[ir](!0),V(F,()=>{se(),Z&&Z()})};Q?Q(F,se,ve):ve()}else n(F,w,R)},Fe=(b,w,R,D=!1,$=!1)=>{const{type:F,props:j,ref:H,children:B,dynamicChildren:L,shapeFlag:J,patchFlag:V,dirs:Q,cacheIndex:Z}=b;if(V===-2&&($=!1),H!=null&&(ur(),Cn(H,null,R,b,!0),hr()),Z!=null&&(w.renderCache[Z]=void 0),J&256){w.ctx.deactivate(b);return}const se=J&1&&Q,ve=!$r(b);let ce;if(ve&&(ce=j&&j.onVnodeBeforeUnmount)&&ut(ce,w,b),J&6)kt(b.component,R,D);else{if(J&128){b.suspense.unmount(R,D);return}se&&zt(b,null,w,"beforeUnmount"),J&64?b.type.remove(b,w,R,ne,D):L&&!L.hasOnce&&(F!==Ue||V>0&&V&64)?He(L,w,R,!1,!0):(F===Ue&&V&384||!$&&J&16)&&He(B,w,R),D&&Lt(b)}(ve&&(ce=j&&j.onVnodeUnmounted)||se)&&ke(()=>{ce&&ut(ce,w,b),se&&zt(b,null,w,"unmounted")},R)},Lt=b=>{const{type:w,el:R,anchor:D,transition:$}=b;if(w===Ue){Wt(R,D);return}if(w===Yr){v(b);return}const F=()=>{i(R),$&&!$.persisted&&$.afterLeave&&$.afterLeave()};if(b.shapeFlag&1&&$&&!$.persisted){const{leave:j,delayLeave:H}=$,B=()=>j(R,F);H?H(b.el,F,B):B()}else F()},Wt=(b,w)=>{let R;for(;b!==w;)R=p(b),i(b),b=R;i(w)},kt=(b,w,R)=>{const{bum:D,scope:$,job:F,subTree:j,um:H,m:B,a:L}=b;Ts(B),Ts(L),D&&Pn(D),$.stop(),F&&(F.flags|=8,Fe(j,b,w,R)),H&&ke(H,w),ke(()=>{b.isUnmounted=!0},w)},He=(b,w,R,D=!1,$=!1,F=0)=>{for(let j=F;j{if(b.shapeFlag&6)return bt(b.component.subTree);if(b.shapeFlag&128)return b.suspense.next();const w=p(b.anchor||b.el),R=w&&w[sp];return R?p(R):w};let Ot=!1;const Ne=(b,w,R)=>{b==null?w._vnode&&Fe(w._vnode,null,null,!0):m(w._vnode||null,b,w,null,null,null,R),w._vnode=b,Ot||(Ot=!0,Kc(),_s(),Ot=!1)},ne={p:m,um:Fe,m:Me,r:Lt,mt:W,mc:I,pc:k,pbc:C,n:bt,o:e};let _e,ge;return t&&([_e,ge]=t(ne)),{render:Ne,hydrate:_e,createApp:Pv(Ne,_e)}}function qo({type:e,props:t},r){return r==="svg"&&e==="foreignObject"||r==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:r}function Ur({effect:e,job:t},r){r?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Lp(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function zl(e,t,r=!1){const n=e.children,i=t.children;if(K(n)&&K(i))for(let s=0;s>1,e[r[a]]0&&(t[n]=r[s-1]),r[s]=n)}}for(s=r.length,o=r[s-1];s-- >0;)r[s]=o,o=t[o];return r}function kp(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:kp(t)}function Ts(e){if(e)for(let t=0;toi(qp);function Mv(e,t){return Mi(e,null,t)}function Fv(e,t){return Mi(e,null,{flush:"post"})}function Hp(e,t){return Mi(e,null,{flush:"sync"})}function Xr(e,t,r){return Mi(e,t,r)}function Mi(e,t,r=le){const{immediate:n,deep:i,flush:s,once:o}=r,a=oe({},r),l=t&&n||!t&&s!=="post";let u;if(In){if(s==="sync"){const h=Bp();u=h.__watcherHandles||(h.__watcherHandles=[])}else if(!l){const h=()=>{};return h.stop=Qe,h.resume=Qe,h.pause=Qe,h}}const f=ze;a.call=(h,d,m)=>Ft(h,f,d,m);let c=!1;s==="post"?a.scheduler=h=>{ke(h,f&&f.suspense)}:s!=="sync"&&(c=!0,a.scheduler=(h,d)=>{d?h():Dl(h)}),a.augmentJob=h=>{t&&(h.flags|=4),c&&(h.flags|=2,f&&(h.id=f.uid,h.i=f))};const p=vy(e,t,a);return In&&(u?u.push(p):l&&p()),p}function Dv(e,t,r){const n=this.proxy,i=ee(e)?e.includes(".")?jp(n,e):()=>n[e]:e.bind(n,n);let s;Y(t)?s=t:(s=t.handler,r=t);const o=nn(this),a=Mi(i,s.bind(n),r);return o(),a}function jp(e,t){const r=t.split(".");return()=>{let n=e;for(let i=0;i{let f,c=le,p;return Hp(()=>{const h=e[i];ot(f,h)&&(f=h,u())}),{get(){return l(),r.get?r.get(f):f},set(h){const d=r.set?r.set(h):h;if(!ot(d,f)&&!(c!==le&&ot(h,c)))return;const m=n.vnode.props;m&&(t in m||i in m||s in m)&&(`onUpdate:${t}`in m||`onUpdate:${i}`in m||`onUpdate:${s}`in m)||(f=h,u()),n.emit(`update:${t}`,d),ot(h,d)&&ot(h,c)&&!ot(d,p)&&u(),c=h,p=d}}});return a[Symbol.iterator]=()=>{let l=0;return{next(){return l<2?{value:l++?o||le:a,done:!1}:{done:!0}}}},a}const Up=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Te(t)}Modifiers`]||e[`${pt(t)}Modifiers`];function kv(e,t,...r){if(e.isUnmounted)return;const n=e.vnode.props||le;let i=r;const s=t.startsWith("update:"),o=s&&Up(n,t.slice(7));o&&(o.trim&&(i=r.map(f=>ee(f)?f.trim():f)),o.number&&(i=r.map(Js)));let a,l=n[a=Tn(t)]||n[a=Tn(Te(t))];!l&&s&&(l=n[a=Tn(pt(t))]),l&&Ft(l,e,6,i);const u=n[a+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[a])return;e.emitted[a]=!0,Ft(u,e,6,i)}}const qv=new WeakMap;function Vp(e,t,r=!1){const n=r?qv:t.emitsCache,i=n.get(e);if(i!==void 0)return i;const s=e.emits;let o={},a=!1;if(!Y(e)){const l=u=>{const f=Vp(u,t,!0);f&&(a=!0,oe(o,f))};!r&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!s&&!a?(me(e)&&n.set(e,null),null):(K(s)?s.forEach(l=>o[l]=null):oe(o,s),me(e)&&n.set(e,o),o)}function uo(e,t){return!e||!an(t)?!1:(t=t.slice(2).replace(/Once$/,""),pe(e,t[0].toLowerCase()+t.slice(1))||pe(e,pt(t))||pe(e,t))}function is(e){const{type:t,vnode:r,proxy:n,withProxy:i,propsOptions:[s],slots:o,attrs:a,emit:l,render:u,renderCache:f,props:c,data:p,setupState:h,ctx:d,inheritAttrs:m}=e,S=yi(e);let _,g;try{if(r.shapeFlag&4){const v=i||n,E=v;_=ht(u.call(E,v,f,c,h,p,d)),g=a}else{const v=t;_=ht(v.length>1?v(c,{attrs:a,slots:o,emit:l}):v(c,null)),g=t.props?a:Hv(a)}}catch(v){ai.length=0,fn(v,e,1),_=Ce(Ie)}let y=_;if(g&&m!==!1){const v=Object.keys(g),{shapeFlag:E}=y;v.length&&E&7&&(s&&v.some(Al)&&(g=jv(g,s)),y=Jt(y,g,!1,!0))}return r.dirs&&(y=Jt(y,null,!1,!0),y.dirs=y.dirs?y.dirs.concat(r.dirs):r.dirs),r.transition&&dr(y,r.transition),_=y,yi(S),_}function Bv(e,t=!0){let r;for(let n=0;n{let t;for(const r in e)(r==="class"||r==="style"||an(r))&&((t||(t={}))[r]=e[r]);return t},jv=(e,t)=>{const r={};for(const n in e)(!Al(n)||!(n.slice(9)in t))&&(r[n]=e[n]);return r};function Uv(e,t,r){const{props:n,children:i,component:s}=e,{props:o,children:a,patchFlag:l}=t,u=s.emitsOptions;if(t.dirs||t.transition)return!0;if(r&&l>=0){if(l&1024)return!0;if(l&16)return n?of(n,o,u):!!o;if(l&8){const f=t.dynamicProps;for(let c=0;ce.__isSuspense;let Xa=0;const Vv={name:"Suspense",__isSuspense:!0,process(e,t,r,n,i,s,o,a,l,u){if(e==null)Kv(t,r,n,i,s,o,a,l,u);else{if(s&&s.deps>0&&!e.suspense.isInFallback){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}Gv(e,t,r,n,i,o,a,l,u)}},hydrate:zv,normalize:Jv},Wv=Vv;function bi(e,t){const r=e.props&&e.props[t];Y(r)&&r()}function Kv(e,t,r,n,i,s,o,a,l){const{p:u,o:{createElement:f}}=l,c=f("div"),p=e.suspense=Wp(e,i,n,t,c,r,s,o,a,l);u(null,p.pendingBranch=e.ssContent,c,null,n,p,s,o),p.deps>0?(bi(e,"onPending"),bi(e,"onFallback"),u(null,e.ssFallback,t,r,n,null,s,o),On(p,e.ssFallback)):p.resolve(!1,!0)}function Gv(e,t,r,n,i,s,o,a,{p:l,um:u,o:{createElement:f}}){const c=t.suspense=e.suspense;c.vnode=t,t.el=e.el;const p=t.ssContent,h=t.ssFallback,{activeBranch:d,pendingBranch:m,isInFallback:S,isHydrating:_}=c;if(m)c.pendingBranch=p,jt(m,p)?(l(m,p,c.hiddenContainer,null,i,c,s,o,a),c.deps<=0?c.resolve():S&&(_||(l(d,h,r,n,i,null,s,o,a),On(c,h)))):(c.pendingId=Xa++,_?(c.isHydrating=!1,c.activeBranch=m):u(m,i,c),c.deps=0,c.effects.length=0,c.hiddenContainer=f("div"),S?(l(null,p,c.hiddenContainer,null,i,c,s,o,a),c.deps<=0?c.resolve():(l(d,h,r,n,i,null,s,o,a),On(c,h))):d&&jt(d,p)?(l(d,p,r,n,i,c,s,o,a),c.resolve(!0)):(l(null,p,c.hiddenContainer,null,i,c,s,o,a),c.deps<=0&&c.resolve()));else if(d&&jt(d,p))l(d,p,r,n,i,c,s,o,a),On(c,p);else if(bi(t,"onPending"),c.pendingBranch=p,p.shapeFlag&512?c.pendingId=p.component.suspenseId:c.pendingId=Xa++,l(null,p,c.hiddenContainer,null,i,c,s,o,a),c.deps<=0)c.resolve();else{const{timeout:g,pendingId:y}=c;g>0?setTimeout(()=>{c.pendingId===y&&c.fallback(h)},g):g===0&&c.fallback(h)}}function Wp(e,t,r,n,i,s,o,a,l,u,f=!1){const{p:c,m:p,um:h,n:d,o:{parentNode:m,remove:S}}=u;let _;const g=Qv(e);g&&t&&t.pendingBranch&&(_=t.pendingId,t.deps++);const y=e.props?ds(e.props.timeout):void 0,v=s,E={vnode:e,parent:t,parentComponent:r,namespace:o,container:n,hiddenContainer:i,deps:0,pendingId:Xa++,timeout:typeof y=="number"?y:-1,activeBranch:null,pendingBranch:null,isInFallback:!f,isHydrating:f,isUnmounted:!1,effects:[],resolve(O=!1,N=!1){const{vnode:I,activeBranch:P,pendingBranch:C,pendingId:M,effects:T,parentComponent:q,container:W,isInFallback:G}=E;let U=!1;E.isHydrating?E.isHydrating=!1:O||(U=P&&C.transition&&C.transition.mode==="out-in",U&&(P.transition.afterLeave=()=>{M===E.pendingId&&(p(C,W,s===v?d(P):s,0),gi(T),G&&I.ssFallback&&(I.ssFallback.el=null))}),P&&(m(P.el)===W&&(s=d(P)),h(P,q,E,!0),!U&&G&&I.ssFallback&&(I.ssFallback.el=null)),U||p(C,W,s,0)),On(E,C),E.pendingBranch=null,E.isInFallback=!1;let z=E.parent,k=!1;for(;z;){if(z.pendingBranch){z.effects.push(...T),k=!0;break}z=z.parent}!k&&!U&&gi(T),E.effects=[],g&&t&&t.pendingBranch&&_===t.pendingId&&(t.deps--,t.deps===0&&!N&&t.resolve()),bi(I,"onResolve")},fallback(O){if(!E.pendingBranch)return;const{vnode:N,activeBranch:I,parentComponent:P,container:C,namespace:M}=E;bi(N,"onFallback");const T=d(I),q=()=>{E.isInFallback&&(c(null,O,C,T,P,null,M,a,l),On(E,O))},W=O.transition&&O.transition.mode==="out-in";W&&(I.transition.afterLeave=q),E.isInFallback=!0,h(I,P,null,!0),W||q()},move(O,N,I){E.activeBranch&&p(E.activeBranch,O,N,I),E.container=O},next(){return E.activeBranch&&d(E.activeBranch)},registerDep(O,N,I){const P=!!E.pendingBranch;P&&E.deps++;const C=O.vnode.el;O.asyncDep.catch(M=>{fn(M,O,0)}).then(M=>{if(O.isUnmounted||E.isUnmounted||E.pendingId!==O.suspenseId)return;O.asyncResolved=!0;const{vnode:T}=O;el(O,M,!1),C&&(T.el=C);const q=!C&&O.subTree.el;N(O,T,m(C||O.subTree.el),C?null:d(O.subTree),E,o,I),q&&(T.placeholder=null,S(q)),ho(O,T.el),P&&--E.deps===0&&E.resolve()})},unmount(O,N){E.isUnmounted=!0,E.activeBranch&&h(E.activeBranch,r,O,N),E.pendingBranch&&h(E.pendingBranch,r,O,N)}};return E}function zv(e,t,r,n,i,s,o,a,l){const u=t.suspense=Wp(t,n,r,e.parentNode,document.createElement("div"),null,i,s,o,a,!0),f=l(e,u.pendingBranch=t.ssContent,r,u,s,o);return u.deps===0&&u.resolve(!1,!0),f}function Jv(e){const{shapeFlag:t,children:r}=e,n=t&32;e.ssContent=af(n?r.default:r),e.ssFallback=n?af(r.fallback):Ce(Ie)}function af(e){let t;if(Y(e)){const r=rn&&e._c;r&&(e._d=!1,Si()),e=e(),r&&(e._d=!0,t=rt,Gp())}return K(e)&&(e=Bv(e)),e=ht(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(r=>r!==e)),e}function Kp(e,t){t&&t.pendingBranch?K(e)?t.effects.push(...e):t.effects.push(e):gi(e)}function On(e,t){e.activeBranch=t;const{vnode:r,parentComponent:n}=e;let i=t.el;for(;!i&&t.component;)t=t.component.subTree,i=t.el;r.el=i,n&&n.subTree===r&&(n.vnode.el=i,ho(n,i))}function Qv(e){const t=e.props&&e.props.suspensible;return t!=null&&t!==!1}const Ue=Symbol.for("v-fgt"),Mr=Symbol.for("v-txt"),Ie=Symbol.for("v-cmt"),Yr=Symbol.for("v-stc"),ai=[];let rt=null;function Si(e=!1){ai.push(rt=e?null:[])}function Gp(){ai.pop(),rt=ai[ai.length-1]||null}let rn=1;function _i(e,t=!1){rn+=e,e<0&&rt&&t&&(rt.hasOnce=!0)}function zp(e){return e.dynamicChildren=rn>0?rt||wn:null,Gp(),rn>0&&rt&&rt.push(e),e}function Xv(e,t,r,n,i,s){return zp(Jl(e,t,r,n,i,s,!0))}function As(e,t,r,n,i){return zp(Ce(e,t,r,n,i,!0))}function gr(e){return e?e.__v_isVNode===!0:!1}function jt(e,t){return e.type===t.type&&e.key===t.key}function Yv(e){}const Jp=({key:e})=>e??null,ss=({ref:e,ref_key:t,ref_for:r})=>(typeof e=="number"&&(e=""+e),e!=null?ee(e)||Be(e)||Y(e)?{i:Je,r:e,k:t,f:!!r}:e:null);function Jl(e,t=null,r=null,n=0,i=null,s=e===Ue?0:1,o=!1,a=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Jp(t),ref:t&&ss(t),scopeId:so,slotScopeIds:null,children:r,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:s,patchFlag:n,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:Je};return a?(Xl(l,r),s&128&&e.normalize(l)):r&&(l.shapeFlag|=ee(r)?8:16),rn>0&&!o&&rt&&(l.patchFlag>0||s&6)&&l.patchFlag!==32&&rt.push(l),l}const Ce=Zv;function Zv(e,t=null,r=null,n=0,i=null,s=!1){if((!e||e===_p)&&(e=Ie),gr(e)){const a=Jt(e,t,!0);return r&&Xl(a,r),rn>0&&!s&&rt&&(a.shapeFlag&6?rt[rt.indexOf(e)]=a:rt.push(a)),a.patchFlag=-2,a}if(ab(e)&&(e=e.__vccOpts),t){t=Qp(t);let{class:a,style:l}=t;a&&!ee(a)&&(t.class=Ri(a)),me(l)&&(ro(l)&&!K(l)&&(l=oe({},l)),t.style=Ii(l))}const o=ee(e)?1:Ps(e)?128:op(e)?64:me(e)?4:Y(e)?2:0;return Jl(e,t,r,n,i,o,s,!0)}function Qp(e){return e?ro(e)||Op(e)?oe({},e):e:null}function Jt(e,t,r=!1,n=!1){const{props:i,ref:s,patchFlag:o,children:a,transition:l}=e,u=t?Xp(i||{},t):i,f={__v_isVNode:!0,__v_skip:!0,type:e.type,props:u,key:u&&Jp(u),ref:t&&t.ref?r&&s?K(s)?s.concat(ss(t)):[s,ss(t)]:ss(t):s,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:a,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Ue?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Jt(e.ssContent),ssFallback:e.ssFallback&&Jt(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&n&&dr(f,l.clone(f)),f}function Ql(e=" ",t=0){return Ce(Mr,null,e,t)}function eb(e,t){const r=Ce(Yr,null,e);return r.staticCount=t,r}function tb(e="",t=!1){return t?(Si(),As(Ie,null,e)):Ce(Ie,null,e)}function ht(e){return e==null||typeof e=="boolean"?Ce(Ie):K(e)?Ce(Ue,null,e.slice()):gr(e)?Cr(e):Ce(Mr,null,String(e))}function Cr(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Jt(e)}function Xl(e,t){let r=0;const{shapeFlag:n}=e;if(t==null)t=null;else if(K(t))r=16;else if(typeof t=="object")if(n&65){const i=t.default;i&&(i._c&&(i._d=!1),Xl(e,i()),i._c&&(i._d=!0));return}else{r=32;const i=t._;!i&&!Op(t)?t._ctx=Je:i===3&&Je&&(Je.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else Y(t)?(t={default:t,_ctx:Je},r=32):(t=String(t),n&64?(r=16,t=[Ql(t)]):r=8);e.children=t,e.shapeFlag|=r}function Xp(...e){const t={};for(let r=0;rze||Je;let Cs,Ya;{const e=Qs(),t=(r,n)=>{let i;return(i=e[r])||(i=e[r]=[]),i.push(n),s=>{i.length>1?i.forEach(o=>o(s)):i[0](s)}};Cs=t("__VUE_INSTANCE_SETTERS__",r=>ze=r),Ya=t("__VUE_SSR_SETTERS__",r=>In=r)}const nn=e=>{const t=ze;return Cs(e),e.scope.on(),()=>{e.scope.off(),Cs(t)}},Za=()=>{ze&&ze.scope.off(),Cs(null)};function Zp(e){return e.vnode.shapeFlag&4}let In=!1;function ed(e,t=!1,r=!1){t&&Ya(t);const{props:n,children:i}=e.vnode,s=Zp(e);Cv(e,n,s,t),Rv(e,i,r||t);const o=s?ib(e,t):void 0;return t&&Ya(!1),o}function ib(e,t){const r=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Ga);const{setup:n}=r;if(n){ur();const i=e.setupContext=n.length>1?nd(e):null,s=nn(e),o=Un(n,e,0,[e.props,i]),a=Ol(o);if(hr(),s(),(a||e.sp)&&!$r(e)&&Bl(e),a){if(o.then(Za,Za),t)return o.then(l=>{el(e,l,t)}).catch(l=>{fn(l,e,0)});e.asyncDep=o}else el(e,o,t)}else rd(e,t)}function el(e,t,r){Y(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:me(t)&&(e.setupState=Fl(t)),rd(e,r)}let Os,tl;function td(e){Os=e,tl=t=>{t.render._rc&&(t.withProxy=new Proxy(t.ctx,sv))}}const sb=()=>!Os;function rd(e,t,r){const n=e.type;if(!e.render){if(!t&&Os&&!n.render){const i=n.template||Wl(e).template;if(i){const{isCustomElement:s,compilerOptions:o}=e.appContext.config,{delimiters:a,compilerOptions:l}=n,u=oe(oe({isCustomElement:s,delimiters:a},o),l);n.render=Os(i,u)}}e.render=n.render||Qe,tl&&tl(e)}{const i=nn(e);ur();try{bv(e)}finally{hr(),i()}}}const ob={get(e,t){return tt(e,"get",""),e[t]}};function nd(e){const t=r=>{e.exposed=r||{}};return{attrs:new Proxy(e.attrs,ob),slots:e.slots,emit:e.emit,expose:t}}function Fi(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Fl(ys(e.exposed)),{get(t,r){if(r in t)return t[r];if(r in si)return si[r](e)},has(t,r){return r in t||r in si}})):e.proxy}function rl(e,t=!0){return Y(e)?e.displayName||e.name:e.name||t&&e.__name}function ab(e){return Y(e)&&"__vccOpts"in e}const ft=(e,t)=>dy(e,t,In);function Zr(e,t,r){try{_i(-1);const n=arguments.length;return n===2?me(t)&&!K(t)?gr(t)?Ce(e,null,[t]):Ce(e,t):Ce(e,null,t):(n>3?r=Array.prototype.slice.call(arguments,2):n===3&&gr(r)&&(r=[r]),Ce(e,t,r))}finally{_i(1)}}function lb(){}function cb(e,t,r,n){const i=r[n];if(i&&id(i,e))return i;const s=t();return s.memo=e.slice(),s.cacheIndex=n,r[n]=s}function id(e,t){const r=e.memo;if(r.length!=t.length)return!1;for(let n=0;n0&&rt&&rt.push(e),!0}const sd="3.5.24",fb=Qe,ub=Ey,hb=bn,pb=ip,db={createComponentInstance:Yp,setupComponent:ed,renderComponentRoot:is,setCurrentRenderingInstance:yi,isVNode:gr,normalizeVNode:ht,getComponentPublicInstance:Fi,ensureValidVNode:Vl,pushWarningContext:by,popWarningContext:Sy},gb=db,mb=null,yb=null,vb=null;let nl;const lf=typeof window<"u"&&window.trustedTypes;if(lf)try{nl=lf.createPolicy("vue",{createHTML:e=>e})}catch{}const od=nl?e=>nl.createHTML(e):e=>e,bb="http://www.w3.org/2000/svg",Sb="http://www.w3.org/1998/Math/MathML",nr=typeof document<"u"?document:null,cf=nr&&nr.createElement("template"),_b={insert:(e,t,r)=>{t.insertBefore(e,r||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,r,n)=>{const i=t==="svg"?nr.createElementNS(bb,e):t==="mathml"?nr.createElementNS(Sb,e):r?nr.createElement(e,{is:r}):nr.createElement(e);return e==="select"&&n&&n.multiple!=null&&i.setAttribute("multiple",n.multiple),i},createText:e=>nr.createTextNode(e),createComment:e=>nr.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>nr.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,r,n,i,s){const o=r?r.previousSibling:t.lastChild;if(i&&(i===s||i.nextSibling))for(;t.insertBefore(i.cloneNode(!0),r),!(i===s||!(i=i.nextSibling)););else{cf.innerHTML=od(n==="svg"?`${e}`:n==="mathml"?`${e}`:e);const a=cf.content;if(n==="svg"||n==="mathml"){const l=a.firstChild;for(;l.firstChild;)a.appendChild(l.firstChild);a.removeChild(l)}t.insertBefore(a,r)}return[o?o.nextSibling:t.firstChild,r?r.previousSibling:t.lastChild]}},wr="transition",Jn="animation",Rn=Symbol("_vtc"),ad={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},ld=oe({},ql,ad),wb=e=>(e.displayName="Transition",e.props=ld,e),Eb=wb((e,{slots:t})=>Zr(up,cd(e),t)),Vr=(e,t=[])=>{K(e)?e.forEach(r=>r(...t)):e&&e(...t)},ff=e=>e?K(e)?e.some(t=>t.length>1):e.length>1:!1;function cd(e){const t={};for(const T in e)T in ad||(t[T]=e[T]);if(e.css===!1)return t;const{name:r="v",type:n,duration:i,enterFromClass:s=`${r}-enter-from`,enterActiveClass:o=`${r}-enter-active`,enterToClass:a=`${r}-enter-to`,appearFromClass:l=s,appearActiveClass:u=o,appearToClass:f=a,leaveFromClass:c=`${r}-leave-from`,leaveActiveClass:p=`${r}-leave-active`,leaveToClass:h=`${r}-leave-to`}=e,d=Tb(i),m=d&&d[0],S=d&&d[1],{onBeforeEnter:_,onEnter:g,onEnterCancelled:y,onLeave:v,onLeaveCancelled:E,onBeforeAppear:O=_,onAppear:N=g,onAppearCancelled:I=y}=t,P=(T,q,W,G)=>{T._enterCancelled=G,Tr(T,q?f:a),Tr(T,q?u:o),W&&W()},C=(T,q)=>{T._isLeaving=!1,Tr(T,c),Tr(T,h),Tr(T,p),q&&q()},M=T=>(q,W)=>{const G=T?N:g,U=()=>P(q,T,W);Vr(G,[q,U]),uf(()=>{Tr(q,T?l:s),Kt(q,T?f:a),ff(G)||hf(q,n,m,U)})};return oe(t,{onBeforeEnter(T){Vr(_,[T]),Kt(T,s),Kt(T,o)},onBeforeAppear(T){Vr(O,[T]),Kt(T,l),Kt(T,u)},onEnter:M(!1),onAppear:M(!0),onLeave(T,q){T._isLeaving=!0;const W=()=>C(T,q);Kt(T,c),T._enterCancelled?(Kt(T,p),il(T)):(il(T),Kt(T,p)),uf(()=>{T._isLeaving&&(Tr(T,c),Kt(T,h),ff(v)||hf(T,n,S,W))}),Vr(v,[T,W])},onEnterCancelled(T){P(T,!1,void 0,!0),Vr(y,[T])},onAppearCancelled(T){P(T,!0,void 0,!0),Vr(I,[T])},onLeaveCancelled(T){C(T),Vr(E,[T])}})}function Tb(e){if(e==null)return null;if(me(e))return[Bo(e.enter),Bo(e.leave)];{const t=Bo(e);return[t,t]}}function Bo(e){return ds(e)}function Kt(e,t){t.split(/\s+/).forEach(r=>r&&e.classList.add(r)),(e[Rn]||(e[Rn]=new Set)).add(t)}function Tr(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.remove(n));const r=e[Rn];r&&(r.delete(t),r.size||(e[Rn]=void 0))}function uf(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let Pb=0;function hf(e,t,r,n){const i=e._endId=++Pb,s=()=>{i===e._endId&&n()};if(r!=null)return setTimeout(s,r);const{type:o,timeout:a,propCount:l}=fd(e,t);if(!o)return n();const u=o+"end";let f=0;const c=()=>{e.removeEventListener(u,p),s()},p=h=>{h.target===e&&++f>=l&&c()};setTimeout(()=>{f(r[d]||"").split(", "),i=n(`${wr}Delay`),s=n(`${wr}Duration`),o=pf(i,s),a=n(`${Jn}Delay`),l=n(`${Jn}Duration`),u=pf(a,l);let f=null,c=0,p=0;t===wr?o>0&&(f=wr,c=o,p=s.length):t===Jn?u>0&&(f=Jn,c=u,p=l.length):(c=Math.max(o,u),f=c>0?o>u?wr:Jn:null,p=f?f===wr?s.length:l.length:0);const h=f===wr&&/\b(?:transform|all)(?:,|$)/.test(n(`${wr}Property`).toString());return{type:f,timeout:c,propCount:p,hasTransform:h}}function pf(e,t){for(;e.lengthdf(r)+df(e[n])))}function df(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function il(e){return(e?e.ownerDocument:document).body.offsetHeight}function Ab(e,t,r){const n=e[Rn];n&&(t=(t?[t,...n]:[...n]).join(" ")),t==null?e.removeAttribute("class"):r?e.setAttribute("class",t):e.className=t}const xs=Symbol("_vod"),ud=Symbol("_vsh"),hd={name:"show",beforeMount(e,{value:t},{transition:r}){e[xs]=e.style.display==="none"?"":e.style.display,r&&t?r.beforeEnter(e):Qn(e,t)},mounted(e,{value:t},{transition:r}){r&&t&&r.enter(e)},updated(e,{value:t,oldValue:r},{transition:n}){!t!=!r&&(n?t?(n.beforeEnter(e),Qn(e,!0),n.enter(e)):n.leave(e,()=>{Qn(e,!1)}):Qn(e,t))},beforeUnmount(e,{value:t}){Qn(e,t)}};function Qn(e,t){e.style.display=t?e[xs]:"none",e[ud]=!t}function Cb(){hd.getSSRProps=({value:e})=>{if(!e)return{style:{display:"none"}}}}const pd=Symbol("");function Ob(e){const t=vt();if(!t)return;const r=t.ut=(i=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(s=>Is(s,i))},n=()=>{const i=e(t.proxy);t.ce?Is(t.ce,i):sl(t.subTree,i),r(i)};Hl(()=>{gi(n)}),$i(()=>{Xr(n,Qe,{flush:"post"});const i=new MutationObserver(n);i.observe(t.subTree.el.parentNode,{childList:!0}),fo(()=>i.disconnect())})}function sl(e,t){if(e.shapeFlag&128){const r=e.suspense;e=r.activeBranch,r.pendingBranch&&!r.isHydrating&&r.effects.push(()=>{sl(r.activeBranch,t)})}for(;e.component;)e=e.component.subTree;if(e.shapeFlag&1&&e.el)Is(e.el,t);else if(e.type===Ue)e.children.forEach(r=>sl(r,t));else if(e.type===Yr){let{el:r,anchor:n}=e;for(;r&&(Is(r,t),r!==n);)r=r.nextSibling}}function Is(e,t){if(e.nodeType===1){const r=e.style;let n="";for(const i in t){const s=$m(t[i]);r.setProperty(`--${i}`,s),n+=`--${i}: ${s};`}r[pd]=n}}const xb=/(?:^|;)\s*display\s*:/;function Ib(e,t,r){const n=e.style,i=ee(r);let s=!1;if(r&&!i){if(t)if(ee(t))for(const o of t.split(";")){const a=o.slice(0,o.indexOf(":")).trim();r[a]==null&&os(n,a,"")}else for(const o in t)r[o]==null&&os(n,o,"");for(const o in r)o==="display"&&(s=!0),os(n,o,r[o])}else if(i){if(t!==r){const o=n[pd];o&&(r+=";"+o),n.cssText=r,s=xb.test(r)}}else t&&e.removeAttribute("style");xs in e&&(e[xs]=s?n.display:"",e[ud]&&(n.display="none"))}const gf=/\s*!important$/;function os(e,t,r){if(K(r))r.forEach(n=>os(e,t,n));else if(r==null&&(r=""),t.startsWith("--"))e.setProperty(t,r);else{const n=Rb(e,t);gf.test(r)?e.setProperty(pt(n),r.replace(gf,""),"important"):e[n]=r}}const mf=["Webkit","Moz","ms"],Ho={};function Rb(e,t){const r=Ho[t];if(r)return r;let n=Te(t);if(n!=="filter"&&n in e)return Ho[t]=n;n=cn(n);for(let i=0;ijo||(Fb.then(()=>jo=0),jo=Date.now());function Lb(e,t){const r=n=>{if(!n._vts)n._vts=Date.now();else if(n._vts<=r.attached)return;Ft(kb(n,r.value),t,5,[n])};return r.value=e,r.attached=Db(),r}function kb(e,t){if(K(t)){const r=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{r.call(e),e._stopped=!0},t.map(n=>i=>!i._stopped&&n&&n(i))}else return t}const wf=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,qb=(e,t,r,n,i,s)=>{const o=i==="svg";t==="class"?Ab(e,n,o):t==="style"?Ib(e,r,n):an(t)?Al(t)||$b(e,t,r,n,s):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Bb(e,t,n,o))?(bf(e,t,n),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&vf(e,t,n,o,s,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!ee(n))?bf(e,Te(t),n,s,t):(t==="true-value"?e._trueValue=n:t==="false-value"&&(e._falseValue=n),vf(e,t,n,o))};function Bb(e,t,r,n){if(n)return!!(t==="innerHTML"||t==="textContent"||t in e&&wf(t)&&Y(r));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const i=e.tagName;if(i==="IMG"||i==="VIDEO"||i==="CANVAS"||i==="SOURCE")return!1}return wf(t)&&ee(r)?!1:t in e}const Ef={};function dd(e,t,r){let n=Vn(e,t);Gs(n)&&(n=oe({},n,t));class i extends po{constructor(o){super(n,o,r)}}return i.def=n,i}const Hb=((e,t)=>dd(e,t,ec)),jb=typeof HTMLElement<"u"?HTMLElement:class{};class po extends jb{constructor(t,r={},n=$s){super(),this._def=t,this._props=r,this._createApp=n,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._patching=!1,this._dirty=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._ob=null,this.shadowRoot&&n!==$s?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(oe({},t.shadowRootOptions,{mode:"open"})),this._root=this.shadowRoot):this._root=this}connectedCallback(){if(!this.isConnected)return;!this.shadowRoot&&!this._resolved&&this._parseSlots(),this._connected=!0;let t=this;for(;t=t&&(t.parentNode||t.host);)if(t instanceof po){this._parent=t;break}this._instance||(this._resolved?this._mount(this._def):t&&t._pendingResolve?this._pendingResolve=t._pendingResolve.then(()=>{this._pendingResolve=void 0,this._resolveDef()}):this._resolveDef())}_setParent(t=this._parent){t&&(this._instance.parent=t._instance,this._inheritParentContext(t))}_inheritParentContext(t=this._parent){t&&this._app&&Object.setPrototypeOf(this._app._context.provides,t._instance.provides)}disconnectedCallback(){this._connected=!1,io(()=>{this._connected||(this._ob&&(this._ob.disconnect(),this._ob=null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null,this._teleportTargets&&(this._teleportTargets.clear(),this._teleportTargets=void 0))})}_processMutations(t){for(const r of t)this._setAttr(r.attributeName)}_resolveDef(){if(this._pendingResolve)return;for(let n=0;n{this._resolved=!0,this._pendingResolve=void 0;const{props:s,styles:o}=n;let a;if(s&&!K(s))for(const l in s){const u=s[l];(u===Number||u&&u.type===Number)&&(l in this._props&&(this._props[l]=ds(this._props[l])),(a||(a=Object.create(null)))[Te(l)]=!0)}this._numberProps=a,this._resolveProps(n),this.shadowRoot&&this._applyStyles(o),this._mount(n)},r=this._def.__asyncLoader;r?this._pendingResolve=r().then(n=>{n.configureApp=this._def.configureApp,t(this._def=n,!0)}):t(this._def)}_mount(t){this._app=this._createApp(t),this._inheritParentContext(),t.configureApp&&t.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);const r=this._instance&&this._instance.exposed;if(r)for(const n in r)pe(this,n)||Object.defineProperty(this,n,{get:()=>no(r[n])})}_resolveProps(t){const{props:r}=t,n=K(r)?r:Object.keys(r||{});for(const i of Object.keys(this))i[0]!=="_"&&n.includes(i)&&this._setProp(i,this[i]);for(const i of n.map(Te))Object.defineProperty(this,i,{get(){return this._getProp(i)},set(s){this._setProp(i,s,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const r=this.hasAttribute(t);let n=r?this.getAttribute(t):Ef;const i=Te(t);r&&this._numberProps&&this._numberProps[i]&&(n=ds(n)),this._setProp(i,n,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,r,n=!0,i=!1){if(r!==this._props[t]&&(this._dirty=!0,r===Ef?delete this._props[t]:(this._props[t]=r,t==="key"&&this._app&&(this._app._ceVNode.key=r)),i&&this._instance&&this._update(),n)){const s=this._ob;s&&(this._processMutations(s.takeRecords()),s.disconnect()),r===!0?this.setAttribute(pt(t),""):typeof r=="string"||typeof r=="number"?this.setAttribute(pt(t),r+""):r||this.removeAttribute(pt(t)),s&&s.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),Pd(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const r=Ce(this._def,oe(t,this._props));return this._instance||(r.ce=n=>{this._instance=n,n.ce=this,n.isCE=!0;const i=(s,o)=>{this.dispatchEvent(new CustomEvent(s,Gs(o[0])?oe({detail:o},o[0]):{detail:o}))};n.emit=(s,...o)=>{i(s,o),pt(s)!==s&&i(pt(s),o)},this._setParent()}),r}_applyStyles(t,r){if(!t)return;if(r){if(r===this._def||this._styleChildren.has(r))return;this._styleChildren.add(r)}const n=this._nonce;for(let i=t.length-1;i>=0;i--){const s=document.createElement("style");n&&s.setAttribute("nonce",n),s.textContent=t[i],this.shadowRoot.prepend(s)}}_parseSlots(){const t=this._slots={};let r;for(;r=this.firstChild;){const n=r.nodeType===1&&r.getAttribute("slot")||"default";(t[n]||(t[n]=[])).push(r),this.removeChild(r)}}_renderSlots(){const t=this._getSlots(),r=this._instance.type.__scopeId;for(let n=0;n(delete e.props.mode,e),Kb=Wb({name:"TransitionGroup",props:oe({},ld,{tag:String,moveClass:String}),setup(e,{slots:t}){const r=vt(),n=kl();let i,s;return lo(()=>{if(!i.length)return;const o=e.moveClass||`${e.name||"v"}-move`;if(!Xb(i[0].el,r.vnode.el,o)){i=[];return}i.forEach(zb),i.forEach(Jb);const a=i.filter(Qb);il(r.vnode.el),a.forEach(l=>{const u=l.el,f=u.style;Kt(u,o),f.transform=f.webkitTransform=f.transitionDuration="";const c=u[Rs]=p=>{p&&p.target!==u||(!p||p.propertyName.endsWith("transform"))&&(u.removeEventListener("transitionend",c),u[Rs]=null,Tr(u,o))};u.addEventListener("transitionend",c)}),i=[]}),()=>{const o=ue(e),a=cd(o);let l=o.tag||Ue;if(i=[],s)for(let u=0;u{a.split(/\s+/).forEach(l=>l&&n.classList.remove(l))}),r.split(/\s+/).forEach(a=>a&&n.classList.add(a)),n.style.display="none";const s=t.nodeType===1?t:t.parentNode;s.appendChild(n);const{hasTransform:o}=fd(n);return s.removeChild(n),o}const kr=e=>{const t=e.props["onUpdate:modelValue"]||!1;return K(t)?r=>Pn(t,r):t};function Yb(e){e.target.composing=!0}function Pf(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Mt=Symbol("_assign");function Af(e,t,r){return t&&(e=e.trim()),r&&(e=Js(e)),e}const Ns={created(e,{modifiers:{lazy:t,trim:r,number:n}},i){e[Mt]=kr(i);const s=n||i.props&&i.props.type==="number";ar(e,t?"change":"input",o=>{o.target.composing||e[Mt](Af(e.value,r,s))}),(r||s)&&ar(e,"change",()=>{e.value=Af(e.value,r,s)}),t||(ar(e,"compositionstart",Yb),ar(e,"compositionend",Pf),ar(e,"change",Pf))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:r,modifiers:{lazy:n,trim:i,number:s}},o){if(e[Mt]=kr(o),e.composing)return;const a=(s||e.type==="number")&&!/^0\d/.test(e.value)?Js(e.value):e.value,l=t??"";a!==l&&(document.activeElement===e&&e.type!=="range"&&(n&&t===r||i&&e.value.trim()===l)||(e.value=l))}},Yl={deep:!0,created(e,t,r){e[Mt]=kr(r),ar(e,"change",()=>{const n=e._modelValue,i=Nn(e),s=e.checked,o=e[Mt];if(K(n)){const a=Xs(n,i),l=a!==-1;if(s&&!l)o(n.concat(i));else if(!s&&l){const u=[...n];u.splice(a,1),o(u)}}else if(ln(n)){const a=new Set(n);s?a.add(i):a.delete(i),o(a)}else o(bd(e,s))})},mounted:Cf,beforeUpdate(e,t,r){e[Mt]=kr(r),Cf(e,t,r)}};function Cf(e,{value:t,oldValue:r},n){e._modelValue=t;let i;if(K(t))i=Xs(t,n.props.value)>-1;else if(ln(t))i=t.has(n.props.value);else{if(t===r)return;i=Lr(t,bd(e,!0))}e.checked!==i&&(e.checked=i)}const Zl={created(e,{value:t},r){e.checked=Lr(t,r.props.value),e[Mt]=kr(r),ar(e,"change",()=>{e[Mt](Nn(e))})},beforeUpdate(e,{value:t,oldValue:r},n){e[Mt]=kr(n),t!==r&&(e.checked=Lr(t,n.props.value))}},vd={deep:!0,created(e,{value:t,modifiers:{number:r}},n){const i=ln(t);ar(e,"change",()=>{const s=Array.prototype.filter.call(e.options,o=>o.selected).map(o=>r?Js(Nn(o)):Nn(o));e[Mt](e.multiple?i?new Set(s):s:s[0]),e._assigning=!0,io(()=>{e._assigning=!1})}),e[Mt]=kr(n)},mounted(e,{value:t}){Of(e,t)},beforeUpdate(e,t,r){e[Mt]=kr(r)},updated(e,{value:t}){e._assigning||Of(e,t)}};function Of(e,t){const r=e.multiple,n=K(t);if(!(r&&!n&&!ln(t))){for(let i=0,s=e.options.length;iString(u)===String(a)):o.selected=Xs(t,a)>-1}else o.selected=t.has(a);else if(Lr(Nn(o),t)){e.selectedIndex!==i&&(e.selectedIndex=i);return}}!r&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Nn(e){return"_value"in e?e._value:e.value}function bd(e,t){const r=t?"_trueValue":"_falseValue";return r in e?e[r]:t}const Sd={created(e,t,r){Xi(e,t,r,null,"created")},mounted(e,t,r){Xi(e,t,r,null,"mounted")},beforeUpdate(e,t,r,n){Xi(e,t,r,n,"beforeUpdate")},updated(e,t,r,n){Xi(e,t,r,n,"updated")}};function _d(e,t){switch(e){case"SELECT":return vd;case"TEXTAREA":return Ns;default:switch(t){case"checkbox":return Yl;case"radio":return Zl;default:return Ns}}}function Xi(e,t,r,n,i){const o=_d(e.tagName,r.props&&r.props.type)[i];o&&o(e,t,r,n)}function Zb(){Ns.getSSRProps=({value:e})=>({value:e}),Zl.getSSRProps=({value:e},t)=>{if(t.props&&Lr(t.props.value,e))return{checked:!0}},Yl.getSSRProps=({value:e},t)=>{if(K(e)){if(t.props&&Xs(e,t.props.value)>-1)return{checked:!0}}else if(ln(e)){if(t.props&&e.has(t.props.value))return{checked:!0}}else if(e)return{checked:!0}},Sd.getSSRProps=(e,t)=>{if(typeof t.type!="string")return;const r=_d(t.type.toUpperCase(),t.props&&t.props.type);if(r.getSSRProps)return r.getSSRProps(e,t)}}const eS=["ctrl","shift","alt","meta"],tS={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>eS.some(r=>e[`${r}Key`]&&!t.includes(r))},rS=(e,t)=>{const r=e._withMods||(e._withMods={}),n=t.join(".");return r[n]||(r[n]=((i,...s)=>{for(let o=0;o{const r=e._withKeys||(e._withKeys={}),n=t.join(".");return r[n]||(r[n]=(i=>{if(!("key"in i))return;const s=pt(i.key);if(t.some(o=>o===s||nS[o]===s))return e(i)}))},wd=oe({patchProp:qb},_b);let li,xf=!1;function Ed(){return li||(li=Mp(wd))}function Td(){return li=xf?li:Fp(wd),xf=!0,li}const Pd=((...e)=>{Ed().render(...e)}),sS=((...e)=>{Td().hydrate(...e)}),$s=((...e)=>{const t=Ed().createApp(...e),{mount:r}=t;return t.mount=n=>{const i=Cd(n);if(!i)return;const s=t._component;!Y(s)&&!s.render&&!s.template&&(s.template=i.innerHTML),i.nodeType===1&&(i.textContent="");const o=r(i,!1,Ad(i));return i instanceof Element&&(i.removeAttribute("v-cloak"),i.setAttribute("data-v-app","")),o},t}),ec=((...e)=>{const t=Td().createApp(...e),{mount:r}=t;return t.mount=n=>{const i=Cd(n);if(i)return r(i,!0,Ad(i))},t});function Ad(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Cd(e){return ee(e)?document.querySelector(e):e}let If=!1;const oS=()=>{If||(If=!0,Zb(),Cb())},aS=Object.freeze(Object.defineProperty({__proto__:null,BaseTransition:up,BaseTransitionPropsValidators:ql,Comment:Ie,DeprecationTypes:vb,EffectScope:Il,ErrorCodes:wy,ErrorTypeStrings:ub,Fragment:Ue,KeepAlive:Jy,ReactiveEffect:hi,Static:Yr,Suspense:Wv,Teleport:Ry,Text:Mr,TrackOpTypes:gy,Transition:Eb,TransitionGroup:Gb,TriggerOpTypes:my,VueElement:po,assertNumber:_y,callWithAsyncErrorHandling:Ft,callWithErrorHandling:Un,camelize:Te,capitalize:cn,cloneVNode:Jt,compatUtils:yb,computed:ft,createApp:$s,createBlock:As,createCommentVNode:tb,createElementBlock:Xv,createElementVNode:Jl,createHydrationRenderer:Fp,createPropsRestProxy:yv,createRenderer:Mp,createSSRApp:ec,createSlots:rv,createStaticVNode:eb,createTextVNode:Ql,createVNode:Ce,customRef:Xh,defineAsyncComponent:Gy,defineComponent:Vn,defineCustomElement:dd,defineEmits:av,defineExpose:lv,defineModel:uv,defineOptions:cv,defineProps:ov,defineSSRCustomElement:Hb,defineSlots:fv,devtools:hb,effect:Lm,effectScope:Mm,getCurrentInstance:vt,getCurrentScope:$h,getCurrentWatcher:yy,getTransitionRawChildren:oo,guardReactiveProps:Qp,h:Zr,handleError:fn,hasInjectionContext:Av,hydrate:sS,hydrateOnIdle:Hy,hydrateOnInteraction:Wy,hydrateOnMediaQuery:Vy,hydrateOnVisible:Uy,initCustomFormatter:lb,initDirectivesForSSR:oS,inject:oi,isMemoSame:id,isProxy:ro,isReactive:Rr,isReadonly:pr,isRef:Be,isRuntimeOnly:sb,isShallow:Pt,isVNode:gr,markRaw:ys,mergeDefaults:gv,mergeModels:mv,mergeProps:Xp,nextTick:io,normalizeClass:Ri,normalizeProps:_m,normalizeStyle:Ii,onActivated:pp,onBeforeMount:mp,onBeforeUnmount:co,onBeforeUpdate:Hl,onDeactivated:dp,onErrorCaptured:Sp,onMounted:$i,onRenderTracked:bp,onRenderTriggered:vp,onScopeDispose:Fm,onServerPrefetch:yp,onUnmounted:fo,onUpdated:lo,onWatcherCleanup:Zh,openBlock:Si,popScopeId:Cy,provide:Pp,proxyRefs:Fl,pushScopeId:Ay,queuePostFlushCb:gi,reactive:jn,readonly:ms,ref:Nr,registerRuntimeCompiler:td,render:Pd,renderList:tv,renderSlot:nv,resolveComponent:Yy,resolveDirective:ev,resolveDynamicComponent:Zy,resolveFilter:mb,resolveTransitionHooks:xn,setBlockTracking:_i,setDevtoolsHook:pb,setTransitionHooks:dr,shallowReactive:Jh,shallowReadonly:ny,shallowRef:Ml,ssrContextKey:qp,ssrUtils:gb,stop:km,toDisplayString:Rh,toHandlerKey:Tn,toHandlers:iv,toRaw:ue,toRef:hy,toRefs:cy,toValue:oy,transformVNodeArgs:Yv,triggerRef:sy,unref:no,useAttrs:dv,useCssModule:Vb,useCssVars:Ob,useHost:gd,useId:$y,useModel:Lv,useSSRContext:Bp,useShadowRoot:Ub,useSlots:pv,useTemplateRef:My,useTransitionState:kl,vModelCheckbox:Yl,vModelDynamic:Sd,vModelRadio:Zl,vModelSelect:vd,vModelText:Ns,vShow:hd,version:sd,warn:fb,watch:Xr,watchEffect:Mv,watchPostEffect:Fv,watchSyncEffect:Hp,withAsyncContext:vv,withCtx:Ll,withDefaults:hv,withDirectives:xy,withKeys:iS,withMemo:cb,withModifiers:rS,withScopeId:Oy},Symbol.toStringTag,{value:"Module"}));const wi=Symbol(""),ci=Symbol(""),tc=Symbol(""),Ms=Symbol(""),Od=Symbol(""),sn=Symbol(""),xd=Symbol(""),Id=Symbol(""),rc=Symbol(""),nc=Symbol(""),Di=Symbol(""),ic=Symbol(""),Rd=Symbol(""),sc=Symbol(""),oc=Symbol(""),ac=Symbol(""),lc=Symbol(""),cc=Symbol(""),fc=Symbol(""),Nd=Symbol(""),$d=Symbol(""),go=Symbol(""),Fs=Symbol(""),uc=Symbol(""),hc=Symbol(""),Ei=Symbol(""),Li=Symbol(""),pc=Symbol(""),ol=Symbol(""),lS=Symbol(""),al=Symbol(""),Ds=Symbol(""),cS=Symbol(""),fS=Symbol(""),dc=Symbol(""),uS=Symbol(""),hS=Symbol(""),gc=Symbol(""),Md=Symbol(""),$n={[wi]:"Fragment",[ci]:"Teleport",[tc]:"Suspense",[Ms]:"KeepAlive",[Od]:"BaseTransition",[sn]:"openBlock",[xd]:"createBlock",[Id]:"createElementBlock",[rc]:"createVNode",[nc]:"createElementVNode",[Di]:"createCommentVNode",[ic]:"createTextVNode",[Rd]:"createStaticVNode",[sc]:"resolveComponent",[oc]:"resolveDynamicComponent",[ac]:"resolveDirective",[lc]:"resolveFilter",[cc]:"withDirectives",[fc]:"renderList",[Nd]:"renderSlot",[$d]:"createSlots",[go]:"toDisplayString",[Fs]:"mergeProps",[uc]:"normalizeClass",[hc]:"normalizeStyle",[Ei]:"normalizeProps",[Li]:"guardReactiveProps",[pc]:"toHandlers",[ol]:"camelize",[lS]:"capitalize",[al]:"toHandlerKey",[Ds]:"setBlockTracking",[cS]:"pushScopeId",[fS]:"popScopeId",[dc]:"withCtx",[uS]:"unref",[hS]:"isRef",[gc]:"withMemo",[Md]:"isMemoSame"};function pS(e){Object.getOwnPropertySymbols(e).forEach(t=>{$n[t]=e[t]})}const Ct={start:{line:1,column:1,offset:0},end:{line:1,column:1,offset:0},source:""};function dS(e,t=""){return{type:0,source:t,children:e,helpers:new Set,components:[],directives:[],hoists:[],imports:[],cached:[],temps:0,codegenNode:void 0,loc:Ct}}function Ti(e,t,r,n,i,s,o,a=!1,l=!1,u=!1,f=Ct){return e&&(a?(e.helper(sn),e.helper(Dn(e.inSSR,u))):e.helper(Fn(e.inSSR,u)),o&&e.helper(cc)),{type:13,tag:t,props:r,children:n,patchFlag:i,dynamicProps:s,directives:o,isBlock:a,disableTracking:l,isComponent:u,loc:f}}function en(e,t=Ct){return{type:17,loc:t,elements:e}}function Nt(e,t=Ct){return{type:15,loc:t,properties:e}}function $e(e,t){return{type:16,loc:Ct,key:ee(e)?te(e,!0):e,value:t}}function te(e,t=!1,r=Ct,n=0){return{type:4,loc:r,content:e,isStatic:t,constType:t?3:n}}function Vt(e,t=Ct){return{type:8,loc:t,children:e}}function qe(e,t=[],r=Ct){return{type:14,loc:r,callee:e,arguments:t}}function Mn(e,t=void 0,r=!1,n=!1,i=Ct){return{type:18,params:e,returns:t,newline:r,isSlot:n,loc:i}}function ll(e,t,r,n=!0){return{type:19,test:e,consequent:t,alternate:r,newline:n,loc:Ct}}function gS(e,t,r=!1,n=!1){return{type:20,index:e,value:t,needPauseTracking:r,inVOnce:n,needArraySpread:!1,loc:Ct}}function mS(e){return{type:21,body:e,loc:Ct}}function Fn(e,t){return e||t?rc:nc}function Dn(e,t){return e||t?xd:Id}function mc(e,{helper:t,removeHelper:r,inSSR:n}){e.isBlock||(e.isBlock=!0,r(Fn(n,e.isComponent)),t(sn),t(Dn(n,e.isComponent)))}const Rf=new Uint8Array([123,123]),Nf=new Uint8Array([125,125]);function $f(e){return e>=97&&e<=122||e>=65&&e<=90}function Et(e){return e===32||e===10||e===9||e===12||e===13}function Er(e){return e===47||e===62||Et(e)}function Ls(e){const t=new Uint8Array(e.length);for(let r=0;r=0;i--){const s=this.newlines[i];if(t>s){r=i+2,n=t-s;break}}return{column:n,line:r,offset:t}}peek(){return this.buffer.charCodeAt(this.index+1)}stateText(t){t===60?(this.index>this.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=5,this.sectionStart=this.index):!this.inVPre&&t===this.delimiterOpen[0]&&(this.state=2,this.delimiterIndex=0,this.stateInterpolationOpen(t))}stateInterpolationOpen(t){if(t===this.delimiterOpen[this.delimiterIndex])if(this.delimiterIndex===this.delimiterOpen.length-1){const r=this.index+1-this.delimiterOpen.length;r>this.sectionStart&&this.cbs.ontext(this.sectionStart,r),this.state=3,this.sectionStart=r}else this.delimiterIndex++;else this.inRCDATA?(this.state=32,this.stateInRCDATA(t)):(this.state=1,this.stateText(t))}stateInterpolation(t){t===this.delimiterClose[0]&&(this.state=4,this.delimiterIndex=0,this.stateInterpolationClose(t))}stateInterpolationClose(t){t===this.delimiterClose[this.delimiterIndex]?this.delimiterIndex===this.delimiterClose.length-1?(this.cbs.oninterpolation(this.sectionStart,this.index+1),this.inRCDATA?this.state=32:this.state=1,this.sectionStart=this.index+1):this.delimiterIndex++:(this.state=3,this.stateInterpolation(t))}stateSpecialStartSequence(t){const r=this.sequenceIndex===this.currentSequence.length;if(!(r?Er(t):(t|32)===this.currentSequence[this.sequenceIndex]))this.inRCDATA=!1;else if(!r){this.sequenceIndex++;return}this.sequenceIndex=0,this.state=6,this.stateInTagName(t)}stateInRCDATA(t){if(this.sequenceIndex===this.currentSequence.length){if(t===62||Et(t)){const r=this.index-this.currentSequence.length;if(this.sectionStart=t||(this.state===28?this.currentSequence===Xe.CdataEnd?this.cbs.oncdata(this.sectionStart,t):this.cbs.oncomment(this.sectionStart,t):this.state===6||this.state===11||this.state===18||this.state===17||this.state===12||this.state===13||this.state===14||this.state===15||this.state===16||this.state===20||this.state===19||this.state===21||this.state===9||this.cbs.ontext(this.sectionStart,t))}emitCodePoint(t,r){}}function Mf(e,{compatConfig:t}){const r=t&&t[e];return e==="MODE"?r||3:r}function tn(e,t){const r=Mf("MODE",t),n=Mf(e,t);return r===3?n===!0:n!==!1}function Pi(e,t,r,...n){return tn(e,t)}function yc(e){throw e}function Fd(e){}function Ae(e,t,r,n){const i=`https://vuejs.org/error-reference/#compiler-${e}`,s=new SyntaxError(String(i));return s.code=e,s.loc=t,s}const dt=e=>e.type===4&&e.isStatic;function Dd(e){switch(e){case"Teleport":case"teleport":return ci;case"Suspense":case"suspense":return tc;case"KeepAlive":case"keep-alive":return Ms;case"BaseTransition":case"base-transition":return Od}}const vS=/^$|^\d|[^\$\w\xA0-\uFFFF]/,vc=e=>!vS.test(e),Ld=/[A-Za-z_$\xA0-\uFFFF]/,bS=/[\.\?\w$\xA0-\uFFFF]/,SS=/\s+[.[]\s*|\s*[.[]\s+/g,kd=e=>e.type===4?e.content:e.loc.source,_S=e=>{const t=kd(e).trim().replace(SS,a=>a.trim());let r=0,n=[],i=0,s=0,o=null;for(let a=0;a|^\s*(?:async\s+)?function(?:\s+[\w$]+)?\s*\(/,ES=e=>wS.test(kd(e)),TS=ES;function It(e,t,r=!1){for(let n=0;nt.type===7&&t.name==="bind"&&(!t.arg||t.arg.type!==4||!t.arg.isStatic))}function Uo(e){return e.type===5||e.type===2}function Ff(e){return e.type===7&&e.name==="pre"}function AS(e){return e.type===7&&e.name==="slot"}function ks(e){return e.type===1&&e.tagType===3}function qs(e){return e.type===1&&e.tagType===2}const CS=new Set([Ei,Li]);function Bd(e,t=[]){if(e&&!ee(e)&&e.type===14){const r=e.callee;if(!ee(r)&&CS.has(r))return Bd(e.arguments[0],t.concat(e))}return[e,t]}function Bs(e,t,r){let n,i=e.type===13?e.props:e.arguments[2],s=[],o;if(i&&!ee(i)&&i.type===14){const a=Bd(i);i=a[0],s=a[1],o=s[s.length-1]}if(i==null||ee(i))n=Nt([t]);else if(i.type===14){const a=i.arguments[0];!ee(a)&&a.type===15?Df(t,a)||a.properties.unshift(t):i.callee===pc?n=qe(r.helper(Fs),[Nt([t]),i]):i.arguments.unshift(Nt([t])),!n&&(n=i)}else i.type===15?(Df(t,i)||i.properties.unshift(t),n=i):(n=qe(r.helper(Fs),[Nt([t]),i]),o&&o.callee===Li&&(o=s[s.length-2]));e.type===13?o?o.arguments[0]=n:e.props=n:o?o.arguments[0]=n:e.arguments[2]=n}function Df(e,t){let r=!1;if(e.key.type===4){const n=e.key.content;r=t.properties.some(i=>i.key.type===4&&i.key.content===n)}return r}function Ai(e,t){return`_${t}_${e.replace(/[^\w]/g,(r,n)=>r==="-"?"_":e.charCodeAt(n).toString())}`}function OS(e){return e.type===14&&e.callee===gc?e.arguments[1].returns:e}const xS=/([\s\S]*?)\s+(?:in|of)\s+(\S[\s\S]*)/,Hd={parseMode:"base",ns:0,delimiters:["{{","}}"],getNamespace:()=>0,isVoidTag:Sn,isPreTag:Sn,isIgnoreNewlineTag:Sn,isCustomElement:Sn,onError:yc,onWarn:Fd,comments:!1,prefixIdentifiers:!1};let de=Hd,Ci=null,cr="",et=null,ae=null,ct="",tr=-1,Wr=-1,bc=0,Or=!1,cl=null;const Pe=[],Oe=new yS(Pe,{onerr:er,ontext(e,t){Yi(We(e,t),e,t)},ontextentity(e,t,r){Yi(e,t,r)},oninterpolation(e,t){if(Or)return Yi(We(e,t),e,t);let r=e+Oe.delimiterOpen.length,n=t-Oe.delimiterClose.length;for(;Et(cr.charCodeAt(r));)r++;for(;Et(cr.charCodeAt(n-1));)n--;let i=We(r,n);i.includes("&")&&(i=de.decodeEntities(i,!1)),fl({type:5,content:ls(i,!1,xe(r,n)),loc:xe(e,t)})},onopentagname(e,t){const r=We(e,t);et={type:1,tag:r,ns:de.getNamespace(r,Pe[0],de.ns),tagType:0,props:[],children:[],loc:xe(e-1,t),codegenNode:void 0}},onopentagend(e){kf(e)},onclosetag(e,t){const r=We(e,t);if(!de.isVoidTag(r)){let n=!1;for(let i=0;i0&&er(24,Pe[0].loc.start.offset);for(let o=0;o<=i;o++){const a=Pe.shift();as(a,t,o(n.type===7?n.rawName:n.name)===r)&&er(2,t)},onattribend(e,t){if(et&&ae){if(Gr(ae.loc,t),e!==0)if(ct.includes("&")&&(ct=de.decodeEntities(ct,!0)),ae.type===6)ae.name==="class"&&(ct=Vd(ct).trim()),e===1&&!ct&&er(13,t),ae.value={type:2,content:ct,loc:e===1?xe(tr,Wr):xe(tr-1,Wr+1)},Oe.inSFCRoot&&et.tag==="template"&&ae.name==="lang"&&ct&&ct!=="html"&&Oe.enterRCDATA(Ls("i.content==="sync"))>-1&&Pi("COMPILER_V_BIND_SYNC",de,ae.loc,ae.arg.loc.source)&&(ae.name="model",ae.modifiers.splice(n,1))}(ae.type!==7||ae.name!=="pre")&&et.props.push(ae)}ct="",tr=Wr=-1},oncomment(e,t){de.comments&&fl({type:3,content:We(e,t),loc:xe(e-4,t+3)})},onend(){const e=cr.length;for(let t=0;t{const d=t.start.offset+p,m=d+c.length;return ls(c,!1,xe(d,m),0,h?1:0)},a={source:o(s.trim(),r.indexOf(s,i.length)),value:void 0,key:void 0,index:void 0,finalized:!1};let l=i.trim().replace(IS,"").trim();const u=i.indexOf(l),f=l.match(Lf);if(f){l=l.replace(Lf,"").trim();const c=f[1].trim();let p;if(c&&(p=r.indexOf(c,u+l.length),a.key=o(c,p,!0)),f[2]){const h=f[2].trim();h&&(a.index=o(h,r.indexOf(h,a.key?p+c.length:u+l.length),!0))}}return l&&(a.value=o(l,u,!0)),a}function We(e,t){return cr.slice(e,t)}function kf(e){Oe.inSFCRoot&&(et.innerLoc=xe(e+1,e+1)),fl(et);const{tag:t,ns:r}=et;r===0&&de.isPreTag(t)&&bc++,de.isVoidTag(t)?as(et,e):(Pe.unshift(et),(r===1||r===2)&&(Oe.inXML=!0)),et=null}function Yi(e,t,r){{const s=Pe[0]&&Pe[0].tag;s!=="script"&&s!=="style"&&e.includes("&")&&(e=de.decodeEntities(e,!1))}const n=Pe[0]||Ci,i=n.children[n.children.length-1];i&&i.type===2?(i.content+=e,Gr(i.loc,r)):n.children.push({type:2,content:e,loc:xe(t,r)})}function as(e,t,r=!1){r?Gr(e.loc,jd(t,60)):Gr(e.loc,NS(t,62)+1),Oe.inSFCRoot&&(e.children.length?e.innerLoc.end=oe({},e.children[e.children.length-1].loc.end):e.innerLoc.end=oe({},e.innerLoc.start),e.innerLoc.source=We(e.innerLoc.start.offset,e.innerLoc.end.offset));const{tag:n,ns:i,children:s}=e;if(Or||(n==="slot"?e.tagType=2:qf(e)?e.tagType=3:MS(e)&&(e.tagType=1)),Oe.inRCDATA||(e.children=Ud(s)),i===0&&de.isIgnoreNewlineTag(n)){const o=s[0];o&&o.type===2&&(o.content=o.content.replace(/^\r?\n/,""))}i===0&&de.isPreTag(n)&&bc--,cl===e&&(Or=Oe.inVPre=!1,cl=null),Oe.inXML&&(Pe[0]?Pe[0].ns:de.ns)===0&&(Oe.inXML=!1);{const o=e.props;if(!Oe.inSFCRoot&&tn("COMPILER_NATIVE_TEMPLATE",de)&&e.tag==="template"&&!qf(e)){const l=Pe[0]||Ci,u=l.children.indexOf(e);l.children.splice(u,1,...e.children)}const a=o.find(l=>l.type===6&&l.name==="inline-template");a&&Pi("COMPILER_INLINE_TEMPLATE",de,a.loc)&&e.children.length&&(a.value={type:2,content:We(e.children[0].loc.start.offset,e.children[e.children.length-1].loc.end.offset),loc:a.loc})}}function NS(e,t){let r=e;for(;cr.charCodeAt(r)!==t&&r=0;)r--;return r}const $S=new Set(["if","else","else-if","for","slot"]);function qf({tag:e,props:t}){if(e==="template"){for(let r=0;r64&&e<91}const DS=/\r\n/g;function Ud(e){const t=de.whitespace!=="preserve";let r=!1;for(let n=0;nr.type!==3);return t.length===1&&t[0].type===1&&!qs(t[0])?t[0]:null}function cs(e,t,r,n=!1,i=!1){const{children:s}=e,o=[];for(let f=0;f0){if(p>=2){c.codegenNode.patchFlag=-1,o.push(c);continue}}else{const h=c.codegenNode;if(h.type===13){const d=h.patchFlag;if((d===void 0||d===512||d===1)&&Gd(c,r)>=2){const m=zd(c);m&&(h.props=r.hoist(m))}h.dynamicProps&&(h.dynamicProps=r.hoist(h.dynamicProps))}}}else if(c.type===12&&(n?0:Tt(c,r))>=2){c.codegenNode.type===14&&c.codegenNode.arguments.length>0&&c.codegenNode.arguments.push("-1"),o.push(c);continue}if(c.type===1){const p=c.tagType===1;p&&r.scopes.vSlot++,cs(c,e,r,!1,i),p&&r.scopes.vSlot--}else if(c.type===11)cs(c,e,r,c.children.length===1,!0);else if(c.type===9)for(let p=0;ph.key===c||h.key.content===c);return p&&p.value}}o.length&&r.transformHoist&&r.transformHoist(s,r,e)}function Tt(e,t){const{constantCache:r}=t;switch(e.type){case 1:if(e.tagType!==0)return 0;const n=r.get(e);if(n!==void 0)return n;const i=e.codegenNode;if(i.type!==13||i.isBlock&&e.tag!=="svg"&&e.tag!=="foreignObject"&&e.tag!=="math")return 0;if(i.patchFlag===void 0){let o=3;const a=Gd(e,t);if(a===0)return r.set(e,0),0;a1)for(let l=0;lM&&(I.childIndex--,I.onNodeRemoved()),I.parent.children.splice(M,1)},onNodeRemoved:Qe,addIdentifiers(P){},removeIdentifiers(P){},hoist(P){ee(P)&&(P=te(P)),I.hoists.push(P);const C=te(`_hoisted_${I.hoists.length}`,!1,P.loc,2);return C.hoisted=P,C},cache(P,C=!1,M=!1){const T=gS(I.cached.length,P,C,M);return I.cached.push(T),T}};return I.filters=new Set,I}function KS(e,t){const r=WS(e,t);yo(e,r),t.hoistStatic&&US(e,r),t.ssr||GS(e,r),e.helpers=new Set([...r.helpers.keys()]),e.components=[...r.components],e.directives=[...r.directives],e.imports=r.imports,e.hoists=r.hoists,e.temps=r.temps,e.cached=r.cached,e.transformed=!0,e.filters=[...r.filters]}function GS(e,t){const{helper:r}=t,{children:n}=e;if(n.length===1){const i=Wd(e);if(i&&i.codegenNode){const s=i.codegenNode;s.type===13&&mc(s,t),e.codegenNode=s}else e.codegenNode=n[0]}else if(n.length>1){let i=64;e.codegenNode=Ti(t,r(wi),void 0,e.children,i,void 0,void 0,!0,void 0,!1)}}function zS(e,t){let r=0;const n=()=>{r--};for(;rn===e:n=>e.test(n);return(n,i)=>{if(n.type===1){const{props:s}=n;if(n.tagType===3&&s.some(AS))return;const o=[];for(let a=0;a`${$n[e]}: _${$n[e]}`;function JS(e,{mode:t="function",prefixIdentifiers:r=t==="module",sourceMap:n=!1,filename:i="template.vue.html",scopeId:s=null,optimizeImports:o=!1,runtimeGlobalName:a="Vue",runtimeModuleName:l="vue",ssrRuntimeModuleName:u="vue/server-renderer",ssr:f=!1,isTS:c=!1,inSSR:p=!1}){const h={mode:t,prefixIdentifiers:r,sourceMap:n,filename:i,scopeId:s,optimizeImports:o,runtimeGlobalName:a,runtimeModuleName:l,ssrRuntimeModuleName:u,ssr:f,isTS:c,inSSR:p,source:e.source,code:"",column:1,line:1,offset:0,indentLevel:0,pure:!1,map:void 0,helper(m){return`_${$n[m]}`},push(m,S=-2,_){h.code+=m},indent(){d(++h.indentLevel)},deindent(m=!1){m?--h.indentLevel:d(--h.indentLevel)},newline(){d(h.indentLevel)}};function d(m){h.push(` +`)&&(Ji(y,0)||mn(),y.textContent=v.children)}if(C){if(G||!I||M&48){const k=y.tagName.includes("-");for(const re in C)(G&&(re.endsWith("value")||re==="indeterminate")||an(re)&&!Ir(re)||re[0]==="."||k)&&n(y,re,null,C[re],void 0,E)}else if(C.onClick)n(y,"onClick",null,C.onClick,void 0,E);else if(M&4&&Rr(C.style))for(const k in C.style)C.style[k]}let z;(z=C&&C.onVnodeBeforeMount)&&ut(z,E,v),q&&zt(v,null,E,"beforeMount"),((z=C&&C.onVnodeMounted)||q||U)&&Kp(()=>{z&&ut(z,E,v),U&&W.enter(y),q&&zt(v,null,E,"mounted")},O)}return y.nextSibling},h=(y,v,E,O,N,I,P)=>{P=P||!!v.dynamicChildren;const C=v.children,M=C.length;for(let T=0;T{const{slotScopeIds:P}=v;P&&(N=N?N.concat(P):P);const C=o(y),M=h(s(y),v,C,E,O,N,I);return M&&_n(M)&&M.data==="]"?s(v.anchor=M):(mn(),l(v.anchor=u("]"),C,M),M)},m=(y,v,E,O,N,I)=>{if(Ji(y.parentElement,1)||mn(),v.el=null,I){const M=S(y);for(;;){const T=s(y);if(T&&T!==M)a(T);else break}}const P=s(y),C=o(y);return a(y),r(null,v,C,P,E,O,zi(C),N),E&&(E.vnode.el=v.el,po(E,v.el)),P},S=(y,v="[",E="]")=>{let O=0;for(;y;)if(y=s(y),y&&_n(y)&&(y.data===v&&O++,y.data===E)){if(O===0)return s(y);O--}return y},_=(y,v,E)=>{const O=v.parentNode;O&&O.replaceChild(y,v);let N=E;for(;N;)N.vnode.el===v&&(N.vnode.el=N.subTree.el=y),N=N.parent},g=y=>y.nodeType===1&&y.tagName==="TEMPLATE";return[f,c]}const Zc="data-allow-mismatch",ky={0:"text",1:"children",2:"class",3:"style",4:"attribute"};function Ji(e,t){if(t===0||t===1)for(;e&&!e.hasAttribute(Zc);)e=e.parentElement;const r=e&&e.getAttribute(Zc);if(r==null)return!1;if(r==="")return!0;{const n=r.split(",");return t===0&&n.includes("children")?!0:n.includes(ky[t])}}const qy=Xs().requestIdleCallback||(e=>setTimeout(e,1)),By=Xs().cancelIdleCallback||(e=>clearTimeout(e)),Hy=(e=1e4)=>t=>{const r=qy(t,{timeout:e});return()=>By(r)};function jy(e){const{top:t,left:r,bottom:n,right:i}=e.getBoundingClientRect(),{innerHeight:s,innerWidth:o}=window;return(t>0&&t0&&n0&&r0&&i(t,r)=>{const n=new IntersectionObserver(i=>{for(const s of i)if(s.isIntersecting){n.disconnect(),t();break}},e);return r(i=>{if(i instanceof Element){if(jy(i))return t(),n.disconnect(),!1;n.observe(i)}}),()=>n.disconnect()},Vy=e=>t=>{if(e){const r=matchMedia(e);if(r.matches)t();else return r.addEventListener("change",t,{once:!0}),()=>r.removeEventListener("change",t)}},Wy=(e=[])=>(t,r)=>{ee(e)&&(e=[e]);let n=!1;const i=o=>{n||(n=!0,s(),t(),o.target.dispatchEvent(new o.constructor(o.type,o)))},s=()=>{r(o=>{for(const a of e)o.removeEventListener(a,i)})};return r(o=>{for(const a of e)o.addEventListener(a,i,{once:!0})}),s};function Ky(e,t){if(_n(e)&&e.data==="["){let r=1,n=e.nextSibling;for(;n;){if(n.nodeType===1){if(t(n)===!1)break}else if(_n(n))if(n.data==="]"){if(--r===0)break}else n.data==="["&&r++;n=n.nextSibling}}else t(e)}const $r=e=>!!e.type.__asyncLoader;function Gy(e){Y(e)&&(e={loader:e});const{loader:t,loadingComponent:r,errorComponent:n,delay:i=200,hydrate:s,timeout:o,suspensible:a=!0,onError:l}=e;let u=null,f,c=0;const p=()=>(c++,u=null,h()),h=()=>{let d;return u||(d=u=t().catch(m=>{if(m=m instanceof Error?m:new Error(String(m)),l)return new Promise((S,_)=>{l(m,()=>S(p()),()=>_(m),c+1)});throw m}).then(m=>d!==u&&u?u:(m&&(m.__esModule||m[Symbol.toStringTag]==="Module")&&(m=m.default),f=m,m)))};return Vn({name:"AsyncComponentWrapper",__asyncLoader:h,__asyncHydrate(d,m,S){let _=!1;(m.bu||(m.bu=[])).push(()=>_=!0);const g=()=>{_||S()},y=s?()=>{const v=s(g,E=>Ky(d,E));v&&(m.bum||(m.bum=[])).push(v)}:g;f?y():h().then(()=>!m.isUnmounted&&y())},get __asyncResolved(){return f},setup(){const d=ze;if(Bl(d),f)return()=>Qi(f,d);const m=y=>{u=null,fn(y,d,13,!n)};if(a&&d.suspense||In)return h().then(y=>()=>Qi(y,d)).catch(y=>(m(y),()=>n?Ce(n,{error:y}):null));const S=Nr(!1),_=Nr(),g=Nr(!!i);return i&&setTimeout(()=>{g.value=!1},i),o!=null&&setTimeout(()=>{if(!S.value&&!_.value){const y=new Error(`Async component timed out after ${o}ms.`);m(y),_.value=y}},o),h().then(()=>{S.value=!0,d.parent&&Ni(d.parent.vnode)&&d.parent.update()}).catch(y=>{m(y),_.value=y}),()=>{if(S.value&&f)return Qi(f,d);if(_.value&&n)return Ce(n,{error:_.value});if(r&&!g.value)return Qi(r,d)}}})}function Qi(e,t){const{ref:r,props:n,children:i,ce:s}=t.vnode,o=Ce(e,n,i);return o.ref=r,o.ce=s,delete t.vnode.ce,o}const Ni=e=>e.type.__isKeepAlive,zy={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const r=vt(),n=r.ctx;if(!n.renderer)return()=>{const g=t.default&&t.default();return g&&g.length===1?g[0]:g};const i=new Map,s=new Set;let o=null;const a=r.suspense,{renderer:{p:l,m:u,um:f,o:{createElement:c}}}=n,p=c("div");n.activate=(g,y,v,E,O)=>{const N=g.component;u(g,y,v,0,a),l(N.vnode,g,y,v,N,a,E,g.slotScopeIds,O),ke(()=>{N.isDeactivated=!1,N.a&&Pn(N.a);const I=g.props&&g.props.onVnodeMounted;I&&ut(I,N.parent,g)},a)},n.deactivate=g=>{const y=g.component;Ps(y.m),Ps(y.a),u(g,p,null,1,a),ke(()=>{y.da&&Pn(y.da);const v=g.props&&g.props.onVnodeUnmounted;v&&ut(v,y.parent,g),y.isDeactivated=!0},a)};function h(g){Lo(g),f(g,r,a,!0)}function d(g){i.forEach((y,v)=>{const E=rl(y.type);E&&!g(E)&&m(v)})}function m(g){const y=i.get(g);y&&(!o||!jt(y,o))?h(y):o&&Lo(o),i.delete(g),s.delete(g)}Xr(()=>[e.include,e.exclude],([g,y])=>{g&&d(v=>Zn(g,v)),y&&d(v=>!Zn(y,v))},{flush:"post",deep:!0});let S=null;const _=()=>{S!=null&&(As(r.subTree.type)?ke(()=>{i.set(S,Xi(r.subTree))},r.subTree.suspense):i.set(S,Xi(r.subTree)))};return $i(_),co(_),fo(()=>{i.forEach(g=>{const{subTree:y,suspense:v}=r,E=Xi(y);if(g.type===E.type&&g.key===E.key){Lo(E);const O=E.component.da;O&&ke(O,v);return}h(g)})}),()=>{if(S=null,!t.default)return o=null;const g=t.default(),y=g[0];if(g.length>1)return o=null,g;if(!gr(y)||!(y.shapeFlag&4)&&!(y.shapeFlag&128))return o=null,y;let v=Xi(y);if(v.type===Ie)return o=null,v;const E=v.type,O=rl($r(v)?v.type.__asyncResolved||{}:E),{include:N,exclude:I,max:P}=e;if(N&&(!O||!Zn(N,O))||I&&O&&Zn(I,O))return v.shapeFlag&=-257,o=v,y;const C=v.key==null?E:v.key,M=i.get(C);return v.el&&(v=Jt(v),y.shapeFlag&128&&(y.ssContent=v)),S=C,M?(v.el=M.el,v.component=M.component,v.transition&&dr(v,v.transition),v.shapeFlag|=512,s.delete(C),s.add(C)):(s.add(C),P&&s.size>parseInt(P,10)&&m(s.values().next().value)),v.shapeFlag|=256,o=v,As(y.type)?y:v}}},Jy=zy;function Zn(e,t){return K(e)?e.some(r=>Zn(r,t)):ee(e)?e.split(",").includes(t):fm(e)?(e.lastIndex=0,e.test(t)):!1}function pp(e,t){gp(e,"a",t)}function dp(e,t){gp(e,"da",t)}function gp(e,t,r=ze){const n=e.__wdc||(e.__wdc=()=>{let i=r;for(;i;){if(i.isDeactivated)return;i=i.parent}return e()});if(lo(t,n,r),r){let i=r.parent;for(;i&&i.parent;)Ni(i.parent.vnode)&&Qy(n,t,r,i),i=i.parent}}function Qy(e,t,r,n){const i=lo(t,e,n,!0);uo(()=>{Cl(n[t],i)},r)}function Lo(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function Xi(e){return e.shapeFlag&128?e.ssContent:e}function lo(e,t,r=ze,n=!1){if(r){const i=r[e]||(r[e]=[]),s=t.__weh||(t.__weh=(...o)=>{ur();const a=nn(r),l=Ft(t,r,e,o);return a(),hr(),l});return n?i.unshift(s):i.push(s),s}}const yr=e=>(t,r=ze)=>{(!In||e==="sp")&&lo(e,(...n)=>t(...n),r)},mp=yr("bm"),$i=yr("m"),Hl=yr("bu"),co=yr("u"),fo=yr("bum"),uo=yr("um"),yp=yr("sp"),vp=yr("rtg"),bp=yr("rtc");function Sp(e,t=ze){lo("ec",e,t)}const jl="components",Xy="directives";function Yy(e,t){return Ul(jl,e,!0,t)||e}const _p=Symbol.for("v-ndc");function Zy(e){return ee(e)?Ul(jl,e,!1)||e:e||_p}function ev(e){return Ul(Xy,e)}function Ul(e,t,r=!0,n=!1){const i=Je||ze;if(i){const s=i.type;if(e===jl){const a=rl(s,!1);if(a&&(a===t||a===Te(t)||a===cn(Te(t))))return s}const o=ef(i[e]||s[e],t)||ef(i.appContext[e],t);return!o&&n?s:o}}function ef(e,t){return e&&(e[t]||e[Te(t)]||e[cn(Te(t))])}function tv(e,t,r,n){let i;const s=r&&r[n],o=K(e);if(o||ee(e)){const a=o&&Rr(e);let l=!1,u=!1;a&&(l=!Pt(e),u=pr(e),e=eo(e)),i=new Array(e.length);for(let f=0,c=e.length;ft(a,l,void 0,s&&s[l]));else{const a=Object.keys(e);i=new Array(a.length);for(let l=0,u=a.length;l{const s=n.fn(...i);return s&&(s.key=n.key),s}:n.fn)}return e}function nv(e,t,r={},n,i){if(Je.ce||Je.parent&&$r(Je.parent)&&Je.parent.ce){const u=Object.keys(r).length>0;return t!=="default"&&(r.name=t),Si(),Cs(Ue,null,[Ce("slot",r,n&&n())],u?-2:64)}let s=e[t];s&&s._c&&(s._d=!1),Si();const o=s&&Vl(s(r)),a=r.key||o&&o.key,l=Cs(Ue,{key:(a&&!yt(a)?a:`_${t}`)+(!o&&n?"_fb":"")},o||(n?n():[]),o&&e._===1?64:-2);return!i&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),s&&s._c&&(s._d=!0),l}function Vl(e){return e.some(t=>gr(t)?!(t.type===Ie||t.type===Ue&&!Vl(t.children)):!0)?e:null}function iv(e,t){const r={};for(const n in e)r[t&&/[A-Z]/.test(n)?`on:${n}`:Tn(n)]=e[n];return r}const Ka=e=>e?Zp(e)?Fi(e):Ka(e.parent):null,si=oe(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Ka(e.parent),$root:e=>Ka(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Wl(e),$forceUpdate:e=>e.f||(e.f=()=>{Dl(e.update)}),$nextTick:e=>e.n||(e.n=so.bind(e.proxy)),$watch:e=>Dv.bind(e)}),ko=(e,t)=>e!==le&&!e.__isScriptSetup&&pe(e,t),Ga={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:r,setupState:n,data:i,props:s,accessCache:o,type:a,appContext:l}=e;let u;if(t[0]!=="$"){const h=o[t];if(h!==void 0)switch(h){case 1:return n[t];case 2:return i[t];case 4:return r[t];case 3:return s[t]}else{if(ko(n,t))return o[t]=1,n[t];if(i!==le&&pe(i,t))return o[t]=2,i[t];if((u=e.propsOptions[0])&&pe(u,t))return o[t]=3,s[t];if(r!==le&&pe(r,t))return o[t]=4,r[t];za&&(o[t]=0)}}const f=si[t];let c,p;if(f)return t==="$attrs"&&tt(e.attrs,"get",""),f(e);if((c=a.__cssModules)&&(c=c[t]))return c;if(r!==le&&pe(r,t))return o[t]=4,r[t];if(p=l.config.globalProperties,pe(p,t))return p[t]},set({_:e},t,r){const{data:n,setupState:i,ctx:s}=e;return ko(i,t)?(i[t]=r,!0):n!==le&&pe(n,t)?(n[t]=r,!0):pe(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(s[t]=r,!0)},has({_:{data:e,setupState:t,accessCache:r,ctx:n,appContext:i,propsOptions:s,type:o}},a){let l,u;return!!(r[a]||e!==le&&a[0]!=="$"&&pe(e,a)||ko(t,a)||(l=s[0])&&pe(l,a)||pe(n,a)||pe(si,a)||pe(i.config.globalProperties,a)||(u=o.__cssModules)&&u[a])},defineProperty(e,t,r){return r.get!=null?e._.accessCache[t]=0:pe(r,"value")&&this.set(e,t,r.value,null),Reflect.defineProperty(e,t,r)}},sv=oe({},Ga,{get(e,t){if(t!==Symbol.unscopables)return Ga.get(e,t,e)},has(e,t){return t[0]!=="_"&&!ym(t)}});function ov(){return null}function av(){return null}function lv(e){}function cv(e){}function fv(){return null}function uv(){}function hv(e,t){return null}function pv(){return wp().slots}function dv(){return wp().attrs}function wp(e){const t=vt();return t.setupContext||(t.setupContext=nd(t))}function vi(e){return K(e)?e.reduce((t,r)=>(t[r]=null,t),{}):e}function gv(e,t){const r=vi(e);for(const n in t){if(n.startsWith("__skip"))continue;let i=r[n];i?K(i)||Y(i)?i=r[n]={type:i,default:t[n]}:i.default=t[n]:i===null&&(i=r[n]={default:t[n]}),i&&t[`__skip_${n}`]&&(i.skipFactory=!0)}return r}function mv(e,t){return!e||!t?e||t:K(e)&&K(t)?e.concat(t):oe({},vi(e),vi(t))}function yv(e,t){const r={};for(const n in e)t.includes(n)||Object.defineProperty(r,n,{enumerable:!0,get:()=>e[n]});return r}function vv(e){const t=vt();let r=e();return Za(),Ol(r)&&(r=r.catch(n=>{throw nn(t),n})),[r,()=>nn(t)]}let za=!0;function bv(e){const t=Wl(e),r=e.proxy,n=e.ctx;za=!1,t.beforeCreate&&tf(t.beforeCreate,e,"bc");const{data:i,computed:s,methods:o,watch:a,provide:l,inject:u,created:f,beforeMount:c,mounted:p,beforeUpdate:h,updated:d,activated:m,deactivated:S,beforeDestroy:_,beforeUnmount:g,destroyed:y,unmounted:v,render:E,renderTracked:O,renderTriggered:N,errorCaptured:I,serverPrefetch:P,expose:C,inheritAttrs:M,components:T,directives:q,filters:W}=t;if(u&&Sv(u,n,null),o)for(const z in o){const k=o[z];Y(k)&&(n[z]=k.bind(r))}if(i){const z=i.call(r,r);me(z)&&(e.data=jn(z))}if(za=!0,s)for(const z in s){const k=s[z],re=Y(k)?k.bind(r,r):Y(k.get)?k.get.bind(r,r):Qe,Re=!Y(k)&&Y(k.set)?k.set.bind(r):Qe,Me=ft({get:re,set:Re});Object.defineProperty(n,z,{enumerable:!0,configurable:!0,get:()=>Me.value,set:Fe=>Me.value=Fe})}if(a)for(const z in a)Ep(a[z],n,r,z);if(l){const z=Y(l)?l.call(r):l;Reflect.ownKeys(z).forEach(k=>{Pp(k,z[k])})}f&&tf(f,e,"c");function U(z,k){K(k)?k.forEach(re=>z(re.bind(r))):k&&z(k.bind(r))}if(U(mp,c),U($i,p),U(Hl,h),U(co,d),U(pp,m),U(dp,S),U(Sp,I),U(bp,O),U(vp,N),U(fo,g),U(uo,v),U(yp,P),K(C))if(C.length){const z=e.exposed||(e.exposed={});C.forEach(k=>{Object.defineProperty(z,k,{get:()=>r[k],set:re=>r[k]=re,enumerable:!0})})}else e.exposed||(e.exposed={});E&&e.render===Qe&&(e.render=E),M!=null&&(e.inheritAttrs=M),T&&(e.components=T),q&&(e.directives=q),P&&Bl(e)}function Sv(e,t,r=Qe){K(e)&&(e=Ja(e));for(const n in e){const i=e[n];let s;me(i)?"default"in i?s=oi(i.from||n,i.default,!0):s=oi(i.from||n):s=oi(i),Be(s)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>s.value,set:o=>s.value=o}):t[n]=s}}function tf(e,t,r){Ft(K(e)?e.map(n=>n.bind(t.proxy)):e.bind(t.proxy),t,r)}function Ep(e,t,r,n){let i=n.includes(".")?jp(r,n):()=>r[n];if(ee(e)){const s=t[e];Y(s)&&Xr(i,s)}else if(Y(e))Xr(i,e.bind(r));else if(me(e))if(K(e))e.forEach(s=>Ep(s,t,r,n));else{const s=Y(e.handler)?e.handler.bind(r):t[e.handler];Y(s)&&Xr(i,s,e)}}function Wl(e){const t=e.type,{mixins:r,extends:n}=t,{mixins:i,optionsCache:s,config:{optionMergeStrategies:o}}=e.appContext,a=s.get(t);let l;return a?l=a:!i.length&&!r&&!n?l=t:(l={},i.length&&i.forEach(u=>Ts(l,u,o,!0)),Ts(l,t,o)),me(t)&&s.set(t,l),l}function Ts(e,t,r,n=!1){const{mixins:i,extends:s}=t;s&&Ts(e,s,r,!0),i&&i.forEach(o=>Ts(e,o,r,!0));for(const o in t)if(!(n&&o==="expose")){const a=_v[o]||r&&r[o];e[o]=a?a(e[o],t[o]):t[o]}return e}const _v={data:rf,props:nf,emits:nf,methods:ei,computed:ei,beforeCreate:st,created:st,beforeMount:st,mounted:st,beforeUpdate:st,updated:st,beforeDestroy:st,beforeUnmount:st,destroyed:st,unmounted:st,activated:st,deactivated:st,errorCaptured:st,serverPrefetch:st,components:ei,directives:ei,watch:Ev,provide:rf,inject:wv};function rf(e,t){return t?e?function(){return oe(Y(e)?e.call(this,this):e,Y(t)?t.call(this,this):t)}:t:e}function wv(e,t){return ei(Ja(e),Ja(t))}function Ja(e){if(K(e)){const t={};for(let r=0;r1)return r&&Y(t)?t.call(n&&n.proxy):t}}function Av(){return!!(vt()||Qr)}const Ap={},Cp=()=>Object.create(Ap),Op=e=>Object.getPrototypeOf(e)===Ap;function Cv(e,t,r,n=!1){const i={},s=Cp();e.propsDefaults=Object.create(null),xp(e,t,i,s);for(const o in e.propsOptions[0])o in i||(i[o]=void 0);r?e.props=n?i:Jh(i):e.type.props?e.props=i:e.props=s,e.attrs=s}function Ov(e,t,r,n){const{props:i,attrs:s,vnode:{patchFlag:o}}=e,a=ue(i),[l]=e.propsOptions;let u=!1;if((n||o>0)&&!(o&16)){if(o&8){const f=e.vnode.dynamicProps;for(let c=0;c{l=!0;const[p,h]=Ip(c,t,!0);oe(o,p),h&&a.push(...h)};!r&&t.mixins.length&&t.mixins.forEach(f),e.extends&&f(e.extends),e.mixins&&e.mixins.forEach(f)}if(!s&&!l)return me(e)&&n.set(e,wn),wn;if(K(s))for(let f=0;fe==="_"||e==="_ctx"||e==="$stable",Gl=e=>K(e)?e.map(ht):[ht(e)],Iv=(e,t,r)=>{if(t._n)return t;const n=Ll((...i)=>Gl(t(...i)),r);return n._c=!1,n},Rp=(e,t,r)=>{const n=e._ctx;for(const i in e){if(Kl(i))continue;const s=e[i];if(Y(s))t[i]=Iv(i,s,n);else if(s!=null){const o=Gl(s);t[i]=()=>o}}},Np=(e,t)=>{const r=Gl(t);e.slots.default=()=>r},$p=(e,t,r)=>{for(const n in t)(r||!Kl(n))&&(e[n]=t[n])},Rv=(e,t,r)=>{const n=e.slots=Cp();if(e.vnode.shapeFlag&32){const i=t._;i?($p(n,t,r),r&&Ch(n,"_",i,!0)):Rp(t,n)}else t&&Np(e,t)},Nv=(e,t,r)=>{const{vnode:n,slots:i}=e;let s=!0,o=le;if(n.shapeFlag&32){const a=t._;a?r&&a===1?s=!1:$p(i,t,r):(s=!t.$stable,Rp(t,i)),o=t}else t&&(Np(e,t),o={default:1});if(s)for(const a in i)!Kl(a)&&o[a]==null&&delete i[a]},ke=Kp;function Mp(e){return Dp(e)}function Fp(e){return Dp(e,Ly)}function Dp(e,t){const r=Xs();r.__VUE__=!0;const{insert:n,remove:i,patchProp:s,createElement:o,createText:a,createComment:l,setText:u,setElementText:f,parentNode:c,nextSibling:p,setScopeId:h=Qe,insertStaticContent:d}=e,m=(b,w,R,D=null,$=null,F=null,j=void 0,H=null,B=!!w.dynamicChildren)=>{if(b===w)return;b&&!jt(b,w)&&(D=bt(b),Fe(b,$,F,!0),b=null),w.patchFlag===-2&&(B=!1,w.dynamicChildren=null);const{type:L,ref:J,shapeFlag:V}=w;switch(L){case Mr:S(b,w,R,D);break;case Ie:_(b,w,R,D);break;case Yr:b==null&&g(w,R,D,j);break;case Ue:T(b,w,R,D,$,F,j,H,B);break;default:V&1?E(b,w,R,D,$,F,j,H,B):V&6?q(b,w,R,D,$,F,j,H,B):(V&64||V&128)&&L.process(b,w,R,D,$,F,j,H,B,ne)}J!=null&&$?Cn(J,b&&b.ref,F,w||b,!w):J==null&&b&&b.ref!=null&&Cn(b.ref,null,F,b,!0)},S=(b,w,R,D)=>{if(b==null)n(w.el=a(w.children),R,D);else{const $=w.el=b.el;w.children!==b.children&&u($,w.children)}},_=(b,w,R,D)=>{b==null?n(w.el=l(w.children||""),R,D):w.el=b.el},g=(b,w,R,D)=>{[b.el,b.anchor]=d(b.children,w,R,D,b.el,b.anchor)},y=({el:b,anchor:w},R,D)=>{let $;for(;b&&b!==w;)$=p(b),n(b,R,D),b=$;n(w,R,D)},v=({el:b,anchor:w})=>{let R;for(;b&&b!==w;)R=p(b),i(b),b=R;i(w)},E=(b,w,R,D,$,F,j,H,B)=>{if(w.type==="svg"?j="svg":w.type==="math"&&(j="mathml"),b==null)O(w,R,D,$,F,j,H,B);else{const L=b.el&&b.el._isVueCE?b.el:null;try{L&&L._beginPatch(),P(b,w,$,F,j,H,B)}finally{L&&L._endPatch()}}},O=(b,w,R,D,$,F,j,H)=>{let B,L;const{props:J,shapeFlag:V,transition:Q,dirs:Z}=b;if(B=b.el=o(b.type,F,J&&J.is,J),V&8?f(B,b.children):V&16&&I(b.children,B,null,D,$,qo(b,F),j,H),Z&&zt(b,null,D,"created"),N(B,b,b.scopeId,j,D),J){for(const ve in J)ve!=="value"&&!Ir(ve)&&s(B,ve,null,J[ve],F,D);"value"in J&&s(B,"value",null,J.value,F),(L=J.onVnodeBeforeMount)&&ut(L,D,b)}Z&&zt(b,null,D,"beforeMount");const se=Lp($,Q);se&&Q.beforeEnter(B),n(B,w,R),((L=J&&J.onVnodeMounted)||se||Z)&&ke(()=>{L&&ut(L,D,b),se&&Q.enter(B),Z&&zt(b,null,D,"mounted")},$)},N=(b,w,R,D,$)=>{if(R&&h(b,R),D)for(let F=0;F{for(let L=B;L{const H=w.el=b.el;let{patchFlag:B,dynamicChildren:L,dirs:J}=w;B|=b.patchFlag&16;const V=b.props||le,Q=w.props||le;let Z;if(R&&Ur(R,!1),(Z=Q.onVnodeBeforeUpdate)&&ut(Z,R,w,b),J&&zt(w,b,R,"beforeUpdate"),R&&Ur(R,!0),(V.innerHTML&&Q.innerHTML==null||V.textContent&&Q.textContent==null)&&f(H,""),L?C(b.dynamicChildren,L,H,R,D,qo(w,$),F):j||k(b,w,H,null,R,D,qo(w,$),F,!1),B>0){if(B&16)M(H,V,Q,R,$);else if(B&2&&V.class!==Q.class&&s(H,"class",null,Q.class,$),B&4&&s(H,"style",V.style,Q.style,$),B&8){const se=w.dynamicProps;for(let ve=0;ve{Z&&ut(Z,R,w,b),J&&zt(w,b,R,"updated")},D)},C=(b,w,R,D,$,F,j)=>{for(let H=0;H{if(w!==R){if(w!==le)for(const F in w)!Ir(F)&&!(F in R)&&s(b,F,w[F],null,$,D);for(const F in R){if(Ir(F))continue;const j=R[F],H=w[F];j!==H&&F!=="value"&&s(b,F,H,j,$,D)}"value"in R&&s(b,"value",w.value,R.value,$)}},T=(b,w,R,D,$,F,j,H,B)=>{const L=w.el=b?b.el:a(""),J=w.anchor=b?b.anchor:a("");let{patchFlag:V,dynamicChildren:Q,slotScopeIds:Z}=w;Z&&(H=H?H.concat(Z):Z),b==null?(n(L,R,D),n(J,R,D),I(w.children||[],R,J,$,F,j,H,B)):V>0&&V&64&&Q&&b.dynamicChildren?(C(b.dynamicChildren,Q,R,$,F,j,H),(w.key!=null||$&&w===$.subTree)&&zl(b,w,!0)):k(b,w,R,J,$,F,j,H,B)},q=(b,w,R,D,$,F,j,H,B)=>{w.slotScopeIds=H,b==null?w.shapeFlag&512?$.ctx.activate(w,R,D,j,B):W(w,R,D,$,F,j,B):G(b,w,B)},W=(b,w,R,D,$,F,j)=>{const H=b.component=Yp(b,D,$);if(Ni(b)&&(H.ctx.renderer=ne),ed(H,!1,j),H.asyncDep){if($&&$.registerDep(H,U,j),!b.el){const B=H.subTree=Ce(Ie);_(null,B,w,R),b.placeholder=B.el}}else U(H,b,w,R,$,F,j)},G=(b,w,R)=>{const D=w.component=b.component;if(Uv(b,w,R))if(D.asyncDep&&!D.asyncResolved){z(D,w,R);return}else D.next=w,D.update();else w.el=b.el,D.vnode=w},U=(b,w,R,D,$,F,j)=>{const H=()=>{if(b.isMounted){let{next:V,bu:Q,u:Z,parent:se,vnode:ve}=b;{const it=kp(b);if(it){V&&(V.el=ve.el,z(b,V,j)),it.asyncDep.then(()=>{b.isUnmounted||H()});return}}let ce=V,je;Ur(b,!1),V?(V.el=ve.el,z(b,V,j)):V=ve,Q&&Pn(Q),(je=V.props&&V.props.onVnodeBeforeUpdate)&&ut(je,se,V,ve),Ur(b,!0);const De=ss(b),St=b.subTree;b.subTree=De,m(St,De,c(St.el),bt(St),b,$,F),V.el=De.el,ce===null&&po(b,De.el),Z&&ke(Z,$),(je=V.props&&V.props.onVnodeUpdated)&&ke(()=>ut(je,se,V,ve),$)}else{let V;const{el:Q,props:Z}=w,{bm:se,m:ve,parent:ce,root:je,type:De}=b,St=$r(w);if(Ur(b,!1),se&&Pn(se),!St&&(V=Z&&Z.onVnodeBeforeMount)&&ut(V,ce,w),Ur(b,!0),Q&&ge){const it=()=>{b.subTree=ss(b),ge(Q,b.subTree,b,$,null)};St&&De.__asyncHydrate?De.__asyncHydrate(Q,b,it):it()}else{je.ce&&je.ce._def.shadowRoot!==!1&&je.ce._injectChildStyle(De);const it=b.subTree=ss(b);m(null,it,R,D,b,$,F),w.el=it.el}if(ve&&ke(ve,$),!St&&(V=Z&&Z.onVnodeMounted)){const it=w;ke(()=>ut(V,ce,it),$)}(w.shapeFlag&256||ce&&$r(ce.vnode)&&ce.vnode.shapeFlag&256)&&b.a&&ke(b.a,$),b.isMounted=!0,w=R=D=null}};b.scope.on();const B=b.effect=new hi(H);b.scope.off();const L=b.update=B.run.bind(B),J=b.job=B.runIfDirty.bind(B);J.i=b,J.id=b.uid,B.scheduler=()=>Dl(J),Ur(b,!0),L()},z=(b,w,R)=>{w.component=b;const D=b.vnode.props;b.vnode=w,b.next=null,Ov(b,w.props,D,R),Nv(b,w.children,R),ur(),Kc(b),hr()},k=(b,w,R,D,$,F,j,H,B=!1)=>{const L=b&&b.children,J=b?b.shapeFlag:0,V=w.children,{patchFlag:Q,shapeFlag:Z}=w;if(Q>0){if(Q&128){Re(L,V,R,D,$,F,j,H,B);return}else if(Q&256){re(L,V,R,D,$,F,j,H,B);return}}Z&8?(J&16&&He(L,$,F),V!==L&&f(R,V)):J&16?Z&16?Re(L,V,R,D,$,F,j,H,B):He(L,$,F,!0):(J&8&&f(R,""),Z&16&&I(V,R,D,$,F,j,H,B))},re=(b,w,R,D,$,F,j,H,B)=>{b=b||wn,w=w||wn;const L=b.length,J=w.length,V=Math.min(L,J);let Q;for(Q=0;QJ?He(b,$,F,!0,!1,V):I(w,R,D,$,F,j,H,B,V)},Re=(b,w,R,D,$,F,j,H,B)=>{let L=0;const J=w.length;let V=b.length-1,Q=J-1;for(;L<=V&&L<=Q;){const Z=b[L],se=w[L]=B?Cr(w[L]):ht(w[L]);if(jt(Z,se))m(Z,se,R,null,$,F,j,H,B);else break;L++}for(;L<=V&&L<=Q;){const Z=b[V],se=w[Q]=B?Cr(w[Q]):ht(w[Q]);if(jt(Z,se))m(Z,se,R,null,$,F,j,H,B);else break;V--,Q--}if(L>V){if(L<=Q){const Z=Q+1,se=ZQ)for(;L<=V;)Fe(b[L],$,F,!0),L++;else{const Z=L,se=L,ve=new Map;for(L=se;L<=Q;L++){const A=w[L]=B?Cr(w[L]):ht(w[L]);A.key!=null&&ve.set(A.key,L)}let ce,je=0;const De=Q-se+1;let St=!1,it=0;const Yt=new Array(De);for(L=0;L=De){Fe(A,$,F,!0);continue}let x;if(A.key!=null)x=ve.get(A.key);else for(ce=se;ce<=Q;ce++)if(Yt[ce-se]===0&&jt(A,w[ce])){x=ce;break}x===void 0?Fe(A,$,F,!0):(Yt[x-se]=L+1,x>=it?it=x:St=!0,m(A,w[x],R,null,$,F,j,H,B),je++)}const Hr=St?$v(Yt):wn;for(ce=Hr.length-1,L=De-1;L>=0;L--){const A=se+L,x=w[A],fe=w[A+1],ye=A+1{const{el:F,type:j,transition:H,children:B,shapeFlag:L}=b;if(L&6){Me(b.component.subTree,w,R,D);return}if(L&128){b.suspense.move(w,R,D);return}if(L&64){j.move(b,w,R,ne);return}if(j===Ue){n(F,w,R);for(let V=0;VH.enter(F),$);else{const{leave:V,delayLeave:Q,afterLeave:Z}=H,se=()=>{b.ctx.isUnmounted?i(F):n(F,w,R)},ve=()=>{F._isLeaving&&F[ir](!0),V(F,()=>{se(),Z&&Z()})};Q?Q(F,se,ve):ve()}else n(F,w,R)},Fe=(b,w,R,D=!1,$=!1)=>{const{type:F,props:j,ref:H,children:B,dynamicChildren:L,shapeFlag:J,patchFlag:V,dirs:Q,cacheIndex:Z}=b;if(V===-2&&($=!1),H!=null&&(ur(),Cn(H,null,R,b,!0),hr()),Z!=null&&(w.renderCache[Z]=void 0),J&256){w.ctx.deactivate(b);return}const se=J&1&&Q,ve=!$r(b);let ce;if(ve&&(ce=j&&j.onVnodeBeforeUnmount)&&ut(ce,w,b),J&6)kt(b.component,R,D);else{if(J&128){b.suspense.unmount(R,D);return}se&&zt(b,null,w,"beforeUnmount"),J&64?b.type.remove(b,w,R,ne,D):L&&!L.hasOnce&&(F!==Ue||V>0&&V&64)?He(L,w,R,!1,!0):(F===Ue&&V&384||!$&&J&16)&&He(B,w,R),D&&Lt(b)}(ve&&(ce=j&&j.onVnodeUnmounted)||se)&&ke(()=>{ce&&ut(ce,w,b),se&&zt(b,null,w,"unmounted")},R)},Lt=b=>{const{type:w,el:R,anchor:D,transition:$}=b;if(w===Ue){Wt(R,D);return}if(w===Yr){v(b);return}const F=()=>{i(R),$&&!$.persisted&&$.afterLeave&&$.afterLeave()};if(b.shapeFlag&1&&$&&!$.persisted){const{leave:j,delayLeave:H}=$,B=()=>j(R,F);H?H(b.el,F,B):B()}else F()},Wt=(b,w)=>{let R;for(;b!==w;)R=p(b),i(b),b=R;i(w)},kt=(b,w,R)=>{const{bum:D,scope:$,job:F,subTree:j,um:H,m:B,a:L}=b;Ps(B),Ps(L),D&&Pn(D),$.stop(),F&&(F.flags|=8,Fe(j,b,w,R)),H&&ke(H,w),ke(()=>{b.isUnmounted=!0},w)},He=(b,w,R,D=!1,$=!1,F=0)=>{for(let j=F;j{if(b.shapeFlag&6)return bt(b.component.subTree);if(b.shapeFlag&128)return b.suspense.next();const w=p(b.anchor||b.el),R=w&&w[sp];return R?p(R):w};let Ot=!1;const Ne=(b,w,R)=>{b==null?w._vnode&&Fe(w._vnode,null,null,!0):m(w._vnode||null,b,w,null,null,null,R),w._vnode=b,Ot||(Ot=!0,Kc(),ws(),Ot=!1)},ne={p:m,um:Fe,m:Me,r:Lt,mt:W,mc:I,pc:k,pbc:C,n:bt,o:e};let _e,ge;return t&&([_e,ge]=t(ne)),{render:Ne,hydrate:_e,createApp:Pv(Ne,_e)}}function qo({type:e,props:t},r){return r==="svg"&&e==="foreignObject"||r==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:r}function Ur({effect:e,job:t},r){r?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Lp(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function zl(e,t,r=!1){const n=e.children,i=t.children;if(K(n)&&K(i))for(let s=0;s>1,e[r[a]]0&&(t[n]=r[s-1]),r[s]=n)}}for(s=r.length,o=r[s-1];s-- >0;)r[s]=o,o=t[o];return r}function kp(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:kp(t)}function Ps(e){if(e)for(let t=0;toi(qp);function Mv(e,t){return Mi(e,null,t)}function Fv(e,t){return Mi(e,null,{flush:"post"})}function Hp(e,t){return Mi(e,null,{flush:"sync"})}function Xr(e,t,r){return Mi(e,t,r)}function Mi(e,t,r=le){const{immediate:n,deep:i,flush:s,once:o}=r,a=oe({},r),l=t&&n||!t&&s!=="post";let u;if(In){if(s==="sync"){const h=Bp();u=h.__watcherHandles||(h.__watcherHandles=[])}else if(!l){const h=()=>{};return h.stop=Qe,h.resume=Qe,h.pause=Qe,h}}const f=ze;a.call=(h,d,m)=>Ft(h,f,d,m);let c=!1;s==="post"?a.scheduler=h=>{ke(h,f&&f.suspense)}:s!=="sync"&&(c=!0,a.scheduler=(h,d)=>{d?h():Dl(h)}),a.augmentJob=h=>{t&&(h.flags|=4),c&&(h.flags|=2,f&&(h.id=f.uid,h.i=f))};const p=vy(e,t,a);return In&&(u?u.push(p):l&&p()),p}function Dv(e,t,r){const n=this.proxy,i=ee(e)?e.includes(".")?jp(n,e):()=>n[e]:e.bind(n,n);let s;Y(t)?s=t:(s=t.handler,r=t);const o=nn(this),a=Mi(i,s.bind(n),r);return o(),a}function jp(e,t){const r=t.split(".");return()=>{let n=e;for(let i=0;i{let f,c=le,p;return Hp(()=>{const h=e[i];ot(f,h)&&(f=h,u())}),{get(){return l(),r.get?r.get(f):f},set(h){const d=r.set?r.set(h):h;if(!ot(d,f)&&!(c!==le&&ot(h,c)))return;const m=n.vnode.props;m&&(t in m||i in m||s in m)&&(`onUpdate:${t}`in m||`onUpdate:${i}`in m||`onUpdate:${s}`in m)||(f=h,u()),n.emit(`update:${t}`,d),ot(h,d)&&ot(h,c)&&!ot(d,p)&&u(),c=h,p=d}}});return a[Symbol.iterator]=()=>{let l=0;return{next(){return l<2?{value:l++?o||le:a,done:!1}:{done:!0}}}},a}const Up=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Te(t)}Modifiers`]||e[`${pt(t)}Modifiers`];function kv(e,t,...r){if(e.isUnmounted)return;const n=e.vnode.props||le;let i=r;const s=t.startsWith("update:"),o=s&&Up(n,t.slice(7));o&&(o.trim&&(i=r.map(f=>ee(f)?f.trim():f)),o.number&&(i=r.map(Qs)));let a,l=n[a=Tn(t)]||n[a=Tn(Te(t))];!l&&s&&(l=n[a=Tn(pt(t))]),l&&Ft(l,e,6,i);const u=n[a+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[a])return;e.emitted[a]=!0,Ft(u,e,6,i)}}const qv=new WeakMap;function Vp(e,t,r=!1){const n=r?qv:t.emitsCache,i=n.get(e);if(i!==void 0)return i;const s=e.emits;let o={},a=!1;if(!Y(e)){const l=u=>{const f=Vp(u,t,!0);f&&(a=!0,oe(o,f))};!r&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!s&&!a?(me(e)&&n.set(e,null),null):(K(s)?s.forEach(l=>o[l]=null):oe(o,s),me(e)&&n.set(e,o),o)}function ho(e,t){return!e||!an(t)?!1:(t=t.slice(2).replace(/Once$/,""),pe(e,t[0].toLowerCase()+t.slice(1))||pe(e,pt(t))||pe(e,t))}function ss(e){const{type:t,vnode:r,proxy:n,withProxy:i,propsOptions:[s],slots:o,attrs:a,emit:l,render:u,renderCache:f,props:c,data:p,setupState:h,ctx:d,inheritAttrs:m}=e,S=yi(e);let _,g;try{if(r.shapeFlag&4){const v=i||n,E=v;_=ht(u.call(E,v,f,c,h,p,d)),g=a}else{const v=t;_=ht(v.length>1?v(c,{attrs:a,slots:o,emit:l}):v(c,null)),g=t.props?a:Hv(a)}}catch(v){ai.length=0,fn(v,e,1),_=Ce(Ie)}let y=_;if(g&&m!==!1){const v=Object.keys(g),{shapeFlag:E}=y;v.length&&E&7&&(s&&v.some(Al)&&(g=jv(g,s)),y=Jt(y,g,!1,!0))}return r.dirs&&(y=Jt(y,null,!1,!0),y.dirs=y.dirs?y.dirs.concat(r.dirs):r.dirs),r.transition&&dr(y,r.transition),_=y,yi(S),_}function Bv(e,t=!0){let r;for(let n=0;n{let t;for(const r in e)(r==="class"||r==="style"||an(r))&&((t||(t={}))[r]=e[r]);return t},jv=(e,t)=>{const r={};for(const n in e)(!Al(n)||!(n.slice(9)in t))&&(r[n]=e[n]);return r};function Uv(e,t,r){const{props:n,children:i,component:s}=e,{props:o,children:a,patchFlag:l}=t,u=s.emitsOptions;if(t.dirs||t.transition)return!0;if(r&&l>=0){if(l&1024)return!0;if(l&16)return n?of(n,o,u):!!o;if(l&8){const f=t.dynamicProps;for(let c=0;ce.__isSuspense;let Xa=0;const Vv={name:"Suspense",__isSuspense:!0,process(e,t,r,n,i,s,o,a,l,u){if(e==null)Kv(t,r,n,i,s,o,a,l,u);else{if(s&&s.deps>0&&!e.suspense.isInFallback){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}Gv(e,t,r,n,i,o,a,l,u)}},hydrate:zv,normalize:Jv},Wv=Vv;function bi(e,t){const r=e.props&&e.props[t];Y(r)&&r()}function Kv(e,t,r,n,i,s,o,a,l){const{p:u,o:{createElement:f}}=l,c=f("div"),p=e.suspense=Wp(e,i,n,t,c,r,s,o,a,l);u(null,p.pendingBranch=e.ssContent,c,null,n,p,s,o),p.deps>0?(bi(e,"onPending"),bi(e,"onFallback"),u(null,e.ssFallback,t,r,n,null,s,o),On(p,e.ssFallback)):p.resolve(!1,!0)}function Gv(e,t,r,n,i,s,o,a,{p:l,um:u,o:{createElement:f}}){const c=t.suspense=e.suspense;c.vnode=t,t.el=e.el;const p=t.ssContent,h=t.ssFallback,{activeBranch:d,pendingBranch:m,isInFallback:S,isHydrating:_}=c;if(m)c.pendingBranch=p,jt(m,p)?(l(m,p,c.hiddenContainer,null,i,c,s,o,a),c.deps<=0?c.resolve():S&&(_||(l(d,h,r,n,i,null,s,o,a),On(c,h)))):(c.pendingId=Xa++,_?(c.isHydrating=!1,c.activeBranch=m):u(m,i,c),c.deps=0,c.effects.length=0,c.hiddenContainer=f("div"),S?(l(null,p,c.hiddenContainer,null,i,c,s,o,a),c.deps<=0?c.resolve():(l(d,h,r,n,i,null,s,o,a),On(c,h))):d&&jt(d,p)?(l(d,p,r,n,i,c,s,o,a),c.resolve(!0)):(l(null,p,c.hiddenContainer,null,i,c,s,o,a),c.deps<=0&&c.resolve()));else if(d&&jt(d,p))l(d,p,r,n,i,c,s,o,a),On(c,p);else if(bi(t,"onPending"),c.pendingBranch=p,p.shapeFlag&512?c.pendingId=p.component.suspenseId:c.pendingId=Xa++,l(null,p,c.hiddenContainer,null,i,c,s,o,a),c.deps<=0)c.resolve();else{const{timeout:g,pendingId:y}=c;g>0?setTimeout(()=>{c.pendingId===y&&c.fallback(h)},g):g===0&&c.fallback(h)}}function Wp(e,t,r,n,i,s,o,a,l,u,f=!1){const{p:c,m:p,um:h,n:d,o:{parentNode:m,remove:S}}=u;let _;const g=Qv(e);g&&t&&t.pendingBranch&&(_=t.pendingId,t.deps++);const y=e.props?gs(e.props.timeout):void 0,v=s,E={vnode:e,parent:t,parentComponent:r,namespace:o,container:n,hiddenContainer:i,deps:0,pendingId:Xa++,timeout:typeof y=="number"?y:-1,activeBranch:null,pendingBranch:null,isInFallback:!f,isHydrating:f,isUnmounted:!1,effects:[],resolve(O=!1,N=!1){const{vnode:I,activeBranch:P,pendingBranch:C,pendingId:M,effects:T,parentComponent:q,container:W,isInFallback:G}=E;let U=!1;E.isHydrating?E.isHydrating=!1:O||(U=P&&C.transition&&C.transition.mode==="out-in",U&&(P.transition.afterLeave=()=>{M===E.pendingId&&(p(C,W,s===v?d(P):s,0),gi(T),G&&I.ssFallback&&(I.ssFallback.el=null))}),P&&(m(P.el)===W&&(s=d(P)),h(P,q,E,!0),!U&&G&&I.ssFallback&&(I.ssFallback.el=null)),U||p(C,W,s,0)),On(E,C),E.pendingBranch=null,E.isInFallback=!1;let z=E.parent,k=!1;for(;z;){if(z.pendingBranch){z.effects.push(...T),k=!0;break}z=z.parent}!k&&!U&&gi(T),E.effects=[],g&&t&&t.pendingBranch&&_===t.pendingId&&(t.deps--,t.deps===0&&!N&&t.resolve()),bi(I,"onResolve")},fallback(O){if(!E.pendingBranch)return;const{vnode:N,activeBranch:I,parentComponent:P,container:C,namespace:M}=E;bi(N,"onFallback");const T=d(I),q=()=>{E.isInFallback&&(c(null,O,C,T,P,null,M,a,l),On(E,O))},W=O.transition&&O.transition.mode==="out-in";W&&(I.transition.afterLeave=q),E.isInFallback=!0,h(I,P,null,!0),W||q()},move(O,N,I){E.activeBranch&&p(E.activeBranch,O,N,I),E.container=O},next(){return E.activeBranch&&d(E.activeBranch)},registerDep(O,N,I){const P=!!E.pendingBranch;P&&E.deps++;const C=O.vnode.el;O.asyncDep.catch(M=>{fn(M,O,0)}).then(M=>{if(O.isUnmounted||E.isUnmounted||E.pendingId!==O.suspenseId)return;O.asyncResolved=!0;const{vnode:T}=O;el(O,M,!1),C&&(T.el=C);const q=!C&&O.subTree.el;N(O,T,m(C||O.subTree.el),C?null:d(O.subTree),E,o,I),q&&(T.placeholder=null,S(q)),po(O,T.el),P&&--E.deps===0&&E.resolve()})},unmount(O,N){E.isUnmounted=!0,E.activeBranch&&h(E.activeBranch,r,O,N),E.pendingBranch&&h(E.pendingBranch,r,O,N)}};return E}function zv(e,t,r,n,i,s,o,a,l){const u=t.suspense=Wp(t,n,r,e.parentNode,document.createElement("div"),null,i,s,o,a,!0),f=l(e,u.pendingBranch=t.ssContent,r,u,s,o);return u.deps===0&&u.resolve(!1,!0),f}function Jv(e){const{shapeFlag:t,children:r}=e,n=t&32;e.ssContent=af(n?r.default:r),e.ssFallback=n?af(r.fallback):Ce(Ie)}function af(e){let t;if(Y(e)){const r=rn&&e._c;r&&(e._d=!1,Si()),e=e(),r&&(e._d=!0,t=rt,Gp())}return K(e)&&(e=Bv(e)),e=ht(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(r=>r!==e)),e}function Kp(e,t){t&&t.pendingBranch?K(e)?t.effects.push(...e):t.effects.push(e):gi(e)}function On(e,t){e.activeBranch=t;const{vnode:r,parentComponent:n}=e;let i=t.el;for(;!i&&t.component;)t=t.component.subTree,i=t.el;r.el=i,n&&n.subTree===r&&(n.vnode.el=i,po(n,i))}function Qv(e){const t=e.props&&e.props.suspensible;return t!=null&&t!==!1}const Ue=Symbol.for("v-fgt"),Mr=Symbol.for("v-txt"),Ie=Symbol.for("v-cmt"),Yr=Symbol.for("v-stc"),ai=[];let rt=null;function Si(e=!1){ai.push(rt=e?null:[])}function Gp(){ai.pop(),rt=ai[ai.length-1]||null}let rn=1;function _i(e,t=!1){rn+=e,e<0&&rt&&t&&(rt.hasOnce=!0)}function zp(e){return e.dynamicChildren=rn>0?rt||wn:null,Gp(),rn>0&&rt&&rt.push(e),e}function Xv(e,t,r,n,i,s){return zp(Jl(e,t,r,n,i,s,!0))}function Cs(e,t,r,n,i){return zp(Ce(e,t,r,n,i,!0))}function gr(e){return e?e.__v_isVNode===!0:!1}function jt(e,t){return e.type===t.type&&e.key===t.key}function Yv(e){}const Jp=({key:e})=>e??null,os=({ref:e,ref_key:t,ref_for:r})=>(typeof e=="number"&&(e=""+e),e!=null?ee(e)||Be(e)||Y(e)?{i:Je,r:e,k:t,f:!!r}:e:null);function Jl(e,t=null,r=null,n=0,i=null,s=e===Ue?0:1,o=!1,a=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Jp(t),ref:t&&os(t),scopeId:oo,slotScopeIds:null,children:r,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:s,patchFlag:n,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:Je};return a?(Xl(l,r),s&128&&e.normalize(l)):r&&(l.shapeFlag|=ee(r)?8:16),rn>0&&!o&&rt&&(l.patchFlag>0||s&6)&&l.patchFlag!==32&&rt.push(l),l}const Ce=Zv;function Zv(e,t=null,r=null,n=0,i=null,s=!1){if((!e||e===_p)&&(e=Ie),gr(e)){const a=Jt(e,t,!0);return r&&Xl(a,r),rn>0&&!s&&rt&&(a.shapeFlag&6?rt[rt.indexOf(e)]=a:rt.push(a)),a.patchFlag=-2,a}if(ab(e)&&(e=e.__vccOpts),t){t=Qp(t);let{class:a,style:l}=t;a&&!ee(a)&&(t.class=Ri(a)),me(l)&&(no(l)&&!K(l)&&(l=oe({},l)),t.style=Ii(l))}const o=ee(e)?1:As(e)?128:op(e)?64:me(e)?4:Y(e)?2:0;return Jl(e,t,r,n,i,o,s,!0)}function Qp(e){return e?no(e)||Op(e)?oe({},e):e:null}function Jt(e,t,r=!1,n=!1){const{props:i,ref:s,patchFlag:o,children:a,transition:l}=e,u=t?Xp(i||{},t):i,f={__v_isVNode:!0,__v_skip:!0,type:e.type,props:u,key:u&&Jp(u),ref:t&&t.ref?r&&s?K(s)?s.concat(os(t)):[s,os(t)]:os(t):s,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:a,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Ue?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Jt(e.ssContent),ssFallback:e.ssFallback&&Jt(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&n&&dr(f,l.clone(f)),f}function Ql(e=" ",t=0){return Ce(Mr,null,e,t)}function eb(e,t){const r=Ce(Yr,null,e);return r.staticCount=t,r}function tb(e="",t=!1){return t?(Si(),Cs(Ie,null,e)):Ce(Ie,null,e)}function ht(e){return e==null||typeof e=="boolean"?Ce(Ie):K(e)?Ce(Ue,null,e.slice()):gr(e)?Cr(e):Ce(Mr,null,String(e))}function Cr(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Jt(e)}function Xl(e,t){let r=0;const{shapeFlag:n}=e;if(t==null)t=null;else if(K(t))r=16;else if(typeof t=="object")if(n&65){const i=t.default;i&&(i._c&&(i._d=!1),Xl(e,i()),i._c&&(i._d=!0));return}else{r=32;const i=t._;!i&&!Op(t)?t._ctx=Je:i===3&&Je&&(Je.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else Y(t)?(t={default:t,_ctx:Je},r=32):(t=String(t),n&64?(r=16,t=[Ql(t)]):r=8);e.children=t,e.shapeFlag|=r}function Xp(...e){const t={};for(let r=0;rze||Je;let Os,Ya;{const e=Xs(),t=(r,n)=>{let i;return(i=e[r])||(i=e[r]=[]),i.push(n),s=>{i.length>1?i.forEach(o=>o(s)):i[0](s)}};Os=t("__VUE_INSTANCE_SETTERS__",r=>ze=r),Ya=t("__VUE_SSR_SETTERS__",r=>In=r)}const nn=e=>{const t=ze;return Os(e),e.scope.on(),()=>{e.scope.off(),Os(t)}},Za=()=>{ze&&ze.scope.off(),Os(null)};function Zp(e){return e.vnode.shapeFlag&4}let In=!1;function ed(e,t=!1,r=!1){t&&Ya(t);const{props:n,children:i}=e.vnode,s=Zp(e);Cv(e,n,s,t),Rv(e,i,r||t);const o=s?ib(e,t):void 0;return t&&Ya(!1),o}function ib(e,t){const r=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Ga);const{setup:n}=r;if(n){ur();const i=e.setupContext=n.length>1?nd(e):null,s=nn(e),o=Un(n,e,0,[e.props,i]),a=Ol(o);if(hr(),s(),(a||e.sp)&&!$r(e)&&Bl(e),a){if(o.then(Za,Za),t)return o.then(l=>{el(e,l,t)}).catch(l=>{fn(l,e,0)});e.asyncDep=o}else el(e,o,t)}else rd(e,t)}function el(e,t,r){Y(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:me(t)&&(e.setupState=Fl(t)),rd(e,r)}let xs,tl;function td(e){xs=e,tl=t=>{t.render._rc&&(t.withProxy=new Proxy(t.ctx,sv))}}const sb=()=>!xs;function rd(e,t,r){const n=e.type;if(!e.render){if(!t&&xs&&!n.render){const i=n.template||Wl(e).template;if(i){const{isCustomElement:s,compilerOptions:o}=e.appContext.config,{delimiters:a,compilerOptions:l}=n,u=oe(oe({isCustomElement:s,delimiters:a},o),l);n.render=xs(i,u)}}e.render=n.render||Qe,tl&&tl(e)}{const i=nn(e);ur();try{bv(e)}finally{hr(),i()}}}const ob={get(e,t){return tt(e,"get",""),e[t]}};function nd(e){const t=r=>{e.exposed=r||{}};return{attrs:new Proxy(e.attrs,ob),slots:e.slots,emit:e.emit,expose:t}}function Fi(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Fl(vs(e.exposed)),{get(t,r){if(r in t)return t[r];if(r in si)return si[r](e)},has(t,r){return r in t||r in si}})):e.proxy}function rl(e,t=!0){return Y(e)?e.displayName||e.name:e.name||t&&e.__name}function ab(e){return Y(e)&&"__vccOpts"in e}const ft=(e,t)=>dy(e,t,In);function Zr(e,t,r){try{_i(-1);const n=arguments.length;return n===2?me(t)&&!K(t)?gr(t)?Ce(e,null,[t]):Ce(e,t):Ce(e,null,t):(n>3?r=Array.prototype.slice.call(arguments,2):n===3&&gr(r)&&(r=[r]),Ce(e,t,r))}finally{_i(1)}}function lb(){}function cb(e,t,r,n){const i=r[n];if(i&&id(i,e))return i;const s=t();return s.memo=e.slice(),s.cacheIndex=n,r[n]=s}function id(e,t){const r=e.memo;if(r.length!=t.length)return!1;for(let n=0;n0&&rt&&rt.push(e),!0}const sd="3.5.24",fb=Qe,ub=Ey,hb=bn,pb=ip,db={createComponentInstance:Yp,setupComponent:ed,renderComponentRoot:ss,setCurrentRenderingInstance:yi,isVNode:gr,normalizeVNode:ht,getComponentPublicInstance:Fi,ensureValidVNode:Vl,pushWarningContext:by,popWarningContext:Sy},gb=db,mb=null,yb=null,vb=null;let nl;const lf=typeof window<"u"&&window.trustedTypes;if(lf)try{nl=lf.createPolicy("vue",{createHTML:e=>e})}catch{}const od=nl?e=>nl.createHTML(e):e=>e,bb="http://www.w3.org/2000/svg",Sb="http://www.w3.org/1998/Math/MathML",nr=typeof document<"u"?document:null,cf=nr&&nr.createElement("template"),_b={insert:(e,t,r)=>{t.insertBefore(e,r||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,r,n)=>{const i=t==="svg"?nr.createElementNS(bb,e):t==="mathml"?nr.createElementNS(Sb,e):r?nr.createElement(e,{is:r}):nr.createElement(e);return e==="select"&&n&&n.multiple!=null&&i.setAttribute("multiple",n.multiple),i},createText:e=>nr.createTextNode(e),createComment:e=>nr.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>nr.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,r,n,i,s){const o=r?r.previousSibling:t.lastChild;if(i&&(i===s||i.nextSibling))for(;t.insertBefore(i.cloneNode(!0),r),!(i===s||!(i=i.nextSibling)););else{cf.innerHTML=od(n==="svg"?`${e}`:n==="mathml"?`${e}`:e);const a=cf.content;if(n==="svg"||n==="mathml"){const l=a.firstChild;for(;l.firstChild;)a.appendChild(l.firstChild);a.removeChild(l)}t.insertBefore(a,r)}return[o?o.nextSibling:t.firstChild,r?r.previousSibling:t.lastChild]}},wr="transition",Jn="animation",Rn=Symbol("_vtc"),ad={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},ld=oe({},ql,ad),wb=e=>(e.displayName="Transition",e.props=ld,e),Eb=wb((e,{slots:t})=>Zr(up,cd(e),t)),Vr=(e,t=[])=>{K(e)?e.forEach(r=>r(...t)):e&&e(...t)},ff=e=>e?K(e)?e.some(t=>t.length>1):e.length>1:!1;function cd(e){const t={};for(const T in e)T in ad||(t[T]=e[T]);if(e.css===!1)return t;const{name:r="v",type:n,duration:i,enterFromClass:s=`${r}-enter-from`,enterActiveClass:o=`${r}-enter-active`,enterToClass:a=`${r}-enter-to`,appearFromClass:l=s,appearActiveClass:u=o,appearToClass:f=a,leaveFromClass:c=`${r}-leave-from`,leaveActiveClass:p=`${r}-leave-active`,leaveToClass:h=`${r}-leave-to`}=e,d=Tb(i),m=d&&d[0],S=d&&d[1],{onBeforeEnter:_,onEnter:g,onEnterCancelled:y,onLeave:v,onLeaveCancelled:E,onBeforeAppear:O=_,onAppear:N=g,onAppearCancelled:I=y}=t,P=(T,q,W,G)=>{T._enterCancelled=G,Tr(T,q?f:a),Tr(T,q?u:o),W&&W()},C=(T,q)=>{T._isLeaving=!1,Tr(T,c),Tr(T,h),Tr(T,p),q&&q()},M=T=>(q,W)=>{const G=T?N:g,U=()=>P(q,T,W);Vr(G,[q,U]),uf(()=>{Tr(q,T?l:s),Kt(q,T?f:a),ff(G)||hf(q,n,m,U)})};return oe(t,{onBeforeEnter(T){Vr(_,[T]),Kt(T,s),Kt(T,o)},onBeforeAppear(T){Vr(O,[T]),Kt(T,l),Kt(T,u)},onEnter:M(!1),onAppear:M(!0),onLeave(T,q){T._isLeaving=!0;const W=()=>C(T,q);Kt(T,c),T._enterCancelled?(Kt(T,p),il(T)):(il(T),Kt(T,p)),uf(()=>{T._isLeaving&&(Tr(T,c),Kt(T,h),ff(v)||hf(T,n,S,W))}),Vr(v,[T,W])},onEnterCancelled(T){P(T,!1,void 0,!0),Vr(y,[T])},onAppearCancelled(T){P(T,!0,void 0,!0),Vr(I,[T])},onLeaveCancelled(T){C(T),Vr(E,[T])}})}function Tb(e){if(e==null)return null;if(me(e))return[Bo(e.enter),Bo(e.leave)];{const t=Bo(e);return[t,t]}}function Bo(e){return gs(e)}function Kt(e,t){t.split(/\s+/).forEach(r=>r&&e.classList.add(r)),(e[Rn]||(e[Rn]=new Set)).add(t)}function Tr(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.remove(n));const r=e[Rn];r&&(r.delete(t),r.size||(e[Rn]=void 0))}function uf(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let Pb=0;function hf(e,t,r,n){const i=e._endId=++Pb,s=()=>{i===e._endId&&n()};if(r!=null)return setTimeout(s,r);const{type:o,timeout:a,propCount:l}=fd(e,t);if(!o)return n();const u=o+"end";let f=0;const c=()=>{e.removeEventListener(u,p),s()},p=h=>{h.target===e&&++f>=l&&c()};setTimeout(()=>{f(r[d]||"").split(", "),i=n(`${wr}Delay`),s=n(`${wr}Duration`),o=pf(i,s),a=n(`${Jn}Delay`),l=n(`${Jn}Duration`),u=pf(a,l);let f=null,c=0,p=0;t===wr?o>0&&(f=wr,c=o,p=s.length):t===Jn?u>0&&(f=Jn,c=u,p=l.length):(c=Math.max(o,u),f=c>0?o>u?wr:Jn:null,p=f?f===wr?s.length:l.length:0);const h=f===wr&&/\b(?:transform|all)(?:,|$)/.test(n(`${wr}Property`).toString());return{type:f,timeout:c,propCount:p,hasTransform:h}}function pf(e,t){for(;e.lengthdf(r)+df(e[n])))}function df(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function il(e){return(e?e.ownerDocument:document).body.offsetHeight}function Ab(e,t,r){const n=e[Rn];n&&(t=(t?[t,...n]:[...n]).join(" ")),t==null?e.removeAttribute("class"):r?e.setAttribute("class",t):e.className=t}const Is=Symbol("_vod"),ud=Symbol("_vsh"),hd={name:"show",beforeMount(e,{value:t},{transition:r}){e[Is]=e.style.display==="none"?"":e.style.display,r&&t?r.beforeEnter(e):Qn(e,t)},mounted(e,{value:t},{transition:r}){r&&t&&r.enter(e)},updated(e,{value:t,oldValue:r},{transition:n}){!t!=!r&&(n?t?(n.beforeEnter(e),Qn(e,!0),n.enter(e)):n.leave(e,()=>{Qn(e,!1)}):Qn(e,t))},beforeUnmount(e,{value:t}){Qn(e,t)}};function Qn(e,t){e.style.display=t?e[Is]:"none",e[ud]=!t}function Cb(){hd.getSSRProps=({value:e})=>{if(!e)return{style:{display:"none"}}}}const pd=Symbol("");function Ob(e){const t=vt();if(!t)return;const r=t.ut=(i=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(s=>Rs(s,i))},n=()=>{const i=e(t.proxy);t.ce?Rs(t.ce,i):sl(t.subTree,i),r(i)};Hl(()=>{gi(n)}),$i(()=>{Xr(n,Qe,{flush:"post"});const i=new MutationObserver(n);i.observe(t.subTree.el.parentNode,{childList:!0}),uo(()=>i.disconnect())})}function sl(e,t){if(e.shapeFlag&128){const r=e.suspense;e=r.activeBranch,r.pendingBranch&&!r.isHydrating&&r.effects.push(()=>{sl(r.activeBranch,t)})}for(;e.component;)e=e.component.subTree;if(e.shapeFlag&1&&e.el)Rs(e.el,t);else if(e.type===Ue)e.children.forEach(r=>sl(r,t));else if(e.type===Yr){let{el:r,anchor:n}=e;for(;r&&(Rs(r,t),r!==n);)r=r.nextSibling}}function Rs(e,t){if(e.nodeType===1){const r=e.style;let n="";for(const i in t){const s=$m(t[i]);r.setProperty(`--${i}`,s),n+=`--${i}: ${s};`}r[pd]=n}}const xb=/(?:^|;)\s*display\s*:/;function Ib(e,t,r){const n=e.style,i=ee(r);let s=!1;if(r&&!i){if(t)if(ee(t))for(const o of t.split(";")){const a=o.slice(0,o.indexOf(":")).trim();r[a]==null&&as(n,a,"")}else for(const o in t)r[o]==null&&as(n,o,"");for(const o in r)o==="display"&&(s=!0),as(n,o,r[o])}else if(i){if(t!==r){const o=n[pd];o&&(r+=";"+o),n.cssText=r,s=xb.test(r)}}else t&&e.removeAttribute("style");Is in e&&(e[Is]=s?n.display:"",e[ud]&&(n.display="none"))}const gf=/\s*!important$/;function as(e,t,r){if(K(r))r.forEach(n=>as(e,t,n));else if(r==null&&(r=""),t.startsWith("--"))e.setProperty(t,r);else{const n=Rb(e,t);gf.test(r)?e.setProperty(pt(n),r.replace(gf,""),"important"):e[n]=r}}const mf=["Webkit","Moz","ms"],Ho={};function Rb(e,t){const r=Ho[t];if(r)return r;let n=Te(t);if(n!=="filter"&&n in e)return Ho[t]=n;n=cn(n);for(let i=0;ijo||(Fb.then(()=>jo=0),jo=Date.now());function Lb(e,t){const r=n=>{if(!n._vts)n._vts=Date.now();else if(n._vts<=r.attached)return;Ft(kb(n,r.value),t,5,[n])};return r.value=e,r.attached=Db(),r}function kb(e,t){if(K(t)){const r=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{r.call(e),e._stopped=!0},t.map(n=>i=>!i._stopped&&n&&n(i))}else return t}const wf=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,qb=(e,t,r,n,i,s)=>{const o=i==="svg";t==="class"?Ab(e,n,o):t==="style"?Ib(e,r,n):an(t)?Al(t)||$b(e,t,r,n,s):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Bb(e,t,n,o))?(bf(e,t,n),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&vf(e,t,n,o,s,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!ee(n))?bf(e,Te(t),n,s,t):(t==="true-value"?e._trueValue=n:t==="false-value"&&(e._falseValue=n),vf(e,t,n,o))};function Bb(e,t,r,n){if(n)return!!(t==="innerHTML"||t==="textContent"||t in e&&wf(t)&&Y(r));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const i=e.tagName;if(i==="IMG"||i==="VIDEO"||i==="CANVAS"||i==="SOURCE")return!1}return wf(t)&&ee(r)?!1:t in e}const Ef={};function dd(e,t,r){let n=Vn(e,t);zs(n)&&(n=oe({},n,t));class i extends go{constructor(o){super(n,o,r)}}return i.def=n,i}const Hb=((e,t)=>dd(e,t,ec)),jb=typeof HTMLElement<"u"?HTMLElement:class{};class go extends jb{constructor(t,r={},n=Ms){super(),this._def=t,this._props=r,this._createApp=n,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._patching=!1,this._dirty=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._ob=null,this.shadowRoot&&n!==Ms?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(oe({},t.shadowRootOptions,{mode:"open"})),this._root=this.shadowRoot):this._root=this}connectedCallback(){if(!this.isConnected)return;!this.shadowRoot&&!this._resolved&&this._parseSlots(),this._connected=!0;let t=this;for(;t=t&&(t.parentNode||t.host);)if(t instanceof go){this._parent=t;break}this._instance||(this._resolved?this._mount(this._def):t&&t._pendingResolve?this._pendingResolve=t._pendingResolve.then(()=>{this._pendingResolve=void 0,this._resolveDef()}):this._resolveDef())}_setParent(t=this._parent){t&&(this._instance.parent=t._instance,this._inheritParentContext(t))}_inheritParentContext(t=this._parent){t&&this._app&&Object.setPrototypeOf(this._app._context.provides,t._instance.provides)}disconnectedCallback(){this._connected=!1,so(()=>{this._connected||(this._ob&&(this._ob.disconnect(),this._ob=null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null,this._teleportTargets&&(this._teleportTargets.clear(),this._teleportTargets=void 0))})}_processMutations(t){for(const r of t)this._setAttr(r.attributeName)}_resolveDef(){if(this._pendingResolve)return;for(let n=0;n{this._resolved=!0,this._pendingResolve=void 0;const{props:s,styles:o}=n;let a;if(s&&!K(s))for(const l in s){const u=s[l];(u===Number||u&&u.type===Number)&&(l in this._props&&(this._props[l]=gs(this._props[l])),(a||(a=Object.create(null)))[Te(l)]=!0)}this._numberProps=a,this._resolveProps(n),this.shadowRoot&&this._applyStyles(o),this._mount(n)},r=this._def.__asyncLoader;r?this._pendingResolve=r().then(n=>{n.configureApp=this._def.configureApp,t(this._def=n,!0)}):t(this._def)}_mount(t){this._app=this._createApp(t),this._inheritParentContext(),t.configureApp&&t.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);const r=this._instance&&this._instance.exposed;if(r)for(const n in r)pe(this,n)||Object.defineProperty(this,n,{get:()=>io(r[n])})}_resolveProps(t){const{props:r}=t,n=K(r)?r:Object.keys(r||{});for(const i of Object.keys(this))i[0]!=="_"&&n.includes(i)&&this._setProp(i,this[i]);for(const i of n.map(Te))Object.defineProperty(this,i,{get(){return this._getProp(i)},set(s){this._setProp(i,s,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const r=this.hasAttribute(t);let n=r?this.getAttribute(t):Ef;const i=Te(t);r&&this._numberProps&&this._numberProps[i]&&(n=gs(n)),this._setProp(i,n,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,r,n=!0,i=!1){if(r!==this._props[t]&&(this._dirty=!0,r===Ef?delete this._props[t]:(this._props[t]=r,t==="key"&&this._app&&(this._app._ceVNode.key=r)),i&&this._instance&&this._update(),n)){const s=this._ob;s&&(this._processMutations(s.takeRecords()),s.disconnect()),r===!0?this.setAttribute(pt(t),""):typeof r=="string"||typeof r=="number"?this.setAttribute(pt(t),r+""):r||this.removeAttribute(pt(t)),s&&s.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),Pd(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const r=Ce(this._def,oe(t,this._props));return this._instance||(r.ce=n=>{this._instance=n,n.ce=this,n.isCE=!0;const i=(s,o)=>{this.dispatchEvent(new CustomEvent(s,zs(o[0])?oe({detail:o},o[0]):{detail:o}))};n.emit=(s,...o)=>{i(s,o),pt(s)!==s&&i(pt(s),o)},this._setParent()}),r}_applyStyles(t,r){if(!t)return;if(r){if(r===this._def||this._styleChildren.has(r))return;this._styleChildren.add(r)}const n=this._nonce;for(let i=t.length-1;i>=0;i--){const s=document.createElement("style");n&&s.setAttribute("nonce",n),s.textContent=t[i],this.shadowRoot.prepend(s)}}_parseSlots(){const t=this._slots={};let r;for(;r=this.firstChild;){const n=r.nodeType===1&&r.getAttribute("slot")||"default";(t[n]||(t[n]=[])).push(r),this.removeChild(r)}}_renderSlots(){const t=this._getSlots(),r=this._instance.type.__scopeId;for(let n=0;n(delete e.props.mode,e),Kb=Wb({name:"TransitionGroup",props:oe({},ld,{tag:String,moveClass:String}),setup(e,{slots:t}){const r=vt(),n=kl();let i,s;return co(()=>{if(!i.length)return;const o=e.moveClass||`${e.name||"v"}-move`;if(!Xb(i[0].el,r.vnode.el,o)){i=[];return}i.forEach(zb),i.forEach(Jb);const a=i.filter(Qb);il(r.vnode.el),a.forEach(l=>{const u=l.el,f=u.style;Kt(u,o),f.transform=f.webkitTransform=f.transitionDuration="";const c=u[Ns]=p=>{p&&p.target!==u||(!p||p.propertyName.endsWith("transform"))&&(u.removeEventListener("transitionend",c),u[Ns]=null,Tr(u,o))};u.addEventListener("transitionend",c)}),i=[]}),()=>{const o=ue(e),a=cd(o);let l=o.tag||Ue;if(i=[],s)for(let u=0;u{a.split(/\s+/).forEach(l=>l&&n.classList.remove(l))}),r.split(/\s+/).forEach(a=>a&&n.classList.add(a)),n.style.display="none";const s=t.nodeType===1?t:t.parentNode;s.appendChild(n);const{hasTransform:o}=fd(n);return s.removeChild(n),o}const kr=e=>{const t=e.props["onUpdate:modelValue"]||!1;return K(t)?r=>Pn(t,r):t};function Yb(e){e.target.composing=!0}function Pf(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Mt=Symbol("_assign");function Af(e,t,r){return t&&(e=e.trim()),r&&(e=Qs(e)),e}const $s={created(e,{modifiers:{lazy:t,trim:r,number:n}},i){e[Mt]=kr(i);const s=n||i.props&&i.props.type==="number";ar(e,t?"change":"input",o=>{o.target.composing||e[Mt](Af(e.value,r,s))}),(r||s)&&ar(e,"change",()=>{e.value=Af(e.value,r,s)}),t||(ar(e,"compositionstart",Yb),ar(e,"compositionend",Pf),ar(e,"change",Pf))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:r,modifiers:{lazy:n,trim:i,number:s}},o){if(e[Mt]=kr(o),e.composing)return;const a=(s||e.type==="number")&&!/^0\d/.test(e.value)?Qs(e.value):e.value,l=t??"";a!==l&&(document.activeElement===e&&e.type!=="range"&&(n&&t===r||i&&e.value.trim()===l)||(e.value=l))}},Yl={deep:!0,created(e,t,r){e[Mt]=kr(r),ar(e,"change",()=>{const n=e._modelValue,i=Nn(e),s=e.checked,o=e[Mt];if(K(n)){const a=Ys(n,i),l=a!==-1;if(s&&!l)o(n.concat(i));else if(!s&&l){const u=[...n];u.splice(a,1),o(u)}}else if(ln(n)){const a=new Set(n);s?a.add(i):a.delete(i),o(a)}else o(bd(e,s))})},mounted:Cf,beforeUpdate(e,t,r){e[Mt]=kr(r),Cf(e,t,r)}};function Cf(e,{value:t,oldValue:r},n){e._modelValue=t;let i;if(K(t))i=Ys(t,n.props.value)>-1;else if(ln(t))i=t.has(n.props.value);else{if(t===r)return;i=Lr(t,bd(e,!0))}e.checked!==i&&(e.checked=i)}const Zl={created(e,{value:t},r){e.checked=Lr(t,r.props.value),e[Mt]=kr(r),ar(e,"change",()=>{e[Mt](Nn(e))})},beforeUpdate(e,{value:t,oldValue:r},n){e[Mt]=kr(n),t!==r&&(e.checked=Lr(t,n.props.value))}},vd={deep:!0,created(e,{value:t,modifiers:{number:r}},n){const i=ln(t);ar(e,"change",()=>{const s=Array.prototype.filter.call(e.options,o=>o.selected).map(o=>r?Qs(Nn(o)):Nn(o));e[Mt](e.multiple?i?new Set(s):s:s[0]),e._assigning=!0,so(()=>{e._assigning=!1})}),e[Mt]=kr(n)},mounted(e,{value:t}){Of(e,t)},beforeUpdate(e,t,r){e[Mt]=kr(r)},updated(e,{value:t}){e._assigning||Of(e,t)}};function Of(e,t){const r=e.multiple,n=K(t);if(!(r&&!n&&!ln(t))){for(let i=0,s=e.options.length;iString(u)===String(a)):o.selected=Ys(t,a)>-1}else o.selected=t.has(a);else if(Lr(Nn(o),t)){e.selectedIndex!==i&&(e.selectedIndex=i);return}}!r&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Nn(e){return"_value"in e?e._value:e.value}function bd(e,t){const r=t?"_trueValue":"_falseValue";return r in e?e[r]:t}const Sd={created(e,t,r){Yi(e,t,r,null,"created")},mounted(e,t,r){Yi(e,t,r,null,"mounted")},beforeUpdate(e,t,r,n){Yi(e,t,r,n,"beforeUpdate")},updated(e,t,r,n){Yi(e,t,r,n,"updated")}};function _d(e,t){switch(e){case"SELECT":return vd;case"TEXTAREA":return $s;default:switch(t){case"checkbox":return Yl;case"radio":return Zl;default:return $s}}}function Yi(e,t,r,n,i){const o=_d(e.tagName,r.props&&r.props.type)[i];o&&o(e,t,r,n)}function Zb(){$s.getSSRProps=({value:e})=>({value:e}),Zl.getSSRProps=({value:e},t)=>{if(t.props&&Lr(t.props.value,e))return{checked:!0}},Yl.getSSRProps=({value:e},t)=>{if(K(e)){if(t.props&&Ys(e,t.props.value)>-1)return{checked:!0}}else if(ln(e)){if(t.props&&e.has(t.props.value))return{checked:!0}}else if(e)return{checked:!0}},Sd.getSSRProps=(e,t)=>{if(typeof t.type!="string")return;const r=_d(t.type.toUpperCase(),t.props&&t.props.type);if(r.getSSRProps)return r.getSSRProps(e,t)}}const eS=["ctrl","shift","alt","meta"],tS={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>eS.some(r=>e[`${r}Key`]&&!t.includes(r))},rS=(e,t)=>{const r=e._withMods||(e._withMods={}),n=t.join(".");return r[n]||(r[n]=((i,...s)=>{for(let o=0;o{const r=e._withKeys||(e._withKeys={}),n=t.join(".");return r[n]||(r[n]=(i=>{if(!("key"in i))return;const s=pt(i.key);if(t.some(o=>o===s||nS[o]===s))return e(i)}))},wd=oe({patchProp:qb},_b);let li,xf=!1;function Ed(){return li||(li=Mp(wd))}function Td(){return li=xf?li:Fp(wd),xf=!0,li}const Pd=((...e)=>{Ed().render(...e)}),sS=((...e)=>{Td().hydrate(...e)}),Ms=((...e)=>{const t=Ed().createApp(...e),{mount:r}=t;return t.mount=n=>{const i=Cd(n);if(!i)return;const s=t._component;!Y(s)&&!s.render&&!s.template&&(s.template=i.innerHTML),i.nodeType===1&&(i.textContent="");const o=r(i,!1,Ad(i));return i instanceof Element&&(i.removeAttribute("v-cloak"),i.setAttribute("data-v-app","")),o},t}),ec=((...e)=>{const t=Td().createApp(...e),{mount:r}=t;return t.mount=n=>{const i=Cd(n);if(i)return r(i,!0,Ad(i))},t});function Ad(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Cd(e){return ee(e)?document.querySelector(e):e}let If=!1;const oS=()=>{If||(If=!0,Zb(),Cb())},aS=Object.freeze(Object.defineProperty({__proto__:null,BaseTransition:up,BaseTransitionPropsValidators:ql,Comment:Ie,DeprecationTypes:vb,EffectScope:Il,ErrorCodes:wy,ErrorTypeStrings:ub,Fragment:Ue,KeepAlive:Jy,ReactiveEffect:hi,Static:Yr,Suspense:Wv,Teleport:Ry,Text:Mr,TrackOpTypes:gy,Transition:Eb,TransitionGroup:Gb,TriggerOpTypes:my,VueElement:go,assertNumber:_y,callWithAsyncErrorHandling:Ft,callWithErrorHandling:Un,camelize:Te,capitalize:cn,cloneVNode:Jt,compatUtils:yb,computed:ft,createApp:Ms,createBlock:Cs,createCommentVNode:tb,createElementBlock:Xv,createElementVNode:Jl,createHydrationRenderer:Fp,createPropsRestProxy:yv,createRenderer:Mp,createSSRApp:ec,createSlots:rv,createStaticVNode:eb,createTextVNode:Ql,createVNode:Ce,customRef:Xh,defineAsyncComponent:Gy,defineComponent:Vn,defineCustomElement:dd,defineEmits:av,defineExpose:lv,defineModel:uv,defineOptions:cv,defineProps:ov,defineSSRCustomElement:Hb,defineSlots:fv,devtools:hb,effect:Lm,effectScope:Mm,getCurrentInstance:vt,getCurrentScope:$h,getCurrentWatcher:yy,getTransitionRawChildren:ao,guardReactiveProps:Qp,h:Zr,handleError:fn,hasInjectionContext:Av,hydrate:sS,hydrateOnIdle:Hy,hydrateOnInteraction:Wy,hydrateOnMediaQuery:Vy,hydrateOnVisible:Uy,initCustomFormatter:lb,initDirectivesForSSR:oS,inject:oi,isMemoSame:id,isProxy:no,isReactive:Rr,isReadonly:pr,isRef:Be,isRuntimeOnly:sb,isShallow:Pt,isVNode:gr,markRaw:vs,mergeDefaults:gv,mergeModels:mv,mergeProps:Xp,nextTick:so,normalizeClass:Ri,normalizeProps:_m,normalizeStyle:Ii,onActivated:pp,onBeforeMount:mp,onBeforeUnmount:fo,onBeforeUpdate:Hl,onDeactivated:dp,onErrorCaptured:Sp,onMounted:$i,onRenderTracked:bp,onRenderTriggered:vp,onScopeDispose:Fm,onServerPrefetch:yp,onUnmounted:uo,onUpdated:co,onWatcherCleanup:Zh,openBlock:Si,popScopeId:Cy,provide:Pp,proxyRefs:Fl,pushScopeId:Ay,queuePostFlushCb:gi,reactive:jn,readonly:ys,ref:Nr,registerRuntimeCompiler:td,render:Pd,renderList:tv,renderSlot:nv,resolveComponent:Yy,resolveDirective:ev,resolveDynamicComponent:Zy,resolveFilter:mb,resolveTransitionHooks:xn,setBlockTracking:_i,setDevtoolsHook:pb,setTransitionHooks:dr,shallowReactive:Jh,shallowReadonly:ny,shallowRef:Ml,ssrContextKey:qp,ssrUtils:gb,stop:km,toDisplayString:Rh,toHandlerKey:Tn,toHandlers:iv,toRaw:ue,toRef:hy,toRefs:cy,toValue:oy,transformVNodeArgs:Yv,triggerRef:sy,unref:io,useAttrs:dv,useCssModule:Vb,useCssVars:Ob,useHost:gd,useId:$y,useModel:Lv,useSSRContext:Bp,useShadowRoot:Ub,useSlots:pv,useTemplateRef:My,useTransitionState:kl,vModelCheckbox:Yl,vModelDynamic:Sd,vModelRadio:Zl,vModelSelect:vd,vModelText:$s,vShow:hd,version:sd,warn:fb,watch:Xr,watchEffect:Mv,watchPostEffect:Fv,watchSyncEffect:Hp,withAsyncContext:vv,withCtx:Ll,withDefaults:hv,withDirectives:xy,withKeys:iS,withMemo:cb,withModifiers:rS,withScopeId:Oy},Symbol.toStringTag,{value:"Module"}));const wi=Symbol(""),ci=Symbol(""),tc=Symbol(""),Fs=Symbol(""),Od=Symbol(""),sn=Symbol(""),xd=Symbol(""),Id=Symbol(""),rc=Symbol(""),nc=Symbol(""),Di=Symbol(""),ic=Symbol(""),Rd=Symbol(""),sc=Symbol(""),oc=Symbol(""),ac=Symbol(""),lc=Symbol(""),cc=Symbol(""),fc=Symbol(""),Nd=Symbol(""),$d=Symbol(""),mo=Symbol(""),Ds=Symbol(""),uc=Symbol(""),hc=Symbol(""),Ei=Symbol(""),Li=Symbol(""),pc=Symbol(""),ol=Symbol(""),lS=Symbol(""),al=Symbol(""),Ls=Symbol(""),cS=Symbol(""),fS=Symbol(""),dc=Symbol(""),uS=Symbol(""),hS=Symbol(""),gc=Symbol(""),Md=Symbol(""),$n={[wi]:"Fragment",[ci]:"Teleport",[tc]:"Suspense",[Fs]:"KeepAlive",[Od]:"BaseTransition",[sn]:"openBlock",[xd]:"createBlock",[Id]:"createElementBlock",[rc]:"createVNode",[nc]:"createElementVNode",[Di]:"createCommentVNode",[ic]:"createTextVNode",[Rd]:"createStaticVNode",[sc]:"resolveComponent",[oc]:"resolveDynamicComponent",[ac]:"resolveDirective",[lc]:"resolveFilter",[cc]:"withDirectives",[fc]:"renderList",[Nd]:"renderSlot",[$d]:"createSlots",[mo]:"toDisplayString",[Ds]:"mergeProps",[uc]:"normalizeClass",[hc]:"normalizeStyle",[Ei]:"normalizeProps",[Li]:"guardReactiveProps",[pc]:"toHandlers",[ol]:"camelize",[lS]:"capitalize",[al]:"toHandlerKey",[Ls]:"setBlockTracking",[cS]:"pushScopeId",[fS]:"popScopeId",[dc]:"withCtx",[uS]:"unref",[hS]:"isRef",[gc]:"withMemo",[Md]:"isMemoSame"};function pS(e){Object.getOwnPropertySymbols(e).forEach(t=>{$n[t]=e[t]})}const Ct={start:{line:1,column:1,offset:0},end:{line:1,column:1,offset:0},source:""};function dS(e,t=""){return{type:0,source:t,children:e,helpers:new Set,components:[],directives:[],hoists:[],imports:[],cached:[],temps:0,codegenNode:void 0,loc:Ct}}function Ti(e,t,r,n,i,s,o,a=!1,l=!1,u=!1,f=Ct){return e&&(a?(e.helper(sn),e.helper(Dn(e.inSSR,u))):e.helper(Fn(e.inSSR,u)),o&&e.helper(cc)),{type:13,tag:t,props:r,children:n,patchFlag:i,dynamicProps:s,directives:o,isBlock:a,disableTracking:l,isComponent:u,loc:f}}function en(e,t=Ct){return{type:17,loc:t,elements:e}}function Nt(e,t=Ct){return{type:15,loc:t,properties:e}}function $e(e,t){return{type:16,loc:Ct,key:ee(e)?te(e,!0):e,value:t}}function te(e,t=!1,r=Ct,n=0){return{type:4,loc:r,content:e,isStatic:t,constType:t?3:n}}function Vt(e,t=Ct){return{type:8,loc:t,children:e}}function qe(e,t=[],r=Ct){return{type:14,loc:r,callee:e,arguments:t}}function Mn(e,t=void 0,r=!1,n=!1,i=Ct){return{type:18,params:e,returns:t,newline:r,isSlot:n,loc:i}}function ll(e,t,r,n=!0){return{type:19,test:e,consequent:t,alternate:r,newline:n,loc:Ct}}function gS(e,t,r=!1,n=!1){return{type:20,index:e,value:t,needPauseTracking:r,inVOnce:n,needArraySpread:!1,loc:Ct}}function mS(e){return{type:21,body:e,loc:Ct}}function Fn(e,t){return e||t?rc:nc}function Dn(e,t){return e||t?xd:Id}function mc(e,{helper:t,removeHelper:r,inSSR:n}){e.isBlock||(e.isBlock=!0,r(Fn(n,e.isComponent)),t(sn),t(Dn(n,e.isComponent)))}const Rf=new Uint8Array([123,123]),Nf=new Uint8Array([125,125]);function $f(e){return e>=97&&e<=122||e>=65&&e<=90}function Et(e){return e===32||e===10||e===9||e===12||e===13}function Er(e){return e===47||e===62||Et(e)}function ks(e){const t=new Uint8Array(e.length);for(let r=0;r=0;i--){const s=this.newlines[i];if(t>s){r=i+2,n=t-s;break}}return{column:n,line:r,offset:t}}peek(){return this.buffer.charCodeAt(this.index+1)}stateText(t){t===60?(this.index>this.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=5,this.sectionStart=this.index):!this.inVPre&&t===this.delimiterOpen[0]&&(this.state=2,this.delimiterIndex=0,this.stateInterpolationOpen(t))}stateInterpolationOpen(t){if(t===this.delimiterOpen[this.delimiterIndex])if(this.delimiterIndex===this.delimiterOpen.length-1){const r=this.index+1-this.delimiterOpen.length;r>this.sectionStart&&this.cbs.ontext(this.sectionStart,r),this.state=3,this.sectionStart=r}else this.delimiterIndex++;else this.inRCDATA?(this.state=32,this.stateInRCDATA(t)):(this.state=1,this.stateText(t))}stateInterpolation(t){t===this.delimiterClose[0]&&(this.state=4,this.delimiterIndex=0,this.stateInterpolationClose(t))}stateInterpolationClose(t){t===this.delimiterClose[this.delimiterIndex]?this.delimiterIndex===this.delimiterClose.length-1?(this.cbs.oninterpolation(this.sectionStart,this.index+1),this.inRCDATA?this.state=32:this.state=1,this.sectionStart=this.index+1):this.delimiterIndex++:(this.state=3,this.stateInterpolation(t))}stateSpecialStartSequence(t){const r=this.sequenceIndex===this.currentSequence.length;if(!(r?Er(t):(t|32)===this.currentSequence[this.sequenceIndex]))this.inRCDATA=!1;else if(!r){this.sequenceIndex++;return}this.sequenceIndex=0,this.state=6,this.stateInTagName(t)}stateInRCDATA(t){if(this.sequenceIndex===this.currentSequence.length){if(t===62||Et(t)){const r=this.index-this.currentSequence.length;if(this.sectionStart=t||(this.state===28?this.currentSequence===Xe.CdataEnd?this.cbs.oncdata(this.sectionStart,t):this.cbs.oncomment(this.sectionStart,t):this.state===6||this.state===11||this.state===18||this.state===17||this.state===12||this.state===13||this.state===14||this.state===15||this.state===16||this.state===20||this.state===19||this.state===21||this.state===9||this.cbs.ontext(this.sectionStart,t))}emitCodePoint(t,r){}}function Mf(e,{compatConfig:t}){const r=t&&t[e];return e==="MODE"?r||3:r}function tn(e,t){const r=Mf("MODE",t),n=Mf(e,t);return r===3?n===!0:n!==!1}function Pi(e,t,r,...n){return tn(e,t)}function yc(e){throw e}function Fd(e){}function Ae(e,t,r,n){const i=`https://vuejs.org/error-reference/#compiler-${e}`,s=new SyntaxError(String(i));return s.code=e,s.loc=t,s}const dt=e=>e.type===4&&e.isStatic;function Dd(e){switch(e){case"Teleport":case"teleport":return ci;case"Suspense":case"suspense":return tc;case"KeepAlive":case"keep-alive":return Fs;case"BaseTransition":case"base-transition":return Od}}const vS=/^$|^\d|[^\$\w\xA0-\uFFFF]/,vc=e=>!vS.test(e),Ld=/[A-Za-z_$\xA0-\uFFFF]/,bS=/[\.\?\w$\xA0-\uFFFF]/,SS=/\s+[.[]\s*|\s*[.[]\s+/g,kd=e=>e.type===4?e.content:e.loc.source,_S=e=>{const t=kd(e).trim().replace(SS,a=>a.trim());let r=0,n=[],i=0,s=0,o=null;for(let a=0;a|^\s*(?:async\s+)?function(?:\s+[\w$]+)?\s*\(/,ES=e=>wS.test(kd(e)),TS=ES;function It(e,t,r=!1){for(let n=0;nt.type===7&&t.name==="bind"&&(!t.arg||t.arg.type!==4||!t.arg.isStatic))}function Uo(e){return e.type===5||e.type===2}function Ff(e){return e.type===7&&e.name==="pre"}function AS(e){return e.type===7&&e.name==="slot"}function qs(e){return e.type===1&&e.tagType===3}function Bs(e){return e.type===1&&e.tagType===2}const CS=new Set([Ei,Li]);function Bd(e,t=[]){if(e&&!ee(e)&&e.type===14){const r=e.callee;if(!ee(r)&&CS.has(r))return Bd(e.arguments[0],t.concat(e))}return[e,t]}function Hs(e,t,r){let n,i=e.type===13?e.props:e.arguments[2],s=[],o;if(i&&!ee(i)&&i.type===14){const a=Bd(i);i=a[0],s=a[1],o=s[s.length-1]}if(i==null||ee(i))n=Nt([t]);else if(i.type===14){const a=i.arguments[0];!ee(a)&&a.type===15?Df(t,a)||a.properties.unshift(t):i.callee===pc?n=qe(r.helper(Ds),[Nt([t]),i]):i.arguments.unshift(Nt([t])),!n&&(n=i)}else i.type===15?(Df(t,i)||i.properties.unshift(t),n=i):(n=qe(r.helper(Ds),[Nt([t]),i]),o&&o.callee===Li&&(o=s[s.length-2]));e.type===13?o?o.arguments[0]=n:e.props=n:o?o.arguments[0]=n:e.arguments[2]=n}function Df(e,t){let r=!1;if(e.key.type===4){const n=e.key.content;r=t.properties.some(i=>i.key.type===4&&i.key.content===n)}return r}function Ai(e,t){return`_${t}_${e.replace(/[^\w]/g,(r,n)=>r==="-"?"_":e.charCodeAt(n).toString())}`}function OS(e){return e.type===14&&e.callee===gc?e.arguments[1].returns:e}const xS=/([\s\S]*?)\s+(?:in|of)\s+(\S[\s\S]*)/,Hd={parseMode:"base",ns:0,delimiters:["{{","}}"],getNamespace:()=>0,isVoidTag:Sn,isPreTag:Sn,isIgnoreNewlineTag:Sn,isCustomElement:Sn,onError:yc,onWarn:Fd,comments:!1,prefixIdentifiers:!1};let de=Hd,Ci=null,cr="",et=null,ae=null,ct="",tr=-1,Wr=-1,bc=0,Or=!1,cl=null;const Pe=[],Oe=new yS(Pe,{onerr:er,ontext(e,t){Zi(We(e,t),e,t)},ontextentity(e,t,r){Zi(e,t,r)},oninterpolation(e,t){if(Or)return Zi(We(e,t),e,t);let r=e+Oe.delimiterOpen.length,n=t-Oe.delimiterClose.length;for(;Et(cr.charCodeAt(r));)r++;for(;Et(cr.charCodeAt(n-1));)n--;let i=We(r,n);i.includes("&")&&(i=de.decodeEntities(i,!1)),fl({type:5,content:cs(i,!1,xe(r,n)),loc:xe(e,t)})},onopentagname(e,t){const r=We(e,t);et={type:1,tag:r,ns:de.getNamespace(r,Pe[0],de.ns),tagType:0,props:[],children:[],loc:xe(e-1,t),codegenNode:void 0}},onopentagend(e){kf(e)},onclosetag(e,t){const r=We(e,t);if(!de.isVoidTag(r)){let n=!1;for(let i=0;i0&&er(24,Pe[0].loc.start.offset);for(let o=0;o<=i;o++){const a=Pe.shift();ls(a,t,o(n.type===7?n.rawName:n.name)===r)&&er(2,t)},onattribend(e,t){if(et&&ae){if(Gr(ae.loc,t),e!==0)if(ct.includes("&")&&(ct=de.decodeEntities(ct,!0)),ae.type===6)ae.name==="class"&&(ct=Vd(ct).trim()),e===1&&!ct&&er(13,t),ae.value={type:2,content:ct,loc:e===1?xe(tr,Wr):xe(tr-1,Wr+1)},Oe.inSFCRoot&&et.tag==="template"&&ae.name==="lang"&&ct&&ct!=="html"&&Oe.enterRCDATA(ks("i.content==="sync"))>-1&&Pi("COMPILER_V_BIND_SYNC",de,ae.loc,ae.arg.loc.source)&&(ae.name="model",ae.modifiers.splice(n,1))}(ae.type!==7||ae.name!=="pre")&&et.props.push(ae)}ct="",tr=Wr=-1},oncomment(e,t){de.comments&&fl({type:3,content:We(e,t),loc:xe(e-4,t+3)})},onend(){const e=cr.length;for(let t=0;t{const d=t.start.offset+p,m=d+c.length;return cs(c,!1,xe(d,m),0,h?1:0)},a={source:o(s.trim(),r.indexOf(s,i.length)),value:void 0,key:void 0,index:void 0,finalized:!1};let l=i.trim().replace(IS,"").trim();const u=i.indexOf(l),f=l.match(Lf);if(f){l=l.replace(Lf,"").trim();const c=f[1].trim();let p;if(c&&(p=r.indexOf(c,u+l.length),a.key=o(c,p,!0)),f[2]){const h=f[2].trim();h&&(a.index=o(h,r.indexOf(h,a.key?p+c.length:u+l.length),!0))}}return l&&(a.value=o(l,u,!0)),a}function We(e,t){return cr.slice(e,t)}function kf(e){Oe.inSFCRoot&&(et.innerLoc=xe(e+1,e+1)),fl(et);const{tag:t,ns:r}=et;r===0&&de.isPreTag(t)&&bc++,de.isVoidTag(t)?ls(et,e):(Pe.unshift(et),(r===1||r===2)&&(Oe.inXML=!0)),et=null}function Zi(e,t,r){{const s=Pe[0]&&Pe[0].tag;s!=="script"&&s!=="style"&&e.includes("&")&&(e=de.decodeEntities(e,!1))}const n=Pe[0]||Ci,i=n.children[n.children.length-1];i&&i.type===2?(i.content+=e,Gr(i.loc,r)):n.children.push({type:2,content:e,loc:xe(t,r)})}function ls(e,t,r=!1){r?Gr(e.loc,jd(t,60)):Gr(e.loc,NS(t,62)+1),Oe.inSFCRoot&&(e.children.length?e.innerLoc.end=oe({},e.children[e.children.length-1].loc.end):e.innerLoc.end=oe({},e.innerLoc.start),e.innerLoc.source=We(e.innerLoc.start.offset,e.innerLoc.end.offset));const{tag:n,ns:i,children:s}=e;if(Or||(n==="slot"?e.tagType=2:qf(e)?e.tagType=3:MS(e)&&(e.tagType=1)),Oe.inRCDATA||(e.children=Ud(s)),i===0&&de.isIgnoreNewlineTag(n)){const o=s[0];o&&o.type===2&&(o.content=o.content.replace(/^\r?\n/,""))}i===0&&de.isPreTag(n)&&bc--,cl===e&&(Or=Oe.inVPre=!1,cl=null),Oe.inXML&&(Pe[0]?Pe[0].ns:de.ns)===0&&(Oe.inXML=!1);{const o=e.props;if(!Oe.inSFCRoot&&tn("COMPILER_NATIVE_TEMPLATE",de)&&e.tag==="template"&&!qf(e)){const l=Pe[0]||Ci,u=l.children.indexOf(e);l.children.splice(u,1,...e.children)}const a=o.find(l=>l.type===6&&l.name==="inline-template");a&&Pi("COMPILER_INLINE_TEMPLATE",de,a.loc)&&e.children.length&&(a.value={type:2,content:We(e.children[0].loc.start.offset,e.children[e.children.length-1].loc.end.offset),loc:a.loc})}}function NS(e,t){let r=e;for(;cr.charCodeAt(r)!==t&&r=0;)r--;return r}const $S=new Set(["if","else","else-if","for","slot"]);function qf({tag:e,props:t}){if(e==="template"){for(let r=0;r64&&e<91}const DS=/\r\n/g;function Ud(e){const t=de.whitespace!=="preserve";let r=!1;for(let n=0;nr.type!==3);return t.length===1&&t[0].type===1&&!Bs(t[0])?t[0]:null}function fs(e,t,r,n=!1,i=!1){const{children:s}=e,o=[];for(let f=0;f0){if(p>=2){c.codegenNode.patchFlag=-1,o.push(c);continue}}else{const h=c.codegenNode;if(h.type===13){const d=h.patchFlag;if((d===void 0||d===512||d===1)&&Gd(c,r)>=2){const m=zd(c);m&&(h.props=r.hoist(m))}h.dynamicProps&&(h.dynamicProps=r.hoist(h.dynamicProps))}}}else if(c.type===12&&(n?0:Tt(c,r))>=2){c.codegenNode.type===14&&c.codegenNode.arguments.length>0&&c.codegenNode.arguments.push("-1"),o.push(c);continue}if(c.type===1){const p=c.tagType===1;p&&r.scopes.vSlot++,fs(c,e,r,!1,i),p&&r.scopes.vSlot--}else if(c.type===11)fs(c,e,r,c.children.length===1,!0);else if(c.type===9)for(let p=0;ph.key===c||h.key.content===c);return p&&p.value}}o.length&&r.transformHoist&&r.transformHoist(s,r,e)}function Tt(e,t){const{constantCache:r}=t;switch(e.type){case 1:if(e.tagType!==0)return 0;const n=r.get(e);if(n!==void 0)return n;const i=e.codegenNode;if(i.type!==13||i.isBlock&&e.tag!=="svg"&&e.tag!=="foreignObject"&&e.tag!=="math")return 0;if(i.patchFlag===void 0){let o=3;const a=Gd(e,t);if(a===0)return r.set(e,0),0;a1)for(let l=0;lM&&(I.childIndex--,I.onNodeRemoved()),I.parent.children.splice(M,1)},onNodeRemoved:Qe,addIdentifiers(P){},removeIdentifiers(P){},hoist(P){ee(P)&&(P=te(P)),I.hoists.push(P);const C=te(`_hoisted_${I.hoists.length}`,!1,P.loc,2);return C.hoisted=P,C},cache(P,C=!1,M=!1){const T=gS(I.cached.length,P,C,M);return I.cached.push(T),T}};return I.filters=new Set,I}function KS(e,t){const r=WS(e,t);vo(e,r),t.hoistStatic&&US(e,r),t.ssr||GS(e,r),e.helpers=new Set([...r.helpers.keys()]),e.components=[...r.components],e.directives=[...r.directives],e.imports=r.imports,e.hoists=r.hoists,e.temps=r.temps,e.cached=r.cached,e.transformed=!0,e.filters=[...r.filters]}function GS(e,t){const{helper:r}=t,{children:n}=e;if(n.length===1){const i=Wd(e);if(i&&i.codegenNode){const s=i.codegenNode;s.type===13&&mc(s,t),e.codegenNode=s}else e.codegenNode=n[0]}else if(n.length>1){let i=64;e.codegenNode=Ti(t,r(wi),void 0,e.children,i,void 0,void 0,!0,void 0,!1)}}function zS(e,t){let r=0;const n=()=>{r--};for(;rn===e:n=>e.test(n);return(n,i)=>{if(n.type===1){const{props:s}=n;if(n.tagType===3&&s.some(AS))return;const o=[];for(let a=0;a`${$n[e]}: _${$n[e]}`;function JS(e,{mode:t="function",prefixIdentifiers:r=t==="module",sourceMap:n=!1,filename:i="template.vue.html",scopeId:s=null,optimizeImports:o=!1,runtimeGlobalName:a="Vue",runtimeModuleName:l="vue",ssrRuntimeModuleName:u="vue/server-renderer",ssr:f=!1,isTS:c=!1,inSSR:p=!1}){const h={mode:t,prefixIdentifiers:r,sourceMap:n,filename:i,scopeId:s,optimizeImports:o,runtimeGlobalName:a,runtimeModuleName:l,ssrRuntimeModuleName:u,ssr:f,isTS:c,inSSR:p,source:e.source,code:"",column:1,line:1,offset:0,indentLevel:0,pure:!1,map:void 0,helper(m){return`_${$n[m]}`},push(m,S=-2,_){h.code+=m},indent(){d(++h.indentLevel)},deindent(m=!1){m?--h.indentLevel:d(--h.indentLevel)},newline(){d(h.indentLevel)}};function d(m){h.push(` `+" ".repeat(m),0)}return h}function QS(e,t={}){const r=JS(e,t);t.onContextCreated&&t.onContextCreated(r);const{mode:n,push:i,prefixIdentifiers:s,indent:o,deindent:a,newline:l,scopeId:u,ssr:f}=r,c=Array.from(e.helpers),p=c.length>0,h=!s&&n!=="module";XS(e,r);const m=f?"ssrRender":"render",_=(f?["_ctx","_push","_parent","_attrs"]:["_ctx","_cache"]).join(", ");if(i(`function ${m}(${_}) {`),o(),h&&(i("with (_ctx) {"),o(),p&&(i(`const { ${c.map(Qd).join(", ")} } = _Vue `,-1),l())),e.components.length&&(Vo(e.components,"component",r),(e.directives.length||e.temps>0)&&l()),e.directives.length&&(Vo(e.directives,"directive",r),e.temps>0&&l()),e.filters&&e.filters.length&&(l(),Vo(e.filters,"filter",r),l()),e.temps>0){i("let ");for(let g=0;g0?", ":""}_temp${g}`)}return(e.components.length||e.directives.length||e.temps)&&(i(` `,0),l()),f||i("return "),e.codegenNode?nt(e.codegenNode,r):i("null"),h&&(a(),i("}")),a(),i("}"),{ast:e,code:r.code,preamble:"",map:r.map?r.map.toJSON():void 0}}function XS(e,t){const{ssr:r,prefixIdentifiers:n,push:i,newline:s,runtimeModuleName:o,runtimeGlobalName:a,ssrRuntimeModuleName:l}=t,u=a,f=Array.from(e.helpers);if(f.length>0&&(i(`const _Vue = ${u} `,-1),e.hoists.length)){const c=[rc,nc,Di,ic,Rd].filter(p=>f.includes(p)).map(Qd).join(", ");i(`const { ${c} } = _Vue -`,-1)}YS(e.hoists,t),s(),i("return ")}function Vo(e,t,{helper:r,push:n,newline:i,isTS:s}){const o=r(t==="filter"?lc:t==="component"?sc:ac);for(let a=0;a3||!1;t.push("["),r&&t.indent(),ki(e,t,r),r&&t.deindent(),t.push("]")}function ki(e,t,r=!1,n=!0){const{push:i,newline:s}=t;for(let o=0;or||"null")}function s_(e,t){const{push:r,helper:n,pure:i}=t,s=ee(e.callee)?e.callee:n(e.callee);i&&r(vo),r(s+"(",-2,e),ki(e.arguments,t),r(")")}function o_(e,t){const{push:r,indent:n,deindent:i,newline:s}=t,{properties:o}=e;if(!o.length){r("{}",-2,e);return}const a=o.length>1||!1;r(a?"{":"{ "),a&&n();for(let l=0;l "),(l||a)&&(r("{"),n()),o?(l&&r("return "),K(o)?Sc(o,t):nt(o,t)):a&&nt(a,t),(l||a)&&(i(),r("}")),u&&(e.isNonScopedSlot&&r(", undefined, true"),r(")"))}function c_(e,t){const{test:r,consequent:n,alternate:i,newline:s}=e,{push:o,indent:a,deindent:l,newline:u}=t;if(r.type===4){const c=!vc(r.content);c&&o("("),Xd(r,t),c&&o(")")}else o("("),nt(r,t),o(")");s&&a(),t.indentLevel++,s||o(" "),o("? "),nt(n,t),t.indentLevel--,s&&u(),s||o(" "),o(": ");const f=i.type===19;f||t.indentLevel++,nt(i,t),f||t.indentLevel--,s&&l(!0)}function f_(e,t){const{push:r,helper:n,indent:i,deindent:s,newline:o}=t,{needPauseTracking:a,needArraySpread:l}=e;l&&r("[...("),r(`_cache[${e.index}] || (`),a&&(i(),r(`${n(Ds)}(-1`),e.inVOnce&&r(", true"),r("),"),o(),r("(")),r(`_cache[${e.index}] = `),nt(e.value,t),a&&(r(`).cacheIndex = ${e.index},`),o(),r(`${n(Ds)}(1),`),o(),r(`_cache[${e.index}]`),s()),r(")"),l&&r(")]")}new RegExp("\\b"+"arguments,await,break,case,catch,class,const,continue,debugger,default,delete,do,else,export,extends,finally,for,function,if,import,let,new,return,super,switch,throw,try,var,void,while,with,yield".split(",").join("\\b|\\b")+"\\b");const u_=Jd(/^(?:if|else|else-if)$/,(e,t,r)=>h_(e,t,r,(n,i,s)=>{const o=r.parent.children;let a=o.indexOf(n),l=0;for(;a-->=0;){const u=o[a];u&&u.type===9&&(l+=u.branches.length)}return()=>{if(s)n.codegenNode=Hf(i,l,r);else{const u=p_(n.codegenNode);u.alternate=Hf(i,l+n.branches.length-1,r)}}}));function h_(e,t,r,n){if(t.name!=="else"&&(!t.exp||!t.exp.content.trim())){const i=t.exp?t.exp.loc:e.loc;r.onError(Ae(28,t.loc)),t.exp=te("true",!1,i)}if(t.name==="if"){const i=Bf(e,t),s={type:9,loc:qS(e.loc),branches:[i]};if(r.replaceNode(s),n)return n(s,i,!0)}else{const i=r.parent.children;let s=i.indexOf(e);for(;s-->=-1;){const o=i[s];if(o&&o.type===3){r.removeNode(o);continue}if(o&&o.type===2&&!o.content.trim().length){r.removeNode(o);continue}if(o&&o.type===9){(t.name==="else-if"||t.name==="else")&&o.branches[o.branches.length-1].condition===void 0&&r.onError(Ae(30,e.loc)),r.removeNode();const a=Bf(e,t);o.branches.push(a);const l=n&&n(o,a,!1);yo(a,r),l&&l(),r.currentNode=null}else r.onError(Ae(30,e.loc));break}}}function Bf(e,t){const r=e.tagType===3;return{type:10,loc:e.loc,condition:t.name==="else"?void 0:t.exp,children:r&&!It(e,"for")?e.children:[e],userKey:mo(e,"key"),isTemplateIf:r}}function Hf(e,t,r){return e.condition?ll(e.condition,jf(e,t,r),qe(r.helper(Di),['""',"true"])):jf(e,t,r)}function jf(e,t,r){const{helper:n}=r,i=$e("key",te(`${t}`,!1,Ct,2)),{children:s}=e,o=s[0];if(s.length!==1||o.type!==1)if(s.length===1&&o.type===11){const l=o.codegenNode;return Bs(l,i,r),l}else return Ti(r,n(wi),Nt([i]),s,64,void 0,void 0,!0,!1,!1,e.loc);else{const l=o.codegenNode,u=OS(l);return u.type===13&&mc(u,r),Bs(u,i,r),l}}function p_(e){for(;;)if(e.type===19)if(e.alternate.type===19)e=e.alternate;else return e;else e.type===20&&(e=e.value)}const d_=Jd("for",(e,t,r)=>{const{helper:n,removeHelper:i}=r;return g_(e,t,r,s=>{const o=qe(n(fc),[s.source]),a=ks(e),l=It(e,"memo"),u=mo(e,"key",!1,!0);u&&u.type;let f=u&&(u.type===6?u.value?te(u.value.content,!0):void 0:u.exp);const c=u&&f?$e("key",f):null,p=s.source.type===4&&s.source.constType>0,h=p?64:u?128:256;return s.codegenNode=Ti(r,n(wi),void 0,o,h,void 0,void 0,!0,!p,!1,e.loc),()=>{let d;const{children:m}=s,S=m.length!==1||m[0].type!==1,_=qs(e)?e:a&&e.children.length===1&&qs(e.children[0])?e.children[0]:null;if(_?(d=_.codegenNode,a&&c&&Bs(d,c,r)):S?d=Ti(r,n(wi),c?Nt([c]):void 0,e.children,64,void 0,void 0,!0,void 0,!1):(d=m[0].codegenNode,a&&c&&Bs(d,c,r),d.isBlock!==!p&&(d.isBlock?(i(sn),i(Dn(r.inSSR,d.isComponent))):i(Fn(r.inSSR,d.isComponent))),d.isBlock=!p,d.isBlock?(n(sn),n(Dn(r.inSSR,d.isComponent))):n(Fn(r.inSSR,d.isComponent))),l){const g=Mn(ul(s.parseResult,[te("_cached")]));g.body=mS([Vt(["const _memo = (",l.exp,")"]),Vt(["if (_cached",...f?[" && _cached.key === ",f]:[],` && ${r.helperString(Md)}(_cached, _memo)) return _cached`]),Vt(["const _item = ",d]),te("_item.memo = _memo"),te("return _item")]),o.arguments.push(g,te("_cache"),te(String(r.cached.length))),r.cached.push(null)}else o.arguments.push(Mn(ul(s.parseResult),d,!0))}})});function g_(e,t,r,n){if(!t.exp){r.onError(Ae(31,t.loc));return}const i=t.forParseResult;if(!i){r.onError(Ae(32,t.loc));return}Zd(i);const{addIdentifiers:s,removeIdentifiers:o,scopes:a}=r,{source:l,value:u,key:f,index:c}=i,p={type:11,loc:t.loc,source:l,valueAlias:u,keyAlias:f,objectIndexAlias:c,parseResult:i,children:ks(e)?e.children:[e]};r.replaceNode(p),a.vFor++;const h=n&&n(p);return()=>{a.vFor--,h&&h()}}function Zd(e,t){e.finalized||(e.finalized=!0)}function ul({value:e,key:t,index:r},n=[]){return m_([e,t,r,...n])}function m_(e){let t=e.length;for(;t--&&!e[t];);return e.slice(0,t+1).map((r,n)=>r||te("_".repeat(n+1),!1))}const Uf=te("undefined",!1),y_=(e,t)=>{if(e.type===1&&(e.tagType===1||e.tagType===3)){const r=It(e,"slot");if(r)return r.exp,t.scopes.vSlot++,()=>{t.scopes.vSlot--}}},v_=(e,t,r,n)=>Mn(e,r,!1,!0,r.length?r[0].loc:n);function b_(e,t,r=v_){t.helper(dc);const{children:n,loc:i}=e,s=[],o=[];let a=t.scopes.vSlot>0||t.scopes.vFor>0;const l=It(e,"slot",!0);if(l){const{arg:S,exp:_}=l;S&&!dt(S)&&(a=!0),s.push($e(S||te("default",!0),r(_,void 0,n,i)))}let u=!1,f=!1;const c=[],p=new Set;let h=0;for(let S=0;S{const y=r(_,void 0,g,i);return t.compatConfig&&(y.isNonScopedSlot=!0),$e("default",y)};u?c.length&&c.some(_=>hl(_))&&(f?t.onError(Ae(39,c[0].loc)):s.push(S(void 0,c))):s.push(S(void 0,n))}const d=a?2:fs(e.children)?3:1;let m=Nt(s.concat($e("_",te(d+"",!1))),i);return o.length&&(m=qe(t.helper($d),[m,en(o)])),{slots:m,hasDynamicSlots:a}}function Zi(e,t,r){const n=[$e("name",e),$e("fn",t)];return r!=null&&n.push($e("key",te(String(r),!0))),Nt(n)}function fs(e){for(let t=0;tfunction(){if(e=t.currentNode,!(e.type===1&&(e.tagType===0||e.tagType===1)))return;const{tag:n,props:i}=e,s=e.tagType===1;let o=s?__(e,t):`"${n}"`;const a=me(o)&&o.callee===oc;let l,u,f=0,c,p,h,d=a||o===ci||o===tc||!s&&(n==="svg"||n==="foreignObject"||n==="math");if(i.length>0){const m=tg(e,t,void 0,s,a);l=m.props,f=m.patchFlag,p=m.dynamicPropNames;const S=m.directives;h=S&&S.length?en(S.map(_=>E_(_,t))):void 0,m.shouldUseBlock&&(d=!0)}if(e.children.length>0)if(o===Ms&&(d=!0,f|=1024),s&&o!==ci&&o!==Ms){const{slots:S,hasDynamicSlots:_}=b_(e,t);u=S,_&&(f|=1024)}else if(e.children.length===1&&o!==ci){const S=e.children[0],_=S.type,g=_===5||_===8;g&&Tt(S,t)===0&&(f|=1),g||_===2?u=S:u=e.children}else u=e.children;p&&p.length&&(c=T_(p)),e.codegenNode=Ti(t,o,l,u,f===0?void 0:f,c,h,!!d,!1,s,e.loc)};function __(e,t,r=!1){let{tag:n}=e;const i=pl(n),s=mo(e,"is",!1,!0);if(s)if(i||tn("COMPILER_IS_ON_ELEMENT",t)){let a;if(s.type===6?a=s.value&&te(s.value.content,!0):(a=s.exp,a||(a=te("is",!1,s.arg.loc))),a)return qe(t.helper(oc),[a])}else s.type===6&&s.value.content.startsWith("vue:")&&(n=s.value.content.slice(4));const o=Dd(n)||t.isBuiltInComponent(n);return o?(r||t.helper(o),o):(t.helper(sc),t.components.add(n),Ai(n,"component"))}function tg(e,t,r=e.props,n,i,s=!1){const{tag:o,loc:a,children:l}=e;let u=[];const f=[],c=[],p=l.length>0;let h=!1,d=0,m=!1,S=!1,_=!1,g=!1,y=!1,v=!1;const E=[],O=C=>{u.length&&(f.push(Nt(Vf(u),a)),u=[]),C&&f.push(C)},N=()=>{t.scopes.vFor>0&&u.push($e(te("ref_for",!0),te("true")))},I=({key:C,value:M})=>{if(dt(C)){const T=C.content,q=an(T);if(q&&(!n||i)&&T.toLowerCase()!=="onclick"&&T!=="onUpdate:modelValue"&&!Ir(T)&&(g=!0),q&&Ir(T)&&(v=!0),q&&M.type===14&&(M=M.arguments[0]),M.type===20||(M.type===4||M.type===8)&&Tt(M,t)>0)return;T==="ref"?m=!0:T==="class"?S=!0:T==="style"?_=!0:T!=="key"&&!E.includes(T)&&E.push(T),n&&(T==="class"||T==="style")&&!E.includes(T)&&E.push(T)}else y=!0};for(let C=0;CRe.content==="prop")&&(d|=32);const re=t.directiveTransforms[T];if(re){const{props:Re,needRuntime:Me}=re(M,e,t);!s&&Re.forEach(I),k&&q&&!dt(q)?O(Nt(Re,a)):u.push(...Re),Me&&(c.push(M),yt(Me)&&eg.set(M,Me))}else hm(T)||(c.push(M),p&&(h=!0))}}let P;if(f.length?(O(),f.length>1?P=qe(t.helper(Fs),f,a):P=f[0]):u.length&&(P=Nt(Vf(u),a)),y?d|=16:(S&&!n&&(d|=2),_&&!n&&(d|=4),E.length&&(d|=8),g&&(d|=32)),!h&&(d===0||d===32)&&(m||v||c.length>0)&&(d|=512),!t.inSSR&&P)switch(P.type){case 15:let C=-1,M=-1,T=!1;for(let G=0;G$e(o,s)),i))}return en(r,e.loc)}function T_(e){let t="[";for(let r=0,n=e.length;r{if(qs(e)){const{children:r,loc:n}=e,{slotName:i,slotProps:s}=A_(e,t),o=[t.prefixIdentifiers?"_ctx.$slots":"$slots",i,"{}","undefined","true"];let a=2;s&&(o[2]=s,a=3),r.length&&(o[3]=Mn([],r,!1,!1,n),a=4),t.scopeId&&!t.slotted&&(a=5),o.splice(a),e.codegenNode=qe(t.helper(Nd),o,n)}};function A_(e,t){let r='"default"',n;const i=[];for(let s=0;s0){const{props:s,directives:o}=tg(e,t,i,!1,!1);n=s,o.length&&t.onError(Ae(36,o[0].loc))}return{slotName:r,slotProps:n}}const rg=(e,t,r,n)=>{const{loc:i,modifiers:s,arg:o}=e;!e.exp&&!s.length&&r.onError(Ae(35,i));let a;if(o.type===4)if(o.isStatic){let c=o.content;c.startsWith("vue:")&&(c=`vnode-${c.slice(4)}`);const p=t.tagType!==0||c.startsWith("vnode")||!/[A-Z]/.test(c)?Tn(Te(c)):`on:${c}`;a=te(p,!0,o.loc)}else a=Vt([`${r.helperString(al)}(`,o,")"]);else a=o,a.children.unshift(`${r.helperString(al)}(`),a.children.push(")");let l=e.exp;l&&!l.content.trim()&&(l=void 0);let u=r.cacheHandlers&&!l&&!r.inVOnce;if(l){const c=qd(l),p=!(c||TS(l)),h=l.content.includes(";");(p||u&&c)&&(l=Vt([`${p?"$event":"(...args)"} => ${h?"{":"("}`,l,h?"}":")"]))}let f={props:[$e(a,l||te("() => {}",!1,i))]};return n&&(f=n(f)),u&&(f.props[0].value=r.cache(f.props[0].value)),f.props.forEach(c=>c.key.isHandlerKey=!0),f},C_=(e,t,r)=>{const{modifiers:n,loc:i}=e,s=e.arg;let{exp:o}=e;return o&&o.type===4&&!o.content.trim()&&(o=void 0),s.type!==4?(s.children.unshift("("),s.children.push(') || ""')):s.isStatic||(s.content=s.content?`${s.content} || ""`:'""'),n.some(a=>a.content==="camel")&&(s.type===4?s.isStatic?s.content=Te(s.content):s.content=`${r.helperString(ol)}(${s.content})`:(s.children.unshift(`${r.helperString(ol)}(`),s.children.push(")"))),r.inSSR||(n.some(a=>a.content==="prop")&&Wf(s,"."),n.some(a=>a.content==="attr")&&Wf(s,"^")),{props:[$e(s,o)]}},Wf=(e,t)=>{e.type===4?e.isStatic?e.content=t+e.content:e.content=`\`${t}\${${e.content}}\``:(e.children.unshift(`'${t}' + (`),e.children.push(")"))},O_=(e,t)=>{if(e.type===0||e.type===1||e.type===11||e.type===10)return()=>{const r=e.children;let n,i=!1;for(let s=0;ss.type===7&&!t.directiveTransforms[s.name])&&e.tag!=="template")))for(let s=0;s{if(e.type===1&&It(e,"once",!0))return Kf.has(e)||t.inVOnce||t.inSSR?void 0:(Kf.add(e),t.inVOnce=!0,t.helper(Ds),()=>{t.inVOnce=!1;const r=t.currentNode;r.codegenNode&&(r.codegenNode=t.cache(r.codegenNode,!0,!0))})},ng=(e,t,r)=>{const{exp:n,arg:i}=e;if(!n)return r.onError(Ae(41,e.loc)),es();const s=n.loc.source.trim(),o=n.type===4?n.content:s,a=r.bindingMetadata[s];if(a==="props"||a==="props-aliased")return r.onError(Ae(44,n.loc)),es();if(!o.trim()||!qd(n))return r.onError(Ae(42,n.loc)),es();const l=i||te("modelValue",!0),u=i?dt(i)?`onUpdate:${Te(i.content)}`:Vt(['"onUpdate:" + ',i]):"onUpdate:modelValue";let f;const c=r.isTS?"($event: any)":"$event";f=Vt([`${c} => ((`,n,") = $event)"]);const p=[$e(l,e.exp),$e(u,f)];if(e.modifiers.length&&t.tagType===1){const h=e.modifiers.map(m=>m.content).map(m=>(vc(m)?m:JSON.stringify(m))+": true").join(", "),d=i?dt(i)?`${i.content}Modifiers`:Vt([i,' + "Modifiers"']):"modelModifiers";p.push($e(d,te(`{ ${h} }`,!1,e.loc,2)))}return es(p)};function es(e=[]){return{props:e}}const I_=/[\w).+\-_$\]]/,R_=(e,t)=>{tn("COMPILER_FILTERS",t)&&(e.type===5?Hs(e.content,t):e.type===1&&e.props.forEach(r=>{r.type===7&&r.name!=="for"&&r.exp&&Hs(r.exp,t)}))};function Hs(e,t){if(e.type===4)Gf(e,t);else for(let r=0;r=0&&(g=r.charAt(_),g===" ");_--);(!g||!I_.test(g))&&(o=!0)}}d===void 0?d=r.slice(0,h).trim():f!==0&&S();function S(){m.push(r.slice(f,h).trim()),f=h+1}if(m.length){for(h=0;h{if(e.type===1){const r=It(e,"memo");return!r||zf.has(e)||t.inSSR?void 0:(zf.add(e),()=>{const n=e.codegenNode||t.currentNode.codegenNode;n&&n.type===13&&(e.tagType!==1&&mc(n,t),e.codegenNode=qe(t.helper(gc),[r.exp,Mn(void 0,n),"_cache",String(t.cached.length)]),t.cached.push(null))})}},M_=(e,t)=>{if(e.type===1){for(const r of e.props)if(r.type===7&&r.name==="bind"&&(!r.exp||r.exp.type===4&&!r.exp.content.trim())&&r.arg){const n=r.arg;if(n.type!==4||!n.isStatic)t.onError(Ae(52,n.loc)),r.exp=te("",!0,n.loc);else{const i=Te(n.content);(Ld.test(i[0])||i[0]==="-")&&(r.exp=te(i,!1,n.loc))}}}};function F_(e){return[[M_,x_,u_,$_,d_,R_,P_,S_,y_,O_],{on:rg,bind:C_,model:ng}]}function D_(e,t={}){const r=t.onError||yc,n=t.mode==="module";t.prefixIdentifiers===!0?r(Ae(47)):n&&r(Ae(48));const i=!1;t.cacheHandlers&&r(Ae(49)),t.scopeId&&!n&&r(Ae(50));const s=oe({},t,{prefixIdentifiers:i}),o=ee(e)?jS(e,s):e,[a,l]=F_();return KS(o,oe({},s,{nodeTransforms:[...a,...t.nodeTransforms||[]],directiveTransforms:oe({},l,t.directiveTransforms||{})})),QS(o,s)}const L_=()=>({props:[]});const ig=Symbol(""),sg=Symbol(""),og=Symbol(""),ag=Symbol(""),dl=Symbol(""),lg=Symbol(""),cg=Symbol(""),fg=Symbol(""),ug=Symbol(""),hg=Symbol("");pS({[ig]:"vModelRadio",[sg]:"vModelCheckbox",[og]:"vModelText",[ag]:"vModelSelect",[dl]:"vModelDynamic",[lg]:"withModifiers",[cg]:"withKeys",[fg]:"vShow",[ug]:"Transition",[hg]:"TransitionGroup"});let yn;function k_(e,t=!1){return yn||(yn=document.createElement("div")),t?(yn.innerHTML=`
    `,yn.children[0].getAttribute("foo")):(yn.innerHTML=e,yn.textContent)}const q_={parseMode:"html",isVoidTag:xm,isNativeTag:e=>Am(e)||Cm(e)||Om(e),isPreTag:e=>e==="pre",isIgnoreNewlineTag:e=>e==="pre"||e==="textarea",decodeEntities:k_,isBuiltInComponent:e=>{if(e==="Transition"||e==="transition")return ug;if(e==="TransitionGroup"||e==="transition-group")return hg},getNamespace(e,t,r){let n=t?t.ns:r;if(t&&n===2)if(t.tag==="annotation-xml"){if(e==="svg")return 1;t.props.some(i=>i.type===6&&i.name==="encoding"&&i.value!=null&&(i.value.content==="text/html"||i.value.content==="application/xhtml+xml"))&&(n=0)}else/^m(?:[ions]|text)$/.test(t.tag)&&e!=="mglyph"&&e!=="malignmark"&&(n=0);else t&&n===1&&(t.tag==="foreignObject"||t.tag==="desc"||t.tag==="title")&&(n=0);if(n===0){if(e==="svg")return 1;if(e==="math")return 2}return n}},B_=e=>{e.type===1&&e.props.forEach((t,r)=>{t.type===6&&t.name==="style"&&t.value&&(e.props[r]={type:7,name:"bind",arg:te("style",!0,t.loc),exp:H_(t.value.content,t.loc),modifiers:[],loc:t.loc})})},H_=(e,t)=>{const r=Oh(e);return te(JSON.stringify(r),!1,t,3)};function Fr(e,t){return Ae(e,t)}const j_=(e,t,r)=>{const{exp:n,loc:i}=e;return n||r.onError(Fr(53,i)),t.children.length&&(r.onError(Fr(54,i)),t.children.length=0),{props:[$e(te("innerHTML",!0,i),n||te("",!0))]}},U_=(e,t,r)=>{const{exp:n,loc:i}=e;return n||r.onError(Fr(55,i)),t.children.length&&(r.onError(Fr(56,i)),t.children.length=0),{props:[$e(te("textContent",!0),n?Tt(n,r)>0?n:qe(r.helperString(go),[n],i):te("",!0))]}},V_=(e,t,r)=>{const n=ng(e,t,r);if(!n.props.length||t.tagType===1)return n;e.arg&&r.onError(Fr(58,e.arg.loc));const{tag:i}=t,s=r.isCustomElement(i);if(i==="input"||i==="textarea"||i==="select"||s){let o=og,a=!1;if(i==="input"||s){const l=mo(t,"type");if(l){if(l.type===7)o=dl;else if(l.value)switch(l.value.content){case"radio":o=ig;break;case"checkbox":o=sg;break;case"file":a=!0,r.onError(Fr(59,e.loc));break}}else PS(t)&&(o=dl)}else i==="select"&&(o=ag);a||(n.needRuntime=r.helper(o))}else r.onError(Fr(57,e.loc));return n.props=n.props.filter(o=>!(o.key.type===4&&o.key.content==="modelValue")),n},W_=At("passive,once,capture"),K_=At("stop,prevent,self,ctrl,shift,alt,meta,exact,middle"),G_=At("left,right"),pg=At("onkeyup,onkeydown,onkeypress"),z_=(e,t,r,n)=>{const i=[],s=[],o=[];for(let a=0;adt(e)&&e.content.toLowerCase()==="onclick"?te(t,!0):e.type!==4?Vt(["(",e,`) === "onClick" ? "${t}" : (`,e,")"]):e,J_=(e,t,r)=>rg(e,t,r,n=>{const{modifiers:i}=e;if(!i.length)return n;let{key:s,value:o}=n.props[0];const{keyModifiers:a,nonKeyModifiers:l,eventOptionModifiers:u}=z_(s,i,r,e.loc);if(l.includes("right")&&(s=Jf(s,"onContextmenu")),l.includes("middle")&&(s=Jf(s,"onMouseup")),l.length&&(o=qe(r.helper(lg),[o,JSON.stringify(l)])),a.length&&(!dt(s)||pg(s.content.toLowerCase()))&&(o=qe(r.helper(cg),[o,JSON.stringify(a)])),u.length){const f=u.map(cn).join("");s=dt(s)?te(`${s.content}${f}`,!0):Vt(["(",s,`) + "${f}"`])}return{props:[$e(s,o)]}}),Q_=(e,t,r)=>{const{exp:n,loc:i}=e;return n||r.onError(Fr(61,i)),{props:[],needRuntime:r.helper(fg)}},X_=(e,t)=>{e.type===1&&e.tagType===0&&(e.tag==="script"||e.tag==="style")&&t.removeNode()},Y_=[B_],Z_={cloak:L_,html:j_,text:U_,model:V_,on:J_,show:Q_};function e0(e,t={}){return D_(e,oe({},q_,t,{nodeTransforms:[X_,...Y_,...t.nodeTransforms||[]],directiveTransforms:oe({},Z_,t.directiveTransforms||{}),transformHoist:null}))}const Qf=Object.create(null);function t0(e,t){if(!ee(e))if(e.nodeType)e=e.innerHTML;else return Qe;const r=gm(e,t),n=Qf[r];if(n)return n;if(e[0]==="#"){const a=document.querySelector(e);e=a?a.innerHTML:""}const i=oe({hoistStatic:!0,onError:void 0,onWarn:Qe},t);!i.isCustomElement&&typeof customElements<"u"&&(i.isCustomElement=a=>!!customElements.get(a));const{code:s}=e0(e,i),o=new Function("Vue",s)(aS);return o._rc=!0,Qf[r]=o}td(t0);async function r0(e,t){for(const r of Array.isArray(e)?e:[e]){const n=t[r];if(!(typeof n>"u"))return typeof n=="function"?n():n}throw new Error(`Page not found: ${e}`)}var dg=typeof global=="object"&&global&&global.Object===Object&&global,n0=typeof self=="object"&&self&&self.Object===Object&&self,Xt=dg||n0||Function("return this")(),Qt=Xt.Symbol,gg=Object.prototype,i0=gg.hasOwnProperty,s0=gg.toString,Xn=Qt?Qt.toStringTag:void 0;function o0(e){var t=i0.call(e,Xn),r=e[Xn];try{e[Xn]=void 0;var n=!0}catch{}var i=s0.call(e);return n&&(t?e[Xn]=r:delete e[Xn]),i}var a0=Object.prototype,l0=a0.toString;function c0(e){return l0.call(e)}var f0="[object Null]",u0="[object Undefined]",Xf=Qt?Qt.toStringTag:void 0;function Wn(e){return e==null?e===void 0?u0:f0:Xf&&Xf in Object(e)?o0(e):c0(e)}function qr(e){return e!=null&&typeof e=="object"}var h0="[object Symbol]";function _c(e){return typeof e=="symbol"||qr(e)&&Wn(e)==h0}function p0(e,t){for(var r=-1,n=e==null?0:e.length,i=Array(n);++r-1&&e%1==0&&e-1&&e%1==0&&e<=L0}function k0(e){return e!=null&&Tc(e.length)&&!yg(e)}var q0=Object.prototype;function bg(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||q0;return e===r}function B0(e,t){for(var r=-1,n=Array(e);++r-1}function Gw(e,t){var r=this.__data__,n=bo(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}function vr(e){var t=-1,r=e==null?0:e.length;for(this.clear();++ta))return!1;var u=s.get(e),f=s.get(t);if(u&&f)return u==t&&f==e;var c=-1,p=!0,h=r&j1?new Vs:void 0;for(s.set(e,t),s.set(t,e);++c":">",'"':""","'":"'"},dT=cE(pT),$g=/[&<>"']/g,gT=RegExp($g.source);function mT(e){return e=Ag(e),e&&gT.test(e)?e.replace($g,dT):e}var yT=Object.prototype,vT=yT.hasOwnProperty;function bT(e,t){return e!=null&&vT.call(e,t)}function Mg(e,t){return e!=null&&hT(e,t,bT)}function Ws(e,t){return Ng(e,t)}function ST(e,t,r,n){if(!Ln(e))return e;t=Cc(t,e);for(var i=-1,s=t.length,o=s-1,a=e;a!=null&&++i-1e3&&A<1e3||O.call(/e/,x))return x;var fe=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof A=="number"){var ye=A<0?-C(-A):C(A);if(ye!==A){var we=String(ye),ie=g.call(x,we.length+1);return y.call(we,fe,"$&_")+"."+y.call(y.call(ie,/([0-9]{3})/g,"$&_"),/_$/,"")}}return y.call(x,fe,"$&_")}var re=TT,Re=re.custom,Me=w(Re)?Re:null,Fe={__proto__:null,double:'"',single:"'"},Lt={__proto__:null,double:/(["\\])/g,single:/(['\\])/g};Jo=function A(x,fe,ye,we){var ie=fe||{};if($(ie,"quoteStyle")&&!$(Fe,ie.quoteStyle))throw new TypeError('option "quoteStyle" must be "single" or "double"');if($(ie,"maxStringLength")&&(typeof ie.maxStringLength=="number"?ie.maxStringLength<0&&ie.maxStringLength!==1/0:ie.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var Sr=$(ie,"customInspect")?ie.customInspect:!0;if(typeof Sr!="boolean"&&Sr!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if($(ie,"indent")&&ie.indent!==null&&ie.indent!==" "&&!(parseInt(ie.indent,10)===ie.indent&&ie.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if($(ie,"numericSeparator")&&typeof ie.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var jr=ie.numericSeparator;if(typeof x>"u")return"undefined";if(x===null)return"null";if(typeof x=="boolean")return x?"true":"false";if(typeof x=="string")return se(x,ie);if(typeof x=="number"){if(x===0)return 1/0/x>0?"0":"-0";var _t=String(x);return jr?k(x,_t):_t}if(typeof x=="bigint"){var _r=String(x)+"n";return jr?k(x,_r):_r}var To=typeof ie.depth>"u"?5:ie.depth;if(typeof ye>"u"&&(ye=0),ye>=To&&To>0&&typeof x=="object")return bt(x)?"[Array]":"[Object]";var pn=it(ie,ye);if(typeof we>"u")we=[];else if(H(we,x)>=0)return"[Circular]";function qt(dn,Bi,lm){if(Bi&&(we=P.call(we),we.push(Bi)),lm){var Bc={depth:ie.depth};return $(ie,"quoteStyle")&&(Bc.quoteStyle=ie.quoteStyle),A(dn,Bc,ye+1,we)}return A(dn,ie,ye+1,we)}if(typeof x=="function"&&!Ne(x)){var $c=j(x),Mc=Hr(x,qt);return"[Function"+($c?": "+$c:" (anonymous)")+"]"+(Mc.length>0?" { "+I.call(Mc,", ")+" }":"")}if(w(x)){var Fc=W?y.call(String(x),/^(Symbol\(.*\))_[^)]*$/,"$1"):q.call(x);return typeof x=="object"&&!W?ce(Fc):Fc}if(Z(x)){for(var Gn="<"+E.call(String(x.nodeName)),Po=x.attributes||[],qi=0;qi",Gn}if(bt(x)){if(x.length===0)return"[]";var Ao=Hr(x,qt);return pn&&!St(Ao)?"["+Yt(Ao,pn)+"]":"[ "+I.call(Ao,", ")+" ]"}if(ne(x)){var Co=Hr(x,qt);return!("cause"in Error.prototype)&&"cause"in x&&!U.call(x,"cause")?"{ ["+String(x)+"] "+I.call(N.call("[cause]: "+qt(x.cause),Co),", ")+" }":Co.length===0?"["+String(x)+"]":"{ ["+String(x)+"] "+I.call(Co,", ")+" }"}if(typeof x=="object"&&Sr){if(Me&&typeof x[Me]=="function"&&re)return re(x,{depth:To-ye});if(Sr!=="symbol"&&typeof x.inspect=="function")return x.inspect()}if(B(x)){var Dc=[];return n&&n.call(x,function(dn,Bi){Dc.push(qt(Bi,x,!0)+" => "+qt(dn,x))}),De("Map",r.call(x),Dc,pn)}if(V(x)){var Lc=[];return a&&a.call(x,function(dn){Lc.push(qt(dn,x))}),De("Set",o.call(x),Lc,pn)}if(L(x))return je("WeakMap");if(Q(x))return je("WeakSet");if(J(x))return je("WeakRef");if(ge(x))return ce(qt(Number(x)));if(R(x))return ce(qt(M.call(x)));if(b(x))return ce(d.call(x));if(_e(x))return ce(qt(String(x)));if(typeof window<"u"&&x===window)return"{ [object Window] }";if(typeof globalThis<"u"&&x===globalThis||typeof Eu<"u"&&x===Eu)return"{ [object globalThis] }";if(!Ot(x)&&!Ne(x)){var Oo=Hr(x,qt),kc=z?z(x)===Object.prototype:x instanceof Object||x.constructor===Object,xo=x instanceof Object?"":"null prototype",qc=!kc&&G&&Object(x)===x&&G in x?g.call(F(x),8,-1):xo?"Object":"",am=kc||typeof x.constructor!="function"?"":x.constructor.name?x.constructor.name+" ":"",Io=am+(qc||xo?"["+I.call(N.call([],qc||[],xo||[]),": ")+"] ":"");return Oo.length===0?Io+"{}":pn?Io+"{"+Yt(Oo,pn)+"}":Io+"{ "+I.call(Oo,", ")+" }"}return String(x)};function Wt(A,x,fe){var ye=fe.quoteStyle||x,we=Fe[ye];return we+A+we}function kt(A){return y.call(String(A),/"/g,""")}function He(A){return!G||!(typeof A=="object"&&(G in A||typeof A[G]<"u"))}function bt(A){return F(A)==="[object Array]"&&He(A)}function Ot(A){return F(A)==="[object Date]"&&He(A)}function Ne(A){return F(A)==="[object RegExp]"&&He(A)}function ne(A){return F(A)==="[object Error]"&&He(A)}function _e(A){return F(A)==="[object String]"&&He(A)}function ge(A){return F(A)==="[object Number]"&&He(A)}function b(A){return F(A)==="[object Boolean]"&&He(A)}function w(A){if(W)return A&&typeof A=="object"&&A instanceof Symbol;if(typeof A=="symbol")return!0;if(!A||typeof A!="object"||!q)return!1;try{return q.call(A),!0}catch{}return!1}function R(A){if(!A||typeof A!="object"||!M)return!1;try{return M.call(A),!0}catch{}return!1}var D=Object.prototype.hasOwnProperty||function(A){return A in this};function $(A,x){return D.call(A,x)}function F(A){return m.call(A)}function j(A){if(A.name)return A.name;var x=_.call(S.call(A),/^function\s*([\w$]+)/);return x?x[1]:null}function H(A,x){if(A.indexOf)return A.indexOf(x);for(var fe=0,ye=A.length;fex.maxStringLength){var fe=A.length-x.maxStringLength,ye="... "+fe+" more character"+(fe>1?"s":"");return se(g.call(A,0,x.maxStringLength),x)+ye}var we=Lt[x.quoteStyle||"single"];we.lastIndex=0;var ie=y.call(y.call(A,we,"\\$1"),/[\x00-\x1f]/g,ve);return Wt(ie,"single",x)}function ve(A){var x=A.charCodeAt(0),fe={8:"b",9:"t",10:"n",12:"f",13:"r"}[x];return fe?"\\"+fe:"\\x"+(x<16?"0":"")+v.call(x.toString(16))}function ce(A){return"Object("+A+")"}function je(A){return A+" { ? }"}function De(A,x,fe,ye){var we=ye?Yt(fe,ye):I.call(fe,", ");return A+" ("+x+") {"+we+"}"}function St(A){for(var x=0;x3||!1;t.push("["),r&&t.indent(),ki(e,t,r),r&&t.deindent(),t.push("]")}function ki(e,t,r=!1,n=!0){const{push:i,newline:s}=t;for(let o=0;or||"null")}function s_(e,t){const{push:r,helper:n,pure:i}=t,s=ee(e.callee)?e.callee:n(e.callee);i&&r(bo),r(s+"(",-2,e),ki(e.arguments,t),r(")")}function o_(e,t){const{push:r,indent:n,deindent:i,newline:s}=t,{properties:o}=e;if(!o.length){r("{}",-2,e);return}const a=o.length>1||!1;r(a?"{":"{ "),a&&n();for(let l=0;l "),(l||a)&&(r("{"),n()),o?(l&&r("return "),K(o)?Sc(o,t):nt(o,t)):a&&nt(a,t),(l||a)&&(i(),r("}")),u&&(e.isNonScopedSlot&&r(", undefined, true"),r(")"))}function c_(e,t){const{test:r,consequent:n,alternate:i,newline:s}=e,{push:o,indent:a,deindent:l,newline:u}=t;if(r.type===4){const c=!vc(r.content);c&&o("("),Xd(r,t),c&&o(")")}else o("("),nt(r,t),o(")");s&&a(),t.indentLevel++,s||o(" "),o("? "),nt(n,t),t.indentLevel--,s&&u(),s||o(" "),o(": ");const f=i.type===19;f||t.indentLevel++,nt(i,t),f||t.indentLevel--,s&&l(!0)}function f_(e,t){const{push:r,helper:n,indent:i,deindent:s,newline:o}=t,{needPauseTracking:a,needArraySpread:l}=e;l&&r("[...("),r(`_cache[${e.index}] || (`),a&&(i(),r(`${n(Ls)}(-1`),e.inVOnce&&r(", true"),r("),"),o(),r("(")),r(`_cache[${e.index}] = `),nt(e.value,t),a&&(r(`).cacheIndex = ${e.index},`),o(),r(`${n(Ls)}(1),`),o(),r(`_cache[${e.index}]`),s()),r(")"),l&&r(")]")}new RegExp("\\b"+"arguments,await,break,case,catch,class,const,continue,debugger,default,delete,do,else,export,extends,finally,for,function,if,import,let,new,return,super,switch,throw,try,var,void,while,with,yield".split(",").join("\\b|\\b")+"\\b");const u_=Jd(/^(?:if|else|else-if)$/,(e,t,r)=>h_(e,t,r,(n,i,s)=>{const o=r.parent.children;let a=o.indexOf(n),l=0;for(;a-->=0;){const u=o[a];u&&u.type===9&&(l+=u.branches.length)}return()=>{if(s)n.codegenNode=Hf(i,l,r);else{const u=p_(n.codegenNode);u.alternate=Hf(i,l+n.branches.length-1,r)}}}));function h_(e,t,r,n){if(t.name!=="else"&&(!t.exp||!t.exp.content.trim())){const i=t.exp?t.exp.loc:e.loc;r.onError(Ae(28,t.loc)),t.exp=te("true",!1,i)}if(t.name==="if"){const i=Bf(e,t),s={type:9,loc:qS(e.loc),branches:[i]};if(r.replaceNode(s),n)return n(s,i,!0)}else{const i=r.parent.children;let s=i.indexOf(e);for(;s-->=-1;){const o=i[s];if(o&&o.type===3){r.removeNode(o);continue}if(o&&o.type===2&&!o.content.trim().length){r.removeNode(o);continue}if(o&&o.type===9){(t.name==="else-if"||t.name==="else")&&o.branches[o.branches.length-1].condition===void 0&&r.onError(Ae(30,e.loc)),r.removeNode();const a=Bf(e,t);o.branches.push(a);const l=n&&n(o,a,!1);vo(a,r),l&&l(),r.currentNode=null}else r.onError(Ae(30,e.loc));break}}}function Bf(e,t){const r=e.tagType===3;return{type:10,loc:e.loc,condition:t.name==="else"?void 0:t.exp,children:r&&!It(e,"for")?e.children:[e],userKey:yo(e,"key"),isTemplateIf:r}}function Hf(e,t,r){return e.condition?ll(e.condition,jf(e,t,r),qe(r.helper(Di),['""',"true"])):jf(e,t,r)}function jf(e,t,r){const{helper:n}=r,i=$e("key",te(`${t}`,!1,Ct,2)),{children:s}=e,o=s[0];if(s.length!==1||o.type!==1)if(s.length===1&&o.type===11){const l=o.codegenNode;return Hs(l,i,r),l}else return Ti(r,n(wi),Nt([i]),s,64,void 0,void 0,!0,!1,!1,e.loc);else{const l=o.codegenNode,u=OS(l);return u.type===13&&mc(u,r),Hs(u,i,r),l}}function p_(e){for(;;)if(e.type===19)if(e.alternate.type===19)e=e.alternate;else return e;else e.type===20&&(e=e.value)}const d_=Jd("for",(e,t,r)=>{const{helper:n,removeHelper:i}=r;return g_(e,t,r,s=>{const o=qe(n(fc),[s.source]),a=qs(e),l=It(e,"memo"),u=yo(e,"key",!1,!0);u&&u.type;let f=u&&(u.type===6?u.value?te(u.value.content,!0):void 0:u.exp);const c=u&&f?$e("key",f):null,p=s.source.type===4&&s.source.constType>0,h=p?64:u?128:256;return s.codegenNode=Ti(r,n(wi),void 0,o,h,void 0,void 0,!0,!p,!1,e.loc),()=>{let d;const{children:m}=s,S=m.length!==1||m[0].type!==1,_=Bs(e)?e:a&&e.children.length===1&&Bs(e.children[0])?e.children[0]:null;if(_?(d=_.codegenNode,a&&c&&Hs(d,c,r)):S?d=Ti(r,n(wi),c?Nt([c]):void 0,e.children,64,void 0,void 0,!0,void 0,!1):(d=m[0].codegenNode,a&&c&&Hs(d,c,r),d.isBlock!==!p&&(d.isBlock?(i(sn),i(Dn(r.inSSR,d.isComponent))):i(Fn(r.inSSR,d.isComponent))),d.isBlock=!p,d.isBlock?(n(sn),n(Dn(r.inSSR,d.isComponent))):n(Fn(r.inSSR,d.isComponent))),l){const g=Mn(ul(s.parseResult,[te("_cached")]));g.body=mS([Vt(["const _memo = (",l.exp,")"]),Vt(["if (_cached",...f?[" && _cached.key === ",f]:[],` && ${r.helperString(Md)}(_cached, _memo)) return _cached`]),Vt(["const _item = ",d]),te("_item.memo = _memo"),te("return _item")]),o.arguments.push(g,te("_cache"),te(String(r.cached.length))),r.cached.push(null)}else o.arguments.push(Mn(ul(s.parseResult),d,!0))}})});function g_(e,t,r,n){if(!t.exp){r.onError(Ae(31,t.loc));return}const i=t.forParseResult;if(!i){r.onError(Ae(32,t.loc));return}Zd(i);const{addIdentifiers:s,removeIdentifiers:o,scopes:a}=r,{source:l,value:u,key:f,index:c}=i,p={type:11,loc:t.loc,source:l,valueAlias:u,keyAlias:f,objectIndexAlias:c,parseResult:i,children:qs(e)?e.children:[e]};r.replaceNode(p),a.vFor++;const h=n&&n(p);return()=>{a.vFor--,h&&h()}}function Zd(e,t){e.finalized||(e.finalized=!0)}function ul({value:e,key:t,index:r},n=[]){return m_([e,t,r,...n])}function m_(e){let t=e.length;for(;t--&&!e[t];);return e.slice(0,t+1).map((r,n)=>r||te("_".repeat(n+1),!1))}const Uf=te("undefined",!1),y_=(e,t)=>{if(e.type===1&&(e.tagType===1||e.tagType===3)){const r=It(e,"slot");if(r)return r.exp,t.scopes.vSlot++,()=>{t.scopes.vSlot--}}},v_=(e,t,r,n)=>Mn(e,r,!1,!0,r.length?r[0].loc:n);function b_(e,t,r=v_){t.helper(dc);const{children:n,loc:i}=e,s=[],o=[];let a=t.scopes.vSlot>0||t.scopes.vFor>0;const l=It(e,"slot",!0);if(l){const{arg:S,exp:_}=l;S&&!dt(S)&&(a=!0),s.push($e(S||te("default",!0),r(_,void 0,n,i)))}let u=!1,f=!1;const c=[],p=new Set;let h=0;for(let S=0;S{const y=r(_,void 0,g,i);return t.compatConfig&&(y.isNonScopedSlot=!0),$e("default",y)};u?c.length&&c.some(_=>hl(_))&&(f?t.onError(Ae(39,c[0].loc)):s.push(S(void 0,c))):s.push(S(void 0,n))}const d=a?2:us(e.children)?3:1;let m=Nt(s.concat($e("_",te(d+"",!1))),i);return o.length&&(m=qe(t.helper($d),[m,en(o)])),{slots:m,hasDynamicSlots:a}}function es(e,t,r){const n=[$e("name",e),$e("fn",t)];return r!=null&&n.push($e("key",te(String(r),!0))),Nt(n)}function us(e){for(let t=0;tfunction(){if(e=t.currentNode,!(e.type===1&&(e.tagType===0||e.tagType===1)))return;const{tag:n,props:i}=e,s=e.tagType===1;let o=s?__(e,t):`"${n}"`;const a=me(o)&&o.callee===oc;let l,u,f=0,c,p,h,d=a||o===ci||o===tc||!s&&(n==="svg"||n==="foreignObject"||n==="math");if(i.length>0){const m=tg(e,t,void 0,s,a);l=m.props,f=m.patchFlag,p=m.dynamicPropNames;const S=m.directives;h=S&&S.length?en(S.map(_=>E_(_,t))):void 0,m.shouldUseBlock&&(d=!0)}if(e.children.length>0)if(o===Fs&&(d=!0,f|=1024),s&&o!==ci&&o!==Fs){const{slots:S,hasDynamicSlots:_}=b_(e,t);u=S,_&&(f|=1024)}else if(e.children.length===1&&o!==ci){const S=e.children[0],_=S.type,g=_===5||_===8;g&&Tt(S,t)===0&&(f|=1),g||_===2?u=S:u=e.children}else u=e.children;p&&p.length&&(c=T_(p)),e.codegenNode=Ti(t,o,l,u,f===0?void 0:f,c,h,!!d,!1,s,e.loc)};function __(e,t,r=!1){let{tag:n}=e;const i=pl(n),s=yo(e,"is",!1,!0);if(s)if(i||tn("COMPILER_IS_ON_ELEMENT",t)){let a;if(s.type===6?a=s.value&&te(s.value.content,!0):(a=s.exp,a||(a=te("is",!1,s.arg.loc))),a)return qe(t.helper(oc),[a])}else s.type===6&&s.value.content.startsWith("vue:")&&(n=s.value.content.slice(4));const o=Dd(n)||t.isBuiltInComponent(n);return o?(r||t.helper(o),o):(t.helper(sc),t.components.add(n),Ai(n,"component"))}function tg(e,t,r=e.props,n,i,s=!1){const{tag:o,loc:a,children:l}=e;let u=[];const f=[],c=[],p=l.length>0;let h=!1,d=0,m=!1,S=!1,_=!1,g=!1,y=!1,v=!1;const E=[],O=C=>{u.length&&(f.push(Nt(Vf(u),a)),u=[]),C&&f.push(C)},N=()=>{t.scopes.vFor>0&&u.push($e(te("ref_for",!0),te("true")))},I=({key:C,value:M})=>{if(dt(C)){const T=C.content,q=an(T);if(q&&(!n||i)&&T.toLowerCase()!=="onclick"&&T!=="onUpdate:modelValue"&&!Ir(T)&&(g=!0),q&&Ir(T)&&(v=!0),q&&M.type===14&&(M=M.arguments[0]),M.type===20||(M.type===4||M.type===8)&&Tt(M,t)>0)return;T==="ref"?m=!0:T==="class"?S=!0:T==="style"?_=!0:T!=="key"&&!E.includes(T)&&E.push(T),n&&(T==="class"||T==="style")&&!E.includes(T)&&E.push(T)}else y=!0};for(let C=0;CRe.content==="prop")&&(d|=32);const re=t.directiveTransforms[T];if(re){const{props:Re,needRuntime:Me}=re(M,e,t);!s&&Re.forEach(I),k&&q&&!dt(q)?O(Nt(Re,a)):u.push(...Re),Me&&(c.push(M),yt(Me)&&eg.set(M,Me))}else hm(T)||(c.push(M),p&&(h=!0))}}let P;if(f.length?(O(),f.length>1?P=qe(t.helper(Ds),f,a):P=f[0]):u.length&&(P=Nt(Vf(u),a)),y?d|=16:(S&&!n&&(d|=2),_&&!n&&(d|=4),E.length&&(d|=8),g&&(d|=32)),!h&&(d===0||d===32)&&(m||v||c.length>0)&&(d|=512),!t.inSSR&&P)switch(P.type){case 15:let C=-1,M=-1,T=!1;for(let G=0;G$e(o,s)),i))}return en(r,e.loc)}function T_(e){let t="[";for(let r=0,n=e.length;r{if(Bs(e)){const{children:r,loc:n}=e,{slotName:i,slotProps:s}=A_(e,t),o=[t.prefixIdentifiers?"_ctx.$slots":"$slots",i,"{}","undefined","true"];let a=2;s&&(o[2]=s,a=3),r.length&&(o[3]=Mn([],r,!1,!1,n),a=4),t.scopeId&&!t.slotted&&(a=5),o.splice(a),e.codegenNode=qe(t.helper(Nd),o,n)}};function A_(e,t){let r='"default"',n;const i=[];for(let s=0;s0){const{props:s,directives:o}=tg(e,t,i,!1,!1);n=s,o.length&&t.onError(Ae(36,o[0].loc))}return{slotName:r,slotProps:n}}const rg=(e,t,r,n)=>{const{loc:i,modifiers:s,arg:o}=e;!e.exp&&!s.length&&r.onError(Ae(35,i));let a;if(o.type===4)if(o.isStatic){let c=o.content;c.startsWith("vue:")&&(c=`vnode-${c.slice(4)}`);const p=t.tagType!==0||c.startsWith("vnode")||!/[A-Z]/.test(c)?Tn(Te(c)):`on:${c}`;a=te(p,!0,o.loc)}else a=Vt([`${r.helperString(al)}(`,o,")"]);else a=o,a.children.unshift(`${r.helperString(al)}(`),a.children.push(")");let l=e.exp;l&&!l.content.trim()&&(l=void 0);let u=r.cacheHandlers&&!l&&!r.inVOnce;if(l){const c=qd(l),p=!(c||TS(l)),h=l.content.includes(";");(p||u&&c)&&(l=Vt([`${p?"$event":"(...args)"} => ${h?"{":"("}`,l,h?"}":")"]))}let f={props:[$e(a,l||te("() => {}",!1,i))]};return n&&(f=n(f)),u&&(f.props[0].value=r.cache(f.props[0].value)),f.props.forEach(c=>c.key.isHandlerKey=!0),f},C_=(e,t,r)=>{const{modifiers:n,loc:i}=e,s=e.arg;let{exp:o}=e;return o&&o.type===4&&!o.content.trim()&&(o=void 0),s.type!==4?(s.children.unshift("("),s.children.push(') || ""')):s.isStatic||(s.content=s.content?`${s.content} || ""`:'""'),n.some(a=>a.content==="camel")&&(s.type===4?s.isStatic?s.content=Te(s.content):s.content=`${r.helperString(ol)}(${s.content})`:(s.children.unshift(`${r.helperString(ol)}(`),s.children.push(")"))),r.inSSR||(n.some(a=>a.content==="prop")&&Wf(s,"."),n.some(a=>a.content==="attr")&&Wf(s,"^")),{props:[$e(s,o)]}},Wf=(e,t)=>{e.type===4?e.isStatic?e.content=t+e.content:e.content=`\`${t}\${${e.content}}\``:(e.children.unshift(`'${t}' + (`),e.children.push(")"))},O_=(e,t)=>{if(e.type===0||e.type===1||e.type===11||e.type===10)return()=>{const r=e.children;let n,i=!1;for(let s=0;ss.type===7&&!t.directiveTransforms[s.name])&&e.tag!=="template")))for(let s=0;s{if(e.type===1&&It(e,"once",!0))return Kf.has(e)||t.inVOnce||t.inSSR?void 0:(Kf.add(e),t.inVOnce=!0,t.helper(Ls),()=>{t.inVOnce=!1;const r=t.currentNode;r.codegenNode&&(r.codegenNode=t.cache(r.codegenNode,!0,!0))})},ng=(e,t,r)=>{const{exp:n,arg:i}=e;if(!n)return r.onError(Ae(41,e.loc)),ts();const s=n.loc.source.trim(),o=n.type===4?n.content:s,a=r.bindingMetadata[s];if(a==="props"||a==="props-aliased")return r.onError(Ae(44,n.loc)),ts();if(!o.trim()||!qd(n))return r.onError(Ae(42,n.loc)),ts();const l=i||te("modelValue",!0),u=i?dt(i)?`onUpdate:${Te(i.content)}`:Vt(['"onUpdate:" + ',i]):"onUpdate:modelValue";let f;const c=r.isTS?"($event: any)":"$event";f=Vt([`${c} => ((`,n,") = $event)"]);const p=[$e(l,e.exp),$e(u,f)];if(e.modifiers.length&&t.tagType===1){const h=e.modifiers.map(m=>m.content).map(m=>(vc(m)?m:JSON.stringify(m))+": true").join(", "),d=i?dt(i)?`${i.content}Modifiers`:Vt([i,' + "Modifiers"']):"modelModifiers";p.push($e(d,te(`{ ${h} }`,!1,e.loc,2)))}return ts(p)};function ts(e=[]){return{props:e}}const I_=/[\w).+\-_$\]]/,R_=(e,t)=>{tn("COMPILER_FILTERS",t)&&(e.type===5?js(e.content,t):e.type===1&&e.props.forEach(r=>{r.type===7&&r.name!=="for"&&r.exp&&js(r.exp,t)}))};function js(e,t){if(e.type===4)Gf(e,t);else for(let r=0;r=0&&(g=r.charAt(_),g===" ");_--);(!g||!I_.test(g))&&(o=!0)}}d===void 0?d=r.slice(0,h).trim():f!==0&&S();function S(){m.push(r.slice(f,h).trim()),f=h+1}if(m.length){for(h=0;h{if(e.type===1){const r=It(e,"memo");return!r||zf.has(e)||t.inSSR?void 0:(zf.add(e),()=>{const n=e.codegenNode||t.currentNode.codegenNode;n&&n.type===13&&(e.tagType!==1&&mc(n,t),e.codegenNode=qe(t.helper(gc),[r.exp,Mn(void 0,n),"_cache",String(t.cached.length)]),t.cached.push(null))})}},M_=(e,t)=>{if(e.type===1){for(const r of e.props)if(r.type===7&&r.name==="bind"&&(!r.exp||r.exp.type===4&&!r.exp.content.trim())&&r.arg){const n=r.arg;if(n.type!==4||!n.isStatic)t.onError(Ae(52,n.loc)),r.exp=te("",!0,n.loc);else{const i=Te(n.content);(Ld.test(i[0])||i[0]==="-")&&(r.exp=te(i,!1,n.loc))}}}};function F_(e){return[[M_,x_,u_,$_,d_,R_,P_,S_,y_,O_],{on:rg,bind:C_,model:ng}]}function D_(e,t={}){const r=t.onError||yc,n=t.mode==="module";t.prefixIdentifiers===!0?r(Ae(47)):n&&r(Ae(48));const i=!1;t.cacheHandlers&&r(Ae(49)),t.scopeId&&!n&&r(Ae(50));const s=oe({},t,{prefixIdentifiers:i}),o=ee(e)?jS(e,s):e,[a,l]=F_();return KS(o,oe({},s,{nodeTransforms:[...a,...t.nodeTransforms||[]],directiveTransforms:oe({},l,t.directiveTransforms||{})})),QS(o,s)}const L_=()=>({props:[]});const ig=Symbol(""),sg=Symbol(""),og=Symbol(""),ag=Symbol(""),dl=Symbol(""),lg=Symbol(""),cg=Symbol(""),fg=Symbol(""),ug=Symbol(""),hg=Symbol("");pS({[ig]:"vModelRadio",[sg]:"vModelCheckbox",[og]:"vModelText",[ag]:"vModelSelect",[dl]:"vModelDynamic",[lg]:"withModifiers",[cg]:"withKeys",[fg]:"vShow",[ug]:"Transition",[hg]:"TransitionGroup"});let yn;function k_(e,t=!1){return yn||(yn=document.createElement("div")),t?(yn.innerHTML=`
    `,yn.children[0].getAttribute("foo")):(yn.innerHTML=e,yn.textContent)}const q_={parseMode:"html",isVoidTag:xm,isNativeTag:e=>Am(e)||Cm(e)||Om(e),isPreTag:e=>e==="pre",isIgnoreNewlineTag:e=>e==="pre"||e==="textarea",decodeEntities:k_,isBuiltInComponent:e=>{if(e==="Transition"||e==="transition")return ug;if(e==="TransitionGroup"||e==="transition-group")return hg},getNamespace(e,t,r){let n=t?t.ns:r;if(t&&n===2)if(t.tag==="annotation-xml"){if(e==="svg")return 1;t.props.some(i=>i.type===6&&i.name==="encoding"&&i.value!=null&&(i.value.content==="text/html"||i.value.content==="application/xhtml+xml"))&&(n=0)}else/^m(?:[ions]|text)$/.test(t.tag)&&e!=="mglyph"&&e!=="malignmark"&&(n=0);else t&&n===1&&(t.tag==="foreignObject"||t.tag==="desc"||t.tag==="title")&&(n=0);if(n===0){if(e==="svg")return 1;if(e==="math")return 2}return n}},B_=e=>{e.type===1&&e.props.forEach((t,r)=>{t.type===6&&t.name==="style"&&t.value&&(e.props[r]={type:7,name:"bind",arg:te("style",!0,t.loc),exp:H_(t.value.content,t.loc),modifiers:[],loc:t.loc})})},H_=(e,t)=>{const r=Oh(e);return te(JSON.stringify(r),!1,t,3)};function Fr(e,t){return Ae(e,t)}const j_=(e,t,r)=>{const{exp:n,loc:i}=e;return n||r.onError(Fr(53,i)),t.children.length&&(r.onError(Fr(54,i)),t.children.length=0),{props:[$e(te("innerHTML",!0,i),n||te("",!0))]}},U_=(e,t,r)=>{const{exp:n,loc:i}=e;return n||r.onError(Fr(55,i)),t.children.length&&(r.onError(Fr(56,i)),t.children.length=0),{props:[$e(te("textContent",!0),n?Tt(n,r)>0?n:qe(r.helperString(mo),[n],i):te("",!0))]}},V_=(e,t,r)=>{const n=ng(e,t,r);if(!n.props.length||t.tagType===1)return n;e.arg&&r.onError(Fr(58,e.arg.loc));const{tag:i}=t,s=r.isCustomElement(i);if(i==="input"||i==="textarea"||i==="select"||s){let o=og,a=!1;if(i==="input"||s){const l=yo(t,"type");if(l){if(l.type===7)o=dl;else if(l.value)switch(l.value.content){case"radio":o=ig;break;case"checkbox":o=sg;break;case"file":a=!0,r.onError(Fr(59,e.loc));break}}else PS(t)&&(o=dl)}else i==="select"&&(o=ag);a||(n.needRuntime=r.helper(o))}else r.onError(Fr(57,e.loc));return n.props=n.props.filter(o=>!(o.key.type===4&&o.key.content==="modelValue")),n},W_=At("passive,once,capture"),K_=At("stop,prevent,self,ctrl,shift,alt,meta,exact,middle"),G_=At("left,right"),pg=At("onkeyup,onkeydown,onkeypress"),z_=(e,t,r,n)=>{const i=[],s=[],o=[];for(let a=0;adt(e)&&e.content.toLowerCase()==="onclick"?te(t,!0):e.type!==4?Vt(["(",e,`) === "onClick" ? "${t}" : (`,e,")"]):e,J_=(e,t,r)=>rg(e,t,r,n=>{const{modifiers:i}=e;if(!i.length)return n;let{key:s,value:o}=n.props[0];const{keyModifiers:a,nonKeyModifiers:l,eventOptionModifiers:u}=z_(s,i,r,e.loc);if(l.includes("right")&&(s=Jf(s,"onContextmenu")),l.includes("middle")&&(s=Jf(s,"onMouseup")),l.length&&(o=qe(r.helper(lg),[o,JSON.stringify(l)])),a.length&&(!dt(s)||pg(s.content.toLowerCase()))&&(o=qe(r.helper(cg),[o,JSON.stringify(a)])),u.length){const f=u.map(cn).join("");s=dt(s)?te(`${s.content}${f}`,!0):Vt(["(",s,`) + "${f}"`])}return{props:[$e(s,o)]}}),Q_=(e,t,r)=>{const{exp:n,loc:i}=e;return n||r.onError(Fr(61,i)),{props:[],needRuntime:r.helper(fg)}},X_=(e,t)=>{e.type===1&&e.tagType===0&&(e.tag==="script"||e.tag==="style")&&t.removeNode()},Y_=[B_],Z_={cloak:L_,html:j_,text:U_,model:V_,on:J_,show:Q_};function e0(e,t={}){return D_(e,oe({},q_,t,{nodeTransforms:[X_,...Y_,...t.nodeTransforms||[]],directiveTransforms:oe({},Z_,t.directiveTransforms||{}),transformHoist:null}))}const Qf=Object.create(null);function t0(e,t){if(!ee(e))if(e.nodeType)e=e.innerHTML;else return Qe;const r=gm(e,t),n=Qf[r];if(n)return n;if(e[0]==="#"){const a=document.querySelector(e);e=a?a.innerHTML:""}const i=oe({hoistStatic:!0,onError:void 0,onWarn:Qe},t);!i.isCustomElement&&typeof customElements<"u"&&(i.isCustomElement=a=>!!customElements.get(a));const{code:s}=e0(e,i),o=new Function("Vue",s)(aS);return o._rc=!0,Qf[r]=o}td(t0);async function r0(e,t){for(const r of Array.isArray(e)?e:[e]){const n=t[r];if(!(typeof n>"u"))return typeof n=="function"?n():n}throw new Error(`Page not found: ${e}`)}var dg=typeof global=="object"&&global&&global.Object===Object&&global,n0=typeof self=="object"&&self&&self.Object===Object&&self,Xt=dg||n0||Function("return this")(),Qt=Xt.Symbol,gg=Object.prototype,i0=gg.hasOwnProperty,s0=gg.toString,Xn=Qt?Qt.toStringTag:void 0;function o0(e){var t=i0.call(e,Xn),r=e[Xn];try{e[Xn]=void 0;var n=!0}catch{}var i=s0.call(e);return n&&(t?e[Xn]=r:delete e[Xn]),i}var a0=Object.prototype,l0=a0.toString;function c0(e){return l0.call(e)}var f0="[object Null]",u0="[object Undefined]",Xf=Qt?Qt.toStringTag:void 0;function Wn(e){return e==null?e===void 0?u0:f0:Xf&&Xf in Object(e)?o0(e):c0(e)}function qr(e){return e!=null&&typeof e=="object"}var h0="[object Symbol]";function _c(e){return typeof e=="symbol"||qr(e)&&Wn(e)==h0}function p0(e,t){for(var r=-1,n=e==null?0:e.length,i=Array(n);++r-1&&e%1==0&&e-1&&e%1==0&&e<=L0}function k0(e){return e!=null&&Tc(e.length)&&!yg(e)}var q0=Object.prototype;function bg(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||q0;return e===r}function B0(e,t){for(var r=-1,n=Array(e);++r-1}function Gw(e,t){var r=this.__data__,n=So(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}function vr(e){var t=-1,r=e==null?0:e.length;for(this.clear();++ta))return!1;var u=s.get(e),f=s.get(t);if(u&&f)return u==t&&f==e;var c=-1,p=!0,h=r&j1?new Ws:void 0;for(s.set(e,t),s.set(t,e);++c":">",'"':""","'":"'"},dT=cE(pT),$g=/[&<>"']/g,gT=RegExp($g.source);function mT(e){return e=Ag(e),e&&gT.test(e)?e.replace($g,dT):e}var yT=Object.prototype,vT=yT.hasOwnProperty;function bT(e,t){return e!=null&&vT.call(e,t)}function Mg(e,t){return e!=null&&hT(e,t,bT)}function Ks(e,t){return Ng(e,t)}function ST(e,t,r,n){if(!Ln(e))return e;t=Cc(t,e);for(var i=-1,s=t.length,o=s-1,a=e;a!=null&&++i-1e3&&A<1e3||O.call(/e/,x))return x;var fe=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof A=="number"){var ye=A<0?-C(-A):C(A);if(ye!==A){var we=String(ye),ie=g.call(x,we.length+1);return y.call(we,fe,"$&_")+"."+y.call(y.call(ie,/([0-9]{3})/g,"$&_"),/_$/,"")}}return y.call(x,fe,"$&_")}var re=TT,Re=re.custom,Me=w(Re)?Re:null,Fe={__proto__:null,double:'"',single:"'"},Lt={__proto__:null,double:/(["\\])/g,single:/(['\\])/g};Jo=function A(x,fe,ye,we){var ie=fe||{};if($(ie,"quoteStyle")&&!$(Fe,ie.quoteStyle))throw new TypeError('option "quoteStyle" must be "single" or "double"');if($(ie,"maxStringLength")&&(typeof ie.maxStringLength=="number"?ie.maxStringLength<0&&ie.maxStringLength!==1/0:ie.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var Sr=$(ie,"customInspect")?ie.customInspect:!0;if(typeof Sr!="boolean"&&Sr!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if($(ie,"indent")&&ie.indent!==null&&ie.indent!==" "&&!(parseInt(ie.indent,10)===ie.indent&&ie.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if($(ie,"numericSeparator")&&typeof ie.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var jr=ie.numericSeparator;if(typeof x>"u")return"undefined";if(x===null)return"null";if(typeof x=="boolean")return x?"true":"false";if(typeof x=="string")return se(x,ie);if(typeof x=="number"){if(x===0)return 1/0/x>0?"0":"-0";var _t=String(x);return jr?k(x,_t):_t}if(typeof x=="bigint"){var _r=String(x)+"n";return jr?k(x,_r):_r}var Po=typeof ie.depth>"u"?5:ie.depth;if(typeof ye>"u"&&(ye=0),ye>=Po&&Po>0&&typeof x=="object")return bt(x)?"[Array]":"[Object]";var pn=it(ie,ye);if(typeof we>"u")we=[];else if(H(we,x)>=0)return"[Circular]";function qt(dn,Bi,lm){if(Bi&&(we=P.call(we),we.push(Bi)),lm){var Bc={depth:ie.depth};return $(ie,"quoteStyle")&&(Bc.quoteStyle=ie.quoteStyle),A(dn,Bc,ye+1,we)}return A(dn,ie,ye+1,we)}if(typeof x=="function"&&!Ne(x)){var $c=j(x),Mc=Hr(x,qt);return"[Function"+($c?": "+$c:" (anonymous)")+"]"+(Mc.length>0?" { "+I.call(Mc,", ")+" }":"")}if(w(x)){var Fc=W?y.call(String(x),/^(Symbol\(.*\))_[^)]*$/,"$1"):q.call(x);return typeof x=="object"&&!W?ce(Fc):Fc}if(Z(x)){for(var Gn="<"+E.call(String(x.nodeName)),Ao=x.attributes||[],qi=0;qi",Gn}if(bt(x)){if(x.length===0)return"[]";var Co=Hr(x,qt);return pn&&!St(Co)?"["+Yt(Co,pn)+"]":"[ "+I.call(Co,", ")+" ]"}if(ne(x)){var Oo=Hr(x,qt);return!("cause"in Error.prototype)&&"cause"in x&&!U.call(x,"cause")?"{ ["+String(x)+"] "+I.call(N.call("[cause]: "+qt(x.cause),Oo),", ")+" }":Oo.length===0?"["+String(x)+"]":"{ ["+String(x)+"] "+I.call(Oo,", ")+" }"}if(typeof x=="object"&&Sr){if(Me&&typeof x[Me]=="function"&&re)return re(x,{depth:Po-ye});if(Sr!=="symbol"&&typeof x.inspect=="function")return x.inspect()}if(B(x)){var Dc=[];return n&&n.call(x,function(dn,Bi){Dc.push(qt(Bi,x,!0)+" => "+qt(dn,x))}),De("Map",r.call(x),Dc,pn)}if(V(x)){var Lc=[];return a&&a.call(x,function(dn){Lc.push(qt(dn,x))}),De("Set",o.call(x),Lc,pn)}if(L(x))return je("WeakMap");if(Q(x))return je("WeakSet");if(J(x))return je("WeakRef");if(ge(x))return ce(qt(Number(x)));if(R(x))return ce(qt(M.call(x)));if(b(x))return ce(d.call(x));if(_e(x))return ce(qt(String(x)));if(typeof window<"u"&&x===window)return"{ [object Window] }";if(typeof globalThis<"u"&&x===globalThis||typeof Eu<"u"&&x===Eu)return"{ [object globalThis] }";if(!Ot(x)&&!Ne(x)){var xo=Hr(x,qt),kc=z?z(x)===Object.prototype:x instanceof Object||x.constructor===Object,Io=x instanceof Object?"":"null prototype",qc=!kc&&G&&Object(x)===x&&G in x?g.call(F(x),8,-1):Io?"Object":"",am=kc||typeof x.constructor!="function"?"":x.constructor.name?x.constructor.name+" ":"",Ro=am+(qc||Io?"["+I.call(N.call([],qc||[],Io||[]),": ")+"] ":"");return xo.length===0?Ro+"{}":pn?Ro+"{"+Yt(xo,pn)+"}":Ro+"{ "+I.call(xo,", ")+" }"}return String(x)};function Wt(A,x,fe){var ye=fe.quoteStyle||x,we=Fe[ye];return we+A+we}function kt(A){return y.call(String(A),/"/g,""")}function He(A){return!G||!(typeof A=="object"&&(G in A||typeof A[G]<"u"))}function bt(A){return F(A)==="[object Array]"&&He(A)}function Ot(A){return F(A)==="[object Date]"&&He(A)}function Ne(A){return F(A)==="[object RegExp]"&&He(A)}function ne(A){return F(A)==="[object Error]"&&He(A)}function _e(A){return F(A)==="[object String]"&&He(A)}function ge(A){return F(A)==="[object Number]"&&He(A)}function b(A){return F(A)==="[object Boolean]"&&He(A)}function w(A){if(W)return A&&typeof A=="object"&&A instanceof Symbol;if(typeof A=="symbol")return!0;if(!A||typeof A!="object"||!q)return!1;try{return q.call(A),!0}catch{}return!1}function R(A){if(!A||typeof A!="object"||!M)return!1;try{return M.call(A),!0}catch{}return!1}var D=Object.prototype.hasOwnProperty||function(A){return A in this};function $(A,x){return D.call(A,x)}function F(A){return m.call(A)}function j(A){if(A.name)return A.name;var x=_.call(S.call(A),/^function\s*([\w$]+)/);return x?x[1]:null}function H(A,x){if(A.indexOf)return A.indexOf(x);for(var fe=0,ye=A.length;fex.maxStringLength){var fe=A.length-x.maxStringLength,ye="... "+fe+" more character"+(fe>1?"s":"");return se(g.call(A,0,x.maxStringLength),x)+ye}var we=Lt[x.quoteStyle||"single"];we.lastIndex=0;var ie=y.call(y.call(A,we,"\\$1"),/[\x00-\x1f]/g,ve);return Wt(ie,"single",x)}function ve(A){var x=A.charCodeAt(0),fe={8:"b",9:"t",10:"n",12:"f",13:"r"}[x];return fe?"\\"+fe:"\\x"+(x<16?"0":"")+v.call(x.toString(16))}function ce(A){return"Object("+A+")"}function je(A){return A+" { ? }"}function De(A,x,fe,ye){var we=ye?Yt(fe,ye):I.call(fe,", ");return A+" ("+x+") {"+we+"}"}function St(A){for(var x=0;x=0)return!1;return!0}function it(A,x){var fe;if(A.indent===" ")fe=" ";else if(typeof A.indent=="number"&&A.indent>0)fe=I.call(Array(A.indent+1)," ");else return null;return{base:fe,prev:I.call(Array(x+1),fe)}}function Yt(A,x){if(A.length===0)return"";var fe=` `+x.prev+x.base;return fe+I.call(A,","+fe)+` -`+x.prev}function Hr(A,x){var fe=bt(A),ye=[];if(fe){ye.length=A.length;for(var we=0;we"u"||!N?e:N(Uint8Array),W={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?e:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?e:ArrayBuffer,"%ArrayIteratorPrototype%":O&&N?N([][Symbol.iterator]()):e,"%AsyncFromSyncIteratorPrototype%":e,"%AsyncFunction%":T,"%AsyncGenerator%":T,"%AsyncGeneratorFunction%":T,"%AsyncIteratorPrototype%":T,"%Atomics%":typeof Atomics>"u"?e:Atomics,"%BigInt%":typeof BigInt>"u"?e:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?e:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?e:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?e:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":r,"%eval%":eval,"%EvalError%":n,"%Float16Array%":typeof Float16Array>"u"?e:Float16Array,"%Float32Array%":typeof Float32Array>"u"?e:Float32Array,"%Float64Array%":typeof Float64Array>"u"?e:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?e:FinalizationRegistry,"%Function%":S,"%GeneratorFunction%":T,"%Int8Array%":typeof Int8Array>"u"?e:Int8Array,"%Int16Array%":typeof Int16Array>"u"?e:Int16Array,"%Int32Array%":typeof Int32Array>"u"?e:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":O&&N?N(N([][Symbol.iterator]())):e,"%JSON%":typeof JSON=="object"?JSON:e,"%Map%":typeof Map>"u"?e:Map,"%MapIteratorPrototype%":typeof Map>"u"||!O||!N?e:N(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":t,"%Object.getOwnPropertyDescriptor%":g,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?e:Promise,"%Proxy%":typeof Proxy>"u"?e:Proxy,"%RangeError%":i,"%ReferenceError%":s,"%Reflect%":typeof Reflect>"u"?e:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?e:Set,"%SetIteratorPrototype%":typeof Set>"u"||!O||!N?e:N(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?e:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":O&&N?N(""[Symbol.iterator]()):e,"%Symbol%":O?Symbol:e,"%SyntaxError%":o,"%ThrowTypeError%":E,"%TypedArray%":q,"%TypeError%":a,"%Uint8Array%":typeof Uint8Array>"u"?e:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?e:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?e:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?e:Uint32Array,"%URIError%":l,"%WeakMap%":typeof WeakMap>"u"?e:WeakMap,"%WeakRef%":typeof WeakRef>"u"?e:WeakRef,"%WeakSet%":typeof WeakSet>"u"?e:WeakSet,"%Function.prototype.call%":M,"%Function.prototype.apply%":C,"%Object.defineProperty%":y,"%Object.getPrototypeOf%":I,"%Math.abs%":u,"%Math.floor%":f,"%Math.max%":c,"%Math.min%":p,"%Math.pow%":h,"%Math.round%":d,"%Math.sign%":m,"%Reflect.getPrototypeOf%":P};if(N)try{null.error}catch(Ne){var G=N(N(Ne));W["%Error.prototype%"]=G}var U=function Ne(ne){var _e;if(ne==="%AsyncFunction%")_e=_("async function () {}");else if(ne==="%GeneratorFunction%")_e=_("function* () {}");else if(ne==="%AsyncGeneratorFunction%")_e=_("async function* () {}");else if(ne==="%AsyncGenerator%"){var ge=Ne("%AsyncGeneratorFunction%");ge&&(_e=ge.prototype)}else if(ne==="%AsyncIteratorPrototype%"){var b=Ne("%AsyncGenerator%");b&&N&&(_e=N(b.prototype))}return W[ne]=_e,_e},z={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},k=wo(),re=JT(),Re=k.call(M,Array.prototype.concat),Me=k.call(C,Array.prototype.splice),Fe=k.call(M,String.prototype.replace),Lt=k.call(M,String.prototype.slice),Wt=k.call(M,RegExp.prototype.exec),kt=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,He=/\\(\\)?/g,bt=function(ne){var _e=Lt(ne,0,1),ge=Lt(ne,-1);if(_e==="%"&&ge!=="%")throw new o("invalid intrinsic syntax, expected closing `%`");if(ge==="%"&&_e!=="%")throw new o("invalid intrinsic syntax, expected opening `%`");var b=[];return Fe(ne,kt,function(w,R,D,$){b[b.length]=D?Fe($,He,"$1"):R||w}),b},Ot=function(ne,_e){var ge=ne,b;if(re(z,ge)&&(b=z[ge],ge="%"+b[0]+"%"),re(W,ge)){var w=W[ge];if(w===T&&(w=U(ge)),typeof w>"u"&&!_e)throw new a("intrinsic "+ne+" exists, but is not available. Please file an issue!");return{alias:b,name:ge,value:w}}throw new o("intrinsic "+ne+" does not exist!")};return xa=function(ne,_e){if(typeof ne!="string"||ne.length===0)throw new a("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof _e!="boolean")throw new a('"allowMissing" argument must be a boolean');if(Wt(/^%?[^%]*%?$/,ne)===null)throw new o("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var ge=bt(ne),b=ge.length>0?ge[0]:"",w=Ot("%"+b+"%",_e),R=w.name,D=w.value,$=!1,F=w.alias;F&&(b=F[0],Me(ge,Re([0,1],F)));for(var j=1,H=!0;j=ge.length){var V=g(D,B);H=!!V,H&&"get"in V&&!("originalValue"in V.get)?D=V.get:D=D[B]}else H=re(D,B),D=D[B];H&&!$&&(W[R]=D)}}return D},xa}var Ia,oh;function Hg(){if(oh)return Ia;oh=1;var e=Rc(),t=Bg(),r=t([e("%String.prototype.indexOf%")]);return Ia=function(i,s){var o=e(i,!!s);return typeof o=="function"&&r(i,".prototype.")>-1?t([o]):o},Ia}var Ra,ah;function jg(){if(ah)return Ra;ah=1;var e=Rc(),t=Hg(),r=_o(),n=Kn(),i=e("%Map%",!0),s=t("Map.prototype.get",!0),o=t("Map.prototype.set",!0),a=t("Map.prototype.has",!0),l=t("Map.prototype.delete",!0),u=t("Map.prototype.size",!0);return Ra=!!i&&function(){var c,p={assert:function(h){if(!p.has(h))throw new n("Side channel does not contain "+r(h))},delete:function(h){if(c){var d=l(c,h);return u(c)===0&&(c=void 0),d}return!1},get:function(h){if(c)return s(c,h)},has:function(h){return c?a(c,h):!1},set:function(h,d){c||(c=new i),o(c,h,d)}};return p},Ra}var Na,lh;function QT(){if(lh)return Na;lh=1;var e=Rc(),t=Hg(),r=_o(),n=jg(),i=Kn(),s=e("%WeakMap%",!0),o=t("WeakMap.prototype.get",!0),a=t("WeakMap.prototype.set",!0),l=t("WeakMap.prototype.has",!0),u=t("WeakMap.prototype.delete",!0);return Na=s?function(){var c,p,h={assert:function(d){if(!h.has(d))throw new i("Side channel does not contain "+r(d))},delete:function(d){if(s&&d&&(typeof d=="object"||typeof d=="function")){if(c)return u(c,d)}else if(n&&p)return p.delete(d);return!1},get:function(d){return s&&d&&(typeof d=="object"||typeof d=="function")&&c?o(c,d):p&&p.get(d)},has:function(d){return s&&d&&(typeof d=="object"||typeof d=="function")&&c?l(c,d):!!p&&p.has(d)},set:function(d,m){s&&d&&(typeof d=="object"||typeof d=="function")?(c||(c=new s),a(c,d,m)):n&&(p||(p=n()),p.set(d,m))}};return h}:n,Na}var $a,ch;function XT(){if(ch)return $a;ch=1;var e=Kn(),t=_o(),r=PT(),n=jg(),i=QT(),s=i||n||r;return $a=function(){var a,l={assert:function(u){if(!l.has(u))throw new e("Side channel does not contain "+t(u))},delete:function(u){return!!a&&a.delete(u)},get:function(u){return a&&a.get(u)},has:function(u){return!!a&&a.has(u)},set:function(u,f){a||(a=s()),a.set(u,f)}};return l},$a}var Ma,fh;function Nc(){if(fh)return Ma;fh=1;var e=String.prototype.replace,t=/%20/g,r={RFC1738:"RFC1738",RFC3986:"RFC3986"};return Ma={default:r.RFC3986,formatters:{RFC1738:function(n){return e.call(n,t,"+")},RFC3986:function(n){return String(n)}},RFC1738:r.RFC1738,RFC3986:r.RFC3986},Ma}var Fa,uh;function Ug(){if(uh)return Fa;uh=1;var e=Nc(),t=Object.prototype.hasOwnProperty,r=Array.isArray,n=(function(){for(var S=[],_=0;_<256;++_)S.push("%"+((_<16?"0":"")+_.toString(16)).toUpperCase());return S})(),i=function(_){for(;_.length>1;){var g=_.pop(),y=g.obj[g.prop];if(r(y)){for(var v=[],E=0;E=u?O.slice(I,I+u):O,C=[],M=0;M=48&&T<=57||T>=65&&T<=90||T>=97&&T<=122||E===e.RFC1738&&(T===40||T===41)){C[C.length]=P.charAt(M);continue}if(T<128){C[C.length]=n[T];continue}if(T<2048){C[C.length]=n[192|T>>6]+n[128|T&63];continue}if(T<55296||T>=57344){C[C.length]=n[224|T>>12]+n[128|T>>6&63]+n[128|T&63];continue}M+=1,T=65536+((T&1023)<<10|P.charCodeAt(M)&1023),C[C.length]=n[240|T>>18]+n[128|T>>12&63]+n[128|T>>6&63]+n[128|T&63]}N+=C.join("")}return N},c=function(_){for(var g=[{obj:{o:_},prop:"o"}],y=[],v=0;v"u"&&(Re=0)}if(typeof P=="function"?k=P(_,k):k instanceof Date?k=T(k):g==="comma"&&s(k)&&(k=t.maybeMap(k,function(R){return R instanceof Date?T(R):R})),k===null){if(E)return I&&!G?I(_,f.encoder,U,"key",q):_;k=""}if(c(k)||t.isBuffer(k)){if(I){var Lt=G?_:I(_,f.encoder,U,"key",q);return[W(Lt)+"="+W(I(k,f.encoder,U,"value",q))]}return[W(_)+"="+W(String(k))]}var Wt=[];if(typeof k>"u")return Wt;var kt;if(g==="comma"&&s(k))G&&I&&(k=t.maybeMap(k,I)),kt=[{value:k.length>0?k.join(",")||null:void 0}];else if(s(P))kt=P;else{var He=Object.keys(k);kt=C?He.sort(C):He}var bt=N?String(_).replace(/\./g,"%2E"):String(_),Ot=y&&s(k)&&k.length===1?bt+"[]":bt;if(v&&s(k)&&k.length===0)return Ot+"[]";for(var Ne=0;Ne"u"?S.encodeDotInKeys===!0?!0:f.allowDots:!!S.allowDots;return{addQueryPrefix:typeof S.addQueryPrefix=="boolean"?S.addQueryPrefix:f.addQueryPrefix,allowDots:O,allowEmptyArrays:typeof S.allowEmptyArrays=="boolean"?!!S.allowEmptyArrays:f.allowEmptyArrays,arrayFormat:E,charset:_,charsetSentinel:typeof S.charsetSentinel=="boolean"?S.charsetSentinel:f.charsetSentinel,commaRoundTrip:!!S.commaRoundTrip,delimiter:typeof S.delimiter>"u"?f.delimiter:S.delimiter,encode:typeof S.encode=="boolean"?S.encode:f.encode,encodeDotInKeys:typeof S.encodeDotInKeys=="boolean"?S.encodeDotInKeys:f.encodeDotInKeys,encoder:typeof S.encoder=="function"?S.encoder:f.encoder,encodeValuesOnly:typeof S.encodeValuesOnly=="boolean"?S.encodeValuesOnly:f.encodeValuesOnly,filter:v,format:g,formatter:y,serializeDate:typeof S.serializeDate=="function"?S.serializeDate:f.serializeDate,skipNulls:typeof S.skipNulls=="boolean"?S.skipNulls:f.skipNulls,sort:typeof S.sort=="function"?S.sort:null,strictNullHandling:typeof S.strictNullHandling=="boolean"?S.strictNullHandling:f.strictNullHandling}};return Da=function(m,S){var _=m,g=d(S),y,v;typeof g.filter=="function"?(v=g.filter,_=v("",_)):s(g.filter)&&(v=g.filter,y=v);var E=[];if(typeof _!="object"||_===null)return"";var O=i[g.arrayFormat],N=O==="comma"&&g.commaRoundTrip;y||(y=Object.keys(_)),g.sort&&y.sort(g.sort);for(var I=e(),P=0;P0?q+T:""},Da}var La,ph;function ZT(){if(ph)return La;ph=1;var e=Ug(),t=Object.prototype.hasOwnProperty,r=Array.isArray,n={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:e.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictNullHandling:!1,throwOnLimitExceeded:!1},i=function(p){return p.replace(/&#(\d+);/g,function(h,d){return String.fromCharCode(parseInt(d,10))})},s=function(p,h,d){if(p&&typeof p=="string"&&h.comma&&p.indexOf(",")>-1)return p.split(",");if(h.throwOnLimitExceeded&&d>=h.arrayLimit)throw new RangeError("Array limit exceeded. Only "+h.arrayLimit+" element"+(h.arrayLimit===1?"":"s")+" allowed in an array.");return p},o="utf8=%26%2310003%3B",a="utf8=%E2%9C%93",l=function(h,d){var m={__proto__:null},S=d.ignoreQueryPrefix?h.replace(/^\?/,""):h;S=S.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var _=d.parameterLimit===1/0?void 0:d.parameterLimit,g=S.split(d.delimiter,d.throwOnLimitExceeded?_+1:_);if(d.throwOnLimitExceeded&&g.length>_)throw new RangeError("Parameter limit exceeded. Only "+_+" parameter"+(_===1?"":"s")+" allowed.");var y=-1,v,E=d.charset;if(d.charsetSentinel)for(v=0;v-1&&(C=r(C)?[C]:C);var M=t.call(m,P);M&&d.duplicates==="combine"?m[P]=e.combine(m[P],C):(!M||d.duplicates==="last")&&(m[P]=C)}return m},u=function(p,h,d,m){var S=0;if(p.length>0&&p[p.length-1]==="[]"){var _=p.slice(0,-1).join("");S=Array.isArray(h)&&h[_]?h[_].length:0}for(var g=m?h:s(h,d,S),y=p.length-1;y>=0;--y){var v,E=p[y];if(E==="[]"&&d.parseArrays)v=d.allowEmptyArrays&&(g===""||d.strictNullHandling&&g===null)?[]:e.combine([],g);else{v=d.plainObjects?{__proto__:null}:{};var O=E.charAt(0)==="["&&E.charAt(E.length-1)==="]"?E.slice(1,-1):E,N=d.decodeDotInKeys?O.replace(/%2E/g,"."):O,I=parseInt(N,10);!d.parseArrays&&N===""?v={0:g}:!isNaN(I)&&E!==N&&String(I)===N&&I>=0&&d.parseArrays&&I<=d.arrayLimit?(v=[],v[I]=g):N!=="__proto__"&&(v[N]=g)}g=v}return g},f=function(h,d,m,S){if(h){var _=m.allowDots?h.replace(/\.([^.[]+)/g,"[$1]"):h,g=/(\[[^[\]]*])/,y=/(\[[^[\]]*])/g,v=m.depth>0&&g.exec(_),E=v?_.slice(0,v.index):_,O=[];if(E){if(!m.plainObjects&&t.call(Object.prototype,E)&&!m.allowPrototypes)return;O.push(E)}for(var N=0;m.depth>0&&(v=y.exec(_))!==null&&N"u"?n.charset:h.charset,m=typeof h.duplicates>"u"?n.duplicates:h.duplicates;if(m!=="combine"&&m!=="first"&&m!=="last")throw new TypeError("The duplicates option must be either combine, first, or last");var S=typeof h.allowDots>"u"?h.decodeDotInKeys===!0?!0:n.allowDots:!!h.allowDots;return{allowDots:S,allowEmptyArrays:typeof h.allowEmptyArrays=="boolean"?!!h.allowEmptyArrays:n.allowEmptyArrays,allowPrototypes:typeof h.allowPrototypes=="boolean"?h.allowPrototypes:n.allowPrototypes,allowSparse:typeof h.allowSparse=="boolean"?h.allowSparse:n.allowSparse,arrayLimit:typeof h.arrayLimit=="number"?h.arrayLimit:n.arrayLimit,charset:d,charsetSentinel:typeof h.charsetSentinel=="boolean"?h.charsetSentinel:n.charsetSentinel,comma:typeof h.comma=="boolean"?h.comma:n.comma,decodeDotInKeys:typeof h.decodeDotInKeys=="boolean"?h.decodeDotInKeys:n.decodeDotInKeys,decoder:typeof h.decoder=="function"?h.decoder:n.decoder,delimiter:typeof h.delimiter=="string"||e.isRegExp(h.delimiter)?h.delimiter:n.delimiter,depth:typeof h.depth=="number"||h.depth===!1?+h.depth:n.depth,duplicates:m,ignoreQueryPrefix:h.ignoreQueryPrefix===!0,interpretNumericEntities:typeof h.interpretNumericEntities=="boolean"?h.interpretNumericEntities:n.interpretNumericEntities,parameterLimit:typeof h.parameterLimit=="number"?h.parameterLimit:n.parameterLimit,parseArrays:h.parseArrays!==!1,plainObjects:typeof h.plainObjects=="boolean"?h.plainObjects:n.plainObjects,strictDepth:typeof h.strictDepth=="boolean"?!!h.strictDepth:n.strictDepth,strictNullHandling:typeof h.strictNullHandling=="boolean"?h.strictNullHandling:n.strictNullHandling,throwOnLimitExceeded:typeof h.throwOnLimitExceeded=="boolean"?h.throwOnLimitExceeded:!1}};return La=function(p,h){var d=c(h);if(p===""||p===null||typeof p>"u")return d.plainObjects?{__proto__:null}:{};for(var m=typeof p=="string"?l(p,d):p,S=d.plainObjects?{__proto__:null}:{},_=Object.keys(m),g=0;g<_.length;++g){var y=_[g],v=f(y,m[y],d,typeof p=="string");S=e.merge(S,v,d)}return d.allowSparse===!0?S:e.compact(S)},La}var ka,dh;function eP(){if(dh)return ka;dh=1;var e=YT(),t=ZT(),r=Nc();return ka={formats:r,parse:t,stringify:e},ka}var gh=eP(),tP=class{constructor(e){this.config={},this.defaults=e}extend(e){return e&&(this.defaults={...this.defaults,...e}),this}replace(e){this.config=e}get(e){return Mg(this.config,e)?Dr(this.config,e):Dr(this.defaults,e)}set(e,t){typeof e=="string"?lr(this.config,e,t):Object.entries(e).forEach(([r,n])=>{lr(this.config,r,n)})}},qn=new tP({form:{recentlySuccessfulDuration:2e3},future:{preserveEqualProps:!1,useDataInertiaHeadAttribute:!1,useDialogForErrorModal:!1},prefetch:{cacheFor:3e4,hoverDelay:75}});function Sl(e,t){let r;return function(...n){clearTimeout(r),r=setTimeout(()=>e.apply(this,n),t)}}function Dt(e,t){return document.dispatchEvent(new CustomEvent(`inertia:${e}`,t))}var mh=e=>Dt("before",{cancelable:!0,detail:{visit:e}}),rP=e=>Dt("error",{detail:{errors:e}}),nP=e=>Dt("exception",{cancelable:!0,detail:{exception:e}}),iP=e=>Dt("finish",{detail:{visit:e}}),sP=e=>Dt("invalid",{cancelable:!0,detail:{response:e}}),oP=e=>Dt("beforeUpdate",{detail:{page:e}}),ui=e=>Dt("navigate",{detail:{page:e}}),aP=e=>Dt("progress",{detail:{progress:e}}),lP=e=>Dt("start",{detail:{visit:e}}),cP=e=>Dt("success",{detail:{page:e}}),fP=(e,t)=>Dt("prefetched",{detail:{fetchedAt:Date.now(),response:e.data,visit:t}}),uP=e=>Dt("prefetching",{detail:{visit:e}}),lt=class{static set(e,t){typeof window<"u"&&window.sessionStorage.setItem(e,JSON.stringify(t))}static get(e){if(typeof window<"u")return JSON.parse(window.sessionStorage.getItem(e)||"null")}static merge(e,t){const r=this.get(e);r===null?this.set(e,t):this.set(e,{...r,...t})}static remove(e){typeof window<"u"&&window.sessionStorage.removeItem(e)}static removeNested(e,t){const r=this.get(e);r!==null&&(delete r[t],this.set(e,r))}static exists(e){try{return this.get(e)!==null}catch{return!1}}static clear(){typeof window<"u"&&window.sessionStorage.clear()}};lt.locationVisitKey="inertiaLocationVisit";var hP=async e=>{if(typeof window>"u")throw new Error("Unable to encrypt history");const t=Vg(),r=await Wg(),n=await vP(r);if(!n)throw new Error("Unable to encrypt history");return await dP(t,n,e)},Bn={key:"historyKey",iv:"historyIv"},pP=async e=>{const t=Vg(),r=await Wg();if(!r)throw new Error("Unable to decrypt history");return await gP(t,r,e)},dP=async(e,t,r)=>{if(typeof window>"u")throw new Error("Unable to encrypt history");if(typeof window.crypto.subtle>"u")return console.warn("Encryption is not supported in this environment. SSL is required."),Promise.resolve(r);const n=new TextEncoder,i=JSON.stringify(r),s=new Uint8Array(i.length*3),o=n.encodeInto(i,s);return window.crypto.subtle.encrypt({name:"AES-GCM",iv:e},t,s.subarray(0,o.written))},gP=async(e,t,r)=>{if(typeof window.crypto.subtle>"u")return console.warn("Decryption is not supported in this environment. SSL is required."),Promise.resolve(r);const n=await window.crypto.subtle.decrypt({name:"AES-GCM",iv:e},t,r);return JSON.parse(new TextDecoder().decode(n))},Vg=()=>{const e=lt.get(Bn.iv);if(e)return new Uint8Array(e);const t=window.crypto.getRandomValues(new Uint8Array(12));return lt.set(Bn.iv,Array.from(t)),t},mP=async()=>typeof window.crypto.subtle>"u"?(console.warn("Encryption is not supported in this environment. SSL is required."),Promise.resolve(null)):window.crypto.subtle.generateKey({name:"AES-GCM",length:256},!0,["encrypt","decrypt"]),yP=async e=>{if(typeof window.crypto.subtle>"u")return console.warn("Encryption is not supported in this environment. SSL is required."),Promise.resolve();const t=await window.crypto.subtle.exportKey("raw",e);lt.set(Bn.key,Array.from(new Uint8Array(t)))},vP=async e=>{if(e)return e;const t=await mP();return t?(await yP(t),t):null},Wg=async()=>{const e=lt.get(Bn.key);return e?await window.crypto.subtle.importKey("raw",new Uint8Array(e),{name:"AES-GCM",length:256},!0,["encrypt","decrypt"]):null},Rt=class{static save(){he.saveScrollPositions(Array.from(this.regions()).map(e=>({top:e.scrollTop,left:e.scrollLeft})))}static regions(){return document.querySelectorAll("[scroll-region]")}static reset(){const e=typeof window<"u"?window.location.hash:null;e||window.scrollTo(0,0),this.regions().forEach(t=>{typeof t.scrollTo=="function"?t.scrollTo(0,0):(t.scrollTop=0,t.scrollLeft=0)}),this.save(),e&&setTimeout(()=>{const t=document.getElementById(e.slice(1));t?t.scrollIntoView():window.scrollTo(0,0)})}static restore(e){typeof window>"u"||window.requestAnimationFrame(()=>{this.restoreDocument(),this.restoreScrollRegions(e)})}static restoreScrollRegions(e){typeof window>"u"||this.regions().forEach((t,r)=>{const n=e[r];n&&(typeof t.scrollTo=="function"?t.scrollTo(n.left,n.top):(t.scrollTop=n.top,t.scrollLeft=n.left))})}static restoreDocument(){const e=he.getDocumentScrollPosition();window.scrollTo(e.left,e.top)}static onScroll(e){const t=e.target;typeof t.hasAttribute=="function"&&t.hasAttribute("scroll-region")&&this.save()}static onWindowScroll(){he.saveDocumentScrollPosition({top:window.scrollY,left:window.scrollX})}},bP=e=>typeof File<"u"&&e instanceof File||e instanceof Blob||typeof FileList<"u"&&e instanceof FileList&&e.length>0;function _l(e){return bP(e)||e instanceof FormData&&Array.from(e.values()).some(t=>_l(t))||typeof e=="object"&&e!==null&&Object.values(e).some(t=>_l(t))}var wl=e=>e instanceof FormData;function Kg(e,t=new FormData,r=null,n="brackets"){e=e||{};for(const i in e)Object.prototype.hasOwnProperty.call(e,i)&&zg(t,Gg(r,i,"indices"),e[i],n);return t}function Gg(e,t,r){return e?r==="brackets"?`${e}[]`:`${e}[${t}]`:t}function zg(e,t,r,n){if(Array.isArray(r))return Array.from(r.keys()).forEach(i=>zg(e,Gg(t,i.toString(),n),r[i],n));if(r instanceof Date)return e.append(t,r.toISOString());if(r instanceof File)return e.append(t,r,r.name);if(r instanceof Blob)return e.append(t,r);if(typeof r=="boolean")return e.append(t,r?"1":"0");if(typeof r=="string")return e.append(t,r);if(typeof r=="number")return e.append(t,`${r}`);if(r==null)return e.append(t,"");Kg(r,e,t,n)}function xr(e){return new URL(e.toString(),typeof window>"u"?void 0:window.location.toString())}var SP=(e,t,r,n,i)=>{let s=typeof e=="string"?xr(e):e;if((_l(t)||n)&&!wl(t)&&(t=Kg(t,new FormData,null,i)),wl(t))return[s,t];const[o,a]=_P(r,s,t,i);return[xr(o),a]};function _P(e,t,r,n="brackets"){const i=e==="get"&&!wl(r)&&Object.keys(r).length>0,s=wP(t.toString()),o=s||t.toString().startsWith("/")||t.toString()==="",a=!o&&!t.toString().startsWith("#")&&!t.toString().startsWith("?"),l=/^[.]{1,2}([/]|$)/.test(t.toString()),u=t.toString().includes("?")||i,f=t.toString().includes("#"),c=new URL(t.toString(),typeof window>"u"?"http://localhost":window.location.toString());if(i){const p={ignoreQueryPrefix:!0,parseArrays:!1};c.search=gh.stringify({...gh.parse(c.search,p),...r},{encodeValuesOnly:!0,arrayFormat:n})}return[[s?`${c.protocol}//${c.host}`:"",o?c.pathname:"",a?c.pathname.substring(l?0:1):"",u?c.search:"",f?c.hash:""].join(""),i?{}:r]}function Ks(e){return e=new URL(e.href),e.hash="",e}var yh=(e,t)=>{e.hash&&!t.hash&&Ks(e).href===t.href&&(t.hash=e.hash)},El=(e,t)=>Ks(e).href===Ks(t).href;function vh(e){return e!==null&&typeof e=="object"&&e!==void 0&&"url"in e&&"method"in e}function wP(e){return/^[a-z][a-z0-9+.-]*:\/\//i.test(e)}var EP=class{constructor(){this.componentId={},this.listeners=[],this.isFirstPageLoad=!0,this.cleared=!1,this.pendingDeferredProps=null}init({initialPage:e,swapComponent:t,resolveComponent:r}){return this.page=e,this.swapComponent=t,this.resolveComponent=r,this}set(e,{replace:t=!1,preserveScroll:r=!1,preserveState:n=!1,viewTransition:i=!1}={}){Object.keys(e.deferredProps||{}).length&&(this.pendingDeferredProps={deferredProps:e.deferredProps,component:e.component,url:e.url}),this.componentId={};const s=this.componentId;return e.clearHistory&&he.clear(),this.resolve(e.component).then(o=>{if(s!==this.componentId)return;e.rememberedState??(e.rememberedState={});const a=typeof window>"u",l=a?new URL(e.url):window.location,u=!a&&r?he.getScrollRegions():[];return t=t||El(xr(e.url),l),new Promise(f=>{t?he.replaceState(e,()=>f(null)):he.pushState(e,()=>f(null))}).then(()=>{const f=!this.isTheSame(e);return!f&&Object.keys(e.props.errors||{}).length>0&&(i=!1),this.page=e,this.cleared=!1,f&&this.fireEventsFor("newComponent"),this.isFirstPageLoad&&this.fireEventsFor("firstLoad"),this.isFirstPageLoad=!1,this.swap({component:o,page:e,preserveState:n,viewTransition:i}).then(()=>{r?window.requestAnimationFrame(()=>Rt.restoreScrollRegions(u)):Rt.reset(),this.pendingDeferredProps&&this.pendingDeferredProps.component===e.component&&this.pendingDeferredProps.url===e.url&&zr.fireInternalEvent("loadDeferredProps",this.pendingDeferredProps.deferredProps),this.pendingDeferredProps=null,t||ui(e)})})})}setQuietly(e,{preserveState:t=!1}={}){return this.resolve(e.component).then(r=>(this.page=e,this.cleared=!1,he.setCurrent(e),this.swap({component:r,page:e,preserveState:t,viewTransition:!1})))}clear(){this.cleared=!0}isCleared(){return this.cleared}get(){return this.page}merge(e){this.page={...this.page,...e}}setUrlHash(e){this.page.url.includes(e)||(this.page.url+=e)}remember(e){this.page.rememberedState=e}swap({component:e,page:t,preserveState:r,viewTransition:n}){const i=()=>this.swapComponent({component:e,page:t,preserveState:r});if(!n||!document?.startViewTransition)return i();const s=typeof n=="boolean"?()=>null:n;return new Promise(o=>{const a=document.startViewTransition(()=>i().then(o));s(a)})}resolve(e){return Promise.resolve(this.resolveComponent(e))}isTheSame(e){return this.page.component===e.component}on(e,t){return this.listeners.push({event:e,callback:t}),()=>{this.listeners=this.listeners.filter(r=>r.event!==e&&r.callback!==t)}}fireEventsFor(e){this.listeners.filter(t=>t.event===e).forEach(t=>t.callback())}},X=new EP,Jg=class{constructor(){this.items=[],this.processingPromise=null}add(e){return this.items.push(e),this.process()}process(){return this.processingPromise??(this.processingPromise=this.processNext().finally(()=>{this.processingPromise=null})),this.processingPromise}processNext(){const e=this.items.shift();return e?Promise.resolve(e()).then(()=>this.processNext()):Promise.resolve()}},ti=typeof window>"u",Yn=new Jg,bh=!ti&&/CriOS/.test(window.navigator.userAgent),TP=class{constructor(){this.rememberedState="rememberedState",this.scrollRegions="scrollRegions",this.preserveUrl=!1,this.current={},this.initialState=null}remember(e,t){this.replaceState({...X.get(),rememberedState:{...X.get()?.rememberedState??{},[t]:e}})}restore(e){if(!ti)return this.current[this.rememberedState]?.[e]!==void 0?this.current[this.rememberedState]?.[e]:this.initialState?.[this.rememberedState]?.[e]}pushState(e,t=null){if(!ti){if(this.preserveUrl){t&&t();return}this.current=e,Yn.add(()=>this.getPageData(e).then(r=>{const n=()=>this.doPushState({page:r},e.url).then(()=>t?.());return bh?new Promise(i=>{setTimeout(()=>n().then(i))}):n()}))}}clonePageProps(e){try{return structuredClone(e.props),e}catch{return{...e,props:Ye(e.props)}}}getPageData(e){const t=this.clonePageProps(e);return new Promise(r=>e.encryptHistory?hP(t).then(r):r(t))}processQueue(){return Yn.process()}decrypt(e=null){if(ti)return Promise.resolve(e??X.get());const t=e??window.history.state?.page;return this.decryptPageData(t).then(r=>{if(!r)throw new Error("Unable to decrypt history");return this.initialState===null?this.initialState=r??void 0:this.current=r??{},r})}decryptPageData(e){return e instanceof ArrayBuffer?pP(e):Promise.resolve(e)}saveScrollPositions(e){Yn.add(()=>Promise.resolve().then(()=>{if(window.history.state?.page&&!Ws(this.getScrollRegions(),e))return this.doReplaceState({page:window.history.state.page,scrollRegions:e})}))}saveDocumentScrollPosition(e){Yn.add(()=>Promise.resolve().then(()=>{if(window.history.state?.page&&!Ws(this.getDocumentScrollPosition(),e))return this.doReplaceState({page:window.history.state.page,documentScrollPosition:e})}))}getScrollRegions(){return window.history.state?.scrollRegions||[]}getDocumentScrollPosition(){return window.history.state?.documentScrollPosition||{top:0,left:0}}replaceState(e,t=null){if(X.merge(e),!ti){if(this.preserveUrl){t&&t();return}this.current=e,Yn.add(()=>this.getPageData(e).then(r=>{const n=()=>this.doReplaceState({page:r},e.url).then(()=>t?.());return bh?new Promise(i=>{setTimeout(()=>n().then(i))}):n()}))}}doReplaceState(e,t){return Promise.resolve().then(()=>window.history.replaceState({...e,scrollRegions:e.scrollRegions??window.history.state?.scrollRegions,documentScrollPosition:e.documentScrollPosition??window.history.state?.documentScrollPosition},"",t))}doPushState(e,t){return Promise.resolve().then(()=>window.history.pushState(e,"",t))}getState(e,t){return this.current?.[e]??t}deleteState(e){this.current[e]!==void 0&&(delete this.current[e],this.replaceState(this.current))}clearInitialState(e){this.initialState&&this.initialState[e]!==void 0&&delete this.initialState[e]}hasAnyState(){return!!this.getAllState()}clear(){lt.remove(Bn.key),lt.remove(Bn.iv)}setCurrent(e){this.current=e}isValidState(e){return!!e.page}getAllState(){return this.current}};typeof window<"u"&&window.history.scrollRestoration&&(window.history.scrollRestoration="manual");var he=new TP,PP=class{constructor(){this.internalListeners=[]}init(){typeof window<"u"&&(window.addEventListener("popstate",this.handlePopstateEvent.bind(this)),window.addEventListener("scroll",Sl(Rt.onWindowScroll.bind(Rt),100),!0)),typeof document<"u"&&document.addEventListener("scroll",Sl(Rt.onScroll.bind(Rt),100),!0)}onGlobalEvent(e,t){const r=(n=>{const i=t(n);n.cancelable&&!n.defaultPrevented&&i===!1&&n.preventDefault()});return this.registerListener(`inertia:${e}`,r)}on(e,t){return this.internalListeners.push({event:e,listener:t}),()=>{this.internalListeners=this.internalListeners.filter(r=>r.listener!==t)}}onMissingHistoryItem(){X.clear(),this.fireInternalEvent("missingHistoryItem")}fireInternalEvent(e,...t){this.internalListeners.filter(r=>r.event===e).forEach(r=>r.listener(...t))}registerListener(e,t){return document.addEventListener(e,t),()=>document.removeEventListener(e,t)}handlePopstateEvent(e){const t=e.state||null;if(t===null){const r=xr(X.get().url);r.hash=window.location.hash,he.replaceState({...X.get(),url:r.href}),Rt.reset();return}if(!he.isValidState(t))return this.onMissingHistoryItem();he.decrypt(t.page).then(r=>{if(X.get().version!==r.version){this.onMissingHistoryItem();return}mt.cancelAll(),X.setQuietly(r,{preserveState:!1}).then(()=>{Rt.restore(he.getScrollRegions()),ui(X.get())})}).catch(()=>{this.onMissingHistoryItem()})}},zr=new PP,AP=class{constructor(){this.type=this.resolveType()}resolveType(){return typeof window>"u"?"navigate":window.performance&&window.performance.getEntriesByType&&window.performance.getEntriesByType("navigation").length>0?window.performance.getEntriesByType("navigation")[0].type:"navigate"}get(){return this.type}isBackForward(){return this.type==="back_forward"}isReload(){return this.type==="reload"}},qa=new AP,CP=class{static handle(){this.clearRememberedStateOnReload(),[this.handleBackForward,this.handleLocation,this.handleDefault].find(t=>t.bind(this)())}static clearRememberedStateOnReload(){qa.isReload()&&(he.deleteState(he.rememberedState),he.clearInitialState(he.rememberedState))}static handleBackForward(){if(!qa.isBackForward()||!he.hasAnyState())return!1;const e=he.getScrollRegions();return he.decrypt().then(t=>{X.set(t,{preserveScroll:!0,preserveState:!0}).then(()=>{Rt.restore(e),ui(X.get())})}).catch(()=>{zr.onMissingHistoryItem()}),!0}static handleLocation(){if(!lt.exists(lt.locationVisitKey))return!1;const e=lt.get(lt.locationVisitKey)||{};return lt.remove(lt.locationVisitKey),typeof window<"u"&&X.setUrlHash(window.location.hash),he.decrypt(X.get()).then(()=>{const t=he.getState(he.rememberedState,{}),r=he.getScrollRegions();X.remember(t),X.set(X.get(),{preserveScroll:e.preserveScroll,preserveState:!0}).then(()=>{e.preserveScroll&&Rt.restore(r),ui(X.get())})}).catch(()=>{zr.onMissingHistoryItem()}),!0}static handleDefault(){typeof window<"u"&&X.setUrlHash(window.location.hash),X.set(X.get(),{preserveScroll:!0,preserveState:!0}).then(()=>{qa.isReload()&&Rt.restore(he.getScrollRegions()),ui(X.get())})}},OP=class{constructor(e,t,r){this.id=null,this.throttle=!1,this.keepAlive=!1,this.cbCount=0,this.keepAlive=r.keepAlive??!1,this.cb=t,this.interval=e,(r.autoStart??!0)&&this.start()}stop(){this.id&&clearInterval(this.id)}start(){typeof window>"u"||(this.stop(),this.id=window.setInterval(()=>{(!this.throttle||this.cbCount%10===0)&&this.cb(),this.throttle&&this.cbCount++},this.interval))}isInBackground(e){this.throttle=this.keepAlive?!1:e,this.throttle&&(this.cbCount=0)}},xP=class{constructor(){this.polls=[],this.setupVisibilityListener()}add(e,t,r){const n=new OP(e,t,r);return this.polls.push(n),{stop:()=>n.stop(),start:()=>n.start()}}clear(){this.polls.forEach(e=>e.stop()),this.polls=[]}setupVisibilityListener(){typeof document>"u"||document.addEventListener("visibilitychange",()=>{this.polls.forEach(e=>e.isInBackground(document.hidden))},!1)}},IP=new xP,Qg=(e,t,r)=>{if(e===t)return!0;for(const n in e)if(!r.includes(n)&&e[n]!==t[n]&&!RP(e[n],t[n]))return!1;return!0},RP=(e,t)=>{switch(typeof e){case"object":return Qg(e,t,[]);case"function":return e.toString()===t.toString();default:return e===t}},NP={ms:1,s:1e3,m:1e3*60,h:1e3*60*60,d:1e3*60*60*24},Sh=e=>{if(typeof e=="number")return e;for(const[t,r]of Object.entries(NP))if(e.endsWith(t))return parseFloat(e)*r;return parseInt(e)},$P=class{constructor(){this.cached=[],this.inFlightRequests=[],this.removalTimers=[],this.currentUseId=null}add(e,t,{cacheFor:r,cacheTags:n}){if(this.findInFlight(e))return Promise.resolve();const s=this.findCached(e);if(!e.fresh&&s&&s.staleTimestamp>Date.now())return Promise.resolve();const[o,a]=this.extractStaleValues(r),l=new Promise((u,f)=>{t({...e,onCancel:()=>{this.remove(e),e.onCancel(),f()},onError:c=>{this.remove(e),e.onError(c),f()},onPrefetching(c){e.onPrefetching(c)},onPrefetched(c,p){e.onPrefetched(c,p)},onPrefetchResponse(c){u(c)},onPrefetchError(c){rr.removeFromInFlight(e),f(c)}})}).then(u=>(this.remove(e),this.cached.push({params:{...e},staleTimestamp:Date.now()+o,response:l,singleUse:a===0,timestamp:Date.now(),inFlight:!1,tags:Array.isArray(n)?n:[n]}),this.scheduleForRemoval(e,a),this.removeFromInFlight(e),u.handlePrefetch(),u));return this.inFlightRequests.push({params:{...e},response:l,staleTimestamp:null,inFlight:!0}),l}removeAll(){this.cached=[],this.removalTimers.forEach(e=>{clearTimeout(e.timer)}),this.removalTimers=[]}removeByTags(e){this.cached=this.cached.filter(t=>!t.tags.some(r=>e.includes(r)))}remove(e){this.cached=this.cached.filter(t=>!this.paramsAreEqual(t.params,e)),this.clearTimer(e)}removeFromInFlight(e){this.inFlightRequests=this.inFlightRequests.filter(t=>!this.paramsAreEqual(t.params,e))}extractStaleValues(e){const[t,r]=this.cacheForToStaleAndExpires(e);return[Sh(t),Sh(r)]}cacheForToStaleAndExpires(e){if(!Array.isArray(e))return[e,e];switch(e.length){case 0:return[0,0];case 1:return[e[0],e[0]];default:return[e[0],e[1]]}}clearTimer(e){const t=this.removalTimers.find(r=>this.paramsAreEqual(r.params,e));t&&(clearTimeout(t.timer),this.removalTimers=this.removalTimers.filter(r=>r!==t))}scheduleForRemoval(e,t){if(!(typeof window>"u")&&(this.clearTimer(e),t>0)){const r=window.setTimeout(()=>this.remove(e),t);this.removalTimers.push({params:e,timer:r})}}get(e){return this.findCached(e)||this.findInFlight(e)}use(e,t){const r=`${t.url.pathname}-${Date.now()}-${Math.random().toString(36).substring(7)}`;return this.currentUseId=r,e.response.then(n=>{if(this.currentUseId===r)return n.mergeParams({...t,onPrefetched:()=>{}}),this.removeSingleUseItems(t),n.handle()})}removeSingleUseItems(e){this.cached=this.cached.filter(t=>this.paramsAreEqual(t.params,e)?!t.singleUse:!0)}findCached(e){return this.cached.find(t=>this.paramsAreEqual(t.params,e))||null}findInFlight(e){return this.inFlightRequests.find(t=>this.paramsAreEqual(t.params,e))||null}withoutPurposePrefetchHeader(e){const t=Ye(e);return t.headers.Purpose==="prefetch"&&delete t.headers.Purpose,t}paramsAreEqual(e,t){return Qg(this.withoutPurposePrefetchHeader(e),this.withoutPurposePrefetchHeader(t),["showProgress","replace","prefetch","preserveScroll","preserveState","onBefore","onBeforeUpdate","onStart","onProgress","onFinish","onCancel","onSuccess","onError","onPrefetched","onCancelToken","onPrefetching","async","viewTransition"])}},rr=new $P,Tl=class hs{constructor(t){if(this.callbacks=[],!t.prefetch)this.params=t;else{const r={onBefore:this.wrapCallback(t,"onBefore"),onBeforeUpdate:this.wrapCallback(t,"onBeforeUpdate"),onStart:this.wrapCallback(t,"onStart"),onProgress:this.wrapCallback(t,"onProgress"),onFinish:this.wrapCallback(t,"onFinish"),onCancel:this.wrapCallback(t,"onCancel"),onSuccess:this.wrapCallback(t,"onSuccess"),onError:this.wrapCallback(t,"onError"),onCancelToken:this.wrapCallback(t,"onCancelToken"),onPrefetched:this.wrapCallback(t,"onPrefetched"),onPrefetching:this.wrapCallback(t,"onPrefetching")};this.params={...t,...r,onPrefetchResponse:t.onPrefetchResponse||(()=>{}),onPrefetchError:t.onPrefetchError||(()=>{})}}}static create(t){return new hs(t)}data(){return this.params.method==="get"?null:this.params.data}queryParams(){return this.params.method==="get"?this.params.data:{}}isPartial(){return this.params.only.length>0||this.params.except.length>0||this.params.reset.length>0}onCancelToken(t){this.params.onCancelToken({cancel:t})}markAsFinished(){this.params.completed=!0,this.params.cancelled=!1,this.params.interrupted=!1}markAsCancelled({cancelled:t=!0,interrupted:r=!1}){this.params.onCancel(),this.params.completed=!1,this.params.cancelled=t,this.params.interrupted=r}wasCancelledAtAll(){return this.params.cancelled||this.params.interrupted}onFinish(){this.params.onFinish(this.params)}onStart(){this.params.onStart(this.params)}onPrefetching(){this.params.onPrefetching(this.params)}onPrefetchResponse(t){this.params.onPrefetchResponse&&this.params.onPrefetchResponse(t)}onPrefetchError(t){this.params.onPrefetchError&&this.params.onPrefetchError(t)}all(){return this.params}headers(){const t={...this.params.headers};this.isPartial()&&(t["X-Inertia-Partial-Component"]=X.get().component);const r=this.params.only.concat(this.params.reset);return r.length>0&&(t["X-Inertia-Partial-Data"]=r.join(",")),this.params.except.length>0&&(t["X-Inertia-Partial-Except"]=this.params.except.join(",")),this.params.reset.length>0&&(t["X-Inertia-Reset"]=this.params.reset.join(",")),this.params.errorBag&&this.params.errorBag.length>0&&(t["X-Inertia-Error-Bag"]=this.params.errorBag),t}setPreserveOptions(t){this.params.preserveScroll=hs.resolvePreserveOption(this.params.preserveScroll,t),this.params.preserveState=hs.resolvePreserveOption(this.params.preserveState,t)}runCallbacks(){this.callbacks.forEach(({name:t,args:r})=>{this.params[t](...r)})}merge(t){this.params={...this.params,...t}}wrapCallback(t,r){return(...n)=>{this.recordCallback(r,n),t[r](...n)}}recordCallback(t,r){this.callbacks.push({name:t,args:r})}static resolvePreserveOption(t,r){return typeof t=="function"?t(r):t==="errors"?Object.keys(r.props.errors||{}).length>0:t}},Xg={modal:null,listener:null,createIframeAndPage(e){typeof e=="object"&&(e=`All Inertia requests must receive a valid Inertia response, however a plain JSON response was received.
    ${JSON.stringify(e)}`);const t=document.createElement("html");t.innerHTML=e,t.querySelectorAll("a").forEach(n=>n.setAttribute("target","_top"));const r=document.createElement("iframe");return r.style.backgroundColor="white",r.style.borderRadius="5px",r.style.width="100%",r.style.height="100%",{iframe:r,page:t}},show(e){const{iframe:t,page:r}=this.createIframeAndPage(e);if(this.modal=document.createElement("div"),this.modal.style.position="fixed",this.modal.style.width="100vw",this.modal.style.height="100vh",this.modal.style.padding="50px",this.modal.style.boxSizing="border-box",this.modal.style.backgroundColor="rgba(0, 0, 0, .6)",this.modal.style.zIndex=2e5,this.modal.addEventListener("click",()=>this.hide()),this.modal.appendChild(t),document.body.prepend(this.modal),document.body.style.overflow="hidden",!t.contentWindow)throw new Error("iframe not yet ready.");t.contentWindow.document.open(),t.contentWindow.document.write(r.outerHTML),t.contentWindow.document.close(),this.listener=this.hideOnEscape.bind(this),document.addEventListener("keydown",this.listener)},hide(){this.modal.outerHTML="",this.modal=null,document.body.style.overflow="visible",document.removeEventListener("keydown",this.listener)},hideOnEscape(e){e.keyCode===27&&this.hide()}},MP={show(e){const{iframe:t,page:r}=Xg.createIframeAndPage(e);t.style.boxSizing="border-box",t.style.display="block";const n=document.createElement("dialog");n.id="inertia-error-dialog",Object.assign(n.style,{width:"calc(100vw - 100px)",height:"calc(100vh - 100px)",padding:"0",margin:"auto",border:"none",backgroundColor:"transparent"});const i=document.createElement("style");if(i.textContent=` +`+x.prev}function Hr(A,x){var fe=bt(A),ye=[];if(fe){ye.length=A.length;for(var we=0;we"u"||!N?e:N(Uint8Array),W={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?e:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?e:ArrayBuffer,"%ArrayIteratorPrototype%":O&&N?N([][Symbol.iterator]()):e,"%AsyncFromSyncIteratorPrototype%":e,"%AsyncFunction%":T,"%AsyncGenerator%":T,"%AsyncGeneratorFunction%":T,"%AsyncIteratorPrototype%":T,"%Atomics%":typeof Atomics>"u"?e:Atomics,"%BigInt%":typeof BigInt>"u"?e:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?e:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?e:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?e:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":r,"%eval%":eval,"%EvalError%":n,"%Float16Array%":typeof Float16Array>"u"?e:Float16Array,"%Float32Array%":typeof Float32Array>"u"?e:Float32Array,"%Float64Array%":typeof Float64Array>"u"?e:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?e:FinalizationRegistry,"%Function%":S,"%GeneratorFunction%":T,"%Int8Array%":typeof Int8Array>"u"?e:Int8Array,"%Int16Array%":typeof Int16Array>"u"?e:Int16Array,"%Int32Array%":typeof Int32Array>"u"?e:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":O&&N?N(N([][Symbol.iterator]())):e,"%JSON%":typeof JSON=="object"?JSON:e,"%Map%":typeof Map>"u"?e:Map,"%MapIteratorPrototype%":typeof Map>"u"||!O||!N?e:N(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":t,"%Object.getOwnPropertyDescriptor%":g,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?e:Promise,"%Proxy%":typeof Proxy>"u"?e:Proxy,"%RangeError%":i,"%ReferenceError%":s,"%Reflect%":typeof Reflect>"u"?e:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?e:Set,"%SetIteratorPrototype%":typeof Set>"u"||!O||!N?e:N(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?e:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":O&&N?N(""[Symbol.iterator]()):e,"%Symbol%":O?Symbol:e,"%SyntaxError%":o,"%ThrowTypeError%":E,"%TypedArray%":q,"%TypeError%":a,"%Uint8Array%":typeof Uint8Array>"u"?e:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?e:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?e:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?e:Uint32Array,"%URIError%":l,"%WeakMap%":typeof WeakMap>"u"?e:WeakMap,"%WeakRef%":typeof WeakRef>"u"?e:WeakRef,"%WeakSet%":typeof WeakSet>"u"?e:WeakSet,"%Function.prototype.call%":M,"%Function.prototype.apply%":C,"%Object.defineProperty%":y,"%Object.getPrototypeOf%":I,"%Math.abs%":u,"%Math.floor%":f,"%Math.max%":c,"%Math.min%":p,"%Math.pow%":h,"%Math.round%":d,"%Math.sign%":m,"%Reflect.getPrototypeOf%":P};if(N)try{null.error}catch(Ne){var G=N(N(Ne));W["%Error.prototype%"]=G}var U=function Ne(ne){var _e;if(ne==="%AsyncFunction%")_e=_("async function () {}");else if(ne==="%GeneratorFunction%")_e=_("function* () {}");else if(ne==="%AsyncGeneratorFunction%")_e=_("async function* () {}");else if(ne==="%AsyncGenerator%"){var ge=Ne("%AsyncGeneratorFunction%");ge&&(_e=ge.prototype)}else if(ne==="%AsyncIteratorPrototype%"){var b=Ne("%AsyncGenerator%");b&&N&&(_e=N(b.prototype))}return W[ne]=_e,_e},z={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},k=Eo(),re=JT(),Re=k.call(M,Array.prototype.concat),Me=k.call(C,Array.prototype.splice),Fe=k.call(M,String.prototype.replace),Lt=k.call(M,String.prototype.slice),Wt=k.call(M,RegExp.prototype.exec),kt=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,He=/\\(\\)?/g,bt=function(ne){var _e=Lt(ne,0,1),ge=Lt(ne,-1);if(_e==="%"&&ge!=="%")throw new o("invalid intrinsic syntax, expected closing `%`");if(ge==="%"&&_e!=="%")throw new o("invalid intrinsic syntax, expected opening `%`");var b=[];return Fe(ne,kt,function(w,R,D,$){b[b.length]=D?Fe($,He,"$1"):R||w}),b},Ot=function(ne,_e){var ge=ne,b;if(re(z,ge)&&(b=z[ge],ge="%"+b[0]+"%"),re(W,ge)){var w=W[ge];if(w===T&&(w=U(ge)),typeof w>"u"&&!_e)throw new a("intrinsic "+ne+" exists, but is not available. Please file an issue!");return{alias:b,name:ge,value:w}}throw new o("intrinsic "+ne+" does not exist!")};return xa=function(ne,_e){if(typeof ne!="string"||ne.length===0)throw new a("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof _e!="boolean")throw new a('"allowMissing" argument must be a boolean');if(Wt(/^%?[^%]*%?$/,ne)===null)throw new o("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var ge=bt(ne),b=ge.length>0?ge[0]:"",w=Ot("%"+b+"%",_e),R=w.name,D=w.value,$=!1,F=w.alias;F&&(b=F[0],Me(ge,Re([0,1],F)));for(var j=1,H=!0;j=ge.length){var V=g(D,B);H=!!V,H&&"get"in V&&!("originalValue"in V.get)?D=V.get:D=D[B]}else H=re(D,B),D=D[B];H&&!$&&(W[R]=D)}}return D},xa}var Ia,oh;function Hg(){if(oh)return Ia;oh=1;var e=Rc(),t=Bg(),r=t([e("%String.prototype.indexOf%")]);return Ia=function(i,s){var o=e(i,!!s);return typeof o=="function"&&r(i,".prototype.")>-1?t([o]):o},Ia}var Ra,ah;function jg(){if(ah)return Ra;ah=1;var e=Rc(),t=Hg(),r=wo(),n=Kn(),i=e("%Map%",!0),s=t("Map.prototype.get",!0),o=t("Map.prototype.set",!0),a=t("Map.prototype.has",!0),l=t("Map.prototype.delete",!0),u=t("Map.prototype.size",!0);return Ra=!!i&&function(){var c,p={assert:function(h){if(!p.has(h))throw new n("Side channel does not contain "+r(h))},delete:function(h){if(c){var d=l(c,h);return u(c)===0&&(c=void 0),d}return!1},get:function(h){if(c)return s(c,h)},has:function(h){return c?a(c,h):!1},set:function(h,d){c||(c=new i),o(c,h,d)}};return p},Ra}var Na,lh;function QT(){if(lh)return Na;lh=1;var e=Rc(),t=Hg(),r=wo(),n=jg(),i=Kn(),s=e("%WeakMap%",!0),o=t("WeakMap.prototype.get",!0),a=t("WeakMap.prototype.set",!0),l=t("WeakMap.prototype.has",!0),u=t("WeakMap.prototype.delete",!0);return Na=s?function(){var c,p,h={assert:function(d){if(!h.has(d))throw new i("Side channel does not contain "+r(d))},delete:function(d){if(s&&d&&(typeof d=="object"||typeof d=="function")){if(c)return u(c,d)}else if(n&&p)return p.delete(d);return!1},get:function(d){return s&&d&&(typeof d=="object"||typeof d=="function")&&c?o(c,d):p&&p.get(d)},has:function(d){return s&&d&&(typeof d=="object"||typeof d=="function")&&c?l(c,d):!!p&&p.has(d)},set:function(d,m){s&&d&&(typeof d=="object"||typeof d=="function")?(c||(c=new s),a(c,d,m)):n&&(p||(p=n()),p.set(d,m))}};return h}:n,Na}var $a,ch;function XT(){if(ch)return $a;ch=1;var e=Kn(),t=wo(),r=PT(),n=jg(),i=QT(),s=i||n||r;return $a=function(){var a,l={assert:function(u){if(!l.has(u))throw new e("Side channel does not contain "+t(u))},delete:function(u){return!!a&&a.delete(u)},get:function(u){return a&&a.get(u)},has:function(u){return!!a&&a.has(u)},set:function(u,f){a||(a=s()),a.set(u,f)}};return l},$a}var Ma,fh;function Nc(){if(fh)return Ma;fh=1;var e=String.prototype.replace,t=/%20/g,r={RFC1738:"RFC1738",RFC3986:"RFC3986"};return Ma={default:r.RFC3986,formatters:{RFC1738:function(n){return e.call(n,t,"+")},RFC3986:function(n){return String(n)}},RFC1738:r.RFC1738,RFC3986:r.RFC3986},Ma}var Fa,uh;function Ug(){if(uh)return Fa;uh=1;var e=Nc(),t=Object.prototype.hasOwnProperty,r=Array.isArray,n=(function(){for(var S=[],_=0;_<256;++_)S.push("%"+((_<16?"0":"")+_.toString(16)).toUpperCase());return S})(),i=function(_){for(;_.length>1;){var g=_.pop(),y=g.obj[g.prop];if(r(y)){for(var v=[],E=0;E=u?O.slice(I,I+u):O,C=[],M=0;M=48&&T<=57||T>=65&&T<=90||T>=97&&T<=122||E===e.RFC1738&&(T===40||T===41)){C[C.length]=P.charAt(M);continue}if(T<128){C[C.length]=n[T];continue}if(T<2048){C[C.length]=n[192|T>>6]+n[128|T&63];continue}if(T<55296||T>=57344){C[C.length]=n[224|T>>12]+n[128|T>>6&63]+n[128|T&63];continue}M+=1,T=65536+((T&1023)<<10|P.charCodeAt(M)&1023),C[C.length]=n[240|T>>18]+n[128|T>>12&63]+n[128|T>>6&63]+n[128|T&63]}N+=C.join("")}return N},c=function(_){for(var g=[{obj:{o:_},prop:"o"}],y=[],v=0;v"u"&&(Re=0)}if(typeof P=="function"?k=P(_,k):k instanceof Date?k=T(k):g==="comma"&&s(k)&&(k=t.maybeMap(k,function(R){return R instanceof Date?T(R):R})),k===null){if(E)return I&&!G?I(_,f.encoder,U,"key",q):_;k=""}if(c(k)||t.isBuffer(k)){if(I){var Lt=G?_:I(_,f.encoder,U,"key",q);return[W(Lt)+"="+W(I(k,f.encoder,U,"value",q))]}return[W(_)+"="+W(String(k))]}var Wt=[];if(typeof k>"u")return Wt;var kt;if(g==="comma"&&s(k))G&&I&&(k=t.maybeMap(k,I)),kt=[{value:k.length>0?k.join(",")||null:void 0}];else if(s(P))kt=P;else{var He=Object.keys(k);kt=C?He.sort(C):He}var bt=N?String(_).replace(/\./g,"%2E"):String(_),Ot=y&&s(k)&&k.length===1?bt+"[]":bt;if(v&&s(k)&&k.length===0)return Ot+"[]";for(var Ne=0;Ne"u"?S.encodeDotInKeys===!0?!0:f.allowDots:!!S.allowDots;return{addQueryPrefix:typeof S.addQueryPrefix=="boolean"?S.addQueryPrefix:f.addQueryPrefix,allowDots:O,allowEmptyArrays:typeof S.allowEmptyArrays=="boolean"?!!S.allowEmptyArrays:f.allowEmptyArrays,arrayFormat:E,charset:_,charsetSentinel:typeof S.charsetSentinel=="boolean"?S.charsetSentinel:f.charsetSentinel,commaRoundTrip:!!S.commaRoundTrip,delimiter:typeof S.delimiter>"u"?f.delimiter:S.delimiter,encode:typeof S.encode=="boolean"?S.encode:f.encode,encodeDotInKeys:typeof S.encodeDotInKeys=="boolean"?S.encodeDotInKeys:f.encodeDotInKeys,encoder:typeof S.encoder=="function"?S.encoder:f.encoder,encodeValuesOnly:typeof S.encodeValuesOnly=="boolean"?S.encodeValuesOnly:f.encodeValuesOnly,filter:v,format:g,formatter:y,serializeDate:typeof S.serializeDate=="function"?S.serializeDate:f.serializeDate,skipNulls:typeof S.skipNulls=="boolean"?S.skipNulls:f.skipNulls,sort:typeof S.sort=="function"?S.sort:null,strictNullHandling:typeof S.strictNullHandling=="boolean"?S.strictNullHandling:f.strictNullHandling}};return Da=function(m,S){var _=m,g=d(S),y,v;typeof g.filter=="function"?(v=g.filter,_=v("",_)):s(g.filter)&&(v=g.filter,y=v);var E=[];if(typeof _!="object"||_===null)return"";var O=i[g.arrayFormat],N=O==="comma"&&g.commaRoundTrip;y||(y=Object.keys(_)),g.sort&&y.sort(g.sort);for(var I=e(),P=0;P0?q+T:""},Da}var La,ph;function ZT(){if(ph)return La;ph=1;var e=Ug(),t=Object.prototype.hasOwnProperty,r=Array.isArray,n={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:e.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictNullHandling:!1,throwOnLimitExceeded:!1},i=function(p){return p.replace(/&#(\d+);/g,function(h,d){return String.fromCharCode(parseInt(d,10))})},s=function(p,h,d){if(p&&typeof p=="string"&&h.comma&&p.indexOf(",")>-1)return p.split(",");if(h.throwOnLimitExceeded&&d>=h.arrayLimit)throw new RangeError("Array limit exceeded. Only "+h.arrayLimit+" element"+(h.arrayLimit===1?"":"s")+" allowed in an array.");return p},o="utf8=%26%2310003%3B",a="utf8=%E2%9C%93",l=function(h,d){var m={__proto__:null},S=d.ignoreQueryPrefix?h.replace(/^\?/,""):h;S=S.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var _=d.parameterLimit===1/0?void 0:d.parameterLimit,g=S.split(d.delimiter,d.throwOnLimitExceeded?_+1:_);if(d.throwOnLimitExceeded&&g.length>_)throw new RangeError("Parameter limit exceeded. Only "+_+" parameter"+(_===1?"":"s")+" allowed.");var y=-1,v,E=d.charset;if(d.charsetSentinel)for(v=0;v-1&&(C=r(C)?[C]:C);var M=t.call(m,P);M&&d.duplicates==="combine"?m[P]=e.combine(m[P],C):(!M||d.duplicates==="last")&&(m[P]=C)}return m},u=function(p,h,d,m){var S=0;if(p.length>0&&p[p.length-1]==="[]"){var _=p.slice(0,-1).join("");S=Array.isArray(h)&&h[_]?h[_].length:0}for(var g=m?h:s(h,d,S),y=p.length-1;y>=0;--y){var v,E=p[y];if(E==="[]"&&d.parseArrays)v=d.allowEmptyArrays&&(g===""||d.strictNullHandling&&g===null)?[]:e.combine([],g);else{v=d.plainObjects?{__proto__:null}:{};var O=E.charAt(0)==="["&&E.charAt(E.length-1)==="]"?E.slice(1,-1):E,N=d.decodeDotInKeys?O.replace(/%2E/g,"."):O,I=parseInt(N,10);!d.parseArrays&&N===""?v={0:g}:!isNaN(I)&&E!==N&&String(I)===N&&I>=0&&d.parseArrays&&I<=d.arrayLimit?(v=[],v[I]=g):N!=="__proto__"&&(v[N]=g)}g=v}return g},f=function(h,d,m,S){if(h){var _=m.allowDots?h.replace(/\.([^.[]+)/g,"[$1]"):h,g=/(\[[^[\]]*])/,y=/(\[[^[\]]*])/g,v=m.depth>0&&g.exec(_),E=v?_.slice(0,v.index):_,O=[];if(E){if(!m.plainObjects&&t.call(Object.prototype,E)&&!m.allowPrototypes)return;O.push(E)}for(var N=0;m.depth>0&&(v=y.exec(_))!==null&&N"u"?n.charset:h.charset,m=typeof h.duplicates>"u"?n.duplicates:h.duplicates;if(m!=="combine"&&m!=="first"&&m!=="last")throw new TypeError("The duplicates option must be either combine, first, or last");var S=typeof h.allowDots>"u"?h.decodeDotInKeys===!0?!0:n.allowDots:!!h.allowDots;return{allowDots:S,allowEmptyArrays:typeof h.allowEmptyArrays=="boolean"?!!h.allowEmptyArrays:n.allowEmptyArrays,allowPrototypes:typeof h.allowPrototypes=="boolean"?h.allowPrototypes:n.allowPrototypes,allowSparse:typeof h.allowSparse=="boolean"?h.allowSparse:n.allowSparse,arrayLimit:typeof h.arrayLimit=="number"?h.arrayLimit:n.arrayLimit,charset:d,charsetSentinel:typeof h.charsetSentinel=="boolean"?h.charsetSentinel:n.charsetSentinel,comma:typeof h.comma=="boolean"?h.comma:n.comma,decodeDotInKeys:typeof h.decodeDotInKeys=="boolean"?h.decodeDotInKeys:n.decodeDotInKeys,decoder:typeof h.decoder=="function"?h.decoder:n.decoder,delimiter:typeof h.delimiter=="string"||e.isRegExp(h.delimiter)?h.delimiter:n.delimiter,depth:typeof h.depth=="number"||h.depth===!1?+h.depth:n.depth,duplicates:m,ignoreQueryPrefix:h.ignoreQueryPrefix===!0,interpretNumericEntities:typeof h.interpretNumericEntities=="boolean"?h.interpretNumericEntities:n.interpretNumericEntities,parameterLimit:typeof h.parameterLimit=="number"?h.parameterLimit:n.parameterLimit,parseArrays:h.parseArrays!==!1,plainObjects:typeof h.plainObjects=="boolean"?h.plainObjects:n.plainObjects,strictDepth:typeof h.strictDepth=="boolean"?!!h.strictDepth:n.strictDepth,strictNullHandling:typeof h.strictNullHandling=="boolean"?h.strictNullHandling:n.strictNullHandling,throwOnLimitExceeded:typeof h.throwOnLimitExceeded=="boolean"?h.throwOnLimitExceeded:!1}};return La=function(p,h){var d=c(h);if(p===""||p===null||typeof p>"u")return d.plainObjects?{__proto__:null}:{};for(var m=typeof p=="string"?l(p,d):p,S=d.plainObjects?{__proto__:null}:{},_=Object.keys(m),g=0;g<_.length;++g){var y=_[g],v=f(y,m[y],d,typeof p=="string");S=e.merge(S,v,d)}return d.allowSparse===!0?S:e.compact(S)},La}var ka,dh;function eP(){if(dh)return ka;dh=1;var e=YT(),t=ZT(),r=Nc();return ka={formats:r,parse:t,stringify:e},ka}var gh=eP(),tP=class{constructor(e){this.config={},this.defaults=e}extend(e){return e&&(this.defaults={...this.defaults,...e}),this}replace(e){this.config=e}get(e){return Mg(this.config,e)?Dr(this.config,e):Dr(this.defaults,e)}set(e,t){typeof e=="string"?lr(this.config,e,t):Object.entries(e).forEach(([r,n])=>{lr(this.config,r,n)})}},qn=new tP({form:{recentlySuccessfulDuration:2e3},future:{preserveEqualProps:!1,useDataInertiaHeadAttribute:!1,useDialogForErrorModal:!1},prefetch:{cacheFor:3e4,hoverDelay:75}});function Sl(e,t){let r;return function(...n){clearTimeout(r),r=setTimeout(()=>e.apply(this,n),t)}}function Dt(e,t){return document.dispatchEvent(new CustomEvent(`inertia:${e}`,t))}var mh=e=>Dt("before",{cancelable:!0,detail:{visit:e}}),rP=e=>Dt("error",{detail:{errors:e}}),nP=e=>Dt("exception",{cancelable:!0,detail:{exception:e}}),iP=e=>Dt("finish",{detail:{visit:e}}),sP=e=>Dt("invalid",{cancelable:!0,detail:{response:e}}),oP=e=>Dt("beforeUpdate",{detail:{page:e}}),ui=e=>Dt("navigate",{detail:{page:e}}),aP=e=>Dt("progress",{detail:{progress:e}}),lP=e=>Dt("start",{detail:{visit:e}}),cP=e=>Dt("success",{detail:{page:e}}),fP=(e,t)=>Dt("prefetched",{detail:{fetchedAt:Date.now(),response:e.data,visit:t}}),uP=e=>Dt("prefetching",{detail:{visit:e}}),lt=class{static set(e,t){typeof window<"u"&&window.sessionStorage.setItem(e,JSON.stringify(t))}static get(e){if(typeof window<"u")return JSON.parse(window.sessionStorage.getItem(e)||"null")}static merge(e,t){const r=this.get(e);r===null?this.set(e,t):this.set(e,{...r,...t})}static remove(e){typeof window<"u"&&window.sessionStorage.removeItem(e)}static removeNested(e,t){const r=this.get(e);r!==null&&(delete r[t],this.set(e,r))}static exists(e){try{return this.get(e)!==null}catch{return!1}}static clear(){typeof window<"u"&&window.sessionStorage.clear()}};lt.locationVisitKey="inertiaLocationVisit";var hP=async e=>{if(typeof window>"u")throw new Error("Unable to encrypt history");const t=Vg(),r=await Wg(),n=await vP(r);if(!n)throw new Error("Unable to encrypt history");return await dP(t,n,e)},Bn={key:"historyKey",iv:"historyIv"},pP=async e=>{const t=Vg(),r=await Wg();if(!r)throw new Error("Unable to decrypt history");return await gP(t,r,e)},dP=async(e,t,r)=>{if(typeof window>"u")throw new Error("Unable to encrypt history");if(typeof window.crypto.subtle>"u")return console.warn("Encryption is not supported in this environment. SSL is required."),Promise.resolve(r);const n=new TextEncoder,i=JSON.stringify(r),s=new Uint8Array(i.length*3),o=n.encodeInto(i,s);return window.crypto.subtle.encrypt({name:"AES-GCM",iv:e},t,s.subarray(0,o.written))},gP=async(e,t,r)=>{if(typeof window.crypto.subtle>"u")return console.warn("Decryption is not supported in this environment. SSL is required."),Promise.resolve(r);const n=await window.crypto.subtle.decrypt({name:"AES-GCM",iv:e},t,r);return JSON.parse(new TextDecoder().decode(n))},Vg=()=>{const e=lt.get(Bn.iv);if(e)return new Uint8Array(e);const t=window.crypto.getRandomValues(new Uint8Array(12));return lt.set(Bn.iv,Array.from(t)),t},mP=async()=>typeof window.crypto.subtle>"u"?(console.warn("Encryption is not supported in this environment. SSL is required."),Promise.resolve(null)):window.crypto.subtle.generateKey({name:"AES-GCM",length:256},!0,["encrypt","decrypt"]),yP=async e=>{if(typeof window.crypto.subtle>"u")return console.warn("Encryption is not supported in this environment. SSL is required."),Promise.resolve();const t=await window.crypto.subtle.exportKey("raw",e);lt.set(Bn.key,Array.from(new Uint8Array(t)))},vP=async e=>{if(e)return e;const t=await mP();return t?(await yP(t),t):null},Wg=async()=>{const e=lt.get(Bn.key);return e?await window.crypto.subtle.importKey("raw",new Uint8Array(e),{name:"AES-GCM",length:256},!0,["encrypt","decrypt"]):null},Rt=class{static save(){he.saveScrollPositions(Array.from(this.regions()).map(e=>({top:e.scrollTop,left:e.scrollLeft})))}static regions(){return document.querySelectorAll("[scroll-region]")}static reset(){const e=typeof window<"u"?window.location.hash:null;e||window.scrollTo(0,0),this.regions().forEach(t=>{typeof t.scrollTo=="function"?t.scrollTo(0,0):(t.scrollTop=0,t.scrollLeft=0)}),this.save(),e&&setTimeout(()=>{const t=document.getElementById(e.slice(1));t?t.scrollIntoView():window.scrollTo(0,0)})}static restore(e){typeof window>"u"||window.requestAnimationFrame(()=>{this.restoreDocument(),this.restoreScrollRegions(e)})}static restoreScrollRegions(e){typeof window>"u"||this.regions().forEach((t,r)=>{const n=e[r];n&&(typeof t.scrollTo=="function"?t.scrollTo(n.left,n.top):(t.scrollTop=n.top,t.scrollLeft=n.left))})}static restoreDocument(){const e=he.getDocumentScrollPosition();window.scrollTo(e.left,e.top)}static onScroll(e){const t=e.target;typeof t.hasAttribute=="function"&&t.hasAttribute("scroll-region")&&this.save()}static onWindowScroll(){he.saveDocumentScrollPosition({top:window.scrollY,left:window.scrollX})}},bP=e=>typeof File<"u"&&e instanceof File||e instanceof Blob||typeof FileList<"u"&&e instanceof FileList&&e.length>0;function _l(e){return bP(e)||e instanceof FormData&&Array.from(e.values()).some(t=>_l(t))||typeof e=="object"&&e!==null&&Object.values(e).some(t=>_l(t))}var wl=e=>e instanceof FormData;function Kg(e,t=new FormData,r=null,n="brackets"){e=e||{};for(const i in e)Object.prototype.hasOwnProperty.call(e,i)&&zg(t,Gg(r,i,"indices"),e[i],n);return t}function Gg(e,t,r){return e?r==="brackets"?`${e}[]`:`${e}[${t}]`:t}function zg(e,t,r,n){if(Array.isArray(r))return Array.from(r.keys()).forEach(i=>zg(e,Gg(t,i.toString(),n),r[i],n));if(r instanceof Date)return e.append(t,r.toISOString());if(r instanceof File)return e.append(t,r,r.name);if(r instanceof Blob)return e.append(t,r);if(typeof r=="boolean")return e.append(t,r?"1":"0");if(typeof r=="string")return e.append(t,r);if(typeof r=="number")return e.append(t,`${r}`);if(r==null)return e.append(t,"");Kg(r,e,t,n)}function xr(e){return new URL(e.toString(),typeof window>"u"?void 0:window.location.toString())}var SP=(e,t,r,n,i)=>{let s=typeof e=="string"?xr(e):e;if((_l(t)||n)&&!wl(t)&&(t=Kg(t,new FormData,null,i)),wl(t))return[s,t];const[o,a]=_P(r,s,t,i);return[xr(o),a]};function _P(e,t,r,n="brackets"){const i=e==="get"&&!wl(r)&&Object.keys(r).length>0,s=wP(t.toString()),o=s||t.toString().startsWith("/")||t.toString()==="",a=!o&&!t.toString().startsWith("#")&&!t.toString().startsWith("?"),l=/^[.]{1,2}([/]|$)/.test(t.toString()),u=t.toString().includes("?")||i,f=t.toString().includes("#"),c=new URL(t.toString(),typeof window>"u"?"http://localhost":window.location.toString());if(i){const p={ignoreQueryPrefix:!0,parseArrays:!1};c.search=gh.stringify({...gh.parse(c.search,p),...r},{encodeValuesOnly:!0,arrayFormat:n})}return[[s?`${c.protocol}//${c.host}`:"",o?c.pathname:"",a?c.pathname.substring(l?0:1):"",u?c.search:"",f?c.hash:""].join(""),i?{}:r]}function Gs(e){return e=new URL(e.href),e.hash="",e}var yh=(e,t)=>{e.hash&&!t.hash&&Gs(e).href===t.href&&(t.hash=e.hash)},El=(e,t)=>Gs(e).href===Gs(t).href;function vh(e){return e!==null&&typeof e=="object"&&e!==void 0&&"url"in e&&"method"in e}function wP(e){return/^[a-z][a-z0-9+.-]*:\/\//i.test(e)}var EP=class{constructor(){this.componentId={},this.listeners=[],this.isFirstPageLoad=!0,this.cleared=!1,this.pendingDeferredProps=null}init({initialPage:e,swapComponent:t,resolveComponent:r}){return this.page=e,this.swapComponent=t,this.resolveComponent=r,this}set(e,{replace:t=!1,preserveScroll:r=!1,preserveState:n=!1,viewTransition:i=!1}={}){Object.keys(e.deferredProps||{}).length&&(this.pendingDeferredProps={deferredProps:e.deferredProps,component:e.component,url:e.url}),this.componentId={};const s=this.componentId;return e.clearHistory&&he.clear(),this.resolve(e.component).then(o=>{if(s!==this.componentId)return;e.rememberedState??(e.rememberedState={});const a=typeof window>"u",l=a?new URL(e.url):window.location,u=!a&&r?he.getScrollRegions():[];return t=t||El(xr(e.url),l),new Promise(f=>{t?he.replaceState(e,()=>f(null)):he.pushState(e,()=>f(null))}).then(()=>{const f=!this.isTheSame(e);return!f&&Object.keys(e.props.errors||{}).length>0&&(i=!1),this.page=e,this.cleared=!1,f&&this.fireEventsFor("newComponent"),this.isFirstPageLoad&&this.fireEventsFor("firstLoad"),this.isFirstPageLoad=!1,this.swap({component:o,page:e,preserveState:n,viewTransition:i}).then(()=>{r?window.requestAnimationFrame(()=>Rt.restoreScrollRegions(u)):Rt.reset(),this.pendingDeferredProps&&this.pendingDeferredProps.component===e.component&&this.pendingDeferredProps.url===e.url&&zr.fireInternalEvent("loadDeferredProps",this.pendingDeferredProps.deferredProps),this.pendingDeferredProps=null,t||ui(e)})})})}setQuietly(e,{preserveState:t=!1}={}){return this.resolve(e.component).then(r=>(this.page=e,this.cleared=!1,he.setCurrent(e),this.swap({component:r,page:e,preserveState:t,viewTransition:!1})))}clear(){this.cleared=!0}isCleared(){return this.cleared}get(){return this.page}merge(e){this.page={...this.page,...e}}setUrlHash(e){this.page.url.includes(e)||(this.page.url+=e)}remember(e){this.page.rememberedState=e}swap({component:e,page:t,preserveState:r,viewTransition:n}){const i=()=>this.swapComponent({component:e,page:t,preserveState:r});if(!n||!document?.startViewTransition)return i();const s=typeof n=="boolean"?()=>null:n;return new Promise(o=>{const a=document.startViewTransition(()=>i().then(o));s(a)})}resolve(e){return Promise.resolve(this.resolveComponent(e))}isTheSame(e){return this.page.component===e.component}on(e,t){return this.listeners.push({event:e,callback:t}),()=>{this.listeners=this.listeners.filter(r=>r.event!==e&&r.callback!==t)}}fireEventsFor(e){this.listeners.filter(t=>t.event===e).forEach(t=>t.callback())}},X=new EP,Jg=class{constructor(){this.items=[],this.processingPromise=null}add(e){return this.items.push(e),this.process()}process(){return this.processingPromise??(this.processingPromise=this.processNext().finally(()=>{this.processingPromise=null})),this.processingPromise}processNext(){const e=this.items.shift();return e?Promise.resolve(e()).then(()=>this.processNext()):Promise.resolve()}},ti=typeof window>"u",Yn=new Jg,bh=!ti&&/CriOS/.test(window.navigator.userAgent),TP=class{constructor(){this.rememberedState="rememberedState",this.scrollRegions="scrollRegions",this.preserveUrl=!1,this.current={},this.initialState=null}remember(e,t){this.replaceState({...X.get(),rememberedState:{...X.get()?.rememberedState??{},[t]:e}})}restore(e){if(!ti)return this.current[this.rememberedState]?.[e]!==void 0?this.current[this.rememberedState]?.[e]:this.initialState?.[this.rememberedState]?.[e]}pushState(e,t=null){if(!ti){if(this.preserveUrl){t&&t();return}this.current=e,Yn.add(()=>this.getPageData(e).then(r=>{const n=()=>this.doPushState({page:r},e.url).then(()=>t?.());return bh?new Promise(i=>{setTimeout(()=>n().then(i))}):n()}))}}clonePageProps(e){try{return structuredClone(e.props),e}catch{return{...e,props:Ye(e.props)}}}getPageData(e){const t=this.clonePageProps(e);return new Promise(r=>e.encryptHistory?hP(t).then(r):r(t))}processQueue(){return Yn.process()}decrypt(e=null){if(ti)return Promise.resolve(e??X.get());const t=e??window.history.state?.page;return this.decryptPageData(t).then(r=>{if(!r)throw new Error("Unable to decrypt history");return this.initialState===null?this.initialState=r??void 0:this.current=r??{},r})}decryptPageData(e){return e instanceof ArrayBuffer?pP(e):Promise.resolve(e)}saveScrollPositions(e){Yn.add(()=>Promise.resolve().then(()=>{if(window.history.state?.page&&!Ks(this.getScrollRegions(),e))return this.doReplaceState({page:window.history.state.page,scrollRegions:e})}))}saveDocumentScrollPosition(e){Yn.add(()=>Promise.resolve().then(()=>{if(window.history.state?.page&&!Ks(this.getDocumentScrollPosition(),e))return this.doReplaceState({page:window.history.state.page,documentScrollPosition:e})}))}getScrollRegions(){return window.history.state?.scrollRegions||[]}getDocumentScrollPosition(){return window.history.state?.documentScrollPosition||{top:0,left:0}}replaceState(e,t=null){if(X.merge(e),!ti){if(this.preserveUrl){t&&t();return}this.current=e,Yn.add(()=>this.getPageData(e).then(r=>{const n=()=>this.doReplaceState({page:r},e.url).then(()=>t?.());return bh?new Promise(i=>{setTimeout(()=>n().then(i))}):n()}))}}doReplaceState(e,t){return Promise.resolve().then(()=>window.history.replaceState({...e,scrollRegions:e.scrollRegions??window.history.state?.scrollRegions,documentScrollPosition:e.documentScrollPosition??window.history.state?.documentScrollPosition},"",t))}doPushState(e,t){return Promise.resolve().then(()=>window.history.pushState(e,"",t))}getState(e,t){return this.current?.[e]??t}deleteState(e){this.current[e]!==void 0&&(delete this.current[e],this.replaceState(this.current))}clearInitialState(e){this.initialState&&this.initialState[e]!==void 0&&delete this.initialState[e]}hasAnyState(){return!!this.getAllState()}clear(){lt.remove(Bn.key),lt.remove(Bn.iv)}setCurrent(e){this.current=e}isValidState(e){return!!e.page}getAllState(){return this.current}};typeof window<"u"&&window.history.scrollRestoration&&(window.history.scrollRestoration="manual");var he=new TP,PP=class{constructor(){this.internalListeners=[]}init(){typeof window<"u"&&(window.addEventListener("popstate",this.handlePopstateEvent.bind(this)),window.addEventListener("scroll",Sl(Rt.onWindowScroll.bind(Rt),100),!0)),typeof document<"u"&&document.addEventListener("scroll",Sl(Rt.onScroll.bind(Rt),100),!0)}onGlobalEvent(e,t){const r=(n=>{const i=t(n);n.cancelable&&!n.defaultPrevented&&i===!1&&n.preventDefault()});return this.registerListener(`inertia:${e}`,r)}on(e,t){return this.internalListeners.push({event:e,listener:t}),()=>{this.internalListeners=this.internalListeners.filter(r=>r.listener!==t)}}onMissingHistoryItem(){X.clear(),this.fireInternalEvent("missingHistoryItem")}fireInternalEvent(e,...t){this.internalListeners.filter(r=>r.event===e).forEach(r=>r.listener(...t))}registerListener(e,t){return document.addEventListener(e,t),()=>document.removeEventListener(e,t)}handlePopstateEvent(e){const t=e.state||null;if(t===null){const r=xr(X.get().url);r.hash=window.location.hash,he.replaceState({...X.get(),url:r.href}),Rt.reset();return}if(!he.isValidState(t))return this.onMissingHistoryItem();he.decrypt(t.page).then(r=>{if(X.get().version!==r.version){this.onMissingHistoryItem();return}mt.cancelAll(),X.setQuietly(r,{preserveState:!1}).then(()=>{Rt.restore(he.getScrollRegions()),ui(X.get())})}).catch(()=>{this.onMissingHistoryItem()})}},zr=new PP,AP=class{constructor(){this.type=this.resolveType()}resolveType(){return typeof window>"u"?"navigate":window.performance&&window.performance.getEntriesByType&&window.performance.getEntriesByType("navigation").length>0?window.performance.getEntriesByType("navigation")[0].type:"navigate"}get(){return this.type}isBackForward(){return this.type==="back_forward"}isReload(){return this.type==="reload"}},qa=new AP,CP=class{static handle(){this.clearRememberedStateOnReload(),[this.handleBackForward,this.handleLocation,this.handleDefault].find(t=>t.bind(this)())}static clearRememberedStateOnReload(){qa.isReload()&&(he.deleteState(he.rememberedState),he.clearInitialState(he.rememberedState))}static handleBackForward(){if(!qa.isBackForward()||!he.hasAnyState())return!1;const e=he.getScrollRegions();return he.decrypt().then(t=>{X.set(t,{preserveScroll:!0,preserveState:!0}).then(()=>{Rt.restore(e),ui(X.get())})}).catch(()=>{zr.onMissingHistoryItem()}),!0}static handleLocation(){if(!lt.exists(lt.locationVisitKey))return!1;const e=lt.get(lt.locationVisitKey)||{};return lt.remove(lt.locationVisitKey),typeof window<"u"&&X.setUrlHash(window.location.hash),he.decrypt(X.get()).then(()=>{const t=he.getState(he.rememberedState,{}),r=he.getScrollRegions();X.remember(t),X.set(X.get(),{preserveScroll:e.preserveScroll,preserveState:!0}).then(()=>{e.preserveScroll&&Rt.restore(r),ui(X.get())})}).catch(()=>{zr.onMissingHistoryItem()}),!0}static handleDefault(){typeof window<"u"&&X.setUrlHash(window.location.hash),X.set(X.get(),{preserveScroll:!0,preserveState:!0}).then(()=>{qa.isReload()&&Rt.restore(he.getScrollRegions()),ui(X.get())})}},OP=class{constructor(e,t,r){this.id=null,this.throttle=!1,this.keepAlive=!1,this.cbCount=0,this.keepAlive=r.keepAlive??!1,this.cb=t,this.interval=e,(r.autoStart??!0)&&this.start()}stop(){this.id&&clearInterval(this.id)}start(){typeof window>"u"||(this.stop(),this.id=window.setInterval(()=>{(!this.throttle||this.cbCount%10===0)&&this.cb(),this.throttle&&this.cbCount++},this.interval))}isInBackground(e){this.throttle=this.keepAlive?!1:e,this.throttle&&(this.cbCount=0)}},xP=class{constructor(){this.polls=[],this.setupVisibilityListener()}add(e,t,r){const n=new OP(e,t,r);return this.polls.push(n),{stop:()=>n.stop(),start:()=>n.start()}}clear(){this.polls.forEach(e=>e.stop()),this.polls=[]}setupVisibilityListener(){typeof document>"u"||document.addEventListener("visibilitychange",()=>{this.polls.forEach(e=>e.isInBackground(document.hidden))},!1)}},IP=new xP,Qg=(e,t,r)=>{if(e===t)return!0;for(const n in e)if(!r.includes(n)&&e[n]!==t[n]&&!RP(e[n],t[n]))return!1;return!0},RP=(e,t)=>{switch(typeof e){case"object":return Qg(e,t,[]);case"function":return e.toString()===t.toString();default:return e===t}},NP={ms:1,s:1e3,m:1e3*60,h:1e3*60*60,d:1e3*60*60*24},Sh=e=>{if(typeof e=="number")return e;for(const[t,r]of Object.entries(NP))if(e.endsWith(t))return parseFloat(e)*r;return parseInt(e)},$P=class{constructor(){this.cached=[],this.inFlightRequests=[],this.removalTimers=[],this.currentUseId=null}add(e,t,{cacheFor:r,cacheTags:n}){if(this.findInFlight(e))return Promise.resolve();const s=this.findCached(e);if(!e.fresh&&s&&s.staleTimestamp>Date.now())return Promise.resolve();const[o,a]=this.extractStaleValues(r),l=new Promise((u,f)=>{t({...e,onCancel:()=>{this.remove(e),e.onCancel(),f()},onError:c=>{this.remove(e),e.onError(c),f()},onPrefetching(c){e.onPrefetching(c)},onPrefetched(c,p){e.onPrefetched(c,p)},onPrefetchResponse(c){u(c)},onPrefetchError(c){rr.removeFromInFlight(e),f(c)}})}).then(u=>(this.remove(e),this.cached.push({params:{...e},staleTimestamp:Date.now()+o,response:l,singleUse:a===0,timestamp:Date.now(),inFlight:!1,tags:Array.isArray(n)?n:[n]}),this.scheduleForRemoval(e,a),this.removeFromInFlight(e),u.handlePrefetch(),u));return this.inFlightRequests.push({params:{...e},response:l,staleTimestamp:null,inFlight:!0}),l}removeAll(){this.cached=[],this.removalTimers.forEach(e=>{clearTimeout(e.timer)}),this.removalTimers=[]}removeByTags(e){this.cached=this.cached.filter(t=>!t.tags.some(r=>e.includes(r)))}remove(e){this.cached=this.cached.filter(t=>!this.paramsAreEqual(t.params,e)),this.clearTimer(e)}removeFromInFlight(e){this.inFlightRequests=this.inFlightRequests.filter(t=>!this.paramsAreEqual(t.params,e))}extractStaleValues(e){const[t,r]=this.cacheForToStaleAndExpires(e);return[Sh(t),Sh(r)]}cacheForToStaleAndExpires(e){if(!Array.isArray(e))return[e,e];switch(e.length){case 0:return[0,0];case 1:return[e[0],e[0]];default:return[e[0],e[1]]}}clearTimer(e){const t=this.removalTimers.find(r=>this.paramsAreEqual(r.params,e));t&&(clearTimeout(t.timer),this.removalTimers=this.removalTimers.filter(r=>r!==t))}scheduleForRemoval(e,t){if(!(typeof window>"u")&&(this.clearTimer(e),t>0)){const r=window.setTimeout(()=>this.remove(e),t);this.removalTimers.push({params:e,timer:r})}}get(e){return this.findCached(e)||this.findInFlight(e)}use(e,t){const r=`${t.url.pathname}-${Date.now()}-${Math.random().toString(36).substring(7)}`;return this.currentUseId=r,e.response.then(n=>{if(this.currentUseId===r)return n.mergeParams({...t,onPrefetched:()=>{}}),this.removeSingleUseItems(t),n.handle()})}removeSingleUseItems(e){this.cached=this.cached.filter(t=>this.paramsAreEqual(t.params,e)?!t.singleUse:!0)}findCached(e){return this.cached.find(t=>this.paramsAreEqual(t.params,e))||null}findInFlight(e){return this.inFlightRequests.find(t=>this.paramsAreEqual(t.params,e))||null}withoutPurposePrefetchHeader(e){const t=Ye(e);return t.headers.Purpose==="prefetch"&&delete t.headers.Purpose,t}paramsAreEqual(e,t){return Qg(this.withoutPurposePrefetchHeader(e),this.withoutPurposePrefetchHeader(t),["showProgress","replace","prefetch","preserveScroll","preserveState","onBefore","onBeforeUpdate","onStart","onProgress","onFinish","onCancel","onSuccess","onError","onPrefetched","onCancelToken","onPrefetching","async","viewTransition"])}},rr=new $P,Tl=class ps{constructor(t){if(this.callbacks=[],!t.prefetch)this.params=t;else{const r={onBefore:this.wrapCallback(t,"onBefore"),onBeforeUpdate:this.wrapCallback(t,"onBeforeUpdate"),onStart:this.wrapCallback(t,"onStart"),onProgress:this.wrapCallback(t,"onProgress"),onFinish:this.wrapCallback(t,"onFinish"),onCancel:this.wrapCallback(t,"onCancel"),onSuccess:this.wrapCallback(t,"onSuccess"),onError:this.wrapCallback(t,"onError"),onCancelToken:this.wrapCallback(t,"onCancelToken"),onPrefetched:this.wrapCallback(t,"onPrefetched"),onPrefetching:this.wrapCallback(t,"onPrefetching")};this.params={...t,...r,onPrefetchResponse:t.onPrefetchResponse||(()=>{}),onPrefetchError:t.onPrefetchError||(()=>{})}}}static create(t){return new ps(t)}data(){return this.params.method==="get"?null:this.params.data}queryParams(){return this.params.method==="get"?this.params.data:{}}isPartial(){return this.params.only.length>0||this.params.except.length>0||this.params.reset.length>0}onCancelToken(t){this.params.onCancelToken({cancel:t})}markAsFinished(){this.params.completed=!0,this.params.cancelled=!1,this.params.interrupted=!1}markAsCancelled({cancelled:t=!0,interrupted:r=!1}){this.params.onCancel(),this.params.completed=!1,this.params.cancelled=t,this.params.interrupted=r}wasCancelledAtAll(){return this.params.cancelled||this.params.interrupted}onFinish(){this.params.onFinish(this.params)}onStart(){this.params.onStart(this.params)}onPrefetching(){this.params.onPrefetching(this.params)}onPrefetchResponse(t){this.params.onPrefetchResponse&&this.params.onPrefetchResponse(t)}onPrefetchError(t){this.params.onPrefetchError&&this.params.onPrefetchError(t)}all(){return this.params}headers(){const t={...this.params.headers};this.isPartial()&&(t["X-Inertia-Partial-Component"]=X.get().component);const r=this.params.only.concat(this.params.reset);return r.length>0&&(t["X-Inertia-Partial-Data"]=r.join(",")),this.params.except.length>0&&(t["X-Inertia-Partial-Except"]=this.params.except.join(",")),this.params.reset.length>0&&(t["X-Inertia-Reset"]=this.params.reset.join(",")),this.params.errorBag&&this.params.errorBag.length>0&&(t["X-Inertia-Error-Bag"]=this.params.errorBag),t}setPreserveOptions(t){this.params.preserveScroll=ps.resolvePreserveOption(this.params.preserveScroll,t),this.params.preserveState=ps.resolvePreserveOption(this.params.preserveState,t)}runCallbacks(){this.callbacks.forEach(({name:t,args:r})=>{this.params[t](...r)})}merge(t){this.params={...this.params,...t}}wrapCallback(t,r){return(...n)=>{this.recordCallback(r,n),t[r](...n)}}recordCallback(t,r){this.callbacks.push({name:t,args:r})}static resolvePreserveOption(t,r){return typeof t=="function"?t(r):t==="errors"?Object.keys(r.props.errors||{}).length>0:t}},Xg={modal:null,listener:null,createIframeAndPage(e){typeof e=="object"&&(e=`All Inertia requests must receive a valid Inertia response, however a plain JSON response was received.
    ${JSON.stringify(e)}`);const t=document.createElement("html");t.innerHTML=e,t.querySelectorAll("a").forEach(n=>n.setAttribute("target","_top"));const r=document.createElement("iframe");return r.style.backgroundColor="white",r.style.borderRadius="5px",r.style.width="100%",r.style.height="100%",{iframe:r,page:t}},show(e){const{iframe:t,page:r}=this.createIframeAndPage(e);if(this.modal=document.createElement("div"),this.modal.style.position="fixed",this.modal.style.width="100vw",this.modal.style.height="100vh",this.modal.style.padding="50px",this.modal.style.boxSizing="border-box",this.modal.style.backgroundColor="rgba(0, 0, 0, .6)",this.modal.style.zIndex=2e5,this.modal.addEventListener("click",()=>this.hide()),this.modal.appendChild(t),document.body.prepend(this.modal),document.body.style.overflow="hidden",!t.contentWindow)throw new Error("iframe not yet ready.");t.contentWindow.document.open(),t.contentWindow.document.write(r.outerHTML),t.contentWindow.document.close(),this.listener=this.hideOnEscape.bind(this),document.addEventListener("keydown",this.listener)},hide(){this.modal.outerHTML="",this.modal=null,document.body.style.overflow="visible",document.removeEventListener("keydown",this.listener)},hideOnEscape(e){e.keyCode===27&&this.hide()}},MP={show(e){const{iframe:t,page:r}=Xg.createIframeAndPage(e);t.style.boxSizing="border-box",t.style.display="block";const n=document.createElement("dialog");n.id="inertia-error-dialog",Object.assign(n.style,{width:"calc(100vw - 100px)",height:"calc(100vh - 100px)",padding:"0",margin:"auto",border:"none",backgroundColor:"transparent"});const i=document.createElement("style");if(i.textContent=` dialog#inertia-error-dialog::backdrop { background-color: rgba(0, 0, 0, 0.6); } @@ -18,7 +18,7 @@ import{a as Hc,_ as Ro}from"./legacy.js";function At(e){const t=Object.create(nu dialog#inertia-error-dialog:focus { outline: none; } - `,document.head.appendChild(i),n.addEventListener("click",s=>{s.target===n&&n.close()}),n.addEventListener("close",()=>{i.remove(),n.remove()}),n.appendChild(t),document.body.prepend(n),n.showModal(),n.focus(),!t.contentWindow)throw new Error("iframe not yet ready.");t.contentWindow.document.open(),t.contentWindow.document.write(r.outerHTML),t.contentWindow.document.close()}},FP=new Jg,_h=class Yg{constructor(t,r,n){this.requestParams=t,this.response=r,this.originatingPage=n,this.wasPrefetched=!1}static create(t,r,n){return new Yg(t,r,n)}async handlePrefetch(){El(this.requestParams.all().url,window.location)&&this.handle()}async handle(){return FP.add(()=>this.process())}async process(){if(this.requestParams.all().prefetch)return this.wasPrefetched=!0,this.requestParams.all().prefetch=!1,this.requestParams.all().onPrefetched(this.response,this.requestParams.all()),fP(this.response,this.requestParams.all()),Promise.resolve();if(this.requestParams.runCallbacks(),!this.isInertiaResponse())return this.handleNonInertiaResponse();await he.processQueue(),he.preserveUrl=this.requestParams.all().preserveUrl,await this.setPage();const t=X.get().props.errors||{};if(Object.keys(t).length>0){const r=this.getScopedErrors(t);return rP(r),this.requestParams.all().onError(r)}mt.flushByCacheTags(this.requestParams.all().invalidateCacheTags||[]),this.wasPrefetched||mt.flush(X.get().url),cP(X.get()),await this.requestParams.all().onSuccess(X.get()),he.preserveUrl=!1}mergeParams(t){this.requestParams.merge(t)}async handleNonInertiaResponse(){if(this.isLocationVisit()){const r=xr(this.getHeader("x-inertia-location"));return yh(this.requestParams.all().url,r),this.locationVisit(r)}const t={...this.response,data:this.getDataFromResponse(this.response.data)};if(sP(t))return qn.get("future.useDialogForErrorModal")?MP.show(t.data):Xg.show(t.data)}isInertiaResponse(){return this.hasHeader("x-inertia")}hasStatus(t){return this.response.status===t}getHeader(t){return this.response.headers[t]}hasHeader(t){return this.getHeader(t)!==void 0}isLocationVisit(){return this.hasStatus(409)&&this.hasHeader("x-inertia-location")}locationVisit(t){try{if(lt.set(lt.locationVisitKey,{preserveScroll:this.requestParams.all().preserveScroll===!0}),typeof window>"u")return;El(window.location,t)?window.location.reload():window.location.href=t.href}catch{return!1}}async setPage(){const t=this.getDataFromResponse(this.response.data);return this.shouldSetPage(t)?(this.mergeProps(t),this.preserveEqualProps(t),await this.setRememberedState(t),this.requestParams.setPreserveOptions(t),t.url=he.preserveUrl?X.get().url:this.pageUrl(t),this.requestParams.all().onBeforeUpdate(t),oP(t),X.set(t,{replace:this.requestParams.all().replace,preserveScroll:this.requestParams.all().preserveScroll,preserveState:this.requestParams.all().preserveState,viewTransition:this.requestParams.all().viewTransition})):Promise.resolve()}getDataFromResponse(t){if(typeof t!="string")return t;try{return JSON.parse(t)}catch{return t}}shouldSetPage(t){if(!this.requestParams.all().async||this.originatingPage.component!==t.component)return!0;if(this.originatingPage.component!==X.get().component)return!1;const r=xr(this.originatingPage.url),n=xr(X.get().url);return r.origin===n.origin&&r.pathname===n.pathname}pageUrl(t){const r=xr(t.url);return yh(this.requestParams.all().url,r),r.pathname+r.search+r.hash}preserveEqualProps(t){if(t.component!==X.get().component||qn.get("future.preserveEqualProps")!==!0)return;const r=X.get().props;Object.entries(t.props).forEach(([n,i])=>{Ws(i,r[n])&&(t.props[n]=r[n])})}mergeProps(t){if(!this.requestParams.isPartial()||t.component!==X.get().component)return;const r=t.mergeProps||[],n=t.prependProps||[],i=t.deepMergeProps||[],s=t.matchPropsOn||[],o=(a,l)=>{const u=Dr(X.get().props,a),f=Dr(t.props,a);if(Array.isArray(f)){const c=this.mergeOrMatchItems(u||[],f,a,s,l);lr(t.props,a,c)}else if(typeof f=="object"&&f!==null){const c={...u||{},...f};lr(t.props,a,c)}};r.forEach(a=>o(a,!0)),n.forEach(a=>o(a,!1)),i.forEach(a=>{const l=X.get().props[a],u=t.props[a],f=(c,p,h)=>Array.isArray(p)?this.mergeOrMatchItems(c,p,h,s):typeof p=="object"&&p!==null?Object.keys(p).reduce((d,m)=>(d[m]=f(c?c[m]:void 0,p[m],`${h}.${m}`),d),{...c}):p;t.props[a]=f(l,u,a)}),t.props={...X.get().props,...t.props},X.get().scrollProps&&(t.scrollProps={...X.get().scrollProps||{},...t.scrollProps||{}})}mergeOrMatchItems(t,r,n,i,s=!0){const o=Array.isArray(t)?t:[],a=i.find(f=>f.split(".").slice(0,-1).join(".")===n);if(!a)return s?[...o,...r]:[...r,...o];const l=a.split(".").pop()||"",u=new Map;return r.forEach(f=>{this.hasUniqueProperty(f,l)&&u.set(f[l],f)}),s?this.appendWithMatching(o,r,u,l):this.prependWithMatching(o,r,u,l)}appendWithMatching(t,r,n,i){const s=t.map(a=>this.hasUniqueProperty(a,i)&&n.has(a[i])?n.get(a[i]):a),o=r.filter(a=>this.hasUniqueProperty(a,i)?!t.some(l=>this.hasUniqueProperty(l,i)&&l[i]===a[i]):!0);return[...s,...o]}prependWithMatching(t,r,n,i){const s=t.filter(o=>this.hasUniqueProperty(o,i)?!n.has(o[i]):!0);return[...r,...s]}hasUniqueProperty(t,r){return t&&typeof t=="object"&&r in t}async setRememberedState(t){const r=await he.getState(he.rememberedState,{});this.requestParams.all().preserveState&&r&&t.component===X.get().component&&(t.rememberedState=r)}getScopedErrors(t){return this.requestParams.all().errorBag?t[this.requestParams.all().errorBag||""]||{}:t}},wh=class Zg{constructor(t,r){this.page=r,this.requestHasFinished=!1,this.requestParams=Tl.create(t),this.cancelToken=new AbortController}static create(t,r){return new Zg(t,r)}async send(){this.requestParams.onCancelToken(()=>this.cancel({cancelled:!0})),lP(this.requestParams.all()),this.requestParams.onStart(),this.requestParams.all().prefetch&&(this.requestParams.onPrefetching(),uP(this.requestParams.all()));const t=this.requestParams.all().prefetch;return Hc({method:this.requestParams.all().method,url:Ks(this.requestParams.all().url).href,data:this.requestParams.data(),params:this.requestParams.queryParams(),signal:this.cancelToken.signal,headers:this.getHeaders(),onUploadProgress:this.onProgress.bind(this),responseType:"text"}).then(r=>(this.response=_h.create(this.requestParams,r,this.page),this.response.handle())).catch(r=>r?.response?(this.response=_h.create(this.requestParams,r.response,this.page),this.response.handle()):Promise.reject(r)).catch(r=>{if(!Hc.isCancel(r)&&nP(r))return t&&this.requestParams.onPrefetchError(r),Promise.reject(r)}).finally(()=>{this.finish(),t&&this.response&&this.requestParams.onPrefetchResponse(this.response)})}finish(){this.requestParams.wasCancelledAtAll()||(this.requestParams.markAsFinished(),this.fireFinishEvents())}fireFinishEvents(){this.requestHasFinished||(this.requestHasFinished=!0,iP(this.requestParams.all()),this.requestParams.onFinish())}cancel({cancelled:t=!1,interrupted:r=!1}){this.requestHasFinished||(this.cancelToken.abort(),this.requestParams.markAsCancelled({cancelled:t,interrupted:r}),this.fireFinishEvents())}onProgress(t){this.requestParams.data()instanceof FormData&&(t.percentage=t.progress?Math.round(t.progress*100):0,aP(t),this.requestParams.all().onProgress(t))}getHeaders(){const t={...this.requestParams.headers(),Accept:"text/html, application/xhtml+xml","X-Requested-With":"XMLHttpRequest","X-Inertia":!0};return X.get().version&&(t["X-Inertia-Version"]=X.get().version),t}},Eh=class{constructor({maxConcurrent:e,interruptible:t}){this.requests=[],this.maxConcurrent=e,this.interruptible=t}send(e){this.requests.push(e),e.send().then(()=>{this.requests=this.requests.filter(t=>t!==e)})}interruptInFlight(){this.cancel({interrupted:!0},!1)}cancelInFlight(){this.cancel({cancelled:!0},!0)}cancel({cancelled:e=!1,interrupted:t=!1}={},r){if(!this.shouldCancel(r))return;this.requests.shift()?.cancel({interrupted:t,cancelled:e})}shouldCancel(e){return e?!0:this.interruptible&&this.requests.length>=this.maxConcurrent}},DP=class{constructor(){this.syncRequestStream=new Eh({maxConcurrent:1,interruptible:!0}),this.asyncRequestStream=new Eh({maxConcurrent:1/0,interruptible:!1})}init({initialPage:e,resolveComponent:t,swapComponent:r}){X.init({initialPage:e,resolveComponent:t,swapComponent:r}),CP.handle(),zr.init(),zr.on("missingHistoryItem",()=>{typeof window<"u"&&this.visit(window.location.href,{preserveState:!0,preserveScroll:!0,replace:!0})}),zr.on("loadDeferredProps",n=>{this.loadDeferredProps(n)})}get(e,t={},r={}){return this.visit(e,{...r,method:"get",data:t})}post(e,t={},r={}){return this.visit(e,{preserveState:!0,...r,method:"post",data:t})}put(e,t={},r={}){return this.visit(e,{preserveState:!0,...r,method:"put",data:t})}patch(e,t={},r={}){return this.visit(e,{preserveState:!0,...r,method:"patch",data:t})}delete(e,t={}){return this.visit(e,{preserveState:!0,...t,method:"delete"})}reload(e={}){if(!(typeof window>"u"))return this.visit(window.location.href,{...e,preserveScroll:!0,preserveState:!0,async:!0,headers:{...e.headers||{},"Cache-Control":"no-cache"}})}remember(e,t="default"){he.remember(e,t)}restore(e="default"){return he.restore(e)}on(e,t){return typeof window>"u"?()=>{}:zr.onGlobalEvent(e,t)}cancel(){this.syncRequestStream.cancelInFlight()}cancelAll(){this.asyncRequestStream.cancelInFlight(),this.syncRequestStream.cancelInFlight()}poll(e,t={},r={}){return IP.add(e,()=>this.reload(t),{autoStart:r.autoStart??!0,keepAlive:r.keepAlive??!1})}visit(e,t={}){const r=this.getPendingVisit(e,{...t,showProgress:t.showProgress??!t.async}),n=this.getVisitEvents(t);if(n.onBefore(r)===!1||!mh(r))return;const i=r.async?this.asyncRequestStream:this.syncRequestStream;i.interruptInFlight(),!X.isCleared()&&!r.preserveUrl&&Rt.save();const s={...r,...n},o=rr.get(s);o?(gt.reveal(o.inFlight),rr.use(o,s)):(gt.reveal(!0),i.send(wh.create(s,X.get())))}getCached(e,t={}){return rr.findCached(this.getPrefetchParams(e,t))}flush(e,t={}){rr.remove(this.getPrefetchParams(e,t))}flushAll(){rr.removeAll()}flushByCacheTags(e){rr.removeByTags(Array.isArray(e)?e:[e])}getPrefetching(e,t={}){return rr.findInFlight(this.getPrefetchParams(e,t))}prefetch(e,t={},r={}){if((t.method??(vh(e)?e.method:"get"))!=="get")throw new Error("Prefetch requests must use the GET method");const i=this.getPendingVisit(e,{...t,async:!0,showProgress:!1,prefetch:!0,viewTransition:!1}),s=i.url.origin+i.url.pathname+i.url.search,o=window.location.origin+window.location.pathname+window.location.search;if(s===o)return;const a=this.getVisitEvents(t);if(a.onBefore(i)===!1||!mh(i))return;gt.hide(),this.asyncRequestStream.interruptInFlight();const l={...i,...a};new Promise(f=>{const c=()=>{X.get()?f():setTimeout(c,50)};c()}).then(()=>{rr.add(l,f=>{this.asyncRequestStream.send(wh.create(f,X.get()))},{cacheFor:qn.get("prefetch.cacheFor"),cacheTags:[],...r})})}clearHistory(){he.clear()}decryptHistory(){return he.decrypt()}resolveComponent(e){return X.resolve(e)}replace(e){this.clientVisit(e,{replace:!0})}replaceProp(e,t,r){this.replace({preserveScroll:!0,preserveState:!0,props(n){const i=typeof t=="function"?t(Dr(n,e),n):t;return lr(Ye(n),e,i)},...r||{}})}appendToProp(e,t,r){this.replaceProp(e,(n,i)=>{const s=typeof t=="function"?t(n,i):t;return Array.isArray(n)||(n=n!==void 0?[n]:[]),[...n,s]},r)}prependToProp(e,t,r){this.replaceProp(e,(n,i)=>{const s=typeof t=="function"?t(n,i):t;return Array.isArray(n)||(n=n!==void 0?[n]:[]),[s,...n]},r)}push(e){this.clientVisit(e)}clientVisit(e,{replace:t=!1}={}){const r=X.get(),n=typeof e.props=="function"?e.props(r.props):e.props??r.props,{viewTransition:i,onError:s,onFinish:o,onSuccess:a,...l}=e,u={...r,...l,props:n},f=Tl.resolvePreserveOption(e.preserveScroll??!1,u),c=Tl.resolvePreserveOption(e.preserveState??!1,u);X.set(u,{replace:t,preserveScroll:f,preserveState:c,viewTransition:i}).then(()=>{const p=X.get().props.errors||{};if(Object.keys(p).length===0)return a?.(X.get());const h=e.errorBag?p[e.errorBag||""]||{}:p;return s?.(h)}).finally(()=>o?.(e))}getPrefetchParams(e,t){return{...this.getPendingVisit(e,{...t,async:!0,showProgress:!1,prefetch:!0,viewTransition:!1}),...this.getVisitEvents(t)}}getPendingVisit(e,t,r={}){if(vh(e)){const u=e;e=u.url,t.method=t.method??u.method}const n=qn.get("visitOptions"),i=n?n(e.toString(),Ye(t))||{}:{},s={method:"get",data:{},replace:!1,preserveScroll:!1,preserveState:!1,only:[],except:[],headers:{},errorBag:"",forceFormData:!1,queryStringArrayFormat:"brackets",async:!1,showProgress:!0,fresh:!1,reset:[],preserveUrl:!1,prefetch:!1,invalidateCacheTags:[],viewTransition:!1,...t,...i},[o,a]=SP(e,s.data,s.method,s.forceFormData,s.queryStringArrayFormat),l={cancelled:!1,completed:!1,interrupted:!1,...s,...r,url:o,data:a};return l.prefetch&&(l.headers.Purpose="prefetch"),l}getVisitEvents(e){return{onCancelToken:e.onCancelToken||(()=>{}),onBefore:e.onBefore||(()=>{}),onBeforeUpdate:e.onBeforeUpdate||(()=>{}),onStart:e.onStart||(()=>{}),onProgress:e.onProgress||(()=>{}),onFinish:e.onFinish||(()=>{}),onCancel:e.onCancel||(()=>{}),onSuccess:e.onSuccess||(()=>{}),onError:e.onError||(()=>{}),onPrefetched:e.onPrefetched||(()=>{}),onPrefetching:e.onPrefetching||(()=>{})}}loadDeferredProps(e){e&&Object.entries(e).forEach(([t,r])=>{this.reload({only:r})})}},Ba={preferredAttribute(){return qn.get("future.useDataInertiaHeadAttribute")?"data-inertia":"inertia"},buildDOMElement(e){const t=document.createElement("template");t.innerHTML=e;const r=t.content.firstChild;if(!e.startsWith(" + + + + diff --git a/resources/js/components/MainNav.vue b/resources/js/components/MainNav.vue index a6eefdb5661..d6d6f9240fb 100644 --- a/resources/js/components/MainNav.vue +++ b/resources/js/components/MainNav.vue @@ -21,11 +21,16 @@ + + {{ subnavItem.label }} @@ -34,4 +39,17 @@ - + diff --git a/resources/js/components/Modal.vue b/resources/js/components/Modal.vue index 45df441787d..9111ab70ed0 100644 --- a/resources/js/components/Modal.vue +++ b/resources/js/components/Modal.vue @@ -1,43 +1,41 @@ diff --git a/resources/js/components/Pane.vue b/resources/js/components/Pane.vue index f01d0986f7a..5a37f115883 100644 --- a/resources/js/components/Pane.vue +++ b/resources/js/components/Pane.vue @@ -18,7 +18,7 @@ ); const showHeader = computed(() => { - return slots.header; + return slots.header || slots.title || slots['header-actions']; }); const showFooter = computed(() => { @@ -49,8 +49,8 @@ @@ -88,7 +88,8 @@ .actions { display: flex; - justify-content: space-between; + gap: var(--c-spacing-md); + justify-content: end; align-items: center; } diff --git a/resources/js/components/SiteGroupActions.vue b/resources/js/components/SiteGroupActions.vue new file mode 100644 index 00000000000..d27f78bbe90 --- /dev/null +++ b/resources/js/components/SiteGroupActions.vue @@ -0,0 +1,27 @@ + + + + + diff --git a/resources/js/components/VarDump.vue b/resources/js/components/VarDump.vue index fd9bdca62f8..0751fa240dc 100644 --- a/resources/js/components/VarDump.vue +++ b/resources/js/components/VarDump.vue @@ -13,7 +13,7 @@ font-size: 0.7rem; padding: var(--c-spacing-md); border: 1px solid var(--color-slate-400); - background-color: var(--color-slate-200); + background-color: var(--color-slate-50); border-radius: var(--c-radius-md); overflow: auto; } diff --git a/resources/js/layout/AppLayout.vue b/resources/js/layout/AppLayout.vue index adadcca448e..7d19690f937 100644 --- a/resources/js/layout/AppLayout.vue +++ b/resources/js/layout/AppLayout.vue @@ -1,15 +1,29 @@ + + + + diff --git a/resources/js/types/index.ts b/resources/js/types/index.ts index e36456af5d4..fd48479acad 100644 --- a/resources/js/types/index.ts +++ b/resources/js/types/index.ts @@ -14,3 +14,27 @@ export interface SuggestionGroup { label: string; data: Array; } + +export interface SiteGroup { + id: number; + uid: string; + rawName: string; + name: string; +} + +export interface Site { + name: string; + handle: string; + language: string; + id: number; + enabled: boolean; + groupId: number; + group: SiteGroup | null; + primary: boolean; + hasUrls: boolean; + baseUrl: string; + sortOrder: number; + uid: string; + dateCreated: string; + dateUpdated: string; +} diff --git a/resources/templates/_includes/forms/buttonGroup.twig b/resources/templates/_includes/forms/buttonGroup.twig index 4a36091c315..fb3e0c7f5d4 100644 --- a/resources/templates/_includes/forms/buttonGroup.twig +++ b/resources/templates/_includes/forms/buttonGroup.twig @@ -48,15 +48,17 @@ {{ hiddenInput(name, value, { id: inputId, }) }} +{% endif %} - {% js %} - (() => { - new Craft.Listbox($('#{{ id|namespaceInputId }}'), { +{% js %} +(() => { + new Craft.Listbox($('#{{ id|namespaceInputId }}'), { + {% if name ?? false %} onChange: (selectedOption) => { $('#{{ inputId|namespaceInputId }}').val(selectedOption.data('value')); }, - readOnly: {{ disabled ? 1 : 0 }} - }); - })(); - {% endjs %} -{% endif %} + {% endif %} + readOnly: {{ disabled ? 1 : 0 }} + }); +})(); +{% endjs %} diff --git a/resources/templates/graphql/schemas/_edit.twig b/resources/templates/graphql/schemas/_edit.twig index 02fca8a917b..7d2518172d1 100644 --- a/resources/templates/graphql/schemas/_edit.twig +++ b/resources/templates/graphql/schemas/_edit.twig @@ -35,7 +35,7 @@
  • {{ checkbox({ - label: props.label, + label: raw(props.label|md(inlineOnly=true, encode=true)), name: 'permissions[]', value: permissionName, checked: checked, @@ -101,7 +101,7 @@ {% endfor %} -
    +

    {{ 'Choose the available mutations for this schema:'|t('app') }}

    {% for category, catPermissions in schemaComponents.mutations|filter %} @@ -113,6 +113,19 @@ {% endfor %} +
    +

    {{ 'Choose optional features available to this schema:'|t('app') }}

    + +
    + {{ permissionList(schema, { + 'directive:parseRefs': { + label: '{name} directive'|t('app', { + name: '`@parseRefs`', + }), + warning: 'Provides read-only access to user data and most content.', + }, + }) }} +
    {% endblock %} diff --git a/resources/translations/cy/app.php b/resources/translations/cy/app.php index c145f4e6b22..ddc8059b467 100644 --- a/resources/translations/cy/app.php +++ b/resources/translations/cy/app.php @@ -600,8 +600,6 @@ 'Documentation' => 'Documentation', 'Done' => 'Done', 'Don’t require a password reset on next login' => 'Don’t require a password reset on next login', - 'Don’t show in element cards' => 'Don’t show in element cards', - 'Don’t use for element thumbnails' => 'Don’t use for element thumbnails', 'Download backup' => 'Download backup', 'Download codes' => 'Download codes', 'Download' => 'Download', @@ -1141,6 +1139,7 @@ 'Online' => 'Online', 'Only allow {type} to be selected if they match the following rules:' => 'Only allow {type} to be selected if they match the following rules:', 'Only make editable for users who match the following rules:' => 'Only make editable for users who match the following rules:', + 'Only make editable when editing {type} that match the following rules:' => 'Only make editable when editing {type} that match the following rules:', 'Only save entries to the site they were created in' => 'Only save entries to the site they were created in', 'Only show for users who match the following rules:' => 'Only show for users who match the following rules:', 'Only show when editing {type} that match the following rules:' => 'Only show when editing {type} that match the following rules:', @@ -1267,6 +1266,7 @@ 'Propagating {type}' => 'Propagating {type}', 'Propagation Key Format' => 'Propagation Key Format', 'Propagation Method' => 'Propagation Method', + 'Provides read-only access to user data and most content.' => 'Provides read-only access to user data and most content.', 'Province' => 'Province', 'Pruning extra revisions' => 'Pruning extra revisions', 'Public Registration' => 'Public Registration', @@ -1496,7 +1496,6 @@ 'Show date' => 'Show date', 'Show field handles in edit forms' => 'Show field handles in edit forms', 'Show full exception views when Dev Mode is disabled' => 'Show full exception views when Dev Mode is disabled', - 'Show in element cards' => 'Show in element cards', 'Show in folder' => 'Show in folder', 'Show nav' => 'Show nav', 'Show nested sources' => 'Show nested sources', @@ -1741,14 +1740,12 @@ 'This field has a warning' => 'This field has a warning', 'This field has been modified.' => 'This field has been modified.', 'This field is conditional' => 'This field is conditional', - 'This field is included in element cards' => 'This field is included in element cards', 'This field is not set to a valid source.' => 'This field is not set to a valid source.', 'This field is required' => 'This field is required', 'This field is translatable.' => 'This field is translatable.', 'This field is translated for each language.' => 'This field is translated for each language.', 'This field is translated for each site group.' => 'This field is translated for each site group.', 'This field is translated for each site.' => 'This field is translated for each site.', - 'This field provides thumbnails for elements' => 'This field provides thumbnails for elements', 'This field was updated in the Current revision.' => 'This field was updated in the Current revision.', 'This field’s target subfolder path is invalid: {path}' => 'This field’s target subfolder path is invalid: {path}', 'This field’s values are used as search keywords.' => 'This field’s values are used as search keywords.', @@ -2214,6 +2211,7 @@ '{name} Translation Method' => '{name} Translation Method', '{name} active, more info' => '{name} active, more info', '{name} added successfully.' => '{name} added successfully.', + '{name} directive' => '{name} directive', '{name} folder' => '{name} folder', '{name} has been added, but an error occurred when installing it.' => '{name} has been added, but an error occurred when installing it.', '{name} is licensed for the {licenseEdition} edition, but the {currentEdition} edition is installed.' => '{name} is licensed for the {licenseEdition} edition, but the {currentEdition} edition is installed.', diff --git a/routes/actions.php b/routes/actions.php index 7209cd83bcb..13c1f3c9d2f 100644 --- a/routes/actions.php +++ b/routes/actions.php @@ -26,7 +26,6 @@ use CraftCms\Cms\Http\Controllers\Settings\EntryTypesController; use CraftCms\Cms\Http\Controllers\Settings\RoutesController; use CraftCms\Cms\Http\Controllers\Settings\SectionsController; -use CraftCms\Cms\Http\Controllers\Settings\SiteGroupsController; use CraftCms\Cms\Http\Controllers\Settings\SitesController; use CraftCms\Cms\Http\Controllers\Settings\UserGroupsController; use CraftCms\Cms\Http\Controllers\Settings\UserSettingsController; @@ -251,9 +250,6 @@ Route::middleware([ RequireAdminChanges::class, ])->group(function () { - Route::post('sites/rename-group-field', [SiteGroupsController::class, 'showGroupRenameField']); - Route::post('sites/save-group', [SiteGroupsController::class, 'store']); - Route::post('sites/delete-group', [SiteGroupsController::class, 'destroy']); Route::post('sites/save-site', [SitesController::class, 'store']); Route::post('sites/reorder-sites', [SitesController::class, 'reorder']); Route::post('sites/delete-site', [SitesController::class, 'destroy']); diff --git a/routes/cp.php b/routes/cp.php index e0cca4b96dc..2a96a4ee788 100644 --- a/routes/cp.php +++ b/routes/cp.php @@ -16,6 +16,7 @@ use CraftCms\Cms\Http\Controllers\Settings\RoutesController; use CraftCms\Cms\Http\Controllers\Settings\SectionsController; use CraftCms\Cms\Http\Controllers\Settings\SettingsIndexController; +use CraftCms\Cms\Http\Controllers\Settings\SiteGroupsController; use CraftCms\Cms\Http\Controllers\Settings\SitesController; use CraftCms\Cms\Http\Controllers\Settings\UserGroupsController; use CraftCms\Cms\Http\Controllers\Settings\UserSettingsController; @@ -27,7 +28,6 @@ use CraftCms\Cms\Http\Controllers\Users\PreferencesController; use CraftCms\Cms\Http\Controllers\Users\UsersController; use CraftCms\Cms\Http\Controllers\Utilities\UtilitiesController; -use CraftCms\Cms\Http\Middleware\HandleInertiaRequests; use CraftCms\Cms\Http\Middleware\RequireAdmin; use CraftCms\Cms\Http\Middleware\RequireAdminChanges; use CraftCms\Cms\Http\Middleware\RequireEdition; @@ -37,8 +37,7 @@ /** * Admin requests that do not require a login */ -Route::get('install', [InstallController::class, 'index']) - ->middleware([HandleInertiaRequests::class]); +Route::get('install', [InstallController::class, 'index']); /** * Admin requests that require a login @@ -94,7 +93,6 @@ ])->group(function () { // Index page Route::get('settings', SettingsIndexController::class) - ->middleware([HandleInertiaRequests::class]) ->name('settings.index'); // Entry types @@ -109,7 +107,6 @@ // General Route::get('settings/general', [GeneralSettingsController::class, 'index']) - ->middleware([HandleInertiaRequests::class]) ->name('settings.general.index'); Route::post('settings/general', [GeneralSettingsController::class, 'store']) ->middleware([RequireAdminChanges::class]) @@ -141,10 +138,16 @@ Route::get('settings/sections/{section}', [SectionsController::class, 'edit']); // Sites - Route::get('settings/sites', [SitesController::class, 'index']); + Route::get('settings/sites', [SitesController::class, 'index']) + ->name('settings.sites.index'); Route::middleware(RequireAdminChanges::class)->get('settings/sites/new', [SitesController::class, 'create']); Route::get('settings/sites/{site}', [SitesController::class, 'edit']); + // Site Groups + Route::post('settings/site-groups', [SiteGroupsController::class, 'store']); + Route::delete('settings/site-groups/{groupId}', [SiteGroupsController::class, 'destroy']) + ->name('settings.site-groups.destroy'); + // User groups Route::middleware([RequireEdition::class.':'.Edition::Team->value])->group(function () { Route::get('settings/users', [UserGroupsController::class, 'index']); diff --git a/scripts/copyicons.php b/scripts/copyicons.php index ee246d9f9a1..807646bfd7f 100644 --- a/scripts/copyicons.php +++ b/scripts/copyicons.php @@ -42,8 +42,17 @@ $aliasesPhp = <<set every + * time incurs a high performance cost. + */ +\$reflectionProperty = new ReflectionProperty(\$aliases, 'aliases'); +\$reflectionProperty->setValue(\$aliases, array_merge_recursive(\$reflectionProperty->getValue(\$aliases), [ + '@appicons' => [ PHP; @@ -81,7 +90,7 @@ if ($style !== 'custom') { $terms = $meta[$name]['search']['terms'] ?? []; $index[$name] = [ - 'name' => sprintf(' %s ', Search::normalizeKeywords($name, language: 'en-US')), + 'name' => sprintf(' %s ', Search::normalizeKeywords((string) $name, language: 'en-US')), 'terms' => sprintf(' %s ', Search::normalizeKeywords($terms, language: 'en-US')), 'pro' => empty($meta[$name]['free']), 'styles' => $meta[$name]['styles'] ?? [], @@ -90,12 +99,17 @@ if ($style !== 'solid') { $aliasesPhp .= << "@icons/$dir/$name.svg", PHP; } } +$aliasesPhp .= <<<'PHP' + ] +])); +PHP; + echo "Finished writing $wrote icons ($skipped skipped).\n"; echo 'Copying LICENSE.txt ... '; diff --git a/src/Config/GeneralConfig.php b/src/Config/GeneralConfig.php index 0986cfd9274..f4a707be426 100644 --- a/src/Config/GeneralConfig.php +++ b/src/Config/GeneralConfig.php @@ -14,7 +14,6 @@ use CraftCms\Cms\Support\PHP; use DateInterval; use Deprecated; -use Illuminate\Contracts\Config\Repository as ConfigRepository; use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken; use Illuminate\Http\Middleware\TrustProxies; use Illuminate\Http\Request; @@ -32,17 +31,17 @@ class GeneralConfig extends BaseConfig { use Conditionable; - public const IMAGE_DRIVER_AUTO = 'auto'; + public const string IMAGE_DRIVER_AUTO = 'auto'; - public const IMAGE_DRIVER_GD = 'gd'; + public const string IMAGE_DRIVER_GD = 'gd'; - public const IMAGE_DRIVER_IMAGICK = 'imagick'; + public const string IMAGE_DRIVER_IMAGICK = 'imagick'; - public const CAMEL_CASE = 'camel'; + public const string CAMEL_CASE = 'camel'; - public const PASCAL_CASE = 'pascal'; + public const string PASCAL_CASE = 'pascal'; - public const SNAKE_CASE = 'snake'; + public const string SNAKE_CASE = 'snake'; protected static array $renamedSettings = [ 'activateAccountFailurePath' => 'invalidUserTokenPath', @@ -3856,7 +3855,7 @@ public function backupCommandFormat(string $value): self public function blowfishHashCost(int $value): self { app()->booting(function () use ($value) { - config()->set('hashing.bcrypt.rounds', $value); + Config::set('hashing.bcrypt.rounds', $value); Deprecator::log('generalConfig.blowfishHashCost', 'blowfishHashCost is deprecated. Set hashing.bcrypt.rounds or BCRYPT_ROUNDS instead.'); }); @@ -4081,7 +4080,10 @@ public function defaultCookieDomain(string $value): self { $this->defaultCookieDomain = $value; - config()->set('session.domain', $value); + app()->booting(function () use ($value) { + Deprecator::log('generalConfig.defaultCookieDomain', 'Calling defaultCookieDomain() is deprecated.'); + Config::set('session.domain', $value); + }); return $this; } @@ -4359,12 +4361,13 @@ public function deferPublicRegistrationPassword(bool $value = true): self #[Deprecated(message: 'in 6.0.0. Set `app.debug` or `APP_DEBUG` environment variable instead.')] public function devMode(bool $value = true): self { - app()->booting(fn () => Deprecator::log('generalConfig.devMode', 'devMode is deprecated. Set `app.debug` or `APP_DEBUG` environment variable instead.')); + app()->booting(function () use ($value) { + Deprecator::log('generalConfig.devMode', 'devMode is deprecated. Set `app.debug` or `APP_DEBUG` environment variable instead.'); + Config::set('app.debug', $value); + }); $this->devMode = $value; - config()->set('app.debug', $value); - return $this; } @@ -4715,6 +4718,25 @@ public function enableTemplateCaching(bool $value = true): self return $this; } + /** + * Whether all Twig templates should be sandboxed. + * + * ```php + * ->enableTwigSandbox(false) + * ``` + * + * @group Security + * + * @see $enableTwigSandbox + */ + #[Deprecated(message: 'in 6.0.0. Sandbox is always enabled.')] + public function enableTwigSandbox(bool $value = true): self + { + app()->booting(fn () => Deprecator::log('generalConfig.enableTwigSandbox', 'Calling enableTwigSandbox() is deprecated. Sandbox is always enabled.')); + + return $this; + } + /** * The prefix that should be prepended to HTTP error status codes when determining the path to look for an error’s template. * @@ -5668,11 +5690,12 @@ public function phpMaxMemoryLimit(?string $value): self #[Deprecated(message: 'in 6.0.0. Configure `session.cookie` or set `SESSION_COOKIE` environment variable.')] public function phpSessionName(string $value): self { - app()->booting(fn () => Deprecator::log('generalConfig.phpSessionName', 'Calling phpSessionName() is deprecated. Configure `session.cookie` or set `SESSION_COOKIE` environment variable.')); - $this->phpSessionName = $value; - config()->set('session.cookie', $value); + app()->booting(function () use ($value) { + Deprecator::log('generalConfig.phpSessionName', 'Calling phpSessionName() is deprecated. Configure `session.cookie` or set `SESSION_COOKIE` environment variable.'); + Config::set('session.cookie', $value); + }); return $this; } @@ -6079,12 +6102,9 @@ public function rememberedUserSessionDuration(mixed $value): self $this->rememberedUserSessionDuration = $interval ? ConfigHelper::durationInSeconds($interval) : 0; $this->_rememberedUserSessionDuration = $interval ?: null; - if (app()->has(ConfigRepository::class)) { - app()->get(ConfigRepository::class)->set( - 'auth.guards.web.remember', - floor($this->rememberedUserSessionDuration / 60), - ); - } + app()->booting(function () { + Config::set('auth.guards.web.remember', floor($this->rememberedUserSessionDuration / 60)); + }); return $this; } @@ -6494,11 +6514,12 @@ public function secureProtocolHeaders(?array $value): self #[Deprecated(message: 'in 6.0.0. Configure `app.key` or set `APP_KEY` in your environment instead.')] public function securityKey(string $value): self { - app()->booting(fn () => Deprecator::log('generalConfig.securityKey', 'Calling securityKey() is deprecated.')); - $this->securityKey = $value; - config()->set('app.key', $value); + app()->booting(function () use ($value) { + Deprecator::log('generalConfig.securityKey', 'Calling securityKey() is deprecated.'); + Config::set('app.key', $value); + }); return $this; } @@ -6794,9 +6815,10 @@ public function testToEmailAddress(string|array|null|false $value): self #[Deprecated(message: "in 6.0.0. Laravel's `app.timezone` config variable should be used instead.")] public function timezone(?string $value): self { - config()->set('app.timezone', $value); - - app()->booting(fn () => Deprecator::log('generalConfig.timezone', 'Calling timezone() is deprecated. Laravel\'s `app.timezone` config variable should be used instead.')); + app()->booting(function () use ($value) { + Deprecator::log('generalConfig.timezone', 'Calling timezone() is deprecated. Laravel\'s `app.timezone` config variable should be used instead.'); + Config::set('app.timezone', $value); + }); $this->timezone = $value; @@ -7062,9 +7084,10 @@ public function usePathInfo(bool $value = true): self #[Deprecated(message: 'in 6.0.0. Configure `session.secure` or set `SESSION_SECURE_COOKIE` in your environment instead.')] public function useSecureCookies(string|bool $value): self { - app()->booting(fn () => Deprecator::log('generalConfig.useSecureCookies', 'Calling useSecureCookies() is deprecated. Configure `session.secure` or set `SESSION_SECURE_COOKIE` in your environment instead.')); - - config()->set('session.secure', $value === 'auto' ? null : $value); + app()->booting(function () use ($value) { + Deprecator::log('generalConfig.useSecureCookies', 'Calling useSecureCookies() is deprecated. Configure `session.secure` or set `SESSION_SECURE_COOKIE` in your environment instead.'); + Config::set('session.secure', $value === 'auto' ? null : $value); + }); $this->useSecureCookies = $value; diff --git a/src/Console/ConsoleServiceProvider.php b/src/Console/ConsoleServiceProvider.php index 0b25af6df30..5c1e7cc993c 100644 --- a/src/Console/ConsoleServiceProvider.php +++ b/src/Console/ConsoleServiceProvider.php @@ -22,6 +22,7 @@ use CraftCms\Cms\Console\Commands\Utils\DeleteEmptyVolumeFoldersCommand; use CraftCms\Cms\Console\Commands\Utils\UpdateUsernamesCommand; use CraftCms\Cms\GarbageCollection\Commands\RunCommand; +use CraftCms\Cms\ProjectConfig\ProjectConfig; use Illuminate\Support\ServiceProvider; /** @@ -66,7 +67,7 @@ public function boot(): void } $this->app->terminating(function () { - app('Craft')->getProjectConfig()->flush(); + $this->app->make(ProjectConfig::class)->flush(); }); $this->commands($this->commands); diff --git a/src/Database/Queries/Concerns/FormatsResults.php b/src/Database/Queries/Concerns/FormatsResults.php index ef68bc04ec6..2d486b9a05f 100644 --- a/src/Database/Queries/Concerns/FormatsResults.php +++ b/src/Database/Queries/Concerns/FormatsResults.php @@ -239,27 +239,30 @@ private function applyDefaultOrder(ElementQuery $elementQuery): void $ids = is_string($ids) ? str($ids)->explode(',')->all() : [$ids]; } - $elementQuery->query->orderBy(new FixedOrderExpression('elements.id', $ids)); + $elementQuery->orderBy(new FixedOrderExpression('elements.id', $ids)); return; } if ($elementQuery->revisions) { - $elementQuery->query->orderByDesc('num'); + $elementQuery->orderByDesc('num'); return; } if ($elementQuery->shouldJoinStructureData()) { - $elementQuery->query->orderBy('structureelements.lft'); + $elementQuery->orderBy('structureelements.lft'); } foreach ($elementQuery->defaultOrderBy as $column => $direction) { - $elementQuery->query->orderBy($column, match ($direction) { + $direction = match ($direction) { SORT_ASC, 'asc' => 'asc', SORT_DESC, 'desc' => 'desc', default => throw new QueryAbortedException('Invalid sort direction: '.$direction), - }); + }; + + $elementQuery->query->orderBy($column, $direction); + $elementQuery->subQuery->orderBy($column, $direction); } } diff --git a/src/Database/Queries/ElementQuery.php b/src/Database/Queries/ElementQuery.php index be64f6efce6..15bd8a83d7b 100644 --- a/src/Database/Queries/ElementQuery.php +++ b/src/Database/Queries/ElementQuery.php @@ -592,7 +592,10 @@ public function nth(int $n, array|string $columns = ['*']): ?ElementInterface return $eagerResult->first(); } - return $this->query->skip(($this->offset ?: 0) + $n)->first($columns); + /** @var ?ElementInterface $element */ + $element = $this->query->skip(($this->offset ?: 0) + $n)->first($columns); + + return $element; } /** diff --git a/src/Database/Queries/UserQuery.php b/src/Database/Queries/UserQuery.php index 4bde4ed0112..5c5c932ccee 100644 --- a/src/Database/Queries/UserQuery.php +++ b/src/Database/Queries/UserQuery.php @@ -5,6 +5,8 @@ namespace CraftCms\Cms\Database\Queries; use Closure; +use CraftCms\Cms\Database\Expressions\OrderByPlaceholderExpression; +use CraftCms\Cms\Database\Queries\Concerns\FormatsResults; use CraftCms\Cms\Database\Queries\Concerns\User\QueriesAffiliatedSite; use CraftCms\Cms\Database\Queries\Concerns\User\QueriesAssetUploaders; use CraftCms\Cms\Database\Queries\Concerns\User\QueriesAuthors; @@ -36,6 +38,8 @@ final class UserQuery extends ElementQuery */ protected array $defaultOrderBy = [ 'users.username' => SORT_ASC, + 'users.active' => SORT_DESC, + 'users.pending' => SORT_DESC, ]; public function __construct(array $config = []) @@ -63,6 +67,39 @@ public function __construct(array $config = []) 'users.fullName', 'users.rememberToken', ]); + + $this->beforeQuery(function (self $userQuery) { + $orders = $userQuery->query->orders; + + if (is_null($orders)) { + return; + } + + $orders = array_filter( + array: $orders, + callback: fn ($order) => ! $order['column'] instanceof OrderByPlaceholderExpression, + ); + + // Order by was not set so we can fall back to the applyDefaultOrder logic in FormatsResults + if (empty($orders)) { + return; + } + + $orders = array_merge($orders, [ + [ + 'column' => 'users.active', + 'direction' => 'desc', + ], + [ + 'column' => 'users.pending', + 'direction' => 'desc', + ], + ]); + + // If there's a custom orderBy, make sure we're showing active, non-pending accounts first + $userQuery->query->orders = $orders; + $userQuery->subQuery->orders = $orders; + }); } /** diff --git a/src/Element/ElementSources.php b/src/Element/ElementSources.php index 29f693e0008..83d1a60848b 100644 --- a/src/Element/ElementSources.php +++ b/src/Element/ElementSources.php @@ -203,7 +203,7 @@ private function defineSources(string $elementType, string $context): array continue; } - $source['sites'] = collect($source['sites'] ?? []) + $source['sites'] = collect($source['sites']) ->map(function (int|string $siteId) { if (! is_string($siteId)) { return $siteId; @@ -215,6 +215,7 @@ private function defineSources(string $elementType, string $context): array try { return Sites::getSiteByUid($siteId)->id; + /** @phpstan-ignore catch.neverThrown */ } catch (SiteNotFoundException) { return null; } diff --git a/src/Entry/EntryTypes.php b/src/Entry/EntryTypes.php index 825bb315b68..820c7765fee 100644 --- a/src/Entry/EntryTypes.php +++ b/src/Entry/EntryTypes.php @@ -598,7 +598,7 @@ public function getTableData( $usages = $this->allEntryTypeUsages(); foreach ($entryTypes as $entryType) { - $label = $entryType->getUiLabel(); + $label = Html::encode($entryType->getUiLabel()); $chipCellContent = Html::beginTag('div', ['class' => 'inline-chips']). Cp::chipHtml($entryType, [ 'labelHtml' => Html::a($label, $entryType->getCpEditUrl(), [ diff --git a/src/Field/Data/LinkData.php b/src/Field/Data/LinkData.php index 6f0f9ff5b2e..18aeac8014f 100644 --- a/src/Field/Data/LinkData.php +++ b/src/Field/Data/LinkData.php @@ -12,12 +12,13 @@ use CraftCms\Cms\Field\LinkTypes\BaseLinkType; use CraftCms\Cms\Support\Html; use Spatie\LaravelData\Dto; +use Stringable; use Twig\Markup; /** * Link field data class. */ -final class LinkData extends Dto implements \Stringable, Serializable +final class LinkData extends Dto implements Serializable, Stringable { /** @var string|null The link’s URL suffix value. */ public ?string $urlSuffix = null; @@ -132,27 +133,46 @@ public function setFilename(?string $filename): void */ public function getLink(): Markup { - $url = $this->getUrl(); - if ($url === '') { + $attributes = $this->getAttributes(); + + if ($attributes === null) { $html = ''; } else { $label = $this->getLabel(); - $html = Html::a(Html::encode($label !== '' ? $label : $url), $url, [ - 'target' => $this->target, - 'title' => $this->title, - 'class' => $this->class, - 'id' => $this->id, - 'rel' => $this->rel, - 'aria' => [ - 'label' => $this->ariaLabel, - ], - 'download' => $this->download ? ($this->filename ?? true) : false, - ]); + if ($label === '') { + $label = $this->getUrl(); + } + $html = Html::a(Html::encode($label), options: $attributes); } return Template::raw($html); } + /** + * Returns the attributes that should be added to `` tags for this link. + */ + public function getAttributes(): ?array + { + $url = $this->getUrl(); + + if ($url === '') { + return null; + } + + return [ + 'href' => $url, + 'target' => $this->target, + 'title' => $this->title, + 'class' => $this->class, + 'id' => $this->id, + 'rel' => $this->rel, + 'aria' => [ + 'label' => $this->ariaLabel, + ], + 'download' => $this->download && (bool) ($this->filename ?? true), + ]; + } + /** * Returns an element query that will fetch the element linked by the field, if there is one. */ diff --git a/src/Field/Fields.php b/src/Field/Fields.php index 2cd5d6e5330..d1177109713 100644 --- a/src/Field/Fields.php +++ b/src/Field/Fields.php @@ -908,8 +908,6 @@ public function assembleLayoutFromPost(?string $namespace = null): FieldLayout $config = JsonHelper::decode(Request::get("{$paramPrefix}fieldLayout")); $config['generatedFields'] = Request::get("{$paramPrefix}generatedFields") ?: null; - $config['cardView'] = Request::get("{$paramPrefix}cardView") ?: null; - $config['cardThumbAlignment'] = Request::get($paramPrefix.'thumbAlignment'); $layout = $this->createLayout($config); diff --git a/src/Http/Controllers/FieldsController.php b/src/Http/Controllers/FieldsController.php index b17689d2c00..1f9f9b16ab2 100644 --- a/src/Http/Controllers/FieldsController.php +++ b/src/Http/Controllers/FieldsController.php @@ -281,7 +281,7 @@ public function applyLayoutElementSettings(Request $request): Response ]); } - public function renderCardPreview(Request $request): JsonResponse + public function renderCardPreview(Request $request, Fields $fields): JsonResponse { $request->validate([ 'fieldLayoutConfig' => ['required', 'array'], @@ -291,30 +291,10 @@ public function renderCardPreview(Request $request): JsonResponse ]); $fieldLayoutConfig = $request->input('fieldLayoutConfig'); - $cardElements = $request->input('cardElements'); - $showThumb = $request->input('showThumb', false); - $thumbAlignment = $request->input('thumbAlignment', false); - - if (! isset($fieldLayoutConfig['id'])) { - $fieldLayout = Craft::createObject([ - 'class' => FieldLayout::class, - ...Component::cleanseConfig($fieldLayoutConfig), - ]); - $fieldLayout->type = $fieldLayoutConfig['type']; - } else { - $fieldLayout = $this->fieldsService->getLayoutById($fieldLayoutConfig['id']); - } - - abort_if(! $fieldLayout, 400, 'Invalid field layout'); - - $fieldLayout->setCardView( - array_column($cardElements, 'value') - ); // this fully takes care of attributes, but not fields - - $fieldLayout->setCardThumbAlignment($thumbAlignment); + $fieldLayout = $fields->createLayout($fieldLayoutConfig); return new JsonResponse([ - 'previewHtml' => Cp::cardPreviewHtml($fieldLayout, $cardElements, $showThumb), + 'previewHtml' => Cp::cardPreviewHtml($fieldLayout), ]); } diff --git a/src/Http/Controllers/Settings/SiteGroupsController.php b/src/Http/Controllers/Settings/SiteGroupsController.php index b02246ea955..e0585b83c78 100644 --- a/src/Http/Controllers/Settings/SiteGroupsController.php +++ b/src/Http/Controllers/Settings/SiteGroupsController.php @@ -4,13 +4,9 @@ namespace CraftCms\Cms\Http\Controllers\Settings; -use craft\helpers\Cp; use CraftCms\Cms\Http\RespondsWithFlash; use CraftCms\Cms\Site\Data\SiteGroup; use CraftCms\Cms\Site\SiteGroups; -use CraftCms\Cms\Support\Str; -use Illuminate\Http\JsonResponse; -use Illuminate\Http\Request; use Symfony\Component\HttpFoundation\Response; use function CraftCms\Cms\t; @@ -23,25 +19,6 @@ public function __construct( private SiteGroups $siteGroups, ) {} - public function showGroupRenameField(Request $request): JsonResponse - { - $view = \Craft::$app->getView(); - $view->startJsBuffer(); - - $html = $view->namespaceInputs(fn () => Cp::autosuggestFieldHtml([ - 'label' => t('Group Name'), - 'instructions' => t('What this group will be called in the control panel.'), - 'id' => 'name', - 'name' => 'name', - 'value' => $request->input('name', ''), - 'suggestEnvVars' => true, - 'required' => true, - ]), 'name'.Str::random(10)); - $js = $view->clearJsBuffer(); - - return new JsonResponse(compact('html', 'js')); - } - public function store(SiteGroup $siteGroup): Response { $this->siteGroups->saveGroup($siteGroup); @@ -49,21 +26,24 @@ public function store(SiteGroup $siteGroup): Response $data = $siteGroup->toArray(); $data['name'] = t($data['name'], category: 'site'); - return $this->asSuccess(data: [ - 'group' => $data, - ]); + return back(); } - public function destroy(Request $request): Response + public function destroy(int $groupId): Response { - $groupId = $request->validate([ - 'id' => ['required', 'integer'], - ])['id']; - + /** + * @TODO Better error message + * + * If you try to delete a group with sites associated with it, a good + * error message is logged but not presented to the user. We should + * surface the better error message but I don't want to change too + * much about these methods at the moment. + */ if (! $this->siteGroups->deleteGroupById($groupId)) { - return $this->asFailure(); + return back()->with('error', t('Could not delete the group.')); } - return $this->asSuccess(t('Group deleted.')); + return to_route('craft.cp.settings.sites.index') + ->with('success', t('Group deleted.')); } } diff --git a/src/Http/Controllers/Settings/SitesController.php b/src/Http/Controllers/Settings/SitesController.php index 4adced2efbe..f1d712fb976 100644 --- a/src/Http/Controllers/Settings/SitesController.php +++ b/src/Http/Controllers/Settings/SitesController.php @@ -5,8 +5,8 @@ namespace CraftCms\Cms\Http\Controllers\Settings; use craft\helpers\UrlHelper; -use craft\web\assets\sites\SitesAsset; use CraftCms\Cms\Config\GeneralConfig; +use CraftCms\Cms\Cp\SelectOptions; use CraftCms\Cms\Database\Table; use CraftCms\Cms\Http\RespondsWithFlash; use CraftCms\Cms\Site\Data\Site; @@ -18,6 +18,7 @@ use Illuminate\Http\JsonResponse; use Illuminate\Http\Request; use Illuminate\Validation\Rule; +use Inertia\Inertia; use Symfony\Component\HttpFoundation\Response; use function CraftCms\Cms\t; @@ -44,30 +45,22 @@ public function index(Request $request) $sites = isset($group) ? $this->sites->getSitesByGroupId($groupId) - : $this->sites->getAllSites(); + : $this->sites->getAllSites()->values(); $crumbs = [ ['label' => t('Settings'), 'url' => UrlHelper::cpUrl('settings')], ]; - $view = \Craft::$app->getView(); - $view->registerAssetBundle(SitesAsset::class); - $view->registerTranslations('app', [ - 'Could not create the group:', - 'Group renamed.', - 'Could not rename the group:', - 'What do you want to name the group?', - 'Are you sure you want to delete this group?', - 'What do you want to do with any content that is only available in {language}?', - 'Transfer it to:', - 'Delete it', - 'Delete {site}', - ]); - - return view('craftcms::settings/sites/index', [ + return Inertia::render('SettingsSitesIndex', [ 'crumbs' => $crumbs, + 'nameSuggestions' => Inertia::defer(fn () => SelectOptions::getEnvSuggestions()), 'group' => $group ?? null, - 'sites' => $sites, + 'groups' => $this->siteGroups->getAllGroups()->sortBy(['id', 'asc'])->values(), + 'sites' => $sites + ->sortBy([ + ['id', 'asc'], + ['sortOrder', 'asc'], + ])->values()->toArray(), 'readOnly' => $this->readOnly, ]); } diff --git a/src/Providers/CraftServiceProvider.php b/src/Providers/CraftServiceProvider.php index 8fd1f5de60b..713cc782804 100644 --- a/src/Providers/CraftServiceProvider.php +++ b/src/Providers/CraftServiceProvider.php @@ -18,6 +18,7 @@ use CraftCms\Cms\Section\SectionServiceProvider; use CraftCms\Cms\Structure\StructureServiceProvider; use CraftCms\Cms\Translation\TranslationServiceProvider; +use CraftCms\Cms\Twig\TwigServiceProvider; use CraftCms\Cms\Updates\UpdatesServiceProvider; use CraftCms\Cms\User\UserServiceProvider; use Illuminate\Support\AggregateServiceProvider; @@ -30,6 +31,7 @@ final class CraftServiceProvider extends AggregateServiceProvider TranslationServiceProvider::class, DatabaseServiceProvider::class, ViewServiceProvider::class, + TwigServiceProvider::class, ProjectConfigServiceProvider::class, DeprecatorServiceProvider::class, LicenseServiceProvider::class, diff --git a/src/Providers/IconServiceProvider.php b/src/Providers/IconServiceProvider.php index 14387b06958..8d5194a7c83 100644 --- a/src/Providers/IconServiceProvider.php +++ b/src/Providers/IconServiceProvider.php @@ -4,58 +4,58 @@ namespace CraftCms\Cms\Providers; -use CraftCms\Aliases\Aliases; use Illuminate\Support\ServiceProvider; +use Yiisoft\Aliases\Aliases as YiiAliases; final class IconServiceProvider extends ServiceProvider { - public function boot(): void + public function boot(YiiAliases $aliases): void { - Aliases::set('@icons', '@craftcms/resources/icons'); - Aliases::set('@appicons', '@icons/solid'); + $aliases->set('@icons', '@craftcms/resources/icons'); + $aliases->set('@appicons', '@icons/solid'); $customIconsPath = '@icons/custom-icons'; // Icons - Aliases::set('@appicons/c-debug.svg', "$customIconsPath/c-debug.svg"); - Aliases::set('@appicons/c-outline.svg', "$customIconsPath/c-outline.svg"); - Aliases::set('@appicons/craft-cms.svg', "$customIconsPath/craft-cms.svg"); - Aliases::set('@appicons/craft-partners.svg', "$customIconsPath/craft-partners.svg"); - Aliases::set('@appicons/craft-stack-exchange.svg', "$customIconsPath/craft-stack-exchange.svg"); - Aliases::set('@appicons/default-plugin.svg', "$customIconsPath/default-plugin.svg"); - Aliases::set('@appicons/grip-dots.svg', "$customIconsPath/grip-dots.svg"); + $aliases->set('@appicons/c-debug.svg', "$customIconsPath/c-debug.svg"); + $aliases->set('@appicons/c-outline.svg', "$customIconsPath/c-outline.svg"); + $aliases->set('@appicons/craft-cms.svg', "$customIconsPath/craft-cms.svg"); + $aliases->set('@appicons/craft-partners.svg', "$customIconsPath/craft-partners.svg"); + $aliases->set('@appicons/craft-stack-exchange.svg', "$customIconsPath/craft-stack-exchange.svg"); + $aliases->set('@appicons/default-plugin.svg', "$customIconsPath/default-plugin.svg"); + $aliases->set('@appicons/grip-dots.svg', "$customIconsPath/grip-dots.svg"); - require Aliases::get('@icons/aliases.php'); + require $aliases->get('@icons/aliases.php'); $solidIconsPath = '@icons/solid'; // Renamed icon aliases - Aliases::set('@appicons/alert.svg', "$solidIconsPath/triangle-exclamation.svg"); - Aliases::set('@appicons/broken-image', "$solidIconsPath/image-slash.svg"); - Aliases::set('@appicons/buoey.svg', "$solidIconsPath/life-ring.svg"); - Aliases::set('@appicons/draft.svg', "$solidIconsPath/scribble.svg"); - Aliases::set('@appicons/entry-types', "$solidIconsPath/files.svg"); - Aliases::set('@appicons/excite.svg', "$solidIconsPath/certificate.svg"); - Aliases::set('@appicons/feed.svg', "$solidIconsPath/rss.svg"); - Aliases::set('@appicons/field.svg', "$solidIconsPath/pen-to-square.svg"); - Aliases::set('@appicons/hash.svg', "$solidIconsPath/hashtag.svg"); - Aliases::set('@appicons/info-circle', "$solidIconsPath/circle-info.svg"); - Aliases::set('@appicons/info-circle.svg', "$solidIconsPath/circle-info.svg"); - Aliases::set('@appicons/info.svg', "$solidIconsPath/circle-info.svg"); - Aliases::set('@appicons/info.svg', "$solidIconsPath/circle-info.svg"); - Aliases::set('@appicons/location.svg', "$solidIconsPath/location-dot.svg"); - Aliases::set('@appicons/photo.svg', "$solidIconsPath/image.svg"); - Aliases::set('@appicons/plugin.svg', "$solidIconsPath/plug.svg"); - Aliases::set('@appicons/routes.svg', "$solidIconsPath/signs-post.svg"); - Aliases::set('@appicons/search.svg', "$solidIconsPath/magnifying-glass.svg"); - Aliases::set('@appicons/shopping-cart', "$solidIconsPath/cart-shopping.svg"); - Aliases::set('@appicons/template.svg', "$solidIconsPath/file-code.svg"); - Aliases::set('@appicons/template.svg', "$solidIconsPath/file-code.svg"); - Aliases::set('@appicons/tip.svg', "$solidIconsPath/lightbulb.svg"); - Aliases::set('@appicons/tools.svg', "$solidIconsPath/screwdriver-wrench.svg"); - Aliases::set('@appicons/tree.svg', "$solidIconsPath/sitemap.svg"); - Aliases::set('@appicons/upgrade.svg', "$solidIconsPath/square-arrow-up.svg"); - Aliases::set('@appicons/wand.svg', "$solidIconsPath/wand-magic-sparkles.svg"); - Aliases::set('@appicons/world.svg', "$solidIconsPath/earth-americas.svg"); + $aliases->set('@appicons/alert.svg', "$solidIconsPath/triangle-exclamation.svg"); + $aliases->set('@appicons/broken-image', "$solidIconsPath/image-slash.svg"); + $aliases->set('@appicons/buoey.svg', "$solidIconsPath/life-ring.svg"); + $aliases->set('@appicons/draft.svg', "$solidIconsPath/scribble.svg"); + $aliases->set('@appicons/entry-types', "$solidIconsPath/files.svg"); + $aliases->set('@appicons/excite.svg', "$solidIconsPath/certificate.svg"); + $aliases->set('@appicons/feed.svg', "$solidIconsPath/rss.svg"); + $aliases->set('@appicons/field.svg', "$solidIconsPath/pen-to-square.svg"); + $aliases->set('@appicons/hash.svg', "$solidIconsPath/hashtag.svg"); + $aliases->set('@appicons/info-circle', "$solidIconsPath/circle-info.svg"); + $aliases->set('@appicons/info-circle.svg', "$solidIconsPath/circle-info.svg"); + $aliases->set('@appicons/info.svg', "$solidIconsPath/circle-info.svg"); + $aliases->set('@appicons/info.svg', "$solidIconsPath/circle-info.svg"); + $aliases->set('@appicons/location.svg', "$solidIconsPath/location-dot.svg"); + $aliases->set('@appicons/photo.svg', "$solidIconsPath/image.svg"); + $aliases->set('@appicons/plugin.svg', "$solidIconsPath/plug.svg"); + $aliases->set('@appicons/routes.svg', "$solidIconsPath/signs-post.svg"); + $aliases->set('@appicons/search.svg', "$solidIconsPath/magnifying-glass.svg"); + $aliases->set('@appicons/shopping-cart', "$solidIconsPath/cart-shopping.svg"); + $aliases->set('@appicons/template.svg', "$solidIconsPath/file-code.svg"); + $aliases->set('@appicons/template.svg', "$solidIconsPath/file-code.svg"); + $aliases->set('@appicons/tip.svg', "$solidIconsPath/lightbulb.svg"); + $aliases->set('@appicons/tools.svg', "$solidIconsPath/screwdriver-wrench.svg"); + $aliases->set('@appicons/tree.svg', "$solidIconsPath/sitemap.svg"); + $aliases->set('@appicons/upgrade.svg', "$solidIconsPath/square-arrow-up.svg"); + $aliases->set('@appicons/wand.svg', "$solidIconsPath/wand-magic-sparkles.svg"); + $aliases->set('@appicons/world.svg', "$solidIconsPath/earth-americas.svg"); } } diff --git a/src/Route/RouteServiceProvider.php b/src/Route/RouteServiceProvider.php index 2fd15a214d8..95bec3ea7c5 100644 --- a/src/Route/RouteServiceProvider.php +++ b/src/Route/RouteServiceProvider.php @@ -10,6 +10,7 @@ use CraftCms\Cms\Http\Middleware\ExtractNamespace; use CraftCms\Cms\Http\Middleware\FlushProjectConfig; use CraftCms\Cms\Http\Middleware\HandleActionRequest; +use CraftCms\Cms\Http\Middleware\HandleInertiaRequests; use CraftCms\Cms\Http\Middleware\HandleTokenRequest; use CraftCms\Cms\Http\Middleware\RequireCpRequest; use CraftCms\Cms\Http\Middleware\SendPoweredByHeader; @@ -83,6 +84,7 @@ private function bootMiddleware(Router $router): void collect([ RequireCpRequest::class, CheckRequirements::class, + HandleInertiaRequests::class, ])->each(fn ($middleware) => $router->pushMiddlewareToGroup('craft.cp', $middleware)); collect([ diff --git a/src/Site/Data/Site.php b/src/Site/Data/Site.php index 50c79435d95..ad76abc133f 100644 --- a/src/Site/Data/Site.php +++ b/src/Site/Data/Site.php @@ -15,12 +15,12 @@ use CraftCms\Cms\Support\Facades\Sites; use CraftCms\Cms\Translation\Locale; use DateTimeInterface; +use Illuminate\Contracts\Support\Arrayable; use Illuminate\Support\Carbon; use Illuminate\Validation\Rules\Unique; use RuntimeException; use Spatie\LaravelData\Attributes\MapInputName; use Spatie\LaravelData\Attributes\Validation\Rule; -use Spatie\LaravelData\Attributes\Validation\Url; use Spatie\LaravelData\Attributes\WithCast; use Spatie\LaravelData\Casts\DateTimeInterfaceCast; use Spatie\LaravelData\Dto; @@ -29,7 +29,7 @@ use function CraftCms\Cms\t; -final class Site extends Dto implements Chippable, Stringable +final class Site extends Dto implements Arrayable, Chippable, Stringable { /** * @var string|null Base URL @@ -238,4 +238,21 @@ public function getConfig(): array 'enabled' => $this->getEnabled(false), ]; } + + public function toArray(): array + { + return [ + 'id' => $this->id, + 'name' => $this->getName(), + 'uiLabel' => $this->getUiLabel(), + 'handle' => $this->handle, + 'primary' => $this->primary, + 'language' => $this->getLanguage(), + 'locale' => $this->getLocale(), + 'baseUrl' => $this->getBaseUrl(), + 'enabled' => $this->getEnabled(), + 'group' => $this->getGroup(), + 'sortOrder' => $this->sortOrder, + ]; + } } diff --git a/src/Site/Data/SiteGroup.php b/src/Site/Data/SiteGroup.php index 17c8533c94f..509acfeef3d 100644 --- a/src/Site/Data/SiteGroup.php +++ b/src/Site/Data/SiteGroup.php @@ -9,7 +9,6 @@ use CraftCms\Cms\Support\Facades\Sites; use Illuminate\Contracts\Support\Arrayable; use Illuminate\Support\Collection; -use Illuminate\Validation\ValidationException; use Spatie\LaravelData\Attributes\Validation\Exists; use Spatie\LaravelData\Attributes\Validation\Max; use Spatie\LaravelData\Attributes\Validation\Required; @@ -17,7 +16,7 @@ use Spatie\LaravelData\Dto; use Spatie\LaravelData\Support\Validation\References\RouteParameterReference; -final class SiteGroup extends Dto +final class SiteGroup extends Dto implements Arrayable { public function __construct( #[Exists(Table::SITEGROUPS, 'id')] @@ -76,23 +75,8 @@ public function toArray(): array return [ 'id' => $this->id, 'uid' => $this->uid, + 'rawName' => $this->name, 'name' => $this->getName(), ]; } - - /** - * We override the way errors are returned as the frontend does - * not accept errors in Laravel's format at this time. - * - * @todo: Update frontend - */ - public static function validate(array|Arrayable $payload): Arrayable|array - { - try { - return parent::validate($payload); - } catch (ValidationException $e) { - $errors = array_values(array_map(reset(...), $e->errors())); - throw ValidationException::withMessages($errors); - } - } } diff --git a/src/Support/Facades/Entries.php b/src/Support/Facades/Entries.php index d106953113b..1764c4b2e40 100644 --- a/src/Support/Facades/Entries.php +++ b/src/Support/Facades/Entries.php @@ -7,6 +7,11 @@ use Illuminate\Support\Facades\Facade; /** + * @method static \CraftCms\Cms\Entry\Elements\Entry|null getEntryById(int $entryId, int|string|int[]|null $siteId = null, array $criteria = []) + * @method static array getSingleEntriesByHandle(string[] $handles) + * @method static void refreshSingleEntries() + * @method static bool moveEntryToSection(\CraftCms\Cms\Entry\Elements\Entry $entry, \CraftCms\Cms\Section\Data\Section $section) + * * @see \CraftCms\Cms\Entry\Entries */ final class Entries extends Facade diff --git a/src/Support/Facades/SiteGroups.php b/src/Support/Facades/SiteGroups.php index 66f33cd9102..31a3f1adcb5 100644 --- a/src/Support/Facades/SiteGroups.php +++ b/src/Support/Facades/SiteGroups.php @@ -7,6 +7,16 @@ use Illuminate\Support\Facades\Facade; /** + * @method static \Illuminate\Support\Collection getAllGroups() + * @method static \CraftCms\Cms\Site\Data\SiteGroup|null getGroupById(int $groupId) + * @method static \CraftCms\Cms\Site\Data\SiteGroup|null getGroupByUid(string $uid) + * @method static bool saveGroup(\CraftCms\Cms\Site\Data\SiteGroup $group) + * @method static void handleChangedGroup(\CraftCms\Cms\ProjectConfig\Events\ConfigEvent $event) + * @method static void handleDeletedGroup(\CraftCms\Cms\ProjectConfig\Events\ConfigEvent $event) + * @method static bool deleteGroupById(int $groupId) + * @method static bool deleteGroup(\CraftCms\Cms\Site\Data\SiteGroup $group) + * @method static void refreshGroups() + * * @see \CraftCms\Cms\Site\SiteGroups */ final class SiteGroups extends Facade diff --git a/src/Support/Facades/Sites.php b/src/Support/Facades/Sites.php index 682aefd77d9..acde81fbff1 100644 --- a/src/Support/Facades/Sites.php +++ b/src/Support/Facades/Sites.php @@ -7,6 +7,35 @@ use Illuminate\Support\Facades\Facade; /** + * @method static bool isMultiSite(bool $refresh = false, bool $withTrashed = false) + * @method static bool isMultiSiteWithTrashed(bool $refresh = false) + * @method static \Illuminate\Support\Collection getAllSiteIds(bool|null $withDisabled = null) + * @method static \CraftCms\Cms\Site\Data\Site getSiteByUid(string $uid, bool|null $withDisabled = null) + * @method static bool getHasCurrentSite() + * @method static \CraftCms\Cms\Site\Data\Site getCurrentSite() + * @method static void setCurrentSite(\CraftCms\Cms\Site\Data\Site|string|int|null $site) + * @method static \CraftCms\Cms\Site\Data\Site getPrimarySite() + * @method static \Illuminate\Support\Collection getEditableSiteIds() + * @method static \Illuminate\Support\Collection getEditableSiteIdsForSection(\CraftCms\Cms\Section\Data\Section $section) + * @method static \Illuminate\Support\Collection getAllSites(bool|null $withDisabled = null) + * @method static \Illuminate\Support\Collection getEditableSites() + * @method static \Illuminate\Support\Collection getSitesByGroupId(int $groupId, bool|null $withDisabled = null) + * @method static \Illuminate\Support\Collection getEditableSitesByGroupId(int $groupId, bool|null $withDisabled = null) + * @method static int getTotalSites() + * @method static int getTotalEditableSites() + * @method static \CraftCms\Cms\Site\Data\Site|null getSiteById(int $siteId, bool|null $withDisabled = null) + * @method static \CraftCms\Cms\Site\Data\Site|null getSiteByHandle(string $siteHandle, bool|null $withDisabled = null) + * @method static \Illuminate\Support\Collection getSitesByLanguage(string $language, bool|null $withDisabled = null) + * @method static int getRemainingSites() + * @method static bool saveSite(\CraftCms\Cms\Site\Data\Site $site) + * @method static void handleChangedSite(\CraftCms\Cms\ProjectConfig\Events\ConfigEvent $event) + * @method static bool reorderSites(int[] $siteIds) + * @method static bool deleteSiteById(int $siteId, int|null $transferContentTo = null) + * @method static bool deleteSite(\CraftCms\Cms\Site\Data\Site $site, int|null $transferContentTo = null) + * @method static void handleDeletedSite(\CraftCms\Cms\ProjectConfig\Events\ConfigEvent $event) + * @method static bool restoreSiteById(int $id) + * @method static void refreshSites() + * * @see \CraftCms\Cms\Site\Sites */ final class Sites extends Facade diff --git a/src/Support/Facades/UserGroups.php b/src/Support/Facades/UserGroups.php index 1a399d1f90c..f7a836c4e77 100644 --- a/src/Support/Facades/UserGroups.php +++ b/src/Support/Facades/UserGroups.php @@ -4,27 +4,23 @@ namespace CraftCms\Cms\Support\Facades; -use CraftCms\Cms\ProjectConfig\Events\ConfigEvent; -use CraftCms\Cms\User\Data\UserGroup; -use CraftCms\Cms\User\Elements\User; -use Illuminate\Support\Collection; use Illuminate\Support\Facades\Facade; use Override; /** - * @method static Collection getAllGroups() - * @method static Collection getAssignableGroups(User|null $user = null) - * @method static UserGroup|null getGroupById(int $groupId) - * @method static UserGroup|null getGroupByUid(string $uid) - * @method static UserGroup|null getGroupByHandle(string $groupHandle) - * @method static UserGroup getTeamGroup() - * @method static Collection getGroupsByUserId(int $userId) - * @method static void eagerLoadGroups(User[] $users) - * @method static bool saveGroup(UserGroup $group) - * @method static void handleChangedUserGroup(ConfigEvent $event) - * @method static void handleDeletedUserGroup(ConfigEvent $event) + * @method static \Illuminate\Support\Collection getAllGroups() + * @method static \Illuminate\Support\Collection getAssignableGroups(\CraftCms\Cms\User\Elements\User|null $user = null) + * @method static \CraftCms\Cms\User\Data\UserGroup|null getGroupById(int $groupId) + * @method static \CraftCms\Cms\User\Data\UserGroup|null getGroupByUid(string $uid) + * @method static \CraftCms\Cms\User\Data\UserGroup|null getGroupByHandle(string $groupHandle) + * @method static \CraftCms\Cms\User\Data\UserGroup getTeamGroup() + * @method static \Illuminate\Support\Collection getGroupsByUserId(int $userId) + * @method static void eagerLoadGroups(\CraftCms\Cms\User\Elements\User[] $users) + * @method static bool saveGroup(\CraftCms\Cms\User\Data\UserGroup $group) + * @method static void handleChangedUserGroup(\CraftCms\Cms\ProjectConfig\Events\ConfigEvent $event) + * @method static void handleDeletedUserGroup(\CraftCms\Cms\ProjectConfig\Events\ConfigEvent $event) * @method static bool deleteGroupById(int $groupId) - * @method static bool deleteGroup(UserGroup $group) + * @method static bool deleteGroup(\CraftCms\Cms\User\Data\UserGroup $group) * * @see \CraftCms\Cms\User\UserGroups */ diff --git a/src/Support/Facades/UserPermissions.php b/src/Support/Facades/UserPermissions.php index 5473948a350..5492ac31eff 100644 --- a/src/Support/Facades/UserPermissions.php +++ b/src/Support/Facades/UserPermissions.php @@ -8,6 +8,19 @@ use Override; /** + * @method static \Illuminate\Support\Collection getAllPermissions() + * @method static \Illuminate\Support\Collection getAssignablePermissions(\CraftCms\Cms\User\Elements\User|null $user = null) + * @method static \Illuminate\Support\Collection getPermissionsByGroupId(int $groupId) + * @method static \Illuminate\Support\Collection getGroupPermissionsByUserId(int $userId) + * @method static bool doesGroupHavePermission(int $groupId, string $checkPermission) + * @method static bool saveGroupPermissions(int $groupId, array $permissions) + * @method static \Illuminate\Support\Collection getPermissionsByUserId(int $userId) + * @method static bool validatePermission(string $permission) + * @method static bool doesUserHavePermission(int $userId, string $checkPermission) + * @method static bool saveUserPermissions(int $userId, array $permissions) + * @method static void handleChangedGroupPermissions(\CraftCms\Cms\ProjectConfig\Events\ConfigEvent $event) + * @method static void reset() + * * @see \CraftCms\Cms\User\UserPermissions */ final class UserPermissions extends Facade diff --git a/src/Support/Facades/Users.php b/src/Support/Facades/Users.php index bc7a0bf5c0b..3c5d2ce6b71 100644 --- a/src/Support/Facades/Users.php +++ b/src/Support/Facades/Users.php @@ -8,6 +8,47 @@ use Override; /** + * @method static \CraftCms\Cms\User\Elements\User ensureUserByEmail(string $email) + * @method static \CraftCms\Cms\User\Elements\User|null getUserById(int $userId) + * @method static \CraftCms\Cms\User\Elements\User|null getUserByUsernameOrEmail(string $usernameOrEmail) + * @method static \CraftCms\Cms\User\Elements\User|null getUserByUid(string $uid) + * @method static bool isVerificationCodeValidForUser(\CraftCms\Cms\User\Elements\User $user, string $code) + * @method static array getUserPreferences(int $userId) + * @method static void saveUserPreferences(\CraftCms\Cms\User\Elements\User $user, array $preferences) + * @method static mixed getUserPreference(int $userId, string $key, mixed $default = null) + * @method static bool sendActivationEmail(\CraftCms\Cms\User\Elements\User $user) + * @method static bool sendNewEmailVerifyEmail(\CraftCms\Cms\User\Elements\User $user) + * @method static bool sendPasswordResetEmail(\CraftCms\Cms\User\Elements\User $user) + * @method static string getActivationUrl(\CraftCms\Cms\User\Elements\User $user) + * @method static string getEmailVerifyUrl(\CraftCms\Cms\User\Elements\User $user) + * @method static string getPasswordResetUrl(\CraftCms\Cms\User\Elements\User $user) + * @method static void removeCredentials(\CraftCms\Cms\User\Elements\User $user) + * @method static void saveUserPhoto(string $fileLocation, \CraftCms\Cms\User\Elements\User $user, string|null $filename = null, string|null $mimeType = null) + * @method static void relocateUserPhoto(\CraftCms\Cms\User\Elements\User $user) + * @method static bool deleteUserPhoto(\CraftCms\Cms\User\Elements\User $user) + * @method static void handleValidLogin(\CraftCms\Cms\User\Elements\User $user) + * @method static void handleInvalidLogin(\CraftCms\Cms\User\Elements\User $user) + * @method static void activateUser(\CraftCms\Cms\User\Elements\User $user) + * @method static void deactivateUser(\CraftCms\Cms\User\Elements\User $user) + * @method static void verifyEmailForUser(\CraftCms\Cms\User\Elements\User $user) + * @method static void unlockUser(\CraftCms\Cms\User\Elements\User $user) + * @method static void suspendUser(\CraftCms\Cms\User\Elements\User $user) + * @method static void unsuspendUser(\CraftCms\Cms\User\Elements\User $user) + * @method static void shunMessageForUser(int $userId, string $message, \DateTime|null $expiryDate = null) + * @method static void unshunMessageForUser(int $userId, string $message) + * @method static bool hasUserShunnedMessage(int $userId, string $message) + * @method static string setVerificationCodeOnUser(\CraftCms\Cms\User\Elements\User $user) + * @method static void purgeExpiredPendingUsers() + * @method static bool assignUserToGroups(int $userId, int[] $groupIds) + * @method static \CraftCms\Cms\User\Data\UserGroup[] getDefaultUserGroups(\CraftCms\Cms\User\Elements\User $user) + * @method static bool assignUserToDefaultGroup(\CraftCms\Cms\User\Elements\User $user) + * @method static void handleChangedUserFieldLayout(\CraftCms\Cms\ProjectConfig\Events\ConfigEvent $event) + * @method static bool saveLayout(\craft\models\FieldLayout $layout, bool $runValidation = true) + * @method static bool canImpersonate(\CraftCms\Cms\User\Elements\User $impersonator, \CraftCms\Cms\User\Elements\User $impersonatee) + * @method static bool canSuspend(\CraftCms\Cms\User\Elements\User $suspender, \CraftCms\Cms\User\Elements\User $suspendee) + * @method static int|null getMaxUsers(\CraftCms\Cms\Edition $edition) + * @method static bool canCreateUsers() + * * @see \CraftCms\Cms\User\Users */ final class Users extends Facade diff --git a/src/Twig/TwigMapper.php b/src/Twig/TwigMapper.php new file mode 100644 index 00000000000..00057c767c2 --- /dev/null +++ b/src/Twig/TwigMapper.php @@ -0,0 +1,96 @@ +getPrevious() ?? $exception; + } + + $viewIndex = null; + + $trace = collect($exception->getTrace()) + ->map(function (array $frame, int $index) use (&$viewIndex) { + $templateInfo = $this->resolveTemplatePathAndLine($frame['file'] ?? '', $frame['line'] ?? null); + + if ($templateInfo !== false) { + [$frame['file'], $frame['line']] = $templateInfo; + + $viewIndex ??= $index; + } + + return $frame; + }) + ->when( + $viewIndex !== null && str_ends_with($exception->getFile(), '.twig'), + fn (Collection $trace) => $trace->slice($viewIndex + 1) // Remove all traces before the view + ) + ->all(); + + $traceProperty = new ReflectionProperty('Exception', 'trace'); + $traceProperty->setValue($exception, $trace); + + return $exception; + } + + /** + * Attempts to resolve a compiled template file path and line number to its source template path and line number. + * + * @param string $path The compiled template path + * @param int|null $line The line number from the compiled template + * @return array|false The resolved template path and line number, or `false` if the path couldn’t be determined. + * If a template path could be determined but not the template line number, the line number will be null. + */ + public function resolveTemplatePathAndLine(string $path, ?int $line): array|false + { + if (! str_contains($path, 'compiled_templates')) { + return false; + } + + $contents = file_get_contents($path); + + if (! preg_match('/^class (\w+)/m', $contents, $match)) { + return false; + } + + $class = $match[1]; + if (! class_exists($class, false) || ! is_subclass_of($class, Template::class)) { + return false; + } + + $template = new $class(Craft::$app->getView()->getTwig()); + $src = $template->getSourceContext(); + $templatePath = $src->getPath() ?: null; + $templateLine = null; + + if ($line !== null) { + foreach ($template->getDebugInfo() as $codeLine => $thisTemplateLine) { + if ($codeLine <= $line) { + $templateLine = $thisTemplateLine; + break; + } + } + } + + return [$templatePath, $templateLine]; + } +} diff --git a/src/Twig/TwigServiceProvider.php b/src/Twig/TwigServiceProvider.php new file mode 100644 index 00000000000..81506056b26 --- /dev/null +++ b/src/Twig/TwigServiceProvider.php @@ -0,0 +1,24 @@ +app->make(ExceptionHandler::class); + + if ($handler instanceof Handler) { + $handler->map(Exception::class, fn (Exception $e) => $this->app->make(TwigMapper::class)->map($e)); + } + } +} diff --git a/src/User/Users.php b/src/User/Users.php index 954fa7daecc..773bbae0729 100644 --- a/src/User/Users.php +++ b/src/User/Users.php @@ -146,9 +146,6 @@ public function getUserByUsernameOrEmail(string $usernameOrEmail): ?User $query->where(new Lower('username'), mb_strtolower($usernameOrEmail)) ->orWhere(new Lower('email'), mb_strtolower($usernameOrEmail)); }) - // order by credentialed users first - ->orderByDesc('active') - ->orderByDesc('pending') ->first(); } diff --git a/tests/Database/Queries/UserQueryTest.php b/tests/Database/Queries/UserQueryTest.php index f39aa6c83e7..691ddb93a49 100644 --- a/tests/Database/Queries/UserQueryTest.php +++ b/tests/Database/Queries/UserQueryTest.php @@ -12,6 +12,52 @@ expect(userQuery()->pluck('id')->all())->toBe([$secondUser->id, $firstUser->id]); }); +test('gets active users first', function () { + $inactive = UserModel::factory()->create([ + 'active' => false, + 'pending' => false, + 'username' => 'john', + 'email' => 'john@example.com', + ])->asElement(); + + $active = UserModel::factory()->create([ + 'active' => true, + 'pending' => false, + 'username' => 'john', + 'email' => 'john@example.com', + ])->asElement(); + + expect(userQuery()->email('john@example.com')->status(null)->pluck('id')->first())->toBe($active->id); + + // Even when sorting on something else + expect(userQuery()->email('john@example.com')->status(null)->orderBy('email')->pluck('id')->first())->toBe($active->id); +}); + +test('gets pending users first', function () { + $nonPending = UserModel::factory()->make([ + 'id' => null, + 'active' => false, + 'pending' => false, + 'username' => 'john', + 'email' => 'john@example.com', + ])->asElement(); + Craft::$app->elements->saveElement($nonPending); + + $pending = UserModel::factory()->make([ + 'id' => null, + 'active' => false, + 'pending' => true, + 'username' => 'john', + 'email' => 'john@example.com', + ])->asElement(); + Craft::$app->elements->saveElement($pending); + + expect(userQuery()->email('john')->status(null)->pluck('id')->first())->toBe($pending->id); + + // Even when sorting on something else + expect(userQuery()->email('john')->status(null)->orderBy('email')->pluck('id')->first())->toBe($pending->id); +}); + it('can query by status', function (string $status, array $attributes, int $expectedCount) { UserModel::factory()->create($attributes); diff --git a/tests/Site/SiteGroupsTest.php b/tests/Site/SiteGroupsTest.php new file mode 100644 index 00000000000..67df2ea0ea0 --- /dev/null +++ b/tests/Site/SiteGroupsTest.php @@ -0,0 +1,15 @@ +siteGroups = app(SiteGroups::class); + $this->projectConfig = app(ProjectConfig::class); +}); + +it('is a singleton', function () { + expect($this->siteGroups)->toBe(app(SiteGroups::class)); + expect($this->siteGroups)->toBe(SiteGroupsFacade::getFacadeRoot()); +}); diff --git a/tsconfig.json b/tsconfig.json index 03eea04286c..99492a0d05d 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -4,7 +4,8 @@ "experimentalDecorators": true, "useDefineForClassFields": false, "paths": { - "@/*": ["./resources/js/*"] + "@/*": ["./resources/js/*"], + "@actions/*": ["./resources/js/actions/CraftCms/Cms/Http/Controllers/*"] }, "types": ["vite/client", "./resources/js/types"] }, diff --git a/yii2-adapter/legacy/Craft.php b/yii2-adapter/legacy/Craft.php index 65b7810ffae..eeb20837298 100644 --- a/yii2-adapter/legacy/Craft.php +++ b/yii2-adapter/legacy/Craft.php @@ -69,8 +69,7 @@ public static function t($category, $message, $params = [], $language = null): s /** * @inheritdoc * @template T - * @param class-string|array|callable $type - * @phpstan-param class-string|array{class:class-string}|callable():T $type + * @param class-string|array{class:class-string}|array{__class:class-string}|callable():T $type * @param array $params * @return T */ diff --git a/yii2-adapter/legacy/base/Element.php b/yii2-adapter/legacy/base/Element.php index 1028f6b4fdb..a719ac00b02 100644 --- a/yii2-adapter/legacy/base/Element.php +++ b/yii2-adapter/legacy/base/Element.php @@ -3656,21 +3656,12 @@ public function getCardBodyHtml(): ?string { $this->viewMode = 'cards'; $html = ''; + $cardElements = $this->getFieldLayout()?->getCardBodyElements($this) ?? []; - foreach ($this->getFieldLayout()?->getCardBodyElements($this) ?? [] as $item) { - if ($item instanceof BaseField) { - $itemHtml = $item->previewHtml($this); - } elseif (is_array($item) && isset($item['html'])) { - $itemHtml = $item['html']; - } else { - $itemHtml = $this->getAttributeHtml($item['value']); - } - - if ($itemHtml !== '') { - $html .= Html::tag('div', $itemHtml, [ - 'class' => 'card-attribute-preview', - ]); - } + foreach ($cardElements as $item) { + $html .= Html::tag('div', $item['html'], [ + 'class' => 'card-attribute-preview', + ]); } return $html; diff --git a/yii2-adapter/legacy/console/controllers/utils/FixFieldLayoutUidsController.php b/yii2-adapter/legacy/console/controllers/utils/FixFieldLayoutUidsController.php index 5438686f656..510c0b8c659 100644 --- a/yii2-adapter/legacy/console/controllers/utils/FixFieldLayoutUidsController.php +++ b/yii2-adapter/legacy/console/controllers/utils/FixFieldLayoutUidsController.php @@ -21,6 +21,8 @@ */ class FixFieldLayoutUidsController extends Controller { + private array $topLevelUids = []; + /** * Fixes any duplicate UUIDs found within field layout components in the project config. * @@ -32,6 +34,8 @@ public function actionIndex(): int $count = 0; $this->_fixUids(app(ProjectConfig::class)->get(), $count); + $this->fixFieldLayoutUids($count); + if ($count) { $summary = sprintf('Fixed %s duplicate or missing %s.', $count, $count === 1 ? 'UUID' : 'UUIDs'); } else { @@ -50,6 +54,7 @@ private function _fixUids(array $config, int &$count, string $path = '', array & if (is_array($config['fieldLayouts'] ?? null)) { $modified = false; foreach ($config['fieldLayouts'] as $fieldLayoutUid => &$fieldLayoutConfig) { + $this->topLevelUids[$fieldLayoutUid][] = $path; if (is_array($fieldLayoutConfig)) { $fieldLayoutPath = sprintf('%sfieldLayouts.%s', $path ? "$path." : '', $fieldLayoutUid); $this->_fixUidsInLayout($fieldLayoutConfig, $count, $fieldLayoutPath, $uids, $modified); @@ -121,4 +126,38 @@ private function _checkUid(array &$config, int &$count, array &$uids, bool &$mod $this->stdout($config['uid'], Console::FG_CYAN); $this->stdout(".\n"); } + + private function fixFieldLayoutUids(int &$count): void + { + foreach ($this->topLevelUids as $fieldLayoutUid => $paths) { + if (count($paths) == 1) { + unset($this->topLevelUids[$fieldLayoutUid]); + } + } + + // we still have some duplicates remaining + if (!empty($this->topLevelUids)) { + foreach ($this->topLevelUids as $fieldLayoutUid => $paths) { + // leave the first path as is + array_shift($paths); + // all others need to have their UIDs adjusted + foreach ($paths as $path) { + $newUid = Str::uuid()->toString(); + $config = \CraftCms\Cms\Support\Facades\ProjectConfig::get($path); + $innerConfig = $config['fieldLayouts'][$fieldLayoutUid]; + unset($config['fieldLayouts'][$fieldLayoutUid]); + $config['fieldLayouts'][$newUid] = $innerConfig; + + $this->stdout(" > Duplicate UUID at "); + $this->stdout($path . ".fieldLayouts." . $fieldLayoutUid, Console::FG_CYAN); + $this->stdout(".\n Setting to "); + $this->stdout($newUid, Console::FG_CYAN); + $this->stdout(".\n"); + + \CraftCms\Cms\Support\Facades\ProjectConfig::set($path, $config); + $count++; + } + } + } + } } diff --git a/yii2-adapter/legacy/controllers/ElementsController.php b/yii2-adapter/legacy/controllers/ElementsController.php index 1ca3d0cea97..1e43674b76e 100644 --- a/yii2-adapter/legacy/controllers/ElementsController.php +++ b/yii2-adapter/legacy/controllers/ElementsController.php @@ -382,7 +382,7 @@ public function actionEdit(?ElementInterface $element, ?int $elementId = null): $notice = null; if ($element->isProvisionalDraft) { $notice = fn() => $this->_draftNotice(); - } elseif ($element->getIsRevision()) { + } elseif ($isRevision) { $notice = fn() => $this->_revisionNotice($element::lowerDisplayName()); } @@ -2617,7 +2617,10 @@ private function _element( $preferSites, ); if ($element && $elementsService->canView($element, $user)) { - return $this->redirect($element->getCpEditUrl()); + if (!$this->request->getAcceptsJson()) { + return $this->redirect($element->getCpEditUrl()); + } + return $element; } throw new BadRequestHttpException($draftId ? "Invalid draft ID: $draftId" : "Invalid revision ID: $revisionId"); } @@ -2644,7 +2647,12 @@ private function _element( throw new ForbiddenHttpException('User not authorized to edit this element.'); } - if (!$strictSite && isset($site) && $element->siteId !== $site->id) { + if ( + !$strictSite && + isset($site) && + $element->siteId !== $site->id && + !$this->request->getAcceptsJson() + ) { return $this->redirect($element->getCpEditUrl()); } diff --git a/yii2-adapter/legacy/controllers/UsersController.php b/yii2-adapter/legacy/controllers/UsersController.php index 6c07459f6a4..e6fe3bc9918 100644 --- a/yii2-adapter/legacy/controllers/UsersController.php +++ b/yii2-adapter/legacy/controllers/UsersController.php @@ -127,7 +127,7 @@ class UsersController extends Controller public const EVENT_LOGIN_FAILURE = 'loginFailure'; /** - * @event DefineEditUserScreensEvent The event that is triggered when defining the screens that should be + * @event \craft\events\DefineEditUserScreensEvent The event that is triggered when defining the screens that should be * shown for the user being edited. * @since 5.1.0 */ diff --git a/yii2-adapter/legacy/elements/Address.php b/yii2-adapter/legacy/elements/Address.php index 915c83bdd2b..152f3472b33 100644 --- a/yii2-adapter/legacy/elements/Address.php +++ b/yii2-adapter/legacy/elements/Address.php @@ -120,6 +120,20 @@ protected static function defineActions(string $source): array ]; } + /** + * @inheritdoc + */ + protected static function defineCardAttributes(): array + { + return [ + ...parent::defineCardAttributes(), + 'address' => [ + 'label' => Craft::t('app', 'Address'), + 'placeholder' => fn() => '123 Acme Ln.', + ], + ]; + } + /** * @inheritdoc */ @@ -130,6 +144,16 @@ protected static function defineTableAttributes(): array ]); } + /** + * @inheritdoc + */ + protected static function defineDefaultCardAttributes(): array + { + return [ + 'address', + ]; + } + /** * @inheritdoc */ diff --git a/yii2-adapter/legacy/elements/db/UserQuery.php b/yii2-adapter/legacy/elements/db/UserQuery.php index 247d17e2d30..62fbd45a032 100644 --- a/yii2-adapter/legacy/elements/db/UserQuery.php +++ b/yii2-adapter/legacy/elements/db/UserQuery.php @@ -53,7 +53,11 @@ class UserQuery extends ElementQuery /** * @inheritdoc */ - protected array $defaultOrderBy = ['users.username' => SORT_ASC]; + protected array $defaultOrderBy = [ + 'users.username' => SORT_ASC, + 'users.active' => SORT_DESC, + 'users.pending' => SORT_DESC, + ]; // General parameters // ------------------------------------------------------------------------- @@ -1107,6 +1111,21 @@ protected function beforePrepare(): bool ]); } + // If there's a custom orderBy, make sure we're showing active, non-pending accounts first + if ( + is_array($this->orderBy) && + empty($this->query->orderBy) && + ( + count($this->orderBy) !== 1 || + !($this->orderBy[0] ?? null) instanceof OrderByPlaceholderExpression + ) + ) { + $this->orderBy = array_merge($this->orderBy, [ + 'users.active' => SORT_DESC, + 'users.pending' => SORT_DESC, + ]); + } + return true; } diff --git a/yii2-adapter/legacy/events/DefineEditUserScreensEvent.php b/yii2-adapter/legacy/events/DefineEditUserScreensEvent.php index 9988af5bc2a..e2a964923f8 100644 --- a/yii2-adapter/legacy/events/DefineEditUserScreensEvent.php +++ b/yii2-adapter/legacy/events/DefineEditUserScreensEvent.php @@ -14,7 +14,7 @@ * Class DefineEditUserScreensEvent * * @author Pixel & Tonic, Inc. - * @since 4.0.0 + * @since 5.0.0 * @deprecated 6.0.0 use {@see \CraftCms\Cms\User\Events\DefineEditUserScreens} instead. */ class DefineEditUserScreensEvent extends Event diff --git a/yii2-adapter/legacy/fieldlayoutelements/BaseField.php b/yii2-adapter/legacy/fieldlayoutelements/BaseField.php index e7b8159a97a..70a18d1bead 100644 --- a/yii2-adapter/legacy/fieldlayoutelements/BaseField.php +++ b/yii2-adapter/legacy/fieldlayoutelements/BaseField.php @@ -63,12 +63,14 @@ abstract class BaseField extends FieldLayoutElement /** * @var bool Whether this field should be used to define element thumbnails. * @since 5.0.0 + * @deprecated in 5.9.0 */ public bool $providesThumbs = false; /** * @var bool Whether this field’s contents should be included in element cards. * @since 5.0.0 + * @deprecated in 5.9.0 */ public bool $includeInCards = false; @@ -84,6 +86,16 @@ public function __construct($config = []) parent::__construct($config); } + /** + * @inheritdoc + */ + public function fields(): array + { + $fields = parent::fields(); + unset($fields['includeInCards'], $fields['providesThumbs']); + return $fields; + } + /** * Returns the element attribute this field is for. * @@ -91,6 +103,17 @@ public function __construct($config = []) */ abstract public function attribute(): string; + /** + * Returns the key for this field. + * + * @return string + * @since 5.9.0 + */ + public function key(): string + { + return $this->attribute(); + } + /** * Returns whether the attribute should be shown for admin users with “Show field handles in edit forms” enabled. * @@ -169,6 +192,26 @@ public function previewable(): bool return false; } + /** + * Returns the card preview options supplied by this field. + * + * @return array|null + * @since 5.9.0 + */ + public function getPreviewOptions(): ?array + { + if (!$this->previewable()) { + return null; + } + + return [ + [ + 'label' => $this->selectorLabel() ?? $this->attribute(), + 'value' => $this->attribute(), + ], + ]; + } + /** * @inheritdoc */ @@ -247,7 +290,7 @@ protected function selectorAttributes(): array 'mandatory' => $this->mandatory(), 'requirable' => $this->requirable(), 'thumbable' => $this->thumbable(), - 'previewable' => $this->previewable(), + 'preview-options' => $this->getPreviewOptions(), ], ]; } @@ -319,22 +362,6 @@ protected function selectorIndicators(): array ]; } - if ($this->thumbable() && $this->providesThumbs) { - $indicators[] = [ - 'label' => t('This field provides thumbnails for elements'), - 'icon' => 'image', - 'iconColor' => 'violet', - ]; - } - - if ($this->previewable() && $this->includeInCards) { - $indicators[] = [ - 'label' => t('This field is included in element cards'), - 'icon' => 'eye', - 'iconColor' => 'blue', - ]; - } - return $indicators; } diff --git a/yii2-adapter/legacy/fieldlayoutelements/CustomField.php b/yii2-adapter/legacy/fieldlayoutelements/CustomField.php index a4437b3e1bc..af070b4869b 100644 --- a/yii2-adapter/legacy/fieldlayoutelements/CustomField.php +++ b/yii2-adapter/legacy/fieldlayoutelements/CustomField.php @@ -9,10 +9,12 @@ use Craft; use craft\base\ElementInterface; +use craft\elements\conditions\ElementConditionInterface; use craft\elements\conditions\users\UserCondition; use craft\errors\FieldNotFoundException; use craft\helpers\Cp; use CraftCms\Cms\Component\Contracts\Actionable; +use CraftCms\Cms\Field\ContentBlock; use CraftCms\Cms\Field\Contracts\CrossSiteCopyableFieldInterface; use CraftCms\Cms\Field\Contracts\FieldInterface; use CraftCms\Cms\Field\Contracts\PreviewableFieldInterface; @@ -45,6 +47,11 @@ class CustomField extends BaseField */ private static UserCondition $defaultEditCondition; + /** + * @var ElementConditionInterface[] + */ + private static array $defaultElementEditConditions = []; + /** * @return UserCondition */ @@ -53,6 +60,15 @@ private static function defaultEditCondition(): UserCondition return self::$defaultEditCondition ??= User::createCondition(); } + /** + * @param class-string $elementType + * @return ElementConditionInterface + */ + private static function defaultElementEditCondition(string $elementType): ElementConditionInterface + { + return self::$defaultElementEditConditions[$elementType] ??= $elementType::createCondition(); + } + /** * @var string|null The field handle override. * @since 5.0.0 @@ -73,6 +89,14 @@ private static function defaultEditCondition(): UserCondition */ private mixed $_editCondition = null; + /** + * @var ElementConditionInterface|class-string|array|null + * @phpstan-var ElementConditionInterface|class-string|array{class:class-string}|null + * @see getElementEditCondition() + * @see setElementEditCondition() + */ + private mixed $_elementEditCondition = null; + /** * @inheritdoc * @param FieldInterface|null $field @@ -124,6 +148,22 @@ public function attribute(): string return $field->handle; } + /** + * @inheritdoc + */ + public function key(): string + { + try { + $field = $this->getField(); + } catch (FieldNotFoundException) { + $field = null; + } + + $prefix = $field instanceof ContentBlock ? 'contentBlock' : 'layoutElement'; + $uid = $this->uid ?? '{uid}'; + return "$prefix:$uid"; + } + /** * @inheritdoc */ @@ -193,6 +233,42 @@ public function previewable(): bool return $field instanceof PreviewableFieldInterface; } + /** + * @inheritdoc + */ + public function getPreviewOptions(): ?array + { + try { + $field = $this->getField(); + } catch (FieldNotFoundException) { + return null; + } + + if ($field instanceof ContentBlock) { + $options = []; + $label = $this->selectorLabel(); + $nestedOptions = Cp::cardPreviewOptions($field->getFieldLayout(), false); + foreach ($nestedOptions as $key => $option) { + $options[] = [ + 'label' => "$label - {$option['label']}", + 'value' => "contentBlock:{uid}.$key", + ]; + } + return $options; + } + + if (!$this->previewable()) { + return null; + } + + return [ + [ + 'label' => $this->selectorLabel() ?? $this->attribute(), + 'value' => 'layoutElement:{uid}', + ], + ]; + } + /** * @inheritdoc */ @@ -329,7 +405,7 @@ public function getOriginalHandle(): string */ public function hasConditions(): bool { - return parent::hasConditions() || $this->getEditCondition(); + return parent::hasConditions() || $this->getEditCondition() || $this->getElementEditCondition(); } /** @@ -359,6 +435,40 @@ public function setEditCondition(mixed $editCondition): void $this->_editCondition = $editCondition; } + /** + * Returns the element edit condition for this layout element. + * + * @return ElementConditionInterface|null + * @since 5.9.0 + */ + public function getElementEditCondition(): ?ElementConditionInterface + { + if (isset($this->_elementEditCondition) && !$this->_elementEditCondition instanceof ElementConditionInterface) { + if (is_string($this->_elementEditCondition)) { + $this->_elementEditCondition = ['class' => $this->_elementEditCondition]; + } + $this->_elementEditCondition = array_merge( + ['fieldLayouts' => [$this->getLayout()]], + $this->_elementEditCondition, + ); + $this->_elementEditCondition = $this->normalizeCondition($this->_elementEditCondition); + } + + return $this->_elementEditCondition; + } + + /** + * Sets the element edit condition for this layout element. + * + * @param ElementConditionInterface|class-string|array|null $elementEditCondition + * @phpstan-param ElementConditionInterface|class-string|array{class:class-string}|null $elementEditCondition + * @since 5.9.0 + */ + public function setElementEditCondition(mixed $elementEditCondition): void + { + $this->_elementEditCondition = $elementEditCondition; + } + /** * @inheritdoc */ @@ -368,6 +478,7 @@ public function fields(): array ...parent::fields(), 'fieldUid' => 'fieldUid', 'editCondition' => fn() => $this->getEditCondition()?->getConfig(), + 'elementEditCondition' => fn() => $this->getElementEditCondition()?->getConfig(), ]; } @@ -566,26 +677,50 @@ protected function conditionalSettingsHtml(): string $editCondition->name = 'editCondition'; $editCondition->forProjectConfig = true; - $html .= Html::beginTag('fieldset', ['class' => 'pane']) . + $editConditionsHtml = Cp::fieldHtml($editCondition->getBuilderHtml(), [ + 'label' => t('Current User Condition'), + 'instructions' => t('Only make editable for users who match the following rules:'), + ]); + + // Do we know the element type? + /** @var class-string|string|null $elementType */ + $elementType = $this->elementType ?? $this->getLayout()->type; + + if ($elementType && is_subclass_of($elementType, ElementInterface::class)) { + $elementEditCondition = $this->getElementEditCondition(); + if (!$elementEditCondition) { + $elementEditCondition = clone self::defaultElementEditCondition($elementType); + $elementEditCondition->setFieldLayouts([$this->getLayout()]); + } + $elementEditCondition->mainTag = 'div'; + $elementEditCondition->id = 'element-edit-condition'; + $elementEditCondition->name = 'elementEditCondition'; + $elementEditCondition->forProjectConfig = true; + + $editConditionsHtml .= Cp::fieldHtml($elementEditCondition->getBuilderHtml(), [ + 'label' => t('{type} Condition', [ + 'type' => $elementType::displayName(), + ]), + 'instructions' => t('Only make editable when editing {type} that match the following rules:', [ + 'type' => $elementType::pluralLowerDisplayName(), + ]), + ]); + } + + return $html . Html::beginTag('fieldset', ['class' => 'pane']) . Html::tag('legend', t('Editability Conditions')) . - Html::beginTag('div') . - Cp::fieldHtml($editCondition->getBuilderHtml(), [ - 'label' => t('Current User Condition'), - 'instructions' => t('Only make editable for users who match the following rules:'), - ]) . - Html::endTag('div') . + Html::tag('div', $editConditionsHtml) . Html::endTag('fieldset'); - - return $html; } /** * Returns whether the field can be edited by the current user. * + * @param ElementInterface|null $element * @return bool * @since 5.7.0 */ - public function editable(): bool + public function editable(?ElementInterface $element): bool { $editCondition = $this->getEditCondition(); @@ -596,6 +731,12 @@ public function editable(): bool } } + $elementEditCondition = $this->getElementEditCondition(); + + if ($elementEditCondition && $element && !$elementEditCondition->matchElement($element)) { + return false; + } + return true; } @@ -604,7 +745,7 @@ public function editable(): bool */ public function formHtml(?ElementInterface $element = null, bool $static = false): ?string { - $static = $static || !$this->editable(); + $static = $static || !$this->editable($element); $view = Craft::$app->getView(); $isDeltaRegistrationActive = $view->getIsDeltaRegistrationActive(); @@ -770,8 +911,8 @@ protected function actionMenuItems(?ElementInterface $element = null, bool $stat $user = Auth::user(); if ($user?->admin && !$user->getPreference('showFieldHandles')) { $items[] = $this->copyAttributeAction([ - 'label' => Craft::t('app', 'Copy field handle'), - 'promptLabel' => Craft::t('app', 'Field Handle'), + 'label' => t('Copy field handle'), + 'promptLabel' => t('Field Handle'), ]); } diff --git a/yii2-adapter/legacy/fieldlayoutelements/addresses/AddressField.php b/yii2-adapter/legacy/fieldlayoutelements/addresses/AddressField.php index 10c62ee5033..d77bab1e547 100644 --- a/yii2-adapter/legacy/fieldlayoutelements/addresses/AddressField.php +++ b/yii2-adapter/legacy/fieldlayoutelements/addresses/AddressField.php @@ -25,11 +25,6 @@ */ class AddressField extends BaseField { - /** - * @inheritdoc - */ - public bool $includeInCards = true; - /** * @inheritdoc */ diff --git a/yii2-adapter/legacy/gql/resolvers/mutations/Asset.php b/yii2-adapter/legacy/gql/resolvers/mutations/Asset.php index 804cb92803a..61d7aa4123b 100644 --- a/yii2-adapter/legacy/gql/resolvers/mutations/Asset.php +++ b/yii2-adapter/legacy/gql/resolvers/mutations/Asset.php @@ -243,12 +243,7 @@ protected function handleUpload(AssetElement $asset, array $fileInformation): bo } elseif (!empty($fileInformation['url'])) { $url = $fileInformation['url']; - // make sure the hostname is alphanumeric and not an IP address - $hostname = parse_url($url, PHP_URL_HOST); - if ( - !filter_var($hostname, FILTER_VALIDATE_DOMAIN, FILTER_FLAG_HOSTNAME) || - filter_var($hostname, FILTER_VALIDATE_IP) - ) { + if (!$this->validateHostname($url)) { throw new UserError("$url contains an invalid hostname."); } @@ -284,4 +279,44 @@ protected function handleUpload(AssetElement $asset, array $fileInformation): bo return true; } + + private function validateHostname(string $url): bool + { + // make sure the hostname is alphanumeric and not an IP address + $hostname = parse_url($url, PHP_URL_HOST); + if ( + !filter_var($hostname, FILTER_VALIDATE_DOMAIN, FILTER_FLAG_HOSTNAME) || + filter_var($hostname, FILTER_VALIDATE_IP) + ) { + return false; + } + + // Check against well-known cloud metadata domains/IPs + // h/t https://gist.github.com/BuffaloWill/fa96693af67e3a3dd3fb + if (in_array($hostname, [ + 'kubernetes.default', + 'kubernetes.default.svc', + 'kubernetes.default.svc.cluster.local', + 'metadata', + 'metadata.google.internal', + 'metadata.packet.net', + ])) { + return false; + } + + // make sure the hostname doesn’t resolve to a known cloud metadata IP + $ip = gethostbyname($hostname); + + if (in_array($ip, [ + '169.254.169.254', + '169.254.170.2', + '169.254.169.254', + '100.100.100.200', + '192.0.0.192', + ])) { + return false; + } + + return true; + } } diff --git a/yii2-adapter/legacy/helpers/Cp.php b/yii2-adapter/legacy/helpers/Cp.php index 5246ee7eba5..0f58af74c54 100644 --- a/yii2-adapter/legacy/helpers/Cp.php +++ b/yii2-adapter/legacy/helpers/Cp.php @@ -40,7 +40,7 @@ use CraftCms\Cms\Element\ElementSources; use CraftCms\Cms\Element\Enums\AttributeStatus; use CraftCms\Cms\Element\Enums\MenuItemType; -use CraftCms\Cms\Field\Contracts\PreviewableFieldInterface; +use CraftCms\Cms\Field\ContentBlock; use CraftCms\Cms\Field\Fields; use CraftCms\Cms\License\License; use CraftCms\Cms\Plugin\Plugins; @@ -2782,30 +2782,7 @@ public static function cardViewDesignerHtml(FieldLayout $fieldLayout, array $con 'disabled' => false, ]; - $allOptions = $fieldLayout->type::cardAttributes($fieldLayout); - - foreach ($fieldLayout->getAllElements() as $layoutElement) { - if ($layoutElement instanceof BaseField && $layoutElement->previewable()) { - $allOptions["layoutElement:$layoutElement->uid"] = [ - 'label' => $layoutElement->label(), - ]; - } - } - - foreach ($fieldLayout->getGeneratedFields() as $field) { - if (($field['name'] ?? '') !== '') { - $allOptions["generatedField:{$field['uid']}"] = [ - 'label' => $field['name'], - ]; - } - } - - foreach ($allOptions as $key => &$option) { - if (!isset($option['value'])) { - $option['value'] = $key; - } - } - + $allOptions = self::cardPreviewOptions($fieldLayout); $selectedOptions = []; $remainingOptions = [...$allOptions]; @@ -2822,7 +2799,6 @@ public static function cardViewDesignerHtml(FieldLayout $fieldLayout, array $con $checkboxSelect = self::checkboxSelectFieldHtml([ 'label' => t('Card Attributes'), 'id' => $config['id'], - 'name' => 'cardView', 'options' => [...$selectedOptions, ...$remainingOptions], 'values' => array_keys($selectedOptions), 'sortable' => true, @@ -2858,6 +2834,77 @@ public static function cardViewDesignerHtml(FieldLayout $fieldLayout, array $con Html::endTag('div'); // .card-view-designer } + /** + * Returns an array of available card preview options for the given field layout. + * + * @param FieldLayout $fieldLayout + * @return array{label:string,value:string}[] + * @since 5.9.0 + */ + public static function cardPreviewOptions(FieldLayout $fieldLayout, bool $withAttributes = true): array + { + return self::cardPreviewOptionsInternal($fieldLayout, '', '', $withAttributes); + } + + private static function cardPreviewOptionsInternal( + FieldLayout $fieldLayout, + string $keyPrefix, + string $labelPrefix, + bool $withAttributes, + ): array { + $allOptions = []; + + if ($withAttributes) { + foreach ($fieldLayout->type::cardAttributes($fieldLayout) as $key => $attribute) { + $allOptions[$keyPrefix . $key] = [ + 'label' => $labelPrefix . $attribute['label'], + 'placeholder' => $attribute['placeholder'], + ]; + } + } + + foreach ($fieldLayout->getAllElements() as $layoutElement) { + if ($layoutElement instanceof CustomField) { + try { + $field = $layoutElement->getField(); + } catch (FieldNotFoundException) { + continue; + } + if ($field instanceof ContentBlock) { + $allOptions += self::cardPreviewOptionsInternal( + $field->getFieldLayout(), + "{$keyPrefix}contentBlock:$layoutElement->uid.", + sprintf('%s%s - ', $labelPrefix, $layoutElement->label()), + false, + ); + continue; + } + } + + if ($layoutElement instanceof BaseField && $layoutElement->previewable()) { + $allOptions[$keyPrefix . $layoutElement->key()] = [ + 'label' => sprintf('%s%s', $labelPrefix, $layoutElement->label()), + ]; + } + } + + foreach ($fieldLayout->getGeneratedFields() as $field) { + if (($field['name'] ?? '') !== '') { + $allOptions["generatedField:{$field['uid']}"] = [ + 'label' => $field['name'], + ]; + } + } + + foreach ($allOptions as $key => &$option) { + if (!isset($option['value'])) { + $option['value'] = $key; + } + } + + return $allOptions; + } + /** * Return HTML for managing thumbnail provider and position. * @@ -2881,16 +2928,20 @@ private static function _thumbManagementHtml(FieldLayout $fieldLayout, array $co ['label' => t('None'), 'value' => '__none__'], ]; } - $elementThumbnail = $fieldLayout->getThumbField()?->uid; + $thumbnailAlignment = $fieldLayout->getCardThumbAlignment(); + /** @var BaseField[] $thumbableElements */ $thumbableElements = array_filter( $fieldLayout->getAllElements(), fn($element) => $element instanceof BaseField && $element->thumbable() ); foreach ($thumbableElements as $thumbableElement) { - $options[] = ['label' => $thumbableElement->label(), 'value' => $thumbableElement->uid]; + $options[] = [ + 'label' => $thumbableElement->label(), + 'value' => $thumbableElement->key(), + ]; } $thumbHtml = Html::beginTag('div', ['class' => 'thumb-management']) . @@ -2901,9 +2952,8 @@ private static function _thumbManagementHtml(FieldLayout $fieldLayout, array $co $thumbHtml .= self::selectFieldHtml([ 'label' => t('Thumbnail Source'), 'id' => 'thumb-source', - 'name' => 'thumbSource', 'options' => $options, - 'value' => $elementThumbnail, + 'value' => $fieldLayout->thumbFieldKey, 'disabled' => $config['disabled'], ]); @@ -2912,8 +2962,7 @@ private static function _thumbManagementHtml(FieldLayout $fieldLayout, array $co $thumbHtml .= self::buttonGroupFieldHtml([ 'label' => t('Thumbnail Alignment'), 'id' => 'thumb-alignment', - 'fieldClass' => $elementThumbnail === null ? 'hidden' : false, - 'name' => 'thumbAlignment', + 'fieldClass' => $fieldLayout->getThumbField() === null ? 'hidden' : false, 'options' => [ [ 'icon' => $orientation == 'ltr' ? 'slideout-left' : 'slideout-right', @@ -2951,13 +3000,14 @@ private static function _thumbManagementHtml(FieldLayout $fieldLayout, array $co * Returns HTML for the card preview based on selected fields and attributes. * * @param FieldLayout $fieldLayout - * @param array $cardElements + * @param array $cardElements (deprecated) + * @param bool|null $showThumb * @return string * @throws Throwable */ - public static function cardPreviewHtml(FieldLayout $fieldLayout, array $cardElements = [], $showThumb = false): string + public static function cardPreviewHtml(FieldLayout $fieldLayout, array $cardElements = [], ?bool $showThumb = null): string { - $hasThumb = $showThumb ?? ($fieldLayout->getThumbField() !== null || $fieldLayout->type::hasThumbs()); + $showThumb ??= $fieldLayout->getThumbField() !== null || $fieldLayout->type::hasThumbs(); $thumbAlignment = $fieldLayout->getCardThumbAlignment(); // get heading @@ -2980,7 +3030,7 @@ public static function cardPreviewHtml(FieldLayout $fieldLayout, array $cardElem 'class' => array_filter([ 'element', 'card', - $hasThumb ? "thumb-$thumbAlignment" : null, + $showThumb ? "thumb-$thumbAlignment" : null, ]), ]); @@ -2992,29 +3042,12 @@ public static function cardPreviewHtml(FieldLayout $fieldLayout, array $cardElem Html::beginTag('div', ['class' => 'card-body']); // get body elements (fields and attributes) - $cardElements = $fieldLayout->getCardBodyElements(null, $cardElements); + $cardElements = $fieldLayout->getCardBodyElements(); foreach ($cardElements as $cardElement) { - if ($cardElement instanceof CustomField) { - try { - $field = $cardElement->getField(); - } catch (FieldNotFoundException) { - continue; - } - if ($field instanceof PreviewableFieldInterface) { - $previewHtml .= Html::tag('div', $field->previewPlaceholderHtml(null, null)); - } - } elseif ($cardElement instanceof BaseField) { - $previewHtml .= Html::tag('div', $cardElement->previewPlaceholderHtml(null, null)); - } elseif (is_array($cardElement) && isset($cardElement['html'])) { - $previewHtml .= Html::tag('div', $cardElement['html']); - } else { - $html = $fieldLayout->type::attributePreviewHtml($cardElement); - if (is_callable($html)) { - $html = $html(); - } - $previewHtml .= Html::tag('div', $html); - } + $previewHtml .= Html::tag('div', $cardElement['html'], [ + 'class' => 'card-attribute-preview', + ]); } if (!empty(array_filter($labels))) { @@ -3029,7 +3062,7 @@ public static function cardPreviewHtml(FieldLayout $fieldLayout, array $cardElem Html::endTag('div'); // .card-content // get thumb placeholder - if ($hasThumb) { + if ($showThumb) { $previewThumb = Html::tag('div', Html::tag('div', Cp::iconSvg('image'), ['class' => 'cp-icon']), ['class' => 'cvd-thumbnail'] diff --git a/yii2-adapter/legacy/helpers/Gql.php b/yii2-adapter/legacy/helpers/Gql.php index 5382065bc0b..ae41f2358ab 100644 --- a/yii2-adapter/legacy/helpers/Gql.php +++ b/yii2-adapter/legacy/helpers/Gql.php @@ -346,6 +346,8 @@ public static function createFullAccessSchema(): GqlSchema $traverser($group); } + $schema->scope[] = 'directive:parseRefs'; + return $schema; } diff --git a/yii2-adapter/legacy/helpers/Template.php b/yii2-adapter/legacy/helpers/Template.php index 5fe01eb509d..96702b3a87e 100644 --- a/yii2-adapter/legacy/helpers/Template.php +++ b/yii2-adapter/legacy/helpers/Template.php @@ -14,6 +14,7 @@ use craft\web\View; use CraftCms\Cms\Shared\BaseModel; use CraftCms\Cms\Support\Facades\Entries; +use CraftCms\Cms\Twig\TwigMapper; use Illuminate\Support\Facades\Auth; use Stringable; use Twig\Environment; @@ -360,40 +361,11 @@ public static function js(string $js, array $options = [], ?string $key = null): * @return array|false The resolved template path and line number, or `false` if the path couldn’t be determined. * If a template path could be determined but not the template line number, the line number will be null. * @since 4.1.5 + * @deprecated 6.0.0 use {@see TwigMapper::resolveTemplatePathAndLine()} instead. */ public static function resolveTemplatePathAndLine(string $path, ?int $line) { - if (!str_contains($path, 'compiled_templates')) { - return false; - } - - $contents = file_get_contents($path); - - if (!preg_match('/^class (\w+)/m', $contents, $match)) { - return false; - } - - $class = $match[1]; - if (!class_exists($class, false) || !is_subclass_of($class, TwigTemplate::class)) { - return false; - } - - /** @var TwigTemplate $template */ - $template = new $class(Craft::$app->getView()->getTwig()); - $src = $template->getSourceContext(); - $templatePath = $src->getPath() ?: null; - $templateLine = null; - - if ($line !== null) { - foreach ($template->getDebugInfo() as $codeLine => $thisTemplateLine) { - if ($codeLine <= $line) { - $templateLine = $thisTemplateLine; - break; - } - } - } - - return [$templatePath, $templateLine]; + return app(TwigMapper::class)->resolveTemplatePathAndLine($path, $line); } /** diff --git a/yii2-adapter/legacy/models/FieldLayout.php b/yii2-adapter/legacy/models/FieldLayout.php index ebc548739d3..6cb27067bc2 100644 --- a/yii2-adapter/legacy/models/FieldLayout.php +++ b/yii2-adapter/legacy/models/FieldLayout.php @@ -27,7 +27,9 @@ use craft\fieldlayoutelements\Template; use craft\fieldlayoutelements\Tip; use craft\validators\HandleValidator; +use CraftCms\Cms\Field\ContentBlock; use CraftCms\Cms\Field\Contracts\FieldInterface; +use CraftCms\Cms\Field\Contracts\PreviewableFieldInterface; use CraftCms\Cms\Field\Field; use CraftCms\Cms\Field\Fields; use CraftCms\Cms\Support\Arr; @@ -221,6 +223,17 @@ public static function createFromConfig(array $config): self */ public ?array $reservedFieldHandles = null; + /** + * @var string|null The element key that provides thumbnails for this layout + * @since 5.9.0 + */ + public ?string $thumbFieldKey = null; + + /** + * @see getThumbField() + */ + private BaseField|false $thumbField; + /** * @var BaseField[][] * @see getAvailableCustomFields() @@ -266,6 +279,12 @@ public static function createFromConfig(array $config): self */ private array $_cardView; + /** + * @var array + * @see cardAttributes() + */ + private array $_cardAttributes; + /** * @var string * @see getCardThumbAlignment() @@ -524,15 +543,7 @@ public function getCardView(): array */ public function setCardView(?array $items): void { - $this->_cardView = []; - - if ($items !== null) { - foreach ($items as $item) { - $this->_cardView[] = $item; - } - } - - // Clear caches + $this->_cardView = array_values($items ?? []); $this->reset(); } @@ -782,6 +793,7 @@ public function getConfig(): ?array 'tabs' => $tabConfigs, 'generatedFields' => $generatedFields, 'cardView' => $cardViewConfig, + 'thumbFieldKey' => $this->thumbFieldKey, 'cardThumbAlignment' => $cardThumbAlignment, ]; } @@ -794,7 +806,7 @@ public function getConfig(): ?array public function resetUids(): void { $this->uid = Str::uuid()->toString(); - $cardView = $this->getCardView(); + $cardViewReplacements = []; foreach ($this->getTabs() as $tab) { $tab->uid = Str::uuid()->toString(); @@ -802,15 +814,19 @@ public function resetUids(): void foreach ($tab->getElements() as $element) { $oldUid = $element->uid; $element->uid = Str::uuid()->toString(); - - $cardViewPos = array_search("layoutElement:$oldUid", $cardView); - if ($cardViewPos !== false) { - $cardView[$cardViewPos] = "layoutElement:$element->uid"; - } + $cardViewReplacements["layoutElement:$oldUid"] = "layoutElement:$element->uid"; } } - $this->setCardView($cardView); + // update the card view items + // (look for `layoutElement:x` anywhere in the item, in case it also + // includes a content block field UUID) + $cardViewItems = []; + foreach ($this->getCardView() as $item) { + $cardViewItems[] = strtr($item, $cardViewReplacements); + } + + $this->setCardView($cardViewItems); } /** @@ -826,6 +842,48 @@ public function getElementByUid(string $uid): ?FieldLayoutElement return $this->_element($filter); } + /** + * Returns a layout element by its `layoutElement:` key. + * + * @param string $key + * @return FieldLayoutElement|null + * @since 5.9.0 + */ + public function getElementByKey(string $key): ?FieldLayoutElement + { + if (str_starts_with($key, 'layoutElement:')) { + $uid = Str::after($key, 'layoutElement:'); + return $this->getElementByUid($uid); + } + + if (!str_starts_with($key, 'contentBlock:')) { + return null; + } + + $keyParts = explode('.', $key); + $key = array_shift($keyParts); + + // get the Content Block field + $uid = Str::after($key, 'contentBlock:'); + $layoutElement = $this->getElementByUid($uid); + + if (!$layoutElement instanceof CustomField) { + return null; + } + + try { + $field = $layoutElement->getField(); + } catch (FieldNotFoundException) { + return null; + } + + if (!$field instanceof ContentBlock) { + return null; + } + + return $field->getFieldLayout()->getElementByKey(implode('.', $keyParts)); + } + /** * Returns the layout elements of a given type. * @@ -998,7 +1056,7 @@ public function getVisibleCustomFields(ElementInterface $element): array public function getEditableCustomFields(ElementInterface $element): array { return $this->_customFields( - fn(CustomField $layoutElement) => $layoutElement->editable(), + fn(CustomField $layoutElement) => $layoutElement->editable($element), $element, ); } @@ -1011,12 +1069,21 @@ public function getEditableCustomFields(ElementInterface $element): array */ public function getThumbField(): ?BaseField { - /** @var BaseField|null */ - return $this->_element(fn(FieldLayoutElement $layoutElement) => ( - $layoutElement instanceof BaseField && - $layoutElement->thumbable() && - $layoutElement->providesThumbs - )); + if (!isset($this->thumbField)) { + if (!isset($this->thumbFieldKey)) { + return null; + } + + $field = $this->getElementByKey($this->thumbFieldKey); + if (!$field instanceof BaseField || !$field->thumbable()) { + $this->thumbField = false; + return null; + } + + $this->thumbField = $field; + } + + return $this->thumbField ?: null; } /** @@ -1025,14 +1092,16 @@ public function getThumbField(): ?BaseField * @param ElementInterface|null $element * @return BaseField[] * @since 5.0.0 + * @deprecated in 5.9.0 */ public function getCardBodyFields(?ElementInterface $element): array { + $cardViewItems = array_flip($this->getCardView()); /** @var BaseField[] */ return iterator_to_array($this->_elements(fn(FieldLayoutElement $layoutElement) => ( $layoutElement instanceof BaseField && $layoutElement->previewable() && - $layoutElement->includeInCards + (isset($cardViewItems[$layoutElement->attribute()]) || isset($cardViewItems["layoutElement:$layoutElement->uid"])) ), $element)); } @@ -1041,15 +1110,16 @@ public function getCardBodyFields(?ElementInterface $element): array * * @return array * @since 5.5.0 + * @deprecated in 5.9.0 */ public function getCardBodyAttributes(): array { - $cardViewValues = $this->getCardView(); + $cardViewItems = array_flip($this->getCardView()); // filter only the selected attributes $attributes = array_filter( $this->type::cardAttributes($this), - fn($cardAttribute, $key) => in_array($key, $cardViewValues), + fn($cardAttribute, $key) => isset($cardViewItems[$key]), ARRAY_FILTER_USE_BOTH ); @@ -1065,90 +1135,147 @@ public function getCardBodyAttributes(): array * Returns the fields and attributes that should be used in element card bodies in the correct order. * * @param ElementInterface|null $element - * @return array + * @param array $cardElements (deprecated) + * @return array * @since 5.5.0 */ public function getCardBodyElements(?ElementInterface $element = null, array $cardElements = []): array { - // get attributes that should show in a card - $attributes = $this->getCardBodyAttributes(); + // todo: simplify further to only return key/html pairs + $cardElements = []; - $layoutElements = []; + foreach ($this->getCardView() as $key) { + $html = $this->getCardBodyHtmlForElement($key, $element); - if (empty($cardElements)) { - // index field layout elements by prefix + uid - foreach ($this->getCardBodyFields($element) as $layoutElement) { - $layoutElements["layoutElement:$layoutElement->uid"] = $layoutElement; + if ($html) { + $cardElements[$key] = ['html' => $html]; } + } - foreach ($this->getGeneratedFields() as $field) { - if (($field['name'] ?? '') !== '') { - $layoutElements["generatedField:{$field['uid']}"] = [ - 'html' => $element ? ($element->getGeneratedFieldValues()[$field['uid']] ?? '') : Html::encode($field['name']), - ]; - } + return $cardElements; + } + + /** + * Returns the card body HTML for a given card element key. + * + * @param string $key + * @param ElementInterface|null $element + * @since 5.9.0 + */ + public function getCardBodyHtmlForElement(string $key, ?ElementInterface $element = null): ?string + { + return match (true) { + str_starts_with($key, 'layoutElement:') => $this->cardHtmlForLayoutElement($key, $element), + str_starts_with($key, 'contentBlock:') => $this->cardHtmlForContentBlock($key, $element), + str_starts_with($key, 'generatedField:') => $this->cardHtmlForGeneratedField($key, $element), + default => $this->cardHtmlForAttribute($key, $element), + }; + } + + private function cardHtmlForLayoutElement(string $key, ?ElementInterface $element): ?string + { + $layoutElement = $this->getElementByKey($key); + + if (!$layoutElement instanceof BaseField) { + return null; + } + + if ($element) { + return $layoutElement->previewHtml($element); + } + + if ($layoutElement instanceof CustomField) { + try { + $field = $layoutElement->getField(); + } catch (FieldNotFoundException) { + return null; } - } else { - // we only need to worry about body fields as the attributes are taken care of via getCardBodyAttributes() - foreach ($cardElements as $cardElement) { - if (str_starts_with($cardElement['value'], 'layoutElement:')) { - $uid = str_replace('layoutElement:', '', $cardElement['value']); - $layoutElement = $this->getElementByUid($uid); - if ($layoutElement === null) { - $fieldId = $cardElement['fieldId']; - if ($fieldId) { - $field = app(Fields::class)->getFieldById($fieldId); - $layoutElement = new CustomField(); - $layoutElement->setField($field); - } else { - // this will kick in for native field that have just been dragged into the field layout designer - $fieldLabel = $cardElement['fieldLabel']; - if ($fieldLabel) { - $layoutElement['value'] = $layoutElement; - $layoutElement['label'] = $fieldLabel; - } - } - } - $layoutElements[$cardElement['value']] = $layoutElement; - } elseif (str_starts_with($cardElement['value'], 'generatedField:')) { - $uid = str_replace('generatedField:', '', $cardElement['value']); - $field = $this->getGeneratedFieldByUid($uid); - if ($field) { - $layoutElements[$cardElement['value']] = [ - 'html' => $element ? ($element->getGeneratedFieldValues()[$uid] ?? '') : Html::encode($field['name']), - ]; - } elseif (isset($cardElement['fieldLabel'])) { - $layoutElements[$cardElement['value']] = [ - 'html' => Html::encode($cardElement['fieldLabel']), - ]; - } - } + if (!$field instanceof PreviewableFieldInterface) { + return null; } + + return $field->previewPlaceholderHtml(null, null); } - // get the card view config - array of all the attributes, fields and generated fields that should be shown in the card - $cardViewValues = $this->getCardView(); + return $layoutElement->previewPlaceholderHtml(null, $element); + } - // filter out any generated fields that shouldn't show in the card - $layoutElements = array_filter( - $layoutElements, - fn($key) => !str_starts_with($key, 'generatedField:') || in_array($key, $cardViewValues), - ARRAY_FILTER_USE_KEY - ); + private function cardHtmlForContentBlock(string $key, ?ElementInterface $element): ?string + { + // the key will be in the format `contentBlock:X::[...]::layoutElement:X` + $keyParts = explode('.', $key); + $key = array_shift($keyParts); - $elements = array_merge($layoutElements, $attributes); + // get the Content Block field + $uid = Str::after($key, 'contentBlock:'); + $layoutElement = $this->getElementByUid($uid); - // make sure we don't have any cardViewValues that are no longer allowed to show in cards - $cardViewValues = array_filter($cardViewValues, fn($value) => isset($elements[$value])); + if (!$layoutElement instanceof CustomField) { + return null; + } - // return elements in the order specified in the config - return array_replace( - array_flip($cardViewValues), - $elements + try { + $field = $layoutElement->getField(); + } catch (FieldNotFoundException) { + return null; + } + + if (!$field instanceof ContentBlock) { + return null; + } + + return $field->getFieldLayout()->getCardBodyHtmlForElement( + implode('.', $keyParts), + $element?->getFieldValue($field->handle), ); } + private function cardHtmlForGeneratedField(string $key, ?ElementInterface $element): ?string + { + $uid = Str::after($key, 'generatedField:'); + $field = $this->getGeneratedFieldByUid($uid); + + if (!$field) { + return null; + } + + if ($element) { + return $element->getGeneratedFieldValues()[$uid] ?? null; + } + + return Html::encode($field['name'] ?? ''); + } + + private function cardHtmlForAttribute(string $key, ?ElementInterface $element): ?string + { + if ($element) { + return $element->getAttributeHtml($key); + } + + $attribute = $this->cardAttributes()[$key] ?? null; + + if (!$attribute) { + return null; + } + + $html = $this->type::attributePreviewHtml([ + ...$attribute, + 'value' => $key, + ]); + + if (is_callable($html)) { + return $html(); + } + + return $html; + } + + private function cardAttributes(): array + { + return $this->_cardAttributes ??= $this->type::cardAttributes($this); + } + /** * @param callable|null $filter * @param ElementInterface|null $element diff --git a/yii2-adapter/legacy/services/Gql.php b/yii2-adapter/legacy/services/Gql.php index ee0572024cb..add280a4432 100644 --- a/yii2-adapter/legacy/services/Gql.php +++ b/yii2-adapter/legacy/services/Gql.php @@ -390,7 +390,7 @@ public function getSchemaDef(?GqlSchema $schema = null, bool $prebuildSchema = f 'typeLoader' => TypeLoader::class . '::loadType', 'query' => TypeLoader::loadType('Query'), 'mutation' => TypeLoader::loadType('Mutation'), - 'directives' => $this->_loadGqlDirectives(), + 'directives' => $this->_loadGqlDirectives($schema), ]; // If we're not required to pre-build the schema the relevant GraphQL types will be added to the Schema @@ -1540,9 +1540,10 @@ private function _registerGqlMutations(): void /** * Get GraphQL query definitions * + * @param GqlSchema|null $schema * @return GqlDirective[] */ - private function _loadGqlDirectives(): array + private function _loadGqlDirectives(?GqlSchema $schema): array { /** @var class-string[] $directiveClasses */ $directiveClasses = [ @@ -1550,11 +1551,14 @@ private function _loadGqlDirectives(): array FormatDateTime::class, Markdown::class, Money::class, - ParseRefs::class, StripTags::class, Trim::class, ]; + if (in_array('directive:parseRefs', $schema->scope)) { + $directiveClasses[] = ParseRefs::class; + } + if (!Cms::config()->disableGraphqlTransformDirective) { $directiveClasses[] = Transform::class; } diff --git a/yii2-adapter/legacy/web/View.php b/yii2-adapter/legacy/web/View.php index 6111acafc99..ced65466390 100644 --- a/yii2-adapter/legacy/web/View.php +++ b/yii2-adapter/legacy/web/View.php @@ -13,7 +13,6 @@ use craft\events\CreateTwigEvent; use craft\events\RegisterTemplateRootsEvent; use craft\events\TemplateEvent; -use craft\helpers\App; use craft\helpers\Cp; use craft\helpers\FileHelper; use craft\helpers\Path; @@ -22,6 +21,7 @@ use craft\web\twig\Extension; use craft\web\twig\FeExtension; use craft\web\twig\SafeHtml; +use craft\web\twig\SecurityPolicy; use craft\web\twig\SinglePreloaderExtension; use craft\web\twig\TemplateLoader; use CraftCms\Cms\Cms; @@ -39,6 +39,7 @@ use Twig\Error\SyntaxError as TwigSyntaxError; use Twig\Extension\CoreExtension; use Twig\Extension\ExtensionInterface; +use Twig\Extension\SandboxExtension; use Twig\Extension\StringLoaderExtension; use Twig\Runtime\EscaperRuntime; use Twig\Template as TwigTemplate; @@ -430,6 +431,9 @@ public function createTwig(): Environment /** @phpstan-ignore argument.type */ $twig->getRuntime(EscaperRuntime::class)->addSafeClass($safeClass, ['html']); + // Even an empty security policy will prevent non-closures from being allowed as arrow functions + $twig->addExtension(new SandboxExtension(new SecurityPolicy(), true)); + $twig->addExtension(new StringLoaderExtension()); $twig->addExtension(new Extension($this, $twig)); diff --git a/yii2-adapter/legacy/web/assets/cp/CpAsset.php b/yii2-adapter/legacy/web/assets/cp/CpAsset.php index c2340e875e2..ecc0cd50d3c 100644 --- a/yii2-adapter/legacy/web/assets/cp/CpAsset.php +++ b/yii2-adapter/legacy/web/assets/cp/CpAsset.php @@ -214,8 +214,6 @@ private function _registerTranslations(View $view): void 'Display in a structured table', 'Display in a table', 'Done', - 'Don’t show in element cards', - 'Don’t use for element thumbnails', 'Draft Name', 'Duplicate', 'Edit draft settings', @@ -370,7 +368,6 @@ private function _registerTranslations(View $view): void 'Select {element}', 'Select', 'Settings', - 'Show in element cards', 'Show nav', 'Show nested sources', 'Show sidebar', @@ -425,7 +422,6 @@ private function _registerTranslations(View $view): void 'Upload failed.', 'Upload files', 'Use defaults', - 'Use for element thumbnails', 'Use the arrow keys to change position, Tab or Spacebar to drop.', 'User Groups', 'View in a new tab', diff --git a/yii2-adapter/legacy/web/assets/cp/src/js/Craft.js b/yii2-adapter/legacy/web/assets/cp/src/js/Craft.js index e7d29ac2ad8..e90ba87cfaa 100644 --- a/yii2-adapter/legacy/web/assets/cp/src/js/Craft.js +++ b/yii2-adapter/legacy/web/assets/cp/src/js/Craft.js @@ -2902,45 +2902,53 @@ $.extend(Craft, { await this.animateAll([[element, css]]); }, + transitionQueue: null, + animateAll: function (animations) { - return new Promise((resolve, reject) => { - for (let i = 0; i < animations.length; i++) { - if ((!animations[i][0]) instanceof jQuery) { - animations[i][0] = $(animations[i][0]); - } - } + if (!Craft.transitionQueue) { + Craft.transitionQueue = new Craft.Queue(); + } - if (!document.startViewTransition) { - // fallback to Velocity + return Craft.transitionQueue.push(() => { + return new Promise((resolve, reject) => { for (let i = 0; i < animations.length; i++) { - const [$element, css] = animations[i]; - $element.velocity( - css, - Craft.BaseElementSelectInput.REMOVE_FX_DURATION, - i === animations.length - 1 ? resolve : null - ); + if ((!animations[i][0]) instanceof jQuery) { + animations[i][0] = $(animations[i][0]); + } } - return; - } - for (const [$element] of animations) { - if ($element.css('view-transition-name') === 'none') { - $element.css( - 'view-transition-name', - `vt-${Math.floor(Math.random() * 100000)}` - ); + if (!document.startViewTransition) { + // fallback to Velocity + for (let i = 0; i < animations.length; i++) { + const [$element, css] = animations[i]; + $element.velocity( + css, + Craft.BaseElementSelectInput.REMOVE_FX_DURATION, + i === animations.length - 1 ? resolve : null + ); + } + return; } - } - const transition = document.startViewTransition(() => { - for (const [$element, css] of animations) { - $element.css(css); + for (const [$element] of animations) { + if ($element.css('view-transition-name') === 'none') { + $element.css( + 'view-transition-name', + `vt-${Math.floor(Math.random() * 100000)}` + ); + } } - }); - transition.finished.then(resolve).catch((e) => { - console.warn(e); - resolve(); + const transition = document.startViewTransition(() => { + for (const [$element, css] of animations) { + $element.css(css); + } + }); + + transition.finished.then(resolve).catch((e) => { + console.warn(e); + resolve(); + }); }); }); }, diff --git a/yii2-adapter/legacy/web/assets/cp/src/js/FieldLayoutDesigner.js b/yii2-adapter/legacy/web/assets/cp/src/js/FieldLayoutDesigner.js index d017364aec5..379981821f4 100644 --- a/yii2-adapter/legacy/web/assets/cp/src/js/FieldLayoutDesigner.js +++ b/yii2-adapter/legacy/web/assets/cp/src/js/FieldLayoutDesigner.js @@ -25,6 +25,7 @@ Craft.FieldLayoutDesigner = Garnish.Base.extend( tabGrid: null, elementDrag: null, + cvd: null, $cvd: null, _config: null, @@ -187,16 +188,13 @@ Craft.FieldLayoutDesigner = Garnish.Base.extend( }, initCvd: function () { - let cvd = new Craft.FieldLayoutDesigner.CardViewDesigner(this, this.$cvd); - - cvd.$libraryContainer - .data('sortableCheckboxSelect') - ?.dragSort?.on('dragStop', function () { - cvd.updatePreview(); - }); + this.cvd = new Craft.FieldLayoutDesigner.CardViewDesigner( + this, + this.$cvd + ); // Add skip link - const skipLinkAnchor = cvd.$container.attr('id'); + const skipLinkAnchor = this.cvd.$container.attr('id'); if (skipLinkAnchor) { const $skipLink = $('', { @@ -205,7 +203,7 @@ Craft.FieldLayoutDesigner = Garnish.Base.extend( href: `#${skipLinkAnchor}`, }); - cvd.$container.attr('tabindex', '-1'); + this.cvd.$container.attr('tabindex', '-1'); this.$innerContainer.prepend($skipLink); } }, @@ -838,7 +836,6 @@ Craft.FieldLayoutDesigner.Element = Garnish.Base.extend({ attribute: null, requirable: false, thumbable: false, - previewable: false, hasCustomWidth: false, hasSettings: false, settingsNamespace: null, @@ -896,7 +893,6 @@ Craft.FieldLayoutDesigner.Element = Garnish.Base.extend({ if (this.isField) { this.requirable = Garnish.hasAttr(this.$container, 'data-requirable'); this.thumbable = Garnish.hasAttr(this.$container, 'data-thumbable'); - this.previewable = Garnish.hasAttr(this.$container, 'data-previewable'); this.attribute = this.$container.data('attribute'); this.defaultHandle = this.$container.data('default-handle'); } @@ -945,7 +941,7 @@ Craft.FieldLayoutDesigner.Element = Garnish.Base.extend({ .disclosureMenu() .data('disclosureMenu'); - let makeRequiredBtn, dropRequiredBtn, makeThumbnailBtn, dropThumbnailBtn; + let makeRequiredBtn, dropRequiredBtn; this.hasSettings = Garnish.hasAttr(this.$container, 'data-has-settings'); @@ -994,31 +990,6 @@ Craft.FieldLayoutDesigner.Element = Garnish.Base.extend({ actionUl ); } - - if (!this.tab.designer.settings.withCardViewDesigner && this.thumbable) { - makeThumbnailBtn = disclosureMenu.addItem( - { - label: Craft.t('app', 'Use for element thumbnails'), - icon: async () => await Craft.ui.icon('image'), - iconColor: 'violet', - onActivate: () => { - this.makeThumbnail(); - }, - }, - actionUl - ); - dropThumbnailBtn = disclosureMenu.addItem( - { - label: Craft.t('app', 'Don’t use for element thumbnails'), - icon: async () => await Craft.ui.icon('image-slash'), - iconColor: 'gray', - onActivate: () => { - this.dropThumbnail(); - }, - }, - actionUl - ); - } } const moveGroup = disclosureMenu.addGroup(); @@ -1063,14 +1034,6 @@ Craft.FieldLayoutDesigner.Element = Garnish.Base.extend({ disclosureMenu.toggleItem(dropRequiredBtn, this.config.required); } - if (!this.tab.designer.settings.withCardViewDesigner && this.thumbable) { - disclosureMenu.toggleItem( - makeThumbnailBtn, - !this.config.providesThumbs - ); - disclosureMenu.toggleItem(dropThumbnailBtn, this.config.providesThumbs); - } - disclosureMenu.toggleItem( moveUpBtn, this.$container.prev('.fld-element').length @@ -1085,17 +1048,15 @@ Craft.FieldLayoutDesigner.Element = Garnish.Base.extend({ onSelect() { this.$container.attr('data-uid', this.uid); - if (Garnish.hasAttr(this.$container, 'data-previewable')) { - const cvd = this.tab.designer.$cvd?.data('cvd'); + const previewOptions = this.$container.data('preview-options'); + if (previewOptions) { + const cvd = this.tab.designer.cvd; if (cvd) { - const label = this.getLabel(); - cvd.addCheckbox({ - value: `layoutElement:${this.uid}`, - label: label, - data: { - 'field-id': this.fieldId, - 'field-label': label, - }, + previewOptions.forEach((option) => { + cvd.addCheckbox({ + value: option.value.replace(/\{uid}/g, this.uid), + label: option.label, + }); }); cvd.updateThumbnailsDropdown(this, 'add'); } @@ -1209,46 +1170,6 @@ Craft.FieldLayoutDesigner.Element = Garnish.Base.extend({ }); }, - async makeThumbnail() { - await this.applyConfig((config) => { - config.providesThumbs = true; - return config; - }).then(() => { - if (this.tab.designer.settings.withCardViewDesigner) { - let cvd = this.tab.designer.$cvd?.data('cvd'); - cvd.showThumb = true; - cvd.updatePreview(); - } - }); - }, - - async dropThumbnail() { - await this.applyConfig((config) => { - config.providesThumbs = false; - return config; - }).then(() => { - if (this.tab.designer.settings.withCardViewDesigner) { - let cvd = this.tab.designer.$cvd?.data('cvd'); - cvd.showThumb = false; - cvd.updatePreview(); - } - }); - }, - - async showInCards() { - await this.applyConfig((config) => { - config.includeInCards = true; - return config; - }); - }, - - async omitFromCards() { - await this.applyConfig((config) => { - config.includeInCards = false; - return config; - }); - }, - moveUp() { const $prev = this.$container.prev('.fld-element'); if ($prev.length) { @@ -1323,10 +1244,15 @@ Craft.FieldLayoutDesigner.Element = Garnish.Base.extend({ this.initUi(); if (this.tab.designer.settings.withCardViewDesigner) { - const cvd = this.tab.designer.$cvd.data('cvd'); + const cvd = this.tab.designer.cvd; if (cvd) { - // update label in cvd checkboxes - cvd.updateCheckboxLabel(this.$container.data('uid'), this.getLabel()); + // update labels in cvd checkboxes + $newContainer.data('preview-options').forEach((option) => { + cvd.updateCheckboxLabel( + option.value.replace(/\{uid}/g, this.uid), + option.label + ); + }); // update label in the element thumbnails dropdown cvd.updateThumbnailsDropdownOptionLabel(this.$container); @@ -1426,17 +1352,24 @@ Craft.FieldLayoutDesigner.Element = Garnish.Base.extend({ }, destroy: function () { - if ( - this.tab.designer.settings.withCardViewDesigner && - this.config.providesThumbs - ) { - let cvd = this.tab.designer.$cvd?.data('cvd'); - cvd.showThumb = false; + if (this.tab.designer.settings.withCardViewDesigner) { + const cvd = this.tab.designer.cvd; + if (cvd) { + const previewOptions = this.$container.data('preview-options'); - cvd.removeCheckbox(this.uid); - cvd.updateThumbnailsDropdown(this, 'remove'); + if (this.config.providesThumbs) { + // this needs to be called before removeCheckbox() + cvd.updateThumbnailsDropdown(this, 'remove'); + } + + if (previewOptions?.length) { + previewOptions.forEach((option) => { + cvd.removeCheckbox(option.value.replace(/\{uid}/g, this.uid)); + }); + } - cvd.updatePreview(); + cvd.updatePreview(); + } } this.tab.updateConfig((config) => { @@ -1948,10 +1881,8 @@ Craft.FieldLayoutDesigner.CardViewDesigner = Garnish.Base.extend({ $container: null, $previewContainer: null, $libraryContainer: null, - showThumb: null, sortableCheckboxSelect: null, $thumbManagementContainer: null, - thumbAlignment: null, alwaysShowThumbAlignmentBtns: false, init: function (designer, container) { @@ -1967,22 +1898,9 @@ Craft.FieldLayoutDesigner.CardViewDesigner = Garnish.Base.extend({ 'sortableCheckboxSelect' ); this.$thumbManagementContainer = this.$container.find('.thumb-management'); - this.thumbAlignment = this.$thumbManagementContainer - .find('div.btngroup[id$="thumb-alignment"] .btn.active') - ?.data('value'); this.alwaysShowThumbAlignmentBtns = designer.settings.alwaysShowThumbAlignmentBtns; - // trigger preview update when items are checked/unchecked - this.$libraryContainer.on('change', function (ev) { - if ($(ev.target).parents('.checkbox').length > 0) { - $(ev.target).prop('checked', true); - } else { - let cvd = $(this).parents('.card-view-designer').data('cvd'); - cvd.updatePreview(); - } - }); - let $thumbSelectDropdown = this.$thumbManagementContainer.find( 'select[id$="thumb-source"]' ); @@ -2002,7 +1920,7 @@ Craft.FieldLayoutDesigner.CardViewDesigner = Garnish.Base.extend({ this.manageThumbnailAlignment(ev.target); }); - this.listenToSortableEvents(); + this.listenToCheckboxEvents(); this.disablePreviewLinks(); }, @@ -2011,66 +1929,44 @@ Craft.FieldLayoutDesigner.CardViewDesigner = Garnish.Base.extend({ this.sortableCheckboxSelect.initItem($draggable); // trigger preview update when items are dragged into new position - let cvd = this.$container.data('cvd'); - this.sortableCheckboxSelect.dragSort?.on('dragStop', function () { - cvd.updatePreview(); + this.sortableCheckboxSelect.dragSort?.on('dragStop', () => { + this.updatePreview(); }); - this.listenToSortableEvents(); + this.listenToCheckboxEvents(); }, - listenToSortableEvents: function () { - let cvd = this.$container.data('cvd'); - - // when item is moved up or down via disclosure menu - update preview - this.sortableCheckboxSelect?.$container.on( - 'movedUp movedDown', - function () { - cvd.updatePreview(); - } - ); - - // when checkbox is checked or unchecked - apply config & update preview - this.sortableCheckboxSelect?.$container.on( - 'checked unchecked', - function (ev) { - let val = $(ev.target).find('input.checkbox').val(); - if (!val.startsWith('layoutElement:')) { - return; - } - - val = val.substring(14); - - let $fld = cvd.designer.$tabContainer.find( - '.fld-field[data-uid="' + val + '"]' - ); - if ($fld.length > 0) { - let fldElement = $fld.data('fld-element'); - - if (ev.type == 'checked') { - fldElement.showInCards(); - } else { - fldElement.omitFromCards(); - } - } + listenToCheckboxEvents: function () { + // trigger preview update when items are checked/unchecked + this.$libraryContainer.on('checked unchecked', () => { + this.updateCardViewConfig(); + this.updatePreview(); + }); + this.sortableCheckboxSelect.on('sortChange', () => { + this.updateCardViewConfig(); + this.updatePreview(); + }); + }, - cvd.updatePreview(); - } - ); + updateCardViewConfig: function () { + this.designer.updateConfig((config) => { + // can't rely on :checked + config.cardView = this.$libraryContainer + .find('input[type=checkbox]') + .toArray() + .filter((el) => el.checked) + .map((e) => e.value); + return config; + }); }, updatePreview: function () { this.$previewContainer.addClass('loading'); Craft.cp.announce(Craft.t('app', 'Loading')); - let cardElements = this.getCardElements(); - Craft.sendActionRequest('POST', 'fields/render-card-preview', { data: { fieldLayoutConfig: this.designer.config, - cardElements: cardElements, - showThumb: this.showThumb, - thumbAlignment: this.thumbAlignment, }, }) .then(({data}) => { @@ -2099,25 +1995,6 @@ Craft.FieldLayoutDesigner.CardViewDesigner = Garnish.Base.extend({ }); }, - getCardElements: function () { - let checkedItems = this.$libraryContainer.find( - 'input[name*="cardView"]:checked' - ); - let cardElements = []; - - for (let i = 0; i < checkedItems.length; i++) { - let element = { - value: $(checkedItems[i]).val(), - fieldId: $(checkedItems[i]).data('fieldId') ?? null, - fieldLabel: $(checkedItems[i]).data('fieldLabel') ?? null, - }; - - cardElements.push(element); - } - - return cardElements; - }, - addCheckbox: function (config = {}) { if (!this.$libraryContainer.length) { return; @@ -2133,7 +2010,6 @@ Craft.FieldLayoutDesigner.CardViewDesigner = Garnish.Base.extend({ .createCheckbox( Object.assign( { - name: 'cardView[]', checked: false, }, config @@ -2147,16 +2023,15 @@ Craft.FieldLayoutDesigner.CardViewDesigner = Garnish.Base.extend({ this.initDrag($draggable); }, - updateCheckboxLabel: function (uid, label) { - const $draggable = this.findCheckboxByUid(uid); + updateCheckboxLabel: function (value, label) { + const $draggable = this.findCheckboxByValue(value); if ($draggable?.length) { - $draggable.find('input').attr('data-field-label', label); $draggable.find('label').text(label); } }, - removeCheckbox: function (uid) { - let $draggable = this.findCheckboxByUid(uid); + removeCheckbox: function (value) { + let $draggable = this.findCheckboxByValue(value); if ($draggable?.length) { $draggable.find('input[type="checkbox"]').prop('checked', false); $draggable.remove(); @@ -2166,13 +2041,13 @@ Craft.FieldLayoutDesigner.CardViewDesigner = Garnish.Base.extend({ } }, - findCheckboxByUid: function (uid) { + findCheckboxByValue: function (value) { if (!this.$libraryContainer.length) { return null; } return this.$libraryContainer - .find(`input[value$=":${uid}"]`) + .find(`input[value="${value}"]`) .parents('.checkbox-select-item'); }, @@ -2181,50 +2056,39 @@ Craft.FieldLayoutDesigner.CardViewDesigner = Garnish.Base.extend({ let $btn = $(target); let alignment = $btn.data('value'); - if (alignment !== this.thumbAlignment) { - this.thumbAlignment = alignment; + if (alignment !== this.designer.config.thumbAlignment) { + this.designer.updateConfig((config) => { + config.cardThumbAlignment = alignment; + return config; + }); this.updatePreview(); } }, manageThumbnails: function (target) { - let $select = $(target); + const $select = $(target); + let thumbFieldKey = null; - if ($select.val() == '__none__' || $select.val() == '__default__') { + if ($select.val() === '__none__' || $select.val() === '__default__') { if ( - $select.val() == '__none__' && + $select.val() === '__none__' && !this.designer.settings.alwaysShowThumbAlignmentBtns ) { // hide the alignment buttons this.hideThumbAlignment(); } - - // find the element that's currently a thumb and call dropThumbnail on it - // that will take care of updating the card preview too - const $fields = this.designer.$tabContainer.find('.fld-field'); - for (let i = 0; i < $fields.length; i++) { - const $field = $fields.eq(i); - const element = $field.data('fld-element'); - if (element && element.config.providesThumbs) { - element.dropThumbnail(); - break; - } - } } else { + thumbFieldKey = $select.val(); // show the alignment buttons this.showThumbAlignment(); + } - // get the element that's supposed to become a new thumbnail and call makeThumbnail() on it; - // that will take care of updating the card preview too - const $fields = this.designer.$tabContainer.find('.fld-field'); - for (let i = 0; i < $fields.length; i++) { - const $field = $fields.eq(i); - const element = $field.data('fld-element'); - if (element && element.uid == $select.val()) { - element.makeThumbnail(); - break; - } - } + if (thumbFieldKey !== this.designer.config.thumbFieldKey) { + this.designer.updateConfig((config) => { + config.thumbFieldKey = thumbFieldKey; + return config; + }); + this.updatePreview(); } }, diff --git a/yii2-adapter/legacy/web/assets/garnish/dist/garnish.js b/yii2-adapter/legacy/web/assets/garnish/dist/garnish.js index 33862c3e5a8..2fac4a0054b 100644 --- a/yii2-adapter/legacy/web/assets/garnish/dist/garnish.js +++ b/yii2-adapter/legacy/web/assets/garnish/dist/garnish.js @@ -1,3 +1,3 @@ /*! For license information please see garnish.js.LICENSE.txt */ -!function(){var t={144:function(t,e,i){"use strict";t.exports=function(){if("object"==typeof globalThis)return globalThis;var t;try{t=this||new Function("return this")()}catch(t){if("object"==typeof window)return window;if("object"==typeof self)return self;if(void 0!==i.g)return i.g}return t}()},450:function(t,e,i){"use strict";i.r(e),i.d(e,{default:function(){return V}});var s=jQuery,n=i.n(s);function r(t){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r(t)}var o=function(){};function a(t){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},a(t)}o.extend=function(t,e){var i=o.prototype.extend;o._prototyping=!0;var s=new this;i.call(s,t),s.base=function(){},delete o._prototyping;var n=s.constructor,r=s.constructor=function(){if(!o._prototyping)if(this._constructing||this.constructor==r)this._constructing=!0,n.apply(this,arguments),delete this._constructing;else if(null!=arguments[0])return(arguments[0].extend||i).call(arguments[0],s)};return r.ancestor=this,r.extend=this.extend,r.forEach=this.forEach,r.implement=this.implement,r.prototype=s,r.toString=this.toString,r.valueOf=function(t){return"object"==t?r:n.valueOf()},i.call(r,e),"function"==typeof r.init&&r.init(),r},o.prototype={extend:function(t,e){if(arguments.length>1){var i=this[t];if(i&&"function"==typeof e&&(!i.valueOf||i.valueOf()!=e.valueOf())&&/\bbase\b/.test(e)){var s=e.valueOf();e=function(){var t=this.base||o.prototype.base;this.base=i;var e=s.apply(this,arguments);return this.base=t,e},e.valueOf=function(t){return"object"==t?e:s},e.toString=o.toString}this[t]=e}else if(t){var n=o.prototype.extend;o._prototyping||"function"==typeof this||(n=this.extend||n);for(var a={toSource:null},h=["constructor","toString","valueOf"],l=o._prototyping?0:1;c=h[l++];)t[c]!=a[c]&&n.call(this,c,t[c]);for(var c in t)if(!a[c]){var u=Object.getOwnPropertyDescriptor(t,c);"undefined"!=r(u.value)?n.call(this,c,u.value):Object.defineProperty(this,c,u)}}return this}},o=o.extend({constructor:function(){this.extend(arguments[0])}},{ancestor:Object,version:"1.1",forEach:function(t,e,i){for(var s in t)void 0===this.prototype[s]&&e.call(i,t[s],s,t)},implement:function(){for(var t=0;t=0;n--){var r=this._eventHandlers[n];r.type!==s[0]||s[1]&&r.namespace!==s[1]||r.handler!==e||this._eventHandlers.splice(n,1)}},once:function(t,e,i){var s=this;"function"==typeof e&&(i=e,e={});var n=function(e){s.off(t,n),i(e)};this.on(t,e,n)},trigger:function(t,e){var i=this,s={type:t,target:this};this._eventHandlers.filter((function(e){return e.type===t})).forEach((function(t){var i=n().extend({data:t.data},e,s);t.handler(i)})),j._eventHandlers.filter((function(e){return e&&e.target&&i instanceof e.target&&e.type===t})).forEach((function(t){var i=n().extend({data:t.data},e,s);t.handler(i)}))},_splitEvents:function(t){if("string"==typeof t){t=t.split(",");for(var e=0;et.length)&&(e=t.length);for(var i=0,s=Array(e);ithis._.$scrollContainer[0].clientHeight||this.settings.axis!==j.Y_AXIS&&this._.$scrollContainer[0].scrollWidth>this._.$scrollContainer[0].clientWidth)break;this._.$scrollContainer=this._.$scrollContainer.scrollParent()}},isScrollingWindow:function(){return this._.$scrollContainer[0]===j.$win[0]},drag:function(t){var e=this;t&&(this.drag._scrollProperty=null,this.settings.axis!==j.X_AXIS&&(this.isScrollingWindow()?(this.drag._minMouseScrollY=j.$win.scrollTop(),this.drag._maxMouseScrollY=this.drag._minMouseScrollY+j.$win.height()):(this.drag._minMouseScrollY=this._.$scrollContainer.offset().top,this.drag._maxMouseScrollY=this.drag._minMouseScrollY+this._.$scrollContainer.outerHeight()),this.drag._minMouseScrollY+=j.BaseDrag.windowScrollTargetSize,this.drag._maxMouseScrollY-=j.BaseDrag.windowScrollTargetSize,this.mouseYthis.drag._maxMouseScrollY&&(this.drag._scrollProperty="scrollTop",this.drag._scrollAxis="Y",this.drag._scrollDist=Math.round((this.mouseY-this.drag._maxMouseScrollY)/2))),this.drag._scrollProperty||this.settings.axis===j.Y_AXIS||(this.isScrollingWindow()?(this.drag._minMouseScrollX=j.$win.scrollLeft(),this.drag._maxMouseScrollX=this.drag._minMouseScrollX+j.$win.width()):(this.drag._minMouseScrollX=this._.$scrollContainer.offset().left,this.drag._maxMouseScrollX=this.drag._minMouseScrollX+this._.$scrollContainer.outerWidth()),this.drag._minMouseScrollX+=j.BaseDrag.windowScrollTargetSize,this.drag._maxMouseScrollX-=j.BaseDrag.windowScrollTargetSize,this.mouseXthis.drag._maxMouseScrollX&&(this.drag._scrollProperty="scrollLeft",this.drag._scrollAxis="X",this.drag._scrollDist=Math.round((this.mouseX-this.drag._maxMouseScrollX)/2))),this.drag._scrollProperty?(this.scrollProperty||(this.scrollFrame&&(j.cancelAnimationFrame(this.scrollFrame),this.scrollFrame=null),this.scrollFrame=j.requestAnimationFrame((function(){e._scrollWindow()}))),this.scrollProperty=this.drag._scrollProperty,this.scrollAxis=this.drag._scrollAxis,this.scrollDist=this.drag._scrollDist):this._cancelWindowScroll()),this.onDrag()},stopDragging:function(){this.dragging=!1,this.onDragStop(),this._cancelWindowScroll(),j.requestAnimationFrame((function(){j.activateEventsMuted=!1}))},addItems:function(t){var e,i=this,s=function(t,e){var i="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!i){if(Array.isArray(t)||(i=function(t,e){if(t){if("string"==typeof t)return c(t,e);var i={}.toString.call(t).slice(8,-1);return"Object"===i&&t.constructor&&(i=t.constructor.name),"Map"===i||"Set"===i?Array.from(t):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?c(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){i&&(t=i);var s=0,n=function(){};return{s:n,n:function(){return s>=t.length?{done:!0}:{done:!1,value:t[s++]}},e:function(t){throw t},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,o=!0,a=!1;return{s:function(){i=i.call(t)},n:function(){var t=i.next();return o=t.done,t},e:function(t){a=!0,r=t},f:function(){try{o||null==i.return||i.return()}finally{if(a)throw r}}}}(t=n().makeArray(t));try{var r=function(){var t=e.value;if(n().data(t,"drag")){if(n().data(t,"drag")===i)return 1;console.warn("Element was added to more than one dragger"),n().data(t,"drag").removeItems(t)}n().data(t,"drag",i),i.addListener(i._getItemHandle(t),"mousedown",(function(e){i._handleMouseDown(e,t)}))};for(s.s();!(e=s.n()).done;)r()}catch(t){s.e(t)}finally{s.f()}this.$items=this.$items.add(t)},removeItems:function(t){t=n().makeArray(t);for(var e=0;e=(null!==(e=this.settings.minMouseDist)&&void 0!==e?e:j.BaseDrag.minMouseDist)&&this.startDragging()),this.dragging&&this.drag(!0)},_handleMouseUp:function(t){this.removeAllListeners(j.$doc),this.dragging&&this.stopDragging(),this.$targetItem=null},_scrollWindow:function(){var t=this;this._.scrollPos=this._.$scrollContainer[this.scrollProperty](),this._.scrollTargetPos=this._.scrollPos+this.scrollDist,this._.scrollTargetPos<0?this._.scrollTargetPos=0:("Y"===this.scrollAxis?this._.scrollMax=this._.$scrollContainer[0].scrollHeight-this._.$scrollContainer.outerHeight():this._.scrollMax=this._.$scrollContainer[0].scrollWidth-this._.$scrollContainer.outerWidth(),this._.scrollTargetPos>this._.scrollMax&&(this._.scrollTargetPos=this._.scrollMax)),this._.$scrollContainer[this.scrollProperty](this._.scrollTargetPos),this.isScrollingWindow()&&(this["mouse"+this.scrollAxis]-=this._.scrollPos-j.$win[this.scrollProperty](),this["realMouse"+this.scrollAxis]=this["mouse"+this.scrollAxis]),this.scrollFrame=j.requestAnimationFrame((function(){t._scrollWindow()})),this.drag(!0)},_cancelWindowScroll:function(){this.scrollFrame&&(j.cancelAnimationFrame(this.scrollFrame),this.scrollFrame=null),this.scrollProperty=null,this.scrollAxis=null,this.scrollDist=null},_deinitItem:function(t){this.removeAllListeners(t),n().removeData(t,"drag")}},{minMouseDist:1,windowScrollTargetSize:25,defaults:{minMouseDist:null,handle:null,axis:null,ignoreHandleSelector:"input, textarea, button, select, .btn",onBeforeDragStart:n().noop,onDragStart:n().noop,onDrag:n().noop,onDragStop:n().noop}}),d=h.extend({$container:null,$all:null,$options:null,init:function(t,e){var i=this;this.$container=n()(t),this.setSettings(e,j.CheckboxSelect.defaults),this.$container.data("checkboxSelect")&&(console.warn("Double-instantiating a checkbox select on an element"),this.$container.data("checkboxSelect").destroy()),this.$container.data("checkboxSelect",this);var s=this.$container.find("input");if(this.$all=s.filter(".all:first"),this.$options=s.not(this.$all),this.addListener(this.$all,"change","onAllChange"),this.settings.storageKey){var r=Craft.getLocalStorage(this.settings.storageKey);r&&(this.$all.length&&r.includes(this.$all.val())?this.isAllChecked()||this.$all.prop("checked",!0).trigger("change"):(this.isAllChecked()&&this.$all.prop("checked",!1).trigger("change"),this.$options.each((function(t,e){var i=r.includes(e.value);i!==e.checked&&(e.checked=i,n()(e).trigger("change"))})))),s.on("change",(function(){var t=[];i.$all.prop("checked")?t.push(i.$all.val()):i.$options.each((function(e,i){i.checked&&t.push(i.value)})),Craft.setLocalStorage(i.settings.storageKey,t)}))}},isAllChecked:function(){return this.$all.prop("checked")},onAllChange:function(){var t=this.isAllChecked();this.$options.prop({checked:t,disabled:t})},destroy:function(){this.$container.removeData("checkboxSelect"),this.base()}},{defaults:{storageKey:null}}),g=h.extend({$target:null,options:null,$menu:null,showingMenu:!1,init:function(t,e,i){this.$target=n()(t),this.$target.data("contextmenu")&&(console.warn("Double-instantiating a context menu on an element"),this.$target.data("contextmenu").destroy()),this.$target.data("contextmenu",this),this.options=e,this.setSettings(i,j.ContextMenu.defaults),j.ContextMenu.counter++,this.enable()},buildMenu:function(){this.$menu=n()('