@wssto2/vue-core 0.19.0 → 0.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +16 -0
- package/README.md +3 -0
- package/dist/{AccessGate.vue_vue_type_script_setup_true_lang-Bg8JFAOT.js → AccessGate.vue_vue_type_script_setup_true_lang-Dw_pnsh9.js} +1 -1
- package/dist/{AccountMenuItem.vue_vue_type_script_setup_true_lang-BIYgaihv.js → AccountMenuItem.vue_vue_type_script_setup_true_lang-rmH1XbU9.js} +1 -1
- package/dist/{ActionRow.vue_vue_type_script_setup_true_lang-B5IMNnTf.js → ActionRow.vue_vue_type_script_setup_true_lang-_TDoIg53.js} +2 -2
- package/dist/{Activity-CiYn5E6A.js → Activity-BDVYmNgy.js} +9 -9
- package/dist/{AdaptivePageShell.vue_vue_type_script_setup_true_lang-oXWQTfBs.js → AdaptivePageShell.vue_vue_type_script_setup_true_lang-DryXyklZ.js} +6 -6
- package/dist/{AlertDialog.vue_vue_type_script_setup_true_lang-WuGvAOrj.js → AlertDialog.vue_vue_type_script_setup_true_lang-QYvbly_-.js} +1 -1
- package/dist/{AsyncSection.vue_vue_type_script_setup_true_lang-CX8mpXRE.js → AsyncSection.vue_vue_type_script_setup_true_lang-DRP4BnMb.js} +4 -4
- package/dist/{Banner.vue_vue_type_script_setup_true_lang-sv0phngk.js → Banner.vue_vue_type_script_setup_true_lang-ukLpznql.js} +1 -1
- package/dist/{Button.vue_vue_type_script_setup_true_lang-JrqhO99l.js → Button.vue_vue_type_script_setup_true_lang-DkRuLqQK.js} +1 -1
- package/dist/{Changes-Cy8STpLX.js → Changes-DRij0rEQ.js} +5 -5
- package/dist/{CollectionPage.vue_vue_type_script_setup_true_lang-Dr6nFNBB.js → CollectionPage.vue_vue_type_script_setup_true_lang-Aoof1prZ.js} +12 -12
- package/dist/{DataTable.vue_vue_type_script_setup_true_lang-D372wlxR.js → DataTable.vue_vue_type_script_setup_true_lang-DGcNcRkO.js} +1 -1
- package/dist/{DateField.vue_vue_type_script_setup_true_lang-D0KcfW8R.js → DateField.vue_vue_type_script_setup_true_lang-J04KjxmR.js} +4 -4
- package/dist/{DeadLetters-DhJkMpd_.js → DeadLetters-Dpm4UY__.js} +4 -4
- package/dist/{DiscardChangesModal.vue_vue_type_script_setup_true_lang-92szOrYd.js → DiscardChangesModal.vue_vue_type_script_setup_true_lang-CxNVKoYI.js} +1 -1
- package/dist/{EmptyState.vue_vue_type_script_setup_true_lang-DbZiO2RF.js → EmptyState.vue_vue_type_script_setup_true_lang-ByKvrNSg.js} +1 -1
- package/dist/{FormGroup.vue_vue_type_script_setup_true_lang-lvAuBG-0.js → FormGroup.vue_vue_type_script_setup_true_lang-7bIssY9f.js} +4 -4
- package/dist/{FormRow.vue_vue_type_script_setup_true_lang-CpgNVQF4.js → FormRow.vue_vue_type_script_setup_true_lang-okuxbKyI.js} +1 -1
- package/dist/{FormView.vue_vue_type_script_setup_true_lang-D01Jr4UU.js → FormView.vue_vue_type_script_setup_true_lang-CiYprNRr.js} +2 -2
- package/dist/{General-CwTPC5UP.js → General-BmVEbYqv.js} +8 -8
- package/dist/{HeaderAction.vue_vue_type_script_setup_true_lang-Da59TLBh.js → HeaderAction.vue_vue_type_script_setup_true_lang-DVfkuOy-.js} +2 -2
- package/dist/{Icon.vue_vue_type_script_lang-BhhsFYwp.js → Icon.vue_vue_type_script_lang-0pW1XBaE.js} +35 -33
- package/dist/{IconTile.vue_vue_type_script_setup_true_lang-BmxCuUZ9.js → IconTile.vue_vue_type_script_setup_true_lang-BWHQiA7d.js} +1 -1
- package/dist/{IncidentRecord-hXEGuLGg.js → IncidentRecord-DWY6Bws1.js} +17 -17
- package/dist/{IncidentsList-C41VyDwK.js → IncidentsList-C21UNIhT.js} +6 -6
- package/dist/{LeaveGuardRoot.vue_vue_type_script_setup_true_lang-CrGrjrlO.js → LeaveGuardRoot.vue_vue_type_script_setup_true_lang-CpEd_Psg.js} +1 -1
- package/dist/{Menu.vue_vue_type_script_setup_true_lang-Cqu4Ebsb.js → Menu.vue_vue_type_script_setup_true_lang-DobycRxf.js} +1 -1
- package/dist/{MenuButton.vue_vue_type_script_setup_true_lang-C-XRr5f2.js → MenuButton.vue_vue_type_script_setup_true_lang-qDKt6gX9.js} +1 -1
- package/dist/{Modal.vue_vue_type_script_setup_true_lang-CZ7WrDwu.js → Modal.vue_vue_type_script_setup_true_lang-C0tQAYQ4.js} +2 -2
- package/dist/{NewRolePage-BYYZJkK7.js → NewRolePage-K5zts3e_.js} +4 -4
- package/dist/{NoAccess.vue_vue_type_script_setup_true_lang-BHzZtZ50.js → NoAccess.vue_vue_type_script_setup_true_lang-BYnTQCtW.js} +1 -1
- package/dist/{NumberField.vue_vue_type_script_setup_true_lang-BhNZgEW6.js → NumberField.vue_vue_type_script_setup_true_lang-CxgVJrdv.js} +2 -2
- package/dist/{Panel.vue_vue_type_script_setup_true_lang-D_Wg42hu.js → Panel.vue_vue_type_script_setup_true_lang-DTCmFSwg.js} +1 -1
- package/dist/{PersonAccess.vue_vue_type_script_setup_true_lang-mYFuG-Y3.js → PersonAccess.vue_vue_type_script_setup_true_lang-Kp9g93wE.js} +12 -12
- package/dist/{PhotoViewer.vue_vue_type_script_setup_true_lang-DmMg1T_V.js → PhotoViewer.vue_vue_type_script_setup_true_lang-D2-uQbSV.js} +1 -1
- package/dist/{ProfilePage-DGEsIycR.js → ProfilePage-C3mLBer6.js} +17 -17
- package/dist/{RecordHeader.vue_vue_type_script_setup_true_lang-B3BnYg1x.js → RecordHeader.vue_vue_type_script_setup_true_lang-Dz5Qw8II.js} +2 -2
- package/dist/{ResourcePage.vue_vue_type_script_setup_true_lang-1iZtj3rh.js → ResourcePage.vue_vue_type_script_setup_true_lang-R3eJKPq5.js} +4 -4
- package/dist/{RoleEditor.vue_vue_type_script_setup_true_lang-BslSDDiM.js → RoleEditor.vue_vue_type_script_setup_true_lang-CGMpBpnK.js} +12 -12
- package/dist/{RolePage-C08ZUqw1.js → RolePage-C62_sGxx.js} +13 -13
- package/dist/{RolesPage-FOuY1VKg.js → RolesPage-CS8ryIQq.js} +9 -9
- package/dist/{SectionList.vue_vue_type_script_setup_true_lang-CodyVezo.js → SectionList.vue_vue_type_script_setup_true_lang-C6eOVjpa.js} +3 -3
- package/dist/{SectionNavigator.vue_vue_type_script_setup_true_lang-DCTFxfPB.js → SectionNavigator.vue_vue_type_script_setup_true_lang-DqDcFvS0.js} +6 -6
- package/dist/{SegmentedField.vue_vue_type_script_setup_true_lang-CLR6EvzO.js → SegmentedField.vue_vue_type_script_setup_true_lang-Du4YUcw9.js} +2 -2
- package/dist/{SelectField.vue_vue_type_script_setup_true_lang-D5xYofdb.js → SelectField.vue_vue_type_script_setup_true_lang-BA5YMCXA.js} +6 -6
- package/dist/{ServiceAccountDialog.vue_vue_type_script_setup_true_lang-CDr4WNIb.js → ServiceAccountDialog.vue_vue_type_script_setup_true_lang-BoeV2_MN.js} +8 -8
- package/dist/{ServiceAccountRecord-kWwIQGZb.js → ServiceAccountRecord-BDkaaOte.js} +18 -18
- package/dist/{ServiceAccountsList-CKy9_YHP.js → ServiceAccountsList-KaZwNlK5.js} +10 -10
- package/dist/{Sessions-BDc8gdYH.js → Sessions-DhOpUlRc.js} +7 -7
- package/dist/{SettingsPage-t-8kmFVT.js → SettingsPage-DPzg7zwX.js} +18 -18
- package/dist/Sheet.vue_vue_type_script_setup_true_lang-C1jpmLYN.js +163 -0
- package/dist/{SignIn-CqtkvtCZ.js → SignIn-4aUxE2LU.js} +8 -8
- package/dist/{SignInPage-DcdNKZIb.js → SignInPage-B80pQ8tG.js} +6 -6
- package/dist/{SignIns-D4-nGu0B.js → SignIns-CLX8Puf1.js} +5 -5
- package/dist/{StatusLine.vue_vue_type_script_setup_true_lang-DsdQmLq6.js → StatusLine.vue_vue_type_script_setup_true_lang-BN8nG1CW.js} +1 -1
- package/dist/{SwipeActions.vue_vue_type_script_setup_true_lang-D8SiC0G7.js → SwipeActions.vue_vue_type_script_setup_true_lang-BBqcW3MR.js} +1 -1
- package/dist/{SwitchField.vue_vue_type_script_setup_true_lang-CLtcuofe.js → SwitchField.vue_vue_type_script_setup_true_lang-Dw7BbBU4.js} +2 -2
- package/dist/Tabs.vue_vue_type_script_setup_true_lang-Cma_ma6V.js +169 -0
- package/dist/{TextField.vue_vue_type_script_setup_true_lang-CVGh-p3J.js → TextField.vue_vue_type_script_setup_true_lang-DS6RPR-h.js} +4 -4
- package/dist/{TextareaField.vue_vue_type_script_setup_true_lang-YxUlNHSk.js → TextareaField.vue_vue_type_script_setup_true_lang-BqpZt1Hv.js} +2 -2
- package/dist/{TimeField.vue_vue_type_script_setup_true_lang-DHNC_MLt.js → TimeField.vue_vue_type_script_setup_true_lang-BeS1cfqL.js} +4 -4
- package/dist/{Timestamp.vue_vue_type_script_setup_true_lang-d_KuxWjH.js → Timestamp.vue_vue_type_script_setup_true_lang-XbbupD9A.js} +1 -1
- package/dist/{UserRecord-CwZCr9Im.js → UserRecord-BFqw2Pi8.js} +10 -10
- package/dist/{UsersList-Cn19sFgv.js → UsersList-C52C1lN1.js} +3 -3
- package/dist/{ViewTabs.vue_vue_type_script_setup_true_lang-BjdDXE3T.js → ViewTabs.vue_vue_type_script_setup_true_lang-CBYrLPL4.js} +1 -1
- package/dist/access/index.js +7 -7
- package/dist/app/index.js +2 -2
- package/dist/{application-CDSweJb9.js → application-cTqMhmFf.js} +8 -8
- package/dist/{back-LcLlFodC.js → back-CeozxCgQ.js} +2 -2
- package/dist/button/index.js +1 -1
- package/dist/collection/index.js +9 -9
- package/dist/content/DiffView.vue.d.ts +22 -0
- package/dist/content/PreviewFrame.vue.d.ts +46 -0
- package/dist/content/diff.d.ts +27 -0
- package/dist/content/index.d.ts +4 -0
- package/dist/content/index.js +552 -218
- package/dist/content/previewFrame.d.ts +50 -0
- package/dist/{contributions-B0x5x5xD.js → contributions-BSmIRPg1.js} +1 -1
- package/dist/controls/SortableList.vue.d.ts +31 -0
- package/dist/controls/Tabs.vue.d.ts +2 -0
- package/dist/controls/index.d.ts +1 -0
- package/dist/controls/index.js +132 -33
- package/dist/form/CodeEditor.vue.d.ts +61 -0
- package/dist/form/I18nField.vue.d.ts +1 -1
- package/dist/form/MarkerList.vue.d.ts +20 -0
- package/dist/form/TextareaField.vue.d.ts +1 -1
- package/dist/form/index.d.ts +2 -0
- package/dist/form/index.js +1550 -1428
- package/dist/{guards-CNJ0ATVC.js → guards-BP9x7CLF.js} +1 -1
- package/dist/i18n/index.js +18 -18
- package/dist/icon/core.d.ts +2 -0
- package/dist/icon/index.js +1 -1
- package/dist/identity/index.js +3 -3
- package/dist/identity/profile/EmailChangeDialog.vue.d.ts +2 -2
- package/dist/incidents/index.js +1 -1
- package/dist/{index-BA2w8uwD.js → index-CMx77x5P.js} +27 -27
- package/dist/{index-1HS7O2-e.js → index-CxUfs3Xz.js} +10 -10
- package/dist/{index-SLJWm40T.js → index-DLkQwWt9.js} +9 -9
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/modal/Sheet.vue.d.ts +13 -0
- package/dist/modal/TabbedSheet.vue.d.ts +46 -0
- package/dist/modal/index.d.ts +1 -0
- package/dist/modal/index.js +123 -41
- package/dist/navigation-C05vGEN8.js +55 -0
- package/dist/{neighbors-Dg_LU9ry.js → neighbors-BqfO6zf3.js} +2 -2
- package/dist/notifications/index.js +1 -1
- package/dist/onboarding/index.js +2 -2
- package/dist/{options-mOOX6JSS.js → options-DIp_lVAj.js} +2 -2
- package/dist/overlay/index.js +4 -4
- package/dist/page/SectionNavigator.vue.d.ts +1 -1
- package/dist/page/SplitPane.vue.d.ts +54 -0
- package/dist/page/WorkbenchPage.vue.d.ts +72 -0
- package/dist/page/index.d.ts +2 -0
- package/dist/page/index.js +343 -104
- package/dist/phone/index.js +3 -3
- package/dist/platform/index.js +3 -3
- package/dist/platform/navigation.d.ts +10 -0
- package/dist/{platform-DU9QFts8.js → platform-YWfOO7b2.js} +94 -88
- package/dist/pwa/index.js +3 -3
- package/dist/resource/index.js +1 -1
- package/dist/{resources-BZLlAtoS.js → resources-BAxfEEv1.js} +1 -1
- package/dist/router/index.js +4 -4
- package/dist/router/navigation.d.ts +2 -0
- package/dist/{rowLayout-PIuD7MGo.js → rowLayout-3W9TvFNt.js} +5 -5
- package/dist/{sectionIndex-BS0ic5W7.js → sectionIndex-CSr457Lb.js} +2 -2
- package/dist/{sections-BpiRLntE.js → sections-DXso1JSV.js} +2 -2
- package/dist/shell/NavigationList.vue.d.ts +1 -1
- package/dist/shell/index.js +522 -501
- package/dist/shell/navigationGroups.d.ts +4 -1
- package/dist/state/index.js +8 -8
- package/dist/{state-z1iPF1DT.js → state-DqCZdet7.js} +1 -1
- package/dist/styles.css +1 -1
- package/dist/{suggestions-DeMgs_ki.js → suggestions-D0-qmRFy.js} +1 -1
- package/dist/testing/index.js +2 -2
- package/dist/{useCommand-DQKvro1n.js → useCommand-D6K6o6dx.js} +4 -4
- package/dist/{useGroupSheet-CRw3MUmX.js → useGroupSheet-Daxi2mzi.js} +5 -5
- package/dist/{usePreferences-DB29UTFD.js → usePreferences-D38x73re.js} +1 -1
- package/dist/{useRecordDialog-0azHxxvm.js → useRecordDialog-CfBp0kuP.js} +1 -1
- package/dist/{useResourceForm-zVuWerSn.js → useResourceForm-Ddxk7mc0.js} +1 -1
- package/dist/{useTypedEntry-BsMV66Yc.js → useTypedEntry-r4AqWlV7.js} +2 -2
- package/package.json +1 -1
- package/dist/Sheet.vue_vue_type_script_setup_true_lang-BG8HUNfs.js +0 -145
- package/dist/Tabs.vue_vue_type_script_setup_true_lang-tpkGp98F.js +0 -155
- package/dist/navigation-d-JAPBGA.js +0 -53
package/dist/shell/index.js
CHANGED
|
@@ -1,124 +1,124 @@
|
|
|
1
|
-
import { defineComponent as O, provide as ce, computed as L, ref as
|
|
1
|
+
import { defineComponent as O, provide as ce, computed as L, ref as N, useId as Se, openBlock as l, createElementBlock as m, normalizeClass as E, unref as t, createVNode as p, createCommentVNode as y, createElementVNode as i, toDisplayString as M, createBlock as R, withDirectives as nt, Fragment as U, renderList as se, vShow as at, withCtx as z, mergeProps as le, useTemplateRef as re, renderSlot as j, createSlots as G, normalizeProps as ne, guardReactiveProps as ae, inject as Le, onMounted as ot, onBeforeUnmount as Oe, normalizeStyle as ve, nextTick as be, watch as Q, onScopeDispose as ue, Teleport as Re, shallowRef as Pe, h as te, Transition as we, toValue as _e, createTextVNode as ie } from "vue";
|
|
2
2
|
import { useI18n as K } from "vue-i18n";
|
|
3
3
|
import { _ as Ne } from "../Avatar.vue_vue_type_script_setup_true_lang-BPj_fkJR.js";
|
|
4
|
-
import { _ as q, u as st, c as lt } from "../Icon.vue_vue_type_script_lang-
|
|
4
|
+
import { _ as q, u as st, c as lt } from "../Icon.vue_vue_type_script_lang-0pW1XBaE.js";
|
|
5
5
|
import { _ as rt } from "../Popover.vue_vue_type_script_setup_true_lang-BK8HL_V0.js";
|
|
6
|
-
import { u as qe, S as J } from "../contributions-
|
|
6
|
+
import { u as qe, S as J } from "../contributions-BSmIRPg1.js";
|
|
7
7
|
import { u as it } from "../environment-Dva-SG8D.js";
|
|
8
8
|
import { _ as ct } from "../CountryFlag.vue_vue_type_script_setup_true_lang-Kry_vPPZ.js";
|
|
9
9
|
import { l as Ae } from "../languageName-CItV_SOv.js";
|
|
10
10
|
import { t as Be } from "../toast-CqSDTWRX.js";
|
|
11
|
-
import { u as de, h as Ce } from "../platform-
|
|
12
|
-
import { a as ut, _ as $e, h as Ee } from "../AccountMenuItem.vue_vue_type_script_setup_true_lang-
|
|
13
|
-
import { _ as dt } from "../Sheet.vue_vue_type_script_setup_true_lang-
|
|
14
|
-
import { _ as ft } from "../LeaveGuardRoot.vue_vue_type_script_setup_true_lang-
|
|
11
|
+
import { u as de, h as Ce } from "../platform-YWfOO7b2.js";
|
|
12
|
+
import { a as ut, _ as $e, h as Ee } from "../AccountMenuItem.vue_vue_type_script_setup_true_lang-rmH1XbU9.js";
|
|
13
|
+
import { _ as dt } from "../Sheet.vue_vue_type_script_setup_true_lang-C1jpmLYN.js";
|
|
14
|
+
import { _ as ft } from "../LeaveGuardRoot.vue_vue_type_script_setup_true_lang-CpEd_Psg.js";
|
|
15
15
|
import { _ as mt } from "../Toaster.vue_vue_type_script_setup_true_lang-55boRLAj.js";
|
|
16
16
|
import { _ as pt } from "../BottomDock.vue_vue_type_script_setup_true_lang-CjN7xYEr.js";
|
|
17
17
|
import { b as je } from "../chrome-kMBKIB1N.js";
|
|
18
18
|
import { p as Ke, A as vt } from "../access-DmAceEo5.js";
|
|
19
19
|
import { RouterLink as Ve, useRoute as ht, useRouter as ge } from "vue-router";
|
|
20
|
-
import { u as bt } from "../navigation-
|
|
20
|
+
import { u as bt } from "../navigation-C05vGEN8.js";
|
|
21
21
|
import { u as gt } from "../leaveGuard-Cc8yeLxM.js";
|
|
22
22
|
import { u as yt, S as xt } from "../dialogStack-DbO4IiAq.js";
|
|
23
23
|
import { a as oe } from "../mediaQuery-CygcXmFW.js";
|
|
24
24
|
import { u as Fe } from "../useDialog-B4_MpX2v.js";
|
|
25
|
-
import { _ as kt } from "../Menu.vue_vue_type_script_setup_true_lang-
|
|
25
|
+
import { _ as kt } from "../Menu.vue_vue_type_script_setup_true_lang-DobycRxf.js";
|
|
26
26
|
import { W as _t, s as Ue, u as wt, b as $t } from "../shortcut-oixX55SZ.js";
|
|
27
27
|
import { d as fe } from "../feature-DdUAfyi4.js";
|
|
28
|
-
import { _ as
|
|
28
|
+
import { _ as ko } from "../HeaderAction.vue_vue_type_script_setup_true_lang-DVfkuOy-.js";
|
|
29
29
|
import { p as St } from "../perDocument-DUuFrdGU.js";
|
|
30
|
-
import { _ as
|
|
30
|
+
import { _ as ze } from "../Highlight.vue_vue_type_script_setup_true_lang-DZGBmwcX.js";
|
|
31
31
|
import { _ as Lt } from "../SearchInput.vue_vue_type_script_setup_true_lang-w4eAqyZ9.js";
|
|
32
32
|
import { _ as Ct } from "../Badge.vue_vue_type_script_setup_true_lang-DJyZc0C7.js";
|
|
33
|
-
import { _ as Et } from "../StatusLine.vue_vue_type_script_setup_true_lang-
|
|
34
|
-
import { u as Tt } from "../usePreferences-
|
|
33
|
+
import { _ as Et } from "../StatusLine.vue_vue_type_script_setup_true_lang-BN8nG1CW.js";
|
|
34
|
+
import { u as Tt } from "../usePreferences-D38x73re.js";
|
|
35
35
|
import { p as Mt } from "../preferences-hYhrw8Uy.js";
|
|
36
36
|
import { _ as At } from "../BottomDockPortal.vue_vue_type_script_setup_true_lang-DmwR-2SP.js";
|
|
37
|
-
const
|
|
37
|
+
const zt = ["aria-expanded", "aria-controls"], Dt = { class: "flex-1 whitespace-nowrap" }, It = { class: "truncate" }, Ot = ["id"], We = /* @__PURE__ */ O({
|
|
38
38
|
__name: "AccountMenuContent",
|
|
39
39
|
props: {
|
|
40
40
|
appearance: {}
|
|
41
41
|
},
|
|
42
42
|
emits: ["close"],
|
|
43
43
|
setup(e, { emit: a }) {
|
|
44
|
-
const n = e, o = a, { t:
|
|
44
|
+
const n = e, o = a, { t: r } = K(), { session: c } = de(), s = it(), u = qe();
|
|
45
45
|
ce(ut, { appearance: n.appearance, close: () => o("close") });
|
|
46
|
-
const
|
|
46
|
+
const f = n.appearance === "sheet", b = L(() => u.get("accountMenu").length > 0), g = s.locales.length > 1, h = N(!1), x = Se(), w = L(() => Ae(s.locale.value)), k = (D) => s.localeFlags[D];
|
|
47
47
|
async function C() {
|
|
48
48
|
try {
|
|
49
49
|
await c.signOut();
|
|
50
50
|
} catch {
|
|
51
|
-
Be.error(
|
|
51
|
+
Be.error(r("core.shell.account.sign_out_failed"));
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
|
-
const v =
|
|
55
|
-
return (
|
|
56
|
-
class:
|
|
54
|
+
const v = f ? "overflow-hidden rounded-group bg-surface-cell shadow-group" : "";
|
|
55
|
+
return (D, d) => (l(), m("div", {
|
|
56
|
+
class: E(f ? "flex flex-col gap-group-gap text-content-strong" : "-m-1.5 space-y-1 *:not-first:border-t *:not-first:border-border-separator *:not-first:pt-1"),
|
|
57
57
|
"data-shell-account-menu": ""
|
|
58
58
|
}, [
|
|
59
|
-
b.value ? (
|
|
59
|
+
b.value ? (l(), m("div", {
|
|
60
60
|
key: 0,
|
|
61
|
-
class:
|
|
61
|
+
class: E(t(v))
|
|
62
62
|
}, [
|
|
63
63
|
p(t(J), { name: "accountMenu" })
|
|
64
|
-
], 2)) :
|
|
65
|
-
g ? (
|
|
64
|
+
], 2)) : y("", !0),
|
|
65
|
+
g ? (l(), m("div", {
|
|
66
66
|
key: 1,
|
|
67
|
-
class:
|
|
67
|
+
class: E(t(v))
|
|
68
68
|
}, [
|
|
69
69
|
i("div", {
|
|
70
|
-
class:
|
|
70
|
+
class: E(f ? "relative" : "")
|
|
71
71
|
}, [
|
|
72
72
|
i("button", {
|
|
73
73
|
type: "button",
|
|
74
74
|
"aria-expanded": h.value,
|
|
75
|
-
"aria-controls": t(
|
|
75
|
+
"aria-controls": t(x),
|
|
76
76
|
"data-account-language": "",
|
|
77
|
-
class:
|
|
78
|
-
onClick:
|
|
77
|
+
class: E(["flex w-full cursor-pointer items-center gap-3 text-left transition-colors duration-motion-fast focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-border-focus", f ? "min-h-row px-row-inset py-2 text-body active:bg-fill" : "rounded-md px-2 py-1.5 text-sm hover:bg-fill"]),
|
|
78
|
+
onClick: d[0] || (d[0] = (I) => h.value = !h.value)
|
|
79
79
|
}, [
|
|
80
80
|
p(t(q), {
|
|
81
81
|
name: "translate",
|
|
82
|
-
size:
|
|
82
|
+
size: f ? 22 : 16,
|
|
83
83
|
class: "shrink-0 text-content-muted"
|
|
84
84
|
}, null, 8, ["size"]),
|
|
85
|
-
i("span",
|
|
85
|
+
i("span", Dt, M(t(r)("core.shell.account.language")), 1),
|
|
86
86
|
i("span", {
|
|
87
|
-
class:
|
|
87
|
+
class: E(["flex min-w-0 items-center gap-1.5 text-content-muted", f ? "" : "text-xs"])
|
|
88
88
|
}, [
|
|
89
|
-
|
|
89
|
+
k(t(s).locale.value) ? (l(), R(ct, {
|
|
90
90
|
key: 0,
|
|
91
|
-
country:
|
|
92
|
-
}, null, 8, ["country"])) :
|
|
93
|
-
i("span", It, M(
|
|
91
|
+
country: k(t(s).locale.value)
|
|
92
|
+
}, null, 8, ["country"])) : y("", !0),
|
|
93
|
+
i("span", It, M(w.value), 1)
|
|
94
94
|
], 2),
|
|
95
95
|
p(t(q), {
|
|
96
96
|
name: "arrowDownSLine",
|
|
97
|
-
size:
|
|
98
|
-
class:
|
|
97
|
+
size: f ? 18 : 16,
|
|
98
|
+
class: E(["shrink-0 text-content-disabled transition-transform duration-motion-fast", h.value ? "rotate-180" : ""])
|
|
99
99
|
}, null, 8, ["size", "class"])
|
|
100
|
-
], 10,
|
|
100
|
+
], 10, zt)
|
|
101
101
|
], 2),
|
|
102
102
|
nt(i("div", {
|
|
103
|
-
id: t(
|
|
104
|
-
class:
|
|
103
|
+
id: t(x),
|
|
104
|
+
class: E(f ? "" : "space-y-0.5 pl-4")
|
|
105
105
|
}, [
|
|
106
|
-
(
|
|
106
|
+
(l(!0), m(U, null, se(t(s).locales, (I) => (l(), R($e, {
|
|
107
107
|
key: I,
|
|
108
108
|
label: t(Ae)(I),
|
|
109
|
-
flag:
|
|
109
|
+
flag: k(I),
|
|
110
110
|
selected: I === t(s).locale.value,
|
|
111
|
-
onClick: (
|
|
111
|
+
onClick: (T) => t(s).setLocale(I)
|
|
112
112
|
}, null, 8, ["label", "flag", "selected", "onClick"]))), 128))
|
|
113
113
|
], 10, Ot), [
|
|
114
114
|
[at, h.value]
|
|
115
115
|
])
|
|
116
|
-
], 2)) :
|
|
116
|
+
], 2)) : y("", !0),
|
|
117
117
|
i("div", {
|
|
118
|
-
class:
|
|
118
|
+
class: E(t(v))
|
|
119
119
|
}, [
|
|
120
120
|
p($e, {
|
|
121
|
-
label: t(
|
|
121
|
+
label: t(r)("core.shell.account.sign_out"),
|
|
122
122
|
icon: "logoutBoxRLine",
|
|
123
123
|
tone: "critical",
|
|
124
124
|
onClick: C
|
|
@@ -136,18 +136,18 @@ const Dt = ["aria-expanded", "aria-controls"], zt = { class: "flex-1 whitespace-
|
|
|
136
136
|
},
|
|
137
137
|
setup(e) {
|
|
138
138
|
const { t: a } = K();
|
|
139
|
-
return (n, o) => (
|
|
139
|
+
return (n, o) => (l(), R(t(rt), {
|
|
140
140
|
placement: "top-start",
|
|
141
141
|
width: "sm",
|
|
142
142
|
block: "",
|
|
143
143
|
arrow: !1,
|
|
144
144
|
label: t(a)("core.shell.account.open")
|
|
145
145
|
}, {
|
|
146
|
-
trigger:
|
|
146
|
+
trigger: z(({ toggle: r, attrs: c, presented: s }) => [
|
|
147
147
|
i("button", le({ type: "button" }, c, {
|
|
148
148
|
"data-shell-account": "",
|
|
149
149
|
class: ["flex w-full cursor-pointer items-center gap-3 rounded-md px-2 py-2 text-left transition-colors hover:bg-white/5 focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-border-focus", { "bg-white/10": s }],
|
|
150
|
-
onClick:
|
|
150
|
+
onClick: r
|
|
151
151
|
}), [
|
|
152
152
|
p(t(Ne), {
|
|
153
153
|
name: e.identity.name,
|
|
@@ -155,7 +155,7 @@ const Dt = ["aria-expanded", "aria-controls"], zt = { class: "flex-1 whitespace-
|
|
|
155
155
|
}, null, 8, ["name"]),
|
|
156
156
|
i("span", Pt, [
|
|
157
157
|
i("span", Nt, M(e.identity.name), 1),
|
|
158
|
-
e.identity.detail ? (
|
|
158
|
+
e.identity.detail ? (l(), m("span", qt, M(e.identity.detail), 1)) : y("", !0)
|
|
159
159
|
]),
|
|
160
160
|
p(t(q), {
|
|
161
161
|
name: "expandUpDownLine",
|
|
@@ -164,10 +164,10 @@ const Dt = ["aria-expanded", "aria-controls"], zt = { class: "flex-1 whitespace-
|
|
|
164
164
|
})
|
|
165
165
|
], 16, Rt)
|
|
166
166
|
]),
|
|
167
|
-
default:
|
|
167
|
+
default: z(({ dismiss: r }) => [
|
|
168
168
|
p(We, {
|
|
169
169
|
appearance: "popover",
|
|
170
|
-
onClose:
|
|
170
|
+
onClose: r
|
|
171
171
|
}, null, 8, ["onClose"])
|
|
172
172
|
]),
|
|
173
173
|
_: 1
|
|
@@ -180,16 +180,16 @@ const Dt = ["aria-expanded", "aria-controls"], zt = { class: "flex-1 whitespace-
|
|
|
180
180
|
},
|
|
181
181
|
setup(e, { expose: a }) {
|
|
182
182
|
const n = re("sheet");
|
|
183
|
-
return a({ present: () => n.value?.present(), dismiss: () => n.value?.dismiss() }), (o,
|
|
183
|
+
return a({ present: () => n.value?.present(), dismiss: () => n.value?.dismiss() }), (o, r) => (l(), R(t(dt), {
|
|
184
184
|
ref_key: "sheet",
|
|
185
185
|
ref: n,
|
|
186
186
|
title: e.identity.name,
|
|
187
187
|
grouped: ""
|
|
188
188
|
}, {
|
|
189
|
-
default:
|
|
189
|
+
default: z(() => [
|
|
190
190
|
p(We, {
|
|
191
191
|
appearance: "sheet",
|
|
192
|
-
onClose:
|
|
192
|
+
onClose: r[0] || (r[0] = (c) => n.value?.dismiss())
|
|
193
193
|
})
|
|
194
194
|
]),
|
|
195
195
|
_: 1
|
|
@@ -203,23 +203,23 @@ function Kt() {
|
|
|
203
203
|
function Xe(e) {
|
|
204
204
|
return e.button === 0 && !e.metaKey && !e.ctrlKey && !e.shiftKey && !e.altKey && !e.defaultPrevented;
|
|
205
205
|
}
|
|
206
|
-
const Ye = (e) => e.to ? [e] : e.children.flatMap(Ye);
|
|
206
|
+
const Ye = (e) => e.to || e.href ? [e] : e.children.flatMap(Ye);
|
|
207
207
|
function Vt(e) {
|
|
208
208
|
const a = [];
|
|
209
209
|
for (const n of e) {
|
|
210
210
|
const o = Ye(n);
|
|
211
211
|
if (o.length === 0) continue;
|
|
212
|
-
const
|
|
212
|
+
const r = !n.to && !n.href && o.length > 1 ? n.label : null;
|
|
213
213
|
a.push({
|
|
214
214
|
key: n.key,
|
|
215
|
-
heading:
|
|
216
|
-
separated:
|
|
217
|
-
items: o.map((c) => ({ key: c.key, label: c.label, icon: c.icon, to: c.to, active: c.active }))
|
|
215
|
+
heading: r,
|
|
216
|
+
separated: r === null && a.length > 0,
|
|
217
|
+
items: o.map((c) => ({ key: c.key, label: c.label, icon: c.icon, to: c.to, href: c.href ?? null, active: c.active }))
|
|
218
218
|
});
|
|
219
219
|
}
|
|
220
220
|
return a;
|
|
221
221
|
}
|
|
222
|
-
const Ft = ["aria-label", "data-appearance"], Ut = ["data-separated"], Wt = ["id"], Xt = ["aria-labelledby"], Yt = ["href", "aria-current", "onClick"],
|
|
222
|
+
const Ft = ["aria-label", "data-appearance"], Ut = ["data-separated"], Wt = ["id"], Xt = ["aria-labelledby"], Yt = ["href"], Ht = { class: "min-w-0 flex-1 truncate" }, Qt = { class: "sr-only" }, Gt = ["href", "aria-current", "onClick"], Jt = { class: "min-w-0 flex-1 truncate" }, De = "flex w-full items-center transition-colors focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-border-focus", He = /* @__PURE__ */ O({
|
|
223
223
|
__name: "NavigationList",
|
|
224
224
|
props: {
|
|
225
225
|
items: { default: void 0 },
|
|
@@ -228,16 +228,16 @@ const Ft = ["aria-label", "data-appearance"], Ut = ["data-separated"], Wt = ["id
|
|
|
228
228
|
},
|
|
229
229
|
emits: ["select"],
|
|
230
230
|
setup(e, { emit: a }) {
|
|
231
|
-
const n = e, o = a, { t:
|
|
232
|
-
function b(
|
|
233
|
-
if (n.appearance === "drawer" && Xe(
|
|
234
|
-
|
|
231
|
+
const n = e, o = a, { t: r } = K(), c = Se(), s = n.items === void 0 ? bt() : null, u = Kt(), f = L(() => Vt(n.items ?? s?.value ?? []));
|
|
232
|
+
function b(k, C, v) {
|
|
233
|
+
if (n.appearance === "drawer" && Xe(k)) {
|
|
234
|
+
k.preventDefault(), o("select", v);
|
|
235
235
|
return;
|
|
236
236
|
}
|
|
237
|
-
C(
|
|
237
|
+
C(k);
|
|
238
238
|
}
|
|
239
239
|
const g = {
|
|
240
|
-
item: `${
|
|
240
|
+
item: `${De} group gap-2.5 rounded-md px-2.5 py-1.5 text-sm`,
|
|
241
241
|
active: "bg-white/10 font-medium text-white ring-1 ring-inset ring-white/5",
|
|
242
242
|
inactive: "font-normal text-gray-300 hover:bg-white/5 hover:text-white",
|
|
243
243
|
iconActive: "text-primary-400",
|
|
@@ -246,67 +246,88 @@ const Ft = ["aria-label", "data-appearance"], Ut = ["data-separated"], Wt = ["id
|
|
|
246
246
|
// A hairline above the group, inset like the rows.
|
|
247
247
|
separator: "before:mx-2 before:my-2.5 before:block before:border-t before:border-white/10"
|
|
248
248
|
}, h = {
|
|
249
|
-
item: `${
|
|
249
|
+
item: `${De} min-h-[2.875rem] cursor-pointer gap-3.5 rounded-group px-3 text-left text-body duration-motion-fast`,
|
|
250
250
|
active: "bg-tint-soft font-semibold text-content-link",
|
|
251
251
|
inactive: "active:bg-fill",
|
|
252
252
|
iconActive: "",
|
|
253
253
|
iconInactive: "",
|
|
254
254
|
heading: "px-3 pt-4.5 pb-1.5 text-subheadline text-content-muted",
|
|
255
255
|
separator: "before:mx-3 before:my-3 before:block before:border-t before:border-border-separator"
|
|
256
|
-
},
|
|
257
|
-
return (
|
|
258
|
-
"aria-label": e.label ?? t(
|
|
256
|
+
}, x = L(() => n.appearance === "rail" ? g : h), w = L(() => n.appearance === "rail" ? 16 : 22);
|
|
257
|
+
return (k, C) => (l(), m("nav", {
|
|
258
|
+
"aria-label": e.label ?? t(r)("core.shell.menu"),
|
|
259
259
|
"data-shell-navigation": "",
|
|
260
260
|
"data-appearance": e.appearance
|
|
261
261
|
}, [
|
|
262
262
|
i("ul", null, [
|
|
263
|
-
(
|
|
263
|
+
(l(!0), m(U, null, se(f.value, (v, D) => (l(), m("li", {
|
|
264
264
|
key: v.key,
|
|
265
265
|
"data-separated": v.separated || void 0,
|
|
266
|
-
class:
|
|
266
|
+
class: E(v.separated ? x.value.separator : "")
|
|
267
267
|
}, [
|
|
268
|
-
v.heading ? (
|
|
268
|
+
v.heading ? (l(), m("p", {
|
|
269
269
|
key: 0,
|
|
270
|
-
id: `${t(c)}-${
|
|
271
|
-
class:
|
|
272
|
-
}, M(v.heading), 11, Wt)) :
|
|
270
|
+
id: `${t(c)}-${D}`,
|
|
271
|
+
class: E([x.value.heading, e.appearance === "rail" ? D > 0 ? "pt-4" : "pt-1" : ""])
|
|
272
|
+
}, M(v.heading), 11, Wt)) : y("", !0),
|
|
273
273
|
i("ul", {
|
|
274
|
-
"aria-labelledby": v.heading ? `${t(c)}-${
|
|
275
|
-
class:
|
|
274
|
+
"aria-labelledby": v.heading ? `${t(c)}-${D}` : void 0,
|
|
275
|
+
class: E(e.appearance === "rail" ? "space-y-0.5" : "")
|
|
276
276
|
}, [
|
|
277
|
-
(
|
|
278
|
-
key:
|
|
277
|
+
(l(!0), m(U, null, se(v.items, (d) => (l(), m("li", {
|
|
278
|
+
key: d.key
|
|
279
279
|
}, [
|
|
280
|
-
|
|
280
|
+
d.href ? (l(), m("a", {
|
|
281
|
+
key: 0,
|
|
282
|
+
href: d.href,
|
|
283
|
+
"data-shell-destination": "",
|
|
284
|
+
"data-external": "",
|
|
285
|
+
class: E([x.value.item, x.value.inactive])
|
|
286
|
+
}, [
|
|
287
|
+
t(u)(d.icon) ? (l(), R(t(q), {
|
|
288
|
+
key: 0,
|
|
289
|
+
name: t(u)(d.icon),
|
|
290
|
+
size: w.value,
|
|
291
|
+
class: E(x.value.iconInactive)
|
|
292
|
+
}, null, 8, ["name", "size", "class"])) : y("", !0),
|
|
293
|
+
i("span", Ht, M(d.label), 1),
|
|
294
|
+
p(t(q), {
|
|
295
|
+
name: "externalLink",
|
|
296
|
+
size: 12,
|
|
297
|
+
class: "shrink-0 opacity-70"
|
|
298
|
+
}),
|
|
299
|
+
i("span", Qt, M(t(r)("core.shell.external")), 1)
|
|
300
|
+
], 10, Yt)) : d.to ? (l(), R(t(Ve), {
|
|
301
|
+
key: 1,
|
|
281
302
|
custom: "",
|
|
282
|
-
to:
|
|
303
|
+
to: d.to
|
|
283
304
|
}, {
|
|
284
|
-
default:
|
|
305
|
+
default: z(({ href: I, navigate: T }) => [
|
|
285
306
|
i("a", {
|
|
286
307
|
href: I,
|
|
287
|
-
"aria-current":
|
|
308
|
+
"aria-current": d.active ? "page" : void 0,
|
|
288
309
|
"data-shell-destination": "",
|
|
289
|
-
class:
|
|
290
|
-
onClick: (
|
|
310
|
+
class: E([x.value.item, d.active ? x.value.active : x.value.inactive]),
|
|
311
|
+
onClick: (_) => b(_, T, d.to)
|
|
291
312
|
}, [
|
|
292
|
-
t(u)(
|
|
313
|
+
t(u)(d.icon) ? (l(), R(t(q), {
|
|
293
314
|
key: 0,
|
|
294
|
-
name: t(u)(
|
|
295
|
-
size:
|
|
296
|
-
class:
|
|
297
|
-
}, null, 8, ["name", "size", "class"])) :
|
|
298
|
-
i("span",
|
|
299
|
-
], 10,
|
|
315
|
+
name: t(u)(d.icon),
|
|
316
|
+
size: w.value,
|
|
317
|
+
class: E(d.active ? x.value.iconActive : x.value.iconInactive)
|
|
318
|
+
}, null, 8, ["name", "size", "class"])) : y("", !0),
|
|
319
|
+
i("span", Jt, M(d.label), 1)
|
|
320
|
+
], 10, Gt)
|
|
300
321
|
]),
|
|
301
322
|
_: 2
|
|
302
|
-
}, 1032, ["to"])
|
|
323
|
+
}, 1032, ["to"])) : y("", !0)
|
|
303
324
|
]))), 128))
|
|
304
325
|
], 10, Xt)
|
|
305
326
|
], 10, Ut))), 128))
|
|
306
327
|
])
|
|
307
328
|
], 8, Ft));
|
|
308
329
|
}
|
|
309
|
-
}),
|
|
330
|
+
}), Zt = ["href", "aria-label", "onClick"], Te = /* @__PURE__ */ O({
|
|
310
331
|
inheritAttrs: !1,
|
|
311
332
|
__name: "ShellBrand",
|
|
312
333
|
props: {
|
|
@@ -316,32 +337,32 @@ const Ft = ["aria-label", "data-appearance"], Ut = ["data-separated"], Wt = ["id
|
|
|
316
337
|
},
|
|
317
338
|
emits: ["select"],
|
|
318
339
|
setup(e, { emit: a }) {
|
|
319
|
-
const n = e, o = a, { t:
|
|
320
|
-
function s(u,
|
|
340
|
+
const n = e, o = a, { t: r } = K(), { config: c } = de();
|
|
341
|
+
function s(u, f) {
|
|
321
342
|
if (n.intercept && Xe(u)) {
|
|
322
343
|
u.preventDefault(), o("select", n.to);
|
|
323
344
|
return;
|
|
324
345
|
}
|
|
325
|
-
|
|
346
|
+
f(u);
|
|
326
347
|
}
|
|
327
|
-
return (u,
|
|
348
|
+
return (u, f) => (l(), R(t(Ve), {
|
|
328
349
|
custom: "",
|
|
329
350
|
to: e.to
|
|
330
351
|
}, {
|
|
331
|
-
default:
|
|
352
|
+
default: z(({ href: b, navigate: g }) => [
|
|
332
353
|
i("a", le(u.$attrs, {
|
|
333
354
|
href: b,
|
|
334
|
-
"aria-label": t(
|
|
355
|
+
"aria-label": t(r)("core.shell.home"),
|
|
335
356
|
"data-shell-brand": "",
|
|
336
357
|
class: "inline-block rounded-control focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-border-focus",
|
|
337
358
|
onClick: (h) => s(h, g)
|
|
338
359
|
}), [
|
|
339
360
|
j(u.$slots, "default", { tone: e.tone }, () => [
|
|
340
361
|
i("span", {
|
|
341
|
-
class:
|
|
362
|
+
class: E(["block truncate text-headline font-semibold", e.tone === "light" ? "text-white" : "text-content-strong"])
|
|
342
363
|
}, M(t(c).appName), 3)
|
|
343
364
|
])
|
|
344
|
-
], 16,
|
|
365
|
+
], 16, Zt)
|
|
345
366
|
]),
|
|
346
367
|
_: 3
|
|
347
368
|
}, 8, ["to"]));
|
|
@@ -351,16 +372,16 @@ function Qe() {
|
|
|
351
372
|
const e = qe();
|
|
352
373
|
return L(() => e.get("search").length > 0);
|
|
353
374
|
}
|
|
354
|
-
const
|
|
375
|
+
const en = {
|
|
355
376
|
class: "flex h-full flex-col bg-surface-page text-content-strong",
|
|
356
377
|
"data-shell-drawer-content": ""
|
|
357
|
-
},
|
|
378
|
+
}, tn = { class: "shrink-0 pt-[calc(max(0.75rem,env(safe-area-inset-top))+0.75rem)] pr-4 pb-4 pl-[max(1.375rem,env(safe-area-inset-left))]" }, nn = {
|
|
358
379
|
key: 0,
|
|
359
380
|
class: "shrink-0 pr-4 pb-3 pl-[max(1.125rem,env(safe-area-inset-left))]"
|
|
360
|
-
},
|
|
381
|
+
}, an = { class: "min-w-0 flex-1" }, on = { class: "block truncate text-headline font-semibold" }, sn = {
|
|
361
382
|
key: 0,
|
|
362
383
|
class: "block truncate text-footnote text-content-muted"
|
|
363
|
-
},
|
|
384
|
+
}, ln = /* @__PURE__ */ O({
|
|
364
385
|
__name: "NavigationDrawer",
|
|
365
386
|
props: {
|
|
366
387
|
identity: {},
|
|
@@ -368,9 +389,9 @@ const Gt = {
|
|
|
368
389
|
},
|
|
369
390
|
emits: ["select", "account"],
|
|
370
391
|
setup(e, { emit: a }) {
|
|
371
|
-
const n = a, { t: o } = K(),
|
|
372
|
-
return (c, s) => (
|
|
373
|
-
i("div",
|
|
392
|
+
const n = a, { t: o } = K(), r = Qe();
|
|
393
|
+
return (c, s) => (l(), m("div", en, [
|
|
394
|
+
i("div", tn, [
|
|
374
395
|
p(Te, {
|
|
375
396
|
to: e.home,
|
|
376
397
|
tone: "brand",
|
|
@@ -380,16 +401,16 @@ const Gt = {
|
|
|
380
401
|
}, G({ _: 2 }, [
|
|
381
402
|
c.$slots.brand ? {
|
|
382
403
|
name: "default",
|
|
383
|
-
fn:
|
|
404
|
+
fn: z((u) => [
|
|
384
405
|
j(c.$slots, "brand", ne(ae(u)))
|
|
385
406
|
]),
|
|
386
407
|
key: "0"
|
|
387
408
|
} : void 0
|
|
388
409
|
]), 1032, ["to"])
|
|
389
410
|
]),
|
|
390
|
-
t(
|
|
411
|
+
t(r) ? (l(), m("div", nn, [
|
|
391
412
|
p(t(J), { name: "search" })
|
|
392
|
-
])) :
|
|
413
|
+
])) : y("", !0),
|
|
393
414
|
s[3] || (s[3] = i("div", {
|
|
394
415
|
class: "mx-5.5 shrink-0 border-t border-border-separator",
|
|
395
416
|
role: "presentation"
|
|
@@ -412,9 +433,9 @@ const Gt = {
|
|
|
412
433
|
name: e.identity.name,
|
|
413
434
|
size: "lg"
|
|
414
435
|
}, null, 8, ["name"]),
|
|
415
|
-
i("span",
|
|
416
|
-
i("span",
|
|
417
|
-
e.identity.detail ? (
|
|
436
|
+
i("span", an, [
|
|
437
|
+
i("span", on, M(e.identity.name), 1),
|
|
438
|
+
e.identity.detail ? (l(), m("span", sn, M(e.identity.detail), 1)) : y("", !0)
|
|
418
439
|
]),
|
|
419
440
|
p(t(q), {
|
|
420
441
|
name: "arrowRightSLine",
|
|
@@ -428,21 +449,21 @@ const Gt = {
|
|
|
428
449
|
function Je() {
|
|
429
450
|
return Le(Ge, null);
|
|
430
451
|
}
|
|
431
|
-
const he = 72,
|
|
432
|
-
function
|
|
433
|
-
const n =
|
|
434
|
-
let
|
|
452
|
+
const he = 72, rn = 110, cn = 0.5, un = 600;
|
|
453
|
+
function dn(e, a) {
|
|
454
|
+
const n = N(0), o = N(!1);
|
|
455
|
+
let r = 0, c = 0, s = !1;
|
|
435
456
|
function u(h) {
|
|
436
|
-
s = !1, !(!a.enabled() || o.value || h.touches.length !== 1 || window.scrollY > 0) && (
|
|
457
|
+
s = !1, !(!a.enabled() || o.value || h.touches.length !== 1 || window.scrollY > 0) && (r = h.touches[0].clientX, c = h.touches[0].clientY, s = !0);
|
|
437
458
|
}
|
|
438
|
-
function
|
|
459
|
+
function f(h) {
|
|
439
460
|
if (!s) return;
|
|
440
|
-
const
|
|
441
|
-
if (
|
|
461
|
+
const x = h.touches[0].clientX - r, w = h.touches[0].clientY - c;
|
|
462
|
+
if (w <= 0 || Math.abs(x) > w || window.scrollY > 0) {
|
|
442
463
|
n.value === 0 && (s = !1), n.value = 0;
|
|
443
464
|
return;
|
|
444
465
|
}
|
|
445
|
-
n.value = Math.min(
|
|
466
|
+
n.value = Math.min(rn, w * cn);
|
|
446
467
|
}
|
|
447
468
|
async function b() {
|
|
448
469
|
if (s) {
|
|
@@ -452,7 +473,7 @@ function rn(e, a) {
|
|
|
452
473
|
}
|
|
453
474
|
o.value = !0, n.value = he;
|
|
454
475
|
try {
|
|
455
|
-
await Promise.all([e(), new Promise((h) => setTimeout(h,
|
|
476
|
+
await Promise.all([e(), new Promise((h) => setTimeout(h, un))]);
|
|
456
477
|
} finally {
|
|
457
478
|
o.value = !1, n.value = 0;
|
|
458
479
|
}
|
|
@@ -462,47 +483,47 @@ function rn(e, a) {
|
|
|
462
483
|
s = !1, o.value || (n.value = 0);
|
|
463
484
|
}
|
|
464
485
|
return ot(() => {
|
|
465
|
-
window.addEventListener("touchstart", u, { passive: !0 }), window.addEventListener("touchmove",
|
|
486
|
+
window.addEventListener("touchstart", u, { passive: !0 }), window.addEventListener("touchmove", f, { passive: !0 }), window.addEventListener("touchend", b), window.addEventListener("touchcancel", g);
|
|
466
487
|
}), Oe(() => {
|
|
467
|
-
window.removeEventListener("touchstart", u), window.removeEventListener("touchmove",
|
|
488
|
+
window.removeEventListener("touchstart", u), window.removeEventListener("touchmove", f), window.removeEventListener("touchend", b), window.removeEventListener("touchcancel", g);
|
|
468
489
|
}), { pull: n, refreshing: o };
|
|
469
490
|
}
|
|
470
|
-
const
|
|
491
|
+
const fn = { class: "flex size-9 items-center justify-center rounded-full bg-surface-raised text-primary-700 shadow-md ring-1 ring-border-separator dark:text-primary-300" }, mn = /* @__PURE__ */ O({
|
|
471
492
|
__name: "PullToRefresh",
|
|
472
493
|
setup(e) {
|
|
473
|
-
const a = oe("(display-mode: standalone)"), n = yt(), o = Je(),
|
|
494
|
+
const a = oe("(display-mode: standalone)"), n = yt(), o = Je(), r = gt(), c = Le(Ke, null), { pull: s, refreshing: u } = dn(
|
|
474
495
|
async () => {
|
|
475
|
-
|
|
496
|
+
r.hasUnsavedChanges() && !await r.confirm() || (c && c.value++, await be());
|
|
476
497
|
},
|
|
477
498
|
{
|
|
478
499
|
enabled: () => c !== null && n.value === 0 && !o?.open.value && (a.value || navigator.standalone === !0)
|
|
479
500
|
}
|
|
480
501
|
);
|
|
481
|
-
return (
|
|
502
|
+
return (f, b) => t(s) > 0 || t(u) ? (l(), m("div", {
|
|
482
503
|
key: 0,
|
|
483
504
|
"aria-hidden": "true",
|
|
484
505
|
"data-shell-pull-to-refresh": "",
|
|
485
506
|
class: "pointer-events-none fixed inset-x-0 z-40 flex justify-center",
|
|
486
507
|
style: ve({ top: `calc(env(safe-area-inset-top) + ${Math.max(t(s), 8)}px)` })
|
|
487
508
|
}, [
|
|
488
|
-
i("span",
|
|
509
|
+
i("span", fn, [
|
|
489
510
|
p(t(q), {
|
|
490
511
|
name: t(u) ? "loader4Line" : "refreshLine",
|
|
491
512
|
size: 20,
|
|
492
|
-
class:
|
|
513
|
+
class: E(t(u) ? "animate-spin motion-reduce:animate-none" : ""),
|
|
493
514
|
style: ve(t(u) ? void 0 : { transform: `rotate(${t(s) / t(he) * 270}deg)`, opacity: Math.min(1, t(s) / t(he)) })
|
|
494
515
|
}, null, 8, ["name", "class", "style"])
|
|
495
516
|
])
|
|
496
|
-
], 4)) :
|
|
517
|
+
], 4)) : y("", !0);
|
|
497
518
|
}
|
|
498
|
-
}),
|
|
519
|
+
}), pn = {
|
|
499
520
|
key: 0,
|
|
500
521
|
"data-shell-sidebar": "",
|
|
501
522
|
class: "flex w-64 shrink-0 flex-col bg-anchor-900 dark:border-r dark:border-white/5 dark:bg-anchor-950"
|
|
502
|
-
},
|
|
523
|
+
}, vn = { class: "sticky top-[var(--shell-banner-h,0px)] z-30 flex h-[calc(100vh-var(--shell-banner-h,0px))] flex-col" }, hn = { class: "flex items-center justify-between gap-2 pt-5 pr-2 pb-3 pl-4" }, bn = { class: "flex shrink-0 items-center gap-1" }, gn = {
|
|
503
524
|
key: 0,
|
|
504
525
|
class: "px-2 pb-1"
|
|
505
|
-
},
|
|
526
|
+
}, yn = { class: "border-t border-white/10 p-2" }, xn = /* @__PURE__ */ O({
|
|
506
527
|
__name: "ShellSidebar",
|
|
507
528
|
props: {
|
|
508
529
|
identity: {},
|
|
@@ -511,9 +532,9 @@ const cn = { class: "flex size-9 items-center justify-center rounded-full bg-sur
|
|
|
511
532
|
setup(e) {
|
|
512
533
|
ce(Ee, "rail");
|
|
513
534
|
const a = oe("(min-width: 48rem)"), n = Qe();
|
|
514
|
-
return (o,
|
|
515
|
-
i("div",
|
|
516
|
-
i("div",
|
|
535
|
+
return (o, r) => t(a) ? (l(), m("aside", pn, [
|
|
536
|
+
i("div", vn, [
|
|
537
|
+
i("div", hn, [
|
|
517
538
|
p(Te, {
|
|
518
539
|
to: e.home,
|
|
519
540
|
tone: "light",
|
|
@@ -521,101 +542,101 @@ const cn = { class: "flex size-9 items-center justify-center rounded-full bg-sur
|
|
|
521
542
|
}, G({ _: 2 }, [
|
|
522
543
|
o.$slots.brand ? {
|
|
523
544
|
name: "default",
|
|
524
|
-
fn:
|
|
545
|
+
fn: z((c) => [
|
|
525
546
|
j(o.$slots, "brand", ne(ae(c)))
|
|
526
547
|
]),
|
|
527
548
|
key: "0"
|
|
528
549
|
} : void 0
|
|
529
550
|
]), 1032, ["to"]),
|
|
530
|
-
i("div",
|
|
551
|
+
i("div", bn, [
|
|
531
552
|
p(t(J), { name: "headerActions" })
|
|
532
553
|
])
|
|
533
554
|
]),
|
|
534
|
-
t(n) ? (
|
|
555
|
+
t(n) ? (l(), m("div", gn, [
|
|
535
556
|
p(t(J), { name: "search" })
|
|
536
|
-
])) :
|
|
557
|
+
])) : y("", !0),
|
|
537
558
|
p(He, {
|
|
538
559
|
appearance: "rail",
|
|
539
560
|
class: "scrollbar-subtle min-h-0 flex-1 overflow-y-auto px-2 pt-3 pb-3 [mask-image:linear-gradient(to_bottom,transparent,black_12px,black_calc(100%-12px),transparent)]"
|
|
540
561
|
}),
|
|
541
562
|
j(o.$slots, "footer"),
|
|
542
|
-
i("div",
|
|
563
|
+
i("div", yn, [
|
|
543
564
|
p(Bt, { identity: e.identity }, null, 8, ["identity"])
|
|
544
565
|
])
|
|
545
566
|
])
|
|
546
|
-
])) :
|
|
567
|
+
])) : y("", !0);
|
|
547
568
|
}
|
|
548
|
-
}),
|
|
549
|
-
function
|
|
550
|
-
if (Math.abs(e - a) >
|
|
569
|
+
}), kn = 20, _n = 8, Ie = 0.5, wn = 40;
|
|
570
|
+
function $n({ offset: e, startOffset: a, width: n, velocity: o }) {
|
|
571
|
+
if (Math.abs(e - a) > wn) {
|
|
551
572
|
if (o > Ie) return !0;
|
|
552
573
|
if (o < -Ie) return !1;
|
|
553
574
|
}
|
|
554
575
|
return e > n / 2;
|
|
555
576
|
}
|
|
556
|
-
function
|
|
557
|
-
const a =
|
|
558
|
-
let o = !1,
|
|
559
|
-
function h(
|
|
560
|
-
o = !0,
|
|
577
|
+
function Sn(e) {
|
|
578
|
+
const a = N(0), n = N(!1);
|
|
579
|
+
let o = !1, r = null, c = 0, s = 0, u = 0, f = 0, b = 0, g = 0;
|
|
580
|
+
function h(T, _) {
|
|
581
|
+
o = !0, r = null, c = f = T.clientX, s = T.clientY, u = _, b = performance.now(), g = 0;
|
|
561
582
|
}
|
|
562
|
-
function
|
|
563
|
-
const
|
|
564
|
-
if (!o || !
|
|
565
|
-
const B =
|
|
566
|
-
if (!
|
|
567
|
-
if (Math.max(Math.abs(B), Math.abs(Z)) <
|
|
568
|
-
if (
|
|
583
|
+
function x(T) {
|
|
584
|
+
const _ = T.touches[0];
|
|
585
|
+
if (!o || !_) return;
|
|
586
|
+
const B = _.clientX - c, Z = _.clientY - s;
|
|
587
|
+
if (!r) {
|
|
588
|
+
if (Math.max(Math.abs(B), Math.abs(Z)) < _n) return;
|
|
589
|
+
if (r = Math.abs(B) > Math.abs(Z) ? "x" : "y", r === "y" || u === 0 && B < 0) {
|
|
569
590
|
o = !1;
|
|
570
591
|
return;
|
|
571
592
|
}
|
|
572
593
|
n.value = !0, a.value = u, e.onStart();
|
|
573
594
|
}
|
|
574
595
|
const Y = performance.now();
|
|
575
|
-
g = (
|
|
596
|
+
g = (_.clientX - f) / Math.max(Y - b, 1), f = _.clientX, b = Y, a.value = Math.min(e.width(), Math.max(0, u + B)), T.cancelable && T.preventDefault();
|
|
576
597
|
}
|
|
577
|
-
function
|
|
578
|
-
o && (o = !1, n.value && (n.value = !1, e.onSettle(
|
|
598
|
+
function w() {
|
|
599
|
+
o && (o = !1, n.value && (n.value = !1, e.onSettle($n({ offset: a.value, startOffset: u, width: e.width(), velocity: g }))));
|
|
579
600
|
}
|
|
580
|
-
function
|
|
601
|
+
function k() {
|
|
581
602
|
o = !1, n.value = !1;
|
|
582
603
|
}
|
|
583
|
-
function C(
|
|
584
|
-
const
|
|
585
|
-
!
|
|
604
|
+
function C(T) {
|
|
605
|
+
const _ = T.touches[0];
|
|
606
|
+
!_ || T.touches.length !== 1 || e.isOpen() || !e.canOpenFromEdge() || _.clientX > kn || h(_, 0);
|
|
586
607
|
}
|
|
587
608
|
let v = !1;
|
|
588
|
-
function
|
|
589
|
-
v || (v = !0, window.addEventListener("touchstart", C, { passive: !0 }), window.addEventListener("touchmove",
|
|
609
|
+
function D() {
|
|
610
|
+
v || (v = !0, window.addEventListener("touchstart", C, { passive: !0 }), window.addEventListener("touchmove", x, { passive: !1 }), window.addEventListener("touchend", w), window.addEventListener("touchcancel", w));
|
|
590
611
|
}
|
|
591
|
-
function
|
|
592
|
-
v && (v = !1, window.removeEventListener("touchstart", C), window.removeEventListener("touchmove",
|
|
612
|
+
function d() {
|
|
613
|
+
v && (v = !1, window.removeEventListener("touchstart", C), window.removeEventListener("touchmove", x), window.removeEventListener("touchend", w), window.removeEventListener("touchcancel", w), k());
|
|
593
614
|
}
|
|
594
|
-
return Q(e.enabled, (
|
|
595
|
-
onTouchstartPassive(
|
|
596
|
-
const
|
|
597
|
-
|
|
615
|
+
return Q(e.enabled, (T) => T ? D() : d(), { immediate: !0 }), ue(d), { offset: a, dragging: n, closeEvents: {
|
|
616
|
+
onTouchstartPassive(T) {
|
|
617
|
+
const _ = T.touches[0];
|
|
618
|
+
_ && T.touches.length === 1 && e.isOpen() && h(_, e.width());
|
|
598
619
|
}
|
|
599
|
-
}, cancel:
|
|
620
|
+
}, cancel: k };
|
|
600
621
|
}
|
|
601
|
-
const
|
|
622
|
+
const Ln = ["id", "aria-label"], Cn = ["data-drawer", "inert"], En = /* @__PURE__ */ O({
|
|
602
623
|
__name: "ShellStage",
|
|
603
624
|
props: {
|
|
604
625
|
enabled: { type: Boolean }
|
|
605
626
|
},
|
|
606
627
|
setup(e) {
|
|
607
|
-
const a = e, { t: n } = K(), o = ht(),
|
|
608
|
-
let v = 0,
|
|
609
|
-
const
|
|
610
|
-
enabled: () =>
|
|
611
|
-
width:
|
|
628
|
+
const a = e, { t: n } = K(), o = ht(), r = ge(), c = oe("(max-width: 47.999rem)"), s = oe("(display-mode: standalone)"), u = oe("(prefers-reduced-motion: reduce)"), f = L(() => a.enabled && c.value), b = re("stage"), g = re("scroller"), h = N(null), x = Se(), w = N(!1), k = N(!1), C = N(!1);
|
|
629
|
+
let v = 0, D = !1, d, I = null;
|
|
630
|
+
const T = () => h.value?.offsetWidth ?? 0, _ = Sn({
|
|
631
|
+
enabled: () => f.value,
|
|
632
|
+
width: T,
|
|
612
633
|
isOpen: () => C.value,
|
|
613
634
|
canOpenFromEdge: () => s.value || navigator.standalone === !0,
|
|
614
635
|
onStart: () => {
|
|
615
|
-
clearTimeout(
|
|
636
|
+
clearTimeout(d), ee();
|
|
616
637
|
},
|
|
617
|
-
onSettle: (S) => S ?
|
|
618
|
-
}), B = L(() =>
|
|
638
|
+
onSettle: (S) => S ? w.value = !0 : F()
|
|
639
|
+
}), B = L(() => _.dragging.value ? _.offset.value : C.value ? T() : 0), Z = L(() => T() ? B.value / T() : 0), Y = Fe(h, {
|
|
619
640
|
initialFocus: "panel",
|
|
620
641
|
onEscape: () => F()
|
|
621
642
|
});
|
|
@@ -625,60 +646,60 @@ const wn = ["id", "aria-label"], $n = ["data-drawer", "inert"], Sn = /* @__PURE_
|
|
|
625
646
|
}
|
|
626
647
|
function ee() {
|
|
627
648
|
const S = b.value, V = g.value;
|
|
628
|
-
|
|
649
|
+
k.value || !S || !V || (v = window.scrollY, D = !1, Object.assign(S.style, { position: "fixed", inset: "0", overflow: "hidden", zIndex: "10" }), Object.assign(V.style, { position: "absolute", inset: "0", overflow: "hidden" }), V.scrollTop = v, k.value = !0);
|
|
629
650
|
}
|
|
630
651
|
function W() {
|
|
631
652
|
const S = b.value, V = g.value;
|
|
632
|
-
!
|
|
653
|
+
!k.value || !S || !V || (Object.assign(S.style, { position: "", inset: "", overflow: "", zIndex: "", transform: "", transition: "", borderRadius: "" }), Object.assign(V.style, { position: "", inset: "", overflow: "" }), k.value = !1, window.scrollTo({ top: D ? 0 : v, behavior: "instant" }));
|
|
633
654
|
}
|
|
634
|
-
Q([B, () =>
|
|
655
|
+
Q([B, () => _.dragging.value, k], () => {
|
|
635
656
|
const S = b.value;
|
|
636
|
-
!S || !
|
|
657
|
+
!S || !k.value || (S.style.transform = `translate3d(${B.value}px, 0, 0)`, S.style.borderRadius = B.value > 0 ? "2.5rem" : "", S.style.transition = _.dragging.value || u.value ? "none" : "transform var(--app-motion-drawer) var(--app-motion-sheet-easing), border-radius var(--app-motion-drawer) var(--app-motion-sheet-easing)");
|
|
637
658
|
}, { flush: "sync" });
|
|
638
659
|
function H() {
|
|
639
|
-
if (!
|
|
640
|
-
|
|
660
|
+
if (!f.value) {
|
|
661
|
+
w.value = !1;
|
|
641
662
|
return;
|
|
642
663
|
}
|
|
643
|
-
clearTimeout(
|
|
664
|
+
clearTimeout(d), I = null, ee(), b.value?.offsetWidth, C.value = !0, Y.present(), be(() => {
|
|
644
665
|
h.value?.querySelector('[aria-current="page"]')?.focus({ preventScroll: !0 });
|
|
645
666
|
});
|
|
646
667
|
}
|
|
647
668
|
function F(S) {
|
|
648
|
-
if (S && (I = S),
|
|
649
|
-
|
|
669
|
+
if (S && (I = S), w.value) {
|
|
670
|
+
w.value = !1;
|
|
650
671
|
return;
|
|
651
672
|
}
|
|
652
|
-
C.value = !1, Y.dismissWithoutAsking(), clearTimeout(
|
|
673
|
+
C.value = !1, Y.dismissWithoutAsking(), clearTimeout(d), d = setTimeout(xe, ye() + 30);
|
|
653
674
|
}
|
|
654
675
|
function xe() {
|
|
655
676
|
W();
|
|
656
677
|
const S = I;
|
|
657
678
|
I = null, S?.();
|
|
658
679
|
}
|
|
659
|
-
Q(
|
|
660
|
-
S || (
|
|
680
|
+
Q(w, (S) => S ? H() : F()), Q(f, (S) => {
|
|
681
|
+
S || (_.cancel(), clearTimeout(d), I = null, w.value = !1, C.value = !1, Y.dismissWithoutAsking(), W());
|
|
661
682
|
}), Q(() => o.fullPath, () => {
|
|
662
|
-
|
|
683
|
+
k.value && (D = !0), C.value && F();
|
|
663
684
|
});
|
|
664
685
|
function me(S) {
|
|
665
|
-
|
|
686
|
+
r.push(S).catch(() => {
|
|
666
687
|
}).finally(() => F());
|
|
667
688
|
}
|
|
668
689
|
return ce(Ge, {
|
|
669
|
-
available:
|
|
670
|
-
open:
|
|
671
|
-
panelId:
|
|
690
|
+
available: f,
|
|
691
|
+
open: w,
|
|
692
|
+
panelId: x,
|
|
672
693
|
present: () => {
|
|
673
|
-
|
|
694
|
+
f.value && (w.value = !0);
|
|
674
695
|
},
|
|
675
696
|
dismiss: F
|
|
676
697
|
}), Oe(() => {
|
|
677
|
-
clearTimeout(
|
|
678
|
-
}), (S, V) => (
|
|
679
|
-
|
|
698
|
+
clearTimeout(d), W();
|
|
699
|
+
}), (S, V) => (l(), m(U, null, [
|
|
700
|
+
f.value ? (l(), m("div", le({
|
|
680
701
|
key: 0,
|
|
681
|
-
id: t(
|
|
702
|
+
id: t(x),
|
|
682
703
|
ref_key: "panel",
|
|
683
704
|
ref: h,
|
|
684
705
|
role: "dialog",
|
|
@@ -686,21 +707,21 @@ const wn = ["id", "aria-label"], $n = ["data-drawer", "inert"], Sn = /* @__PURE_
|
|
|
686
707
|
"aria-label": t(n)("core.shell.menu"),
|
|
687
708
|
tabindex: "-1",
|
|
688
709
|
"data-shell-drawer": "",
|
|
689
|
-
class: ["fixed inset-y-0 left-0 z-0 w-[min(82vw,20rem)] outline-none",
|
|
690
|
-
style: t(u) ? { opacity: C.value || t(
|
|
691
|
-
}, t(
|
|
710
|
+
class: ["fixed inset-y-0 left-0 z-0 w-[min(82vw,20rem)] outline-none", k.value ? "visible" : "invisible"],
|
|
711
|
+
style: t(u) ? { opacity: C.value || t(_).dragging.value ? 1 : 0, transition: "opacity var(--app-motion-drawer) linear" } : void 0
|
|
712
|
+
}, t(_).closeEvents), [
|
|
692
713
|
j(S.$slots, "drawer", {
|
|
693
714
|
select: me,
|
|
694
715
|
dismiss: F
|
|
695
716
|
})
|
|
696
|
-
], 16,
|
|
717
|
+
], 16, Ln)) : y("", !0),
|
|
697
718
|
i("div", {
|
|
698
719
|
ref_key: "stage",
|
|
699
720
|
ref: b,
|
|
700
721
|
"data-shell-stage": "",
|
|
701
722
|
"data-drawer": C.value ? "open" : void 0,
|
|
702
|
-
class:
|
|
703
|
-
inert: C.value || t(
|
|
723
|
+
class: E(["flex flex-1 flex-col", k.value ? "overscroll-none bg-surface-page shadow-dialog" : ""]),
|
|
724
|
+
inert: C.value || t(_).dragging.value || void 0
|
|
704
725
|
}, [
|
|
705
726
|
i("div", {
|
|
706
727
|
ref_key: "scroller",
|
|
@@ -709,29 +730,29 @@ const wn = ["id", "aria-label"], $n = ["data-drawer", "inert"], Sn = /* @__PURE_
|
|
|
709
730
|
}, [
|
|
710
731
|
j(S.$slots, "default")
|
|
711
732
|
], 512),
|
|
712
|
-
|
|
733
|
+
k.value ? (l(), m("div", {
|
|
713
734
|
key: 0,
|
|
714
735
|
"aria-hidden": "true",
|
|
715
736
|
class: "pointer-events-none fixed inset-0 z-50 bg-scrim",
|
|
716
737
|
style: ve({ opacity: Z.value * 0.55 })
|
|
717
|
-
}, null, 4)) :
|
|
718
|
-
], 10,
|
|
719
|
-
|
|
738
|
+
}, null, 4)) : y("", !0)
|
|
739
|
+
], 10, Cn),
|
|
740
|
+
k.value && B.value > 0 ? (l(), m("div", le({
|
|
720
741
|
key: 1,
|
|
721
742
|
"aria-hidden": "true",
|
|
722
743
|
"data-shell-stage-cover": "",
|
|
723
744
|
class: "fixed inset-y-0 right-0 z-20",
|
|
724
745
|
style: { left: `${B.value}px` }
|
|
725
|
-
}, t(
|
|
746
|
+
}, t(_).closeEvents, {
|
|
726
747
|
onClick: V[0] || (V[0] = (Me) => F())
|
|
727
|
-
}), null, 16)) :
|
|
748
|
+
}), null, 16)) : y("", !0)
|
|
728
749
|
], 64));
|
|
729
750
|
}
|
|
730
|
-
}),
|
|
751
|
+
}), Tn = ["aria-label", "aria-expanded", "aria-controls"], Mn = /* @__PURE__ */ O({
|
|
731
752
|
__name: "NavigationMenuButton",
|
|
732
753
|
setup(e) {
|
|
733
754
|
const a = Je(), { t: n } = K();
|
|
734
|
-
return (o,
|
|
755
|
+
return (o, r) => t(a)?.available.value ? (l(), m("button", {
|
|
735
756
|
key: 0,
|
|
736
757
|
type: "button",
|
|
737
758
|
"data-shell-menu-button": "",
|
|
@@ -740,46 +761,46 @@ const wn = ["id", "aria-label"], $n = ["data-drawer", "inert"], Sn = /* @__PURE_
|
|
|
740
761
|
"aria-controls": t(a).panelId,
|
|
741
762
|
"aria-haspopup": "dialog",
|
|
742
763
|
class: "relative my-1 ml-2 flex size-11 shrink-0 cursor-pointer items-center justify-center rounded-full bg-surface-cell text-content-strong shadow-float transition-transform duration-motion-fast active:scale-95 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-border-focus",
|
|
743
|
-
onClick:
|
|
764
|
+
onClick: r[0] || (r[0] = (c) => t(a).present())
|
|
744
765
|
}, [
|
|
745
766
|
p(t(q), {
|
|
746
767
|
name: "menuLines",
|
|
747
768
|
size: 20
|
|
748
769
|
})
|
|
749
|
-
], 8,
|
|
770
|
+
], 8, Tn)) : y("", !0);
|
|
750
771
|
}
|
|
751
|
-
}),
|
|
772
|
+
}), An = { class: "grid min-h-bar-height grid-cols-[minmax(0,1fr)_auto_minmax(0,1fr)] items-center gap-1" }, zn = { class: "flex min-w-0 items-center justify-start" }, Dn = ["data-page-action", "disabled"], In = { class: "truncate" }, On = { class: "ml-1 flex items-center gap-1" }, Rn = { class: "flex min-w-0 items-center justify-end" }, Pn = ["data-page-action", "aria-label", "disabled", "onClick"], Nn = ["data-page-action", "disabled", "aria-label", "aria-busy", "onClick"], qn = { class: "truncate" }, Bn = ["aria-label", "onClick"], jn = /* @__PURE__ */ O({
|
|
752
773
|
__name: "ShellTopBar",
|
|
753
774
|
props: {
|
|
754
775
|
home: {}
|
|
755
776
|
},
|
|
756
777
|
setup(e) {
|
|
757
|
-
const { t: a } = K(), n = ge(), o = je(), { session:
|
|
778
|
+
const { t: a } = K(), n = ge(), o = je(), { session: r } = de(), c = oe("(max-width: 47.999rem)");
|
|
758
779
|
ce(Ee, "bar");
|
|
759
|
-
const s = L(() => Ce(
|
|
760
|
-
() =>
|
|
780
|
+
const s = L(() => Ce(r.state.value) !== null), u = L(() => !s.value || c.value), f = L(() => s.value ? o.back.value : null), b = L(() => s.value ? o.leading.value : null), g = L(() => o.navTitle.value ?? o.title.value), h = L(() => s.value && !!g.value && (!!o.navTitle.value || !o.titleInView.value)), x = L(() => s.value ? o.actions.value : []), w = L(() => x.value.filter((v) => v.placement === "primary" && v.tone !== "critical")), k = L(
|
|
781
|
+
() => x.value.filter((v) => !w.value.includes(v)).map((v) => ({ id: v.id, label: v.label, icon: v.icon, tone: v.tone, disabled: v.disabled, processing: v.processing, onSelect: v.onClick }))
|
|
761
782
|
);
|
|
762
783
|
function C() {
|
|
763
|
-
|
|
784
|
+
f.value && n.push(f.value.to);
|
|
764
785
|
}
|
|
765
|
-
return (v,
|
|
786
|
+
return (v, D) => u.value ? (l(), m("header", {
|
|
766
787
|
key: 0,
|
|
767
788
|
"data-shell-top-bar": "",
|
|
768
|
-
class:
|
|
789
|
+
class: E(["pt-[max(0.25rem,env(safe-area-inset-top))] pr-[max(0.5rem,env(safe-area-inset-right))] pb-1 pl-[max(0.5rem,env(safe-area-inset-left))] text-content-strong", s.value ? ["sticky top-[var(--shell-banner-h,0px)] z-30 border-b bg-surface-page/85 backdrop-blur-xl transition-colors duration-motion-normal", h.value ? "border-border-separator" : "border-transparent"] : "border-b border-border-separator bg-surface-cell"])
|
|
769
790
|
}, [
|
|
770
|
-
i("div",
|
|
771
|
-
i("div",
|
|
772
|
-
b.value ? (
|
|
791
|
+
i("div", An, [
|
|
792
|
+
i("div", zn, [
|
|
793
|
+
b.value ? (l(), m("button", {
|
|
773
794
|
key: 0,
|
|
774
795
|
type: "button",
|
|
775
796
|
"data-shell-bar-leading": "",
|
|
776
797
|
"data-page-action": b.value.id,
|
|
777
798
|
disabled: b.value.disabled || b.value.processing,
|
|
778
799
|
class: "hit-target inline-flex min-w-0 cursor-pointer items-center rounded-control px-2 text-body text-content-link disabled:text-content-disabled",
|
|
779
|
-
onClick:
|
|
800
|
+
onClick: D[0] || (D[0] = (d) => b.value.onClick())
|
|
780
801
|
}, [
|
|
781
|
-
i("span",
|
|
782
|
-
], 8,
|
|
802
|
+
i("span", In, M(b.value.label), 1)
|
|
803
|
+
], 8, Dn)) : f.value ? (l(), m("button", {
|
|
783
804
|
key: 1,
|
|
784
805
|
type: "button",
|
|
785
806
|
"data-shell-bar-back": "",
|
|
@@ -793,23 +814,23 @@ const wn = ["id", "aria-label"], $n = ["data-drawer", "inert"], Sn = /* @__PURE_
|
|
|
793
814
|
class: "-mr-0.5 shrink-0"
|
|
794
815
|
}),
|
|
795
816
|
i("span", {
|
|
796
|
-
class:
|
|
797
|
-
}, M(
|
|
798
|
-
])) : s.value ? (
|
|
799
|
-
p(
|
|
800
|
-
i("span",
|
|
817
|
+
class: E(["truncate", h.value ? "sr-only" : ""])
|
|
818
|
+
}, M(f.value.label), 3)
|
|
819
|
+
])) : s.value ? (l(), m(U, { key: 2 }, [
|
|
820
|
+
p(Mn),
|
|
821
|
+
i("span", On, [
|
|
801
822
|
p(t(J), { name: "headerActions" })
|
|
802
823
|
])
|
|
803
|
-
], 64)) : (
|
|
824
|
+
], 64)) : (l(), R(Te, {
|
|
804
825
|
key: 3,
|
|
805
826
|
to: e.home,
|
|
806
827
|
tone: "brand",
|
|
807
|
-
class:
|
|
828
|
+
class: E(["px-2 transition-opacity", h.value ? "opacity-0" : "opacity-100"])
|
|
808
829
|
}, G({ _: 2 }, [
|
|
809
830
|
v.$slots.brand ? {
|
|
810
831
|
name: "default",
|
|
811
|
-
fn:
|
|
812
|
-
j(v.$slots, "brand", ne(ae(
|
|
832
|
+
fn: z((d) => [
|
|
833
|
+
j(v.$slots, "brand", ne(ae(d)))
|
|
813
834
|
]),
|
|
814
835
|
key: "0"
|
|
815
836
|
} : void 0
|
|
@@ -818,86 +839,86 @@ const wn = ["id", "aria-label"], $n = ["data-drawer", "inert"], Sn = /* @__PURE_
|
|
|
818
839
|
i("span", {
|
|
819
840
|
"aria-hidden": "true",
|
|
820
841
|
"data-shell-bar-title": "",
|
|
821
|
-
class:
|
|
842
|
+
class: E(["pointer-events-none truncate text-center text-headline font-semibold transition-opacity duration-motion-normal", h.value ? "max-w-[42vw] opacity-100" : "max-w-0 opacity-0"])
|
|
822
843
|
}, M(g.value), 3),
|
|
823
|
-
i("div",
|
|
824
|
-
s.value ? (
|
|
825
|
-
(
|
|
826
|
-
key:
|
|
844
|
+
i("div", Rn, [
|
|
845
|
+
s.value ? (l(), m(U, { key: 0 }, [
|
|
846
|
+
(l(!0), m(U, null, se(w.value, (d) => (l(), m(U, {
|
|
847
|
+
key: d.id
|
|
827
848
|
}, [
|
|
828
|
-
|
|
849
|
+
d.compact === "icon" && d.icon ? (l(), m("button", {
|
|
829
850
|
key: 0,
|
|
830
851
|
type: "button",
|
|
831
|
-
"data-page-action":
|
|
832
|
-
"aria-label":
|
|
833
|
-
disabled:
|
|
852
|
+
"data-page-action": d.id,
|
|
853
|
+
"aria-label": d.label,
|
|
854
|
+
disabled: d.disabled || d.processing,
|
|
834
855
|
class: "hit-target mx-1 flex size-8 shrink-0 cursor-pointer items-center justify-center rounded-full bg-tint-soft text-content-link disabled:opacity-45",
|
|
835
|
-
onClick: (I) =>
|
|
856
|
+
onClick: (I) => d.onClick()
|
|
836
857
|
}, [
|
|
837
858
|
p(t(q), {
|
|
838
|
-
name:
|
|
859
|
+
name: d.processing ? "loader4Line" : d.icon,
|
|
839
860
|
size: 18,
|
|
840
|
-
class:
|
|
861
|
+
class: E(d.processing ? "animate-spin" : "")
|
|
841
862
|
}, null, 8, ["name", "class"])
|
|
842
|
-
], 8,
|
|
863
|
+
], 8, Pn)) : (l(), m("button", {
|
|
843
864
|
key: 1,
|
|
844
865
|
type: "button",
|
|
845
|
-
"data-page-action":
|
|
846
|
-
disabled:
|
|
847
|
-
"aria-label":
|
|
848
|
-
"aria-busy":
|
|
866
|
+
"data-page-action": d.id,
|
|
867
|
+
disabled: d.disabled || d.processing,
|
|
868
|
+
"aria-label": d.shortLabel ? d.label : void 0,
|
|
869
|
+
"aria-busy": d.processing || void 0,
|
|
849
870
|
class: "hit-target flex min-w-0 shrink cursor-pointer items-center gap-1 rounded-control px-2 text-body font-semibold text-content-link disabled:text-content-disabled",
|
|
850
|
-
onClick: (I) =>
|
|
871
|
+
onClick: (I) => d.onClick()
|
|
851
872
|
}, [
|
|
852
|
-
|
|
873
|
+
d.processing ? (l(), R(t(q), {
|
|
853
874
|
key: 0,
|
|
854
875
|
name: "loader4Line",
|
|
855
876
|
size: 16,
|
|
856
877
|
class: "animate-spin"
|
|
857
|
-
})) :
|
|
858
|
-
i("span",
|
|
859
|
-
], 8,
|
|
878
|
+
})) : y("", !0),
|
|
879
|
+
i("span", qn, M(d.shortLabel ?? d.label), 1)
|
|
880
|
+
], 8, Nn))
|
|
860
881
|
], 64))), 128)),
|
|
861
|
-
|
|
882
|
+
k.value.length ? (l(), R(t(kt), {
|
|
862
883
|
key: 0,
|
|
863
|
-
items:
|
|
884
|
+
items: k.value,
|
|
864
885
|
label: t(a)("core.page.more_actions")
|
|
865
886
|
}, {
|
|
866
|
-
trigger:
|
|
887
|
+
trigger: z(({ toggle: d, attrs: I }) => [
|
|
867
888
|
i("button", le({ type: "button" }, I, {
|
|
868
889
|
"aria-label": t(a)("core.page.more_actions"),
|
|
869
890
|
"data-shell-bar-more": "",
|
|
870
891
|
"data-page-overflow": "",
|
|
871
892
|
class: "hit-target flex size-9 cursor-pointer items-center justify-center rounded-full text-content-link",
|
|
872
|
-
onClick:
|
|
893
|
+
onClick: d
|
|
873
894
|
}), [
|
|
874
895
|
p(t(q), {
|
|
875
896
|
name: "moreLine",
|
|
876
897
|
size: 22
|
|
877
898
|
})
|
|
878
|
-
], 16,
|
|
899
|
+
], 16, Bn)
|
|
879
900
|
]),
|
|
880
901
|
_: 1
|
|
881
|
-
}, 8, ["items", "label"])) :
|
|
882
|
-
], 64)) :
|
|
902
|
+
}, 8, ["items", "label"])) : y("", !0)
|
|
903
|
+
], 64)) : y("", !0),
|
|
883
904
|
j(v.$slots, "end")
|
|
884
905
|
])
|
|
885
906
|
])
|
|
886
|
-
], 2)) :
|
|
907
|
+
], 2)) : y("", !0);
|
|
887
908
|
}
|
|
888
909
|
});
|
|
889
|
-
function
|
|
910
|
+
function Kn(e) {
|
|
890
911
|
const { name: a, email: n } = e;
|
|
891
912
|
return { name: typeof a == "string" && a !== "" ? a : String(e.id), detail: typeof n == "string" ? n : null };
|
|
892
913
|
}
|
|
893
|
-
function
|
|
894
|
-
const { session: a } = de(), n = e ??
|
|
914
|
+
function Vn(e) {
|
|
915
|
+
const { session: a } = de(), n = e ?? Kn;
|
|
895
916
|
return L(() => {
|
|
896
917
|
const o = Ce(a.state.value);
|
|
897
918
|
return o ? n(o.user) : null;
|
|
898
919
|
});
|
|
899
920
|
}
|
|
900
|
-
const
|
|
921
|
+
const Fn = { class: "flex min-h-screen flex-col bg-surface-page text-base text-content antialiased" }, Un = ["aria-label"], Wn = { class: "flex flex-1" }, Xn = { class: "flex min-w-0 flex-1 overflow-x-clip" }, Yn = { "data-dialog-inert-skip": "" }, Hn = /* @__PURE__ */ O({
|
|
901
922
|
__name: "BackofficeShell",
|
|
902
923
|
props: {
|
|
903
924
|
home: { default: void 0 },
|
|
@@ -906,11 +927,11 @@ const jn = { class: "flex min-h-screen flex-col bg-surface-page text-base text-c
|
|
|
906
927
|
pullToRefresh: { type: Boolean, default: !0 }
|
|
907
928
|
},
|
|
908
929
|
setup(e) {
|
|
909
|
-
const a = e, { t: n } = K(), { session: o } = de(),
|
|
910
|
-
ce(Ke,
|
|
930
|
+
const a = e, { t: n } = K(), { session: o } = de(), r = je(), c = Vn(a.identity);
|
|
931
|
+
ce(Ke, N(0));
|
|
911
932
|
const s = L(() => Ce(o.state.value) !== null), u = re("accountSheet");
|
|
912
|
-
return (
|
|
913
|
-
e.progress?.visible.value ? (
|
|
933
|
+
return (f, b) => (l(), m("div", Fn, [
|
|
934
|
+
e.progress?.visible.value ? (l(), m("div", {
|
|
914
935
|
key: 0,
|
|
915
936
|
role: "progressbar",
|
|
916
937
|
"aria-label": t(n)("core.state.loading"),
|
|
@@ -918,83 +939,83 @@ const jn = { class: "flex min-h-screen flex-col bg-surface-page text-base text-c
|
|
|
918
939
|
class: "fixed inset-x-0 top-0 z-10000 flex h-1 justify-center bg-primary-800"
|
|
919
940
|
}, [...b[0] || (b[0] = [
|
|
920
941
|
i("div", { class: "animate-grow-and-shrink-width bg-primary-600 motion-reduce:w-full motion-reduce:animate-none motion-reduce:opacity-60" }, null, -1)
|
|
921
|
-
])], 8,
|
|
942
|
+
])], 8, Un)) : y("", !0),
|
|
922
943
|
p(t(J), { name: "banner" }),
|
|
923
|
-
p(
|
|
924
|
-
default:
|
|
925
|
-
e.pullToRefresh && s.value ? (
|
|
926
|
-
p(
|
|
927
|
-
|
|
944
|
+
p(En, { enabled: s.value }, G({
|
|
945
|
+
default: z(() => [
|
|
946
|
+
e.pullToRefresh && s.value ? (l(), R(mn, { key: 0 })) : y("", !0),
|
|
947
|
+
p(jn, { home: e.home }, G({ _: 2 }, [
|
|
948
|
+
f.$slots.brand ? {
|
|
928
949
|
name: "brand",
|
|
929
|
-
fn:
|
|
930
|
-
j(
|
|
950
|
+
fn: z((g) => [
|
|
951
|
+
j(f.$slots, "brand", ne(ae(g)))
|
|
931
952
|
]),
|
|
932
953
|
key: "0"
|
|
933
954
|
} : void 0,
|
|
934
|
-
|
|
955
|
+
f.$slots["top-bar-end"] ? {
|
|
935
956
|
name: "end",
|
|
936
|
-
fn:
|
|
937
|
-
j(
|
|
957
|
+
fn: z(() => [
|
|
958
|
+
j(f.$slots, "top-bar-end")
|
|
938
959
|
]),
|
|
939
960
|
key: "1"
|
|
940
961
|
} : void 0
|
|
941
962
|
]), 1032, ["home"]),
|
|
942
|
-
i("div",
|
|
943
|
-
t(c) ? (
|
|
963
|
+
i("div", Wn, [
|
|
964
|
+
t(c) ? (l(), R(xn, {
|
|
944
965
|
key: 0,
|
|
945
966
|
identity: t(c),
|
|
946
967
|
home: e.home
|
|
947
968
|
}, G({ _: 2 }, [
|
|
948
|
-
|
|
969
|
+
f.$slots.brand ? {
|
|
949
970
|
name: "brand",
|
|
950
|
-
fn:
|
|
951
|
-
j(
|
|
971
|
+
fn: z((g) => [
|
|
972
|
+
j(f.$slots, "brand", ne(ae(g)))
|
|
952
973
|
]),
|
|
953
974
|
key: "0"
|
|
954
975
|
} : void 0,
|
|
955
|
-
|
|
976
|
+
f.$slots.footer ? {
|
|
956
977
|
name: "footer",
|
|
957
|
-
fn:
|
|
958
|
-
j(
|
|
978
|
+
fn: z(() => [
|
|
979
|
+
j(f.$slots, "footer")
|
|
959
980
|
]),
|
|
960
981
|
key: "1"
|
|
961
982
|
} : void 0
|
|
962
|
-
]), 1032, ["identity", "home"])) :
|
|
963
|
-
i("div",
|
|
983
|
+
]), 1032, ["identity", "home"])) : y("", !0),
|
|
984
|
+
i("div", Xn, [
|
|
964
985
|
i("main", {
|
|
965
|
-
class:
|
|
966
|
-
style: ve(t(
|
|
986
|
+
class: E(["flex min-w-0 flex-1 flex-col", t(r).hasShell.value ? "" : "p-4 md:px-8 md:py-6"]),
|
|
987
|
+
style: ve(t(r).hasShell.value ? void 0 : { paddingBottom: "calc(var(--bottom-dock-h, 0px) + 1rem)" })
|
|
967
988
|
}, [
|
|
968
989
|
p(t(vt))
|
|
969
990
|
], 6)
|
|
970
991
|
])
|
|
971
992
|
]),
|
|
972
993
|
p(t(pt), {
|
|
973
|
-
class:
|
|
994
|
+
class: E(s.value ? "md:left-64" : "")
|
|
974
995
|
}, null, 8, ["class"])
|
|
975
996
|
]),
|
|
976
997
|
_: 2
|
|
977
998
|
}, [
|
|
978
999
|
t(c) ? {
|
|
979
1000
|
name: "drawer",
|
|
980
|
-
fn:
|
|
981
|
-
p(
|
|
1001
|
+
fn: z(({ select: g, dismiss: h }) => [
|
|
1002
|
+
p(ln, {
|
|
982
1003
|
identity: t(c),
|
|
983
1004
|
home: e.home,
|
|
984
1005
|
onSelect: g,
|
|
985
|
-
onAccount: (
|
|
1006
|
+
onAccount: (x) => h(() => u.value?.present())
|
|
986
1007
|
}, G({ _: 2 }, [
|
|
987
|
-
|
|
1008
|
+
f.$slots.brand ? {
|
|
988
1009
|
name: "brand",
|
|
989
|
-
fn:
|
|
990
|
-
j(
|
|
1010
|
+
fn: z((x) => [
|
|
1011
|
+
j(f.$slots, "brand", ne(ae(x)))
|
|
991
1012
|
]),
|
|
992
1013
|
key: "0"
|
|
993
1014
|
} : void 0,
|
|
994
|
-
|
|
1015
|
+
f.$slots.footer ? {
|
|
995
1016
|
name: "footer",
|
|
996
|
-
fn:
|
|
997
|
-
j(
|
|
1017
|
+
fn: z(() => [
|
|
1018
|
+
j(f.$slots, "footer")
|
|
998
1019
|
]),
|
|
999
1020
|
key: "1"
|
|
1000
1021
|
} : void 0
|
|
@@ -1003,14 +1024,14 @@ const jn = { class: "flex min-h-screen flex-col bg-surface-page text-base text-c
|
|
|
1003
1024
|
key: "0"
|
|
1004
1025
|
} : void 0
|
|
1005
1026
|
]), 1032, ["enabled"]),
|
|
1006
|
-
t(c) ? (
|
|
1027
|
+
t(c) ? (l(), R(jt, {
|
|
1007
1028
|
key: 1,
|
|
1008
1029
|
ref_key: "accountSheet",
|
|
1009
1030
|
ref: u,
|
|
1010
1031
|
identity: t(c)
|
|
1011
|
-
}, null, 8, ["identity"])) :
|
|
1012
|
-
(
|
|
1013
|
-
i("div",
|
|
1032
|
+
}, null, 8, ["identity"])) : y("", !0),
|
|
1033
|
+
(l(), R(Re, { to: "body" }, [
|
|
1034
|
+
i("div", Yn, [
|
|
1014
1035
|
p(t(mt))
|
|
1015
1036
|
])
|
|
1016
1037
|
])),
|
|
@@ -1019,7 +1040,7 @@ const jn = { class: "flex min-h-screen flex-col bg-surface-page text-base text-c
|
|
|
1019
1040
|
]));
|
|
1020
1041
|
}
|
|
1021
1042
|
});
|
|
1022
|
-
function
|
|
1043
|
+
function Qn(e = _t) {
|
|
1023
1044
|
const a = Pe(!1);
|
|
1024
1045
|
let n;
|
|
1025
1046
|
return {
|
|
@@ -1032,13 +1053,13 @@ function Xn(e = _t) {
|
|
|
1032
1053
|
}
|
|
1033
1054
|
};
|
|
1034
1055
|
}
|
|
1035
|
-
function
|
|
1036
|
-
const a =
|
|
1056
|
+
function mo(e = {}) {
|
|
1057
|
+
const a = Qn(), { brand: n, footer: o, topBarEnd: r } = e;
|
|
1037
1058
|
return { component: O({
|
|
1038
1059
|
name: "BackofficeShell",
|
|
1039
1060
|
setup() {
|
|
1040
1061
|
return () => te(
|
|
1041
|
-
|
|
1062
|
+
Hn,
|
|
1042
1063
|
{
|
|
1043
1064
|
home: e.home,
|
|
1044
1065
|
// The application's session produces U; the shell reads it as the SessionUser it is guaranteed to be.
|
|
@@ -1049,34 +1070,34 @@ function co(e = {}) {
|
|
|
1049
1070
|
{
|
|
1050
1071
|
...n && { brand: (s) => te(n, s) },
|
|
1051
1072
|
...o && { footer: () => te(o) },
|
|
1052
|
-
...
|
|
1073
|
+
...r && { "top-bar-end": () => te(r) }
|
|
1053
1074
|
}
|
|
1054
1075
|
);
|
|
1055
1076
|
}
|
|
1056
1077
|
}), slots: ["headerActions", "search", "accountMenu", "banner", "host"], progress: a };
|
|
1057
1078
|
}
|
|
1058
|
-
const
|
|
1059
|
-
function
|
|
1079
|
+
const Gn = 30 * 6e4, Jn = 6e4;
|
|
1080
|
+
function Zn(e, a) {
|
|
1060
1081
|
const n = new DOMParser().parseFromString(e, "text/html").querySelectorAll('script[type="module"][src]');
|
|
1061
1082
|
return Array.from(n, (o) => new URL(o.getAttribute("src") ?? "", a).pathname).sort();
|
|
1062
1083
|
}
|
|
1063
|
-
function
|
|
1084
|
+
function ea() {
|
|
1064
1085
|
return Array.from(document.querySelectorAll('script[type="module"][src]'), (e) => new URL(e.src, location.href).pathname).sort();
|
|
1065
1086
|
}
|
|
1066
|
-
function
|
|
1087
|
+
function ta(e) {
|
|
1067
1088
|
return O({
|
|
1068
1089
|
name: "AppUpdateNotice",
|
|
1069
1090
|
setup() {
|
|
1070
1091
|
if (e.enabled === !1) return () => null;
|
|
1071
|
-
const { t: a } = K(), n = e.url ?? "/", o =
|
|
1072
|
-
let
|
|
1092
|
+
const { t: a } = K(), n = e.url ?? "/", o = ea();
|
|
1093
|
+
let r = !1, c = 0;
|
|
1073
1094
|
async function s() {
|
|
1074
|
-
if (!(
|
|
1095
|
+
if (!(r || o.length === 0 || !navigator.onLine || document.visibilityState !== "visible") && !(Date.now() - c < Jn)) {
|
|
1075
1096
|
c = Date.now();
|
|
1076
1097
|
try {
|
|
1077
|
-
const b = await fetch(n, { cache: "no-store", credentials: "include" }), g = b.ok ?
|
|
1098
|
+
const b = await fetch(n, { cache: "no-store", credentials: "include" }), g = b.ok ? Zn(await b.text(), location.href) : [];
|
|
1078
1099
|
if (g.length === 0 || g.join() === o.join()) return;
|
|
1079
|
-
|
|
1100
|
+
r = !0, Be.info(a("core.shell.update.available"), {
|
|
1080
1101
|
duration: 1 / 0,
|
|
1081
1102
|
action: { label: a("core.shell.update.reload"), onClick: () => location.reload() }
|
|
1082
1103
|
});
|
|
@@ -1086,79 +1107,79 @@ function Jn(e) {
|
|
|
1086
1107
|
}
|
|
1087
1108
|
const u = () => void s();
|
|
1088
1109
|
document.addEventListener("visibilitychange", u);
|
|
1089
|
-
const
|
|
1110
|
+
const f = setInterval(s, e.checkEveryMs ?? Gn);
|
|
1090
1111
|
return ue(() => {
|
|
1091
|
-
document.removeEventListener("visibilitychange", u), clearInterval(
|
|
1112
|
+
document.removeEventListener("visibilitychange", u), clearInterval(f);
|
|
1092
1113
|
}), () => null;
|
|
1093
1114
|
}
|
|
1094
1115
|
});
|
|
1095
1116
|
}
|
|
1096
|
-
function
|
|
1117
|
+
function po(e = {}) {
|
|
1097
1118
|
return fe({
|
|
1098
1119
|
id: "vue-core.app-updates",
|
|
1099
|
-
contributions: [{ id: "vue-core.app-updates", slot: "host", component:
|
|
1120
|
+
contributions: [{ id: "vue-core.app-updates", slot: "host", component: ta(e), scope: "always" }]
|
|
1100
1121
|
});
|
|
1101
1122
|
}
|
|
1102
|
-
const
|
|
1103
|
-
function
|
|
1123
|
+
const na = 1e3, pe = (e) => e.path.split("/").filter(Boolean).length;
|
|
1124
|
+
function aa(e) {
|
|
1104
1125
|
if (typeof document > "u" || typeof document.startViewTransition != "function") return () => {
|
|
1105
1126
|
};
|
|
1106
1127
|
let a = null;
|
|
1107
|
-
const n = () => window.matchMedia("(max-width: 1023px)").matches && !window.matchMedia("(prefers-reduced-motion: reduce)").matches && !document.body.classList.contains(xt), o = e.beforeResolve((u,
|
|
1108
|
-
if (
|
|
1109
|
-
const b = pe(u) > pe(
|
|
1128
|
+
const n = () => window.matchMedia("(max-width: 1023px)").matches && !window.matchMedia("(prefers-reduced-motion: reduce)").matches && !document.body.classList.contains(xt), o = e.beforeResolve((u, f) => {
|
|
1129
|
+
if (r(), !f.matched.length || u.path === f.path || !n()) return;
|
|
1130
|
+
const b = pe(u) > pe(f) ? "forward" : pe(u) < pe(f) ? "back" : null;
|
|
1110
1131
|
if (!b) return;
|
|
1111
1132
|
const g = document.documentElement;
|
|
1112
1133
|
return g.dataset.navDirection = b, new Promise((h) => {
|
|
1113
|
-
const
|
|
1114
|
-
() => new Promise((
|
|
1115
|
-
const
|
|
1134
|
+
const x = document.startViewTransition(
|
|
1135
|
+
() => new Promise((w) => {
|
|
1136
|
+
const k = setTimeout(w, na);
|
|
1116
1137
|
a = () => {
|
|
1117
|
-
clearTimeout(
|
|
1138
|
+
clearTimeout(k), w();
|
|
1118
1139
|
}, h();
|
|
1119
1140
|
})
|
|
1120
1141
|
);
|
|
1121
|
-
|
|
1122
|
-
}),
|
|
1142
|
+
x.ready.catch(() => {
|
|
1143
|
+
}), x.finished.catch(() => {
|
|
1123
1144
|
}).finally(() => {
|
|
1124
1145
|
g.dataset.navDirection === b && delete g.dataset.navDirection;
|
|
1125
1146
|
});
|
|
1126
1147
|
});
|
|
1127
1148
|
});
|
|
1128
|
-
function
|
|
1149
|
+
function r() {
|
|
1129
1150
|
const u = a;
|
|
1130
1151
|
a = null, u && be().then(u);
|
|
1131
1152
|
}
|
|
1132
|
-
const c = e.afterEach(
|
|
1153
|
+
const c = e.afterEach(r), s = e.onError(r);
|
|
1133
1154
|
return () => {
|
|
1134
1155
|
o(), c(), s(), delete document.documentElement.dataset.navDirection, a?.(), a = null;
|
|
1135
1156
|
};
|
|
1136
1157
|
}
|
|
1137
|
-
const
|
|
1158
|
+
const oa = O({
|
|
1138
1159
|
name: "ViewTransitions",
|
|
1139
1160
|
setup() {
|
|
1140
|
-
return ue(
|
|
1161
|
+
return ue(aa(ge())), () => null;
|
|
1141
1162
|
}
|
|
1142
1163
|
});
|
|
1143
|
-
function
|
|
1164
|
+
function vo() {
|
|
1144
1165
|
return fe({
|
|
1145
1166
|
id: "vue-core.view-transitions",
|
|
1146
|
-
contributions: [{ id: "vue-core.view-transitions", slot: "host", component:
|
|
1167
|
+
contributions: [{ id: "vue-core.view-transitions", slot: "host", component: oa, scope: "always" }]
|
|
1147
1168
|
});
|
|
1148
1169
|
}
|
|
1149
|
-
const
|
|
1170
|
+
const sa = Symbol("vue-core:quick-search");
|
|
1150
1171
|
function Ze() {
|
|
1151
|
-
const e = St(
|
|
1172
|
+
const e = St(sa, () => Pe(!1));
|
|
1152
1173
|
return { isOpen: e, open: () => e.value = !0, close: () => e.value = !1 };
|
|
1153
1174
|
}
|
|
1154
|
-
const
|
|
1175
|
+
const la = { class: "flex-1 truncate" }, ra = /* @__PURE__ */ O({
|
|
1155
1176
|
__name: "QuickSearchButton",
|
|
1156
1177
|
setup(e) {
|
|
1157
|
-
const { t: a } = K(), n = Ze(), o = Le(Ee, "bar") === "rail",
|
|
1158
|
-
return (c, s) => (
|
|
1178
|
+
const { t: a } = K(), n = Ze(), o = Le(Ee, "bar") === "rail", r = L(() => Ue({ key: "k", mod: !0 }).join(" "));
|
|
1179
|
+
return (c, s) => (l(), m("button", {
|
|
1159
1180
|
type: "button",
|
|
1160
1181
|
"data-test": "quick-search-button",
|
|
1161
|
-
class:
|
|
1182
|
+
class: E(["flex h-9 w-full cursor-pointer items-center gap-2 rounded-control px-3 text-left text-callout transition-colors duration-motion-fast focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-border-focus", o ? "bg-gray-500/15 text-gray-400 hover:bg-gray-500/25" : "bg-fill text-content-muted hover:bg-fill-strong"]),
|
|
1162
1183
|
onClick: s[0] || (s[0] = (u) => t(n).open())
|
|
1163
1184
|
}, [
|
|
1164
1185
|
p(t(q), {
|
|
@@ -1166,31 +1187,31 @@ const aa = { class: "flex-1 truncate" }, oa = /* @__PURE__ */ O({
|
|
|
1166
1187
|
size: 16,
|
|
1167
1188
|
class: "shrink-0"
|
|
1168
1189
|
}),
|
|
1169
|
-
i("span",
|
|
1190
|
+
i("span", la, M(t(a)("core.shell.search.open")) + "…", 1),
|
|
1170
1191
|
i("kbd", {
|
|
1171
|
-
class:
|
|
1172
|
-
}, M(
|
|
1192
|
+
class: E(["rounded border px-1.5 text-caption [@media(pointer:coarse)]:hidden", o ? "border-gray-500/30" : "border-border-separator"])
|
|
1193
|
+
}, M(r.value), 3)
|
|
1173
1194
|
], 2));
|
|
1174
1195
|
}
|
|
1175
|
-
}),
|
|
1196
|
+
}), ia = ["aria-label"], ca = { class: "flex items-center gap-3 border-b border-border-separator px-4 py-3 pt-[max(0.75rem,var(--app-safe-top))] md:px-5 md:py-4" }, ua = {
|
|
1176
1197
|
key: 0,
|
|
1177
1198
|
class: "px-3 py-3"
|
|
1178
|
-
},
|
|
1199
|
+
}, da = {
|
|
1179
1200
|
key: 1,
|
|
1180
1201
|
class: "flex flex-col items-center gap-1 px-6 py-10 text-center",
|
|
1181
1202
|
"data-test": "quick-search-empty"
|
|
1182
|
-
},
|
|
1203
|
+
}, fa = { class: "text-headline font-semibold" }, ma = { class: "max-w-sm text-subheadline text-content-muted" }, pa = ["data-test"], va = ["id", "aria-selected", "data-index", "data-test", "onMousemove", "onClick"], ha = { class: "flex min-w-0 flex-1 flex-col" }, ba = { class: "truncate text-body font-semibold" }, ga = {
|
|
1183
1204
|
key: 2,
|
|
1184
1205
|
class: "px-3 py-3 text-subheadline text-content-destructive",
|
|
1185
1206
|
role: "alert"
|
|
1186
|
-
},
|
|
1207
|
+
}, ya = {
|
|
1187
1208
|
key: 3,
|
|
1188
1209
|
class: "px-3 py-2 text-footnote text-content-muted",
|
|
1189
1210
|
"data-test": "quick-search-unavailable"
|
|
1190
|
-
},
|
|
1211
|
+
}, xa = {
|
|
1191
1212
|
key: 4,
|
|
1192
1213
|
class: "px-3 py-8 text-center text-subheadline text-content-muted"
|
|
1193
|
-
},
|
|
1214
|
+
}, ka = { class: "hidden items-center gap-4 border-t border-border-separator px-5 py-2.5 text-footnote text-content-muted md:flex" }, _a = { class: "font-semibold" }, wa = /* @__PURE__ */ O({
|
|
1194
1215
|
__name: "QuickSearchPalette",
|
|
1195
1216
|
props: {
|
|
1196
1217
|
search: {},
|
|
@@ -1204,72 +1225,72 @@ const aa = { class: "flex-1 truncate" }, oa = /* @__PURE__ */ O({
|
|
|
1204
1225
|
delayMs: { default: 180 }
|
|
1205
1226
|
},
|
|
1206
1227
|
setup(e) {
|
|
1207
|
-
const a = e, { t: n } = K(), o = ge(),
|
|
1208
|
-
B(),
|
|
1228
|
+
const a = e, { t: n } = K(), o = ge(), r = Ze(), c = re("panel"), s = re("list"), { isOpen: u, present: f, dismiss: b } = Fe(c, { onDismissed: () => {
|
|
1229
|
+
B(), r.close();
|
|
1209
1230
|
} });
|
|
1210
|
-
wt({ key: "k", mod: !0, group: "general", label: () => n("core.shell.search.title") }, () =>
|
|
1211
|
-
const g =
|
|
1212
|
-
let
|
|
1213
|
-
const I = $t(
|
|
1231
|
+
wt({ key: "k", mod: !0, group: "general", label: () => n("core.shell.search.title") }, () => r.open()), ue(() => r.close());
|
|
1232
|
+
const g = N(""), h = N(null), x = N(""), w = N(!1), k = N(!1), C = N(0), v = N([]);
|
|
1233
|
+
let D = null, d;
|
|
1234
|
+
const I = $t(w), T = L(() => g.value.trim()), _ = L(() => T.value.length >= a.minLength);
|
|
1214
1235
|
function B() {
|
|
1215
|
-
clearTimeout(
|
|
1236
|
+
clearTimeout(d), D?.abort(), D = null, w.value = !1;
|
|
1216
1237
|
}
|
|
1217
|
-
Q(
|
|
1218
|
-
|
|
1219
|
-
}), Q(
|
|
1220
|
-
if (B(), C.value = 0,
|
|
1221
|
-
h.value = null,
|
|
1238
|
+
Q(r.isOpen, ($) => {
|
|
1239
|
+
$ ? (g.value = "", h.value = null, x.value = "", k.value = !1, C.value = 0, v.value = a.recent?.() ?? [], f()) : u.value && (B(), b());
|
|
1240
|
+
}), Q(T, ($) => {
|
|
1241
|
+
if (B(), C.value = 0, $.length < a.minLength) {
|
|
1242
|
+
h.value = null, x.value = "", k.value = !1;
|
|
1222
1243
|
return;
|
|
1223
1244
|
}
|
|
1224
|
-
|
|
1245
|
+
d = setTimeout(() => void Z($), a.delayMs);
|
|
1225
1246
|
});
|
|
1226
|
-
async function Z(
|
|
1247
|
+
async function Z($) {
|
|
1227
1248
|
const A = new AbortController();
|
|
1228
|
-
|
|
1249
|
+
D = A, w.value = !0, k.value = !1;
|
|
1229
1250
|
try {
|
|
1230
|
-
const X = await a.search(
|
|
1231
|
-
A.signal.aborted || (h.value = X,
|
|
1251
|
+
const X = await a.search($, A.signal);
|
|
1252
|
+
A.signal.aborted || (h.value = X, x.value = $);
|
|
1232
1253
|
} catch {
|
|
1233
|
-
A.signal.aborted || (
|
|
1254
|
+
A.signal.aborted || (k.value = !0);
|
|
1234
1255
|
} finally {
|
|
1235
|
-
|
|
1256
|
+
D === A && (D = null, w.value = !1);
|
|
1236
1257
|
}
|
|
1237
1258
|
}
|
|
1238
|
-
const Y = L(() =>
|
|
1239
|
-
function S(
|
|
1240
|
-
W.value.length && (C.value = (C.value +
|
|
1259
|
+
const Y = L(() => _.value && h.value ? h.value.groups : []), ye = L(() => _.value ? a.suggest?.(T.value) ?? [] : []), ee = L(() => _.value ? [...Y.value, ...ye.value].filter(($) => $.rows.length > 0) : v.value.length ? [{ key: "recent", label: n("core.shell.search.recent"), rows: v.value }] : []), W = L(() => ee.value.flatMap(($) => $.rows)), H = L(() => new Map(W.value.map(($, A) => [$, A]))), F = L(() => _.value && x.value === T.value && !w.value && !k.value), xe = L(() => F.value && !Y.value.some(($) => $.rows.length > 0)), me = L(() => _.value ? h.value?.unavailable ?? [] : []);
|
|
1260
|
+
function S($) {
|
|
1261
|
+
W.value.length && (C.value = (C.value + $ + W.value.length) % W.value.length, be(() => s.value?.querySelector(`[data-index="${C.value}"]`)?.scrollIntoView({ block: "nearest" })));
|
|
1241
1262
|
}
|
|
1242
|
-
function V(
|
|
1243
|
-
if (
|
|
1244
|
-
if (a.onChoose?.(
|
|
1245
|
-
window.open(o.resolve(
|
|
1263
|
+
function V($, A = !1) {
|
|
1264
|
+
if ($) {
|
|
1265
|
+
if (a.onChoose?.($), A) {
|
|
1266
|
+
window.open(o.resolve($.to).href, "_blank", "noopener");
|
|
1246
1267
|
return;
|
|
1247
1268
|
}
|
|
1248
|
-
b(), o.push(
|
|
1269
|
+
b(), o.push($.to);
|
|
1249
1270
|
}
|
|
1250
1271
|
}
|
|
1251
|
-
function Me(
|
|
1252
|
-
|
|
1272
|
+
function Me($) {
|
|
1273
|
+
$.key === "ArrowDown" || $.key === "ArrowUp" ? ($.preventDefault(), S($.key === "ArrowDown" ? 1 : -1)) : $.key === "Enter" && !$.isComposing && ($.preventDefault(), V(W.value[C.value], $.metaKey || $.ctrlKey));
|
|
1253
1274
|
}
|
|
1254
1275
|
const et = {
|
|
1255
1276
|
neutral: "bg-surface-inverse text-content-inverse-accent",
|
|
1256
1277
|
accent: "bg-control-on text-white",
|
|
1257
1278
|
action: "bg-tint-soft text-content-link"
|
|
1258
1279
|
}, tt = L(() => Ue({ key: "k", mod: !0 })[0]);
|
|
1259
|
-
return (
|
|
1280
|
+
return ($, A) => (l(), R(Re, { to: "body" }, [
|
|
1260
1281
|
p(we, {
|
|
1261
1282
|
"enter-active-class": "transition-opacity duration-motion-normal ease-motion-standard",
|
|
1262
1283
|
"enter-from-class": "opacity-0",
|
|
1263
1284
|
"leave-active-class": "transition-opacity duration-motion-fast ease-motion-standard",
|
|
1264
1285
|
"leave-to-class": "opacity-0"
|
|
1265
1286
|
}, {
|
|
1266
|
-
default:
|
|
1267
|
-
t(u) ? (
|
|
1287
|
+
default: z(() => [
|
|
1288
|
+
t(u) ? (l(), m("div", {
|
|
1268
1289
|
key: 0,
|
|
1269
1290
|
class: "fixed inset-0 z-9999 bg-scrim",
|
|
1270
1291
|
"aria-hidden": "true",
|
|
1271
1292
|
onClick: A[0] || (A[0] = (X) => t(b)())
|
|
1272
|
-
})) :
|
|
1293
|
+
})) : y("", !0)
|
|
1273
1294
|
]),
|
|
1274
1295
|
_: 1
|
|
1275
1296
|
}),
|
|
@@ -1279,8 +1300,8 @@ const aa = { class: "flex-1 truncate" }, oa = /* @__PURE__ */ O({
|
|
|
1279
1300
|
"leave-active-class": "transition duration-motion-fast ease-motion-standard",
|
|
1280
1301
|
"leave-to-class": "opacity-0 scale-98"
|
|
1281
1302
|
}, {
|
|
1282
|
-
default:
|
|
1283
|
-
t(u) ? (
|
|
1303
|
+
default: z(() => [
|
|
1304
|
+
t(u) ? (l(), m("div", {
|
|
1284
1305
|
key: 0,
|
|
1285
1306
|
ref_key: "panel",
|
|
1286
1307
|
ref: c,
|
|
@@ -1292,7 +1313,7 @@ const aa = { class: "flex-1 truncate" }, oa = /* @__PURE__ */ O({
|
|
|
1292
1313
|
"data-test": "quick-search",
|
|
1293
1314
|
onKeydown: Me
|
|
1294
1315
|
}, [
|
|
1295
|
-
i("div",
|
|
1316
|
+
i("div", ca, [
|
|
1296
1317
|
p(t(q), {
|
|
1297
1318
|
name: "search",
|
|
1298
1319
|
size: 20,
|
|
@@ -1325,81 +1346,81 @@ const aa = { class: "flex-1 truncate" }, oa = /* @__PURE__ */ O({
|
|
|
1325
1346
|
class: "min-h-0 flex-1 overflow-y-auto overscroll-contain px-2 py-2 md:px-3",
|
|
1326
1347
|
"data-test": "quick-search-results"
|
|
1327
1348
|
}, [
|
|
1328
|
-
t(I).visible.value && !F.value ? (
|
|
1349
|
+
t(I).visible.value && !F.value ? (l(), m("div", ua, [
|
|
1329
1350
|
p(t(Et), {
|
|
1330
1351
|
text: t(n)("core.shell.search.searching")
|
|
1331
1352
|
}, null, 8, ["text"])
|
|
1332
|
-
])) :
|
|
1333
|
-
xe.value ? (
|
|
1334
|
-
i("p",
|
|
1335
|
-
i("p",
|
|
1336
|
-
])) :
|
|
1337
|
-
(
|
|
1353
|
+
])) : y("", !0),
|
|
1354
|
+
xe.value ? (l(), m("div", da, [
|
|
1355
|
+
i("p", fa, M(t(n)("core.shell.search.none", { query: T.value })), 1),
|
|
1356
|
+
i("p", ma, M(_e(a.noneHint) ?? t(n)("core.shell.search.none_hint")), 1)
|
|
1357
|
+
])) : y("", !0),
|
|
1358
|
+
(l(!0), m(U, null, se(ee.value, (X) => (l(), m(U, {
|
|
1338
1359
|
key: X.key
|
|
1339
1360
|
}, [
|
|
1340
1361
|
i("p", {
|
|
1341
1362
|
class: "px-3 pt-2.5 pb-1.5 text-footnote font-semibold text-content-muted uppercase",
|
|
1342
1363
|
"data-test": `quick-search-group-${X.key}`
|
|
1343
|
-
}, M(X.label), 9,
|
|
1344
|
-
(
|
|
1345
|
-
id: `quick-search-row-${H.value.get(
|
|
1346
|
-
key:
|
|
1364
|
+
}, M(X.label), 9, pa),
|
|
1365
|
+
(l(!0), m(U, null, se(X.rows, (P) => (l(), m("div", {
|
|
1366
|
+
id: `quick-search-row-${H.value.get(P)}`,
|
|
1367
|
+
key: P.key,
|
|
1347
1368
|
role: "option",
|
|
1348
|
-
"aria-selected": H.value.get(
|
|
1349
|
-
"data-index": H.value.get(
|
|
1350
|
-
"data-test": `quick-search-row-${
|
|
1351
|
-
class:
|
|
1352
|
-
onMousemove: (ke) => C.value = H.value.get(
|
|
1353
|
-
onClick: (ke) => V(
|
|
1369
|
+
"aria-selected": H.value.get(P) === C.value,
|
|
1370
|
+
"data-index": H.value.get(P),
|
|
1371
|
+
"data-test": `quick-search-row-${P.key}`,
|
|
1372
|
+
class: E(["flex cursor-pointer animate-row-in items-center gap-3 rounded-control px-3 py-2.5", H.value.get(P) === C.value ? "bg-surface-selected" : "hover:bg-fill"]),
|
|
1373
|
+
onMousemove: (ke) => C.value = H.value.get(P),
|
|
1374
|
+
onClick: (ke) => V(P, ke.metaKey || ke.ctrlKey)
|
|
1354
1375
|
}, [
|
|
1355
1376
|
i("span", {
|
|
1356
|
-
class:
|
|
1377
|
+
class: E(["flex size-8 shrink-0 items-center justify-center rounded-lg", et[P.tile ?? "neutral"]])
|
|
1357
1378
|
}, [
|
|
1358
1379
|
p(t(q), {
|
|
1359
|
-
name:
|
|
1380
|
+
name: P.icon,
|
|
1360
1381
|
size: 16
|
|
1361
1382
|
}, null, 8, ["name"])
|
|
1362
1383
|
], 2),
|
|
1363
|
-
i("span",
|
|
1364
|
-
i("span",
|
|
1365
|
-
p(
|
|
1366
|
-
text:
|
|
1367
|
-
search:
|
|
1384
|
+
i("span", ha, [
|
|
1385
|
+
i("span", ba, [
|
|
1386
|
+
p(ze, {
|
|
1387
|
+
text: P.title,
|
|
1388
|
+
search: _.value ? T.value : ""
|
|
1368
1389
|
}, null, 8, ["text", "search"])
|
|
1369
1390
|
]),
|
|
1370
|
-
|
|
1391
|
+
P.meta ? (l(), m("span", {
|
|
1371
1392
|
key: 0,
|
|
1372
|
-
class:
|
|
1393
|
+
class: E(["truncate text-footnote text-content-muted", P.mono ? "font-mono tracking-tight" : ""])
|
|
1373
1394
|
}, [
|
|
1374
|
-
p(
|
|
1375
|
-
text:
|
|
1376
|
-
search:
|
|
1395
|
+
p(ze, {
|
|
1396
|
+
text: P.meta,
|
|
1397
|
+
search: _.value ? T.value : ""
|
|
1377
1398
|
}, null, 8, ["text", "search"])
|
|
1378
|
-
], 2)) :
|
|
1399
|
+
], 2)) : y("", !0)
|
|
1379
1400
|
]),
|
|
1380
|
-
|
|
1401
|
+
P.badge ? (l(), R(t(Ct), {
|
|
1381
1402
|
key: 0,
|
|
1382
|
-
tone:
|
|
1403
|
+
tone: P.badge.tone,
|
|
1383
1404
|
class: "hidden shrink-0 sm:inline-flex"
|
|
1384
1405
|
}, {
|
|
1385
|
-
default:
|
|
1386
|
-
ie(M(
|
|
1406
|
+
default: z(() => [
|
|
1407
|
+
ie(M(P.badge.label), 1)
|
|
1387
1408
|
]),
|
|
1388
1409
|
_: 2
|
|
1389
|
-
}, 1032, ["tone"])) :
|
|
1390
|
-
H.value.get(
|
|
1410
|
+
}, 1032, ["tone"])) : y("", !0),
|
|
1411
|
+
H.value.get(P) === C.value ? (l(), R(t(q), {
|
|
1391
1412
|
key: 1,
|
|
1392
1413
|
name: "arrowRightSLine",
|
|
1393
1414
|
size: 16,
|
|
1394
1415
|
class: "hidden shrink-0 text-content-muted md:inline"
|
|
1395
|
-
})) :
|
|
1396
|
-
], 42,
|
|
1416
|
+
})) : y("", !0)
|
|
1417
|
+
], 42, va))), 128))
|
|
1397
1418
|
], 64))), 128)),
|
|
1398
|
-
|
|
1399
|
-
me.value.length ? (
|
|
1400
|
-
!ee.value.length && !
|
|
1419
|
+
k.value ? (l(), m("p", ga, M(t(n)("core.shell.search.failed")), 1)) : y("", !0),
|
|
1420
|
+
me.value.length ? (l(), m("p", ya, M(t(n)("core.shell.search.unavailable", { groups: me.value.join(", ") })), 1)) : y("", !0),
|
|
1421
|
+
!ee.value.length && !_.value ? (l(), m("p", xa, M(_e(a.hint) ?? t(n)("core.shell.search.hint")), 1)) : y("", !0)
|
|
1401
1422
|
], 512),
|
|
1402
|
-
i("div",
|
|
1423
|
+
i("div", ka, [
|
|
1403
1424
|
i("span", null, [
|
|
1404
1425
|
A[4] || (A[4] = i("kbd", { class: "font-semibold" }, "↑ ↓", -1)),
|
|
1405
1426
|
ie(" " + M(t(n)("core.shell.search.select")), 1)
|
|
@@ -1409,54 +1430,54 @@ const aa = { class: "flex-1 truncate" }, oa = /* @__PURE__ */ O({
|
|
|
1409
1430
|
ie(" " + M(t(n)("core.shell.search.open_row")), 1)
|
|
1410
1431
|
]),
|
|
1411
1432
|
i("span", null, [
|
|
1412
|
-
i("kbd",
|
|
1433
|
+
i("kbd", _a, M(tt.value) + " ↵", 1),
|
|
1413
1434
|
ie(" " + M(t(n)("core.shell.search.new_tab")), 1)
|
|
1414
1435
|
])
|
|
1415
1436
|
])
|
|
1416
|
-
], 40,
|
|
1437
|
+
], 40, ia)) : y("", !0)
|
|
1417
1438
|
]),
|
|
1418
1439
|
_: 1
|
|
1419
1440
|
})
|
|
1420
1441
|
]));
|
|
1421
1442
|
}
|
|
1422
1443
|
});
|
|
1423
|
-
function
|
|
1424
|
-
return O({ name: "QuickSearch", setup: () => () => te(
|
|
1444
|
+
function $a(e) {
|
|
1445
|
+
return O({ name: "QuickSearch", setup: () => () => te(wa, e) });
|
|
1425
1446
|
}
|
|
1426
|
-
function
|
|
1447
|
+
function ho(e) {
|
|
1427
1448
|
return fe({
|
|
1428
1449
|
id: "vue-core.quick-search",
|
|
1429
1450
|
contributions: [
|
|
1430
|
-
{ id: "vue-core.quick-search.button", slot: "search", component:
|
|
1431
|
-
{ id: "vue-core.quick-search.palette", slot: "host", component:
|
|
1451
|
+
{ id: "vue-core.quick-search.button", slot: "search", component: ra, scope: "authenticated", optional: !0 },
|
|
1452
|
+
{ id: "vue-core.quick-search.palette", slot: "host", component: $a(e), scope: "authenticated" }
|
|
1432
1453
|
]
|
|
1433
1454
|
});
|
|
1434
1455
|
}
|
|
1435
|
-
const
|
|
1456
|
+
const Sa = /* @__PURE__ */ O({
|
|
1436
1457
|
__name: "DarkModeRow",
|
|
1437
1458
|
props: {
|
|
1438
1459
|
dark: { type: Boolean }
|
|
1439
1460
|
},
|
|
1440
1461
|
emits: ["toggle"],
|
|
1441
1462
|
setup(e, { emit: a }) {
|
|
1442
|
-
const n = e, o = a, { t:
|
|
1443
|
-
return (c, s) => (
|
|
1444
|
-
label: t(
|
|
1463
|
+
const n = e, o = a, { t: r } = K();
|
|
1464
|
+
return (c, s) => (l(), R($e, {
|
|
1465
|
+
label: t(r)("core.shell.dark_mode"),
|
|
1445
1466
|
icon: "moonLine",
|
|
1446
1467
|
checked: n.dark,
|
|
1447
1468
|
onClick: s[0] || (s[0] = (u) => o("toggle"))
|
|
1448
1469
|
}, null, 8, ["label", "checked"]));
|
|
1449
1470
|
}
|
|
1450
|
-
}),
|
|
1451
|
-
function
|
|
1471
|
+
}), La = { light: "#ffffff", dark: "#18181B" };
|
|
1472
|
+
function Ca(e, a = La) {
|
|
1452
1473
|
document.documentElement.classList.toggle("dark", e), document.querySelector('meta[name="theme-color"]')?.setAttribute("content", e ? a.dark : a.light);
|
|
1453
1474
|
}
|
|
1454
|
-
function
|
|
1475
|
+
function bo(e = {}) {
|
|
1455
1476
|
const a = O({
|
|
1456
1477
|
name: "DarkModeSwitch",
|
|
1457
1478
|
setup() {
|
|
1458
|
-
const n = Tt(), o = e.dark ?? (() => n.value.value.dark_mode === !0),
|
|
1459
|
-
return () => te(
|
|
1479
|
+
const n = Tt(), o = e.dark ?? (() => n.value.value.dark_mode === !0), r = e.set ?? ((c) => void n.save({ dark_mode: c }));
|
|
1480
|
+
return () => te(Sa, { dark: o(), onToggle: () => void r(!o()) });
|
|
1460
1481
|
}
|
|
1461
1482
|
});
|
|
1462
1483
|
return fe({
|
|
@@ -1468,33 +1489,33 @@ function po(e = {}) {
|
|
|
1468
1489
|
scope: "app",
|
|
1469
1490
|
start: ({ platform: n }) => {
|
|
1470
1491
|
const o = Mt(n).value;
|
|
1471
|
-
return Q(e.dark ?? (() => o.value.dark_mode === !0), (
|
|
1492
|
+
return Q(e.dark ?? (() => o.value.dark_mode === !0), (r) => Ca(r, e.themeColor), { immediate: !0 });
|
|
1472
1493
|
}
|
|
1473
1494
|
}]
|
|
1474
1495
|
});
|
|
1475
1496
|
}
|
|
1476
|
-
const
|
|
1497
|
+
const Ea = {
|
|
1477
1498
|
key: 0,
|
|
1478
1499
|
role: "status",
|
|
1479
1500
|
"data-test": "offline-notice",
|
|
1480
1501
|
class: "dock-safe-area pointer-events-auto order-first mb-3 px-3"
|
|
1481
|
-
},
|
|
1502
|
+
}, Ta = { class: "mx-auto flex max-w-md items-center justify-center gap-2 rounded-full bg-status-warning-surface px-4 py-2 text-subheadline font-semibold text-status-warning-content shadow-float" }, Ma = /* @__PURE__ */ O({
|
|
1482
1503
|
__name: "OfflineNotice",
|
|
1483
1504
|
setup(e) {
|
|
1484
|
-
const { t: a } = K(), n =
|
|
1505
|
+
const { t: a } = K(), n = N(navigator.onLine), o = () => n.value = navigator.onLine;
|
|
1485
1506
|
return window.addEventListener("online", o), window.addEventListener("offline", o), ue(() => {
|
|
1486
1507
|
window.removeEventListener("online", o), window.removeEventListener("offline", o);
|
|
1487
|
-
}), (
|
|
1488
|
-
default:
|
|
1508
|
+
}), (r, c) => (l(), R(t(At), null, {
|
|
1509
|
+
default: z(() => [
|
|
1489
1510
|
p(we, {
|
|
1490
1511
|
"enter-active-class": "transition duration-motion-normal ease-motion-standard",
|
|
1491
1512
|
"enter-from-class": "translate-y-2 opacity-0",
|
|
1492
1513
|
"leave-active-class": "transition duration-motion-fast ease-motion-standard",
|
|
1493
1514
|
"leave-to-class": "translate-y-2 opacity-0"
|
|
1494
1515
|
}, {
|
|
1495
|
-
default:
|
|
1496
|
-
n.value ?
|
|
1497
|
-
i("div",
|
|
1516
|
+
default: z(() => [
|
|
1517
|
+
n.value ? y("", !0) : (l(), m("div", Ea, [
|
|
1518
|
+
i("div", Ta, [
|
|
1498
1519
|
p(t(q), {
|
|
1499
1520
|
name: "errorWarningLine",
|
|
1500
1521
|
size: 16
|
|
@@ -1510,41 +1531,41 @@ const Sa = {
|
|
|
1510
1531
|
}));
|
|
1511
1532
|
}
|
|
1512
1533
|
});
|
|
1513
|
-
function
|
|
1534
|
+
function go() {
|
|
1514
1535
|
return fe({
|
|
1515
1536
|
id: "vue-core.offline-notice",
|
|
1516
|
-
contributions: [{ id: "vue-core.offline-notice", slot: "host", component:
|
|
1537
|
+
contributions: [{ id: "vue-core.offline-notice", slot: "host", component: Ma, scope: "always" }]
|
|
1517
1538
|
});
|
|
1518
1539
|
}
|
|
1519
1540
|
export {
|
|
1520
1541
|
Bt as AccountMenu,
|
|
1521
1542
|
$e as AccountMenuItem,
|
|
1522
1543
|
jt as AccountSheet,
|
|
1523
|
-
|
|
1524
|
-
|
|
1525
|
-
|
|
1526
|
-
|
|
1544
|
+
Hn as BackofficeShell,
|
|
1545
|
+
Sa as DarkModeRow,
|
|
1546
|
+
ko as HeaderAction,
|
|
1547
|
+
ln as NavigationDrawer,
|
|
1527
1548
|
He as NavigationList,
|
|
1528
|
-
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
|
|
1549
|
+
Mn as NavigationMenuButton,
|
|
1550
|
+
Ma as OfflineNotice,
|
|
1551
|
+
ra as QuickSearchButton,
|
|
1552
|
+
wa as QuickSearchPalette,
|
|
1532
1553
|
Te as ShellBrand,
|
|
1533
|
-
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
|
|
1539
|
-
|
|
1540
|
-
|
|
1541
|
-
|
|
1554
|
+
xn as ShellSidebar,
|
|
1555
|
+
En as ShellStage,
|
|
1556
|
+
jn as ShellTopBar,
|
|
1557
|
+
po as appUpdates,
|
|
1558
|
+
Ca as applyDarkMode,
|
|
1559
|
+
mo as backofficeShell,
|
|
1560
|
+
Qn as createNavigationProgress,
|
|
1561
|
+
bo as darkMode,
|
|
1562
|
+
Kn as defaultIdentity,
|
|
1542
1563
|
Vt as groupNavigation,
|
|
1543
|
-
|
|
1544
|
-
|
|
1545
|
-
|
|
1564
|
+
aa as installViewTransitions,
|
|
1565
|
+
go as offlineNotice,
|
|
1566
|
+
ho as quickSearch,
|
|
1546
1567
|
Je as useNavigationDrawer,
|
|
1547
1568
|
Ze as useQuickSearch,
|
|
1548
|
-
|
|
1549
|
-
|
|
1569
|
+
Vn as useShellIdentity,
|
|
1570
|
+
vo as viewTransitions
|
|
1550
1571
|
};
|