diff --git a/.homeycompose/app.json b/.homeycompose/app.json index 8aa060b..4594809 100644 --- a/.homeycompose/app.json +++ b/.homeycompose/app.json @@ -312,6 +312,10 @@ "method": "GET", "path": "/icons" }, + "setCycleLook": { + "method": "POST", + "path": "/cycles/look" + }, "setEventLook": { "method": "POST", "path": "/events/look" diff --git a/.homeycompose/locales/ar.json b/.homeycompose/locales/ar.json index 7e8d8fc..e40b2eb 100644 --- a/.homeycompose/locales/ar.json +++ b/.homeycompose/locales/ar.json @@ -92,6 +92,11 @@ "color": "لون", "icon": "أيقونة" }, + "cycles": { + "title": "التسلسلات", + "description": "تمر التسلسلات عبر سلسلة رقمية. استخدم إجراءات التسلسل والشروط والمحفزات في تدفقاتك للتنقل بين القيم والاستجابة عندما يصل التسلسل إلى خطوة معينة.", + "empty": "لم يتم إنشاء تسلسلات بعد." + }, "events": { "title": "الأحداث", "description": "تتبع الأحداث متى ما يحدث شيء وتحتفظ بتاريخ الزمن. استخدم إجراءات الأحداث والشروط والمحفزات في تدفقاتك لتتبع الأحداث والتحقق من مدى تكرارها أو توقيتها.", @@ -159,4 +164,4 @@ "pink": "وردي", "rose": "وردي فاتح" } -} +} \ No newline at end of file diff --git a/.homeycompose/locales/da.json b/.homeycompose/locales/da.json index ca021c0..9c0857d 100644 --- a/.homeycompose/locales/da.json +++ b/.homeycompose/locales/da.json @@ -92,6 +92,11 @@ "color": "Farve", "icon": "Ikon" }, + "cycles": { + "title": "Sekvenser", + "description": "Sekvenser gennemløber en numerisk sekvens. Brug sekvenshandlinger, betingelser og triggere i dine flows til at gennemgå værdier og reagere, når en sekvens når et bestemt trin.", + "empty": "Der er endnu ikke oprettet nogen sekvenser." + }, "events": { "title": "Begivenheder", "description": "Begivenheder sporer hvornår noget sker og gemmer en historik af tidsstempler. Brug begivenhedshandlinger, betingelser og triggere i dine flows til at spore hændelser og kontrollere hvor ofte eller hvornår begivenheder skete.", @@ -159,4 +164,4 @@ "pink": "Pink", "rose": "Rosa" } -} +} \ No newline at end of file diff --git a/.homeycompose/locales/de.json b/.homeycompose/locales/de.json index ab72805..a2b60ec 100644 --- a/.homeycompose/locales/de.json +++ b/.homeycompose/locales/de.json @@ -92,6 +92,11 @@ "color": "Farbe", "icon": "Symbol" }, + "cycles": { + "title": "Sequenzen", + "description": "Sequenzen durchlaufen eine numerische Abfolge. Verwenden Sie Sequenz-Aktionen, Bedingungen und Trigger in Ihren Flows, um durch Werte zu schalten und zu reagieren, wenn eine Sequenz einen bestimmten Schritt erreicht.", + "empty": "Es wurden noch keine Sequenzen erstellt." + }, "events": { "title": "Ereignisse", "description": "Ereignisse verfolgen, wann etwas passiert, und speichern einen Verlauf von Zeitstempeln. Verwenden Sie Ereignis-Aktionen, Bedingungen und Trigger in Ihren Flows, um Vorkommen zu verfolgen und zu überprüfen, wie oft oder wann Ereignisse stattgefunden haben.", @@ -159,4 +164,4 @@ "pink": "Rosa", "rose": "Rosé" } -} +} \ No newline at end of file diff --git a/.homeycompose/locales/en.json b/.homeycompose/locales/en.json index 1d5160a..31cc112 100644 --- a/.homeycompose/locales/en.json +++ b/.homeycompose/locales/en.json @@ -92,6 +92,11 @@ "color": "Color", "icon": "Icon" }, + "cycles": { + "title": "Sequences", + "description": "Sequences cycle through a numeric sequence. Use sequence actions, conditions, and triggers in your flows to step through values and respond when a sequence reaches a specific step.", + "empty": "No sequences have been created yet." + }, "events": { "title": "Events", "description": "Events track when something happens and keep a history of timestamps. Use event actions, conditions, and triggers in your flows to track occurrences and check how often or when events happened.", @@ -159,4 +164,4 @@ "pink": "Pink", "rose": "Rose" } -} +} \ No newline at end of file diff --git a/.homeycompose/locales/es.json b/.homeycompose/locales/es.json index c242a38..49eafa8 100644 --- a/.homeycompose/locales/es.json +++ b/.homeycompose/locales/es.json @@ -92,6 +92,11 @@ "color": "Color", "icon": "Icono" }, + "cycles": { + "title": "Secuencias", + "description": "Las secuencias recorren una serie numérica. Utiliza acciones, condiciones y disparadores de secuencia en tus flujos para avanzar por los valores y responder cuando una secuencia alcanza un paso específico.", + "empty": "Aún no se han creado secuencias." + }, "events": { "title": "Eventos", "description": "Los eventos rastrean cuándo sucede algo y mantienen un historial de marcas de tiempo. Utiliza acciones, condiciones y disparadores de eventos en tus flujos para rastrear ocurrencias y verificar con qué frecuencia o cuándo sucedieron los eventos.", @@ -159,4 +164,4 @@ "pink": "Rosa", "rose": "Rosa claro" } -} +} \ No newline at end of file diff --git a/.homeycompose/locales/fr.json b/.homeycompose/locales/fr.json index 839cf7f..eebfed4 100644 --- a/.homeycompose/locales/fr.json +++ b/.homeycompose/locales/fr.json @@ -92,6 +92,11 @@ "color": "Couleur", "icon": "Icône" }, + "cycles": { + "title": "Séquences", + "description": "Les séquences parcourent une suite numérique. Utilisez les actions, conditions et déclencheurs de séquence dans vos flux pour passer en revue les valeurs et réagir quand une séquence atteint une étape spécifique.", + "empty": "Aucune séquence n'a encore été créée." + }, "events": { "title": "Événements", "description": "Les événements enregistrent quand quelque chose se produit et conservent un historique d'horodatages. Utilisez les actions, conditions et déclencheurs d'événements dans vos flux pour suivre les occurrences et vérifier à quelle fréquence ou quand les événements se sont produits.", @@ -159,4 +164,4 @@ "pink": "Rose", "rose": "Rose pâle" } -} +} \ No newline at end of file diff --git a/.homeycompose/locales/it.json b/.homeycompose/locales/it.json index 38a2053..0e34473 100644 --- a/.homeycompose/locales/it.json +++ b/.homeycompose/locales/it.json @@ -92,6 +92,11 @@ "color": "Colore", "icon": "Icona" }, + "cycles": { + "title": "Sequenze", + "description": "Le sequenze scorrono una serie numerica. Usa azioni, condizioni e trigger delle sequenze nei tuoi flow per passare tra i valori e rispondere quando una sequenza raggiunge un passo specifico.", + "empty": "Nessuna sequenza è stata ancora creata." + }, "events": { "title": "Eventi", "description": "Gli eventi registrano quando qualcosa accade e conservano una cronologia di timestamp. Usa azioni, condizioni e trigger degli eventi nei tuoi flow per tracciare le occorrenze e verificare quanto spesso o quando gli eventi si sono verificati.", @@ -159,4 +164,4 @@ "pink": "Rosa", "rose": "Rosa tenue" } -} +} \ No newline at end of file diff --git a/.homeycompose/locales/ko.json b/.homeycompose/locales/ko.json index 2b918e5..4f07beb 100644 --- a/.homeycompose/locales/ko.json +++ b/.homeycompose/locales/ko.json @@ -92,6 +92,11 @@ "color": "색상", "icon": "아이콘" }, + "cycles": { + "title": "시퀀스", + "description": "시퀀스는 숫자 순서를 순환합니다. 플로우에서 시퀀스 작업, 조건, 트리거를 사용하여 값을 단계별로 이동하고 시퀀스가 특정 단계에 도달할 때 반응하세요.", + "empty": "아직 생성된 시퀀스가 없습니다." + }, "events": { "title": "이벤트", "description": "이벤트는 무언가가 발생했을 때를 추적하고 타임스탬프 기록을 보관합니다. 플로우에서 이벤트 작업, 조건, 트리거를 사용하여 발생을 추적하고 이벤트가 얼마나 자주 또는 언제 발생했는지 확인하세요.", @@ -159,4 +164,4 @@ "pink": "핑크", "rose": "로즈" } -} +} \ No newline at end of file diff --git a/.homeycompose/locales/nl.json b/.homeycompose/locales/nl.json index bf0b13d..15e372a 100644 --- a/.homeycompose/locales/nl.json +++ b/.homeycompose/locales/nl.json @@ -92,6 +92,11 @@ "color": "Kleur", "icon": "Icoon" }, + "cycles": { + "title": "Stappenreeksen", + "description": "Stappenreeksen doorlopen een numerieke reeks. Gebruik stappenreeks-acties, -voorwaarden en -triggers in je flows om door waarden te stappen en te reageren wanneer een stappenreeks een specifieke stap bereikt.", + "empty": "Er zijn nog geen stappenreeksen aangemaakt." + }, "events": { "title": "Gebeurtenissen", "description": "Gebeurtenissen houden bij wanneer iets gebeurt en bewaren een geschiedenis van tijdstempels. Gebruik gebeurtenis-acties, -voorwaarden en -triggers in je flows om voorvallen bij te houden en te controleren hoe vaak of wanneer gebeurtenissen plaatsvonden.", @@ -159,4 +164,4 @@ "pink": "Roze", "rose": "Roze (licht)" } -} +} \ No newline at end of file diff --git a/.homeycompose/locales/no.json b/.homeycompose/locales/no.json index 10752fd..5a256c8 100644 --- a/.homeycompose/locales/no.json +++ b/.homeycompose/locales/no.json @@ -92,6 +92,11 @@ "color": "Farge", "icon": "Ikon" }, + "cycles": { + "title": "Sekvenser", + "description": "Sekvenser går gjennom en numerisk sekvens. Bruk sekvenshandlinger, betingelser og triggere i flytene dine for å trinn gjennom verdier og reagere når en sekvens når et spesifikt trinn.", + "empty": "Ingen sekvenser har blitt opprettet enda." + }, "events": { "title": "Hendelser", "description": "Hendelser sporer når noe skjer og holder en historikk over tidsstempler. Bruk hendelseshandlinger, betingelser og triggere i flytene dine for å spore forekomster og sjekke hvor ofte eller når hendelser skjedde.", @@ -159,4 +164,4 @@ "pink": "Rosa", "rose": "Roserosa" } -} +} \ No newline at end of file diff --git a/.homeycompose/locales/pl.json b/.homeycompose/locales/pl.json index addccf0..d01a37f 100644 --- a/.homeycompose/locales/pl.json +++ b/.homeycompose/locales/pl.json @@ -92,6 +92,11 @@ "color": "Kolor", "icon": "Ikona" }, + "cycles": { + "title": "Sekwencje", + "description": "Sekwencje przechodzą przez ciąg numeryczny. Używaj akcji, warunków i wyzwalaczy sekwencji w swoich przepływach, aby przechodzić przez wartości i reagować, gdy sekwencja osiągnie określony krok.", + "empty": "Nie utworzono jeszcze żadnych sekwencji." + }, "events": { "title": "Zdarzenia", "description": "Zdarzenia śledzą, kiedy coś się dzieje i przechowują historię znaczników czasu. Używaj akcji, warunków i wyzwalaczy zdarzeń w swoich przepływach, aby śledzić wystąpienia i sprawdzać, jak często lub kiedy zdarzenia miały miejsce.", @@ -159,4 +164,4 @@ "pink": "Różowy", "rose": "Róż jasny" } -} +} \ No newline at end of file diff --git a/.homeycompose/locales/ru.json b/.homeycompose/locales/ru.json index 4768555..f888495 100644 --- a/.homeycompose/locales/ru.json +++ b/.homeycompose/locales/ru.json @@ -92,6 +92,11 @@ "color": "Цвет", "icon": "Иконка" }, + "cycles": { + "title": "Последовательности", + "description": "Последовательности проходят числовую цепочку. Используйте действия, условия и триггеры последовательностей в ваших потоках для перебора значений и реагирования, когда последовательность достигает определённого шага.", + "empty": "Последовательности ещё не созданы." + }, "events": { "title": "События", "description": "События отслеживают, когда что-то происходит, и хранят историю временных меток. Используйте действия, условия и триггеры событий в ваших потоках для отслеживания происшествий и проверки того, как часто или когда события произошли.", @@ -159,4 +164,4 @@ "pink": "Розовый", "rose": "Нежно-розовый" } -} +} \ No newline at end of file diff --git a/.homeycompose/locales/sv.json b/.homeycompose/locales/sv.json index e9e111f..5fec779 100644 --- a/.homeycompose/locales/sv.json +++ b/.homeycompose/locales/sv.json @@ -92,6 +92,11 @@ "color": "Färg", "icon": "Ikon" }, + "cycles": { + "title": "Sekvenser", + "description": "Sekvenser genomlöper en numerisk sekvens. Använd sekvensåtgärder, villkor och triggers i dina flöden för att stega igenom värden och reagera när en sekvens når ett specifikt steg.", + "empty": "Inga sekvenser har skapats ännu." + }, "events": { "title": "Händelser", "description": "Händelser spårar när något händer och bevarar en historik av tidsstämplar. Använd händelseåtgärder, villkor och triggers i dina flöden för att spåra händelser och kontrollera hur ofta eller när händelser inträffade.", @@ -159,4 +164,4 @@ "pink": "Rosa", "rose": "Rosé" } -} +} \ No newline at end of file diff --git a/api.ts b/api.ts index 2cb242c..3d3425d 100644 --- a/api.ts +++ b/api.ts @@ -70,6 +70,10 @@ export async function getIcons(): Promise { return icons; } +export async function setCycleLook({homey: {app}, body}: ApiRequest): Promise { + return await app.api.setCycleLook(body.name, body.color, body.icon); +} + export async function setEventLook({homey: {app}, body}: ApiRequest): Promise { return await app.api.setEventLook(body.name, body.color, body.icon); } diff --git a/settings-ui/src/App.vue b/settings-ui/src/App.vue index 73f0417..b5c54e9 100644 --- a/settings-ui/src/App.vue +++ b/settings-ui/src/App.vue @@ -6,6 +6,13 @@
+ + import { onMounted, ref, unref } from 'vue'; import { Category, Documentation, Edit, Form, Statistics, Top } from './components'; - import { composeEdit, composeSave, useColors, useEvents, useFlags, useIcons, useLabels, useModes, useSets, useTimers, useTranslate } from './composables'; + import { composeEdit, composeSave, useColors, useCycles, useEvents, useFlags, useIcons, useLabels, useModes, useSets, useTimers, useTranslate } from './composables'; import type { FeatureType, FormLook, Item } from './types'; const t = useTranslate(); const {load: loadColors} = useColors(); const {load: loadIcons} = useIcons(); + const {items: cycles, load: loadCycles} = useCycles(); const {items: events, load: loadEvents} = useEvents(); const {items: flags, load: loadFlags} = useFlags(); const {items: labels, load: loadLabels} = useLabels(); @@ -83,6 +91,7 @@ const editingType = ref(null); const isSaving = ref(false); + const onEditCycle = composeEdit('cycle', editingItem, editingType); const onEditEvent = composeEdit('event', editingItem, editingType); const onEditFlag = composeEdit('flag', editingItem, editingType); const onEditLabel = composeEdit('label', editingItem, editingType); @@ -90,6 +99,7 @@ const onEditSet = composeEdit('set', editingItem, editingType); const onEditTimer = composeEdit('timer', editingItem, editingType); + const onSaveCycle = composeSave('/cycles/look', editingItem, editingType, isSaving, loadCycles); const onSaveEvent = composeSave('/events/look', editingItem, editingType, isSaving, loadEvents); const onSaveFlag = composeSave('/flags/look', editingItem, editingType, isSaving, loadFlags); const onSaveLabel = composeSave('/labels/look', editingItem, editingType, isSaving, loadLabels); @@ -104,6 +114,7 @@ ]); await Promise.allSettled([ + loadCycles(), loadEvents(), loadFlags(), loadLabels(), @@ -122,6 +133,9 @@ function onSaveItem(name: string, look: FormLook) { switch (unref(editingType)) { + case 'cycle': + return onSaveCycle(name, look); + case 'event': return onSaveEvent(name, look); diff --git a/settings-ui/src/composables.ts b/settings-ui/src/composables.ts index c7f1477..66da605 100644 --- a/settings-ui/src/composables.ts +++ b/settings-ui/src/composables.ts @@ -1,7 +1,7 @@ import type { Color, Icon } from '@basmilius/homey-common'; import { provide, type Ref, ref } from 'vue'; import { COLORS, ICONS } from './symbols'; -import type { BitSet, Event, FeatureType, Flag, FormLook, Item, Label, Mode, Statistics, Timer } from './types'; +import type { BitSet, Cycle, Event, FeatureType, Flag, FormLook, Item, Label, Mode, Statistics, Timer } from './types'; const EMPTY_STATISTICS: Statistics = { currentFlags: [], @@ -63,6 +63,10 @@ export function useIcons() { }; } +export function useCycles() { + return composeList('/cycles'); +} + export function useEvents() { return composeList('/events'); } diff --git a/settings-ui/src/types.ts b/settings-ui/src/types.ts index ca6e2d7..1f4d24f 100644 --- a/settings-ui/src/types.ts +++ b/settings-ui/src/types.ts @@ -16,6 +16,7 @@ export type { } from '../../src/types'; export type FeatureType = + | 'cycle' | 'event' | 'flag' | 'label' diff --git a/settings/index.css b/settings/index.css index 6c935af..2b0aba7 100644 --- a/settings/index.css +++ b/settings/index.css @@ -1 +1 @@ -.y{--color:#64748b;--icon:"";--icon-secondary:"";--size:42px;height:var(--size);width:var(--size);justify-content:center;align-items:center;display:grid}.y:before,.y:after{color:var(--color);font-family:font-awesome,sans-serif;font-size:var(--size);line-height:var(--size);grid-area:1/1}.y:before{content:var(--icon)}.y:after{content:var(--icon-secondary);opacity:.2}.q{color:var(--rose);font-style:italic}.r{margin-left:calc(var(--homey-su-2) * -1);margin-right:calc(var(--homey-su-2) * -1);flex-flow:column;align-items:stretch;display:flex}.s{padding:var(--homey-su-2);border:1px solid var(--homey-color-mono-05);cursor:pointer;text-align:left;background:0 0;border-left:0;border-right:0;justify-content:start;align-items:center;gap:15px;display:flex}.s+.s{border-top:0}.s:hover{background:var(--homey-color-mono-01)}.t{flex-grow:1;font-weight:500}.u{--size:20px}.b{flex-flow:wrap;gap:9px;display:flex}.c{--color:black;background:var(--color);cursor:pointer;border-radius:99px;width:33px;height:33px;transition:opacity .12s cubic-bezier(.55,0,.1,1)}.c:hover{opacity:.8}.d{outline-offset:-6px;outline:3px solid #fff}.n{flex-flow:wrap;gap:6px;margin-top:15px;display:flex}.o{--color:var(--homey-color-mono-70);--size:24px;border-radius:var(--homey-border-radius-small);cursor:pointer;border:1px solid #0000;width:45px;height:45px}.o:hover{background:var(--homey-color-mono-02);border-color:var(--homey-color-mono-05)}.p{--color:var(--sky);background:rgb(from var(--color) r g b/.25);border-color:rgb(from var(--color) r g b/.25)}.v{overscroll-behavior:contain;z-index:1000;padding:15px;display:flex;position:fixed;inset:0;overflow:auto}.v:before{content:"";background:rgb(from var(--homey-color-mono-90) r g b/.75);z-index:0;display:block;position:fixed;inset:0}.a{background:var(--homey-color-mono-0);border-radius:var(--homey-border-radius);width:calc(100% - 30px);box-shadow:var(--homey-box-shadow);z-index:1;flex-flow:column;gap:15px;margin:auto;padding:15px;display:flex;position:relative}.w{--size:48px;align-self:center;margin-top:30px}.x{align-self:center;margin-top:6px;margin-bottom:0;font-size:21px;font-weight:700}.e{grid-template-rows:auto auto;grid-template-columns:auto 1fr;gap:6px 15px;line-height:1;display:grid}.f{--color:var(--homey-color-mono-70);--size:24px;grid-area:1/1/span 2}.g{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.h{font-size:var(--homey-font-size-medium);font-weight:var(--homey-font-weight-bold)}.i{grid-template-columns:repeat(2,1fr);gap:21px 15px;display:grid}.j{margin-left:calc(var(--homey-su-2) * -1);margin-right:calc(var(--homey-su-2) * -1);background:var(--homey-color-mono-05);flex-flow:column;align-items:stretch;gap:1px;padding:1px 0;display:flex}.k{padding:var(--homey-su-1) var(--homey-su-2);background:var(--homey-color-mono-0);flex-flow:row;display:flex}.k:hover{background:var(--homey-color-mono-01)}.l{flex-grow:1}.m{font-weight:var(--homey-font-weight-bold)}.edit-enter-active,.edit-leave-active,.edit-enter-active .a,.edit-leave-active .a{transition:opacity .42s cubic-bezier(.55,0,.1,1),translate .42s cubic-bezier(.55,0,.1,1)}.edit-enter-from,.edit-leave-to{opacity:0}.edit-enter-from .a,.edit-leave-to .a{opacity:0;translate:0 60px} +.i{--color:#64748b;--icon:"";--icon-secondary:"";--size:42px;height:var(--size);width:var(--size);justify-content:center;align-items:center;display:grid}.i:before,.i:after{color:var(--color);font-family:font-awesome,sans-serif;font-size:var(--size);line-height:var(--size);grid-area:1/1}.i:before{content:var(--icon)}.i:after{content:var(--icon-secondary);opacity:.2}.r{color:var(--rose);font-style:italic}.s{margin-left:calc(var(--homey-su-2) * -1);margin-right:calc(var(--homey-su-2) * -1);flex-flow:column;align-items:stretch;display:flex}.t{padding:var(--homey-su-2);border:1px solid var(--homey-color-mono-05);cursor:pointer;text-align:left;background:0 0;border-left:0;border-right:0;justify-content:start;align-items:center;gap:15px;display:flex}.t+.t{border-top:0}.t:hover{background:var(--homey-color-mono-01)}.u{flex-grow:1;font-weight:500}.v{--size:20px}.f{flex-flow:wrap;gap:9px;display:flex}.g{--color:black;background:var(--color);cursor:pointer;border-radius:99px;width:33px;height:33px;transition:opacity .12s cubic-bezier(.55,0,.1,1)}.g:hover{opacity:.8}.h{outline-offset:-6px;outline:3px solid #fff}.j{flex-flow:wrap;gap:6px;margin-top:15px;display:flex}.k{--color:var(--homey-color-mono-70);--size:24px;border-radius:var(--homey-border-radius-small);cursor:pointer;border:1px solid #0000;width:45px;height:45px}.k:hover{background:var(--homey-color-mono-02);border-color:var(--homey-color-mono-05)}.l{--color:var(--sky);background:rgb(from var(--color) r g b/.25);border-color:rgb(from var(--color) r g b/.25)}.w{overscroll-behavior:contain;z-index:1000;padding:15px;display:flex;position:fixed;inset:0;overflow:auto}.w:before{content:"";background:rgb(from var(--homey-color-mono-90) r g b/.75);z-index:0;display:block;position:fixed;inset:0}.a{background:var(--homey-color-mono-0);border-radius:var(--homey-border-radius);width:calc(100% - 30px);box-shadow:var(--homey-box-shadow);z-index:1;flex-flow:column;gap:15px;margin:auto;padding:15px;display:flex;position:relative}.x{--size:48px;align-self:center;margin-top:30px}.y{align-self:center;margin-top:6px;margin-bottom:0;font-size:21px;font-weight:700}.b{grid-template-rows:auto auto;grid-template-columns:auto 1fr;gap:6px 15px;line-height:1;display:grid}.c{--color:var(--homey-color-mono-70);--size:24px;grid-area:1/1/span 2}.d{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.e{font-size:var(--homey-font-size-medium);font-weight:var(--homey-font-weight-bold)}.m{grid-template-columns:repeat(2,1fr);gap:21px 15px;display:grid}.n{margin-left:calc(var(--homey-su-2) * -1);margin-right:calc(var(--homey-su-2) * -1);background:var(--homey-color-mono-05);flex-flow:column;align-items:stretch;gap:1px;padding:1px 0;display:flex}.o{padding:var(--homey-su-1) var(--homey-su-2);background:var(--homey-color-mono-0);flex-flow:row;display:flex}.o:hover{background:var(--homey-color-mono-01)}.p{flex-grow:1}.q{font-weight:var(--homey-font-weight-bold)}.edit-enter-active,.edit-leave-active,.edit-enter-active .a,.edit-leave-active .a{transition:opacity .42s cubic-bezier(.55,0,.1,1),translate .42s cubic-bezier(.55,0,.1,1)}.edit-enter-from,.edit-leave-to{opacity:0}.edit-enter-from .a,.edit-leave-to .a{opacity:0;translate:0 60px} diff --git a/settings/index.js b/settings/index.js index 75a8ed4..572de53 100644 --- a/settings/index.js +++ b/settings/index.js @@ -1 +1 @@ -(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))n(r);new MutationObserver(r=>{for(const i of r)if(i.type==="childList")for(const l of i.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&n(l)}).observe(document,{childList:!0,subtree:!0});function s(r){const i={};return r.integrity&&(i.integrity=r.integrity),r.referrerPolicy&&(i.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?i.credentials="include":r.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function n(r){if(r.ep)return;r.ep=!0;const i=s(r);fetch(r.href,i)}})();function Ls(e){const t=Object.create(null);for(const s of e.split(","))t[s]=1;return s=>s in t}var G={},Ft=[],We=()=>{},Dr=()=>!1,Vs=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),In=e=>e.startsWith("onUpdate:"),re=Object.assign,On=(e,t)=>{const s=e.indexOf(t);s>-1&&e.splice(s,1)},tl=Object.prototype.hasOwnProperty,J=(e,t)=>tl.call(e,t),A=Array.isArray,$t=e=>fs(e)==="[object Map]",jt=e=>fs(e)==="[object Set]",Xn=e=>fs(e)==="[object Date]",R=e=>typeof e=="function",le=e=>typeof e=="string",Re=e=>typeof e=="symbol",Y=e=>e!==null&&typeof e=="object",Hr=e=>(Y(e)||R(e))&&R(e.then)&&R(e.catch),jr=Object.prototype.toString,fs=e=>jr.call(e),sl=e=>fs(e).slice(8,-1),Br=e=>fs(e)==="[object Object]",An=e=>le(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Yt=Ls(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Ns=e=>{const t=Object.create(null);return(s=>t[s]||(t[s]=e(s)))},nl=/-\w/g,tt=Ns(e=>e.replace(nl,t=>t.slice(1).toUpperCase())),rl=/\B([A-Z])/g,ht=Ns(e=>e.replace(rl,"-$1").toLowerCase()),Ur=Ns(e=>e.charAt(0).toUpperCase()+e.slice(1)),en=Ns(e=>e?`on${Ur(e)}`:""),we=(e,t)=>!Object.is(e,t),Ss=(e,...t)=>{for(let s=0;s{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:n,value:s})},Rs=e=>{const t=parseFloat(e);return isNaN(t)?e:t},il=e=>{const t=le(e)?Number(e):NaN;return isNaN(t)?e:t},Qn,Ds=()=>Qn||(Qn=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Et(e){if(A(e)){const t={};for(let s=0;s{if(s){const n=s.split(ol);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function Q(e){let t="";if(le(e))t=e;else if(A(e))for(let s=0;sct(s,t))}var Gr=e=>!!(e&&e.__v_isRef===!0),fe=e=>le(e)?e:e==null?"":A(e)||Y(e)&&(e.toString===jr||!R(e.toString))?Gr(e)?fe(e.value):JSON.stringify(e,qr,2):String(e),qr=(e,t)=>Gr(t)?qr(e,t.value):$t(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((s,[n,r],i)=>(s[tn(n,i)+" =>"]=r,s),{})}:jt(t)?{[`Set(${t.size})`]:[...t.values()].map(s=>tn(s))}:Re(t)?tn(t):Y(t)&&!A(t)&&!Br(t)?String(t):t,tn=(e,t="")=>{var s;return Re(e)?`Symbol(${(s=e.description)!=null?s:t})`:e};var Ee,dl=class{constructor(e=!1){this.detached=e,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.__v_skip=!0,this.parent=Ee,!e&&Ee&&(this.index=(Ee.scopes||(Ee.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let e,t;if(this.scopes)for(e=0,t=this.scopes.length;e0&&--this._on===0&&(Ee=this.prevScope,this.prevScope=void 0)}stop(e){if(this._active){this._active=!1;let t,s;for(t=0,s=this.effects.length;t0)return;if(Xt){let t=Xt;for(Xt=void 0;t;){const s=t.next;t.next=void 0,t.flags&=-9,t=s}}let e;for(;zt;){let t=zt;for(zt=void 0;t;){const s=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(n){e||(e=n)}t=s}}if(e)throw e}function Xr(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Qr(e){let t,s=e.depsTail,n=s;for(;n;){const r=n.prevDep;n.version===-1?(n===s&&(s=r),$n(n),hl(n)):t=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=r}e.deps=t,e.depsTail=s}function vn(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Zr(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Zr(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===ts)||(e.globalVersion=ts,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!vn(e))))return;e.flags|=2;const t=e.dep,s=ee,n=Ne;ee=e,Ne=!0;try{Xr(e);const r=e.fn(e._value);(t.version===0||we(r,e._value))&&(e.flags|=128,e._value=r,t.version++)}catch(r){throw t.version++,r}finally{ee=s,Ne=n,Qr(e),e.flags&=-3}}function $n(e,t=!1){const{dep:s,prevSub:n,nextSub:r}=e;if(n&&(n.nextSub=r,e.prevSub=void 0),r&&(r.prevSub=n,e.nextSub=void 0),s.subs===e&&(s.subs=n,!n&&s.computed)){s.computed.flags&=-5;for(let i=s.computed.deps;i;i=i.nextDep)$n(i,!0)}!t&&!--s.sc&&s.map&&s.map.delete(s.key)}function hl(e){const{prevDep:t,nextDep:s}=e;t&&(t.nextDep=s,e.prevDep=void 0),s&&(s.prevDep=t,e.nextDep=void 0)}var Ne=!0,ei=[];function st(){ei.push(Ne),Ne=!1}function nt(){const e=ei.pop();Ne=e===void 0?!0:e}function Zn(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const s=ee;ee=void 0;try{t()}finally{ee=s}}}var ts=0,vl=class{constructor(e,t){this.sub=e,this.dep=t,this.version=t.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}},Hs=class{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(e){if(!ee||!Ne||ee===this.computed)return;let t=this.activeLink;if(t===void 0||t.sub!==ee)t=this.activeLink=new vl(ee,this),ee.deps?(t.prevDep=ee.depsTail,ee.depsTail.nextDep=t,ee.depsTail=t):ee.deps=ee.depsTail=t,ti(t);else if(t.version===-1&&(t.version=this.version,t.nextDep)){const s=t.nextDep;s.prevDep=t.prevDep,t.prevDep&&(t.prevDep.nextDep=s),t.prevDep=ee.depsTail,t.nextDep=void 0,ee.depsTail.nextDep=t,ee.depsTail=t,ee.deps===t&&(ee.deps=s)}return t}trigger(e){this.version++,ts++,this.notify(e)}notify(e){Pn();try{for(let t=this.subs;t;t=t.prevSub)t.sub.notify()&&t.sub.dep.notify()}finally{Fn()}}};function ti(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let n=t.deps;n;n=n.nextDep)ti(n)}const s=e.dep.subs;s!==e&&(e.prevSub=s,s&&(s.nextSub=e)),e.dep.subs=e}}var gn=new WeakMap,xt=Symbol(""),mn=Symbol(""),ss=Symbol("");function he(e,t,s){if(Ne&&ee){let n=gn.get(e);n||gn.set(e,n=new Map);let r=n.get(s);r||(n.set(s,r=new Hs),r.map=n,r.key=s),r.track()}}function Qe(e,t,s,n,r,i){const l=gn.get(e);if(!l){ts++;return}const o=a=>{a&&a.trigger()};if(Pn(),t==="clear")l.forEach(o);else{const a=A(e),d=a&&An(s);if(a&&s==="length"){const c=Number(n);l.forEach((p,y)=>{(y==="length"||y===ss||!Re(y)&&y>=c)&&o(p)})}else switch((s!==void 0||l.has(void 0))&&o(l.get(s)),d&&o(l.get(ss)),t){case"add":a?d&&o(l.get("length")):(o(l.get(xt)),$t(e)&&o(l.get(mn)));break;case"delete":a||(o(l.get(xt)),$t(e)&&o(l.get(mn)));break;case"set":$t(e)&&o(l.get(xt));break}}Fn()}function It(e){const t=W(e);return t===e?t:(he(t,"iterate",ss),Pe(e)?t:t.map(De))}function js(e){return he(e=W(e),"iterate",ss),e}function at(e,t){return rt(e)?Dt(Ct(e)?De(t):t):De(t)}var gl={__proto__:null,[Symbol.iterator](){return nn(this,Symbol.iterator,e=>at(this,e))},concat(...e){return It(this).concat(...e.map(t=>A(t)?It(t):t))},entries(){return nn(this,"entries",e=>(e[1]=at(this,e[1]),e))},every(e,t){return qe(this,"every",e,t,void 0,arguments)},filter(e,t){return qe(this,"filter",e,t,s=>s.map(n=>at(this,n)),arguments)},find(e,t){return qe(this,"find",e,t,s=>at(this,s),arguments)},findIndex(e,t){return qe(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return qe(this,"findLast",e,t,s=>at(this,s),arguments)},findLastIndex(e,t){return qe(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return qe(this,"forEach",e,t,void 0,arguments)},includes(...e){return rn(this,"includes",e)},indexOf(...e){return rn(this,"indexOf",e)},join(e){return It(this).join(e)},lastIndexOf(...e){return rn(this,"lastIndexOf",e)},map(e,t){return qe(this,"map",e,t,void 0,arguments)},pop(){return Wt(this,"pop")},push(...e){return Wt(this,"push",e)},reduce(e,...t){return er(this,"reduce",e,t)},reduceRight(e,...t){return er(this,"reduceRight",e,t)},shift(){return Wt(this,"shift")},some(e,t){return qe(this,"some",e,t,void 0,arguments)},splice(...e){return Wt(this,"splice",e)},toReversed(){return It(this).toReversed()},toSorted(e){return It(this).toSorted(e)},toSpliced(...e){return It(this).toSpliced(...e)},unshift(...e){return Wt(this,"unshift",e)},values(){return nn(this,"values",e=>at(this,e))}};function nn(e,t,s){const n=js(e),r=n[t]();return n!==e&&!Pe(e)&&(r._next=r.next,r.next=()=>{const i=r._next();return i.done||(i.value=s(i.value)),i}),r}var ml=Array.prototype;function qe(e,t,s,n,r,i){const l=js(e),o=l!==e&&!Pe(e),a=l[t];if(a!==ml[t]){const p=a.apply(e,i);return o?De(p):p}let d=s;l!==e&&(o?d=function(p,y){return s.call(this,at(e,p),y,e)}:s.length>2&&(d=function(p,y){return s.call(this,p,y,e)}));const c=a.call(l,d,n);return o&&r?r(c):c}function er(e,t,s,n){const r=js(e);let i=s;return r!==e&&(Pe(e)?s.length>3&&(i=function(l,o,a){return s.call(this,l,o,a,e)}):i=function(l,o,a){return s.call(this,l,at(e,o),a,e)}),r[t](i,...n)}function rn(e,t,s){const n=W(e);he(n,"iterate",ss);const r=n[t](...s);return(r===-1||r===!1)&&Nn(s[0])?(s[0]=W(s[0]),n[t](...s)):r}function Wt(e,t,s=[]){st(),Pn();const n=W(e)[t].apply(e,s);return Fn(),nt(),n}var _l=Ls("__proto__,__v_isRef,__isVue"),si=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Re));function yl(e){Re(e)||(e=String(e));const t=W(this);return he(t,"has",e),t.hasOwnProperty(e)}var ni=class{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,s){if(t==="__v_skip")return e.__v_skip;const n=this._isReadonly,r=this._isShallow;if(t==="__v_isReactive")return!n;if(t==="__v_isReadonly")return n;if(t==="__v_isShallow")return r;if(t==="__v_raw")return s===(n?r?Al:oi:r?li:ii).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(s)?e:void 0;const i=A(e);if(!n){let o;if(i&&(o=gl[t]))return o;if(t==="hasOwnProperty")return yl}const l=Reflect.get(e,t,me(e)?e:s);if((Re(t)?si.has(t):_l(t))||(n||he(e,"get",t),r))return l;if(me(l)){const o=i&&An(t)?l:l.value;return n&&Y(o)?yn(o):o}return Y(l)?n?yn(l):Bs(l):l}},ri=class extends ni{constructor(e=!1){super(!1,e)}set(e,t,s,n){let r=e[t];const i=A(e)&&An(t);if(!this._isShallow){const a=rt(r);if(!Pe(s)&&!rt(s)&&(r=W(r),s=W(s)),!i&&me(r)&&!me(s))return a||(r.value=s),!0}const l=i?Number(t)e,ms=e=>Reflect.getPrototypeOf(e);function Tl(e,t,s){return function(...n){const r=this.__v_raw,i=W(r),l=$t(i),o=e==="entries"||e===Symbol.iterator&&l,a=e==="keys"&&l,d=r[e](...n),c=s?_n:t?Dt:De;return!t&&he(i,"iterate",a?mn:xt),re(Object.create(d),{next(){const{value:p,done:y}=d.next();return y?{value:p,done:y}:{value:o?[c(p[0]),c(p[1])]:c(p),done:y}}})}}function _s(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function El(e,t){const s={get(n){const r=this.__v_raw,i=W(r),l=W(n);e||(we(n,l)&&he(i,"get",n),he(i,"get",l));const{has:o}=ms(i),a=t?_n:e?Dt:De;if(o.call(i,n))return a(r.get(n));if(o.call(i,l))return a(r.get(l));r!==i&&r.get(n)},get size(){const n=this.__v_raw;return!e&&he(W(n),"iterate",xt),n.size},has(n){const r=this.__v_raw,i=W(r),l=W(n);return e||(we(n,l)&&he(i,"has",n),he(i,"has",l)),n===l?r.has(n):r.has(n)||r.has(l)},forEach(n,r){const i=this,l=i.__v_raw,o=W(l),a=t?_n:e?Dt:De;return!e&&he(o,"iterate",xt),l.forEach((d,c)=>n.call(r,a(d),a(c),i))}};return re(s,e?{add:_s("add"),set:_s("set"),delete:_s("delete"),clear:_s("clear")}:{add(n){!t&&!Pe(n)&&!rt(n)&&(n=W(n));const r=W(this);return ms(r).has.call(r,n)||(r.add(n),Qe(r,"add",n,n)),this},set(n,r){!t&&!Pe(r)&&!rt(r)&&(r=W(r));const i=W(this),{has:l,get:o}=ms(i);let a=l.call(i,n);a||(n=W(n),a=l.call(i,n));const d=o.call(i,n);return i.set(n,r),a?we(r,d)&&Qe(i,"set",n,r,d):Qe(i,"add",n,r),this},delete(n){const r=W(this),{has:i,get:l}=ms(r);let o=i.call(r,n);o||(n=W(n),o=i.call(r,n));const a=l?l.call(r,n):void 0,d=r.delete(n);return o&&Qe(r,"delete",n,void 0,a),d},clear(){const n=W(this),r=n.size!==0,i=void 0,l=n.clear();return r&&Qe(n,"clear",void 0,void 0,i),l}}),["keys","values","entries",Symbol.iterator].forEach(n=>{s[n]=Tl(n,e,t)}),s}function Ln(e,t){const s=El(e,t);return(n,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?n:Reflect.get(J(s,r)&&r in n?s:n,r,i)}var wl={get:Ln(!1,!1)},Il={get:Ln(!1,!0)},Ol={get:Ln(!0,!1)},ii=new WeakMap,li=new WeakMap,oi=new WeakMap,Al=new WeakMap;function Ml(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Pl(e){return e.__v_skip||!Object.isExtensible(e)?0:Ml(sl(e))}function Bs(e){return rt(e)?e:Vn(e,!1,Sl,wl,ii)}function Fl(e){return Vn(e,!1,Cl,Il,li)}function yn(e){return Vn(e,!0,xl,Ol,oi)}function Vn(e,t,s,n,r){if(!Y(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=Pl(e);if(i===0)return e;const l=r.get(e);if(l)return l;const o=new Proxy(e,i===2?n:s);return r.set(e,o),o}function Ct(e){return rt(e)?Ct(e.__v_raw):!!(e&&e.__v_isReactive)}function rt(e){return!!(e&&e.__v_isReadonly)}function Pe(e){return!!(e&&e.__v_isShallow)}function Nn(e){return e?!!e.__v_raw:!1}function W(e){const t=e&&e.__v_raw;return t?W(t):e}function $l(e){return!J(e,"__v_skip")&&Object.isExtensible(e)&&kr(e,"__v_skip",!0),e}var De=e=>Y(e)?Bs(e):e,Dt=e=>Y(e)?yn(e):e;function me(e){return e?e.__v_isRef===!0:!1}function Fe(e){return Ll(e,!1)}function Ll(e,t){return me(e)?e:new Vl(e,t)}var Vl=class{constructor(e,t){this.dep=new Hs,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=t?e:W(e),this._value=t?e:De(e),this.__v_isShallow=t}get value(){return this.dep.track(),this._value}set value(e){const t=this._rawValue,s=this.__v_isShallow||Pe(e)||rt(e);e=s?e:W(e),we(e,t)&&(this._rawValue=e,this._value=s?e:De(e),this.dep.trigger())}};function b(e){return me(e)?e.value:e}var Nl={get:(e,t,s)=>t==="__v_raw"?e:b(Reflect.get(e,t,s)),set:(e,t,s,n)=>{const r=e[t];return me(r)&&!me(s)?(r.value=s,!0):Reflect.set(e,t,s,n)}};function ai(e){return Ct(e)?e:new Proxy(e,Nl)}var Rl=class{constructor(e){this.__v_isRef=!0,this._value=void 0;const t=this.dep=new Hs,{get:s,set:n}=e(t.track.bind(t),t.trigger.bind(t));this._get=s,this._set=n}get value(){return this._value=this._get()}set value(e){this._set(e)}};function Dl(e){return new Rl(e)}var Hl=class{constructor(e,t,s){this.fn=e,this.setter=t,this._value=void 0,this.dep=new Hs(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=ts-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!t,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&ee!==this)return zr(this,!0),!0}get value(){const e=this.dep.track();return Zr(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}};function jl(e,t,s=!1){let n,r;return R(e)?n=e:(n=e.get,r=e.set),new Hl(n,r,s)}var ys={},Ts=new WeakMap,bt=void 0;function Bl(e,t=!1,s=bt){if(s){let n=Ts.get(s);n||Ts.set(s,n=[]),n.push(e)}}function Ul(e,t,s=G){const{immediate:n,deep:r,once:i,scheduler:l,augmentJob:o,call:a}=s,d=M=>r?M:Pe(M)||r===!1||r===0?Ze(M,1):Ze(M);let c,p,y,S,F=!1,I=!1;if(me(e)?(p=()=>e.value,F=Pe(e)):Ct(e)?(p=()=>d(e),F=!0):A(e)?(I=!0,F=e.some(M=>Ct(M)||Pe(M)),p=()=>e.map(M=>{if(me(M))return M.value;if(Ct(M))return d(M);if(R(M))return a?a(M,2):M()})):R(e)?t?p=a?()=>a(e,2):e:p=()=>{if(y){st();try{y()}finally{nt()}}const M=bt;bt=c;try{return a?a(e,3,[S]):e(S)}finally{bt=M}}:p=We,t&&r){const M=p,X=r===!0?1/0:r;p=()=>Ze(M(),X)}const H=pl(),N=()=>{c.stop(),H&&H.active&&On(H.effects,c)};if(i&&t){const M=t;t=(...X)=>{M(...X),N()}}let L=I?new Array(e.length).fill(ys):ys;const k=M=>{if(!(!(c.flags&1)||!c.dirty&&!M))if(t){const X=c.run();if(r||F||(I?X.some((ue,de)=>we(ue,L[de])):we(X,L))){y&&y();const ue=bt;bt=c;try{const de=[X,L===ys?void 0:I&&L[0]===ys?[]:L,S];L=X,a?a(t,3,de):t(...de)}finally{bt=ue}}}else c.run()};return o&&o(k),c=new Jr(p),c.scheduler=l?()=>l(k,!1):k,S=M=>Bl(M,!1,c),y=c.onStop=()=>{const M=Ts.get(c);if(M){if(a)a(M,4);else for(const X of M)X();Ts.delete(c)}},t?n?k(!0):L=c.run():l?l(k.bind(null,!0),!0):c.run(),N.pause=c.pause.bind(c),N.resume=c.resume.bind(c),N.stop=N,N}function Ze(e,t=1/0,s){if(t<=0||!Y(e)||e.__v_skip||(s=s||new Map,(s.get(e)||0)>=t))return e;if(s.set(e,t),t--,me(e))Ze(e.value,t,s);else if(A(e))for(let n=0;n{Ze(n,t,s)});else if(Br(e)){for(const n in e)Ze(e[n],t,s);for(const n of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,n)&&Ze(e[n],t,s)}return e}function ds(e,t,s,n){try{return n?e(...n):e()}catch(r){Us(r,t,s)}}function He(e,t,s,n){if(R(e)){const r=ds(e,t,s,n);return r&&Hr(r)&&r.catch(i=>{Us(i,t,s)}),r}if(A(e)){const r=[];for(let i=0;i>>1,r=Se[n],i=ns(r);i=ns(s)?Se.push(e):Se.splice(Kl(t),0,e),e.flags|=1,fi()}}function fi(){Es||(Es=ui.then(pi))}function Wl(e){A(e)?Lt.push(...e):ut&&e.id===-1?ut.splice(Pt+1,0,e):e.flags&1||(Lt.push(e),e.flags|=1),fi()}function tr(e,t,s=Ue+1){for(;sns(s)-ns(n));if(Lt.length=0,ut){ut.push(...t);return}for(ut=t,Pt=0;Pte.id==null?e.flags&2?-1:1/0:e.id;function pi(e){try{for(Ue=0;Ue{n._d&&Ps(-1);const i=ws(t);let l;try{l=e(...r)}finally{ws(i),n._d&&Ps(1)}return l};return n._n=!0,n._c=!0,n._d=!0,n}function Gl(e,t){if(ge===null)return e;const s=zs(ge),n=e.dirs||(e.dirs=[]);for(let r=0;r1)return s&&R(t)?t.call(n&&n.proxy):t}}var ql=Symbol.for("v-scx"),Jl=()=>{{const e=Vt(ql);return e}};function Yl(e,t){return Hn(e,null,{flush:"sync"})}function ln(e,t,s){return Hn(e,t,s)}function Hn(e,t,s=G){const{immediate:n,deep:r,flush:i,once:l}=s,o=re({},s),a=t&&n||!t&&i!=="post";let d;if(os){if(i==="sync"){const S=Jl();d=S.__watcherHandles||(S.__watcherHandles=[])}else if(!a){const S=()=>{};return S.stop=We,S.resume=We,S.pause=We,S}}const c=xe;o.call=(S,F,I)=>He(S,c,F,I);let p=!1;i==="post"?o.scheduler=S=>{Te(S,c&&c.suspense)}:i!=="sync"&&(p=!0,o.scheduler=(S,F)=>{F?S():Rn(S)}),o.augmentJob=S=>{t&&(S.flags|=4),p&&(S.flags|=2,c&&(S.id=c.uid,S.i=c))};const y=Ul(e,t,o);return os&&(d?d.push(y):a&&y()),y}function zl(e,t,s){const n=this.proxy,r=le(e)?e.includes(".")?vi(n,e):()=>n[e]:e.bind(n,n);let i;R(t)?i=t:(i=t.handler,s=t);const l=ps(this),o=Hn(r,i.bind(n),s);return l(),o}function vi(e,t){const s=t.split(".");return()=>{let n=e;for(let r=0;re.__isTeleport,ke=Symbol("_leaveCb"),Gt=Symbol("_enterCb");function Ql(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return Ws(()=>{e.isMounted=!0}),Ti(()=>{e.isUnmounting=!0}),e}var Me=[Function,Array],mi={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Me,onEnter:Me,onAfterEnter:Me,onEnterCancelled:Me,onBeforeLeave:Me,onLeave:Me,onAfterLeave:Me,onLeaveCancelled:Me,onBeforeAppear:Me,onAppear:Me,onAfterAppear:Me,onAppearCancelled:Me},_i=e=>{const t=e.subTree;return t.component?_i(t.component):t},Zl={name:"BaseTransition",props:mi,setup(e,{slots:t}){const s=Ys(),n=Ql();return()=>{const r=t.default&&Si(t.default(),!0);if(!r||!r.length)return;const i=yi(r),l=W(e),{mode:o}=l;if(n.isLeaving)return on(i);const a=sr(i);if(!a)return on(i);let d=bn(a,l,n,s,p=>d=p);a.type!==ve&&rs(a,d);let c=s.subTree&&sr(s.subTree);if(c&&c.type!==ve&&!St(c,a)&&_i(s).type!==ve){let p=bn(c,l,n,s);if(rs(c,p),o==="out-in"&&a.type!==ve)return n.isLeaving=!0,p.afterLeave=()=>{n.isLeaving=!1,s.job.flags&8||s.update(),delete p.afterLeave,c=void 0},on(i);o==="in-out"&&a.type!==ve?p.delayLeave=(y,S,F)=>{const I=bi(n,c);I[String(c.key)]=c,y[ke]=()=>{S(),y[ke]=void 0,delete d.delayedLeave,c=void 0},d.delayedLeave=()=>{F(),delete d.delayedLeave,c=void 0}}:c=void 0}else c&&(c=void 0);return i}}};function yi(e){let t=e[0];if(e.length>1){for(const s of e)if(s.type!==ve){t=s;break}}return t}var eo=Zl;function bi(e,t){const{leavingVNodes:s}=e;let n=s.get(t.type);return n||(n=Object.create(null),s.set(t.type,n)),n}function bn(e,t,s,n,r){const{appear:i,mode:l,persisted:o=!1,onBeforeEnter:a,onEnter:d,onAfterEnter:c,onEnterCancelled:p,onBeforeLeave:y,onLeave:S,onAfterLeave:F,onLeaveCancelled:I,onBeforeAppear:H,onAppear:N,onAfterAppear:L,onAppearCancelled:k}=t,M=String(e.key),X=bi(s,e),ue=(D,q)=>{D&&He(D,n,9,q)},de=(D,q)=>{const se=q[1];ue(D,q),A(D)?D.every(w=>w.length<=1)&&se():D.length<=1&&se()},ye={mode:l,persisted:o,beforeEnter(D){let q=a;if(!s.isMounted)if(i)q=H||a;else return;D[ke]&&D[ke](!0);const se=X[M];se&&St(e,se)&&se.el[ke]&&se.el[ke](),ue(q,[D])},enter(D){let q=d,se=c,w=p;if(!s.isMounted)if(i)q=N||d,se=L||c,w=k||p;else return;let Z=!1;D[Gt]=Le=>{Z||(Z=!0,Le?ue(w,[D]):ue(se,[D]),ye.delayedLeave&&ye.delayedLeave(),D[Gt]=void 0)};const ce=D[Gt].bind(null,!1);q?de(q,[D,ce]):ce()},leave(D,q){const se=String(e.key);if(D[Gt]&&D[Gt](!0),s.isUnmounting)return q();ue(y,[D]);let w=!1;D[ke]=ce=>{w||(w=!0,q(),ce?ue(I,[D]):ue(F,[D]),D[ke]=void 0,X[se]===e&&delete X[se])};const Z=D[ke].bind(null,!1);X[se]=e,S?de(S,[D,Z]):Z()},clone(D){const q=bn(D,t,s,n,r);return r&&r(q),q}};return ye}function on(e){if(ks(e))return e=dt(e),e.children=null,e}function sr(e){if(!ks(e))return gi(e.type)&&e.children?yi(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:s}=e;if(s){if(t&16)return s[0];if(t&32&&R(s.default))return s.default()}}function rs(e,t){e.shapeFlag&6&&e.component?(e.transition=t,rs(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Si(e,t=!1,s){let n=[],r=0;for(let i=0;i1)for(let i=0;iQt(I,t&&(A(t)?t[H]:t),s,n,r));return}if(Nt(n)&&!r){n.shapeFlag&512&&n.type.__asyncResolved&&n.component.subTree.component&&Qt(e,t,s,n.component.subTree);return}const i=n.shapeFlag&4?zs(n.component):n.el,l=r?null:i,{i:o,r:a}=e,d=t&&t.r,c=o.refs===G?o.refs={}:o.refs,p=o.setupState,y=W(p),S=p===G?Dr:I=>nr(c,I)?!1:J(y,I),F=(I,H)=>!(H&&nr(c,H));if(d!=null&&d!==a){if(rr(t),le(d))c[d]=null,S(d)&&(p[d]=null);else if(me(d)){const I=t;F(d,I.k)&&(d.value=null),I.k&&(c[I.k]=null)}}if(R(a))ds(a,o,12,[l,c]);else{const I=le(a),H=me(a);if(I||H){const N=()=>{if(e.f){const L=I?S(a)?p[a]:c[a]:F(a)||!e.k?a.value:c[e.k];if(r)A(L)&&On(L,i);else if(A(L))L.includes(i)||L.push(i);else if(I)c[a]=[i],S(a)&&(p[a]=c[a]);else{const k=[i];F(a,e.k)&&(a.value=k),e.k&&(c[e.k]=k)}}else I?(c[a]=l,S(a)&&(p[a]=l)):H&&(F(a,e.k)&&(a.value=l),e.k&&(c[e.k]=l))};if(l){const L=()=>{N(),Is.delete(e)};L.id=-1,Is.set(e,L),Te(L,s)}else rr(e),N()}}}function rr(e){const t=Is.get(e);t&&(t.flags|=8,Is.delete(e))}var Ic=Ds().requestIdleCallback||(e=>setTimeout(e,1)),Oc=Ds().cancelIdleCallback||(e=>clearTimeout(e)),Nt=e=>!!e.type.__asyncLoader,ks=e=>e.type.__isKeepAlive;function so(e,t){Ci(e,"a",t)}function no(e,t){Ci(e,"da",t)}function Ci(e,t,s=xe){const n=e.__wdc||(e.__wdc=()=>{let r=s;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(Ks(t,n,s),s){let r=s.parent;for(;r&&r.parent;)ks(r.parent.vnode)&&ro(n,t,s,r),r=r.parent}}function ro(e,t,s,n){const r=Ks(t,e,n,!0);Ei(()=>{On(n[t],r)},s)}function Ks(e,t,s=xe,n=!1){if(s){const r=s[e]||(s[e]=[]),i=t.__weh||(t.__weh=(...l)=>{st();const o=ps(s),a=He(t,s,e,l);return o(),nt(),a});return n?r.unshift(i):r.push(i),i}}var it=e=>(t,s=xe)=>{(!os||e==="sp")&&Ks(e,(...n)=>t(...n),s)},io=it("bm"),Ws=it("m"),lo=it("bu"),oo=it("u"),Ti=it("bum"),Ei=it("um"),ao=it("sp"),uo=it("rtg"),co=it("rtc");function fo(e,t=xe){Ks("ec",e,t)}var po=Symbol.for("v-ndc");function Gs(e,t,s,n){let r;const i=s&&s[n],l=A(e);if(l||le(e)){const o=l&&Ct(e);let a=!1,d=!1;o&&(a=!Pe(e),d=rt(e),e=js(e)),r=new Array(e.length);for(let c=0,p=e.length;ct(o,a,void 0,i&&i[a]));else{const o=Object.keys(e);r=new Array(o.length);for(let a=0,d=o.length;a0;return t!=="default"&&(s.name=t),U(),Tt(ie,null,[$("slot",s,n&&n())],d?-2:64)}let i=e[t];i&&i._c&&(i._d=!1),U();const l=i&&wi(i(s)),o=s.key||l&&l.key,a=Tt(ie,{key:(o&&!Re(o)?o:`_${t}`)+(!l&&n?"_fb":"")},l||(n?n():[]),l&&e._===1?64:-2);return!r&&a.scopeId&&(a.slotScopeIds=[a.scopeId+"-s"]),i&&i._c&&(i._d=!0),a}function wi(e){return e.some(t=>ls(t)?!(t.type===ve||t.type===ie&&!wi(t.children)):!0)?e:null}var Sn=e=>e?Gi(e)?zs(e):Sn(e.parent):null,Zt=re(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Sn(e.parent),$root:e=>Sn(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>jn(e),$forceUpdate:e=>e.f||(e.f=()=>{Rn(e.update)}),$nextTick:e=>e.n||(e.n=ci.bind(e.proxy)),$watch:e=>zl.bind(e)}),an=(e,t)=>e!==G&&!e.__isScriptSetup&&J(e,t),ho={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:s,setupState:n,data:r,props:i,accessCache:l,type:o,appContext:a}=e;if(t[0]!=="$"){const y=l[t];if(y!==void 0)switch(y){case 1:return n[t];case 2:return r[t];case 4:return s[t];case 3:return i[t]}else{if(an(n,t))return l[t]=1,n[t];if(r!==G&&J(r,t))return l[t]=2,r[t];if(J(i,t))return l[t]=3,i[t];if(s!==G&&J(s,t))return l[t]=4,s[t];xn&&(l[t]=0)}}const d=Zt[t];let c,p;if(d)return t==="$attrs"&&he(e.attrs,"get",""),d(e);if((c=o.__cssModules)&&(c=c[t]))return c;if(s!==G&&J(s,t))return l[t]=4,s[t];if(p=a.config.globalProperties,J(p,t))return p[t]},set({_:e},t,s){const{data:n,setupState:r,ctx:i}=e;return an(r,t)?(r[t]=s,!0):n!==G&&J(n,t)?(n[t]=s,!0):J(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(i[t]=s,!0)},has({_:{data:e,setupState:t,accessCache:s,ctx:n,appContext:r,props:i,type:l}},o){let a;return!!(s[o]||e!==G&&o[0]!=="$"&&J(e,o)||an(t,o)||J(i,o)||J(n,o)||J(Zt,o)||J(r.config.globalProperties,o)||(a=l.__cssModules)&&a[o])},defineProperty(e,t,s){return s.get!=null?e._.accessCache[t]=0:J(s,"value")&&this.set(e,t,s.value,null),Reflect.defineProperty(e,t,s)}};function As(e){return A(e)?e.reduce((t,s)=>(t[s]=null,t),{}):e}function vo(e,t){return!e||!t?e||t:A(e)&&A(t)?e.concat(t):re({},As(e),As(t))}var xn=!0;function go(e){const t=jn(e),s=e.proxy,n=e.ctx;xn=!1,t.beforeCreate&&ir(t.beforeCreate,e,"bc");const{data:r,computed:i,methods:l,watch:o,provide:a,inject:d,created:c,beforeMount:p,mounted:y,beforeUpdate:S,updated:F,activated:I,deactivated:H,beforeDestroy:N,beforeUnmount:L,destroyed:k,unmounted:M,render:X,renderTracked:ue,renderTriggered:de,errorCaptured:ye,serverPrefetch:D,expose:q,inheritAttrs:se,components:w,directives:Z,filters:ce}=t;if(d&&mo(d,n,null),l)for(const K in l){const j=l[K];R(j)&&(n[K]=j.bind(s))}if(r){const K=r.call(s,s);Y(K)&&(e.data=Bs(K))}if(xn=!0,i)for(const K in i){const j=i[K],Ge=Wn({get:R(j)?j.bind(s,s):R(j.get)?j.get.bind(s,s):We,set:!R(j)&&R(j.set)?j.set.bind(s):We});Object.defineProperty(n,K,{enumerable:!0,configurable:!0,get:()=>Ge.value,set:hs=>Ge.value=hs})}if(o)for(const K in o)Ii(o[K],n,s,K);if(a){const K=R(a)?a.call(s):a;Reflect.ownKeys(K).forEach(j=>{Dn(j,K[j])})}c&&ir(c,e,"c");function oe(K,j){A(j)?j.forEach(Ge=>K(Ge.bind(s))):j&&K(j.bind(s))}if(oe(io,p),oe(Ws,y),oe(lo,S),oe(oo,F),oe(so,I),oe(no,H),oe(fo,ye),oe(co,ue),oe(uo,de),oe(Ti,L),oe(Ei,M),oe(ao,D),A(q))if(q.length){const K=e.exposed||(e.exposed={});q.forEach(j=>{Object.defineProperty(K,j,{get:()=>s[j],set:Ge=>s[j]=Ge,enumerable:!0})})}else e.exposed||(e.exposed={});X&&e.render===We&&(e.render=X),se!=null&&(e.inheritAttrs=se),w&&(e.components=w),Z&&(e.directives=Z),D&&xi(e)}function mo(e,t,s=We){A(e)&&(e=Cn(e));for(const n in e){const r=e[n];let i;Y(r)?"default"in r?i=Vt(r.from||n,r.default,!0):i=Vt(r.from||n):i=Vt(r),me(i)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>i.value,set:l=>i.value=l}):t[n]=i}}function ir(e,t,s){He(A(e)?e.map(n=>n.bind(t.proxy)):e.bind(t.proxy),t,s)}function Ii(e,t,s,n){let r=n.includes(".")?vi(s,n):()=>s[n];if(le(e)){const i=t[e];R(i)&&ln(r,i)}else if(R(e))ln(r,e.bind(s));else if(Y(e))if(A(e))e.forEach(i=>Ii(i,t,s,n));else{const i=R(e.handler)?e.handler.bind(s):t[e.handler];R(i)&&ln(r,i,e)}}function jn(e){const t=e.type,{mixins:s,extends:n}=t,{mixins:r,optionsCache:i,config:{optionMergeStrategies:l}}=e.appContext,o=i.get(t);let a;return o?a=o:!r.length&&!s&&!n?a=t:(a={},r.length&&r.forEach(d=>Ms(a,d,l,!0)),Ms(a,t,l)),Y(t)&&i.set(t,a),a}function Ms(e,t,s,n=!1){const{mixins:r,extends:i}=t;i&&Ms(e,i,s,!0),r&&r.forEach(l=>Ms(e,l,s,!0));for(const l in t)if(!(n&&l==="expose")){const o=_o[l]||s&&s[l];e[l]=o?o(e[l],t[l]):t[l]}return e}var _o={data:lr,props:or,emits:or,methods:Jt,computed:Jt,beforeCreate:be,created:be,beforeMount:be,mounted:be,beforeUpdate:be,updated:be,beforeDestroy:be,beforeUnmount:be,destroyed:be,unmounted:be,activated:be,deactivated:be,errorCaptured:be,serverPrefetch:be,components:Jt,directives:Jt,watch:bo,provide:lr,inject:yo};function lr(e,t){return t?e?function(){return re(R(e)?e.call(this,this):e,R(t)?t.call(this,this):t)}:t:e}function yo(e,t){return Jt(Cn(e),Cn(t))}function Cn(e){if(A(e)){const t={};for(let s=0;s{let c,p=G,y;return Yl(()=>{const S=e[r];we(c,S)&&(c=S,d())}),{get(){return a(),s.get?s.get(c):c},set(S){const F=s.set?s.set(S):S;if(!we(F,c)&&!(p!==G&&we(S,p)))return;const I=n.vnode.props;I&&(t in I||r in I||i in I)&&(`onUpdate:${t}`in I||`onUpdate:${r}`in I||`onUpdate:${i}`in I)||(c=S,d()),n.emit(`update:${t}`,F),we(S,F)&&we(S,p)&&!we(F,y)&&d(),p=S,y=F}}});return o[Symbol.iterator]=()=>{let a=0;return{next(){return a<2?{value:a++?l||G:o,done:!1}:{done:!0}}}},o}var Ai=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${tt(t)}Modifiers`]||e[`${ht(t)}Modifiers`];function Co(e,t,...s){if(e.isUnmounted)return;const n=e.vnode.props||G;let r=s;const i=t.startsWith("update:"),l=i&&Ai(n,t.slice(7));l&&(l.trim&&(r=s.map(c=>le(c)?c.trim():c)),l.number&&(r=s.map(Rs)));let o,a=n[o=en(t)]||n[o=en(tt(t))];!a&&i&&(a=n[o=en(ht(t))]),a&&He(a,e,6,r);const d=n[o+"Once"];if(d){if(!e.emitted)e.emitted={};else if(e.emitted[o])return;e.emitted[o]=!0,He(d,e,6,r)}}var To=new WeakMap;function Mi(e,t,s=!1){const n=s?To:t.emitsCache,r=n.get(e);if(r!==void 0)return r;const i=e.emits;let l={},o=!1;if(!R(e)){const a=d=>{const c=Mi(d,t,!0);c&&(o=!0,re(l,c))};!s&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}return!i&&!o?(Y(e)&&n.set(e,null),null):(A(i)?i.forEach(a=>l[a]=null):re(l,i),Y(e)&&n.set(e,l),l)}function qs(e,t){return!e||!Vs(t)?!1:(t=t.slice(2).replace(/Once$/,""),J(e,t[0].toLowerCase()+t.slice(1))||J(e,ht(t))||J(e,t))}function un(e){const{type:t,vnode:s,proxy:n,withProxy:r,propsOptions:[i],slots:l,attrs:o,emit:a,render:d,renderCache:c,props:p,data:y,setupState:S,ctx:F,inheritAttrs:I}=e,H=ws(e);let N,L;try{if(s.shapeFlag&4){const M=r||n,X=M;N=Ke(d.call(X,M,c,p,S,y,F)),L=o}else{const M=t;N=Ke(M.length>1?M(p,{attrs:o,slots:l,emit:a}):M(p,null)),L=t.props?o:Eo(o)}}catch(M){es.length=0,Us(M,e,1),N=$(ve)}let k=N;if(L&&I!==!1){const M=Object.keys(L),{shapeFlag:X}=k;M.length&&X&7&&(i&&M.some(In)&&(L=wo(L,i)),k=dt(k,L,!1,!0))}return s.dirs&&(k=dt(k,null,!1,!0),k.dirs=k.dirs?k.dirs.concat(s.dirs):s.dirs),s.transition&&rs(k,s.transition),N=k,ws(H),N}var Eo=e=>{let t;for(const s in e)(s==="class"||s==="style"||Vs(s))&&((t||(t={}))[s]=e[s]);return t},wo=(e,t)=>{const s={};for(const n in e)(!In(n)||!(n.slice(9)in t))&&(s[n]=e[n]);return s};function Io(e,t,s){const{props:n,children:r,component:i}=e,{props:l,children:o,patchFlag:a}=t,d=i.emitsOptions;if(t.dirs||t.transition)return!0;if(s&&a>=0){if(a&1024)return!0;if(a&16)return n?ar(n,l,d):!!l;if(a&8){const c=t.dynamicProps;for(let p=0;pObject.create(Fi),Li=e=>Object.getPrototypeOf(e)===Fi;function Ao(e,t,s,n=!1){const r={},i=$i();e.propsDefaults=Object.create(null),Vi(e,t,r,i);for(const l in e.propsOptions[0])l in r||(r[l]=void 0);s?e.props=n?r:Fl(r):e.type.props?e.props=r:e.props=i,e.attrs=i}function Mo(e,t,s,n){const{props:r,attrs:i,vnode:{patchFlag:l}}=e,o=W(r),[a]=e.propsOptions;let d=!1;if((n||l>0)&&!(l&16)){if(l&8){const c=e.vnode.dynamicProps;for(let p=0;p{a=!0;const[y,S]=Ni(p,t,!0);re(l,y),S&&o.push(...S)};!s&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}if(!i&&!a)return Y(e)&&n.set(e,Ft),Ft;if(A(i))for(let c=0;ce==="_"||e==="_ctx"||e==="$stable",kn=e=>A(e)?e.map(Ke):[Ke(e)],Fo=(e,t,s)=>{if(t._n)return t;const n=ft((...r)=>kn(t(...r)),s);return n._c=!1,n},Ri=(e,t,s)=>{const n=e._ctx;for(const r in e){if(Un(r))continue;const i=e[r];if(R(i))t[r]=Fo(r,i,n);else if(i!=null){const l=kn(i);t[r]=()=>l}}},Di=(e,t)=>{const s=kn(t);e.slots.default=()=>s},Hi=(e,t,s)=>{for(const n in t)(s||!Un(n))&&(e[n]=t[n])},$o=(e,t,s)=>{const n=e.slots=$i();if(e.vnode.shapeFlag&32){const r=t._;r?(Hi(n,t,s),s&&kr(n,"_",r,!0)):Ri(t,n)}else t&&Di(e,t)},Lo=(e,t,s)=>{const{vnode:n,slots:r}=e;let i=!0,l=G;if(n.shapeFlag&32){const o=t._;o?s&&o===1?i=!1:Hi(r,t,s):(i=!t.$stable,Ri(t,r)),l=t}else t&&(Di(e,t),l={default:1});if(i)for(const o in r)!Un(o)&&l[o]==null&&delete r[o]};var Te=Ho;function Vo(e){return No(e)}function No(e,t){const s=Ds();s.__VUE__=!0;const{insert:n,remove:r,patchProp:i,createElement:l,createText:o,createComment:a,setText:d,setElementText:c,parentNode:p,nextSibling:y,setScopeId:S=We,insertStaticContent:F}=e,I=(u,f,h,_=null,v=null,g=null,T=void 0,C=null,x=!!f.dynamicChildren)=>{if(u===f)return;u&&!St(u,f)&&(_=gs(u),lt(u,v,g,!0),u=null),f.patchFlag===-2&&(x=!1,f.dynamicChildren=null);const{type:m,ref:P,shapeFlag:E}=f;switch(m){case Js:H(u,f,h,_);break;case ve:N(u,f,h,_);break;case fn:u==null&&L(f,h,_,T);break;case ie:w(u,f,h,_,v,g,T,C,x);break;default:E&1?X(u,f,h,_,v,g,T,C,x):E&6?Z(u,f,h,_,v,g,T,C,x):(E&64||E&128)&&m.process(u,f,h,_,v,g,T,C,x,wt)}P!=null&&v?Qt(P,u&&u.ref,g,f||u,!f):P==null&&u&&u.ref!=null&&Qt(u.ref,null,g,u,!0)},H=(u,f,h,_)=>{if(u==null)n(f.el=o(f.children),h,_);else{const v=f.el=u.el;f.children!==u.children&&d(v,f.children)}},N=(u,f,h,_)=>{u==null?n(f.el=a(f.children||""),h,_):f.el=u.el},L=(u,f,h,_)=>{[u.el,u.anchor]=F(u.children,f,h,_,u.el,u.anchor)},k=({el:u,anchor:f},h,_)=>{let v;for(;u&&u!==f;)v=y(u),n(u,h,_),u=v;n(f,h,_)},M=({el:u,anchor:f})=>{let h;for(;u&&u!==f;)h=y(u),r(u),u=h;r(f)},X=(u,f,h,_,v,g,T,C,x)=>{if(f.type==="svg"?T="svg":f.type==="math"&&(T="mathml"),u==null)ue(f,h,_,v,g,T,C,x);else{const m=u.el&&u.el._isVueCE?u.el:null;try{m&&m._beginPatch(),D(u,f,v,g,T,C,x)}finally{m&&m._endPatch()}}},ue=(u,f,h,_,v,g,T,C)=>{let x,m;const{props:P,shapeFlag:E,transition:O,dirs:V}=u;if(x=u.el=l(u.type,g,P&&P.is,P),E&8?c(x,u.children):E&16&&ye(u.children,x,null,_,v,cn(u,g),T,C),V&>(u,null,_,"created"),de(x,u,u.scopeId,T,_),P){for(const ne in P)ne!=="value"&&!Yt(ne)&&i(x,ne,null,P[ne],g,_);"value"in P&&i(x,"value",null,P.value,g),(m=P.onVnodeBeforeMount)&&Be(m,_,u)}V&>(u,null,_,"beforeMount");const B=Ro(v,O);B&&O.beforeEnter(x),n(x,f,h),((m=P&&P.onVnodeMounted)||B||V)&&Te(()=>{m&&Be(m,_,u),B&&O.enter(x),V&>(u,null,_,"mounted")},v)},de=(u,f,h,_,v)=>{if(h&&S(u,h),_)for(let g=0;g<_.length;g++)S(u,_[g]);if(v){let g=v.subTree;if(f===g||ki(g.type)&&(g.ssContent===f||g.ssFallback===f)){const T=v.vnode;de(u,T,T.scopeId,T.slotScopeIds,v.parent)}}},ye=(u,f,h,_,v,g,T,C,x=0)=>{for(let m=x;m{const C=f.el=u.el;let{patchFlag:x,dynamicChildren:m,dirs:P}=f;x|=u.patchFlag&16;const E=u.props||G,O=f.props||G;let V;if(h&&mt(h,!1),(V=O.onVnodeBeforeUpdate)&&Be(V,h,f,u),P&>(f,u,h,"beforeUpdate"),h&&mt(h,!0),(E.innerHTML&&O.innerHTML==null||E.textContent&&O.textContent==null)&&c(C,""),m?q(u.dynamicChildren,m,C,h,_,cn(f,v),g):T||j(u,f,C,null,h,_,cn(f,v),g,!1),x>0){if(x&16)se(C,E,O,h,v);else if(x&2&&E.class!==O.class&&i(C,"class",null,O.class,v),x&4&&i(C,"style",E.style,O.style,v),x&8){const B=f.dynamicProps;for(let ne=0;ne{V&&Be(V,h,f,u),P&>(f,u,h,"updated")},_)},q=(u,f,h,_,v,g,T)=>{for(let C=0;C{if(f!==h){if(f!==G)for(const g in f)!Yt(g)&&!(g in h)&&i(u,g,f[g],null,v,_);for(const g in h){if(Yt(g))continue;const T=h[g],C=f[g];T!==C&&g!=="value"&&i(u,g,C,T,v,_)}"value"in h&&i(u,"value",f.value,h.value,v)}},w=(u,f,h,_,v,g,T,C,x)=>{const m=f.el=u?u.el:o(""),P=f.anchor=u?u.anchor:o("");let{patchFlag:E,dynamicChildren:O,slotScopeIds:V}=f;V&&(C=C?C.concat(V):V),u==null?(n(m,h,_),n(P,h,_),ye(f.children||[],h,P,v,g,T,C,x)):E>0&&E&64&&O&&u.dynamicChildren&&u.dynamicChildren.length===O.length?(q(u.dynamicChildren,O,h,v,g,T,C),(f.key!=null||v&&f===v.subTree)&&ji(u,f,!0)):j(u,f,h,P,v,g,T,C,x)},Z=(u,f,h,_,v,g,T,C,x)=>{f.slotScopeIds=C,u==null?f.shapeFlag&512?v.ctx.activate(f,h,_,T,x):ce(f,h,_,v,g,T,x):Le(u,f,x)},ce=(u,f,h,_,v,g,T)=>{const C=u.component=qo(u,_,v);if(ks(u)&&(C.ctx.renderer=wt),Jo(C,!1,T),C.asyncDep){if(v&&v.registerDep(C,oe,T),!u.el){const x=C.subTree=$(ve);N(null,x,f,h),u.placeholder=x.el}}else oe(C,u,f,h,v,g,T)},Le=(u,f,h)=>{const _=f.component=u.component;if(Io(u,f,h))if(_.asyncDep&&!_.asyncResolved){K(_,f,h);return}else _.next=f,_.update();else f.el=u.el,_.vnode=f},oe=(u,f,h,_,v,g,T)=>{const C=()=>{if(u.isMounted){let{next:E,bu:O,u:V,parent:B,vnode:ne}=u;{const Ie=Bi(u);if(Ie){E&&(E.el=ne.el,K(u,E,T)),Ie.asyncDep.then(()=>{Te(()=>{u.isUnmounted||m()},v)});return}}let z=E,Ce;mt(u,!1),E?(E.el=ne.el,K(u,E,T)):E=ne,O&&Ss(O),(Ce=E.props&&E.props.onVnodeBeforeUpdate)&&Be(Ce,B,E,ne),mt(u,!0);const pe=un(u),Ve=u.subTree;u.subTree=pe,I(Ve,pe,p(Ve.el),gs(Ve),u,v,g),E.el=pe.el,z===null&&Oo(u,pe.el),V&&Te(V,v),(Ce=E.props&&E.props.onVnodeUpdated)&&Te(()=>Be(Ce,B,E,ne),v)}else{let E;const{el:O,props:V}=f,{bm:B,m:ne,parent:z,root:Ce,type:pe}=u,Ve=Nt(f);if(mt(u,!1),B&&Ss(B),!Ve&&(E=V&&V.onVnodeBeforeMount)&&Be(E,z,f),mt(u,!0),O&&Zs){const Ie=()=>{u.subTree=un(u),Zs(O,u.subTree,u,v,null)};Ve&&pe.__asyncHydrate?pe.__asyncHydrate(O,u,Ie):Ie()}else{Ce.ce&&Ce.ce._hasShadowRoot()&&Ce.ce._injectChildStyle(pe);const Ie=u.subTree=un(u);I(null,Ie,h,_,u,v,g),f.el=Ie.el}if(ne&&Te(ne,v),!Ve&&(E=V&&V.onVnodeMounted)){const Ie=f;Te(()=>Be(E,z,Ie),v)}(f.shapeFlag&256||z&&Nt(z.vnode)&&z.vnode.shapeFlag&256)&&u.a&&Te(u.a,v),u.isMounted=!0,f=h=_=null}};u.scope.on();const x=u.effect=new Jr(C);u.scope.off();const m=u.update=x.run.bind(x),P=u.job=x.runIfDirty.bind(x);P.i=u,P.id=u.uid,x.scheduler=()=>Rn(P),mt(u,!0),m()},K=(u,f,h)=>{f.component=u;const _=u.vnode.props;u.vnode=f,u.next=null,Mo(u,f.props,_,h),Lo(u,f.children,h),st(),tr(u),nt()},j=(u,f,h,_,v,g,T,C,x=!1)=>{const m=u&&u.children,P=u?u.shapeFlag:0,E=f.children,{patchFlag:O,shapeFlag:V}=f;if(O>0){if(O&128){hs(m,E,h,_,v,g,T,C,x);return}else if(O&256){Ge(m,E,h,_,v,g,T,C,x);return}}V&8?(P&16&&kt(m,v,g),E!==m&&c(h,E)):P&16?V&16?hs(m,E,h,_,v,g,T,C,x):kt(m,v,g,!0):(P&8&&c(h,""),V&16&&ye(E,h,_,v,g,T,C,x))},Ge=(u,f,h,_,v,g,T,C,x)=>{u=u||Ft,f=f||Ft;const m=u.length,P=f.length,E=Math.min(m,P);let O;for(O=0;OP?kt(u,v,g,!0,!1,E):ye(f,h,_,v,g,T,C,x,E)},hs=(u,f,h,_,v,g,T,C,x)=>{let m=0;const P=f.length;let E=u.length-1,O=P-1;for(;m<=E&&m<=O;){const V=u[m],B=f[m]=x?Xe(f[m]):Ke(f[m]);if(St(V,B))I(V,B,h,null,v,g,T,C,x);else break;m++}for(;m<=E&&m<=O;){const V=u[E],B=f[O]=x?Xe(f[O]):Ke(f[O]);if(St(V,B))I(V,B,h,null,v,g,T,C,x);else break;E--,O--}if(m>E){if(m<=O){const V=O+1,B=VO)for(;m<=E;)lt(u[m],v,g,!0),m++;else{const V=m,B=m,ne=new Map;for(m=B;m<=O;m++){const Oe=f[m]=x?Xe(f[m]):Ke(f[m]);Oe.key!=null&&ne.set(Oe.key,m)}let z,Ce=0;const pe=O-B+1;let Ve=!1,Ie=0;const Kt=new Array(pe);for(m=0;m=pe){lt(Oe,v,g,!0);continue}let je;if(Oe.key!=null)je=ne.get(Oe.key);else for(z=B;z<=O;z++)if(Kt[z-B]===0&&St(Oe,f[z])){je=z;break}je===void 0?lt(Oe,v,g,!0):(Kt[je-B]=m+1,je>=Ie?Ie=je:Ve=!0,I(Oe,f[je],h,null,v,g,T,C,x),Ce++)}const Jn=Ve?Do(Kt):Ft;for(z=Jn.length-1,m=pe-1;m>=0;m--){const Oe=B+m,je=f[Oe],Yn=f[Oe+1],zn=Oe+1{const{el:g,type:T,transition:C,children:x,shapeFlag:m}=u;if(m&6){vs(u.component.subTree,f,h,_);return}if(m&128){u.suspense.move(f,h,_);return}if(m&64){T.move(u,f,h,wt);return}if(T===ie){n(g,f,h);for(let P=0;PC.enter(g),v);else{const{leave:P,delayLeave:E,afterLeave:O}=C,V=()=>{u.ctx.isUnmounted?r(g):n(g,f,h)},B=()=>{g._isLeaving&&g[ke](!0),P(g,()=>{V(),O&&O()})};E?E(g,V,B):B()}else n(g,f,h)},lt=(u,f,h,_=!1,v=!1)=>{const{type:g,props:T,ref:C,children:x,dynamicChildren:m,shapeFlag:P,patchFlag:E,dirs:O,cacheIndex:V}=u;if(E===-2&&(v=!1),C!=null&&(st(),Qt(C,null,h,u,!0),nt()),V!=null&&(f.renderCache[V]=void 0),P&256){f.ctx.deactivate(u);return}const B=P&1&&O,ne=!Nt(u);let z;if(ne&&(z=T&&T.onVnodeBeforeUnmount)&&Be(z,f,u),P&6)el(u.component,h,_);else{if(P&128){u.suspense.unmount(h,_);return}B&>(u,null,f,"beforeUnmount"),P&64?u.type.remove(u,f,h,wt,_):m&&!m.hasOnce&&(g!==ie||E>0&&E&64)?kt(m,f,h,!1,!0):(g===ie&&E&384||!v&&P&16)&&kt(x,f,h),_&&Gn(u)}(ne&&(z=T&&T.onVnodeUnmounted)||B)&&Te(()=>{z&&Be(z,f,u),B&>(u,null,f,"unmounted")},h)},Gn=u=>{const{type:f,el:h,anchor:_,transition:v}=u;if(f===ie){Zi(h,_);return}if(f===fn){M(u);return}const g=()=>{r(h),v&&!v.persisted&&v.afterLeave&&v.afterLeave()};if(u.shapeFlag&1&&v&&!v.persisted){const{leave:T,delayLeave:C}=v,x=()=>T(h,g);C?C(u.el,g,x):x()}else g()},Zi=(u,f)=>{let h;for(;u!==f;)h=y(u),r(u),u=h;r(f)},el=(u,f,h)=>{const{bum:_,scope:v,job:g,subTree:T,um:C,m:x,a:m}=u;cr(x),cr(m),_&&Ss(_),v.stop(),g&&(g.flags|=8,lt(T,u,f,h)),C&&Te(C,f),Te(()=>{u.isUnmounted=!0},f)},kt=(u,f,h,_=!1,v=!1,g=0)=>{for(let T=g;T{if(u.shapeFlag&6)return gs(u.component.subTree);if(u.shapeFlag&128)return u.suspense.next();const f=y(u.anchor||u.el),h=f&&f[Xl];return h?y(h):f};let Xs=!1;const qn=(u,f,h)=>{let _;u==null?f._vnode&&(lt(f._vnode,null,null,!0),_=f._vnode.component):I(f._vnode||null,u,f,null,null,null,h),f._vnode=u,Xs||(Xs=!0,tr(_),di(),Xs=!1)},wt={p:I,um:lt,m:vs,r:Gn,mt:ce,mc:ye,pc:j,pbc:q,n:gs,o:e};let Qs,Zs;return t&&([Qs,Zs]=t(wt)),{render:qn,hydrate:Qs,createApp:xo(qn,Qs)}}function cn({type:e,props:t},s){return s==="svg"&&e==="foreignObject"||s==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:s}function mt({effect:e,job:t},s){s?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Ro(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function ji(e,t,s=!1){const n=e.children,r=t.children;if(A(n)&&A(r))for(let i=0;i>1,e[s[o]]0&&(t[n]=s[i-1]),s[i]=n)}}for(i=s.length,l=s[i-1];i-- >0;)s[i]=l,l=t[l];return s}function Bi(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Bi(t)}function cr(e){if(e)for(let t=0;te.__isSuspense;function Ho(e,t){t&&t.pendingBranch?A(e)?t.effects.push(...e):t.effects.push(e):Wl(e)}var ie=Symbol.for("v-fgt"),Js=Symbol.for("v-txt"),ve=Symbol.for("v-cmt"),fn=Symbol.for("v-stc"),es=[],Ae=null;function U(e=!1){es.push(Ae=e?null:[])}function jo(){es.pop(),Ae=es[es.length-1]||null}var is=1;function Ps(e,t=!1){is+=e,e<0&&Ae&&t&&(Ae.hasOnce=!0)}function Ki(e){return e.dynamicChildren=is>0?Ae||Ft:null,jo(),is>0&&Ae&&Ae.push(e),e}function te(e,t,s,n,r,i){return Ki(ae(e,t,s,n,r,i,!0))}function Tt(e,t,s,n,r){return Ki($(e,t,s,n,r,!0))}function ls(e){return e?e.__v_isVNode===!0:!1}function St(e,t){return e.type===t.type&&e.key===t.key}var Wi=({key:e})=>e??null,xs=({ref:e,ref_key:t,ref_for:s})=>(typeof e=="number"&&(e=""+e),e!=null?le(e)||me(e)||R(e)?{i:ge,r:e,k:t,f:!!s}:e:null);function ae(e,t=null,s=null,n=0,r=null,i=e===ie?0:1,l=!1,o=!1){const a={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Wi(t),ref:t&&xs(t),scopeId:hi,slotScopeIds:null,children:s,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:n,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:ge};return o?(Kn(a,s),i&128&&e.normalize(a)):s&&(a.shapeFlag|=le(s)?8:16),is>0&&!l&&Ae&&(a.patchFlag>0||i&6)&&a.patchFlag!==32&&Ae.push(a),a}var $=Bo;function Bo(e,t=null,s=null,n=0,r=null,i=!1){if((!e||e===po)&&(e=ve),ls(e)){const o=dt(e,t,!0);return s&&Kn(o,s),is>0&&!i&&Ae&&(o.shapeFlag&6?Ae[Ae.indexOf(e)]=o:Ae.push(o)),o.patchFlag=-2,o}if(Qo(e)&&(e=e.__vccOpts),t){t=Uo(t);let{class:o,style:a}=t;o&&!le(o)&&(t.class=Q(o)),Y(a)&&(Nn(a)&&!A(a)&&(a=re({},a)),t.style=Et(a))}const l=le(e)?1:ki(e)?128:gi(e)?64:Y(e)?4:R(e)?2:0;return ae(e,t,s,n,r,l,i,!0)}function Uo(e){return e?Nn(e)||Li(e)?re({},e):e:null}function dt(e,t,s=!1,n=!1){const{props:r,ref:i,patchFlag:l,children:o,transition:a}=e,d=t?Ko(r||{},t):r,c={__v_isVNode:!0,__v_skip:!0,type:e.type,props:d,key:d&&Wi(d),ref:t&&t.ref?s&&i?A(i)?i.concat(xs(t)):[i,xs(t)]:xs(t):i,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:o,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==ie?l===-1?16:l|16:l,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:a,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&dt(e.ssContent),ssFallback:e.ssFallback&&dt(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return a&&n&&rs(c,a.clone(c)),c}function ko(e=" ",t=0){return $(Js,null,e,t)}function Fs(e="",t=!1){return t?(U(),Tt(ve,null,e)):$(ve,null,e)}function Ke(e){return e==null||typeof e=="boolean"?$(ve):A(e)?$(ie,null,e.slice()):ls(e)?Xe(e):$(Js,null,String(e))}function Xe(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:dt(e)}function Kn(e,t){let s=0;const{shapeFlag:n}=e;if(t==null)t=null;else if(A(t))s=16;else if(typeof t=="object")if(n&65){const r=t.default;r&&(r._c&&(r._d=!1),Kn(e,r()),r._c&&(r._d=!0));return}else{s=32;const r=t._;!r&&!Li(t)?t._ctx=ge:r===3&&ge&&(ge.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else R(t)?(t={default:t,_ctx:ge},s=32):(t=String(t),n&64?(s=16,t=[ko(t)]):s=8);e.children=t,e.shapeFlag|=s}function Ko(...e){const t={};for(let s=0;sxe||ge,$s,En;{const e=Ds(),t=(s,n)=>{let r;return(r=e[s])||(r=e[s]=[]),r.push(n),i=>{r.length>1?r.forEach(l=>l(i)):r[0](i)}};$s=t("__VUE_INSTANCE_SETTERS__",s=>xe=s),En=t("__VUE_SSR_SETTERS__",s=>os=s)}var ps=e=>{const t=xe;return $s(e),e.scope.on(),()=>{e.scope.off(),$s(t)}},fr=()=>{xe&&xe.scope.off(),$s(null)};function Gi(e){return e.vnode.shapeFlag&4}var os=!1;function Jo(e,t=!1,s=!1){t&&En(t);const{props:n,children:r}=e.vnode,i=Gi(e);Ao(e,n,i,t),$o(e,r,s||t);const l=i?Yo(e,t):void 0;return t&&En(!1),l}function Yo(e,t){const s=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,ho);const{setup:n}=s;if(n){st();const r=e.setupContext=n.length>1?Xo(e):null,i=ps(e),l=ds(n,e,0,[e.props,r]),o=Hr(l);if(nt(),i(),(o||e.sp)&&!Nt(e)&&xi(e),o){if(l.then(fr,fr),t)return l.then(a=>{dr(e,a,t)}).catch(a=>{Us(a,e,0)});e.asyncDep=l}else dr(e,l,t)}else qi(e,t)}function dr(e,t,s){R(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:Y(t)&&(e.setupState=ai(t)),qi(e,s)}var pr,hr;function qi(e,t,s){const n=e.type;if(!e.render){if(!t&&pr&&!n.render){const r=n.template||jn(e).template;if(r){const{isCustomElement:i,compilerOptions:l}=e.appContext.config,{delimiters:o,compilerOptions:a}=n,d=re(re({isCustomElement:i,delimiters:o},l),a);n.render=pr(r,d)}}e.render=n.render||We,hr&&hr(e)}{const r=ps(e);st();try{go(e)}finally{nt(),r()}}}var zo={get(e,t){return he(e,"get",""),e[t]}};function Xo(e){const t=s=>{e.exposed=s||{}};return{attrs:new Proxy(e.attrs,zo),slots:e.slots,emit:e.emit,expose:t}}function zs(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(ai($l(e.exposed)),{get(t,s){if(s in t)return t[s];if(s in Zt)return Zt[s](e)},has(t,s){return s in t||s in Zt}})):e.proxy}function Qo(e){return R(e)&&"__vccOpts"in e}var Wn=(e,t)=>jl(e,t,os);function Zo(e,t,s){try{Ps(-1);const n=arguments.length;return n===2?Y(t)&&!A(t)?ls(t)?$(e,null,[t]):$(e,t):$(e,null,t):(n>3?s=Array.prototype.slice.call(arguments,2):n===3&&ls(s)&&(s=[s]),$(e,t,s))}finally{Ps(1)}}var ea="3.5.28";var wn=void 0,vr=typeof window<"u"&&window.trustedTypes;if(vr)try{wn=vr.createPolicy("vue",{createHTML:e=>e})}catch{}var Ji=wn?e=>wn.createHTML(e):e=>e,ta="http://www.w3.org/2000/svg",sa="http://www.w3.org/1998/Math/MathML",ze=typeof document<"u"?document:null,gr=ze&&ze.createElement("template"),na={insert:(e,t,s)=>{t.insertBefore(e,s||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,s,n)=>{const r=t==="svg"?ze.createElementNS(ta,e):t==="mathml"?ze.createElementNS(sa,e):s?ze.createElement(e,{is:s}):ze.createElement(e);return e==="select"&&n&&n.multiple!=null&&r.setAttribute("multiple",n.multiple),r},createText:e=>ze.createTextNode(e),createComment:e=>ze.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>ze.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,s,n,r,i){const l=s?s.previousSibling:t.lastChild;if(r&&(r===i||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),s),!(r===i||!(r=r.nextSibling)););else{gr.innerHTML=Ji(n==="svg"?`${e}`:n==="mathml"?`${e}`:e);const o=gr.content;if(n==="svg"||n==="mathml"){const a=o.firstChild;for(;a.firstChild;)o.appendChild(a.firstChild);o.removeChild(a)}t.insertBefore(o,s)}return[l?l.nextSibling:t.firstChild,s?s.previousSibling:t.lastChild]}},ot="transition",qt="animation",as=Symbol("_vtc"),Yi={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},ra=re({},mi,Yi),ia=e=>(e.displayName="Transition",e.props=ra,e),la=ia((e,{slots:t})=>Zo(eo,oa(e),t)),_t=(e,t=[])=>{A(e)?e.forEach(s=>s(...t)):e&&e(...t)},mr=e=>e?A(e)?e.some(t=>t.length>1):e.length>1:!1;function oa(e){const t={};for(const w in e)w in Yi||(t[w]=e[w]);if(e.css===!1)return t;const{name:s="v",type:n,duration:r,enterFromClass:i=`${s}-enter-from`,enterActiveClass:l=`${s}-enter-active`,enterToClass:o=`${s}-enter-to`,appearFromClass:a=i,appearActiveClass:d=l,appearToClass:c=o,leaveFromClass:p=`${s}-leave-from`,leaveActiveClass:y=`${s}-leave-active`,leaveToClass:S=`${s}-leave-to`}=e,F=aa(r),I=F&&F[0],H=F&&F[1],{onBeforeEnter:N,onEnter:L,onEnterCancelled:k,onLeave:M,onLeaveCancelled:X,onBeforeAppear:ue=N,onAppear:de=L,onAppearCancelled:ye=k}=t,D=(w,Z,ce,Le)=>{w._enterCancelled=Le,yt(w,Z?c:o),yt(w,Z?d:l),ce&&ce()},q=(w,Z)=>{w._isLeaving=!1,yt(w,p),yt(w,S),yt(w,y),Z&&Z()},se=w=>(Z,ce)=>{const Le=w?de:L,oe=()=>D(Z,w,ce);_t(Le,[Z,oe]),_r(()=>{yt(Z,w?a:i),Je(Z,w?c:o),mr(Le)||yr(Z,n,I,oe)})};return re(t,{onBeforeEnter(w){_t(N,[w]),Je(w,i),Je(w,l)},onBeforeAppear(w){_t(ue,[w]),Je(w,a),Je(w,d)},onEnter:se(!1),onAppear:se(!0),onLeave(w,Z){w._isLeaving=!0;const ce=()=>q(w,Z);Je(w,p),w._enterCancelled?(Je(w,y),xr(w)):(xr(w),Je(w,y)),_r(()=>{w._isLeaving&&(yt(w,p),Je(w,S),mr(M)||yr(w,n,H,ce))}),_t(M,[w,ce])},onEnterCancelled(w){D(w,!1,void 0,!0),_t(k,[w])},onAppearCancelled(w){D(w,!0,void 0,!0),_t(ye,[w])},onLeaveCancelled(w){q(w),_t(X,[w])}})}function aa(e){if(e==null)return null;if(Y(e))return[dn(e.enter),dn(e.leave)];{const t=dn(e);return[t,t]}}function dn(e){return il(e)}function Je(e,t){t.split(/\s+/).forEach(s=>s&&e.classList.add(s)),(e[as]||(e[as]=new Set)).add(t)}function yt(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.remove(n));const s=e[as];s&&(s.delete(t),s.size||(e[as]=void 0))}function _r(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}var ua=0;function yr(e,t,s,n){const r=e._endId=++ua,i=()=>{r===e._endId&&n()};if(s!=null)return setTimeout(i,s);const{type:l,timeout:o,propCount:a}=ca(e,t);if(!l)return n();const d=l+"end";let c=0;const p=()=>{e.removeEventListener(d,y),i()},y=S=>{S.target===e&&++c>=a&&p()};setTimeout(()=>{c(s[F]||"").split(", "),r=n(`${ot}Delay`),i=n(`${ot}Duration`),l=br(r,i),o=n(`${qt}Delay`),a=n(`${qt}Duration`),d=br(o,a);let c=null,p=0,y=0;t===ot?l>0&&(c=ot,p=l,y=i.length):t===qt?d>0&&(c=qt,p=d,y=a.length):(p=Math.max(l,d),c=p>0?l>d?ot:qt:null,y=c?c===ot?i.length:a.length:0);const S=c===ot&&/\b(?:transform|all)(?:,|$)/.test(n(`${ot}Property`).toString());return{type:c,timeout:p,propCount:y,hasTransform:S}}function br(e,t){for(;e.lengthSr(s)+Sr(e[n])))}function Sr(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function xr(e){return(e?e.ownerDocument:document).body.offsetHeight}function fa(e,t,s){const n=e[as];n&&(t=(t?[t,...n]:[...n]).join(" ")),t==null?e.removeAttribute("class"):s?e.setAttribute("class",t):e.className=t}var Cr=Symbol("_vod"),da=Symbol("_vsh"),pa=Symbol(""),ha=/(?:^|;)\s*display\s*:/;function va(e,t,s){const n=e.style,r=le(s);let i=!1;if(s&&!r){if(t)if(le(t))for(const l of t.split(";")){const o=l.slice(0,l.indexOf(":")).trim();s[o]==null&&Cs(n,o,"")}else for(const l in t)s[l]==null&&Cs(n,l,"");for(const l in s)l==="display"&&(i=!0),Cs(n,l,s[l])}else if(r){if(t!==s){const l=n[pa];l&&(s+=";"+l),n.cssText=s,i=ha.test(s)}}else t&&e.removeAttribute("style");Cr in e&&(e[Cr]=i?n.display:"",e[da]&&(n.display="none"))}var Tr=/\s*!important$/;function Cs(e,t,s){if(A(s))s.forEach(n=>Cs(e,t,n));else if(s==null&&(s=""),t.startsWith("--"))e.setProperty(t,s);else{const n=ga(e,t);Tr.test(s)?e.setProperty(ht(n),s.replace(Tr,""),"important"):e[n]=s}}var Er=["Webkit","Moz","ms"],pn={};function ga(e,t){const s=pn[t];if(s)return s;let n=tt(t);if(n!=="filter"&&n in e)return pn[t]=n;n=Ur(n);for(let r=0;rhn||(ba.then(()=>hn=0),hn=Date.now());function xa(e,t){const s=n=>{if(!n._vts)n._vts=Date.now();else if(n._vts<=s.attached)return;He(Ca(n,s.value),t,5,[n])};return s.value=e,s.attached=Sa(),s}function Ca(e,t){if(A(t)){const s=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{s.call(e),e._stopped=!0},t.map(n=>r=>!r._stopped&&n&&n(r))}else return t}var Pr=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Ta=(e,t,s,n,r,i)=>{const l=r==="svg";t==="class"?fa(e,n,l):t==="style"?va(e,s,n):Vs(t)?In(t)||_a(e,t,s,n,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Ea(e,t,n,l))?(Or(e,t,n),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Ir(e,t,n,l,i,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!le(n))?Or(e,tt(t),n,i,t):(t==="true-value"?e._trueValue=n:t==="false-value"&&(e._falseValue=n),Ir(e,t,n,l))};function Ea(e,t,s,n){if(n)return!!(t==="innerHTML"||t==="textContent"||t in e&&Pr(t)&&R(s));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const r=e.tagName;if(r==="IMG"||r==="VIDEO"||r==="CANVAS"||r==="SOURCE")return!1}return Pr(t)&&le(s)?!1:t in e}var pt=e=>{const t=e.props["onUpdate:modelValue"]||!1;return A(t)?s=>Ss(t,s):t};function wa(e){e.target.composing=!0}function Fr(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}var $e=Symbol("_assign");function $r(e,t,s){return t&&(e=e.trim()),s&&(e=Rs(e)),e}var Lr={created(e,{modifiers:{lazy:t,trim:s,number:n}},r){e[$e]=pt(r);const i=n||r.props&&r.props.type==="number";et(e,t?"change":"input",l=>{l.target.composing||e[$e]($r(e.value,s,i))}),(s||i)&&et(e,"change",()=>{e.value=$r(e.value,s,i)}),t||(et(e,"compositionstart",wa),et(e,"compositionend",Fr),et(e,"change",Fr))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:s,modifiers:{lazy:n,trim:r,number:i}},l){if(e[$e]=pt(l),e.composing)return;const o=(i||e.type==="number")&&!/^0\d/.test(e.value)?Rs(e.value):e.value,a=t??"";o!==a&&(document.activeElement===e&&e.type!=="range"&&(n&&t===s||r&&e.value.trim()===a)||(e.value=a))}},Ia={deep:!0,created(e,t,s){e[$e]=pt(s),et(e,"change",()=>{const n=e._modelValue,r=Ht(e),i=e.checked,l=e[$e];if(A(n)){const o=Mn(n,r),a=o!==-1;if(i&&!a)l(n.concat(r));else if(!i&&a){const d=[...n];d.splice(o,1),l(d)}}else if(jt(n)){const o=new Set(n);i?o.add(r):o.delete(r),l(o)}else l(zi(e,i))})},mounted:Vr,beforeUpdate(e,t,s){e[$e]=pt(s),Vr(e,t,s)}};function Vr(e,{value:t,oldValue:s},n){e._modelValue=t;let r;if(A(t))r=Mn(t,n.props.value)>-1;else if(jt(t))r=t.has(n.props.value);else{if(t===s)return;r=ct(t,zi(e,!0))}e.checked!==r&&(e.checked=r)}var Oa={created(e,{value:t},s){e.checked=ct(t,s.props.value),e[$e]=pt(s),et(e,"change",()=>{e[$e](Ht(e))})},beforeUpdate(e,{value:t,oldValue:s},n){e[$e]=pt(n),t!==s&&(e.checked=ct(t,n.props.value))}},Aa={deep:!0,created(e,{value:t,modifiers:{number:s}},n){const r=jt(t);et(e,"change",()=>{const i=Array.prototype.filter.call(e.options,l=>l.selected).map(l=>s?Rs(Ht(l)):Ht(l));e[$e](e.multiple?r?new Set(i):i:i[0]),e._assigning=!0,ci(()=>{e._assigning=!1})}),e[$e]=pt(n)},mounted(e,{value:t}){Nr(e,t)},beforeUpdate(e,t,s){e[$e]=pt(s)},updated(e,{value:t}){e._assigning||Nr(e,t)}};function Nr(e,t){const s=e.multiple,n=A(t);if(!(s&&!n&&!jt(t))){for(let r=0,i=e.options.length;rString(d)===String(o)):l.selected=Mn(t,o)>-1}else l.selected=t.has(o);else if(ct(Ht(l),t)){e.selectedIndex!==r&&(e.selectedIndex=r);return}}!s&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Ht(e){return"_value"in e?e._value:e.value}function zi(e,t){const s=t?"_trueValue":"_falseValue";return s in e?e[s]:t}var Ma={created(e,t,s){bs(e,t,s,null,"created")},mounted(e,t,s){bs(e,t,s,null,"mounted")},beforeUpdate(e,t,s,n){bs(e,t,s,n,"beforeUpdate")},updated(e,t,s,n){bs(e,t,s,n,"updated")}};function Pa(e,t){switch(e){case"SELECT":return Aa;case"TEXTAREA":return Lr;default:switch(t){case"checkbox":return Ia;case"radio":return Oa;default:return Lr}}}function bs(e,t,s,n,r){const i=Pa(e.tagName,s.props&&s.props.type)[r];i&&i(e,t,s,n)}var Fa=re({patchProp:Ta},na),Rr;function $a(){return Rr||(Rr=Vo(Fa))}var La=((...e)=>{const t=$a().createApp(...e),{mount:s}=t;return t.mount=n=>{const r=Na(n);if(!r)return;const i=t._component;!R(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent="");const l=s(r,!1,Va(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),l},t});function Va(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Na(e){return le(e)?document.querySelector(e):e}var Ra=_e({__name:"ButtonPrimary",props:{isLoading:{type:Boolean},label:{}},emits:["click"],setup(e,{emit:t}){const s=t;function n(r){s("click",r)}return(r,i)=>(U(),te("button",{class:Q(["homey-button-primary-full",{"is-loading":e.isLoading}]),type:"button",onClick:n},fe(e.label),3))}}),Da=Ra,Ha=_e({__name:"ButtonTransparent",props:{label:{}},emits:["click"],setup(e,{emit:t}){const s=t;function n(r){s("click",r)}return(r,i)=>(U(),te("button",{class:"homey-button-transparent",type:"button",onClick:n},fe(e.label),1))}}),ja=Ha,Ba={class:"homey-form-fieldset"},Ua={class:"homey-form-legend"},ka={class:"homey-form-group",style:{"margin-top":"6px","text-wrap":"pretty"}},Ka={class:"homey-form-group"},Wa=_e({__name:"FormFieldset",props:{description:{},title:{}},setup(e){return(t,s)=>(U(),te("fieldset",Ba,[ae("legend",Ua,fe(e.title),1),ae("div",ka,fe(e.description),1),ae("div",Ka,[Os(t.$slots,"default")])]))}}),Ga=Wa,qa=_e({__name:"Icon",props:{icon:{}},setup(e){return(t,s)=>(U(),te("div",{class:Q(t.$style.uiIcon),"data-icon":"",style:Et({"--icon":JSON.stringify(e.icon),"--icon-secondary":JSON.stringify(e.icon+e.icon)})},null,6))}}),Ja="y",Ya={uiIcon:Ja},vt=(e,t)=>{const s=e.__vccOpts||e;for(const[n,r]of t)s[n]=r;return s},za={$style:Ya},us=vt(qa,[["__cssModules",za]]),Xa=["onClick"],Qa=_e({__name:"Category",props:{description:{},empty:{},items:{},title:{}},emits:["edit"],setup(e,{emit:t}){const s=t;function n(r){s("edit",r)}return(r,i)=>(U(),Tt(Ga,{title:e.title,description:e.description},{default:ft(()=>[e.items.length>0?(U(),te("div",{key:0,class:Q(r.$style.categoryItems)},[(U(!0),te(ie,null,Gs(e.items,l=>(U(),te("div",{key:l.name,class:Q(r.$style.categoryItem),onClick:o=>n(l)},[$(us,{class:Q(r.$style.categoryItemIcon),icon:l.icon??"",style:Et({"--color":l.color})},null,8,["class","icon","style"]),ae("span",{class:Q(r.$style.categoryItemCaption)},fe(l.name),3),$(us,{icon:"",style:{"--size":"16px"}})],10,Xa))),128))],2)):(U(),te("div",{key:1,class:Q(r.$style.categoryEmpty)},fe(e.empty),3))]),_:1},8,["title","description"]))}}),Za="q",eu="r",tu="s",su="t",nu="u",ru={categoryEmpty:Za,categoryItems:eu,categoryItem:tu,categoryItemCaption:su,categoryItemIcon:nu},iu={$style:ru},Ot=vt(Qa,[["__cssModules",iu]]);const Xi=Symbol(),Qi=Symbol();var lu={currentFlags:[],currentMode:null,numberOfCycles:0,numberOfEvents:0,numberOfFlags:0,numberOfLabels:0,numberOfModes:0,numberOfNoRepeats:0,numberOfSets:0,numberOfSliders:0,numberOfTimers:0,runsPerFlowCard:{},usagePerFlowCard:{}};function Bt(){return e=>Homey.__(e)??e}function ou(){const e=Fe([]),t=Fe(!1);async function s(){t.value=!0,e.value=await Homey.api("GET","/colors"),t.value=!1}return Dn(Xi,e),{isLoading:t,items:e,load:s}}function au(){const e=Fe([]),t=Fe(!1);async function s(){t.value=!0,e.value=await Homey.api("GET","/icons"),t.value=!1}return Dn(Qi,e),{isLoading:t,items:e,load:s}}function uu(){return Ut("/events")}function cu(){return Ut("/flags")}function fu(){return Ut("/labels")}function du(){return Ut("/modes")}function pu(){return Ut("/sets")}function hu(){return Ut("/timers")}function vu(){const e=Fe(lu),t=Fe(!1);return{isLoading:t,result:e,load:async()=>{t.value=!0,e.value=await Homey.api("GET","/statistics"),t.value=!1}}}function At(e,t,s){return n=>{t.value=n,s.value=e}}function Ut(e){const t=Fe([]),s=Fe(!0);return{isLoading:s,items:t,load:async()=>{s.value=!0,t.value=await Homey.api("GET",e),s.value=!1}}}function Mt(e,t,s,n,r){return async(i,l)=>{n.value=!0,await Homey.api("POST",e,{name:i,color:l.color,icon:l.icon}),await r(),t.value=null,s.value=null,n.value=!1}}var gu=["title","onClick"],mu=_e({__name:"ColorPicker",props:{modelValue:{},modelModifiers:{}},emits:["update:modelValue"],setup(e){const t=Bn(e,"modelValue"),s=Bt(),n=Vt(Xi);return(r,i)=>(U(),te("div",{class:Q(r.$style.colorSelect)},[(U(!0),te(ie,null,Gs(b(n),l=>(U(),te("div",{class:Q(t.value===l.hex?r.$style.colorSelectItemActive:r.$style.colorSelectItem),style:Et({"--color":l.hex}),title:b(s)(l.label),onClick:o=>t.value=l.hex},null,14,gu))),256))],2))}}),_u="b",yu="c",bu="d c",Su={colorSelect:_u,colorSelectItem:yu,colorSelectItemActive:bu},xu={$style:Su},Cu=vt(mu,[["__cssModules",xu]]),Tu={class:"homey-form-fieldset"},Eu={class:"homey-form-legend"},wu={key:0,class:"homey-form-group",style:{"margin-top":"6px"}},Iu={key:1,class:"homey-form-group"},Ou={class:"homey-form-group"},Au=_e({__name:"FormGroup",props:{description:{},title:{}},setup(e){return(t,s)=>(U(),te("fieldset",Tu,[ae("legend",Eu,fe(e.title),1),e.description?(U(),te("div",wu,fe(e.description),1)):Fs("",!0),t.$slots.before?(U(),te("div",Iu,[Os(t.$slots,"before")])):Fs("",!0),ae("div",Ou,[Os(t.$slots,"default")])]))}}),cs=Au,Mu=_e({__name:"Documentation",setup(e){const t=Bt();return(s,n)=>(U(),Tt(cs,{title:b(t)("settings.documentation.title"),description:b(t)("settings.documentation.description")},null,8,["title","description"]))}}),Pu=Mu,Fu=["for"],$u=["disabled","id","type"],Lu=_e({__name:"FormInput",props:vo({disabled:{type:Boolean},label:{},type:{}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=Bn(e,"modelValue"),s=to();return(n,r)=>(U(),te(ie,null,[e.label?(U(),te("label",{key:0,class:"homey-form-label",for:b(s)},fe(e.label),9,Fu)):Fs("",!0),Gl(ae("input",{class:"homey-form-input",disabled:e.disabled,id:b(s),type:e.type,"onUpdate:modelValue":r[0]||(r[0]=i=>t.value=i)},null,8,$u),[[Ma,t.value]])],64))}}),Vu=Lu,Nu=_e({__name:"IconPicker",props:{modelValue:{},modelModifiers:{}},emits:["update:modelValue"],setup(e){const t=Bn(e,"modelValue"),s=Bt(),n=Vt(Qi),r=Fe(""),i=Wn(()=>{const l=b(r).toLowerCase().trim();return b(n).filter(o=>l.length>0&&o.name.toLowerCase().includes(l)||l.length===0&&o.unicode===b(t)).slice(0,54)});return(l,o)=>(U(),te(ie,null,[$(Vu,{modelValue:r.value,"onUpdate:modelValue":o[0]||(o[0]=a=>r.value=a),label:b(s)("settings.search"),type:"text"},null,8,["modelValue","label"]),ae("div",{class:Q(l.$style.iconSelect)},[(U(!0),te(ie,null,Gs(i.value,a=>(U(),Tt(us,{class:Q(t.value===a.unicode?l.$style.iconSelectItemActive:l.$style.iconSelectItem),icon:a.unicode,title:a.name,onClick:d=>t.value=a.unicode},null,8,["class","icon","title","onClick"]))),256))],2)],64))}}),Ru="n",Du="o",Hu="p o",ju={iconSelect:Ru,iconSelectItem:Du,iconSelectItemActive:Hu},Bu={$style:ju},Uu=vt(Nu,[["__cssModules",Bu]]),ku=_e({__name:"Edit",props:{isSaving:{type:Boolean},item:{}},emits:["close","save"],setup(e,{emit:t}){const s=t,n=Bt(),r=Bs({color:e.item.color??"#204ef6",icon:e.item.icon??""});function i(){s("close")}function l(){s("save",e.item.name,r)}return(o,a)=>(U(),te("div",{class:Q(o.$style.editOverlay)},[ae("div",{class:Q(o.$style.edit)},[$(us,{class:Q(o.$style.editIcon),icon:r.icon,style:Et({"--color":r.color})},null,8,["class","icon","style"]),ae("div",{class:Q(o.$style.editName)},fe(e.item.name),3),$(cs,{title:b(n)("settings.edit.color")},{default:ft(()=>[$(Cu,{modelValue:r.color,"onUpdate:modelValue":a[0]||(a[0]=d=>r.color=d)},null,8,["modelValue"])]),_:1},8,["title"]),$(cs,{title:b(n)("settings.edit.icon")},{default:ft(()=>[$(Uu,{modelValue:r.icon,"onUpdate:modelValue":a[1]||(a[1]=d=>r.icon=d)},null,8,["modelValue"])]),_:1},8,["title"]),$(Da,{"is-loading":e.isSaving,label:b(n)("settings.save"),onClick:a[2]||(a[2]=d=>l())},null,8,["is-loading","label"]),$(ja,{label:b(n)("settings.close"),onClick:a[3]||(a[3]=d=>i())},null,8,["label"])],2)],2))}}),Ku="v",Wu="a",Gu="w",qu="x",Ju={editOverlay:Ku,edit:Wu,editIcon:Gu,editName:qu},Yu={$style:Ju},zu=vt(ku,[["__cssModules",Yu]]),Xu={class:"homey-form"},Qu=_e({__name:"Form",setup(e){return(t,s)=>(U(),te("form",Xu,[Os(t.$slots,"default")]))}}),Zu=Qu,ec=_e({__name:"Statistic",props:{icon:{},name:{},value:{}},setup(e){const t=new Intl.NumberFormat(navigator.language,{maximumFractionDigits:0,minimumFractionDigits:0}),s=Wn(()=>{const n=b(e.value);return typeof n=="number"?t.format(n):n});return(n,r)=>(U(),te("div",{class:Q(n.$style.statistic)},[$(us,{class:Q(n.$style.statisticIcon),icon:e.icon},null,8,["class","icon"]),ae("div",{class:Q(n.$style.statisticValue)},fe(s.value),3),ae("div",{class:Q(n.$style.statisticName)},fe(e.name),3)],2))}}),tc="e",sc="f",nc="g",rc="h",ic={statistic:tc,statisticIcon:sc,statisticName:nc,statisticValue:rc},lc={$style:ic},Ye=vt(ec,[["__cssModules",lc]]),oc=_e({__name:"Statistics",setup(e){const t=Bt(),{load:s,result:n}=vu();return Ws(s),(r,i)=>(U(),te(ie,null,[$(cs,{title:b(t)("settings.statistics.title"),description:b(t)("settings.statistics.description")},{default:ft(()=>[ae("div",{class:Q(r.$style.statisticsGrid)},[$(Ye,{icon:"",name:b(t)("settings.statistics.cycles"),value:b(n).numberOfCycles},null,8,["name","value"]),$(Ye,{icon:"",name:b(t)("settings.statistics.events"),value:b(n).numberOfEvents},null,8,["name","value"]),$(Ye,{icon:"",name:b(t)("settings.statistics.flags"),value:b(n).numberOfFlags},null,8,["name","value"]),$(Ye,{icon:"",name:b(t)("settings.statistics.labels"),value:b(n).numberOfLabels},null,8,["name","value"]),$(Ye,{icon:"",name:b(t)("settings.statistics.modes"),value:b(n).numberOfModes},null,8,["name","value"]),$(Ye,{icon:"",name:b(t)("settings.statistics.no_repeats"),value:b(n).numberOfNoRepeats},null,8,["name","value"]),$(Ye,{icon:"",name:b(t)("settings.statistics.sets"),value:b(n).numberOfSets},null,8,["name","value"]),$(Ye,{icon:"",name:b(t)("settings.statistics.sliders"),value:b(n).numberOfSliders},null,8,["name","value"]),$(Ye,{icon:"",name:b(t)("settings.statistics.timers"),value:b(n).numberOfTimers},null,8,["name","value"])],2)]),_:1},8,["title","description"]),$(cs,{title:b(t)("settings.card_statistics.title"),description:b(t)("settings.card_statistics.description")},{default:ft(()=>[ae("div",{class:Q(r.$style.statisticsTable)},[(U(!0),te(ie,null,Gs(b(n).usagePerFlowCard,l=>(U(),te("div",{class:Q(r.$style.statisticsTableRow)},[ae("div",{class:Q(r.$style.statisticsTableRowName)},fe(l[0]),3),ae("div",{class:Q(r.$style.statisticsTableRowValue)},fe(l[1]),3)],2))),256))],2)]),_:1},8,["title","description"])],64))}}),ac="i",uc="j",cc="k",fc="l",dc="m",pc={statisticsGrid:ac,statisticsTable:uc,statisticsTableRow:cc,statisticsTableRowName:fc,statisticsTableRowValue:dc},hc={$style:pc},vc=vt(oc,[["__cssModules",hc]]),gc={class:"homey-header"},mc={class:"homey-title"},_c={class:"homey-subtitle"},yc=_e({__name:"Top",props:{subtitle:{},title:{}},setup(e){return(t,s)=>(U(),te("header",gc,[ae("h1",mc,fe(e.title),1),ae("p",_c,fe(e.subtitle),1)]))}}),bc=yc,Sc=_e({__name:"App",setup(e){const t=Bt(),{load:s}=ou(),{load:n}=au(),{items:r,load:i}=uu(),{items:l,load:o}=cu(),{items:a,load:d}=fu(),{items:c,load:p}=du(),{items:y,load:S}=pu(),{items:F,load:I}=hu(),H=Fe(null),N=Fe(null),L=Fe(!1),k=At("event",H,N),M=At("flag",H,N),X=At("label",H,N),ue=At("mode",H,N),de=At("set",H,N),ye=At("timer",H,N),D=Mt("/events/look",H,N,L,i),q=Mt("/flags/look",H,N,L,o),se=Mt("/labels/look",H,N,L,d),w=Mt("/modes/look",H,N,L,p),Z=Mt("/sets/look",H,N,L,S),ce=Mt("/timers/look",H,N,L,I);Ws(async()=>{await Promise.allSettled([s(),n()]),await Promise.allSettled([i(),o(),d(),p(),S(),I()]),Homey.ready()});function Le(){H.value=null,N.value=null}function oe(K,j){switch(b(N)){case"event":return D(K,j);case"flag":return q(K,j);case"label":return se(K,j);case"mode":return w(K,j);case"set":return Z(K,j);case"timer":return ce(K,j);default:return}}return(K,j)=>(U(),te(ie,null,[$(b(bc),{title:b(t)("settings.title"),subtitle:b(t)("settings.subtitle")},null,8,["title","subtitle"]),$(b(Zu),null,{default:ft(()=>[$(b(Pu)),$(b(Ot),{title:b(t)("settings.modes.title"),description:b(t)("settings.modes.description"),empty:b(t)("settings.modes.empty"),items:b(c),onEdit:b(ue)},null,8,["title","description","empty","items","onEdit"]),$(b(Ot),{title:b(t)("settings.flags.title"),description:b(t)("settings.flags.description"),empty:b(t)("settings.flags.empty"),items:b(l),onEdit:b(M)},null,8,["title","description","empty","items","onEdit"]),$(b(Ot),{title:b(t)("settings.timers.title"),description:b(t)("settings.timers.description"),empty:b(t)("settings.timers.empty"),items:b(F),onEdit:b(ye)},null,8,["title","description","empty","items","onEdit"]),$(b(Ot),{title:b(t)("settings.labels.title"),description:b(t)("settings.labels.description"),empty:b(t)("settings.labels.empty"),items:b(a),onEdit:b(X)},null,8,["title","description","empty","items","onEdit"]),$(b(Ot),{title:b(t)("settings.sets.title"),description:b(t)("settings.sets.description"),empty:b(t)("settings.sets.empty"),items:b(y),onEdit:b(de)},null,8,["title","description","empty","items","onEdit"]),$(b(Ot),{title:b(t)("settings.events.title"),description:b(t)("settings.events.description"),empty:b(t)("settings.events.empty"),items:b(r),onEdit:b(k)},null,8,["title","description","empty","items","onEdit"]),$(b(vc))]),_:1}),$(la,{name:"edit"},{default:ft(()=>[H.value?(U(),Tt(b(zu),{key:0,"is-saving":L.value,item:H.value,onClose:j[0]||(j[0]=Ge=>Le()),onSave:oe},null,8,["is-saving","item"])):Fs("",!0)]),_:1})],64))}}),xc="a",Cc={edit:xc},Tc={$style:Cc},Ec=vt(Sc,[["__cssModules",Tc]]);window.onHomeyReady=function(){La(Ec).mount("#app")}; +(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();function e(e){let t=Object.create(null);for(let n of e.split(`,`))t[n]=1;return e=>e in t}var t={},n=[],r=()=>{},i=()=>!1,a=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),o=e=>e.startsWith(`onUpdate:`),s=Object.assign,c=(e,t)=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)},l=Object.prototype.hasOwnProperty,u=(e,t)=>l.call(e,t),d=Array.isArray,f=e=>x(e)===`[object Map]`,p=e=>x(e)===`[object Set]`,m=e=>x(e)===`[object Date]`,h=e=>typeof e==`function`,g=e=>typeof e==`string`,_=e=>typeof e==`symbol`,v=e=>typeof e==`object`&&!!e,y=e=>(v(e)||h(e))&&h(e.then)&&h(e.catch),b=Object.prototype.toString,x=e=>b.call(e),S=e=>x(e).slice(8,-1),C=e=>x(e)===`[object Object]`,w=e=>g(e)&&e!==`NaN`&&e[0]!==`-`&&``+parseInt(e,10)===e,T=e(`,key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted`),ee=e=>{let t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))},te=/-\w/g,E=ee(e=>e.replace(te,e=>e.slice(1).toUpperCase())),ne=/\B([A-Z])/g,D=ee(e=>e.replace(ne,`-$1`).toLowerCase()),re=ee(e=>e.charAt(0).toUpperCase()+e.slice(1)),ie=ee(e=>e?`on${re(e)}`:``),O=(e,t)=>!Object.is(e,t),ae=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:n})},oe=e=>{let t=parseFloat(e);return isNaN(t)?e:t},se=e=>{let t=g(e)?Number(e):NaN;return isNaN(t)?e:t},ce,le=()=>ce||=typeof globalThis<`u`?globalThis:typeof self<`u`?self:typeof window<`u`?window:typeof global<`u`?global:{};function ue(e){if(d(e)){let t={};for(let n=0;n{if(e){let n=e.split(fe);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function A(e){let t=``;if(g(e))t=e;else if(d(e))for(let n=0;nye(e,t))}var xe=e=>!!(e&&e.__v_isRef===!0),j=e=>g(e)?e:e==null?``:d(e)||v(e)&&(e.toString===b||!h(e.toString))?xe(e)?j(e.value):JSON.stringify(e,Se,2):String(e),Se=(e,t)=>xe(t)?Se(e,t.value):f(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((e,[t,n],r)=>(e[Ce(t,r)+` =>`]=n,e),{})}:p(t)?{[`Set(${t.size})`]:[...t.values()].map(e=>Ce(e))}:_(t)?Ce(t):v(t)&&!d(t)&&!C(t)?String(t):t,Ce=(e,t=``)=>_(e)?`Symbol(${e.description??t})`:e,M,we=class{constructor(e=!1){this.detached=e,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.__v_skip=!0,this.parent=M,!e&&M&&(this.index=(M.scopes||=[]).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let e,t;if(this.scopes)for(e=0,t=this.scopes.length;e0&&--this._on===0&&(M=this.prevScope,this.prevScope=void 0)}stop(e){if(this._active){this._active=!1;let t,n;for(t=0,n=this.effects.length;t0)return;if(Ae){let e=Ae;for(Ae=void 0;e;){let t=e.next;e.next=void 0,e.flags&=-9,e=t}}let e;for(;ke;){let t=ke;for(ke=void 0;t;){let n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(t){e||=t}t=n}}if(e)throw e}function Pe(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Fe(e){let t,n=e.depsTail,r=n;for(;r;){let e=r.prevDep;r.version===-1?(r===n&&(n=e),Re(r),ze(r)):t=r,r.dep.activeLink=r.prevActiveLink,r.prevActiveLink=void 0,r=e}e.deps=t,e.depsTail=n}function Ie(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Le(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Le(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Ge)||(e.globalVersion=Ge,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Ie(e))))return;e.flags|=2;let t=e.dep,n=N,r=Be;N=e,Be=!0;try{Pe(e);let n=e.fn(e._value);(t.version===0||O(n,e._value))&&(e.flags|=128,e._value=n,t.version++)}catch(e){throw t.version++,e}finally{N=n,Be=r,Fe(e),e.flags&=-3}}function Re(e,t=!1){let{dep:n,prevSub:r,nextSub:i}=e;if(r&&(r.nextSub=i,e.prevSub=void 0),i&&(i.prevSub=r,e.nextSub=void 0),n.subs===e&&(n.subs=r,!r&&n.computed)){n.computed.flags&=-5;for(let e=n.computed.deps;e;e=e.nextDep)Re(e,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function ze(e){let{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}var Be=!0,Ve=[];function He(){Ve.push(Be),Be=!1}function Ue(){let e=Ve.pop();Be=e===void 0?!0:e}function We(e){let{cleanup:t}=e;if(e.cleanup=void 0,t){let e=N;N=void 0;try{t()}finally{N=e}}}var Ge=0,Ke=class{constructor(e,t){this.sub=e,this.dep=t,this.version=t.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}},qe=class{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(e){if(!N||!Be||N===this.computed)return;let t=this.activeLink;if(t===void 0||t.sub!==N)t=this.activeLink=new Ke(N,this),N.deps?(t.prevDep=N.depsTail,N.depsTail.nextDep=t,N.depsTail=t):N.deps=N.depsTail=t,Je(t);else if(t.version===-1&&(t.version=this.version,t.nextDep)){let e=t.nextDep;e.prevDep=t.prevDep,t.prevDep&&(t.prevDep.nextDep=e),t.prevDep=N.depsTail,t.nextDep=void 0,N.depsTail.nextDep=t,N.depsTail=t,N.deps===t&&(N.deps=e)}return t}trigger(e){this.version++,Ge++,this.notify(e)}notify(e){Me();try{for(let e=this.subs;e;e=e.prevSub)e.sub.notify()&&e.sub.dep.notify()}finally{Ne()}}};function Je(e){if(e.dep.sc++,e.sub.flags&4){let t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let e=t.deps;e;e=e.nextDep)Je(e)}let n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}var Ye=new WeakMap,Xe=Symbol(``),Ze=Symbol(``),Qe=Symbol(``);function P(e,t,n){if(Be&&N){let t=Ye.get(e);t||Ye.set(e,t=new Map);let r=t.get(n);r||(t.set(n,r=new qe),r.map=t,r.key=n),r.track()}}function $e(e,t,n,r,i,a){let o=Ye.get(e);if(!o){Ge++;return}let s=e=>{e&&e.trigger()};if(Me(),t===`clear`)o.forEach(s);else{let i=d(e),a=i&&w(n);if(i&&n===`length`){let e=Number(r);o.forEach((t,n)=>{(n===`length`||n===Qe||!_(n)&&n>=e)&&s(t)})}else switch((n!==void 0||o.has(void 0))&&s(o.get(n)),a&&s(o.get(Qe)),t){case`add`:i?a&&s(o.get(`length`)):(s(o.get(Xe)),f(e)&&s(o.get(Ze)));break;case`delete`:i||(s(o.get(Xe)),f(e)&&s(o.get(Ze)));break;case`set`:f(e)&&s(o.get(Xe));break}}Ne()}function et(e){let t=I(e);return t===e?t:(P(t,`iterate`,Qe),F(e)?t:t.map(Ht))}function tt(e){return P(e=I(e),`iterate`,Qe),e}function nt(e,t){return zt(e)?Ut(Rt(e)?Ht(t):t):Ht(t)}var rt={__proto__:null,[Symbol.iterator](){return it(this,Symbol.iterator,e=>nt(this,e))},concat(...e){return et(this).concat(...e.map(e=>d(e)?et(e):e))},entries(){return it(this,`entries`,e=>(e[1]=nt(this,e[1]),e))},every(e,t){return ot(this,`every`,e,t,void 0,arguments)},filter(e,t){return ot(this,`filter`,e,t,e=>e.map(e=>nt(this,e)),arguments)},find(e,t){return ot(this,`find`,e,t,e=>nt(this,e),arguments)},findIndex(e,t){return ot(this,`findIndex`,e,t,void 0,arguments)},findLast(e,t){return ot(this,`findLast`,e,t,e=>nt(this,e),arguments)},findLastIndex(e,t){return ot(this,`findLastIndex`,e,t,void 0,arguments)},forEach(e,t){return ot(this,`forEach`,e,t,void 0,arguments)},includes(...e){return ct(this,`includes`,e)},indexOf(...e){return ct(this,`indexOf`,e)},join(e){return et(this).join(e)},lastIndexOf(...e){return ct(this,`lastIndexOf`,e)},map(e,t){return ot(this,`map`,e,t,void 0,arguments)},pop(){return lt(this,`pop`)},push(...e){return lt(this,`push`,e)},reduce(e,...t){return st(this,`reduce`,e,t)},reduceRight(e,...t){return st(this,`reduceRight`,e,t)},shift(){return lt(this,`shift`)},some(e,t){return ot(this,`some`,e,t,void 0,arguments)},splice(...e){return lt(this,`splice`,e)},toReversed(){return et(this).toReversed()},toSorted(e){return et(this).toSorted(e)},toSpliced(...e){return et(this).toSpliced(...e)},unshift(...e){return lt(this,`unshift`,e)},values(){return it(this,`values`,e=>nt(this,e))}};function it(e,t,n){let r=tt(e),i=r[t]();return r!==e&&!F(e)&&(i._next=i.next,i.next=()=>{let e=i._next();return e.done||(e.value=n(e.value)),e}),i}var at=Array.prototype;function ot(e,t,n,r,i,a){let o=tt(e),s=o!==e&&!F(e),c=o[t];if(c!==at[t]){let t=c.apply(e,a);return s?Ht(t):t}let l=n;o!==e&&(s?l=function(t,r){return n.call(this,nt(e,t),r,e)}:n.length>2&&(l=function(t,r){return n.call(this,t,r,e)}));let u=c.call(o,l,r);return s&&i?i(u):u}function st(e,t,n,r){let i=tt(e),a=n;return i!==e&&(F(e)?n.length>3&&(a=function(t,r,i){return n.call(this,t,r,i,e)}):a=function(t,r,i){return n.call(this,t,nt(e,r),i,e)}),i[t](a,...r)}function ct(e,t,n){let r=I(e);P(r,`iterate`,Qe);let i=r[t](...n);return(i===-1||i===!1)&&Bt(n[0])?(n[0]=I(n[0]),r[t](...n)):i}function lt(e,t,n=[]){He(),Me();let r=I(e)[t].apply(e,n);return Ne(),Ue(),r}var ut=e(`__proto__,__v_isRef,__isVue`),dt=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!==`arguments`&&e!==`caller`).map(e=>Symbol[e]).filter(_));function ft(e){_(e)||(e=String(e));let t=I(this);return P(t,`has`,e),t.hasOwnProperty(e)}var pt=class{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,n){if(t===`__v_skip`)return e.__v_skip;let r=this._isReadonly,i=this._isShallow;if(t===`__v_isReactive`)return!r;if(t===`__v_isReadonly`)return r;if(t===`__v_isShallow`)return i;if(t===`__v_raw`)return n===(r?i?jt:At:i?kt:Ot).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;let a=d(e);if(!r){let e;if(a&&(e=rt[t]))return e;if(t===`hasOwnProperty`)return ft}let o=Reflect.get(e,t,L(e)?e:n);if((_(t)?dt.has(t):ut(t))||(r||P(e,`get`,t),i))return o;if(L(o)){let e=a&&w(t)?o:o.value;return r&&v(e)?It(e):e}return v(o)?r?It(o):Pt(o):o}},mt=class extends pt{constructor(e=!1){super(!1,e)}set(e,t,n,r){let i=e[t],a=d(e)&&w(t);if(!this._isShallow){let e=zt(i);if(!F(n)&&!zt(n)&&(i=I(i),n=I(n)),!a&&L(i)&&!L(n))return e||(i.value=n),!0}let o=a?Number(t)e,bt=e=>Reflect.getPrototypeOf(e);function xt(e,t,n){return function(...r){let i=this.__v_raw,a=I(i),o=f(a),c=e===`entries`||e===Symbol.iterator&&o,l=e===`keys`&&o,u=i[e](...r),d=n?yt:t?Ut:Ht;return!t&&P(a,`iterate`,l?Ze:Xe),s(Object.create(u),{next(){let{value:e,done:t}=u.next();return t?{value:e,done:t}:{value:c?[d(e[0]),d(e[1])]:d(e),done:t}}})}}function St(e){return function(...t){return e===`delete`?!1:e===`clear`?void 0:this}}function Ct(e,t){let n={get(n){let r=this.__v_raw,i=I(r),a=I(n);e||(O(n,a)&&P(i,`get`,n),P(i,`get`,a));let{has:o}=bt(i),s=t?yt:e?Ut:Ht;if(o.call(i,n))return s(r.get(n));if(o.call(i,a))return s(r.get(a));r!==i&&r.get(n)},get size(){let t=this.__v_raw;return!e&&P(I(t),`iterate`,Xe),t.size},has(t){let n=this.__v_raw,r=I(n),i=I(t);return e||(O(t,i)&&P(r,`has`,t),P(r,`has`,i)),t===i?n.has(t):n.has(t)||n.has(i)},forEach(n,r){let i=this,a=i.__v_raw,o=I(a),s=t?yt:e?Ut:Ht;return!e&&P(o,`iterate`,Xe),a.forEach((e,t)=>n.call(r,s(e),s(t),i))}};return s(n,e?{add:St(`add`),set:St(`set`),delete:St(`delete`),clear:St(`clear`)}:{add(e){!t&&!F(e)&&!zt(e)&&(e=I(e));let n=I(this);return bt(n).has.call(n,e)||(n.add(e),$e(n,`add`,e,e)),this},set(e,n){!t&&!F(n)&&!zt(n)&&(n=I(n));let r=I(this),{has:i,get:a}=bt(r),o=i.call(r,e);o||=(e=I(e),i.call(r,e));let s=a.call(r,e);return r.set(e,n),o?O(n,s)&&$e(r,`set`,e,n,s):$e(r,`add`,e,n),this},delete(e){let t=I(this),{has:n,get:r}=bt(t),i=n.call(t,e);i||=(e=I(e),n.call(t,e));let a=r?r.call(t,e):void 0,o=t.delete(e);return i&&$e(t,`delete`,e,void 0,a),o},clear(){let e=I(this),t=e.size!==0,n=e.clear();return t&&$e(e,`clear`,void 0,void 0,void 0),n}}),[`keys`,`values`,`entries`,Symbol.iterator].forEach(r=>{n[r]=xt(r,e,t)}),n}function wt(e,t){let n=Ct(e,t);return(t,r,i)=>r===`__v_isReactive`?!e:r===`__v_isReadonly`?e:r===`__v_raw`?t:Reflect.get(u(n,r)&&r in t?n:t,r,i)}var Tt={get:wt(!1,!1)},Et={get:wt(!1,!0)},Dt={get:wt(!0,!1)},Ot=new WeakMap,kt=new WeakMap,At=new WeakMap,jt=new WeakMap;function Mt(e){switch(e){case`Object`:case`Array`:return 1;case`Map`:case`Set`:case`WeakMap`:case`WeakSet`:return 2;default:return 0}}function Nt(e){return e.__v_skip||!Object.isExtensible(e)?0:Mt(S(e))}function Pt(e){return zt(e)?e:Lt(e,!1,gt,Tt,Ot)}function Ft(e){return Lt(e,!1,vt,Et,kt)}function It(e){return Lt(e,!0,_t,Dt,At)}function Lt(e,t,n,r,i){if(!v(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;let a=Nt(e);if(a===0)return e;let o=i.get(e);if(o)return o;let s=new Proxy(e,a===2?r:n);return i.set(e,s),s}function Rt(e){return zt(e)?Rt(e.__v_raw):!!(e&&e.__v_isReactive)}function zt(e){return!!(e&&e.__v_isReadonly)}function F(e){return!!(e&&e.__v_isShallow)}function Bt(e){return e?!!e.__v_raw:!1}function I(e){let t=e&&e.__v_raw;return t?I(t):e}function Vt(e){return!u(e,`__v_skip`)&&Object.isExtensible(e)&&k(e,`__v_skip`,!0),e}var Ht=e=>v(e)?Pt(e):e,Ut=e=>v(e)?It(e):e;function L(e){return e?e.__v_isRef===!0:!1}function R(e){return Wt(e,!1)}function Wt(e,t){return L(e)?e:new Gt(e,t)}var Gt=class{constructor(e,t){this.dep=new qe,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=t?e:I(e),this._value=t?e:Ht(e),this.__v_isShallow=t}get value(){return this.dep.track(),this._value}set value(e){let t=this._rawValue,n=this.__v_isShallow||F(e)||zt(e);e=n?e:I(e),O(e,t)&&(this._rawValue=e,this._value=n?e:Ht(e),this.dep.trigger())}};function z(e){return L(e)?e.value:e}var Kt={get:(e,t,n)=>t===`__v_raw`?e:z(Reflect.get(e,t,n)),set:(e,t,n,r)=>{let i=e[t];return L(i)&&!L(n)?(i.value=n,!0):Reflect.set(e,t,n,r)}};function qt(e){return Rt(e)?e:new Proxy(e,Kt)}var Jt=class{constructor(e){this.__v_isRef=!0,this._value=void 0;let t=this.dep=new qe,{get:n,set:r}=e(t.track.bind(t),t.trigger.bind(t));this._get=n,this._set=r}get value(){return this._value=this._get()}set value(e){this._set(e)}};function Yt(e){return new Jt(e)}var Xt=class{constructor(e,t,n){this.fn=e,this.setter=t,this._value=void 0,this.dep=new qe(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Ge-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!t,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&N!==this)return je(this,!0),!0}get value(){let e=this.dep.track();return Le(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}};function Zt(e,t,n=!1){let r,i;return h(e)?r=e:(r=e.get,i=e.set),new Xt(r,i,n)}var Qt={},$t=new WeakMap,en=void 0;function tn(e,t=!1,n=en){if(n){let t=$t.get(n);t||$t.set(n,t=[]),t.push(e)}}function nn(e,n,i=t){let{immediate:a,deep:o,once:s,scheduler:l,augmentJob:u,call:f}=i,p=e=>o?e:F(e)||o===!1||o===0?rn(e,1):rn(e),m,g,_,v,y=!1,b=!1;if(L(e)?(g=()=>e.value,y=F(e)):Rt(e)?(g=()=>p(e),y=!0):d(e)?(b=!0,y=e.some(e=>Rt(e)||F(e)),g=()=>e.map(e=>{if(L(e))return e.value;if(Rt(e))return p(e);if(h(e))return f?f(e,2):e()})):g=h(e)?n?f?()=>f(e,2):e:()=>{if(_){He();try{_()}finally{Ue()}}let t=en;en=m;try{return f?f(e,3,[v]):e(v)}finally{en=t}}:r,n&&o){let e=g,t=o===!0?1/0:o;g=()=>rn(e(),t)}let x=Te(),S=()=>{m.stop(),x&&x.active&&c(x.effects,m)};if(s&&n){let e=n;n=(...t)=>{e(...t),S()}}let C=b?Array(e.length).fill(Qt):Qt,w=e=>{if(!(!(m.flags&1)||!m.dirty&&!e))if(n){let e=m.run();if(o||y||(b?e.some((e,t)=>O(e,C[t])):O(e,C))){_&&_();let t=en;en=m;try{let t=[e,C===Qt?void 0:b&&C[0]===Qt?[]:C,v];C=e,f?f(n,3,t):n(...t)}finally{en=t}}}else m.run()};return u&&u(w),m=new De(g),m.scheduler=l?()=>l(w,!1):w,v=e=>tn(e,!1,m),_=m.onStop=()=>{let e=$t.get(m);if(e){if(f)f(e,4);else for(let t of e)t();$t.delete(m)}},n?a?w(!0):C=m.run():l?l(w.bind(null,!0),!0):m.run(),S.pause=m.pause.bind(m),S.resume=m.resume.bind(m),S.stop=S,S}function rn(e,t=1/0,n){if(t<=0||!v(e)||e.__v_skip||(n||=new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,L(e))rn(e.value,t,n);else if(d(e))for(let r=0;r{rn(e,t,n)});else if(C(e)){for(let r in e)rn(e[r],t,n);for(let r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&rn(e[r],t,n)}return e}function an(e,t,n,r){try{return r?e(...r):e()}catch(e){sn(e,t,n)}}function on(e,t,n,r){if(h(e)){let i=an(e,t,n,r);return i&&y(i)&&i.catch(e=>{sn(e,t,n)}),i}if(d(e)){let i=[];for(let a=0;a>>1,i=B[r],a=Sn(i);a=Sn(n)?B.push(e):B.splice(gn(t),0,e),e.flags|=1,vn()}}function vn(){mn||=pn.then(Cn)}function yn(e){d(e)?un.push(...e):dn&&e.id===-1?dn.splice(fn+1,0,e):e.flags&1||(un.push(e),e.flags|=1),vn()}function bn(e,t,n=ln+1){for(;nSn(e)-Sn(t));if(un.length=0,dn){dn.push(...e);return}for(dn=e,fn=0;fne.id==null?e.flags&2?-1:1/0:e.id;function Cn(e){try{for(ln=0;ln{r._d&&Ki(-1);let i=Tn(t),a;try{a=e(...n)}finally{Tn(i),r._d&&Ki(1)}return a};return r._n=!0,r._c=!0,r._d=!0,r}function Dn(e,n){if(V===null)return e;let r=Da(V),i=e.dirs||=[];for(let e=0;e1)return n&&h(t)?t.call(r&&r.proxy):t}}var jn=Symbol.for(`v-scx`),Mn=()=>An(jn);function Nn(e,t){return Fn(e,null,{flush:`sync`})}function Pn(e,t,n){return Fn(e,t,n)}function Fn(e,n,i=t){let{immediate:a,deep:o,flush:c,once:l}=i,u=s({},i),d=n&&a||!n&&c!==`post`,f;if(va){if(c===`sync`){let e=Mn();f=e.__watcherHandles||=[]}else if(!d){let e=()=>{};return e.stop=r,e.resume=r,e.pause=r,e}}let p=$;u.call=(e,t,n)=>on(e,p,t,n);let m=!1;c===`post`?u.scheduler=e=>{G(e,p&&p.suspense)}:c!==`sync`&&(m=!0,u.scheduler=(e,t)=>{t?e():_n(e)}),u.augmentJob=e=>{n&&(e.flags|=4),m&&(e.flags|=2,p&&(e.id=p.uid,e.i=p))};let h=nn(e,n,u);return va&&(f?f.push(h):d&&h()),h}function In(e,t,n){let r=this.proxy,i=g(e)?e.includes(`.`)?Ln(r,e):()=>r[e]:e.bind(r,r),a;h(t)?a=t:(a=t.handler,n=t);let o=ha(this),s=Fn(i,a.bind(r),n);return o(),s}function Ln(e,t){let n=t.split(`.`);return()=>{let t=e;for(let e=0;ee.__isTeleport,Bn=Symbol(`_leaveCb`),Vn=Symbol(`_enterCb`);function Hn(){let e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return hr(()=>{e.isMounted=!0}),vr(()=>{e.isUnmounting=!0}),e}var H=[Function,Array],Un={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:H,onEnter:H,onAfterEnter:H,onEnterCancelled:H,onBeforeLeave:H,onLeave:H,onAfterLeave:H,onLeaveCancelled:H,onBeforeAppear:H,onAppear:H,onAfterAppear:H,onAppearCancelled:H},Wn=e=>{let t=e.subTree;return t.component?Wn(t.component):t},Gn={name:`BaseTransition`,props:Un,setup(e,{slots:t}){let n=fa(),r=Hn();return()=>{let i=t.default&&$n(t.default(),!0);if(!i||!i.length)return;let a=Kn(i),o=I(e),{mode:s}=o;if(r.isLeaving)return Xn(a);let c=Zn(a);if(!c)return Xn(a);let l=Yn(c,o,r,n,e=>l=e);c.type!==q&&Qn(c,l);let u=n.subTree&&Zn(n.subTree);if(u&&u.type!==q&&!Xi(u,c)&&Wn(n).type!==q){let e=Yn(u,o,r,n);if(Qn(u,e),s===`out-in`&&c.type!==q)return r.isLeaving=!0,e.afterLeave=()=>{r.isLeaving=!1,n.job.flags&8||n.update(),delete e.afterLeave,u=void 0},Xn(a);s===`in-out`&&c.type!==q?e.delayLeave=(e,t,n)=>{let i=Jn(r,u);i[String(u.key)]=u,e[Bn]=()=>{t(),e[Bn]=void 0,delete l.delayedLeave,u=void 0},l.delayedLeave=()=>{n(),delete l.delayedLeave,u=void 0}}:u=void 0}else u&&=void 0;return a}}};function Kn(e){let t=e[0];if(e.length>1){for(let n of e)if(n.type!==q){t=n;break}}return t}var qn=Gn;function Jn(e,t){let{leavingVNodes:n}=e,r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function Yn(e,t,n,r,i){let{appear:a,mode:o,persisted:s=!1,onBeforeEnter:c,onEnter:l,onAfterEnter:u,onEnterCancelled:f,onBeforeLeave:p,onLeave:m,onAfterLeave:h,onLeaveCancelled:g,onBeforeAppear:_,onAppear:v,onAfterAppear:y,onAppearCancelled:b}=t,x=String(e.key),S=Jn(n,e),C=(e,t)=>{e&&on(e,r,9,t)},w=(e,t)=>{let n=t[1];C(e,t),d(e)?e.every(e=>e.length<=1)&&n():e.length<=1&&n()},T={mode:o,persisted:s,beforeEnter(t){let r=c;if(!n.isMounted)if(a)r=_||c;else return;t[Bn]&&t[Bn](!0);let i=S[x];i&&Xi(e,i)&&i.el[Bn]&&i.el[Bn](),C(r,[t])},enter(t){if(S[x]===e)return;let r=l,i=u,o=f;if(!n.isMounted)if(a)r=v||l,i=y||u,o=b||f;else return;let s=!1;t[Vn]=e=>{s||(s=!0,C(e?o:i,[t]),T.delayedLeave&&T.delayedLeave(),t[Vn]=void 0)};let c=t[Vn].bind(null,!1);r?w(r,[t,c]):c()},leave(t,r){let i=String(e.key);if(t[Vn]&&t[Vn](!0),n.isUnmounting)return r();C(p,[t]);let a=!1;t[Bn]=n=>{a||(a=!0,r(),C(n?g:h,[t]),t[Bn]=void 0,S[i]===e&&delete S[i])};let o=t[Bn].bind(null,!1);S[i]=e,m?w(m,[t,o]):o()},clone(e){let a=Yn(e,t,n,r,i);return i&&i(a),a}};return T}function Xn(e){if(sr(e))return e=ta(e),e.children=null,e}function Zn(e){if(!sr(e))return zn(e.type)&&e.children?Kn(e.children):e;if(e.component)return e.component.subTree;let{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&h(n.default))return n.default()}}function Qn(e,t){e.shapeFlag&6&&e.component?(e.transition=t,Qn(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function $n(e,t=!1,n){let r=[],i=0;for(let a=0;a1)for(let e=0;eir(e,n&&(d(n)?n[t]:n),r,a,o));return}if(or(a)&&!o){a.shapeFlag&512&&a.type.__asyncResolved&&a.component.subTree.component&&ir(e,n,r,a.component.subTree);return}let s=a.shapeFlag&4?Da(a.component):a.el,l=o?null:s,{i:f,r:p}=e,m=n&&n.r,_=f.refs===t?f.refs={}:f.refs,v=f.setupState,y=I(v),b=v===t?i:e=>nr(_,e)?!1:u(y,e),x=(e,t)=>!(t&&nr(_,t));if(m!=null&&m!==p){if(ar(n),g(m))_[m]=null,b(m)&&(v[m]=null);else if(L(m)){let e=n;x(m,e.k)&&(m.value=null),e.k&&(_[e.k]=null)}}if(h(p))an(p,f,12,[l,_]);else{let t=g(p),n=L(p);if(t||n){let i=()=>{if(e.f){let n=t?b(p)?v[p]:_[p]:x(p)||!e.k?p.value:_[e.k];if(o)d(n)&&c(n,s);else if(d(n))n.includes(s)||n.push(s);else if(t)_[p]=[s],b(p)&&(v[p]=_[p]);else{let t=[s];x(p,e.k)&&(p.value=t),e.k&&(_[e.k]=t)}}else t?(_[p]=l,b(p)&&(v[p]=l)):n&&(x(p,e.k)&&(p.value=l),e.k&&(_[e.k]=l))};if(l){let t=()=>{i(),rr.delete(e)};t.id=-1,rr.set(e,t),G(t,r)}else ar(e),i()}}}function ar(e){let t=rr.get(e);t&&(t.flags|=8,rr.delete(e))}le().requestIdleCallback,le().cancelIdleCallback;var or=e=>!!e.type.__asyncLoader,sr=e=>e.type.__isKeepAlive;function cr(e,t){ur(e,`a`,t)}function lr(e,t){ur(e,`da`,t)}function ur(e,t,n=$){let r=e.__wdc||=()=>{let t=n;for(;t;){if(t.isDeactivated)return;t=t.parent}return e()};if(fr(t,r,n),n){let e=n.parent;for(;e&&e.parent;)sr(e.parent.vnode)&&dr(r,t,n,e),e=e.parent}}function dr(e,t,n,r){let i=fr(t,e,r,!0);yr(()=>{c(r[t],i)},n)}function fr(e,t,n=$,r=!1){if(n){let i=n[e]||(n[e]=[]),a=t.__weh||=(...r)=>{He();let i=ha(n),a=on(t,n,e,r);return i(),Ue(),a};return r?i.unshift(a):i.push(a),a}}var pr=e=>(t,n=$)=>{(!va||e===`sp`)&&fr(e,(...e)=>t(...e),n)},mr=pr(`bm`),hr=pr(`m`),gr=pr(`bu`),_r=pr(`u`),vr=pr(`bum`),yr=pr(`um`),br=pr(`sp`),xr=pr(`rtg`),Sr=pr(`rtc`);function Cr(e,t=$){fr(`ec`,e,t)}var wr=Symbol.for(`v-ndc`);function Tr(e,t,n,r){let i,a=n&&n[r],o=d(e);if(o||g(e)){let n=o&&Rt(e),r=!1,s=!1;n&&(r=!F(e),s=zt(e),e=tt(e)),i=Array(e.length);for(let n=0,o=e.length;nt(e,n,void 0,a&&a[n]));else{let n=Object.keys(e);i=Array(n.length);for(let r=0,o=n.length;r0;return t!==`default`&&(n.name=t),Y(),Ji(K,null,[Q(`slot`,n,r&&r())],e?-2:64)}let a=e[t];a&&a._c&&(a._d=!1),Y();let o=a&&Dr(a(n)),s=n.key||o&&o.key,c=Ji(K,{key:(s&&!_(s)?s:`_${t}`)+(!o&&r?`_fb`:``)},o||(r?r():[]),o&&e._===1?64:-2);return!i&&c.scopeId&&(c.slotScopeIds=[c.scopeId+`-s`]),a&&a._c&&(a._d=!0),c}function Dr(e){return e.some(e=>Yi(e)?!(e.type===q||e.type===K&&!Dr(e.children)):!0)?e:null}var Or=e=>e?_a(e)?Da(e):Or(e.parent):null,kr=s(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Or(e.parent),$root:e=>Or(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>zr(e),$forceUpdate:e=>e.f||=()=>{_n(e.update)},$nextTick:e=>e.n||=hn.bind(e.proxy),$watch:e=>In.bind(e)}),Ar=(e,n)=>e!==t&&!e.__isScriptSetup&&u(e,n),jr={get({_:e},n){if(n===`__v_skip`)return!0;let{ctx:r,setupState:i,data:a,props:o,accessCache:s,type:c,appContext:l}=e;if(n[0]!==`$`){let e=s[n];if(e!==void 0)switch(e){case 1:return i[n];case 2:return a[n];case 4:return r[n];case 3:return o[n]}else if(Ar(i,n))return s[n]=1,i[n];else if(a!==t&&u(a,n))return s[n]=2,a[n];else if(u(o,n))return s[n]=3,o[n];else if(r!==t&&u(r,n))return s[n]=4,r[n];else Pr&&(s[n]=0)}let d=kr[n],f,p;if(d)return n===`$attrs`&&P(e.attrs,`get`,``),d(e);if((f=c.__cssModules)&&(f=f[n]))return f;if(r!==t&&u(r,n))return s[n]=4,r[n];if(p=l.config.globalProperties,u(p,n))return p[n]},set({_:e},n,r){let{data:i,setupState:a,ctx:o}=e;return Ar(a,n)?(a[n]=r,!0):i!==t&&u(i,n)?(i[n]=r,!0):u(e.props,n)||n[0]===`$`&&n.slice(1)in e?!1:(o[n]=r,!0)},has({_:{data:e,setupState:n,accessCache:r,ctx:i,appContext:a,props:o,type:s}},c){let l;return!!(r[c]||e!==t&&c[0]!==`$`&&u(e,c)||Ar(n,c)||u(o,c)||u(i,c)||u(kr,c)||u(a.config.globalProperties,c)||(l=s.__cssModules)&&l[c])},defineProperty(e,t,n){return n.get==null?u(n,`value`)&&this.set(e,t,n.value,null):e._.accessCache[t]=0,Reflect.defineProperty(e,t,n)}};function Mr(e){return d(e)?e.reduce((e,t)=>(e[t]=null,e),{}):e}function Nr(e,t){return!e||!t?e||t:d(e)&&d(t)?e.concat(t):s({},Mr(e),Mr(t))}var Pr=!0;function Fr(e){let t=zr(e),n=e.proxy,i=e.ctx;Pr=!1,t.beforeCreate&&Lr(t.beforeCreate,e,`bc`);let{data:a,computed:o,methods:s,watch:c,provide:l,inject:u,created:f,beforeMount:p,mounted:m,beforeUpdate:g,updated:_,activated:y,deactivated:b,beforeDestroy:x,beforeUnmount:S,destroyed:C,unmounted:w,render:T,renderTracked:ee,renderTriggered:te,errorCaptured:E,serverPrefetch:ne,expose:D,inheritAttrs:re,components:ie,directives:O,filters:ae}=t;if(u&&Ir(u,i,null),s)for(let e in s){let t=s[e];h(t)&&(i[e]=t.bind(n))}if(a){let t=a.call(n,n);v(t)&&(e.data=Pt(t))}if(Pr=!0,o)for(let e in o){let t=o[e],a=ka({get:h(t)?t.bind(n,n):h(t.get)?t.get.bind(n,n):r,set:!h(t)&&h(t.set)?t.set.bind(n):r});Object.defineProperty(i,e,{enumerable:!0,configurable:!0,get:()=>a.value,set:e=>a.value=e})}if(c)for(let e in c)Rr(c[e],i,n,e);if(l){let e=h(l)?l.call(n):l;Reflect.ownKeys(e).forEach(t=>{kn(t,e[t])})}f&&Lr(f,e,`c`);function k(e,t){d(t)?t.forEach(t=>e(t.bind(n))):t&&e(t.bind(n))}if(k(mr,p),k(hr,m),k(gr,g),k(_r,_),k(cr,y),k(lr,b),k(Cr,E),k(Sr,ee),k(xr,te),k(vr,S),k(yr,w),k(br,ne),d(D))if(D.length){let t=e.exposed||={};D.forEach(e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t,enumerable:!0})})}else e.exposed||={};T&&e.render===r&&(e.render=T),re!=null&&(e.inheritAttrs=re),ie&&(e.components=ie),O&&(e.directives=O),ne&&tr(e)}function Ir(e,t,n=r){d(e)&&(e=Wr(e));for(let n in e){let r=e[n],i;i=v(r)?`default`in r?An(r.from||n,r.default,!0):An(r.from||n):An(r),L(i)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>i.value,set:e=>i.value=e}):t[n]=i}}function Lr(e,t,n){on(d(e)?e.map(e=>e.bind(t.proxy)):e.bind(t.proxy),t,n)}function Rr(e,t,n,r){let i=r.includes(`.`)?Ln(n,r):()=>n[r];if(g(e)){let n=t[e];h(n)&&Pn(i,n)}else if(h(e))Pn(i,e.bind(n));else if(v(e))if(d(e))e.forEach(e=>Rr(e,t,n,r));else{let r=h(e.handler)?e.handler.bind(n):t[e.handler];h(r)&&Pn(i,r,e)}}function zr(e){let t=e.type,{mixins:n,extends:r}=t,{mixins:i,optionsCache:a,config:{optionMergeStrategies:o}}=e.appContext,s=a.get(t),c;return s?c=s:!i.length&&!n&&!r?c=t:(c={},i.length&&i.forEach(e=>Br(c,e,o,!0)),Br(c,t,o)),v(t)&&a.set(t,c),c}function Br(e,t,n,r=!1){let{mixins:i,extends:a}=t;a&&Br(e,a,n,!0),i&&i.forEach(t=>Br(e,t,n,!0));for(let i in t)if(!(r&&i===`expose`)){let r=Vr[i]||n&&n[i];e[i]=r?r(e[i],t[i]):t[i]}return e}var Vr={data:Hr,props:Kr,emits:Kr,methods:Gr,computed:Gr,beforeCreate:W,created:W,beforeMount:W,mounted:W,beforeUpdate:W,updated:W,beforeDestroy:W,beforeUnmount:W,destroyed:W,unmounted:W,activated:W,deactivated:W,errorCaptured:W,serverPrefetch:W,components:Gr,directives:Gr,watch:qr,provide:Hr,inject:Ur};function Hr(e,t){return t?e?function(){return s(h(e)?e.call(this,this):e,h(t)?t.call(this,this):t)}:t:e}function Ur(e,t){return Gr(Wr(e),Wr(t))}function Wr(e){if(d(e)){let t={};for(let n=0;n{let l,u=t,d;return Nn(()=>{let t=e[a];O(l,t)&&(l=t,c())}),{get(){return s(),r.get?r.get(l):l},set(e){let s=r.set?r.set(e):e;if(!O(s,l)&&!(u!==t&&O(e,u)))return;let f=i.vnode.props;f&&(n in f||a in f||o in f)&&(`onUpdate:${n}`in f||`onUpdate:${a}`in f||`onUpdate:${o}`in f)||(l=e,c()),i.emit(`update:${n}`,s),O(e,s)&&O(e,u)&&!O(s,d)&&c(),u=e,d=s}}});return c[Symbol.iterator]=()=>{let e=0;return{next(){return e<2?{value:e++?s||t:c,done:!1}:{done:!0}}}},c}var $r=(e,t)=>t===`modelValue`||t===`model-value`?e.modelModifiers:e[`${t}Modifiers`]||e[`${E(t)}Modifiers`]||e[`${D(t)}Modifiers`];function ei(e,n,...r){if(e.isUnmounted)return;let i=e.vnode.props||t,a=r,o=n.startsWith(`update:`),s=o&&$r(i,n.slice(7));s&&(s.trim&&(a=r.map(e=>g(e)?e.trim():e)),s.number&&(a=r.map(oe)));let c,l=i[c=ie(n)]||i[c=ie(E(n))];!l&&o&&(l=i[c=ie(D(n))]),l&&on(l,e,6,a);let u=i[c+`Once`];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[c])return;e.emitted[c]=!0,on(u,e,6,a)}}var ti=new WeakMap;function ni(e,t,n=!1){let r=n?ti:t.emitsCache,i=r.get(e);if(i!==void 0)return i;let a=e.emits,o={},c=!1;if(!h(e)){let r=e=>{let n=ni(e,t,!0);n&&(c=!0,s(o,n))};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}return!a&&!c?(v(e)&&r.set(e,null),null):(d(a)?a.forEach(e=>o[e]=null):s(o,a),v(e)&&r.set(e,o),o)}function ri(e,t){return!e||!a(t)?!1:(t=t.slice(2).replace(/Once$/,``),u(e,t[0].toLowerCase()+t.slice(1))||u(e,D(t))||u(e,t))}function ii(e){let{type:t,vnode:n,proxy:r,withProxy:i,propsOptions:[a],slots:s,attrs:c,emit:l,render:u,renderCache:d,props:f,data:p,setupState:m,ctx:h,inheritAttrs:g}=e,_=Tn(e),v,y;try{if(n.shapeFlag&4){let e=i||r,t=e;v=ia(u.call(t,e,d,f,m,p,h)),y=c}else{let e=t;v=ia(e.length>1?e(f,{attrs:c,slots:s,emit:l}):e(f,null)),y=t.props?c:ai(c)}}catch(t){Ui.length=0,sn(t,e,1),v=Q(q)}let b=v;if(y&&g!==!1){let e=Object.keys(y),{shapeFlag:t}=b;e.length&&t&7&&(a&&e.some(o)&&(y=oi(y,a)),b=ta(b,y,!1,!0))}return n.dirs&&(b=ta(b,null,!1,!0),b.dirs=b.dirs?b.dirs.concat(n.dirs):n.dirs),n.transition&&Qn(b,n.transition),v=b,Tn(_),v}var ai=e=>{let t;for(let n in e)(n===`class`||n===`style`||a(n))&&((t||={})[n]=e[n]);return t},oi=(e,t)=>{let n={};for(let r in e)(!o(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function si(e,t,n){let{props:r,children:i,component:a}=e,{props:o,children:s,patchFlag:c}=t,l=a.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return r?ci(r,o,l):!!o;if(c&8){let e=t.dynamicProps;for(let t=0;tObject.create(di),pi=e=>Object.getPrototypeOf(e)===di;function mi(e,t,n,r=!1){let i={},a=fi();e.propsDefaults=Object.create(null),gi(e,t,i,a);for(let t in e.propsOptions[0])t in i||(i[t]=void 0);n?e.props=r?i:Ft(i):e.type.props?e.props=i:e.props=a,e.attrs=a}function hi(e,t,n,r){let{props:i,attrs:a,vnode:{patchFlag:o}}=e,s=I(i),[c]=e.propsOptions,l=!1;if((r||o>0)&&!(o&16)){if(o&8){let n=e.vnode.dynamicProps;for(let r=0;r{p=!0;let[t,n]=yi(e,r,!0);s(l,t),n&&f.push(...n)};!i&&r.mixins.length&&r.mixins.forEach(t),e.extends&&t(e.extends),e.mixins&&e.mixins.forEach(t)}if(!c&&!p)return v(e)&&a.set(e,n),n;if(d(c))for(let e=0;ee===`_`||e===`_ctx`||e===`$stable`,Si=e=>d(e)?e.map(ia):[ia(e)],Ci=(e,t,n)=>{if(t._n)return t;let r=En((...e)=>Si(t(...e)),n);return r._c=!1,r},wi=(e,t,n)=>{let r=e._ctx;for(let n in e){if(xi(n))continue;let i=e[n];if(h(i))t[n]=Ci(n,i,r);else if(i!=null){let e=Si(i);t[n]=()=>e}}},Ti=(e,t)=>{let n=Si(t);e.slots.default=()=>n},Ei=(e,t,n)=>{for(let r in t)(n||!xi(r))&&(e[r]=t[r])},Di=(e,t,n)=>{let r=e.slots=fi();if(e.vnode.shapeFlag&32){let e=t._;e?(Ei(r,t,n),n&&k(r,`_`,e,!0)):wi(t,r)}else t&&Ti(e,t)},Oi=(e,n,r)=>{let{vnode:i,slots:a}=e,o=!0,s=t;if(i.shapeFlag&32){let e=n._;e?r&&e===1?o=!1:Ei(a,n,r):(o=!n.$stable,wi(n,a)),s=n}else n&&(Ti(e,n),s={default:1});if(o)for(let e in a)!xi(e)&&s[e]==null&&delete a[e]},G=Bi;function ki(e){return Ai(e)}function Ai(e,i){let a=le();a.__VUE__=!0;let{insert:o,remove:s,patchProp:c,createElement:l,createText:u,createComment:d,setText:f,setElementText:p,parentNode:m,nextSibling:h,setScopeId:g=r,insertStaticContent:_}=e,v=(e,t,n,r=null,i=null,a=null,o=void 0,s=null,c=!!t.dynamicChildren)=>{if(e===t)return;e&&!Xi(e,t)&&(r=ve(e),me(e,i,a,!0),e=null),t.patchFlag===-2&&(c=!1,t.dynamicChildren=null);let{type:l,ref:u,shapeFlag:d}=t;switch(l){case Vi:y(e,t,n,r);break;case q:b(e,t,n,r);break;case Hi:e??x(t,n,r,o);break;case K:ie(e,t,n,r,i,a,o,s,c);break;default:d&1?w(e,t,n,r,i,a,o,s,c):d&6?O(e,t,n,r,i,a,o,s,c):(d&64||d&128)&&l.process(e,t,n,r,i,a,o,s,c,xe)}u!=null&&i?ir(u,e&&e.ref,a,t||e,!t):u==null&&e&&e.ref!=null&&ir(e.ref,null,a,e,!0)},y=(e,t,n,r)=>{if(e==null)o(t.el=u(t.children),n,r);else{let n=t.el=e.el;t.children!==e.children&&f(n,t.children)}},b=(e,t,n,r)=>{e==null?o(t.el=d(t.children||``),n,r):t.el=e.el},x=(e,t,n,r)=>{[e.el,e.anchor]=_(e.children,t,n,r,e.el,e.anchor)},S=({el:e,anchor:t},n,r)=>{let i;for(;e&&e!==t;)i=h(e),o(e,n,r),e=i;o(t,n,r)},C=({el:e,anchor:t})=>{let n;for(;e&&e!==t;)n=h(e),s(e),e=n;s(t)},w=(e,t,n,r,i,a,o,s,c)=>{if(t.type===`svg`?o=`svg`:t.type===`math`&&(o=`mathml`),e==null)ee(t,n,r,i,a,o,s,c);else{let n=e.el&&e.el._isVueCE?e.el:null;try{n&&n._beginPatch(),ne(e,t,i,a,o,s,c)}finally{n&&n._endPatch()}}},ee=(e,t,n,r,i,a,s,u)=>{let d,f,{props:m,shapeFlag:h,transition:g,dirs:_}=e;if(d=e.el=l(e.type,a,m&&m.is,m),h&8?p(d,e.children):h&16&&E(e.children,d,null,r,i,ji(e,a),s,u),_&&On(e,null,r,`created`),te(d,e,e.scopeId,s,r),m){for(let e in m)e!==`value`&&!T(e)&&c(d,e,null,m[e],a,r);`value`in m&&c(d,`value`,null,m.value,a),(f=m.onVnodeBeforeMount)&&ca(f,r,e)}_&&On(e,null,r,`beforeMount`);let v=Ni(i,g);v&&g.beforeEnter(d),o(d,t,n),((f=m&&m.onVnodeMounted)||v||_)&&G(()=>{f&&ca(f,r,e),v&&g.enter(d),_&&On(e,null,r,`mounted`)},i)},te=(e,t,n,r,i)=>{if(n&&g(e,n),r)for(let t=0;t{for(let l=c;l{let l=n.el=e.el,{patchFlag:u,dynamicChildren:d,dirs:f}=n;u|=e.patchFlag&16;let m=e.props||t,h=n.props||t,g;if(r&&Mi(r,!1),(g=h.onVnodeBeforeUpdate)&&ca(g,r,n,e),f&&On(n,e,r,`beforeUpdate`),r&&Mi(r,!0),(m.innerHTML&&h.innerHTML==null||m.textContent&&h.textContent==null)&&p(l,``),d?D(e.dynamicChildren,d,l,r,i,ji(n,a),o):s||ue(e,n,l,null,r,i,ji(n,a),o,!1),u>0){if(u&16)re(l,m,h,r,a);else if(u&2&&m.class!==h.class&&c(l,`class`,null,h.class,a),u&4&&c(l,`style`,m.style,h.style,a),u&8){let e=n.dynamicProps;for(let t=0;t{g&&ca(g,r,n,e),f&&On(n,e,r,`updated`)},i)},D=(e,t,n,r,i,a,o)=>{for(let s=0;s{if(n!==r){if(n!==t)for(let t in n)!T(t)&&!(t in r)&&c(e,t,n[t],null,a,i);for(let t in r){if(T(t))continue;let o=r[t],s=n[t];o!==s&&t!==`value`&&c(e,t,s,o,a,i)}`value`in r&&c(e,`value`,n.value,r.value,a)}},ie=(e,t,n,r,i,a,s,c,l)=>{let d=t.el=e?e.el:u(``),f=t.anchor=e?e.anchor:u(``),{patchFlag:p,dynamicChildren:m,slotScopeIds:h}=t;h&&(c=c?c.concat(h):h),e==null?(o(d,n,r),o(f,n,r),E(t.children||[],n,f,i,a,s,c,l)):p>0&&p&64&&m&&e.dynamicChildren&&e.dynamicChildren.length===m.length?(D(e.dynamicChildren,m,n,i,a,s,c),(t.key!=null||i&&t===i.subTree)&&Pi(e,t,!0)):ue(e,t,n,f,i,a,s,c,l)},O=(e,t,n,r,i,a,o,s,c)=>{t.slotScopeIds=s,e==null?t.shapeFlag&512?i.ctx.activate(t,n,r,o,c):k(t,n,r,i,a,o,c):oe(e,t,c)},k=(e,t,n,r,i,a,o)=>{let s=e.component=da(e,r,i);if(sr(e)&&(s.ctx.renderer=xe),ya(s,!1,o),s.asyncDep){if(i&&i.registerDep(s,se,o),!e.el){let r=s.subTree=Q(q);b(null,r,t,n),e.placeholder=r.el}}else se(s,e,t,n,i,a,o)},oe=(e,t,n)=>{let r=t.component=e.component;if(si(e,t,n))if(r.asyncDep&&!r.asyncResolved){ce(r,t,n);return}else r.next=t,r.update();else t.el=e.el,r.vnode=t},se=(e,t,n,r,i,a,o)=>{let s=()=>{if(e.isMounted){let{next:t,bu:n,u:r,parent:s,vnode:c}=e;{let n=Ii(e);if(n){t&&(t.el=c.el,ce(e,t,o)),n.asyncDep.then(()=>{G(()=>{e.isUnmounted||l()},i)});return}}let u=t,d;Mi(e,!1),t?(t.el=c.el,ce(e,t,o)):t=c,n&&ae(n),(d=t.props&&t.props.onVnodeBeforeUpdate)&&ca(d,s,t,c),Mi(e,!0);let f=ii(e),p=e.subTree;e.subTree=f,v(p,f,m(p.el),ve(p),e,i,a),t.el=f.el,u===null&&ui(e,f.el),r&&G(r,i),(d=t.props&&t.props.onVnodeUpdated)&&G(()=>ca(d,s,t,c),i)}else{let o,{el:s,props:c}=t,{bm:l,m:u,parent:d,root:f,type:p}=e,m=or(t);if(Mi(e,!1),l&&ae(l),!m&&(o=c&&c.onVnodeBeforeMount)&&ca(o,d,t),Mi(e,!0),s&&Se){let t=()=>{e.subTree=ii(e),Se(s,e.subTree,e,i,null)};m&&p.__asyncHydrate?p.__asyncHydrate(s,e,t):t()}else{f.ce&&f.ce._hasShadowRoot()&&f.ce._injectChildStyle(p);let o=e.subTree=ii(e);v(null,o,n,r,e,i,a),t.el=o.el}if(u&&G(u,i),!m&&(o=c&&c.onVnodeMounted)){let e=t;G(()=>ca(o,d,e),i)}(t.shapeFlag&256||d&&or(d.vnode)&&d.vnode.shapeFlag&256)&&e.a&&G(e.a,i),e.isMounted=!0,t=n=r=null}};e.scope.on();let c=e.effect=new De(s);e.scope.off();let l=e.update=c.run.bind(c),u=e.job=c.runIfDirty.bind(c);u.i=e,u.id=e.uid,c.scheduler=()=>_n(u),Mi(e,!0),l()},ce=(e,t,n)=>{t.component=e;let r=e.vnode.props;e.vnode=t,e.next=null,hi(e,t.props,r,n),Oi(e,t.children,n),He(),bn(e),Ue()},ue=(e,t,n,r,i,a,o,s,c=!1)=>{let l=e&&e.children,u=e?e.shapeFlag:0,d=t.children,{patchFlag:f,shapeFlag:m}=t;if(f>0){if(f&128){fe(l,d,n,r,i,a,o,s,c);return}else if(f&256){de(l,d,n,r,i,a,o,s,c);return}}m&8?(u&16&&_e(l,i,a),d!==l&&p(n,d)):u&16?m&16?fe(l,d,n,r,i,a,o,s,c):_e(l,i,a,!0):(u&8&&p(n,``),m&16&&E(d,n,r,i,a,o,s,c))},de=(e,t,r,i,a,o,s,c,l)=>{e||=n,t||=n;let u=e.length,d=t.length,f=Math.min(u,d),p;for(p=0;pd?_e(e,a,o,!0,!1,f):E(t,r,i,a,o,s,c,l,f)},fe=(e,t,r,i,a,o,s,c,l)=>{let u=0,d=t.length,f=e.length-1,p=d-1;for(;u<=f&&u<=p;){let n=e[u],i=t[u]=l?aa(t[u]):ia(t[u]);if(Xi(n,i))v(n,i,r,null,a,o,s,c,l);else break;u++}for(;u<=f&&u<=p;){let n=e[f],i=t[p]=l?aa(t[p]):ia(t[p]);if(Xi(n,i))v(n,i,r,null,a,o,s,c,l);else break;f--,p--}if(u>f){if(u<=p){let e=p+1,n=ep)for(;u<=f;)me(e[u],a,o,!0),u++;else{let m=u,h=u,g=new Map;for(u=h;u<=p;u++){let e=t[u]=l?aa(t[u]):ia(t[u]);e.key!=null&&g.set(e.key,u)}let _,y=0,b=p-h+1,x=!1,S=0,C=Array(b);for(u=0;u=b){me(n,a,o,!0);continue}let i;if(n.key!=null)i=g.get(n.key);else for(_=h;_<=p;_++)if(C[_-h]===0&&Xi(n,t[_])){i=_;break}i===void 0?me(n,a,o,!0):(C[i-h]=u+1,i>=S?S=i:x=!0,v(n,t[i],r,null,a,o,s,c,l),y++)}let w=x?Fi(C):n;for(_=w.length-1,u=b-1;u>=0;u--){let e=h+u,n=t[e],f=t[e+1],p=e+1{let{el:a,type:c,transition:l,children:u,shapeFlag:d}=e;if(d&6){pe(e.component.subTree,t,n,r);return}if(d&128){e.suspense.move(t,n,r);return}if(d&64){c.move(e,t,n,xe);return}if(c===K){o(a,t,n);for(let e=0;el.enter(a),i);else{let{leave:r,delayLeave:i,afterLeave:c}=l,u=()=>{e.ctx.isUnmounted?s(a):o(a,t,n)},d=()=>{a._isLeaving&&a[Bn](!0),r(a,()=>{u(),c&&c()})};i?i(a,u,d):d()}else o(a,t,n)},me=(e,t,n,r=!1,i=!1)=>{let{type:a,props:o,ref:s,children:c,dynamicChildren:l,shapeFlag:u,patchFlag:d,dirs:f,cacheIndex:p}=e;if(d===-2&&(i=!1),s!=null&&(He(),ir(s,null,n,e,!0),Ue()),p!=null&&(t.renderCache[p]=void 0),u&256){t.ctx.deactivate(e);return}let m=u&1&&f,h=!or(e),g;if(h&&(g=o&&o.onVnodeBeforeUnmount)&&ca(g,t,e),u&6)ge(e.component,n,r);else{if(u&128){e.suspense.unmount(n,r);return}m&&On(e,null,t,`beforeUnmount`),u&64?e.type.remove(e,t,n,xe,r):l&&!l.hasOnce&&(a!==K||d>0&&d&64)?_e(l,t,n,!1,!0):(a===K&&d&384||!i&&u&16)&&_e(c,t,n),r&&A(e)}(h&&(g=o&&o.onVnodeUnmounted)||m)&&G(()=>{g&&ca(g,t,e),m&&On(e,null,t,`unmounted`)},n)},A=e=>{let{type:t,el:n,anchor:r,transition:i}=e;if(t===K){he(n,r);return}if(t===Hi){C(e);return}let a=()=>{s(n),i&&!i.persisted&&i.afterLeave&&i.afterLeave()};if(e.shapeFlag&1&&i&&!i.persisted){let{leave:t,delayLeave:r}=i,o=()=>t(n,a);r?r(e.el,a,o):o()}else a()},he=(e,t)=>{let n;for(;e!==t;)n=h(e),s(e),e=n;s(t)},ge=(e,t,n)=>{let{bum:r,scope:i,job:a,subTree:o,um:s,m:c,a:l}=e;Li(c),Li(l),r&&ae(r),i.stop(),a&&(a.flags|=8,me(o,e,t,n)),s&&G(s,t),G(()=>{e.isUnmounted=!0},t)},_e=(e,t,n,r=!1,i=!1,a=0)=>{for(let o=a;o{if(e.shapeFlag&6)return ve(e.component.subTree);if(e.shapeFlag&128)return e.suspense.next();let t=h(e.anchor||e.el),n=t&&t[Rn];return n?h(n):t},ye=!1,be=(e,t,n)=>{let r;e==null?t._vnode&&(me(t._vnode,null,null,!0),r=t._vnode.component):v(t._vnode||null,e,t,null,null,null,n),t._vnode=e,ye||=(ye=!0,bn(r),xn(),!1)},xe={p:v,um:me,m:pe,r:A,mt:k,mc:E,pc:ue,pbc:D,n:ve,o:e},j,Se;return i&&([j,Se]=i(xe)),{render:be,hydrate:j,createApp:Xr(be,j)}}function ji({type:e,props:t},n){return n===`svg`&&e===`foreignObject`||n===`mathml`&&e===`annotation-xml`&&t&&t.encoding&&t.encoding.includes(`html`)?void 0:n}function Mi({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Ni(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Pi(e,t,n=!1){let r=e.children,i=t.children;if(d(r)&&d(i))for(let e=0;e>1,e[n[s]]0&&(t[r]=n[a-1]),n[a]=r)}}for(a=n.length,o=n[a-1];a-- >0;)n[a]=o,o=t[o];return n}function Ii(e){let t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Ii(t)}function Li(e){if(e)for(let t=0;te.__isSuspense;function Bi(e,t){t&&t.pendingBranch?d(e)?t.effects.push(...e):t.effects.push(e):yn(e)}var K=Symbol.for(`v-fgt`),Vi=Symbol.for(`v-txt`),q=Symbol.for(`v-cmt`),Hi=Symbol.for(`v-stc`),Ui=[],J=null;function Y(e=!1){Ui.push(J=e?null:[])}function Wi(){Ui.pop(),J=Ui[Ui.length-1]||null}var Gi=1;function Ki(e,t=!1){Gi+=e,e<0&&J&&t&&(J.hasOnce=!0)}function qi(e){return e.dynamicChildren=Gi>0?J||n:null,Wi(),Gi>0&&J&&J.push(e),e}function X(e,t,n,r,i,a){return qi(Z(e,t,n,r,i,a,!0))}function Ji(e,t,n,r,i){return qi(Q(e,t,n,r,i,!0))}function Yi(e){return e?e.__v_isVNode===!0:!1}function Xi(e,t){return e.type===t.type&&e.key===t.key}var Zi=({key:e})=>e??null,Qi=({ref:e,ref_key:t,ref_for:n})=>(typeof e==`number`&&(e=``+e),e==null?null:g(e)||L(e)||h(e)?{i:V,r:e,k:t,f:!!n}:e);function Z(e,t=null,n=null,r=0,i=null,a=e===K?0:1,o=!1,s=!1){let c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Zi(t),ref:t&&Qi(t),scopeId:wn,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:a,patchFlag:r,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:V};return s?(oa(c,n),a&128&&e.normalize(c)):n&&(c.shapeFlag|=g(n)?8:16),Gi>0&&!o&&J&&(c.patchFlag>0||a&6)&&c.patchFlag!==32&&J.push(c),c}var Q=$i;function $i(e,t=null,n=null,r=0,i=null,a=!1){if((!e||e===wr)&&(e=q),Yi(e)){let r=ta(e,t,!0);return n&&oa(r,n),Gi>0&&!a&&J&&(r.shapeFlag&6?J[J.indexOf(e)]=r:J.push(r)),r.patchFlag=-2,r}if(Oa(e)&&(e=e.__vccOpts),t){t=ea(t);let{class:e,style:n}=t;e&&!g(e)&&(t.class=A(e)),v(n)&&(Bt(n)&&!d(n)&&(n=s({},n)),t.style=ue(n))}let o=g(e)?1:zi(e)?128:zn(e)?64:v(e)?4:h(e)?2:0;return Z(e,t,n,r,i,o,a,!0)}function ea(e){return e?Bt(e)||pi(e)?s({},e):e:null}function ta(e,t,n=!1,r=!1){let{props:i,ref:a,patchFlag:o,children:s,transition:c}=e,l=t?sa(i||{},t):i,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:l,key:l&&Zi(l),ref:t&&t.ref?n&&a?d(a)?a.concat(Qi(t)):[a,Qi(t)]:Qi(t):a,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:s,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==K?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&ta(e.ssContent),ssFallback:e.ssFallback&&ta(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&r&&Qn(u,c.clone(u)),u}function na(e=` `,t=0){return Q(Vi,null,e,t)}function ra(e=``,t=!1){return t?(Y(),Ji(q,null,e)):Q(q,null,e)}function ia(e){return e==null||typeof e==`boolean`?Q(q):d(e)?Q(K,null,e.slice()):Yi(e)?aa(e):Q(Vi,null,String(e))}function aa(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:ta(e)}function oa(e,t){let n=0,{shapeFlag:r}=e;if(t==null)t=null;else if(d(t))n=16;else if(typeof t==`object`)if(r&65){let n=t.default;n&&(n._c&&(n._d=!1),oa(e,n()),n._c&&(n._d=!0));return}else{n=32;let r=t._;!r&&!pi(t)?t._ctx=V:r===3&&V&&(V.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else h(t)?(t={default:t,_ctx:V},n=32):(t=String(t),r&64?(n=16,t=[na(t)]):n=8);e.children=t,e.shapeFlag|=n}function sa(...e){let t={};for(let n=0;n$||V,pa,ma;{let e=le(),t=(t,n)=>{let r;return(r=e[t])||(r=e[t]=[]),r.push(n),e=>{r.length>1?r.forEach(t=>t(e)):r[0](e)}};pa=t(`__VUE_INSTANCE_SETTERS__`,e=>$=e),ma=t(`__VUE_SSR_SETTERS__`,e=>va=e)}var ha=e=>{let t=$;return pa(e),e.scope.on(),()=>{e.scope.off(),pa(t)}},ga=()=>{$&&$.scope.off(),pa(null)};function _a(e){return e.vnode.shapeFlag&4}var va=!1;function ya(e,t=!1,n=!1){t&&ma(t);let{props:r,children:i}=e.vnode,a=_a(e);mi(e,r,a,t),Di(e,i,n||t);let o=a?ba(e,t):void 0;return t&&ma(!1),o}function ba(e,t){let n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,jr);let{setup:r}=n;if(r){He();let n=e.setupContext=r.length>1?Ea(e):null,i=ha(e),a=an(r,e,0,[e.props,n]),o=y(a);if(Ue(),i(),(o||e.sp)&&!or(e)&&tr(e),o){if(a.then(ga,ga),t)return a.then(n=>{xa(e,n,t)}).catch(t=>{sn(t,e,0)});e.asyncDep=a}else xa(e,a,t)}else wa(e,t)}function xa(e,t,n){h(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:v(t)&&(e.setupState=qt(t)),wa(e,n)}var Sa,Ca;function wa(e,t,n){let i=e.type;if(!e.render){if(!t&&Sa&&!i.render){let t=i.template||zr(e).template;if(t){let{isCustomElement:n,compilerOptions:r}=e.appContext.config,{delimiters:a,compilerOptions:o}=i;i.render=Sa(t,s(s({isCustomElement:n,delimiters:a},r),o))}}e.render=i.render||r,Ca&&Ca(e)}{let t=ha(e);He();try{Fr(e)}finally{Ue(),t()}}}var Ta={get(e,t){return P(e,`get`,``),e[t]}};function Ea(e){return{attrs:new Proxy(e.attrs,Ta),slots:e.slots,emit:e.emit,expose:t=>{e.exposed=t||{}}}}function Da(e){return e.exposed?e.exposeProxy||=new Proxy(qt(Vt(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in kr)return kr[n](e)},has(e,t){return t in e||t in kr}}):e.proxy}function Oa(e){return h(e)&&`__vccOpts`in e}var ka=(e,t)=>Zt(e,t,va);function Aa(e,t,n){try{Ki(-1);let r=arguments.length;return r===2?v(t)&&!d(t)?Yi(t)?Q(e,null,[t]):Q(e,t):Q(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&Yi(n)&&(n=[n]),Q(e,t,n))}finally{Ki(1)}}var ja=`3.5.29`,Ma=void 0,Na=typeof window<`u`&&window.trustedTypes;if(Na)try{Ma=Na.createPolicy(`vue`,{createHTML:e=>e})}catch{}var Pa=Ma?e=>Ma.createHTML(e):e=>e,Fa=`http://www.w3.org/2000/svg`,Ia=`http://www.w3.org/1998/Math/MathML`,La=typeof document<`u`?document:null,Ra=La&&La.createElement(`template`),za={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{let t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{let i=t===`svg`?La.createElementNS(Fa,e):t===`mathml`?La.createElementNS(Ia,e):n?La.createElement(e,{is:n}):La.createElement(e);return e===`select`&&r&&r.multiple!=null&&i.setAttribute(`multiple`,r.multiple),i},createText:e=>La.createTextNode(e),createComment:e=>La.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>La.querySelector(e),setScopeId(e,t){e.setAttribute(t,``)},insertStaticContent(e,t,n,r,i,a){let o=n?n.previousSibling:t.lastChild;if(i&&(i===a||i.nextSibling))for(;t.insertBefore(i.cloneNode(!0),n),!(i===a||!(i=i.nextSibling)););else{Ra.innerHTML=Pa(r===`svg`?`${e}`:r===`mathml`?`${e}`:e);let i=Ra.content;if(r===`svg`||r===`mathml`){let e=i.firstChild;for(;e.firstChild;)i.appendChild(e.firstChild);i.removeChild(e)}t.insertBefore(i,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Ba=`transition`,Va=`animation`,Ha=Symbol(`_vtc`),Ua={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},Wa=s({},Un,Ua),Ga=(e=>(e.displayName=`Transition`,e.props=Wa,e))((e,{slots:t})=>Aa(qn,Ja(e),t)),Ka=(e,t=[])=>{d(e)?e.forEach(e=>e(...t)):e&&e(...t)},qa=e=>e?d(e)?e.some(e=>e.length>1):e.length>1:!1;function Ja(e){let t={};for(let n in e)n in Ua||(t[n]=e[n]);if(e.css===!1)return t;let{name:n=`v`,type:r,duration:i,enterFromClass:a=`${n}-enter-from`,enterActiveClass:o=`${n}-enter-active`,enterToClass:c=`${n}-enter-to`,appearFromClass:l=a,appearActiveClass:u=o,appearToClass:d=c,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:m=`${n}-leave-to`}=e,h=Ya(i),g=h&&h[0],_=h&&h[1],{onBeforeEnter:v,onEnter:y,onEnterCancelled:b,onLeave:x,onLeaveCancelled:S,onBeforeAppear:C=v,onAppear:w=y,onAppearCancelled:T=b}=t,ee=(e,t,n,r)=>{e._enterCancelled=r,Qa(e,t?d:c),Qa(e,t?u:o),n&&n()},te=(e,t)=>{e._isLeaving=!1,Qa(e,f),Qa(e,m),Qa(e,p),t&&t()},E=e=>(t,n)=>{let i=e?w:y,o=()=>ee(t,e,n);Ka(i,[t,o]),$a(()=>{Qa(t,e?l:a),Za(t,e?d:c),qa(i)||to(t,r,g,o)})};return s(t,{onBeforeEnter(e){Ka(v,[e]),Za(e,a),Za(e,o)},onBeforeAppear(e){Ka(C,[e]),Za(e,l),Za(e,u)},onEnter:E(!1),onAppear:E(!0),onLeave(e,t){e._isLeaving=!0;let n=()=>te(e,t);Za(e,f),e._enterCancelled?(Za(e,p),ao(e)):(ao(e),Za(e,p)),$a(()=>{e._isLeaving&&(Qa(e,f),Za(e,m),qa(x)||to(e,r,_,n))}),Ka(x,[e,n])},onEnterCancelled(e){ee(e,!1,void 0,!0),Ka(b,[e])},onAppearCancelled(e){ee(e,!0,void 0,!0),Ka(T,[e])},onLeaveCancelled(e){te(e),Ka(S,[e])}})}function Ya(e){if(e==null)return null;if(v(e))return[Xa(e.enter),Xa(e.leave)];{let t=Xa(e);return[t,t]}}function Xa(e){return se(e)}function Za(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.add(t)),(e[Ha]||(e[Ha]=new Set)).add(t)}function Qa(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.remove(t));let n=e[Ha];n&&(n.delete(t),n.size||(e[Ha]=void 0))}function $a(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}var eo=0;function to(e,t,n,r){let i=e._endId=++eo,a=()=>{i===e._endId&&r()};if(n!=null)return setTimeout(a,n);let{type:o,timeout:s,propCount:c}=no(e,t);if(!o)return r();let l=o+`end`,u=0,d=()=>{e.removeEventListener(l,f),a()},f=t=>{t.target===e&&++u>=c&&d()};setTimeout(()=>{u(n[e]||``).split(`, `),i=r(`${Ba}Delay`),a=r(`${Ba}Duration`),o=ro(i,a),s=r(`${Va}Delay`),c=r(`${Va}Duration`),l=ro(s,c),u=null,d=0,f=0;t===Ba?o>0&&(u=Ba,d=o,f=a.length):t===Va?l>0&&(u=Va,d=l,f=c.length):(d=Math.max(o,l),u=d>0?o>l?Ba:Va:null,f=u?u===Ba?a.length:c.length:0);let p=u===Ba&&/\b(?:transform|all)(?:,|$)/.test(r(`${Ba}Property`).toString());return{type:u,timeout:d,propCount:f,hasTransform:p}}function ro(e,t){for(;e.lengthio(t)+io(e[n])))}function io(e){return e===`auto`?0:Number(e.slice(0,-1).replace(`,`,`.`))*1e3}function ao(e){return(e?e.ownerDocument:document).body.offsetHeight}function oo(e,t,n){let r=e[Ha];r&&(t=(t?[t,...r]:[...r]).join(` `)),t==null?e.removeAttribute(`class`):n?e.setAttribute(`class`,t):e.className=t}var so=Symbol(`_vod`),co=Symbol(`_vsh`),lo=Symbol(``),uo=/(?:^|;)\s*display\s*:/;function fo(e,t,n){let r=e.style,i=g(n),a=!1;if(n&&!i){if(t)if(g(t))for(let e of t.split(`;`)){let t=e.slice(0,e.indexOf(`:`)).trim();n[t]??mo(r,t,``)}else for(let e in t)n[e]??mo(r,e,``);for(let e in n)e===`display`&&(a=!0),mo(r,e,n[e])}else if(i){if(t!==n){let e=r[lo];e&&(n+=`;`+e),r.cssText=n,a=uo.test(n)}}else t&&e.removeAttribute(`style`);so in e&&(e[so]=a?r.display:``,e[co]&&(r.display=`none`))}var po=/\s*!important$/;function mo(e,t,n){if(d(n))n.forEach(n=>mo(e,t,n));else if(n??=``,t.startsWith(`--`))e.setProperty(t,n);else{let r=_o(e,t);po.test(n)?e.setProperty(D(r),n.replace(po,``),`important`):e[r]=n}}var ho=[`Webkit`,`Moz`,`ms`],go={};function _o(e,t){let n=go[t];if(n)return n;let r=E(t);if(r!==`filter`&&r in e)return go[t]=r;r=re(r);for(let n=0;nDo||=(Oo.then(()=>Do=0),Date.now());function Ao(e,t){let n=e=>{if(!e._vts)e._vts=Date.now();else if(e._vts<=n.attached)return;on(jo(e,n.value),t,5,[e])};return n.value=e,n.attached=ko(),n}function jo(e,t){if(d(t)){let n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(e=>t=>!t._stopped&&e&&e(t))}else return t}var Mo=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,No=(e,t,n,r,i,s)=>{let c=i===`svg`;t===`class`?oo(e,r,c):t===`style`?fo(e,n,r):a(t)?o(t)||wo(e,t,n,r,s):(t[0]===`.`?(t=t.slice(1),!0):t[0]===`^`?(t=t.slice(1),!1):Po(e,t,r,c))?(bo(e,t,r),!e.tagName.includes(`-`)&&(t===`value`||t===`checked`||t===`selected`)&&yo(e,t,r,c,s,t!==`value`)):e._isVueCE&&(/[A-Z]/.test(t)||!g(r))?bo(e,E(t),r,s,t):(t===`true-value`?e._trueValue=r:t===`false-value`&&(e._falseValue=r),yo(e,t,r,c))};function Po(e,t,n,r){if(r)return!!(t===`innerHTML`||t===`textContent`||t in e&&Mo(t)&&h(n));if(t===`spellcheck`||t===`draggable`||t===`translate`||t===`autocorrect`||t===`sandbox`&&e.tagName===`IFRAME`||t===`form`||t===`list`&&e.tagName===`INPUT`||t===`type`&&e.tagName===`TEXTAREA`)return!1;if(t===`width`||t===`height`){let t=e.tagName;if(t===`IMG`||t===`VIDEO`||t===`CANVAS`||t===`SOURCE`)return!1}return Mo(t)&&g(n)?!1:t in e}var Fo=e=>{let t=e.props[`onUpdate:modelValue`]||!1;return d(t)?e=>ae(t,e):t};function Io(e){e.target.composing=!0}function Lo(e){let t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event(`input`)))}var Ro=Symbol(`_assign`);function zo(e,t,n){return t&&(e=e.trim()),n&&(e=oe(e)),e}var Bo={created(e,{modifiers:{lazy:t,trim:n,number:r}},i){e[Ro]=Fo(i);let a=r||i.props&&i.props.type===`number`;xo(e,t?`change`:`input`,t=>{t.target.composing||e[Ro](zo(e.value,n,a))}),(n||a)&&xo(e,`change`,()=>{e.value=zo(e.value,n,a)}),t||(xo(e,`compositionstart`,Io),xo(e,`compositionend`,Lo),xo(e,`change`,Lo))},mounted(e,{value:t}){e.value=t??``},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:r,trim:i,number:a}},o){if(e[Ro]=Fo(o),e.composing)return;let s=(a||e.type===`number`)&&!/^0\d/.test(e.value)?oe(e.value):e.value,c=t??``;s!==c&&(document.activeElement===e&&e.type!==`range`&&(r&&t===n||i&&e.value.trim()===c)||(e.value=c))}},Vo={deep:!0,created(e,t,n){e[Ro]=Fo(n),xo(e,`change`,()=>{let t=e._modelValue,n=Ko(e),r=e.checked,i=e[Ro];if(d(t)){let e=be(t,n),a=e!==-1;if(r&&!a)i(t.concat(n));else if(!r&&a){let n=[...t];n.splice(e,1),i(n)}}else if(p(t)){let e=new Set(t);r?e.add(n):e.delete(n),i(e)}else i(qo(e,r))})},mounted:Ho,beforeUpdate(e,t,n){e[Ro]=Fo(n),Ho(e,t,n)}};function Ho(e,{value:t,oldValue:n},r){e._modelValue=t;let i;if(d(t))i=be(t,r.props.value)>-1;else if(p(t))i=t.has(r.props.value);else{if(t===n)return;i=ye(t,qo(e,!0))}e.checked!==i&&(e.checked=i)}var Uo={created(e,{value:t},n){e.checked=ye(t,n.props.value),e[Ro]=Fo(n),xo(e,`change`,()=>{e[Ro](Ko(e))})},beforeUpdate(e,{value:t,oldValue:n},r){e[Ro]=Fo(r),t!==n&&(e.checked=ye(t,r.props.value))}},Wo={deep:!0,created(e,{value:t,modifiers:{number:n}},r){let i=p(t);xo(e,`change`,()=>{let t=Array.prototype.filter.call(e.options,e=>e.selected).map(e=>n?oe(Ko(e)):Ko(e));e[Ro](e.multiple?i?new Set(t):t:t[0]),e._assigning=!0,hn(()=>{e._assigning=!1})}),e[Ro]=Fo(r)},mounted(e,{value:t}){Go(e,t)},beforeUpdate(e,t,n){e[Ro]=Fo(n)},updated(e,{value:t}){e._assigning||Go(e,t)}};function Go(e,t){let n=e.multiple,r=d(t);if(!(n&&!r&&!p(t))){for(let i=0,a=e.options.length;iString(e)===String(o)):a.selected=be(t,o)>-1}else a.selected=t.has(o);else if(ye(Ko(a),t)){e.selectedIndex!==i&&(e.selectedIndex=i);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Ko(e){return`_value`in e?e._value:e.value}function qo(e,t){let n=t?`_trueValue`:`_falseValue`;return n in e?e[n]:t}var Jo={created(e,t,n){Xo(e,t,n,null,`created`)},mounted(e,t,n){Xo(e,t,n,null,`mounted`)},beforeUpdate(e,t,n,r){Xo(e,t,n,r,`beforeUpdate`)},updated(e,t,n,r){Xo(e,t,n,r,`updated`)}};function Yo(e,t){switch(e){case`SELECT`:return Wo;case`TEXTAREA`:return Bo;default:switch(t){case`checkbox`:return Vo;case`radio`:return Uo;default:return Bo}}}function Xo(e,t,n,r,i){let a=Yo(e.tagName,n.props&&n.props.type)[i];a&&a(e,t,n,r)}var Zo=s({patchProp:No},za),Qo;function $o(){return Qo||=ki(Zo)}var es=((...e)=>{let t=$o().createApp(...e),{mount:n}=t;return t.mount=e=>{let r=ns(e);if(!r)return;let i=t._component;!h(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent=``);let a=n(r,!1,ts(r));return r instanceof Element&&(r.removeAttribute(`v-cloak`),r.setAttribute(`data-v-app`,``)),a},t});function ts(e){if(e instanceof SVGElement)return`svg`;if(typeof MathMLElement==`function`&&e instanceof MathMLElement)return`mathml`}function ns(e){return g(e)?document.querySelector(e):e}var rs=U({__name:`ButtonPrimary`,props:{isLoading:{type:Boolean},label:{}},emits:[`click`],setup(e,{emit:t}){let n=t;function r(e){n(`click`,e)}return(t,n)=>(Y(),X(`button`,{class:A([`homey-button-primary-full`,{"is-loading":e.isLoading}]),type:`button`,onClick:r},j(e.label),3))}}),is=U({__name:`ButtonTransparent`,props:{label:{}},emits:[`click`],setup(e,{emit:t}){let n=t;function r(e){n(`click`,e)}return(t,n)=>(Y(),X(`button`,{class:`homey-button-transparent`,type:`button`,onClick:r},j(e.label),1))}}),as={class:`homey-form-fieldset`},os={class:`homey-form-legend`},ss={class:`homey-form-group`,style:{"margin-top":`6px`,"text-wrap":`pretty`}},cs={class:`homey-form-group`},ls=U({__name:`FormFieldset`,props:{description:{},title:{}},setup(e){return(t,n)=>(Y(),X(`fieldset`,as,[Z(`legend`,os,j(e.title),1),Z(`div`,ss,j(e.description),1),Z(`div`,cs,[Er(t.$slots,`default`)])]))}}),us=U({__name:`Icon`,props:{icon:{}},setup(e){return(t,n)=>(Y(),X(`div`,{class:A(t.$style.uiIcon),"data-icon":``,style:ue({"--icon":JSON.stringify(e.icon),"--icon-secondary":JSON.stringify(e.icon+e.icon)})},null,6))}}),ds={uiIcon:`i`},fs=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},ps=fs(us,[[`__cssModules`,{$style:ds}]]),ms=[`onClick`],hs=fs(U({__name:`Category`,props:{description:{},empty:{},items:{},title:{}},emits:[`edit`],setup(e,{emit:t}){let n=t;function r(e){n(`edit`,e)}return(t,n)=>(Y(),Ji(ls,{title:e.title,description:e.description},{default:En(()=>[e.items.length>0?(Y(),X(`div`,{key:0,class:A(t.$style.categoryItems)},[(Y(!0),X(K,null,Tr(e.items,e=>(Y(),X(`div`,{key:e.name,class:A(t.$style.categoryItem),onClick:t=>r(e)},[Q(ps,{class:A(t.$style.categoryItemIcon),icon:e.icon??``,style:ue({"--color":e.color})},null,8,[`class`,`icon`,`style`]),Z(`span`,{class:A(t.$style.categoryItemCaption)},j(e.name),3),Q(ps,{icon:``,style:{"--size":`16px`}})],10,ms))),128))],2)):(Y(),X(`div`,{key:1,class:A(t.$style.categoryEmpty)},j(e.empty),3))]),_:1},8,[`title`,`description`]))}}),[[`__cssModules`,{$style:{categoryEmpty:`r`,categoryItems:`s`,categoryItem:`t`,categoryItemCaption:`u`,categoryItemIcon:`v`}}]]);const gs=Symbol(),_s=Symbol();var vs={currentFlags:[],currentMode:null,numberOfCycles:0,numberOfEvents:0,numberOfFlags:0,numberOfLabels:0,numberOfModes:0,numberOfNoRepeats:0,numberOfSets:0,numberOfSliders:0,numberOfTimers:0,runsPerFlowCard:{},usagePerFlowCard:{}};function ys(){return e=>Homey.__(e)??e}function bs(){let e=R([]),t=R(!1);async function n(){t.value=!0,e.value=await Homey.api(`GET`,`/colors`),t.value=!1}return kn(gs,e),{isLoading:t,items:e,load:n}}function xs(){let e=R([]),t=R(!1);async function n(){t.value=!0,e.value=await Homey.api(`GET`,`/icons`),t.value=!1}return kn(_s,e),{isLoading:t,items:e,load:n}}function Ss(){return js(`/cycles`)}function Cs(){return js(`/events`)}function ws(){return js(`/flags`)}function Ts(){return js(`/labels`)}function Es(){return js(`/modes`)}function Ds(){return js(`/sets`)}function Os(){return js(`/timers`)}function ks(){let e=R(vs),t=R(!1);return{isLoading:t,result:e,load:async()=>{t.value=!0,e.value=await Homey.api(`GET`,`/statistics`),t.value=!1}}}function As(e,t,n){return r=>{t.value=r,n.value=e}}function js(e){let t=R([]),n=R(!0);return{isLoading:n,items:t,load:async()=>{n.value=!0,t.value=await Homey.api(`GET`,e),n.value=!1}}}function Ms(e,t,n,r,i){return async(a,o)=>{r.value=!0,await Homey.api(`POST`,e,{name:a,color:o.color,icon:o.icon}),await i(),t.value=null,n.value=null,r.value=!1}}var Ns=[`title`,`onClick`],Ps=fs(U({__name:`ColorPicker`,props:{modelValue:{},modelModifiers:{}},emits:[`update:modelValue`],setup(e){let t=Qr(e,`modelValue`),n=ys(),r=An(gs);return(e,i)=>(Y(),X(`div`,{class:A(e.$style.colorSelect)},[(Y(!0),X(K,null,Tr(z(r),r=>(Y(),X(`div`,{class:A(t.value===r.hex?e.$style.colorSelectItemActive:e.$style.colorSelectItem),style:ue({"--color":r.hex}),title:z(n)(r.label),onClick:e=>t.value=r.hex},null,14,Ns))),256))],2))}}),[[`__cssModules`,{$style:{colorSelect:`f`,colorSelectItem:`g`,colorSelectItemActive:`h g`}}]]),Fs={class:`homey-form-fieldset`},Is={class:`homey-form-legend`},Ls={key:0,class:`homey-form-group`,style:{"margin-top":`6px`}},Rs={key:1,class:`homey-form-group`},zs={class:`homey-form-group`},Bs=U({__name:`FormGroup`,props:{description:{},title:{}},setup(e){return(t,n)=>(Y(),X(`fieldset`,Fs,[Z(`legend`,Is,j(e.title),1),e.description?(Y(),X(`div`,Ls,j(e.description),1)):ra(``,!0),t.$slots.before?(Y(),X(`div`,Rs,[Er(t.$slots,`before`)])):ra(``,!0),Z(`div`,zs,[Er(t.$slots,`default`)])]))}}),Vs=U({__name:`Documentation`,setup(e){let t=ys();return(e,n)=>(Y(),Ji(Bs,{title:z(t)(`settings.documentation.title`),description:z(t)(`settings.documentation.description`)},null,8,[`title`,`description`]))}}),Hs=[`for`],Us=[`disabled`,`id`,`type`],Ws=U({__name:`FormInput`,props:Nr({disabled:{type:Boolean},label:{},type:{}},{modelValue:{},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=Qr(e,`modelValue`),n=er();return(r,i)=>(Y(),X(K,null,[e.label?(Y(),X(`label`,{key:0,class:`homey-form-label`,for:z(n)},j(e.label),9,Hs)):ra(``,!0),Dn(Z(`input`,{class:`homey-form-input`,disabled:e.disabled,id:z(n),type:e.type,"onUpdate:modelValue":i[0]||=e=>t.value=e},null,8,Us),[[Jo,t.value]])],64))}}),Gs=fs(U({__name:`IconPicker`,props:{modelValue:{},modelModifiers:{}},emits:[`update:modelValue`],setup(e){let t=Qr(e,`modelValue`),n=ys(),r=An(_s),i=R(``),a=ka(()=>{let e=z(i).toLowerCase().trim();return z(r).filter(n=>e.length>0&&n.name.toLowerCase().includes(e)||e.length===0&&n.unicode===z(t)).slice(0,54)});return(e,r)=>(Y(),X(K,null,[Q(Ws,{modelValue:i.value,"onUpdate:modelValue":r[0]||=e=>i.value=e,label:z(n)(`settings.search`),type:`text`},null,8,[`modelValue`,`label`]),Z(`div`,{class:A(e.$style.iconSelect)},[(Y(!0),X(K,null,Tr(a.value,n=>(Y(),Ji(ps,{class:A(t.value===n.unicode?e.$style.iconSelectItemActive:e.$style.iconSelectItem),icon:n.unicode,title:n.name,onClick:e=>t.value=n.unicode},null,8,[`class`,`icon`,`title`,`onClick`]))),256))],2)],64))}}),[[`__cssModules`,{$style:{iconSelect:`j`,iconSelectItem:`k`,iconSelectItemActive:`l k`}}]]),Ks=fs(U({__name:`Edit`,props:{isSaving:{type:Boolean},item:{}},emits:[`close`,`save`],setup(e,{emit:t}){let n=t,r=ys(),i=Pt({color:e.item.color??`#204ef6`,icon:e.item.icon??``});function a(){n(`close`)}function o(){n(`save`,e.item.name,i)}return(t,n)=>(Y(),X(`div`,{class:A(t.$style.editOverlay)},[Z(`div`,{class:A(t.$style.edit)},[Q(ps,{class:A(t.$style.editIcon),icon:i.icon,style:ue({"--color":i.color})},null,8,[`class`,`icon`,`style`]),Z(`div`,{class:A(t.$style.editName)},j(e.item.name),3),Q(Bs,{title:z(r)(`settings.edit.color`)},{default:En(()=>[Q(Ps,{modelValue:i.color,"onUpdate:modelValue":n[0]||=e=>i.color=e},null,8,[`modelValue`])]),_:1},8,[`title`]),Q(Bs,{title:z(r)(`settings.edit.icon`)},{default:En(()=>[Q(Gs,{modelValue:i.icon,"onUpdate:modelValue":n[1]||=e=>i.icon=e},null,8,[`modelValue`])]),_:1},8,[`title`]),Q(rs,{"is-loading":e.isSaving,label:z(r)(`settings.save`),onClick:n[2]||=e=>o()},null,8,[`is-loading`,`label`]),Q(is,{label:z(r)(`settings.close`),onClick:n[3]||=e=>a()},null,8,[`label`])],2)],2))}}),[[`__cssModules`,{$style:{editOverlay:`w`,edit:`a`,editIcon:`x`,editName:`y`}}]]),qs={class:`homey-form`},Js=U({__name:`Form`,setup(e){return(e,t)=>(Y(),X(`form`,qs,[Er(e.$slots,`default`)]))}}),Ys=fs(U({__name:`Statistic`,props:{icon:{},name:{},value:{}},setup(e){let t=new Intl.NumberFormat(navigator.language,{maximumFractionDigits:0,minimumFractionDigits:0}),n=ka(()=>{let n=z(e.value);return typeof n==`number`?t.format(n):n});return(t,r)=>(Y(),X(`div`,{class:A(t.$style.statistic)},[Q(ps,{class:A(t.$style.statisticIcon),icon:e.icon},null,8,[`class`,`icon`]),Z(`div`,{class:A(t.$style.statisticValue)},j(n.value),3),Z(`div`,{class:A(t.$style.statisticName)},j(e.name),3)],2))}}),[[`__cssModules`,{$style:{statistic:`b`,statisticIcon:`c`,statisticName:`d`,statisticValue:`e`}}]]),Xs=fs(U({__name:`Statistics`,setup(e){let t=ys(),{load:n,result:r}=ks();return hr(n),(e,n)=>(Y(),X(K,null,[Q(Bs,{title:z(t)(`settings.statistics.title`),description:z(t)(`settings.statistics.description`)},{default:En(()=>[Z(`div`,{class:A(e.$style.statisticsGrid)},[Q(Ys,{icon:``,name:z(t)(`settings.statistics.cycles`),value:z(r).numberOfCycles},null,8,[`name`,`value`]),Q(Ys,{icon:``,name:z(t)(`settings.statistics.events`),value:z(r).numberOfEvents},null,8,[`name`,`value`]),Q(Ys,{icon:``,name:z(t)(`settings.statistics.flags`),value:z(r).numberOfFlags},null,8,[`name`,`value`]),Q(Ys,{icon:``,name:z(t)(`settings.statistics.labels`),value:z(r).numberOfLabels},null,8,[`name`,`value`]),Q(Ys,{icon:``,name:z(t)(`settings.statistics.modes`),value:z(r).numberOfModes},null,8,[`name`,`value`]),Q(Ys,{icon:``,name:z(t)(`settings.statistics.no_repeats`),value:z(r).numberOfNoRepeats},null,8,[`name`,`value`]),Q(Ys,{icon:``,name:z(t)(`settings.statistics.sets`),value:z(r).numberOfSets},null,8,[`name`,`value`]),Q(Ys,{icon:``,name:z(t)(`settings.statistics.sliders`),value:z(r).numberOfSliders},null,8,[`name`,`value`]),Q(Ys,{icon:``,name:z(t)(`settings.statistics.timers`),value:z(r).numberOfTimers},null,8,[`name`,`value`])],2)]),_:1},8,[`title`,`description`]),Q(Bs,{title:z(t)(`settings.card_statistics.title`),description:z(t)(`settings.card_statistics.description`)},{default:En(()=>[Z(`div`,{class:A(e.$style.statisticsTable)},[(Y(!0),X(K,null,Tr(z(r).usagePerFlowCard,t=>(Y(),X(`div`,{class:A(e.$style.statisticsTableRow)},[Z(`div`,{class:A(e.$style.statisticsTableRowName)},j(t[0]),3),Z(`div`,{class:A(e.$style.statisticsTableRowValue)},j(t[1]),3)],2))),256))],2)]),_:1},8,[`title`,`description`])],64))}}),[[`__cssModules`,{$style:{statisticsGrid:`m`,statisticsTable:`n`,statisticsTableRow:`o`,statisticsTableRowName:`p`,statisticsTableRowValue:`q`}}]]),Zs={class:`homey-header`},Qs={class:`homey-title`},$s={class:`homey-subtitle`},ec=U({__name:`Top`,props:{subtitle:{},title:{}},setup(e){return(t,n)=>(Y(),X(`header`,Zs,[Z(`h1`,Qs,j(e.title),1),Z(`p`,$s,j(e.subtitle),1)]))}}),tc=fs(U({__name:`App`,setup(e){let t=ys(),{load:n}=bs(),{load:r}=xs(),{items:i,load:a}=Ss(),{items:o,load:s}=Cs(),{items:c,load:l}=ws(),{items:u,load:d}=Ts(),{items:f,load:p}=Es(),{items:m,load:h}=Ds(),{items:g,load:_}=Os(),v=R(null),y=R(null),b=R(!1),x=As(`cycle`,v,y),S=As(`event`,v,y),C=As(`flag`,v,y),w=As(`label`,v,y),T=As(`mode`,v,y),ee=As(`set`,v,y),te=As(`timer`,v,y),E=Ms(`/cycles/look`,v,y,b,a),ne=Ms(`/events/look`,v,y,b,s),D=Ms(`/flags/look`,v,y,b,l),re=Ms(`/labels/look`,v,y,b,d),ie=Ms(`/modes/look`,v,y,b,p),O=Ms(`/sets/look`,v,y,b,h),ae=Ms(`/timers/look`,v,y,b,_);hr(async()=>{await Promise.allSettled([n(),r()]),await Promise.allSettled([a(),s(),l(),d(),p(),h(),_()]),Homey.ready()});function k(){v.value=null,y.value=null}function oe(e,t){switch(z(y)){case`cycle`:return E(e,t);case`event`:return ne(e,t);case`flag`:return D(e,t);case`label`:return re(e,t);case`mode`:return ie(e,t);case`set`:return O(e,t);case`timer`:return ae(e,t);default:return}}return(e,n)=>(Y(),X(K,null,[Q(z(ec),{title:z(t)(`settings.title`),subtitle:z(t)(`settings.subtitle`)},null,8,[`title`,`subtitle`]),Q(z(Js),null,{default:En(()=>[Q(z(Vs)),Q(z(hs),{title:z(t)(`settings.cycles.title`),description:z(t)(`settings.cycles.description`),empty:z(t)(`settings.cycles.empty`),items:z(i),onEdit:z(x)},null,8,[`title`,`description`,`empty`,`items`,`onEdit`]),Q(z(hs),{title:z(t)(`settings.modes.title`),description:z(t)(`settings.modes.description`),empty:z(t)(`settings.modes.empty`),items:z(f),onEdit:z(T)},null,8,[`title`,`description`,`empty`,`items`,`onEdit`]),Q(z(hs),{title:z(t)(`settings.flags.title`),description:z(t)(`settings.flags.description`),empty:z(t)(`settings.flags.empty`),items:z(c),onEdit:z(C)},null,8,[`title`,`description`,`empty`,`items`,`onEdit`]),Q(z(hs),{title:z(t)(`settings.timers.title`),description:z(t)(`settings.timers.description`),empty:z(t)(`settings.timers.empty`),items:z(g),onEdit:z(te)},null,8,[`title`,`description`,`empty`,`items`,`onEdit`]),Q(z(hs),{title:z(t)(`settings.labels.title`),description:z(t)(`settings.labels.description`),empty:z(t)(`settings.labels.empty`),items:z(u),onEdit:z(w)},null,8,[`title`,`description`,`empty`,`items`,`onEdit`]),Q(z(hs),{title:z(t)(`settings.sets.title`),description:z(t)(`settings.sets.description`),empty:z(t)(`settings.sets.empty`),items:z(m),onEdit:z(ee)},null,8,[`title`,`description`,`empty`,`items`,`onEdit`]),Q(z(hs),{title:z(t)(`settings.events.title`),description:z(t)(`settings.events.description`),empty:z(t)(`settings.events.empty`),items:z(o),onEdit:z(S)},null,8,[`title`,`description`,`empty`,`items`,`onEdit`]),Q(z(Xs))]),_:1}),Q(Ga,{name:`edit`},{default:En(()=>[v.value?(Y(),Ji(z(Ks),{key:0,"is-saving":b.value,item:v.value,onClose:n[0]||=e=>k(),onSave:oe},null,8,[`is-saving`,`item`])):ra(``,!0)]),_:1})],64))}}),[[`__cssModules`,{$style:{edit:`a`}}]]);window.onHomeyReady=function(){es(tc).mount(`#app`)}; \ No newline at end of file diff --git a/src/brain/api.ts b/src/brain/api.ts index ee844e8..354dcfa 100644 --- a/src/brain/api.ts +++ b/src/brain/api.ts @@ -6,6 +6,18 @@ export default class extends Shortcuts { return await this.app.cycles.findAll(); } + async setCycleLook(cycleName: string, color: string, icon: string): Promise { + const cycle = await this.app.cycles.find(cycleName); + + if (!cycle) { + return false; + } + + await this.app.cycles.setLook(cycle.name, [color, icon]); + + return true; + } + async getEvents(): Promise { return await this.app.events.findAll(); } diff --git a/src/brain/cycles.ts b/src/brain/cycles.ts index 47321e1..2db861b 100644 --- a/src/brain/cycles.ts +++ b/src/brain/cycles.ts @@ -1,14 +1,23 @@ import { Shortcuts } from '@basmilius/homey-common'; -import { REALTIME_CYCLE_UPDATE, SETTING_CYCLE_PREFIX } from '../const'; +import { REALTIME_CYCLE_UPDATE, SETTING_CYCLE_LOOKS, SETTING_CYCLE_PREFIX } from '../const'; import { AutocompleteProviders, Triggers } from '../flow'; -import type { Cycle, Feature, FlowBitsApp } from '../types'; +import type { Cycle, Feature, FlowBitsApp, Look, Styleable } from '../types'; import { slugify } from '../util'; -export default class Cycles extends Shortcuts implements Feature { +export default class Cycles extends Shortcuts implements Feature, Styleable { + get looks(): Record { + return this.settings.get(SETTING_CYCLE_LOOKS) ?? {}; + } + + set looks(value: Record) { + this.settings.set(SETTING_CYCLE_LOOKS, value); + } + async cleanup(): Promise { this.log('Cleaning up unused cycles...'); const defined = await this.findAll(); + const looks = this.looks; for (const key of this.settings.getKeys()) { if (!key.startsWith(SETTING_CYCLE_PREFIX) || defined.find(d => this.#id(d.name) === key)) { @@ -18,6 +27,17 @@ export default class Cycles extends Shortcuts implements Feature d.name === key)) { + continue; + } + + this.log(`Deleting unused cycle look ${key}...`); + delete looks[key]; + } + + this.looks = looks; } async count(): Promise { @@ -44,7 +64,11 @@ export default class Cycles extends Shortcuts implements Feature implements Feature { + return this.looks[name] ?? ['#204ef6', '']; + } + + async setLook(name: string, look: Look): Promise { + this.looks = { + ...this.looks, + [name]: look + }; + + await this.#triggerRealtime(name); + } + #id(name: string): string { return `${SETTING_CYCLE_PREFIX}${slugify(name)}`; } diff --git a/src/brain/widgets.ts b/src/brain/widgets.ts index e7a119b..ca5b9e9 100644 --- a/src/brain/widgets.ts +++ b/src/brain/widgets.ts @@ -4,6 +4,7 @@ import { createFilterAutocomplete, searchIcons } from '../util'; export default class Widgets extends Shortcuts { async initialize(): Promise { + await this.#initializeCycle(); await this.#initializeEvent(); await this.#initializeFlagOnOff(); await this.#initializeFlags(); @@ -15,6 +16,18 @@ export default class Widgets extends Shortcuts { await this.#initializeTimer(); } + async #initializeCycle(): Promise { + const widget = this.dashboards.getWidget('cycle'); + + widget.registerSettingAutocompleteListener('cycle', async () => { + const cycles = await this.app.api.getCycles(); + + return cycles.map(cycle => ({ + name: cycle.name + })); + }); + } + async #initializeEvent(): Promise { const widget = this.dashboards.getWidget('event'); diff --git a/src/const.ts b/src/const.ts index d3fd3fa..805e606 100644 --- a/src/const.ts +++ b/src/const.ts @@ -7,6 +7,7 @@ export const REALTIME_SETS_UPDATE = 'flowbits-sets-update'; export const REALTIME_SLIDER_UPDATE = 'flowbits-slider-update'; export const REALTIME_TIMER_UPDATE = 'flowbits-timer-update'; +export const SETTING_CYCLE_LOOKS = 'flowbits-cycle-looks'; export const SETTING_CYCLE_PREFIX = 'flowbits-cycle:'; export const SETTING_EVENTS = 'flowbits-events'; export const SETTING_EVENT_LOOKS = 'flowbits-event-looks'; diff --git a/src/types.ts b/src/types.ts index 322543a..4137156 100644 --- a/src/types.ts +++ b/src/types.ts @@ -54,10 +54,10 @@ export type BitSetState = { readonly expiresAt: string | undefined; }; -export type Cycle = { +export type Cycle = WithLook<{ readonly name: string; readonly step: number; -}; +}>; export type Event = WithLook<{ readonly lastUpdate: string | undefined; diff --git a/widgets/cycle/api.ts b/widgets/cycle/api.ts new file mode 100644 index 0000000..184b7df --- /dev/null +++ b/widgets/cycle/api.ts @@ -0,0 +1,30 @@ +import type { WidgetApiRequest } from '@basmilius/homey-common'; +import type { Cycle, FlowBitsApp } from '../../src/types'; + +export async function get({homey: {app}, query}: WidgetApiRequest): Promise { + return await app.cycles.find(query.cycle); +} + +export async function set({homey: {app}, query, body}: WidgetApiRequest): Promise { + const cycle = await app.cycles.find(query.cycle); + + if (!cycle) { + return false; + } + + if (body.action === 'next') { + await app.cycles.cycleTo(cycle.name, cycle.step + 1); + } else if (body.action === 'previous') { + await app.cycles.cycleTo(cycle.name, cycle.step - 1); + } + + return true; +} + +type Query = { + readonly cycle: string; +}; + +type Body = { + readonly action: 'next' | 'previous'; +}; diff --git a/widgets/cycle/preview-dark.png b/widgets/cycle/preview-dark.png new file mode 100644 index 0000000..ee5e68e Binary files /dev/null and b/widgets/cycle/preview-dark.png differ diff --git a/widgets/cycle/preview-light.png b/widgets/cycle/preview-light.png new file mode 100644 index 0000000..de11106 Binary files /dev/null and b/widgets/cycle/preview-light.png differ diff --git a/widgets/cycle/public/index.html b/widgets/cycle/public/index.html new file mode 100644 index 0000000..eb192e5 --- /dev/null +++ b/widgets/cycle/public/index.html @@ -0,0 +1,127 @@ + + + + Counter + + + + + + +
+
+ +
+
+ +
+ +
+ — +
+
+ +
+ + + +
+
+ + + + + diff --git a/widgets/cycle/public/style.css b/widgets/cycle/public/style.css new file mode 100644 index 0000000..bb44902 --- /dev/null +++ b/widgets/cycle/public/style.css @@ -0,0 +1,32 @@ +@import '../../assets/app/base.css'; +@import '../../assets/app/icons.css'; + +.cycle-controls { + display: none; + flex-flow: column; + gap: 2px; + margin-left: auto; +} + +.cycle-controls.visible { + display: flex; +} + +.cycle-controls-btn { + all: unset; + align-items: center; + background: var(--homey-color-mono-050, rgba(128, 128, 128, 0.08)); + border-radius: var(--homey-border-radius-small, 6px); + color: var(--homey-text-color-light); + cursor: pointer; + display: flex; + font-size: 16px; + height: 28px; + justify-content: center; + line-height: 1; + width: 32px; +} + +.cycle-controls-btn:active { + background: var(--homey-color-mono-100, rgba(128, 128, 128, 0.15)); +} diff --git a/widgets/cycle/widget.compose.json b/widgets/cycle/widget.compose.json new file mode 100644 index 0000000..2e579a5 --- /dev/null +++ b/widgets/cycle/widget.compose.json @@ -0,0 +1,69 @@ +{ + "name": { + "en": "Sequence", + "nl": "Stappenreeks", + "de": "Sequenz", + "fr": "Séquence", + "it": "Sequenza", + "sv": "Sekvens", + "no": "Sekvens", + "es": "Secuencia", + "da": "Sekvens", + "ru": "Последовательность", + "pl": "Sekwencja", + "ko": "시퀀스", + "ar": "تسلسل" + }, + "height": 120, + "settings": [ + { + "id": "cycle", + "type": "autocomplete", + "title": { + "en": "Sequence", + "nl": "Stappenreeks", + "de": "Sequenz", + "fr": "Séquence", + "it": "Sequenza", + "sv": "Sekvens", + "no": "Sekvens", + "es": "Secuencia", + "da": "Sekvens", + "ru": "Последовательность", + "pl": "Sekwencja", + "ko": "시퀀스", + "ar": "تسلسل" + } + }, + { + "id": "show_controls", + "type": "checkbox", + "label": { + "en": "Show controls", + "nl": "Besturing tonen", + "de": "Steuerung anzeigen", + "fr": "Afficher les commandes", + "it": "Mostra controlli", + "sv": "Visa kontroller", + "no": "Vis kontroller", + "es": "Mostrar controles", + "da": "Vis kontroller", + "ru": "Показать управление", + "pl": "Pokaż elementy sterowania", + "ko": "컨트롤 표시", + "ar": "إظهار عناصر التحكم" + }, + "value": false + } + ], + "api": { + "get": { + "method": "GET", + "path": "/" + }, + "set": { + "method": "POST", + "path": "/" + } + } +}