From cec469ec8ffc05705ea3c6bc2dc666a3a099ec5a Mon Sep 17 00:00:00 2001
From: Nicolas Peltier <1032754+npeltier@users.noreply.github.com>
Date: Mon, 3 Feb 2025 15:49:39 +0100
Subject: [PATCH 1/6] MWPW-165459 collection API (#148)
- collection transformer that injects cards & categories fields to the body if fragment belongs to /collections/ folder,
- unit test
---
io-actions/src/fragment/collection.js | 77 ++++++++++
io-actions/src/fragment/paths.js | 4 +-
io-actions/src/fragment/pipeline.js | 3 +-
io-actions/src/fragment/replace.js | 2 +-
io-actions/src/fragment/translate.js | 3 +-
io-actions/test/fragment/collection.test.js | 82 ++++++++++
.../test/fragment/mocks/collection.json | 144 ++++++++++++++++++
.../test/fragment/{ => mocks}/dictionary.json | 0
io-actions/test/fragment/pipeline.test.js | 58 +++++++
io-actions/test/fragment/replace.test.js | 2 +-
10 files changed, 369 insertions(+), 6 deletions(-)
create mode 100644 io-actions/src/fragment/collection.js
create mode 100644 io-actions/test/fragment/collection.test.js
create mode 100644 io-actions/test/fragment/mocks/collection.json
rename io-actions/test/fragment/{ => mocks}/dictionary.json (100%)
diff --git a/io-actions/src/fragment/collection.js b/io-actions/src/fragment/collection.js
new file mode 100644
index 00000000..29526a5c
--- /dev/null
+++ b/io-actions/src/fragment/collection.js
@@ -0,0 +1,77 @@
+const fetch = require('node-fetch');
+const { odinReferences } = require('./paths.js');
+
+function isCollection(body) {
+ const { path, fields } = body;
+ return path.indexOf('/collections/') > 0 && fields?.categories;
+}
+
+function parseReferences(ids, references) {
+ const cards = {};
+ const categories = [];
+
+ ids.forEach((id) => {
+ const reference = references[id];
+ const { fields } = reference?.value;
+ if (fields?.variant) {
+ //reference is a card
+ cards[id] = reference.value;
+ } else if (fields?.cards || fields?.categories) {
+ //reference is a category
+ const { label, cards, categories: categoryReferences } = fields;
+ if (cards?.length) {
+ //we consider categories with cards to be final
+ //(no subcategories)
+ categories.push({ label, cards });
+ } else {
+ const subReferences = parseReferences(
+ categoryReferences,
+ references,
+ );
+ categories.push({
+ label,
+ categories: subReferences.categories,
+ });
+ }
+ }
+ });
+
+ return { cards, categories };
+}
+
+/**
+ * attach categories to current collection fragment
+ */
+async function collection(context) {
+ const { body } = context;
+ const { id } = body;
+ if (isCollection(body)) {
+ const referencesPath = odinReferences(id, true);
+ try {
+ const response = await fetch(referencesPath);
+ if (response.status === 200) {
+ const root = await response.json();
+ const { references } = root;
+ const { cards, categories } = parseReferences(
+ Object.keys(references),
+ references,
+ );
+ body.fields = { ...body.fields, cards, categories };
+ return {
+ ...context,
+ status: 200,
+ body,
+ };
+ }
+ } catch (e) {
+ console.error(`error fetching ${referencesPath}`, e);
+ }
+ return {
+ status: 500,
+ message: 'unable to fetch references',
+ };
+ }
+ return context;
+}
+
+exports.collection = collection;
diff --git a/io-actions/src/fragment/paths.js b/io-actions/src/fragment/paths.js
index 0143c4fa..fc109303 100644
--- a/io-actions/src/fragment/paths.js
+++ b/io-actions/src/fragment/paths.js
@@ -19,8 +19,8 @@ function odinId(id) {
* @param {*} id id of the fragment,
* @returns full fetchable path to the fragment references
*/
-function odinReferences(id) {
- return `${odinId(id)}/variations/master/references`;
+function odinReferences(id, allHydrated = false) {
+ return `${odinId(id)}/variations/master/references${allHydrated ? '?references=all-hydrated' : ''}`;
}
/**
diff --git a/io-actions/src/fragment/pipeline.js b/io-actions/src/fragment/pipeline.js
index 1087fa3c..b3ee5d5e 100644
--- a/io-actions/src/fragment/pipeline.js
+++ b/io-actions/src/fragment/pipeline.js
@@ -1,10 +1,11 @@
const fetchFragment = require('./fetch.js').fetchFragment;
const translate = require('./translate.js').translate;
const replace = require('./replace.js').replace;
+const collection = require('./collection.js').collection;
async function main(params) {
let context = { ...params, status: 200 };
- for (const transformer of [fetchFragment, translate, replace]) {
+ for (const transformer of [fetchFragment, translate, collection, replace]) {
if (context.status != 200) break;
context = await transformer(context);
}
diff --git a/io-actions/src/fragment/replace.js b/io-actions/src/fragment/replace.js
index ab69a3c5..1553fbbc 100644
--- a/io-actions/src/fragment/replace.js
+++ b/io-actions/src/fragment/replace.js
@@ -31,7 +31,7 @@ async function getDictionary(context) {
if (!id) {
return null;
}
- const response = await fetch(odinReferences(id, true));
+ const response = await fetch(odinReferences(id));
if (response.status == 200) {
const raw = await response.json();
diff --git a/io-actions/src/fragment/translate.js b/io-actions/src/fragment/translate.js
index 3f387b51..7d68d269 100644
--- a/io-actions/src/fragment/translate.js
+++ b/io-actions/src/fragment/translate.js
@@ -1,7 +1,8 @@
const fetch = require('node-fetch');
const { PATH_TOKENS, odinPath } = require('./paths.js');
/**
- * we expect a body to already have been fetched, and a locale to be requested
+ * we expect a body to already have been fetched, and a locale to be requested.
+ * This transformer name is a bit abusive: it just fetches a translation if the locale is different from the source locale.
*/
async function translate(context) {
const { body, locale } = context;
diff --git a/io-actions/test/fragment/collection.test.js b/io-actions/test/fragment/collection.test.js
new file mode 100644
index 00000000..50c51420
--- /dev/null
+++ b/io-actions/test/fragment/collection.test.js
@@ -0,0 +1,82 @@
+const collection = require('../../src/fragment/collection').collection;
+const COLLECTION_RESPONSE = require('./mocks/collection.json');
+const { expect } = require('chai');
+const nock = require('nock');
+
+const collectionContext = {
+ status: 200,
+ body: {
+ path: '/content/dam/mas/nala/ccd/collections/test',
+ id: 'test',
+ fields: {
+ variant: 'ccd-slice',
+ categories: ['blah'],
+ },
+ },
+ locale: 'en_US',
+};
+
+describe('collection transform', () => {
+ afterEach(() => {
+ nock.cleanAll();
+ });
+
+ it('should not do anything when not a collection', async () => {
+ const context = {
+ status: 200,
+ body: {
+ path: '/content/dam/mas/nala/ccd/slice-cc-allapps31211',
+ id: 'test',
+ fields: {
+ variant: 'ccd-slice',
+ description: 'blah',
+ cta: 'Buy now',
+ },
+ },
+ };
+ const response = await collection(context);
+ expect(response).to.deep.equal(context);
+ });
+
+ it('should return a 500 when request fails', async () => {
+ nock('https://odin.adobe.com')
+ .get('/adobe/sites/fragments/test/variations/master/references')
+ .query({ references: 'all-hydrated' })
+ .reply(500);
+ const context = await collection(collectionContext);
+ expect(context).to.deep.equal({
+ status: 500,
+ message: 'unable to fetch references',
+ });
+ });
+
+ it('should return a collection object with categories and cards', async () => {
+ nock('https://odin.adobe.com')
+ .get('/adobe/sites/fragments/test/variations/master/references')
+ .query({ references: 'all-hydrated' })
+ .reply(200, COLLECTION_RESPONSE);
+ const response = await collection(collectionContext);
+ expect(response?.body?.fields)
+ .to.have.property('cards')
+ .that.is.an('object');
+ expect(
+ response.body.fields.cards['7c87d1c4-d7fd-4370-b318-4cb2ebb4dd13']
+ .fields.description.value,
+ ).to.equal(
+ "
i'm aon, with a price his is nicolas' card {{view-account}}
",
+ );
+ expect(response.body.fields)
+ .to.have.property('categories')
+ .that.is.an('array');
+ expect(response.body.fields.categories).to.deep.equal([
+ {
+ label: 'All',
+ cards: [
+ '7c87d1c4-d7fd-4370-b318-4cb2ebb4dd13',
+ 'aec092ef-d5b5-4271-8b6f-4bbd535fcc56',
+ ],
+ },
+ { label: 'Photo', cards: ['aec092ef-d5b5-4271-8b6f-4bbd535fcc56'] },
+ ]);
+ });
+});
diff --git a/io-actions/test/fragment/mocks/collection.json b/io-actions/test/fragment/mocks/collection.json
new file mode 100644
index 00000000..fa2107bc
--- /dev/null
+++ b/io-actions/test/fragment/mocks/collection.json
@@ -0,0 +1,144 @@
+{
+ "references": {
+ "fd2ba6b7-7510-4e41-b19d-b981ad4a1028": {
+ "type": "content-fragment",
+ "value": {
+ "path": "/content/dam/mas/drafts/en_US/collections/plans-individual---all",
+ "name": "",
+ "title": "Plans Individual - All ",
+ "id": "fd2ba6b7-7510-4e41-b19d-b981ad4a1028",
+ "fields": {
+ "label": "All",
+ "cards": [
+ "7c87d1c4-d7fd-4370-b318-4cb2ebb4dd13",
+ "aec092ef-d5b5-4271-8b6f-4bbd535fcc56"
+ ],
+ "locReady": true
+ }
+ }
+ },
+ "7c87d1c4-d7fd-4370-b318-4cb2ebb4dd13": {
+ "type": "content-fragment",
+ "value": {
+ "path": "/content/dam/mas/drafts/en_US/nico/ccd-slice-wide-cc-all-app",
+ "name": "",
+ "title": "CCD Slice Wide CC All Apps",
+ "id": "7c87d1c4-d7fd-4370-b318-4cb2ebb4dd13",
+ "description": "",
+ "model": {
+ "id": "L2NvbmYvbWFzL3NldHRpbmdzL2RhbS9jZm0vbW9kZWxzL2NhcmQ"
+ },
+ "fields": {
+ "variant": "ccd-slice",
+ "size": "wide",
+ "mnemonicIcon": [
+ "https://www.adobe.com/cc-shared/assets/img/product-icons/svg/creative-cloud.svg"
+ ],
+ "mnemonicAlt": [],
+ "mnemonicLink": [],
+ "badge": { "mimeType": "text/html" },
+ "backgroundImage": "https://main--milo--adobecom.hlx.page/drafts/axel/media_144906e76fce812811940ce88ceded4f8d12098b5.png?width=2000&format=webply&optimize=medium",
+ "cardTitle": "Slice CC All Apps sds",
+ "subtitle": "blah",
+ "prices": { "mimeType": "text/html" },
+ "shortDescription": { "mimeType": "text/html" },
+ "description": {
+ "value": "i'm aon, with a price his is nicolas' card {{view-account}}
",
+ "mimeType": "text/html"
+ },
+ "ctas": {
+ "value": "{{buy-now}}",
+ "mimeType": "text/html"
+ },
+ "stockOffers": {},
+ "tags": []
+ }
+ }
+ },
+ "aec092ef-d5b5-4271-8b6f-4bbd535fcc56": {
+ "type": "content-fragment",
+ "value": {
+ "path": "/content/dam/mas/drafts/en_US/nico/ccd-slice-wide-cc-all-app1",
+ "name": "",
+ "title": "CCD Slice Wide CC All Apps",
+ "id": "aec092ef-d5b5-4271-8b6f-4bbd535fcc56",
+ "description": "",
+ "model": {
+ "id": "L2NvbmYvbWFzL3NldHRpbmdzL2RhbS9jZm0vbW9kZWxzL2NhcmQ"
+ },
+ "fields": {
+ "variant": "ccd-slice",
+ "size": "wide",
+ "mnemonicIcon": [
+ "https://www.adobe.com/cc-shared/assets/img/product-icons/svg/creative-cloud.svg"
+ ],
+ "mnemonicAlt": [],
+ "mnemonicLink": [],
+ "badge": { "mimeType": "text/html" },
+ "backgroundImage": "https://main--milo--adobecom.hlx.page/drafts/axel/media_144906e76fce812811940ce88ceded4f8d12098b5.png?width=2000&format=webply&optimize=medium",
+ "cardTitle": "Slice CC All Apps sds",
+ "subtitle": "blah",
+ "prices": { "mimeType": "text/html" },
+ "shortDescription": { "mimeType": "text/html" },
+ "description": {
+ "value": "i'm adding here a description, with a price . Ha by the way, this is nicolas' card
",
+ "mimeType": "text/html"
+ },
+ "ctas": {
+ "value": "Buy now
",
+ "mimeType": "text/html"
+ },
+ "stockOffers": {},
+ "tags": []
+ }
+ }
+ },
+ "f1c7855d-ebe8-4785-8ea3-d96fbfb9af81": {
+ "type": "content-fragment",
+ "value": {
+ "path": "/content/dam/mas/drafts/en_US/collections/photo",
+ "name": "",
+ "title": "Plans Individual - Photo",
+ "id": "f1c7855d-ebe8-4785-8ea3-d96fbfb9af81",
+ "description": "",
+ "model": {
+ "id": "L2NvbmYvbWFzL3NldHRpbmdzL2RhbS9jZm0vbW9kZWxzL2NvbGxlY3Rpb24tY2F0ZWdvcnk"
+ },
+ "fields": {
+ "label": "Photo",
+ "cards": ["aec092ef-d5b5-4271-8b6f-4bbd535fcc56"],
+ "locReady": true
+ }
+ }
+ }
+ },
+ "referencesTree": [
+ {
+ "fieldName": "categories",
+ "identifier": "fd2ba6b7-7510-4e41-b19d-b981ad4a1028",
+ "referencesTree": [
+ {
+ "fieldName": "cards",
+ "identifier": "7c87d1c4-d7fd-4370-b318-4cb2ebb4dd13",
+ "referencesTree": []
+ },
+ {
+ "fieldName": "cards",
+ "identifier": "aec092ef-d5b5-4271-8b6f-4bbd535fcc56",
+ "referencesTree": []
+ }
+ ]
+ },
+ {
+ "fieldName": "categories",
+ "identifier": "f1c7855d-ebe8-4785-8ea3-d96fbfb9af81",
+ "referencesTree": [
+ {
+ "fieldName": "cards",
+ "identifier": "aec092ef-d5b5-4271-8b6f-4bbd535fcc56",
+ "referencesTree": []
+ }
+ ]
+ }
+ ]
+}
diff --git a/io-actions/test/fragment/dictionary.json b/io-actions/test/fragment/mocks/dictionary.json
similarity index 100%
rename from io-actions/test/fragment/dictionary.json
rename to io-actions/test/fragment/mocks/dictionary.json
diff --git a/io-actions/test/fragment/pipeline.test.js b/io-actions/test/fragment/pipeline.test.js
index 485c7ef7..19d9443a 100644
--- a/io-actions/test/fragment/pipeline.test.js
+++ b/io-actions/test/fragment/pipeline.test.js
@@ -2,6 +2,7 @@ const { expect } = require('chai');
const nock = require('nock');
const action = require('../../src/fragment/pipeline.js');
const mockDictionary = require('./replace.test.js').mockDictionary;
+const COLLECTION_RESPONSE = require('./mocks/collection.json');
describe('pipeline full use case', () => {
beforeEach(() => {
@@ -47,6 +48,63 @@ describe('pipeline full use case', () => {
},
});
});
+ it('should return fully baked /content/dam/mas/drafts/fr_FR/collections/plans-individual', async () => {
+ nock('https://odin.adobe.com')
+ .get('/adobe/sites/fragments/some-us-en-fragment')
+ .reply(200, {
+ path: '/content/dam/mas/drafts/en_US/collections/someFragment',
+ some: 'body',
+ });
+ nock('https://odin.adobe.com')
+ .get('/adobe/sites/fragments')
+ .query({
+ path: '/content/dam/mas/drafts/fr_FR/collections/someFragment',
+ })
+ .reply(200, {
+ items: [
+ {
+ id: 'test',
+ path: '/content/dam/mas/drafts/fr_FR/collections/someFragment',
+ fields: {
+ description: 'corps',
+ cta: '{{buy-now}}',
+ categories: ['a', 'b', 'c'],
+ },
+ },
+ ],
+ });
+ nock('https://odin.adobe.com')
+ .get('/adobe/sites/fragments/test/variations/master/references')
+ .query({ references: 'all-hydrated' })
+ .reply(200, COLLECTION_RESPONSE);
+ const result = await action.main({
+ id: 'some-us-en-fragment',
+ locale: 'fr_FR',
+ });
+ expect(result.status).to.equal(200);
+ expect(result.body).to.have.property('fields');
+ expect(result.body.fields).to.have.property('cards');
+ expect(result.body.fields).to.have.property('categories');
+ expect(result.body.fields.cards).to.be.an('object');
+ expect(result.body.fields.categories).to.be.an('array');
+ expect(result.body.fields.categories[0]).to.deep.equal({
+ label: 'All',
+ cards: [
+ '7c87d1c4-d7fd-4370-b318-4cb2ebb4dd13',
+ 'aec092ef-d5b5-4271-8b6f-4bbd535fcc56',
+ ],
+ });
+ expect(
+ result.body.fields.cards['7c87d1c4-d7fd-4370-b318-4cb2ebb4dd13']
+ ?.fields?.description?.value,
+ ).to.be.a('string');
+ expect(
+ result.body.fields.cards['7c87d1c4-d7fd-4370-b318-4cb2ebb4dd13']
+ .fields.description.value,
+ ).to.equal(
+ "i'm aon, with a price his is nicolas' card View account
",
+ );
+ });
});
describe('pipeline corner cases', () => {
diff --git a/io-actions/test/fragment/replace.test.js b/io-actions/test/fragment/replace.test.js
index 8ec83865..6fb04b8e 100644
--- a/io-actions/test/fragment/replace.test.js
+++ b/io-actions/test/fragment/replace.test.js
@@ -1,7 +1,7 @@
const { expect } = require('chai');
const nock = require('nock');
const replace = require('../../src/fragment/replace.js').replace;
-const DICTIONARY_RESPONSE = require('./dictionary.json');
+const DICTIONARY_RESPONSE = require('./mocks/dictionary.json');
const DICTIONARY_CF_RESPONSE = {
items: [
{
From 24b97d50a9e3314a4318cf07ce23222ee3a75eb8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ilyas=20T=C3=BCrkben?=
Date: Tue, 4 Feb 2025 17:47:43 +0100
Subject: [PATCH 2/6] MWPW-161354: filter unused fields in the editor (#123)
filter fields based on variant.
---
nala/studio/studio.page.js | 2 +-
nala/studio/studio.test.js | 5 +-
studio/libs/swc.js | 218 +++----
studio/proxy-server.mjs | 2 +-
studio/src/constants.js | 9 +
studio/src/editor-panel.js | 651 +++++++++++--------
studio/src/editors/merch-card-editor.js | 252 ++++---
studio/src/mas-fragment.js | 3 +-
studio/src/mas-repository.js | 59 +-
studio/src/reactivity/fragment-store.js | 9 +
studio/src/reactivity/reactive-controller.js | 37 ++
studio/src/reactivity/reactive-store.js | 4 +
studio/src/store.js | 35 +-
studio/src/swc.js | 5 +-
studio/style.css | 18 +-
studio/test/editor-panel.test.html | 35 +-
studio/test/mocks/folders/default.json | 15 +-
17 files changed, 820 insertions(+), 539 deletions(-)
create mode 100644 studio/src/reactivity/reactive-controller.js
diff --git a/nala/studio/studio.page.js b/nala/studio/studio.page.js
index 4f49eb28..a8e5f46a 100644
--- a/nala/studio/studio.page.js
+++ b/nala/studio/studio.page.js
@@ -29,7 +29,7 @@ export default class StudioPage {
this.cardIcon = page.locator('merch-icon');
this.cardBadge = page.locator('.ccd-slice-badge');
// Editor panel fields
- this.editorTitle = page.locator('#card-title');
+ this.editorTitle = page.locator('#card-title input');
// suggested cards
this.suggestedCard = page.locator(
'merch-card[variant="ccd-suggested"]',
diff --git a/nala/studio/studio.test.js b/nala/studio/studio.test.js
index 599cdcfa..419d8ad2 100644
--- a/nala/studio/studio.test.js
+++ b/nala/studio/studio.test.js
@@ -151,17 +151,16 @@ test.describe('M@S Studio feature test suite', () => {
expect(await studio.editorPanel.title).toBeVisible;
await expect(
await studio.editorPanel.locator(studio.editorTitle),
- ).toHaveAttribute('value', `${data.title}`);
+ ).toHaveValue(`${data.title}`);
await studio.editorPanel
.locator(studio.editorTitle)
- .locator('input')
.fill(data.newTitle);
});
await test.step('step-4: Validate edited title field', async () => {
await expect(
await studio.editorPanel.locator(studio.editorTitle),
- ).toHaveAttribute('value', `${data.newTitle}`);
+ ).toHaveValue(`${data.newTitle}`);
});
});
});
diff --git a/studio/libs/swc.js b/studio/libs/swc.js
index 1a7a6c96..b65a1937 100644
--- a/studio/libs/swc.js
+++ b/studio/libs/swc.js
@@ -1,8 +1,8 @@
-var Xd=Object.create;var tc=Object.defineProperty;var Yd=Object.getOwnPropertyDescriptor;var Jd=Object.getOwnPropertyNames;var Qd=Object.getPrototypeOf,th=Object.prototype.hasOwnProperty;var x=(s,t)=>()=>(s&&(t=s(s=0)),t);var eh=(s,t)=>()=>(t||s((t={exports:{}}).exports,t),t.exports),$n=(s,t)=>{for(var e in t)tc(s,e,{get:t[e],enumerable:!0})},rh=(s,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Jd(t))!th.call(s,o)&&o!==e&&tc(s,o,{get:()=>t[o],enumerable:!(r=Yd(t,o))||r.enumerable});return s};var An=(s,t,e)=>(e=s!=null?Xd(Qd(s)):{},rh(t||!s||!s.__esModule?tc(e,"default",{value:s,enumerable:!0}):e,s));var es,Ir,ec,Ln,ho,Mn,v,rc,rs,oc=x(()=>{es=globalThis,Ir=es.ShadowRoot&&(es.ShadyCSS===void 0||es.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,ec=Symbol(),Ln=new WeakMap,ho=class{constructor(t,e,r){if(this._$cssResult$=!0,r!==ec)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o,e=this.t;if(Ir&&t===void 0){let r=e!==void 0&&e.length===1;r&&(t=Ln.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),r&&Ln.set(e,t))}return t}toString(){return this.cssText}},Mn=s=>new ho(typeof s=="string"?s:s+"",void 0,ec),v=(s,...t)=>{let e=s.length===1?s[0]:t.reduce((r,o,a)=>r+(i=>{if(i._$cssResult$===!0)return i.cssText;if(typeof i=="number")return i;throw Error("Value passed to 'css' function must be a 'css' function result: "+i+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(o)+s[a+1],s[0]);return new ho(e,s,ec)},rc=(s,t)=>{if(Ir)s.adoptedStyleSheets=t.map(e=>e instanceof CSSStyleSheet?e:e.styleSheet);else for(let e of t){let r=document.createElement("style"),o=es.litNonce;o!==void 0&&r.setAttribute("nonce",o),r.textContent=e.cssText,s.appendChild(r)}},rs=Ir?s=>s:s=>s instanceof CSSStyleSheet?(t=>{let e="";for(let r of t.cssRules)e+=r.cssText;return Mn(e)})(s):s});var oh,sh,ah,ih,ch,nh,Te,Dn,lh,uh,bo,go,os,On,ie,vo=x(()=>{oc();oc();({is:oh,defineProperty:sh,getOwnPropertyDescriptor:ah,getOwnPropertyNames:ih,getOwnPropertySymbols:ch,getPrototypeOf:nh}=Object),Te=globalThis,Dn=Te.trustedTypes,lh=Dn?Dn.emptyScript:"",uh=Te.reactiveElementPolyfillSupport,bo=(s,t)=>s,go={toAttribute(s,t){switch(t){case Boolean:s=s?lh:null;break;case Object:case Array:s=s==null?s:JSON.stringify(s)}return s},fromAttribute(s,t){let e=s;switch(t){case Boolean:e=s!==null;break;case Number:e=s===null?null:Number(s);break;case Object:case Array:try{e=JSON.parse(s)}catch{e=null}}return e}},os=(s,t)=>!oh(s,t),On={attribute:!0,type:String,converter:go,reflect:!1,hasChanged:os};Symbol.metadata??(Symbol.metadata=Symbol("metadata")),Te.litPropertyMetadata??(Te.litPropertyMetadata=new WeakMap);ie=class extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??(this.l=[])).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=On){if(e.state&&(e.attribute=!1),this._$Ei(),this.elementProperties.set(t,e),!e.noAccessor){let r=Symbol(),o=this.getPropertyDescriptor(t,r,e);o!==void 0&&sh(this.prototype,t,o)}}static getPropertyDescriptor(t,e,r){let{get:o,set:a}=ah(this.prototype,t)??{get(){return this[e]},set(i){this[e]=i}};return{get(){return o?.call(this)},set(i){let l=o?.call(this);a.call(this,i),this.requestUpdate(t,l,r)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??On}static _$Ei(){if(this.hasOwnProperty(bo("elementProperties")))return;let t=nh(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(bo("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(bo("properties"))){let e=this.properties,r=[...ih(e),...ch(e)];for(let o of r)this.createProperty(o,e[o])}let t=this[Symbol.metadata];if(t!==null){let e=litPropertyMetadata.get(t);if(e!==void 0)for(let[r,o]of e)this.elementProperties.set(r,o)}this._$Eh=new Map;for(let[e,r]of this.elementProperties){let o=this._$Eu(e,r);o!==void 0&&this._$Eh.set(o,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){let e=[];if(Array.isArray(t)){let r=new Set(t.flat(1/0).reverse());for(let o of r)e.unshift(rs(o))}else t!==void 0&&e.push(rs(t));return e}static _$Eu(t,e){let r=e.attribute;return r===!1?void 0:typeof r=="string"?r:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(t=>this.enableUpdating=t),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(t=>t(this))}addController(t){(this._$EO??(this._$EO=new Set)).add(t),this.renderRoot!==void 0&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){let t=new Map,e=this.constructor.elementProperties;for(let r of e.keys())this.hasOwnProperty(r)&&(t.set(r,this[r]),delete this[r]);t.size>0&&(this._$Ep=t)}createRenderRoot(){let t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return rc(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),this._$EO?.forEach(t=>t.hostConnected?.())}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach(t=>t.hostDisconnected?.())}attributeChangedCallback(t,e,r){this._$AK(t,r)}_$EC(t,e){let r=this.constructor.elementProperties.get(t),o=this.constructor._$Eu(t,r);if(o!==void 0&&r.reflect===!0){let a=(r.converter?.toAttribute!==void 0?r.converter:go).toAttribute(e,r.type);this._$Em=t,a==null?this.removeAttribute(o):this.setAttribute(o,a),this._$Em=null}}_$AK(t,e){let r=this.constructor,o=r._$Eh.get(t);if(o!==void 0&&this._$Em!==o){let a=r.getPropertyOptions(o),i=typeof a.converter=="function"?{fromAttribute:a.converter}:a.converter?.fromAttribute!==void 0?a.converter:go;this._$Em=o,this[o]=i.fromAttribute(e,a.type),this._$Em=null}}requestUpdate(t,e,r){if(t!==void 0){if(r??(r=this.constructor.getPropertyOptions(t)),!(r.hasChanged??os)(this[t],e))return;this.P(t,e,r)}this.isUpdatePending===!1&&(this._$ES=this._$ET())}P(t,e,r){this._$AL.has(t)||this._$AL.set(t,e),r.reflect===!0&&this._$Em!==t&&(this._$Ej??(this._$Ej=new Set)).add(t)}async _$ET(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}let t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??(this.renderRoot=this.createRenderRoot()),this._$Ep){for(let[o,a]of this._$Ep)this[o]=a;this._$Ep=void 0}let r=this.constructor.elementProperties;if(r.size>0)for(let[o,a]of r)a.wrapped!==!0||this._$AL.has(o)||this[o]===void 0||this.P(o,this[o],a)}let t=!1,e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),this._$EO?.forEach(r=>r.hostUpdate?.()),this.update(e)):this._$EU()}catch(r){throw t=!1,this._$EU(),r}t&&this._$AE(e)}willUpdate(t){}_$AE(t){this._$EO?.forEach(e=>e.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Ej&&(this._$Ej=this._$Ej.forEach(e=>this._$EC(e,this[e]))),this._$EU()}updated(t){}firstUpdated(t){}};ie.elementStyles=[],ie.shadowRootOptions={mode:"open"},ie[bo("elementProperties")]=new Map,ie[bo("finalized")]=new Map,uh?.({ReactiveElement:ie}),(Te.reactiveElementVersions??(Te.reactiveElementVersions=[])).push("2.0.4")});function Vn(s,t){if(!cc(s)||!s.hasOwnProperty("raw"))throw Error("invalid template strings array");return jn!==void 0?jn.createHTML(t):t}function or(s,t,e=s,r){if(t===F)return t;let o=r!==void 0?e._$Co?.[r]:e._$Cl,a=xo(t)?void 0:t._$litDirective$;return o?.constructor!==a&&(o?._$AO?.(!1),a===void 0?o=void 0:(o=new a(s),o._$AT(s,e,r)),r!==void 0?(e._$Co??(e._$Co=[]))[r]=o:e._$Cl=o),o!==void 0&&(t=or(s,o._$AS(s,t.values),o,r)),t}var yo,ss,jn,ac,ce,ic,mh,rr,ko,xo,cc,Un,sc,fo,Bn,Hn,tr,qn,Fn,Nn,nc,c,Nf,Vf,F,_,Rn,er,Zn,wo,as,Tr,sr,is,cs,ns,ls,Kn,ph,Sr,ft=x(()=>{yo=globalThis,ss=yo.trustedTypes,jn=ss?ss.createPolicy("lit-html",{createHTML:s=>s}):void 0,ac="$lit$",ce=`lit$${Math.random().toFixed(9).slice(2)}$`,ic="?"+ce,mh=`<${ic}>`,rr=document,ko=()=>rr.createComment(""),xo=s=>s===null||typeof s!="object"&&typeof s!="function",cc=Array.isArray,Un=s=>cc(s)||typeof s?.[Symbol.iterator]=="function",sc=`[
-\f\r]`,fo=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,Bn=/-->/g,Hn=/>/g,tr=RegExp(`>|${sc}(?:([^\\s"'>=/]+)(${sc}*=${sc}*(?:[^
-\f\r"'\`<>=]|("|')|))|$)`,"g"),qn=/'/g,Fn=/"/g,Nn=/^(?:script|style|textarea|title)$/i,nc=s=>(t,...e)=>({_$litType$:s,strings:t,values:e}),c=nc(1),Nf=nc(2),Vf=nc(3),F=Symbol.for("lit-noChange"),_=Symbol.for("lit-nothing"),Rn=new WeakMap,er=rr.createTreeWalker(rr,129);Zn=(s,t)=>{let e=s.length-1,r=[],o,a=t===2?"":t===3?"":"")),r]},wo=class s{constructor({strings:t,_$litType$:e},r){let o;this.parts=[];let a=0,i=0,l=t.length-1,u=this.parts,[p,h]=Zn(t,e);if(this.el=s.createElement(p,r),er.currentNode=this.el.content,e===2||e===3){let g=this.el.content.firstChild;g.replaceWith(...g.childNodes)}for(;(o=er.nextNode())!==null&&u.length0){o.textContent=ss?ss.emptyScript:"";for(let C=0;C2||r[0]!==""||r[1]!==""?(this._$AH=Array(r.length-1).fill(new String),this.strings=r):this._$AH=_}_$AI(t,e=this,r,o){let a=this.strings,i=!1;if(a===void 0)t=or(this,t,e,0),i=!xo(t)||t!==this._$AH&&t!==F,i&&(this._$AH=t);else{let l=t,u,p;for(t=a[0],u=0;u{let r=e?.renderBefore??t,o=r._$litPart$;if(o===void 0){let a=e?.renderBefore??null;r._$litPart$=o=new Tr(t.insertBefore(ko(),a),a,void 0,e??{})}return o._$AI(s),o}});var Nt,dh,Wn=x(()=>{vo();vo();ft();ft();Nt=class extends ie{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var e;let t=super.createRenderRoot();return(e=this.renderOptions).renderBefore??(e.renderBefore=t.firstChild),t}update(t){let e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=Sr(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return F}};Nt._$litElement$=!0,Nt.finalized=!0,globalThis.litElementHydrateSupport?.({LitElement:Nt});dh=globalThis.litElementPolyfillSupport;dh?.({LitElement:Nt});(globalThis.litElementVersions??(globalThis.litElementVersions=[])).push("4.1.1")});var zo=x(()=>{});var Pr=x(()=>{vo();ft();Wn();zo()});var us,lc=x(()=>{us="0.47.2"});function vh(s){class t extends s{get isLTR(){return this.dir==="ltr"}hasVisibleFocusInTree(){let r=((o=document)=>{var a;let i=o.activeElement;for(;i!=null&&i.shadowRoot&&i.shadowRoot.activeElement;)i=i.shadowRoot.activeElement;let l=i?[i]:[];for(;i;){let u=i.assignedSlot||i.parentElement||((a=i.getRootNode())==null?void 0:a.host);u&&l.push(u),i=u}return l})(this.getRootNode())[0];if(!r)return!1;try{return r.matches(":focus-visible")||r.matches(".focus-visible")}catch{return r.matches(".focus-visible")}}connectedCallback(){if(!this.hasAttribute("dir")){let r=this.assignedSlot||this.parentNode;for(;r!==document.documentElement&&!gh(r);)r=r.assignedSlot||r.parentNode||r.host;if(this.dir=r.dir==="rtl"?r.dir:this.dir||"ltr",r===document.documentElement)uc.add(this);else{let{localName:o}=r;o.search("-")>-1&&!customElements.get(o)?customElements.whenDefined(o).then(()=>{r.startManagingContentDirection(this)}):r.startManagingContentDirection(this)}this._dirParent=r}super.connectedCallback()}disconnectedCallback(){super.disconnectedCallback(),this._dirParent&&(this._dirParent===document.documentElement?uc.delete(this):this._dirParent.stopManagingContentDirection(this),this.removeAttribute("dir"))}}return t}var uc,hh,bh,gh,I,Gn=x(()=>{"use strict";Pr();lc();uc=new Set,hh=()=>{let s=document.documentElement.dir==="rtl"?document.documentElement.dir:"ltr";uc.forEach(t=>{t.setAttribute("dir",s)})},bh=new MutationObserver(hh);bh.observe(document.documentElement,{attributes:!0,attributeFilter:["dir"]});gh=s=>typeof s.startManagingContentDirection<"u"||s.tagName==="SP-THEME";I=class extends vh(Nt){};I.VERSION=us});var Xn=x(()=>{});function n(s){return(t,e)=>typeof e=="object"?yh(s,t,e):((r,o,a)=>{let i=o.hasOwnProperty(a);return o.constructor.createProperty(a,i?{...r,wrapped:!0}:r),i?Object.getOwnPropertyDescriptor(o,a):void 0})(s,t,e)}var fh,yh,mc=x(()=>{vo();fh={attribute:!0,type:String,converter:go,reflect:!1,hasChanged:os},yh=(s=fh,t,e)=>{let{kind:r,metadata:o}=e,a=globalThis.litPropertyMetadata.get(o);if(a===void 0&&globalThis.litPropertyMetadata.set(o,a=new Map),a.set(e.name,s),r==="accessor"){let{name:i}=e;return{set(l){let u=t.get.call(this);t.set.call(this,l),this.requestUpdate(i,u,s)},init(l){return l!==void 0&&this.P(i,void 0,s),l}}}if(r==="setter"){let{name:i}=e;return function(l){let u=this[i];t.call(this,l),this.requestUpdate(i,u,s)}}throw Error("Unsupported decorator location: "+r)}});function K(s){return n({...s,state:!0,attribute:!1})}var Yn=x(()=>{mc();});var Jn=x(()=>{});var ne,$r=x(()=>{ne=(s,t,e)=>(e.configurable=!0,e.enumerable=!0,Reflect.decorate&&typeof t!="object"&&Object.defineProperty(s,t,e),e)});function S(s,t){return(e,r,o)=>{let a=i=>i.renderRoot?.querySelector(s)??null;if(t){let{get:i,set:l}=typeof r=="object"?e:o??(()=>{let u=Symbol();return{get(){return this[u]},set(p){this[u]=p}}})();return ne(e,r,{get(){let u=i.call(this);return u===void 0&&(u=a(this),(u!==null||this.hasUpdated)&&l.call(this,u)),u}})}return ne(e,r,{get(){return a(this)}})}}var Qn=x(()=>{$r();});var tl=x(()=>{$r();});var el=x(()=>{$r();});function ar(s){return(t,e)=>{let{slot:r,selector:o}=s??{},a="slot"+(r?`[name=${r}]`:":not([name])");return ne(t,e,{get(){let i=this.renderRoot?.querySelector(a),l=i?.assignedElements(s)??[];return o===void 0?l:l.filter(u=>u.matches(o))}})}}var rl=x(()=>{$r();});function ms(s){return(t,e)=>{let{slot:r}=s??{},o="slot"+(r?`[name=${r}]`:":not([name])");return ne(t,e,{get(){return this.renderRoot?.querySelector(o)?.assignedNodes(s)??[]}})}}var ol=x(()=>{$r();});var pc=x(()=>{Xn();mc();Yn();Jn();Qn();tl();el();rl();ol()});function D(s,{validSizes:t=["s","m","l","xl"],noDefaultSize:e,defaultSize:r="m"}={}){class o extends s{constructor(){super(...arguments),this._size=r}get size(){return this._size||r}set size(i){let l=e?null:r,u=i&&i.toLocaleLowerCase(),p=t.includes(u)?u:l;if(p&&this.setAttribute("size",p),this._size===p)return;let h=this._size;this._size=p,this.requestUpdate("size",h)}update(i){!this.hasAttribute("size")&&!e&&this.setAttribute("size",this.size),super.update(i)}}return wh([n({type:String})],o.prototype,"size",1),o}var kh,xh,wh,sl=x(()=>{"use strict";pc();kh=Object.defineProperty,xh=Object.getOwnPropertyDescriptor,wh=(s,t,e,r)=>{for(var o=r>1?void 0:r?xh(t,e):t,a=s.length-1,i;a>=0;a--)(i=s[a])&&(o=(r?i(t,e,o):i(o))||o);return r&&o&&kh(t,e,o),o}});var d=x(()=>{"use strict";Gn();sl();Pr()});var $=x(()=>{"use strict";pc()});var zh,al,il=x(()=>{"use strict";d();zh=v`
+var Xd=Object.create;var tc=Object.defineProperty;var Yd=Object.getOwnPropertyDescriptor;var Jd=Object.getOwnPropertyNames;var Qd=Object.getPrototypeOf,th=Object.prototype.hasOwnProperty;var x=(s,t)=>()=>(s&&(t=s(s=0)),t);var eh=(s,t)=>()=>(t||s((t={exports:{}}).exports,t),t.exports),$n=(s,t)=>{for(var e in t)tc(s,e,{get:t[e],enumerable:!0})},rh=(s,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Jd(t))!th.call(s,o)&&o!==e&&tc(s,o,{get:()=>t[o],enumerable:!(r=Yd(t,o))||r.enumerable});return s};var An=(s,t,e)=>(e=s!=null?Xd(Qd(s)):{},rh(t||!s||!s.__esModule?tc(e,"default",{value:s,enumerable:!0}):e,s));var es,Ir,ec,Ln,bo,Mn,v,rc,rs,oc=x(()=>{es=globalThis,Ir=es.ShadowRoot&&(es.ShadyCSS===void 0||es.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,ec=Symbol(),Ln=new WeakMap,bo=class{constructor(t,e,r){if(this._$cssResult$=!0,r!==ec)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o,e=this.t;if(Ir&&t===void 0){let r=e!==void 0&&e.length===1;r&&(t=Ln.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),r&&Ln.set(e,t))}return t}toString(){return this.cssText}},Mn=s=>new bo(typeof s=="string"?s:s+"",void 0,ec),v=(s,...t)=>{let e=s.length===1?s[0]:t.reduce((r,o,a)=>r+(i=>{if(i._$cssResult$===!0)return i.cssText;if(typeof i=="number")return i;throw Error("Value passed to 'css' function must be a 'css' function result: "+i+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(o)+s[a+1],s[0]);return new bo(e,s,ec)},rc=(s,t)=>{if(Ir)s.adoptedStyleSheets=t.map(e=>e instanceof CSSStyleSheet?e:e.styleSheet);else for(let e of t){let r=document.createElement("style"),o=es.litNonce;o!==void 0&&r.setAttribute("nonce",o),r.textContent=e.cssText,s.appendChild(r)}},rs=Ir?s=>s:s=>s instanceof CSSStyleSheet?(t=>{let e="";for(let r of t.cssRules)e+=r.cssText;return Mn(e)})(s):s});var oh,sh,ah,ih,ch,nh,Te,Dn,lh,uh,go,vo,os,On,ie,fo=x(()=>{oc();oc();({is:oh,defineProperty:sh,getOwnPropertyDescriptor:ah,getOwnPropertyNames:ih,getOwnPropertySymbols:ch,getPrototypeOf:nh}=Object),Te=globalThis,Dn=Te.trustedTypes,lh=Dn?Dn.emptyScript:"",uh=Te.reactiveElementPolyfillSupport,go=(s,t)=>s,vo={toAttribute(s,t){switch(t){case Boolean:s=s?lh:null;break;case Object:case Array:s=s==null?s:JSON.stringify(s)}return s},fromAttribute(s,t){let e=s;switch(t){case Boolean:e=s!==null;break;case Number:e=s===null?null:Number(s);break;case Object:case Array:try{e=JSON.parse(s)}catch{e=null}}return e}},os=(s,t)=>!oh(s,t),On={attribute:!0,type:String,converter:vo,reflect:!1,hasChanged:os};Symbol.metadata??(Symbol.metadata=Symbol("metadata")),Te.litPropertyMetadata??(Te.litPropertyMetadata=new WeakMap);ie=class extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??(this.l=[])).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=On){if(e.state&&(e.attribute=!1),this._$Ei(),this.elementProperties.set(t,e),!e.noAccessor){let r=Symbol(),o=this.getPropertyDescriptor(t,r,e);o!==void 0&&sh(this.prototype,t,o)}}static getPropertyDescriptor(t,e,r){let{get:o,set:a}=ah(this.prototype,t)??{get(){return this[e]},set(i){this[e]=i}};return{get(){return o?.call(this)},set(i){let l=o?.call(this);a.call(this,i),this.requestUpdate(t,l,r)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??On}static _$Ei(){if(this.hasOwnProperty(go("elementProperties")))return;let t=nh(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(go("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(go("properties"))){let e=this.properties,r=[...ih(e),...ch(e)];for(let o of r)this.createProperty(o,e[o])}let t=this[Symbol.metadata];if(t!==null){let e=litPropertyMetadata.get(t);if(e!==void 0)for(let[r,o]of e)this.elementProperties.set(r,o)}this._$Eh=new Map;for(let[e,r]of this.elementProperties){let o=this._$Eu(e,r);o!==void 0&&this._$Eh.set(o,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){let e=[];if(Array.isArray(t)){let r=new Set(t.flat(1/0).reverse());for(let o of r)e.unshift(rs(o))}else t!==void 0&&e.push(rs(t));return e}static _$Eu(t,e){let r=e.attribute;return r===!1?void 0:typeof r=="string"?r:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(t=>this.enableUpdating=t),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(t=>t(this))}addController(t){(this._$EO??(this._$EO=new Set)).add(t),this.renderRoot!==void 0&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){let t=new Map,e=this.constructor.elementProperties;for(let r of e.keys())this.hasOwnProperty(r)&&(t.set(r,this[r]),delete this[r]);t.size>0&&(this._$Ep=t)}createRenderRoot(){let t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return rc(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),this._$EO?.forEach(t=>t.hostConnected?.())}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach(t=>t.hostDisconnected?.())}attributeChangedCallback(t,e,r){this._$AK(t,r)}_$EC(t,e){let r=this.constructor.elementProperties.get(t),o=this.constructor._$Eu(t,r);if(o!==void 0&&r.reflect===!0){let a=(r.converter?.toAttribute!==void 0?r.converter:vo).toAttribute(e,r.type);this._$Em=t,a==null?this.removeAttribute(o):this.setAttribute(o,a),this._$Em=null}}_$AK(t,e){let r=this.constructor,o=r._$Eh.get(t);if(o!==void 0&&this._$Em!==o){let a=r.getPropertyOptions(o),i=typeof a.converter=="function"?{fromAttribute:a.converter}:a.converter?.fromAttribute!==void 0?a.converter:vo;this._$Em=o,this[o]=i.fromAttribute(e,a.type),this._$Em=null}}requestUpdate(t,e,r){if(t!==void 0){if(r??(r=this.constructor.getPropertyOptions(t)),!(r.hasChanged??os)(this[t],e))return;this.P(t,e,r)}this.isUpdatePending===!1&&(this._$ES=this._$ET())}P(t,e,r){this._$AL.has(t)||this._$AL.set(t,e),r.reflect===!0&&this._$Em!==t&&(this._$Ej??(this._$Ej=new Set)).add(t)}async _$ET(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}let t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??(this.renderRoot=this.createRenderRoot()),this._$Ep){for(let[o,a]of this._$Ep)this[o]=a;this._$Ep=void 0}let r=this.constructor.elementProperties;if(r.size>0)for(let[o,a]of r)a.wrapped!==!0||this._$AL.has(o)||this[o]===void 0||this.P(o,this[o],a)}let t=!1,e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),this._$EO?.forEach(r=>r.hostUpdate?.()),this.update(e)):this._$EU()}catch(r){throw t=!1,this._$EU(),r}t&&this._$AE(e)}willUpdate(t){}_$AE(t){this._$EO?.forEach(e=>e.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Ej&&(this._$Ej=this._$Ej.forEach(e=>this._$EC(e,this[e]))),this._$EU()}updated(t){}firstUpdated(t){}};ie.elementStyles=[],ie.shadowRootOptions={mode:"open"},ie[go("elementProperties")]=new Map,ie[go("finalized")]=new Map,uh?.({ReactiveElement:ie}),(Te.reactiveElementVersions??(Te.reactiveElementVersions=[])).push("2.0.4")});function Vn(s,t){if(!cc(s)||!s.hasOwnProperty("raw"))throw Error("invalid template strings array");return jn!==void 0?jn.createHTML(t):t}function or(s,t,e=s,r){if(t===F)return t;let o=r!==void 0?e._$Co?.[r]:e._$Cl,a=wo(t)?void 0:t._$litDirective$;return o?.constructor!==a&&(o?._$AO?.(!1),a===void 0?o=void 0:(o=new a(s),o._$AT(s,e,r)),r!==void 0?(e._$Co??(e._$Co=[]))[r]=o:e._$Cl=o),o!==void 0&&(t=or(s,o._$AS(s,t.values),o,r)),t}var ko,ss,jn,ac,ce,ic,mh,rr,xo,wo,cc,Un,sc,yo,Bn,Hn,tr,qn,Fn,Nn,nc,c,Nf,Vf,F,_,Rn,er,Zn,zo,as,Tr,sr,is,cs,ns,ls,Kn,ph,Sr,ft=x(()=>{ko=globalThis,ss=ko.trustedTypes,jn=ss?ss.createPolicy("lit-html",{createHTML:s=>s}):void 0,ac="$lit$",ce=`lit$${Math.random().toFixed(9).slice(2)}$`,ic="?"+ce,mh=`<${ic}>`,rr=document,xo=()=>rr.createComment(""),wo=s=>s===null||typeof s!="object"&&typeof s!="function",cc=Array.isArray,Un=s=>cc(s)||typeof s?.[Symbol.iterator]=="function",sc=`[
+\f\r]`,yo=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,Bn=/-->/g,Hn=/>/g,tr=RegExp(`>|${sc}(?:([^\\s"'>=/]+)(${sc}*=${sc}*(?:[^
+\f\r"'\`<>=]|("|')|))|$)`,"g"),qn=/'/g,Fn=/"/g,Nn=/^(?:script|style|textarea|title)$/i,nc=s=>(t,...e)=>({_$litType$:s,strings:t,values:e}),c=nc(1),Nf=nc(2),Vf=nc(3),F=Symbol.for("lit-noChange"),_=Symbol.for("lit-nothing"),Rn=new WeakMap,er=rr.createTreeWalker(rr,129);Zn=(s,t)=>{let e=s.length-1,r=[],o,a=t===2?"":t===3?"":"")),r]},zo=class s{constructor({strings:t,_$litType$:e},r){let o;this.parts=[];let a=0,i=0,l=t.length-1,u=this.parts,[p,h]=Zn(t,e);if(this.el=s.createElement(p,r),er.currentNode=this.el.content,e===2||e===3){let g=this.el.content.firstChild;g.replaceWith(...g.childNodes)}for(;(o=er.nextNode())!==null&&u.length0){o.textContent=ss?ss.emptyScript:"";for(let C=0;C2||r[0]!==""||r[1]!==""?(this._$AH=Array(r.length-1).fill(new String),this.strings=r):this._$AH=_}_$AI(t,e=this,r,o){let a=this.strings,i=!1;if(a===void 0)t=or(this,t,e,0),i=!wo(t)||t!==this._$AH&&t!==F,i&&(this._$AH=t);else{let l=t,u,p;for(t=a[0],u=0;u{let r=e?.renderBefore??t,o=r._$litPart$;if(o===void 0){let a=e?.renderBefore??null;r._$litPart$=o=new Tr(t.insertBefore(xo(),a),a,void 0,e??{})}return o._$AI(s),o}});var Nt,dh,Wn=x(()=>{fo();fo();ft();ft();Nt=class extends ie{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var e;let t=super.createRenderRoot();return(e=this.renderOptions).renderBefore??(e.renderBefore=t.firstChild),t}update(t){let e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=Sr(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return F}};Nt._$litElement$=!0,Nt.finalized=!0,globalThis.litElementHydrateSupport?.({LitElement:Nt});dh=globalThis.litElementPolyfillSupport;dh?.({LitElement:Nt});(globalThis.litElementVersions??(globalThis.litElementVersions=[])).push("4.1.1")});var Co=x(()=>{});var Pr=x(()=>{fo();ft();Wn();Co()});var us,lc=x(()=>{us="0.47.2"});function vh(s){class t extends s{get isLTR(){return this.dir==="ltr"}hasVisibleFocusInTree(){let r=((o=document)=>{var a;let i=o.activeElement;for(;i!=null&&i.shadowRoot&&i.shadowRoot.activeElement;)i=i.shadowRoot.activeElement;let l=i?[i]:[];for(;i;){let u=i.assignedSlot||i.parentElement||((a=i.getRootNode())==null?void 0:a.host);u&&l.push(u),i=u}return l})(this.getRootNode())[0];if(!r)return!1;try{return r.matches(":focus-visible")||r.matches(".focus-visible")}catch{return r.matches(".focus-visible")}}connectedCallback(){if(!this.hasAttribute("dir")){let r=this.assignedSlot||this.parentNode;for(;r!==document.documentElement&&!gh(r);)r=r.assignedSlot||r.parentNode||r.host;if(this.dir=r.dir==="rtl"?r.dir:this.dir||"ltr",r===document.documentElement)uc.add(this);else{let{localName:o}=r;o.search("-")>-1&&!customElements.get(o)?customElements.whenDefined(o).then(()=>{r.startManagingContentDirection(this)}):r.startManagingContentDirection(this)}this._dirParent=r}super.connectedCallback()}disconnectedCallback(){super.disconnectedCallback(),this._dirParent&&(this._dirParent===document.documentElement?uc.delete(this):this._dirParent.stopManagingContentDirection(this),this.removeAttribute("dir"))}}return t}var uc,hh,bh,gh,I,Gn=x(()=>{"use strict";Pr();lc();uc=new Set,hh=()=>{let s=document.documentElement.dir==="rtl"?document.documentElement.dir:"ltr";uc.forEach(t=>{t.setAttribute("dir",s)})},bh=new MutationObserver(hh);bh.observe(document.documentElement,{attributes:!0,attributeFilter:["dir"]});gh=s=>typeof s.startManagingContentDirection<"u"||s.tagName==="SP-THEME";I=class extends vh(Nt){};I.VERSION=us});var Xn=x(()=>{});function n(s){return(t,e)=>typeof e=="object"?yh(s,t,e):((r,o,a)=>{let i=o.hasOwnProperty(a);return o.constructor.createProperty(a,i?{...r,wrapped:!0}:r),i?Object.getOwnPropertyDescriptor(o,a):void 0})(s,t,e)}var fh,yh,mc=x(()=>{fo();fh={attribute:!0,type:String,converter:vo,reflect:!1,hasChanged:os},yh=(s=fh,t,e)=>{let{kind:r,metadata:o}=e,a=globalThis.litPropertyMetadata.get(o);if(a===void 0&&globalThis.litPropertyMetadata.set(o,a=new Map),a.set(e.name,s),r==="accessor"){let{name:i}=e;return{set(l){let u=t.get.call(this);t.set.call(this,l),this.requestUpdate(i,u,s)},init(l){return l!==void 0&&this.P(i,void 0,s),l}}}if(r==="setter"){let{name:i}=e;return function(l){let u=this[i];t.call(this,l),this.requestUpdate(i,u,s)}}throw Error("Unsupported decorator location: "+r)}});function K(s){return n({...s,state:!0,attribute:!1})}var Yn=x(()=>{mc();});var Jn=x(()=>{});var ne,$r=x(()=>{ne=(s,t,e)=>(e.configurable=!0,e.enumerable=!0,Reflect.decorate&&typeof t!="object"&&Object.defineProperty(s,t,e),e)});function S(s,t){return(e,r,o)=>{let a=i=>i.renderRoot?.querySelector(s)??null;if(t){let{get:i,set:l}=typeof r=="object"?e:o??(()=>{let u=Symbol();return{get(){return this[u]},set(p){this[u]=p}}})();return ne(e,r,{get(){let u=i.call(this);return u===void 0&&(u=a(this),(u!==null||this.hasUpdated)&&l.call(this,u)),u}})}return ne(e,r,{get(){return a(this)}})}}var Qn=x(()=>{$r();});var tl=x(()=>{$r();});var el=x(()=>{$r();});function ar(s){return(t,e)=>{let{slot:r,selector:o}=s??{},a="slot"+(r?`[name=${r}]`:":not([name])");return ne(t,e,{get(){let i=this.renderRoot?.querySelector(a),l=i?.assignedElements(s)??[];return o===void 0?l:l.filter(u=>u.matches(o))}})}}var rl=x(()=>{$r();});function ms(s){return(t,e)=>{let{slot:r}=s??{},o="slot"+(r?`[name=${r}]`:":not([name])");return ne(t,e,{get(){return this.renderRoot?.querySelector(o)?.assignedNodes(s)??[]}})}}var ol=x(()=>{$r();});var pc=x(()=>{Xn();mc();Yn();Jn();Qn();tl();el();rl();ol()});function D(s,{validSizes:t=["s","m","l","xl"],noDefaultSize:e,defaultSize:r="m"}={}){class o extends s{constructor(){super(...arguments),this._size=r}get size(){return this._size||r}set size(i){let l=e?null:r,u=i&&i.toLocaleLowerCase(),p=t.includes(u)?u:l;if(p&&this.setAttribute("size",p),this._size===p)return;let h=this._size;this._size=p,this.requestUpdate("size",h)}update(i){!this.hasAttribute("size")&&!e&&this.setAttribute("size",this.size),super.update(i)}}return wh([n({type:String})],o.prototype,"size",1),o}var kh,xh,wh,sl=x(()=>{"use strict";pc();kh=Object.defineProperty,xh=Object.getOwnPropertyDescriptor,wh=(s,t,e,r)=>{for(var o=r>1?void 0:r?xh(t,e):t,a=s.length-1,i;a>=0;a--)(i=s[a])&&(o=(r?i(t,e,o):i(o))||o);return r&&o&&kh(t,e,o),o}});var d=x(()=>{"use strict";Gn();sl();Pr()});var $=x(()=>{"use strict";pc()});var zh,al,il=x(()=>{"use strict";d();zh=v`
:host{pointer-events:none;visibility:hidden;opacity:0;transition:transform var(--mod-overlay-animation-duration,var(--spectrum-animation-duration-100,.13s))ease-in-out,opacity var(--mod-overlay-animation-duration,var(--spectrum-animation-duration-100,.13s))ease-in-out,visibility 0s linear var(--mod-overlay-animation-duration,var(--spectrum-animation-duration-100,.13s))}:host([open]){pointer-events:auto;visibility:visible;opacity:1;transition-delay:var(--mod-overlay-animation-duration-opened,var(--spectrum-animation-duration-0,0s))}:host{--flow-direction:1;--spectrum-popover-animation-distance:var(--spectrum-spacing-100);--spectrum-popover-background-color:var(--spectrum-background-layer-2-color);--spectrum-popover-border-color:var(--spectrum-gray-400);--spectrum-popover-content-area-spacing-vertical:var(--spectrum-popover-top-to-content-area);--spectrum-popover-shadow-horizontal:var(--spectrum-drop-shadow-x);--spectrum-popover-shadow-vertical:var(--spectrum-drop-shadow-y);--spectrum-popover-shadow-blur:var(--spectrum-drop-shadow-blur);--spectrum-popover-shadow-color:var(--spectrum-drop-shadow-color);--spectrum-popover-corner-radius:var(--spectrum-corner-radius-100);--spectrum-popover-pointer-width:var(--spectrum-popover-tip-width);--spectrum-popover-pointer-height:var(--spectrum-popover-tip-height);--spectrum-popover-pointer-edge-offset:calc(var(--spectrum-corner-radius-100) + var(--spectrum-popover-tip-width)/2);--spectrum-popover-pointer-edge-spacing:calc(var(--spectrum-popover-pointer-edge-offset) - var(--spectrum-popover-tip-width)/2)}:host:dir(rtl),:host([dir=rtl]){--flow-direction:-1}@media (forced-colors:active){:host{--highcontrast-popover-border-color:CanvasText}}:host{--spectrum-popover-filter:drop-shadow(var(--mod-popover-shadow-horizontal,var(--spectrum-popover-shadow-horizontal))var(--mod-popover-shadow-vertical,var(--spectrum-popover-shadow-vertical))var(--mod-popover-shadow-blur,var(--spectrum-popover-shadow-blur))var(--mod-popover-shadow-color,var(--spectrum-popover-shadow-color)));box-sizing:border-box;padding:var(--mod-popover-content-area-spacing-vertical,var(--spectrum-popover-content-area-spacing-vertical))0;border-radius:var(--mod-popover-corner-radius,var(--spectrum-popover-corner-radius));border-style:solid;border-color:var(--highcontrast-popover-border-color,var(--mod-popover-border-color,var(--spectrum-popover-border-color)));border-width:var(--mod-popover-border-width,var(--spectrum-popover-border-width));background-color:var(--mod-popover-background-color,var(--spectrum-popover-background-color));filter:var(--mod-popover-filter,var(--spectrum-popover-filter));outline:none;flex-direction:column;display:inline-flex;position:absolute}:host([tip]) #tip .triangle{stroke-linecap:square;stroke-linejoin:miter;fill:var(--highcontrast-popover-background-color,var(--mod-popover-background-color,var(--spectrum-popover-background-color)));stroke:var(--highcontrast-popover-border-color,var(--mod-popover-border-color,var(--spectrum-popover-border-color)));stroke-width:var(--mod-popover-border-width,var(--spectrum-popover-border-width))}*{--mod-popover-filter:none}:host([tip]) .spectrum-Popover--top-end,:host([tip]) .spectrum-Popover--top-left,:host([tip]) .spectrum-Popover--top-right,:host([tip]) .spectrum-Popover--top-start,:host([placement*=top][tip]){margin-block-end:calc(var(--mod-popover-pointer-height,var(--spectrum-popover-pointer-height)) - var(--mod-popover-border-width,var(--spectrum-popover-border-width)))}:host([open]) .spectrum-Popover--top-end,:host([open]) .spectrum-Popover--top-left,:host([open]) .spectrum-Popover--top-right,:host([open]) .spectrum-Popover--top-start,:host([placement*=top][open]){transform:translateY(calc(var(--mod-popover-animation-distance,var(--spectrum-popover-animation-distance))*-1))}:host([tip]) .spectrum-Popover--bottom-end,:host([tip]) .spectrum-Popover--bottom-left,:host([tip]) .spectrum-Popover--bottom-right,:host([tip]) .spectrum-Popover--bottom-start,:host([placement*=bottom][tip]){margin-block-start:calc(var(--mod-popover-pointer-height,var(--spectrum-popover-pointer-height)) - var(--mod-popover-border-width,var(--spectrum-popover-border-width)))}:host([open]) .spectrum-Popover--bottom-end,:host([open]) .spectrum-Popover--bottom-left,:host([open]) .spectrum-Popover--bottom-right,:host([open]) .spectrum-Popover--bottom-start,:host([placement*=bottom][open]){transform:translateY(var(--mod-popover-animation-distance,var(--spectrum-popover-animation-distance)))}:host([tip]) .spectrum-Popover--right-bottom,:host([tip]) .spectrum-Popover--right-top,:host([placement*=right][tip]){margin-inline-start:calc(var(--mod-popover-pointer-width,var(--spectrum-popover-pointer-width)) - var(--mod-popover-border-width,var(--spectrum-popover-border-width)))}:host([open]) .spectrum-Popover--right-bottom,:host([open]) .spectrum-Popover--right-top,:host([placement*=right][open]){transform:translateX(var(--mod-popover-animation-distance,var(--spectrum-popover-animation-distance)))}:host([tip]) .spectrum-Popover--left-bottom,:host([tip]) .spectrum-Popover--left-top,:host([placement*=left][tip]){margin-inline-end:calc(var(--mod-popover-pointer-width,var(--spectrum-popover-pointer-width)) - var(--mod-popover-border-width,var(--spectrum-popover-border-width)))}:host([open]) .spectrum-Popover--left-bottom,:host([open]) .spectrum-Popover--left-top,:host([placement*=left][open]){transform:translateX(calc(var(--mod-popover-animation-distance,var(--spectrum-popover-animation-distance))*-1))}:host([tip]) .spectrum-Popover--start-bottom,:host([tip]) .spectrum-Popover--start-top,:host([tip]) .spectrum-Popover--start{margin-inline-end:calc(var(--mod-popover-pointer-width,var(--spectrum-popover-pointer-width)) - var(--mod-popover-border-width,var(--spectrum-popover-border-width)))}:host([open]) .spectrum-Popover--start-bottom,:host([open]) .spectrum-Popover--start-top,:host([open]) .spectrum-Popover--start{transform:translateX(calc(var(--mod-popover-animation-distance,var(--spectrum-popover-animation-distance))*-1))}:host([open]) .spectrum-Popover--start-bottom:dir(rtl),:host([open]) .spectrum-Popover--start-top:dir(rtl),:host([open]) .spectrum-Popover--start:dir(rtl),:host([dir=rtl][open]) .spectrum-Popover--start-bottom,:host([dir=rtl][open]) .spectrum-Popover--start-top,:host([dir=rtl][open]) .spectrum-Popover--start{transform:translateX(var(--mod-popover-animation-distance,var(--spectrum-popover-animation-distance)))}:host([tip]) .spectrum-Popover--end-bottom,:host([tip]) .spectrum-Popover--end-top,:host([tip]) .spectrum-Popover--end{margin-inline-start:calc(var(--mod-popover-pointer-width,var(--spectrum-popover-pointer-width)) - var(--mod-popover-border-width,var(--spectrum-popover-border-width)))}:host([open]) .spectrum-Popover--end-bottom,:host([open]) .spectrum-Popover--end-top,:host([open]) .spectrum-Popover--end{transform:translateX(var(--mod-popover-animation-distance,var(--spectrum-popover-animation-distance)))}:host([open]) .spectrum-Popover--end-bottom:dir(rtl),:host([open]) .spectrum-Popover--end-top:dir(rtl),:host([open]) .spectrum-Popover--end:dir(rtl),:host([dir=rtl][open]) .spectrum-Popover--end-bottom,:host([dir=rtl][open]) .spectrum-Popover--end-top,:host([dir=rtl][open]) .spectrum-Popover--end{transform:translateX(calc(var(--mod-popover-animation-distance,var(--spectrum-popover-animation-distance))*-1))}:host([tip]) #tip,:host([tip][placement*=bottom]) #tip,:host([tip]) .spectrum-Popover--bottom-end #tip,:host([tip]) .spectrum-Popover--bottom-left #tip,:host([tip]) .spectrum-Popover--bottom-right #tip,:host([tip]) .spectrum-Popover--bottom-start #tip,:host([tip][placement*=top]) #tip,:host([tip]) .spectrum-Popover--top-end #tip,:host([tip]) .spectrum-Popover--top-left #tip,:host([tip]) .spectrum-Popover--top-right #tip,:host([tip]) .spectrum-Popover--top-start #tip{inline-size:var(--mod-popover-pointer-width,var(--spectrum-popover-pointer-width));block-size:var(--mod-popover-pointer-height,var(--spectrum-popover-pointer-height));margin:auto;position:absolute;inset-block-start:100%;inset-inline:0;transform:translate(0)}:host([tip]) .spectrum-Popover--top-left #tip{inset-inline:var(--mod-popover-pointer-edge-spacing,var(--spectrum-popover-pointer-edge-spacing))auto}:host([tip]) .spectrum-Popover--top-right #tip{inset-inline:auto var(--mod-popover-pointer-edge-spacing,var(--spectrum-popover-pointer-edge-spacing))}:host([tip]) .spectrum-Popover--top-start #tip{margin-inline-start:var(--mod-popover-pointer-edge-spacing,var(--spectrum-popover-pointer-edge-spacing))}:host([tip]) .spectrum-Popover--top-end #tip{margin-inline-end:var(--mod-popover-pointer-edge-spacing,var(--spectrum-popover-pointer-edge-spacing))}:host([tip][placement*=bottom]) #tip,:host([tip]) .spectrum-Popover--bottom-end #tip,:host([tip]) .spectrum-Popover--bottom-left #tip,:host([tip]) .spectrum-Popover--bottom-right #tip,:host([tip]) .spectrum-Popover--bottom-start #tip{inset-block:auto 100%;transform:scaleY(-1)}:host([tip]) .spectrum-Popover--bottom-left #tip{inset-inline:var(--mod-popover-pointer-edge-spacing,var(--spectrum-popover-pointer-edge-spacing))auto}:host([tip]) .spectrum-Popover--bottom-right #tip{inset-inline:auto var(--mod-popover-pointer-edge-spacing,var(--spectrum-popover-pointer-edge-spacing))}:host([tip]) .spectrum-Popover--bottom-start #tip{margin-inline-start:var(--mod-popover-pointer-edge-spacing,var(--spectrum-popover-pointer-edge-spacing))}:host([tip]) .spectrum-Popover--bottom-end #tip{margin-inline-end:var(--mod-popover-pointer-edge-spacing,var(--spectrum-popover-pointer-edge-spacing))}:host([tip]) .spectrum-Popover--end #tip,:host([tip]) .spectrum-Popover--end-bottom #tip,:host([tip]) .spectrum-Popover--end-top #tip,:host([tip][placement*=left]) #tip,:host([tip]) .spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--left-top #tip,:host([tip][placement*=right]) #tip,:host([tip]) .spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--right-top #tip,:host([tip]) .spectrum-Popover--start #tip,:host([tip]) .spectrum-Popover--start-bottom #tip,:host([tip]) .spectrum-Popover--start-top #tip{inline-size:var(--mod-popover-pointer-height,var(--spectrum-popover-pointer-height));block-size:var(--mod-popover-pointer-width,var(--spectrum-popover-pointer-width));inset-block:0}:host([tip][placement*=left]) .spectrum-Popover--end-bottom #tip,:host([tip]) .spectrum-Popover--end-bottom.spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--end-bottom.spectrum-Popover--left-top #tip,:host([tip][placement*=left]) .spectrum-Popover--end-top #tip,:host([tip]) .spectrum-Popover--end-top.spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--end-top.spectrum-Popover--left-top #tip,:host([tip][placement*=left]) .spectrum-Popover--end #tip,:host([tip]) .spectrum-Popover--end.spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--end.spectrum-Popover--left-top #tip,:host([tip][placement*=left]) .spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--left-bottom.spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--left-bottom.spectrum-Popover--left-top #tip,:host([tip][placement*=left]) .spectrum-Popover--left-top #tip,:host([tip]) .spectrum-Popover--left-top.spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--left-top.spectrum-Popover--left-top #tip,:host([tip][placement*=left][placement*=left]) #tip,:host([tip][placement*=left]) .spectrum-Popover--left-bottom #tip,:host([tip][placement*=left]) .spectrum-Popover--left-top #tip,:host([tip][placement*=left]) .spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--right-bottom.spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--right-bottom.spectrum-Popover--left-top #tip,:host([tip][placement*=left]) .spectrum-Popover--right-top #tip,:host([tip]) .spectrum-Popover--right-top.spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--right-top.spectrum-Popover--left-top #tip,:host([tip][placement*=right][placement*=left]) #tip,:host([tip][placement*=right]) .spectrum-Popover--left-bottom #tip,:host([tip][placement*=right]) .spectrum-Popover--left-top #tip,:host([tip][placement*=left]) .spectrum-Popover--start-bottom #tip,:host([tip]) .spectrum-Popover--start-bottom.spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--start-bottom.spectrum-Popover--left-top #tip,:host([tip][placement*=left]) .spectrum-Popover--start-top #tip,:host([tip]) .spectrum-Popover--start-top.spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--start-top.spectrum-Popover--left-top #tip,:host([tip][placement*=left]) .spectrum-Popover--start #tip,:host([tip]) .spectrum-Popover--start.spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--start.spectrum-Popover--left-top #tip{inset-inline:100% auto}:host([tip][placement*=right]) .spectrum-Popover--end-bottom #tip,:host([tip]) .spectrum-Popover--end-bottom.spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--end-bottom.spectrum-Popover--right-top #tip,:host([tip][placement*=right]) .spectrum-Popover--end-top #tip,:host([tip]) .spectrum-Popover--end-top.spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--end-top.spectrum-Popover--right-top #tip,:host([tip][placement*=right]) .spectrum-Popover--end #tip,:host([tip]) .spectrum-Popover--end.spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--end.spectrum-Popover--right-top #tip,:host([tip][placement*=right]) .spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--left-bottom.spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--left-bottom.spectrum-Popover--right-top #tip,:host([tip][placement*=right]) .spectrum-Popover--left-top #tip,:host([tip]) .spectrum-Popover--left-top.spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--left-top.spectrum-Popover--right-top #tip,:host([tip][placement*=left][placement*=right]) #tip,:host([tip][placement*=left]) .spectrum-Popover--right-bottom #tip,:host([tip][placement*=left]) .spectrum-Popover--right-top #tip,:host([tip][placement*=right]) .spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--right-bottom.spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--right-bottom.spectrum-Popover--right-top #tip,:host([tip][placement*=right]) .spectrum-Popover--right-top #tip,:host([tip]) .spectrum-Popover--right-top.spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--right-top.spectrum-Popover--right-top #tip,:host([tip][placement*=right][placement*=right]) #tip,:host([tip][placement*=right]) .spectrum-Popover--right-bottom #tip,:host([tip][placement*=right]) .spectrum-Popover--right-top #tip,:host([tip][placement*=right]) .spectrum-Popover--start-bottom #tip,:host([tip]) .spectrum-Popover--start-bottom.spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--start-bottom.spectrum-Popover--right-top #tip,:host([tip][placement*=right]) .spectrum-Popover--start-top #tip,:host([tip]) .spectrum-Popover--start-top.spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--start-top.spectrum-Popover--right-top #tip,:host([tip][placement*=right]) .spectrum-Popover--start #tip,:host([tip]) .spectrum-Popover--start.spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--start.spectrum-Popover--right-top #tip{inset-inline:auto 100%;transform:scaleX(-1)}:host([tip]) .spectrum-Popover--end-bottom.spectrum-Popover--end-top #tip,:host([tip]) .spectrum-Popover--end-bottom.spectrum-Popover--left-top #tip,:host([tip]) .spectrum-Popover--end-bottom.spectrum-Popover--right-top #tip,:host([tip]) .spectrum-Popover--end-bottom.spectrum-Popover--start-top #tip,:host([tip]) .spectrum-Popover--end-top.spectrum-Popover--end-top #tip,:host([tip]) .spectrum-Popover--end-top.spectrum-Popover--left-top #tip,:host([tip]) .spectrum-Popover--end-top.spectrum-Popover--right-top #tip,:host([tip]) .spectrum-Popover--end-top.spectrum-Popover--start-top #tip,:host([tip]) .spectrum-Popover--end.spectrum-Popover--end-top #tip,:host([tip]) .spectrum-Popover--end.spectrum-Popover--left-top #tip,:host([tip]) .spectrum-Popover--end.spectrum-Popover--right-top #tip,:host([tip]) .spectrum-Popover--end.spectrum-Popover--start-top #tip,:host([tip]) .spectrum-Popover--left-bottom.spectrum-Popover--end-top #tip,:host([tip]) .spectrum-Popover--left-bottom.spectrum-Popover--left-top #tip,:host([tip]) .spectrum-Popover--left-bottom.spectrum-Popover--right-top #tip,:host([tip]) .spectrum-Popover--left-bottom.spectrum-Popover--start-top #tip,:host([tip]) .spectrum-Popover--left-top.spectrum-Popover--end-top #tip,:host([tip]) .spectrum-Popover--left-top.spectrum-Popover--left-top #tip,:host([tip]) .spectrum-Popover--left-top.spectrum-Popover--right-top #tip,:host([tip]) .spectrum-Popover--left-top.spectrum-Popover--start-top #tip,:host([tip][placement*=left]) .spectrum-Popover--end-top #tip,:host([tip][placement*=left]) .spectrum-Popover--left-top #tip,:host([tip][placement*=left]) .spectrum-Popover--right-top #tip,:host([tip][placement*=left]) .spectrum-Popover--start-top #tip,:host([tip]) .spectrum-Popover--right-bottom.spectrum-Popover--end-top #tip,:host([tip]) .spectrum-Popover--right-bottom.spectrum-Popover--left-top #tip,:host([tip]) .spectrum-Popover--right-bottom.spectrum-Popover--right-top #tip,:host([tip]) .spectrum-Popover--right-bottom.spectrum-Popover--start-top #tip,:host([tip]) .spectrum-Popover--right-top.spectrum-Popover--end-top #tip,:host([tip]) .spectrum-Popover--right-top.spectrum-Popover--left-top #tip,:host([tip]) .spectrum-Popover--right-top.spectrum-Popover--right-top #tip,:host([tip]) .spectrum-Popover--right-top.spectrum-Popover--start-top #tip,:host([tip][placement*=right]) .spectrum-Popover--end-top #tip,:host([tip][placement*=right]) .spectrum-Popover--left-top #tip,:host([tip][placement*=right]) .spectrum-Popover--right-top #tip,:host([tip][placement*=right]) .spectrum-Popover--start-top #tip,:host([tip]) .spectrum-Popover--start-bottom.spectrum-Popover--end-top #tip,:host([tip]) .spectrum-Popover--start-bottom.spectrum-Popover--left-top #tip,:host([tip]) .spectrum-Popover--start-bottom.spectrum-Popover--right-top #tip,:host([tip]) .spectrum-Popover--start-bottom.spectrum-Popover--start-top #tip,:host([tip]) .spectrum-Popover--start-top.spectrum-Popover--end-top #tip,:host([tip]) .spectrum-Popover--start-top.spectrum-Popover--left-top #tip,:host([tip]) .spectrum-Popover--start-top.spectrum-Popover--right-top #tip,:host([tip]) .spectrum-Popover--start-top.spectrum-Popover--start-top #tip,:host([tip]) .spectrum-Popover--start.spectrum-Popover--end-top #tip,:host([tip]) .spectrum-Popover--start.spectrum-Popover--left-top #tip,:host([tip]) .spectrum-Popover--start.spectrum-Popover--right-top #tip,:host([tip]) .spectrum-Popover--start.spectrum-Popover--start-top #tip{inset-block:var(--mod-popover-pointer-edge-spacing,var(--spectrum-popover-pointer-edge-spacing))auto}:host([tip]) .spectrum-Popover--end-bottom.spectrum-Popover--end-bottom #tip,:host([tip]) .spectrum-Popover--end-bottom.spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--end-bottom.spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--end-bottom.spectrum-Popover--start-bottom #tip,:host([tip]) .spectrum-Popover--end-top.spectrum-Popover--end-bottom #tip,:host([tip]) .spectrum-Popover--end-top.spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--end-top.spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--end-top.spectrum-Popover--start-bottom #tip,:host([tip]) .spectrum-Popover--end.spectrum-Popover--end-bottom #tip,:host([tip]) .spectrum-Popover--end.spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--end.spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--end.spectrum-Popover--start-bottom #tip,:host([tip]) .spectrum-Popover--left-bottom.spectrum-Popover--end-bottom #tip,:host([tip]) .spectrum-Popover--left-bottom.spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--left-bottom.spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--left-bottom.spectrum-Popover--start-bottom #tip,:host([tip]) .spectrum-Popover--left-top.spectrum-Popover--end-bottom #tip,:host([tip]) .spectrum-Popover--left-top.spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--left-top.spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--left-top.spectrum-Popover--start-bottom #tip,:host([tip][placement*=left]) .spectrum-Popover--end-bottom #tip,:host([tip][placement*=left]) .spectrum-Popover--left-bottom #tip,:host([tip][placement*=left]) .spectrum-Popover--right-bottom #tip,:host([tip][placement*=left]) .spectrum-Popover--start-bottom #tip,:host([tip]) .spectrum-Popover--right-bottom.spectrum-Popover--end-bottom #tip,:host([tip]) .spectrum-Popover--right-bottom.spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--right-bottom.spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--right-bottom.spectrum-Popover--start-bottom #tip,:host([tip]) .spectrum-Popover--right-top.spectrum-Popover--end-bottom #tip,:host([tip]) .spectrum-Popover--right-top.spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--right-top.spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--right-top.spectrum-Popover--start-bottom #tip,:host([tip][placement*=right]) .spectrum-Popover--end-bottom #tip,:host([tip][placement*=right]) .spectrum-Popover--left-bottom #tip,:host([tip][placement*=right]) .spectrum-Popover--right-bottom #tip,:host([tip][placement*=right]) .spectrum-Popover--start-bottom #tip,:host([tip]) .spectrum-Popover--start-bottom.spectrum-Popover--end-bottom #tip,:host([tip]) .spectrum-Popover--start-bottom.spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--start-bottom.spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--start-bottom.spectrum-Popover--start-bottom #tip,:host([tip]) .spectrum-Popover--start-top.spectrum-Popover--end-bottom #tip,:host([tip]) .spectrum-Popover--start-top.spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--start-top.spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--start-top.spectrum-Popover--start-bottom #tip,:host([tip]) .spectrum-Popover--start.spectrum-Popover--end-bottom #tip,:host([tip]) .spectrum-Popover--start.spectrum-Popover--left-bottom #tip,:host([tip]) .spectrum-Popover--start.spectrum-Popover--right-bottom #tip,:host([tip]) .spectrum-Popover--start.spectrum-Popover--start-bottom #tip{inset-block:auto var(--mod-popover-pointer-edge-spacing,var(--spectrum-popover-pointer-edge-spacing))}:host([tip]) .spectrum-Popover--start #tip,:host([tip]) .spectrum-Popover--start-bottom #tip,:host([tip]) .spectrum-Popover--start-top #tip{margin-inline-start:100%}:host([tip]) .spectrum-Popover--start #tip:dir(rtl),:host([tip]) .spectrum-Popover--start-bottom #tip:dir(rtl),:host([tip]) .spectrum-Popover--start-top #tip:dir(rtl),:host([dir=rtl][tip]) .spectrum-Popover--start #tip,:host([dir=rtl][tip]) .spectrum-Popover--start-bottom #tip,:host([dir=rtl][tip]) .spectrum-Popover--start-top #tip{transform:none}:host([tip]) .spectrum-Popover--end #tip,:host([tip]) .spectrum-Popover--end-bottom #tip,:host([tip]) .spectrum-Popover--end-top #tip{margin-inline-end:100%;transform:scaleX(-1)}:host([tip]) .spectrum-Popover--end #tip:dir(rtl),:host([tip]) .spectrum-Popover--end-bottom #tip:dir(rtl),:host([tip]) .spectrum-Popover--end-top #tip:dir(rtl),:host([dir=rtl][tip]) .spectrum-Popover--end #tip,:host([dir=rtl][tip]) .spectrum-Popover--end-bottom #tip,:host([dir=rtl][tip]) .spectrum-Popover--end-top #tip{transform:scaleX(1)}:host{--spectrum-popover-border-width:var(--system-spectrum-popover-border-width)}:host{min-width:min-content;max-height:100%;max-width:100%;clip-path:none}::slotted(*){overscroll-behavior:contain}:host([placement*=left]) #tip[style],:host([placement*=right]) #tip[style]{inset-block-end:auto}:host([placement*=top]) #tip[style],:host([placement*=bottom]) #tip[style]{inset-inline-end:auto}.block,.inline{width:100%;height:100%;display:block}:host([placement*=left]) .block,:host([placement*=right]) .block,:host([placement*=top]) .inline,:host([placement*=bottom]) .inline{display:none}::slotted(.visually-hidden){clip:rect(0,0,0,0);clip-path:inset(50%);height:1px;width:1px;white-space:nowrap;border:0;margin:0 -1px -1px 0;padding:0;position:absolute;overflow:hidden}::slotted(sp-menu){margin:0}:host([dialog]){min-width:var(--mod-popover-dialog-min-width,var(--spectrum-popover-dialog-min-width,270px));padding:var(--mod-popover-dialog-padding,var(--spectrum-popover-dialog-padding,30px 29px))}:host([tip][placement]) #tip{height:auto}
-`,al=zh});var Ch,Eh,Co,le,cl=x(()=>{"use strict";d();$();il();Ch=Object.defineProperty,Eh=Object.getOwnPropertyDescriptor,Co=(s,t,e,r)=>{for(var o=r>1?void 0:r?Eh(t,e):t,a=s.length-1,i;a>=0;a--)(i=s[a])&&(o=(r?i(t,e,o):i(o))||o);return r&&o&&Ch(t,e,o),o},le=class extends I{constructor(){super(...arguments),this.dialog=!1,this.open=!1,this.tip=!1}static get styles(){return[al]}renderTip(){return c`
+`,al=zh});var Ch,Eh,Eo,le,cl=x(()=>{"use strict";d();$();il();Ch=Object.defineProperty,Eh=Object.getOwnPropertyDescriptor,Eo=(s,t,e,r)=>{for(var o=r>1?void 0:r?Eh(t,e):t,a=s.length-1,i;a>=0;a--)(i=s[a])&&(o=(r?i(t,e,o):i(o))||o);return r&&o&&Ch(t,e,o),o},le=class extends I{constructor(){super(...arguments),this.dialog=!1,this.open=!1,this.tip=!1}static get styles(){return[al]}renderTip(){return c`
`)}
- `}handleSlotchange(){let t=Gl(this.label,this.slotEl);t&&(this.label=t)}firstUpdated(t){super.firstUpdated(t),this.hasAttribute("role")||this.setAttribute("role","progressbar")}updated(t){super.updated(t),!this.indeterminate&&t.has("progress")?this.setAttribute("aria-valuenow",""+this.progress):this.hasAttribute("aria-valuenow")&&this.removeAttribute("aria-valuenow"),t.has("label")&&(this.label.length?this.setAttribute("aria-label",this.label):t.get("label")===this.getAttribute("aria-label")&&this.removeAttribute("aria-label"))}};Rr([n({type:Boolean,reflect:!0})],Gt.prototype,"indeterminate",2),Rr([n({type:String})],Gt.prototype,"label",2),Rr([n({type:Boolean,reflect:!0,attribute:"over-background"})],Gt.prototype,"overBackground",2),Rr([n({reflect:!0})],Gt.prototype,"static",2),Rr([n({type:Number})],Gt.prototype,"progress",2),Rr([S("slot")],Gt.prototype,"slotEl",2)});var Ql={};var $s=x(()=>{"use strict";Jl();f();m("sp-progress-circle",Gt)});var mu,Nr,qc=x(()=>{"use strict";mu="(max-width: 743px) and (hover: none) and (pointer: coarse)",Nr=class{constructor(t,e){this.key=Symbol("match-media-key"),this.matches=!1,this.host=t,this.host.addController(this),this.media=window.matchMedia(e),this.matches=this.media.matches,this.onChange=this.onChange.bind(this),t.addController(this)}hostConnected(){var t;(t=this.media)==null||t.addEventListener("change",this.onChange)}hostDisconnected(){var t;(t=this.media)==null||t.removeEventListener("change",this.onChange)}onChange(t){this.matches!==t.matches&&(this.matches=t.matches,this.host.requestUpdate(this.key,!this.matches))}}});function Mb(s,t,e=[]){for(let r=0;r{"use strict";pu=(s,t,{position:e,prepareCallback:r}={position:"beforeend"})=>{let{length:o}=s;if(o===0)return()=>s;let a=1,i=0;(e==="afterbegin"||e==="afterend")&&(a=-1,i=o-1);let l=new Array(o),u=new Array(o),p=document.createComment("placeholder for reparented element");do{let h=s[i];r&&(u[i]=r(h)),l[i]=p.cloneNode();let g=h.parentElement||h.getRootNode();g&&g!==h&&g.replaceChild(l[i],h),t.insertAdjacentElement(e,h),i+=a}while(--o>0);return function(){return Mb(l,s,u)}}});var js,du=x(()=>{"use strict";js=class{constructor(t={}){this.warmUpDelay=1e3,this.coolDownDelay=1e3,this.isWarm=!1,this.timeout=0,Object.assign(this,t)}async openTimer(t){if(this.cancelCooldownTimer(),!this.component||t!==this.component)return this.component&&(this.close(this.component),this.cancelCooldownTimer()),this.component=t,this.isWarm?!1:(this.promise=new Promise(e=>{this.resolve=e,this.timeout=window.setTimeout(()=>{this.resolve&&(this.resolve(!1),this.isWarm=!0)},this.warmUpDelay)}),this.promise);if(this.promise)return this.promise;throw new Error("Inconsistent state")}close(t){this.component&&this.component===t&&(this.resetCooldownTimer(),this.timeout>0&&(clearTimeout(this.timeout),this.timeout=0),this.resolve&&(this.resolve(!0),delete this.resolve),delete this.promise,delete this.component)}resetCooldownTimer(){this.isWarm&&(this.cooldownTimeout&&window.clearTimeout(this.cooldownTimeout),this.cooldownTimeout=window.setTimeout(()=>{this.isWarm=!1,delete this.cooldownTimeout},this.coolDownDelay))}cancelCooldownTimer(){this.cooldownTimeout&&window.clearTimeout(this.cooldownTimeout),delete this.cooldownTimeout}}});var He={};var Yt=x(()=>{"use strict";f();Bs();m("sp-overlay",Rc)});function it(){return new Promise(s=>requestAnimationFrame(()=>s()))}var Zr,pe,Kr,Vr,qe=x(()=>{"use strict";d();Fc();du();Zr=new js,pe=()=>{},Kr=(s,t,e)=>{let r=new AbortController,o=new Map,a=()=>{r.abort(),e()},i,l,u=requestAnimationFrame(()=>{i=requestAnimationFrame(()=>{l=requestAnimationFrame(()=>{a()})})}),p=g=>{g.target===s&&(o.set(g.propertyName,o.get(g.propertyName)-1),o.get(g.propertyName)||o.delete(g.propertyName),o.size===0&&a())},h=g=>{g.target===s&&(o.has(g.propertyName)||o.set(g.propertyName,0),o.set(g.propertyName,o.get(g.propertyName)+1),cancelAnimationFrame(u),cancelAnimationFrame(i),cancelAnimationFrame(l))};s.addEventListener("transitionrun",h,{signal:r.signal}),s.addEventListener("transitionend",p,{signal:r.signal}),s.addEventListener("transitioncancel",p,{signal:r.signal}),t()};Vr=class s extends I{constructor(){super(...arguments),this.dispose=pe,this.offset=0,this.willPreventClose=!1}async applyFocus(t,e){}get delayed(){return!1}set delayed(t){}get disabled(){return!1}set disabled(t){}get elementResolver(){return this._elementResolver}set elementResolver(t){this._elementResolver=t}async ensureOnDOM(t){}async makeTransition(t){return null}async manageDelay(t){}async manageDialogOpen(){}async managePopoverOpen(){}managePosition(){}get open(){return!1}set open(t){}get placementController(){return this._placementController}set placementController(t){this._placementController=t}requestSlottable(){}returnFocus(){}get state(){return"closed"}set state(t){}manuallyKeepOpen(){}static update(){let t=new CustomEvent("sp-update-overlays",{bubbles:!0,composed:!0,cancelable:!0});document.dispatchEvent(t)}static async open(t,e,r,o){await Promise.resolve().then(()=>(Yt(),He));let a=arguments.length===2,i=r||t,l=new this,u=!1;l.dispose=()=>{l.addEventListener("sp-closed",()=>{u||(p(),u=!0),requestAnimationFrame(()=>{l.remove()})}),l.open=!1,l.dispose=pe};let p=pu([i],l,{position:"beforeend",prepareCallback:g=>{let w=g.slot;return g.removeAttribute("slot"),()=>{g.slot=w}}});if(!a&&i&&o){let g=t,w=e,C=o;return s.applyOptions(l,{...C,delayed:C.delayed||i.hasAttribute("delayed"),trigger:C.virtualTrigger||g,type:w==="modal"?"modal":w==="hover"?"hint":"auto"}),g.insertAdjacentElement("afterend",l),await l.updateComplete,l.open=!0,l.dispose}let h=e;return l.append(i),s.applyOptions(l,{...h,delayed:h.delayed||i.hasAttribute("delayed")}),l.updateComplete.then(()=>{l.open=!0}),l}static applyOptions(t,e){var r,o;t.delayed=!!e.delayed,t.receivesFocus=(r=e.receivesFocus)!=null?r:"auto",t.triggerElement=e.trigger||null,t.type=e.type||"modal",t.offset=(o=e.offset)!=null?o:0,t.placement=e.placement,t.willPreventClose=!!e.notImmediatelyClosable}}});var bu,hu,de,gu,Hs=x(()=>{"use strict";bu=["button","[focusable]","[href]","input","label","select","textarea","[tabindex]"],hu=':not([tabindex="-1"])',de=bu.join(`${hu}, `)+hu,gu=bu.join(", ")});var Jt,Wr,nr=x(()=>{"use strict";Hs();Jt=s=>s.querySelector(de),Wr=s=>s.assignedElements().find(t=>t.matches(de))});var Qt,Lo=x(()=>{"use strict";qe();Qt=class{constructor(t,e){this.x=0,this.y=0,this.x=t,this.y=e}updateBoundingClientRect(t,e){this.x=t,this.y=e,Vr.update()}getBoundingClientRect(){return{width:0,height:0,top:this.y,right:this.x,y:this.y,x:this.x,bottom:this.y,left:this.x,toJSON(){}}}}});var Fe,Re,et,qs=x(()=>{"use strict";Fe=class extends Event{constructor(){super("beforetoggle",{bubbles:!1,composed:!1}),this.currentState="open",this.newState="closed"}},Re=class extends Event{constructor(){super("beforetoggle",{bubbles:!1,composed:!1}),this.currentState="closed",this.newState="open"}},et=class extends Event{constructor(t,e,{publish:r,interaction:o,reason:a}){super(t,{bubbles:r,composed:r}),this.overlay=e,this.detail={interaction:o,reason:a}}}});var vu=x(()=>{"use strict"});function Ue(s,t){var e,r;let o=Array.isArray(t)?t:[t];class a extends(r=s,e=Gr,r){constructor(...l){super(l),this[e]=new Map,this.managePresenceObservedSlot=()=>{let u=!1;o.forEach(p=>{let h=!!this.querySelector(`:scope > ${p}`),g=this[Gr].get(p)||!1;u=u||g!==h,this[Gr].set(p,!!this.querySelector(`:scope > ${p}`))}),u&&this.updateComplete.then(()=>{this.requestUpdate()})},new Et(this,{config:{childList:!0,subtree:!0},callback:()=>{this.managePresenceObservedSlot()}}),this.managePresenceObservedSlot()}get slotContentIsPresent(){if(o.length===1)return this[Gr].get(o[0])||!1;throw new Error("Multiple selectors provided to `ObserveSlotPresence` use `getSlotContentPresence(selector: string)` instead.")}getSlotContentPresence(l){if(this[Gr].has(l))return this[Gr].get(l)||!1;throw new Error(`The provided selector \`${l}\` is not being observed.`)}}return a}var Gr,Fs=x(()=>{"use strict";Ar();Gr=Symbol("slotContentIsPresent")});function Db(s){return typeof window<"u"&&window.navigator!=null?s.test(window.navigator.userAgent):!1}function Uc(s){return typeof window<"u"&&window.navigator!=null?s.test(window.navigator.platform):!1}function Ob(){return Uc(/^Mac/)}function Rs(){return Uc(/^iPhone/)}function jb(){return Uc(/^iPad/)||Ob()&&navigator.maxTouchPoints>1}function fu(){return Rs()||jb()}function Us(){return Db(/Android/)}var Ns=x(()=>{"use strict"});var he=x(()=>{"use strict";nr();ir();ue();Hs();vu();Or();Fs();Po();Ns();Fc();Bc();Me()});function yu(s){class t extends s{async manageDialogOpen(){let r=this.open;if(await this.managePosition(),this.open!==r)return;let o=await this.dialogMakeTransition(r);this.open===r&&await this.dialogApplyFocus(r,o)}async dialogMakeTransition(r){let o=null,a=(l,u)=>async()=>{if(l.open=r,!r){let h=()=>{l.removeEventListener("close",h),i(l,u)};l.addEventListener("close",h)}if(u>0)return;let p=r?Re:Fe;this.dispatchEvent(new p),r&&(l.matches(de)&&(o=l),o=o||Jt(l),o||l.querySelectorAll("slot").forEach(h=>{o||(o=Wr(h))}),!(!this.isConnected||this.dialogEl.open)&&this.dialogEl.showModal())},i=(l,u)=>()=>{if(this.open!==r)return;let p=r?"sp-opened":"sp-closed";if(u>0){l.dispatchEvent(new et(p,this,{interaction:this.type,publish:!1}));return}if(!this.isConnected||r!==this.open)return;let h=async()=>{let g=this.triggerElement instanceof Qt;this.dispatchEvent(new et(p,this,{interaction:this.type,publish:g})),l.dispatchEvent(new et(p,this,{interaction:this.type,publish:!1})),this.triggerElement&&!g&&this.triggerElement.dispatchEvent(new et(p,this,{interaction:this.type,publish:!0})),this.state=r?"opened":"closed",this.returnFocus(),await it(),await it(),r===this.open&&r===!1&&this.requestSlottable()};!r&&this.dialogEl.open?(this.dialogEl.addEventListener("close",()=>{h()},{once:!0}),this.dialogEl.close()):h()};return this.elements.forEach((l,u)=>{Kr(l,a(l,u),i(l,u))}),o}async dialogApplyFocus(r,o){this.applyFocus(r,o)}}return t}var ku=x(()=>{"use strict";nr();Lo();qe();qs();he()});function xu(s){let t=!1;try{t=s.matches(":popover-open")}catch{}let e=!1;try{e=s.matches(":open")}catch{}return t||e}function wu(s){class t extends s{async manageDelay(r){if(r===!1||r!==this.open){Zr.close(this);return}this.delayed&&await Zr.openTimer(this)&&(this.open=!r)}async shouldHidePopover(r){if(r&&this.open!==r)return;let o=async({newState:a}={})=>{a!=="open"&&await this.placementController.resetOverlayPosition()};if(!xu(this.dialogEl)){o();return}this.dialogEl.addEventListener("toggle",o,{once:!0})}async shouldShowPopover(r){let o=!1;try{o=this.dialogEl.matches(":popover-open")}catch{}let a=!1;try{a=this.dialogEl.matches(":open")}catch{}r&&this.open===r&&!o&&!a&&this.isConnected&&(this.dialogEl.showPopover(),await this.managePosition())}async ensureOnDOM(r){await it(),Bb||await this.shouldHidePopover(r),await this.shouldShowPopover(r),await it()}async makeTransition(r){if(this.open!==r)return null;let o=null,a=(l,u)=>()=>{if(l.open=r,u===0){let p=r?Re:Fe;this.dispatchEvent(new p)}!r||(l.matches(de)&&(o=l),o=o||Jt(l),o)||l.querySelectorAll("slot").forEach(p=>{o||(o=Wr(p))})},i=(l,u)=>async()=>{if(this.open!==r)return;let p=r?"sp-opened":"sp-closed";if(u>0){l.dispatchEvent(new et(p,this,{interaction:this.type,publish:!1}));return}let h=async()=>{if(this.open!==r)return;await it();let w=this.triggerElement instanceof Qt;this.dispatchEvent(new et(p,this,{interaction:this.type,publish:w})),l.dispatchEvent(new et(p,this,{interaction:this.type,publish:!1})),this.triggerElement&&!w&&this.triggerElement.dispatchEvent(new et(p,this,{interaction:this.type,publish:!0})),this.state=r?"opened":"closed",this.returnFocus(),await it(),await it(),r===this.open&&r===!1&&this.requestSlottable()};if(this.open!==r)return;let g=xu(this.dialogEl);r!==!0&&g&&this.isConnected?(this.dialogEl.addEventListener("beforetoggle",()=>{h()},{once:!0}),this.dialogEl.hidePopover()):h()};return this.elements.forEach((l,u)=>{Kr(l,a(l,u),i(l,u))}),o}}return t}var Bb,zu=x(()=>{"use strict";nr();Lo();qe();qs();he();Bb=CSS.supports("(overlay: auto)")});function Cu(s){class t extends s{async managePopoverOpen(){await this.managePosition()}async manageDelay(r){if(r===!1||r!==this.open){Zr.close(this);return}this.delayed&&await Zr.openTimer(this)&&(this.open=!r)}async ensureOnDOM(r){document.body.offsetHeight}async makeTransition(r){if(this.open!==r)return null;let o=null,a=(l,u)=>()=>{if(r===this.open){if(l.open=r,u===0){let p=r?Re:Fe;this.dispatchEvent(new p)}r!==!0||(l.matches(de)&&(o=l),o=o||Jt(l),o)||l.querySelectorAll("slot").forEach(p=>{o||(o=Wr(p))})}},i=(l,u)=>async()=>{if(this.open!==r)return;let p=r?"sp-opened":"sp-closed";if(l.dispatchEvent(new et(p,this,{interaction:this.type})),u>0)return;let h=this.triggerElement instanceof Qt;this.dispatchEvent(new et(p,this,{interaction:this.type,publish:h})),this.triggerElement&&!h&&this.triggerElement.dispatchEvent(new et(p,this,{interaction:this.type,publish:!0})),this.state=r?"opened":"closed",this.returnFocus(),await it(),await it(),r===this.open&&r===!1&&this.requestSlottable()};return this.elements.forEach((l,u)=>{Kr(l,a(l,u),i(l,u))}),o}}return t}var Eu=x(()=>{"use strict";nr();Lo();qe();qs();he()});var Hb,Nc,Vc,_u=x(()=>{"use strict";Hb="showPopover"in document.createElement("div"),Nc=class{constructor(){this.root=document.body,this.stack=[],this.handlePointerdown=t=>{this.pointerdownPath=t.composedPath(),this.lastOverlay=this.stack[this.stack.length-1]},this.handlePointerup=()=>{let t=this.pointerdownPath;if(this.pointerdownPath=void 0,!this.stack.length||!(t!=null&&t.length))return;let e=this.stack.length-1,r=this.stack.filter((o,a)=>!t.find(i=>i===o||i===o?.triggerElement&&o?.type==="hint"||a===e&&o!==this.lastOverlay&&o.triggerInteraction==="longpress")&&!o.shouldPreventClose()&&o.type!=="manual");r.reverse(),r.forEach(o=>{this.closeOverlay(o);let a=o.parentOverlayToForceClose;for(;a;)this.closeOverlay(a),a=a.parentOverlayToForceClose})},this.handleBeforetoggle=t=>{let{target:e,newState:r}=t;r!=="open"&&this.closeOverlay(e)},this.handleKeydown=t=>{if(t.code!=="Escape"||!this.stack.length)return;let e=this.stack[this.stack.length-1];if(e?.type==="page"){t.preventDefault();return}Hb||e?.type!=="manual"&&e&&this.closeOverlay(e)},this.bindEvents()}get document(){return this.root.ownerDocument||document}bindEvents(){this.document.addEventListener("pointerdown",this.handlePointerdown),this.document.addEventListener("pointerup",this.handlePointerup),this.document.addEventListener("keydown",this.handleKeydown)}closeOverlay(t){let e=this.stack.indexOf(t);e>-1&&this.stack.splice(e,1),t.open=!1}overlaysByTriggerElement(t){return this.stack.filter(e=>e.triggerElement===t)}add(t){if(this.stack.includes(t)){let e=this.stack.indexOf(t);e>-1&&(this.stack.splice(e,1),this.stack.push(t));return}if(t.type==="auto"||t.type==="modal"||t.type==="page"){let e="sp-overlay-query-path",r=new Event(e,{composed:!0,bubbles:!0});t.addEventListener(e,o=>{let a=o.composedPath();this.stack.forEach(i=>{!a.find(l=>l===i)&&i.type!=="manual"&&this.closeOverlay(i)})},{once:!0}),t.dispatchEvent(r)}else if(t.type==="hint"){if(this.stack.some(e=>e.type!=="manual"&&e.triggerElement&&e.triggerElement===t.triggerElement)){t.open=!1;return}this.stack.forEach(e=>{e.type==="hint"&&this.closeOverlay(e)})}requestAnimationFrame(()=>{this.stack.push(t),t.addEventListener("beforetoggle",this.handleBeforetoggle,{once:!0})})}remove(t){this.closeOverlay(t)}},Vc=new Nc});function Zs(s,t,e){return ct(s,te(t,e))}function lr(s,t){return typeof s=="function"?s(t):s}function be(s){return s.split("-")[0]}function ur(s){return s.split("-")[1]}function Zc(s){return s==="x"?"y":"x"}function Ks(s){return s==="y"?"height":"width"}function Ne(s){return["top","bottom"].includes(be(s))?"y":"x"}function Ws(s){return Zc(Ne(s))}function Iu(s,t,e){e===void 0&&(e=!1);let r=ur(s),o=Ws(s),a=Ks(o),i=o==="x"?r===(e?"end":"start")?"right":"left":r==="start"?"bottom":"top";return t.reference[a]>t.floating[a]&&(i=Mo(i)),[i,Mo(i)]}function Tu(s){let t=Mo(s);return[Vs(s),t,Vs(t)]}function Vs(s){return s.replace(/start|end/g,t=>Fb[t])}function Rb(s,t,e){let r=["left","right"],o=["right","left"],a=["top","bottom"],i=["bottom","top"];switch(s){case"top":case"bottom":return e?t?o:r:t?r:o;case"left":case"right":return t?a:i;default:return[]}}function Su(s,t,e,r){let o=ur(s),a=Rb(be(s),e==="start",r);return o&&(a=a.map(i=>i+"-"+o),t&&(a=a.concat(a.map(Vs)))),a}function Mo(s){return s.replace(/left|right|bottom|top/g,t=>qb[t])}function Ub(s){return{top:0,right:0,bottom:0,left:0,...s}}function Kc(s){return typeof s!="number"?Ub(s):{top:s,right:s,bottom:s,left:s}}function mr(s){let{x:t,y:e,width:r,height:o}=s;return{width:r,height:o,top:e,left:t,right:t+r,bottom:e+o,x:t,y:e}}var te,ct,Do,Oo,Ot,qb,Fb,Gs=x(()=>{te=Math.min,ct=Math.max,Do=Math.round,Oo=Math.floor,Ot=s=>({x:s,y:s}),qb={left:"right",right:"left",bottom:"top",top:"bottom"},Fb={start:"end",end:"start"}});function Pu(s,t,e){let{reference:r,floating:o}=s,a=Ne(t),i=Ws(t),l=Ks(i),u=be(t),p=a==="y",h=r.x+r.width/2-o.width/2,g=r.y+r.height/2-o.height/2,w=r[l]/2-o[l]/2,C;switch(u){case"top":C={x:h,y:r.y-o.height};break;case"bottom":C={x:h,y:r.y+r.height};break;case"right":C={x:r.x+r.width,y:g};break;case"left":C={x:r.x-o.width,y:g};break;default:C={x:r.x,y:r.y}}switch(ur(t)){case"start":C[i]-=w*(e&&p?-1:1);break;case"end":C[i]+=w*(e&&p?-1:1);break}return C}async function Xs(s,t){var e;t===void 0&&(t={});let{x:r,y:o,platform:a,rects:i,elements:l,strategy:u}=s,{boundary:p="clippingAncestors",rootBoundary:h="viewport",elementContext:g="floating",altBoundary:w=!1,padding:C=0}=lr(t,s),E=Kc(C),M=l[w?g==="floating"?"reference":"floating":g],A=mr(await a.getClippingRect({element:(e=await(a.isElement==null?void 0:a.isElement(M)))==null||e?M:M.contextElement||await(a.getDocumentElement==null?void 0:a.getDocumentElement(l.floating)),boundary:p,rootBoundary:h,strategy:u})),L=g==="floating"?{x:r,y:o,width:i.floating.width,height:i.floating.height}:i.reference,T=await(a.getOffsetParent==null?void 0:a.getOffsetParent(l.floating)),U=await(a.isElement==null?void 0:a.isElement(T))?await(a.getScale==null?void 0:a.getScale(T))||{x:1,y:1}:{x:1,y:1},H=mr(a.convertOffsetParentRelativeRectToViewportRelativeRect?await a.convertOffsetParentRelativeRectToViewportRelativeRect({elements:l,rect:L,offsetParent:T,strategy:u}):L);return{top:(A.top-H.top+E.top)/U.y,bottom:(H.bottom-A.bottom+E.bottom)/U.y,left:(A.left-H.left+E.left)/U.x,right:(H.right-A.right+E.right)/U.x}}async function Nb(s,t){let{placement:e,platform:r,elements:o}=s,a=await(r.isRTL==null?void 0:r.isRTL(o.floating)),i=be(e),l=ur(e),u=Ne(e)==="y",p=["left","top"].includes(i)?-1:1,h=a&&u?-1:1,g=lr(t,s),{mainAxis:w,crossAxis:C,alignmentAxis:E}=typeof g=="number"?{mainAxis:g,crossAxis:0,alignmentAxis:null}:{mainAxis:g.mainAxis||0,crossAxis:g.crossAxis||0,alignmentAxis:g.alignmentAxis};return l&&typeof E=="number"&&(C=l==="end"?E*-1:E),u?{x:C*h,y:w*p}:{x:w*p,y:C*h}}var $u,Au,Lu,Mu,Du,Ou,ju=x(()=>{Gs();Gs();$u=async(s,t,e)=>{let{placement:r="bottom",strategy:o="absolute",middleware:a=[],platform:i}=e,l=a.filter(Boolean),u=await(i.isRTL==null?void 0:i.isRTL(t)),p=await i.getElementRects({reference:s,floating:t,strategy:o}),{x:h,y:g}=Pu(p,r,u),w=r,C={},E=0;for(let P=0;P({name:"arrow",options:s,async fn(t){let{x:e,y:r,placement:o,rects:a,platform:i,elements:l,middlewareData:u}=t,{element:p,padding:h=0}=lr(s,t)||{};if(p==null)return{};let g=Kc(h),w={x:e,y:r},C=Ws(o),E=Ks(C),P=await i.getDimensions(p),M=C==="y",A=M?"top":"left",L=M?"bottom":"right",T=M?"clientHeight":"clientWidth",U=a.reference[E]+a.reference[C]-w[C]-a.floating[E],H=w[C]-a.reference[C],ot=await(i.getOffsetParent==null?void 0:i.getOffsetParent(p)),vt=ot?ot[T]:0;(!vt||!await(i.isElement==null?void 0:i.isElement(ot)))&&(vt=l.floating[T]||a.floating[E]);let Lt=U/2-H/2,Mt=vt/2-P[E]/2-1,B=te(g[A],Mt),tt=te(g[L],Mt),Rt=B,Ee=vt-P[E]-tt,st=vt/2-P[E]/2+Lt,_r=Zs(Rt,st,Ee),ae=!u.arrow&&ur(o)!=null&&st!==_r&&a.reference[E]/2-(st