@wssto2/vue-core 0.9.3 → 0.10.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.
Files changed (162) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/dist/ActionRow.vue_vue_type_script_setup_true_lang-IpcP3Bjc.js +87 -0
  3. package/dist/Activity-CeAG0ZtJ.js +169 -0
  4. package/dist/{AdaptivePageShell.vue_vue_type_script_setup_true_lang-DdJOodn8.js → AdaptivePageShell.vue_vue_type_script_setup_true_lang-D5i77H6S.js} +147 -159
  5. package/dist/{AsyncSection.vue_vue_type_script_setup_true_lang-BdeOKqz_.js → AsyncSection.vue_vue_type_script_setup_true_lang-DGzQ-Snp.js} +1 -1
  6. package/dist/BottomDockPortal.vue_vue_type_script_setup_true_lang-DmwR-2SP.js +17 -0
  7. package/dist/Button.vue_vue_type_script_setup_true_lang-C74hcb0N.js +123 -0
  8. package/dist/Changes-B9-zpDxG.js +69 -0
  9. package/dist/{CollectionPage.vue_vue_type_script_setup_true_lang-DHcekGNn.js → CollectionPage.vue_vue_type_script_setup_true_lang-Cn0YOWJF.js} +19 -18
  10. package/dist/{DataTable.vue_vue_type_script_setup_true_lang-8kBsNRuq.js → DataTable.vue_vue_type_script_setup_true_lang-BQRG8bpH.js} +1 -1
  11. package/dist/{DateField.vue_vue_type_script_setup_true_lang-BhKdCVFn.js → DateField.vue_vue_type_script_setup_true_lang-CeNwBbJT.js} +1 -1
  12. package/dist/{DeadLetters-Bb5pPlOY.js → DeadLetters-BP03yC4R.js} +5 -6
  13. package/dist/DrawnCheck.vue_vue_type_script_setup_true_lang-9DzDJlIA.js +38 -0
  14. package/dist/FormGroup.vue_vue_type_script_setup_true_lang-D6jYfNjW.js +427 -0
  15. package/dist/{FormView.vue_vue_type_script_setup_true_lang-aaNnMIOi.js → FormView.vue_vue_type_script_setup_true_lang-DvbPEiNQ.js} +2 -2
  16. package/dist/{General-BAG7S6wV.js → General-BDmCJr3H.js} +35 -38
  17. package/dist/{IncidentRecord-D8aOpNHo.js → IncidentRecord-DEhl6AyA.js} +14 -15
  18. package/dist/{IncidentsList-C0cFl0Db.js → IncidentsList-COgRPdk3.js} +3 -3
  19. package/dist/{Modal.vue_vue_type_script_setup_true_lang-BlHhdmMy.js → Modal.vue_vue_type_script_setup_true_lang-DDS0iEnn.js} +9 -8
  20. package/dist/{NewRolePage-C6Iu-EQJ.js → NewRolePage-DhGFwvk3.js} +4 -4
  21. package/dist/{NumberField.vue_vue_type_script_setup_true_lang-TGGAq8J-.js → NumberField.vue_vue_type_script_setup_true_lang-B3UrXNqH.js} +1 -1
  22. package/dist/{PersonAccess.vue_vue_type_script_setup_true_lang-qz1tmYpF.js → PersonAccess.vue_vue_type_script_setup_true_lang-DbGZSNQc.js} +56 -56
  23. package/dist/ProfilePage-BQCK2w8R.js +684 -0
  24. package/dist/ProgressTrack.vue_vue_type_script_setup_true_lang-DrOm8k--.js +30 -0
  25. package/dist/{RecordHeader.vue_vue_type_script_setup_true_lang-B9mN7UxZ.js → RecordHeader.vue_vue_type_script_setup_true_lang-DqGc3Jyo.js} +1 -1
  26. package/dist/{ResourcePage.vue_vue_type_script_setup_true_lang-Cw8mGf_B.js → ResourcePage.vue_vue_type_script_setup_true_lang-DljhsTU4.js} +3 -3
  27. package/dist/{RoleEditor.vue_vue_type_script_setup_true_lang-CJPvOVDV.js → RoleEditor.vue_vue_type_script_setup_true_lang-C0FIotFA.js} +11 -12
  28. package/dist/{RolePage-Dj_ocMnM.js → RolePage-DaNv049g.js} +10 -10
  29. package/dist/{RolesPage-PXrs4O-1.js → RolesPage-6hlzJes_.js} +6 -6
  30. package/dist/SearchInput.vue_vue_type_script_setup_true_lang-w4eAqyZ9.js +32 -0
  31. package/dist/{SectionList.vue_vue_type_script_setup_true_lang-CtdF1zuv.js → SectionList.vue_vue_type_script_setup_true_lang-DR0_NsqC.js} +1 -1
  32. package/dist/{SectionNavigator.vue_vue_type_script_setup_true_lang-B5ove3rM.js → SectionNavigator.vue_vue_type_script_setup_true_lang-Dh3sXUt_.js} +2 -2
  33. package/dist/{SegmentedField.vue_vue_type_script_setup_true_lang-ChfDFAA2.js → SegmentedField.vue_vue_type_script_setup_true_lang-zv_AxpBn.js} +1 -1
  34. package/dist/{SelectField.vue_vue_type_script_setup_true_lang-BP8nAQwo.js → SelectField.vue_vue_type_script_setup_true_lang-BZwdANL3.js} +3 -3
  35. package/dist/{ServiceAccountDialog.vue_vue_type_script_setup_true_lang-aWkKwxNe.js → ServiceAccountDialog.vue_vue_type_script_setup_true_lang-C0OIBrSp.js} +20 -20
  36. package/dist/{ServiceAccountRecord-bxX9yQkC.js → ServiceAccountRecord-gtlhYaAz.js} +37 -37
  37. package/dist/{ServiceAccountsList-BXE6htxk.js → ServiceAccountsList-BM7GGcvw.js} +33 -33
  38. package/dist/{Sessions--Gvc0kxw.js → Sessions-BCDJYuV2.js} +23 -24
  39. package/dist/{SettingsPage-DzDC7gD-.js → SettingsPage-DUhMsYBf.js} +27 -30
  40. package/dist/{SignIn-CTI_699e.js → SignIn-4D7WohI8.js} +9 -10
  41. package/dist/{SignInPage-HKC1bm2E.js → SignInPage-B6B-34GG.js} +4 -4
  42. package/dist/SignIns-CFoe4hpX.js +64 -0
  43. package/dist/StatusLine.vue_vue_type_script_setup_true_lang-DsdQmLq6.js +56 -0
  44. package/dist/{SwitchField.vue_vue_type_script_setup_true_lang-BMA2YXTZ.js → SwitchField.vue_vue_type_script_setup_true_lang-Ds4q0bbl.js} +1 -1
  45. package/dist/{TextField.vue_vue_type_script_setup_true_lang-BFVsqcBX.js → TextField.vue_vue_type_script_setup_true_lang-CWIeeZRE.js} +2 -2
  46. package/dist/{TextareaField.vue_vue_type_script_setup_true_lang-Dyh4Hhyl.js → TextareaField.vue_vue_type_script_setup_true_lang-D2j4s96s.js} +1 -1
  47. package/dist/{TimeField.vue_vue_type_script_setup_true_lang-gGFfQLuK.js → TimeField.vue_vue_type_script_setup_true_lang-D-Em4glH.js} +1 -1
  48. package/dist/UserRecord-Cd1TCpJZ.js +202 -0
  49. package/dist/UsersList-GJU5-CTG.js +74 -0
  50. package/dist/access/index.js +4 -4
  51. package/dist/app/index.js +1 -1
  52. package/dist/{application-BmXW6iW_.js → application-CuzT-0vW.js} +1 -1
  53. package/dist/button/index.js +6 -5
  54. package/dist/collection/PickerModal.vue.d.ts +26 -0
  55. package/dist/collection/definition.d.ts +6 -6
  56. package/dist/collection/http.d.ts +6 -6
  57. package/dist/collection/index.d.ts +5 -1
  58. package/dist/collection/index.js +144 -85
  59. package/dist/collection/picker.d.ts +39 -0
  60. package/dist/collection/types.d.ts +9 -4
  61. package/dist/collection/useCollection.d.ts +5 -5
  62. package/dist/content/ActivityStream.vue.d.ts +62 -0
  63. package/dist/content/CommentThread.vue.d.ts +52 -0
  64. package/dist/content/Composer.vue.d.ts +36 -0
  65. package/dist/content/index.d.ts +3 -0
  66. package/dist/content/index.js +321 -56
  67. package/dist/controls/index.js +28 -54
  68. package/dist/form/index.d.ts +2 -0
  69. package/dist/form/index.js +611 -595
  70. package/dist/form/storableText.d.ts +24 -0
  71. package/dist/format/index.d.ts +1 -0
  72. package/dist/format/index.js +10 -6
  73. package/dist/format/slug.d.ts +8 -0
  74. package/dist/highlight-DnYhLXnu.js +9 -0
  75. package/dist/http-Dm0uXY9O.js +95 -0
  76. package/dist/i18n/index.d.ts +14 -0
  77. package/dist/i18n/index.js +87 -63
  78. package/dist/i18n/plural.d.ts +23 -0
  79. package/dist/identity/embed.d.ts +39 -0
  80. package/dist/identity/index.d.ts +20 -0
  81. package/dist/identity/index.js +40 -21
  82. package/dist/identity/session.d.ts +9 -1
  83. package/dist/identity/shared/ChangeFeed.vue.d.ts +6 -3
  84. package/dist/identity/users/context.d.ts +8 -0
  85. package/dist/identity/users/dialogs.d.ts +10 -0
  86. package/dist/identity/users/ext.d.ts +8 -0
  87. package/dist/identity/users/feature.d.ts +10 -0
  88. package/dist/identity/users/list.d.ts +1 -1
  89. package/dist/identity/users/personSections.d.ts +1 -1
  90. package/dist/identity/users/replace.d.ts +45 -0
  91. package/dist/identity/users/words.d.ts +28 -0
  92. package/dist/incidents/api.d.ts +1 -1
  93. package/dist/incidents/index.js +1 -1
  94. package/dist/{index-Dz0LkLM8.js → index-CTkG-acm.js} +4 -4
  95. package/dist/{index-Dm-sdJJr.js → index-DUs7WSz-.js} +31 -32
  96. package/dist/index-pJ_eRg80.js +1257 -0
  97. package/dist/index.d.ts +1 -1
  98. package/dist/index.js +1 -1
  99. package/dist/modal/index.js +3 -3
  100. package/dist/modules/identity/entities.d.ts +7 -0
  101. package/dist/modules/identity/routes.d.ts +8 -4
  102. package/dist/modules/identity/schemas.d.ts +16 -0
  103. package/dist/{neighbors-DVfU9T0o.js → neighbors-OyvGi233.js} +2 -2
  104. package/dist/notifications/deadletters/list.d.ts +1 -1
  105. package/dist/notifications/index.js +1 -1
  106. package/dist/{options-QuOkMKVZ.js → options-B48UiYsG.js} +2 -2
  107. package/dist/page/index.js +11 -11
  108. package/dist/phone/index.js +1 -1
  109. package/dist/pwa/AndroidInstallBanner.vue.d.ts +18 -0
  110. package/dist/pwa/InstallQrSheet.vue.d.ts +21 -0
  111. package/dist/pwa/IosInstallGuide.vue.d.ts +19 -0
  112. package/dist/pwa/QrCode.vue.d.ts +16 -0
  113. package/dist/pwa/index.d.ts +4 -0
  114. package/dist/pwa/index.js +244 -24
  115. package/dist/resource/index.js +1 -1
  116. package/dist/{rowLayout-CT8vWYgI.js → rowLayout-Il4psyXN.js} +183 -188
  117. package/dist/shell/DarkModeRow.vue.d.ts +15 -0
  118. package/dist/shell/OfflineNotice.vue.d.ts +2 -0
  119. package/dist/shell/QuickSearchButton.vue.d.ts +2 -0
  120. package/dist/shell/QuickSearchPalette.vue.d.ts +12 -0
  121. package/dist/shell/darkMode.d.ts +26 -0
  122. package/dist/shell/index.d.ts +10 -0
  123. package/dist/shell/index.js +963 -580
  124. package/dist/shell/offlineNotice.d.ts +3 -0
  125. package/dist/shell/quickSearch.d.ts +14 -0
  126. package/dist/shell/quickSearchControl.d.ts +66 -0
  127. package/dist/shortcut-DUR6yPWA.js +93 -0
  128. package/dist/state/BackgroundTaskCapsule.vue.d.ts +18 -0
  129. package/dist/state/backgroundTasks.d.ts +58 -0
  130. package/dist/state/index.d.ts +4 -0
  131. package/dist/state/index.js +194 -80
  132. package/dist/state/useCountUp.d.ts +9 -0
  133. package/dist/styles.css +1 -1
  134. package/dist/{suggestions-BVQhoXzS.js → suggestions-q_v3M7G6.js} +1 -1
  135. package/dist/testing/collection.d.ts +1 -1
  136. package/dist/{useCommand-Dc8Lgs9h.js → useCommand-Ch_nx1AQ.js} +4 -4
  137. package/dist/{useGroupSheet-DQ6cVG-z.js → useGroupSheet-CPjHydQV.js} +14 -15
  138. package/dist/{useRecordDialog-BTsbHY38.js → useRecordDialog-DdkauXnU.js} +1 -1
  139. package/dist/{useResourceForm-DJ4Q75pq.js → useResourceForm-Dl6YFYyz.js} +1 -1
  140. package/package.json +3 -2
  141. package/dist/ActionRow.vue_vue_type_script_setup_true_lang-Cg1lhpcA.js +0 -45
  142. package/dist/Activity-29hsZ28j.js +0 -156
  143. package/dist/Button.vue_vue_type_script_setup_true_lang-Dp7OB-eF.js +0 -192
  144. package/dist/Changes-Dxjdkd_5.js +0 -129
  145. package/dist/FormErrors.vue_vue_type_script_setup_true_lang-CIggKPtq.js +0 -295
  146. package/dist/FormGroup.vue_vue_type_script_setup_true_lang-B37dixvJ.js +0 -137
  147. package/dist/PageBar.vue_vue_type_script_setup_true_lang-qI94fjJv.js +0 -47
  148. package/dist/ProfilePage-BnohZIEg.js +0 -764
  149. package/dist/ProgressTrack.vue_vue_type_script_setup_true_lang-B6Prw9hi.js +0 -64
  150. package/dist/SectionIntro.vue_vue_type_script_setup_true_lang-CZtPrmXD.js +0 -23
  151. package/dist/SessionList.vue_vue_type_script_setup_true_lang-Cnyt5V8T.js +0 -133
  152. package/dist/SignIns-BcqBgWgN.js +0 -121
  153. package/dist/UserRecord-CtUPpbCt.js +0 -267
  154. package/dist/UsersList-BMkIgIg8.js +0 -155
  155. package/dist/definition-C7QuyV3i.js +0 -54
  156. package/dist/fieldMessages-B6GHgi40.js +0 -25
  157. package/dist/http-nz92KjdS.js +0 -42
  158. package/dist/index-CdtofdcJ.js +0 -501
  159. package/dist/languages-BShG9LpE.js +0 -10
  160. package/dist/signInEvents-DWShrJox.js +0 -30
  161. package/dist/status-BRA14qwX.js +0 -34
  162. package/dist/useWaitStatus-fsacMl4W.js +0 -24
@@ -1,60 +1,58 @@
1
- import { _ as He, c as et, f as tt } from "../FormErrors.vue_vue_type_script_setup_true_lang-CIggKPtq.js";
2
- import { E as $o, u as _o, a as Co } from "../FormErrors.vue_vue_type_script_setup_true_lang-CIggKPtq.js";
3
- import { f as Te } from "../useCommand-Dc8Lgs9h.js";
4
- import { _ as Bo, a as Fo, u as Lo } from "../useCommand-Dc8Lgs9h.js";
5
- import { ref as A, computed as h, defineComponent as G, openBlock as u, createBlock as D, mergeProps as W, unref as l, createSlots as J, withCtx as f, createElementVNode as y, normalizeClass as I, createElementBlock as g, Fragment as ie, renderList as xe, createVNode as j, createCommentVNode as L, toDisplayString as _, renderSlot as B, mergeDefaults as ue, useModel as re, useId as qe, withKeys as Ce, withModifiers as pe, createTextVNode as H, mergeModels as le, useTemplateRef as U, shallowRef as Oe, watch as ye, normalizeProps as ze, guardReactiveProps as Ve, nextTick as he, provide as at, inject as Ue, onBeforeUnmount as Ye, getCurrentScope as lt, onScopeDispose as ot, toValue as nt, shallowReactive as Ee, normalizeStyle as st, resolveDynamicComponent as rt } from "vue";
6
- import { a as We } from "../leaveGuard-Cc8yeLxM.js";
7
- import { M as zo, c as Vo, i as qo, l as Do, u as Ro } from "../leaveGuard-Cc8yeLxM.js";
8
- import { _ as jo } from "../LeaveGuardRoot.vue_vue_type_script_setup_true_lang-CIwW7y4j.js";
9
- import { u as Oo } from "../useResourceForm-DJ4Q75pq.js";
1
+ import { a as tt, _ as Ue, c as at, f as lt } from "../FormGroup.vue_vue_type_script_setup_true_lang-D6jYfNjW.js";
2
+ import { E as Fo, b as Bo, d as Lo, p as To, r as zo, u as Vo, e as qo, g as Do } from "../FormGroup.vue_vue_type_script_setup_true_lang-D6jYfNjW.js";
3
+ import { f as Te } from "../useCommand-Ch_nx1AQ.js";
4
+ import { _ as Mo, a as jo, u as Io } from "../useCommand-Ch_nx1AQ.js";
5
+ import { ref as P, computed as h, defineComponent as A, openBlock as u, createBlock as D, mergeProps as W, unref as l, createSlots as J, withCtx as f, createElementVNode as y, normalizeClass as I, createElementBlock as g, Fragment as ie, renderList as xe, createVNode as j, createCommentVNode as L, toDisplayString as _, renderSlot as F, mergeDefaults as ue, useModel as re, useId as De, withKeys as Ce, withModifiers as pe, createTextVNode as H, mergeModels as le, useTemplateRef as U, shallowRef as Ee, watch as ye, normalizeProps as ze, guardReactiveProps as Ve, nextTick as he, provide as ot, inject as Ye, onBeforeUnmount as We, getCurrentScope as nt, onScopeDispose as st, toValue as rt, shallowReactive as Ne, normalizeStyle as it, resolveDynamicComponent as ut } from "vue";
6
+ import { a as Je } from "../leaveGuard-Cc8yeLxM.js";
7
+ import { M as Eo, c as No, i as Ao, l as Go, u as Ko } from "../leaveGuard-Cc8yeLxM.js";
8
+ import { _ as Ho } from "../LeaveGuardRoot.vue_vue_type_script_setup_true_lang-CIwW7y4j.js";
9
+ import { u as Yo } from "../useResourceForm-Dl6YFYyz.js";
10
10
  import { _ as Z } from "../Icon.vue_vue_type_script_lang-BhhsFYwp.js";
11
- import { u as Je, _ as ge, f as de, b as ce, a as Ze, e as De, g as it, j as ut, k as dt } from "../options-QuOkMKVZ.js";
12
- import { d as No, i as Go, m as Ko } from "../options-QuOkMKVZ.js";
11
+ import { u as Ze, _ as ge, f as de, b as ce, a as Xe, e as Re, g as dt, j as ct, k as ft } from "../options-B48UiYsG.js";
12
+ import { d as Jo, h as Zo, m as Xo } from "../options-B48UiYsG.js";
13
13
  import { useI18n as oe } from "vue-i18n";
14
- import { b as ct } from "../controlSurface-t7OEFESJ.js";
15
- import { a as ft } from "../TextField.vue_vue_type_script_setup_true_lang-BFVsqcBX.js";
16
- import { _ as Ao } from "../TextField.vue_vue_type_script_setup_true_lang-BFVsqcBX.js";
17
- import { u as mt, l as vt } from "../suggestions-BVQhoXzS.js";
18
- import { r as Uo } from "../suggestions-BVQhoXzS.js";
19
- import { s as $e, u as Ne, i as pt, o as _e, e as Se, k as bt, _ as yt, l as gt, c as ht, b as kt, t as Le, g as xt, q as wt } from "../useTypedEntry-C_Bk4sI0.js";
20
- import { u as $t, a as _t, s as Ct } from "../DateField.vue_vue_type_script_setup_true_lang-BhKdCVFn.js";
21
- import { _ as Wo } from "../DateField.vue_vue_type_script_setup_true_lang-BhKdCVFn.js";
22
- import { _ as Xe } from "../DateButton.vue_vue_type_script_setup_true_lang-CovKG5lN.js";
23
- import { u as St } from "../format-D8KUBmbS.js";
24
- import { u as Re } from "../mediaQuery-CygcXmFW.js";
25
- import { _ as Me } from "../Popover.vue_vue_type_script_setup_true_lang-C20Hf3Hl.js";
26
- import { u as Bt } from "../TimeField.vue_vue_type_script_setup_true_lang-gGFfQLuK.js";
27
- import { _ as Zo } from "../TimeField.vue_vue_type_script_setup_true_lang-gGFfQLuK.js";
28
- import { _ as be } from "../Button.vue_vue_type_script_setup_true_lang-Dp7OB-eF.js";
29
- import { _ as Ft } from "../FormGroup.vue_vue_type_script_setup_true_lang-B37dixvJ.js";
30
- import { a as Qo, c as en, p as tn, r as an, u as ln } from "../FormGroup.vue_vue_type_script_setup_true_lang-B37dixvJ.js";
31
- import { _ as nn } from "../FormView.vue_vue_type_script_setup_true_lang-aaNnMIOi.js";
32
- import { i as Lt } from "../intlLocale-CeRU44qJ.js";
33
- import { a as Tt } from "../environment-Dva-SG8D.js";
34
- import { _ as zt } from "../NumberField.vue_vue_type_script_setup_true_lang-TGGAq8J-.js";
35
- import { _ as Vt } from "../Sheet.vue_vue_type_script_setup_true_lang-B91aRD_y.js";
36
- import { b as qt, a as Ge } from "../SelectField.vue_vue_type_script_setup_true_lang-BP8nAQwo.js";
37
- import { _ as rn, u as un } from "../SelectField.vue_vue_type_script_setup_true_lang-BP8nAQwo.js";
38
- import { _ as cn, b as fn, a as mn, u as vn } from "../useGroupSheet-DQ6cVG-z.js";
14
+ import { b as mt } from "../controlSurface-t7OEFESJ.js";
15
+ import { a as vt } from "../TextField.vue_vue_type_script_setup_true_lang-CWIeeZRE.js";
16
+ import { _ as en } from "../TextField.vue_vue_type_script_setup_true_lang-CWIeeZRE.js";
17
+ import { u as pt, l as bt } from "../suggestions-q_v3M7G6.js";
18
+ import { r as an } from "../suggestions-q_v3M7G6.js";
19
+ import { s as $e, u as Ae, i as yt, o as _e, e as Se, k as gt, _ as ht, l as kt, c as xt, b as wt, t as Le, g as $t, q as _t } from "../useTypedEntry-C_Bk4sI0.js";
20
+ import { u as Ct, a as St, s as Ft } from "../DateField.vue_vue_type_script_setup_true_lang-CeNwBbJT.js";
21
+ import { _ as on } from "../DateField.vue_vue_type_script_setup_true_lang-CeNwBbJT.js";
22
+ import { _ as Qe } from "../DateButton.vue_vue_type_script_setup_true_lang-CovKG5lN.js";
23
+ import { u as Bt } from "../format-D8KUBmbS.js";
24
+ import { u as Me } from "../mediaQuery-CygcXmFW.js";
25
+ import { _ as je } from "../Popover.vue_vue_type_script_setup_true_lang-C20Hf3Hl.js";
26
+ import { u as Lt } from "../TimeField.vue_vue_type_script_setup_true_lang-D-Em4glH.js";
27
+ import { _ as sn } from "../TimeField.vue_vue_type_script_setup_true_lang-D-Em4glH.js";
28
+ import { _ as be } from "../Button.vue_vue_type_script_setup_true_lang-C74hcb0N.js";
29
+ import { _ as un } from "../FormView.vue_vue_type_script_setup_true_lang-DvbPEiNQ.js";
30
+ import { i as Tt } from "../intlLocale-CeRU44qJ.js";
31
+ import { a as zt } from "../environment-Dva-SG8D.js";
32
+ import { _ as Vt } from "../NumberField.vue_vue_type_script_setup_true_lang-B3UrXNqH.js";
33
+ import { _ as qt } from "../Sheet.vue_vue_type_script_setup_true_lang-B91aRD_y.js";
34
+ import { b as Dt, a as Ge } from "../SelectField.vue_vue_type_script_setup_true_lang-BZwdANL3.js";
35
+ import { _ as cn, u as fn } from "../SelectField.vue_vue_type_script_setup_true_lang-BZwdANL3.js";
36
+ import { _ as vn, b as pn, a as bn, u as yn } from "../useGroupSheet-CPjHydQV.js";
39
37
  import { _ as Ke } from "../PhotoViewer.vue_vue_type_script_setup_true_lang-Bqxj_uJ5.js";
40
- import { _ as bn } from "../SegmentedField.vue_vue_type_script_setup_true_lang-ChfDFAA2.js";
41
- import { _ as gn } from "../SwitchField.vue_vue_type_script_setup_true_lang-BMA2YXTZ.js";
42
- import { _ as kn } from "../TextareaField.vue_vue_type_script_setup_true_lang-Dyh4Hhyl.js";
43
- import { a as Dt } from "../AdaptivePageShell.vue_vue_type_script_setup_true_lang-DdJOodn8.js";
44
- import { _ as Rt, a as Mt } from "../SectionList.vue_vue_type_script_setup_true_lang-CtdF1zuv.js";
45
- import { p as jt } from "../sectionIndex-BS0ic5W7.js";
46
- import { u as It } from "../useSaveChrome-7huA3FzR.js";
47
- import { u as wn } from "../useRecordDialog-BTsbHY38.js";
48
- import { matchedRouteKey as Ot, onBeforeRouteLeave as Et } from "vue-router";
49
- function Nt(r) {
50
- const a = A(null);
38
+ import { _ as hn } from "../SegmentedField.vue_vue_type_script_setup_true_lang-zv_AxpBn.js";
39
+ import { _ as xn } from "../SwitchField.vue_vue_type_script_setup_true_lang-Ds4q0bbl.js";
40
+ import { _ as $n } from "../TextareaField.vue_vue_type_script_setup_true_lang-D2j4s96s.js";
41
+ import { _ as Rt } from "../AdaptivePageShell.vue_vue_type_script_setup_true_lang-D5i77H6S.js";
42
+ import { _ as Mt, a as jt } from "../SectionList.vue_vue_type_script_setup_true_lang-DR0_NsqC.js";
43
+ import { p as It } from "../sectionIndex-BS0ic5W7.js";
44
+ import { u as Ot } from "../useSaveChrome-7huA3FzR.js";
45
+ import { u as Cn } from "../useRecordDialog-DdkauXnU.js";
46
+ import { matchedRouteKey as Et, onBeforeRouteLeave as Nt } from "vue-router";
47
+ function At(o) {
48
+ const a = P(null);
51
49
  return {
52
- isDirty: h(() => a.value !== null && JSON.stringify(r()) !== a.value),
53
- markClean: () => a.value = JSON.stringify(r())
50
+ isDirty: h(() => a.value !== null && JSON.stringify(o()) !== a.value),
51
+ markClean: () => a.value = JSON.stringify(o())
54
52
  };
55
53
  }
56
- function ao(r) {
57
- const a = A(!1), e = Nt(r), { confirmDiscard: t } = We(() => a.value && e.isDirty.value);
54
+ function no(o) {
55
+ const a = P(!1), e = At(o), { confirmDiscard: t } = Je(() => a.value && e.isDirty.value);
58
56
  return {
59
57
  /** The sheet was just filled: its current values are the baseline. */
60
58
  opened: () => {
@@ -67,14 +65,14 @@ function ao(r) {
67
65
  beforeDismiss: t
68
66
  };
69
67
  }
70
- const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name", "value", "checked", "disabled", "onChange"], Pt = { class: "min-w-0 flex-1" }, At = { class: "block text-body font-semibold text-content-strong" }, Ht = {
68
+ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name", "value", "checked", "disabled", "onChange"], Pt = { class: "min-w-0 flex-1" }, Ht = { class: "block text-body font-semibold text-content-strong" }, Ut = {
71
69
  key: 0,
72
70
  class: "mt-0.5 block text-footnote text-content-muted"
73
- }, Ut = {
71
+ }, Yt = {
74
72
  key: 1,
75
73
  class: "flex size-5 shrink-0 items-center justify-center rounded-full bg-control-on text-white",
76
74
  "aria-hidden": "true"
77
- }, lo = /* @__PURE__ */ G({
75
+ }, so = /* @__PURE__ */ A({
78
76
  __name: "CardSelectField",
79
77
  props: /* @__PURE__ */ ue({
80
78
  label: {},
@@ -92,8 +90,8 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
92
90
  columns: {}
93
91
  }, { ...ce, modelValue: null, columns: 2 }),
94
92
  emits: ["update:modelValue"],
95
- setup(r, { emit: a }) {
96
- const e = r, t = a, { editable: n } = Je(e), o = { 1: "grid-cols-1", 2: "grid-cols-2", 3: "grid-cols-3", 4: "grid-cols-4" }, c = h(() => o[e.columns]);
93
+ setup(o, { emit: a }) {
94
+ const e = o, t = a, { editable: s } = Ze(e), n = { 1: "grid-cols-1", 2: "grid-cols-2", 3: "grid-cols-3", 4: "grid-cols-4" }, c = h(() => n[e.columns]);
97
95
  return (i, p) => (u(), D(ge, W(l(de)(e), {
98
96
  value: e.options.find((k) => k.value === e.modelValue)?.label ?? null,
99
97
  "row-layout": "stacked"
@@ -108,33 +106,33 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
108
106
  class: I(["grid w-full gap-2.5", c.value]),
109
107
  "data-test": "card-select"
110
108
  }, [
111
- (u(!0), g(ie, null, xe(e.options, (s) => (u(), g("label", {
112
- key: s.value,
113
- class: I(["relative flex items-center gap-3 rounded-group bg-fill p-3.5 transition-colors duration-motion-fast focus-within:outline-2 focus-within:outline-offset-2 focus-within:outline-border-focus", [s.value === e.modelValue ? "bg-tint-soft ring-[1.5px] ring-inset ring-border-selected" : "hover:bg-fill-strong", e.disabled || !l(n) || s.disabled ? "cursor-not-allowed opacity-60" : "cursor-pointer"]])
109
+ (u(!0), g(ie, null, xe(e.options, (r) => (u(), g("label", {
110
+ key: r.value,
111
+ class: I(["relative flex items-center gap-3 rounded-group bg-fill p-3.5 transition-colors duration-motion-fast focus-within:outline-2 focus-within:outline-offset-2 focus-within:outline-border-focus", [r.value === e.modelValue ? "bg-tint-soft ring-[1.5px] ring-inset ring-border-selected" : "hover:bg-fill-strong", e.disabled || !l(s) || r.disabled ? "cursor-not-allowed opacity-60" : "cursor-pointer"]])
114
112
  }, [
115
113
  y("input", {
116
114
  type: "radio",
117
115
  class: "sr-only",
118
116
  name: e.name ?? k,
119
- value: s.value,
120
- checked: s.value === e.modelValue,
121
- disabled: e.disabled || !l(n) || s.disabled,
122
- onChange: (m) => t("update:modelValue", s.value)
117
+ value: r.value,
118
+ checked: r.value === e.modelValue,
119
+ disabled: e.disabled || !l(s) || r.disabled,
120
+ onChange: (m) => t("update:modelValue", r.value)
123
121
  }, null, 40, Kt),
124
- s.icon ? (u(), g("span", {
122
+ r.icon ? (u(), g("span", {
125
123
  key: 0,
126
- class: I(["flex size-9 shrink-0 items-center justify-center rounded-control", s.value === e.modelValue ? "bg-control-on text-white" : "bg-fill-strong text-content-muted"])
124
+ class: I(["flex size-9 shrink-0 items-center justify-center rounded-control", r.value === e.modelValue ? "bg-control-on text-white" : "bg-fill-strong text-content-muted"])
127
125
  }, [
128
126
  j(l(Z), {
129
- name: s.icon,
127
+ name: r.icon,
130
128
  size: 18
131
129
  }, null, 8, ["name"])
132
130
  ], 2)) : L("", !0),
133
131
  y("span", Pt, [
134
- y("span", At, _(s.label), 1),
135
- s.description ? (u(), g("span", Ht, _(s.description), 1)) : L("", !0)
132
+ y("span", Ht, _(r.label), 1),
133
+ r.description ? (u(), g("span", Ut, _(r.description), 1)) : L("", !0)
136
134
  ]),
137
- s.value === e.modelValue ? (u(), g("span", Ut, [
135
+ r.value === e.modelValue ? (u(), g("span", Yt, [
138
136
  j(l(Z), {
139
137
  name: "checkCustom",
140
138
  size: 12
@@ -148,30 +146,30 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
148
146
  i.$slots.trailing ? {
149
147
  name: "trailing",
150
148
  fn: f(() => [
151
- B(i.$slots, "trailing")
149
+ F(i.$slots, "trailing")
152
150
  ]),
153
151
  key: "0"
154
152
  } : void 0,
155
153
  i.$slots.labelTrailing ? {
156
154
  name: "labelTrailing",
157
155
  fn: f(() => [
158
- B(i.$slots, "labelTrailing")
156
+ F(i.$slots, "labelTrailing")
159
157
  ]),
160
158
  key: "1"
161
159
  } : void 0,
162
160
  i.$slots.readonly ? {
163
161
  name: "readonly",
164
162
  fn: f(() => [
165
- B(i.$slots, "readonly")
163
+ F(i.$slots, "readonly")
166
164
  ]),
167
165
  key: "2"
168
166
  } : void 0
169
167
  ]), 1040, ["value"]));
170
168
  }
171
- }), Yt = ["data-field-error"], Wt = ["aria-checked", "aria-disabled", "aria-describedby", "aria-invalid", "tabindex", "onKeydown"], Jt = { class: "flex min-w-0 flex-1 flex-col items-start" }, Zt = {
169
+ }), Wt = ["data-field-error"], Jt = ["aria-checked", "aria-disabled", "aria-describedby", "aria-invalid", "tabindex", "onKeydown"], Zt = { class: "flex min-w-0 flex-1 flex-col items-start" }, Xt = {
172
170
  key: 0,
173
171
  class: "flex shrink-0 items-center gap-2.5"
174
- }, Xt = ["id"], oo = /* @__PURE__ */ G({
172
+ }, Qt = ["id"], ro = /* @__PURE__ */ A({
175
173
  __name: "CheckboxField",
176
174
  props: /* @__PURE__ */ le({
177
175
  label: {},
@@ -184,8 +182,8 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
184
182
  modelModifiers: {}
185
183
  }),
186
184
  emits: ["update:modelValue"],
187
- setup(r) {
188
- const a = r, e = re(r, "modelValue"), t = !!Ze(), n = qe(), o = () => {
185
+ setup(o) {
186
+ const a = o, e = re(o, "modelValue"), t = !!Xe(), s = De(), n = () => {
189
187
  a.disabled || (e.value = !e.value);
190
188
  };
191
189
  return (c, i) => (u(), g("div", {
@@ -195,15 +193,15 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
195
193
  role: "checkbox",
196
194
  "aria-checked": e.value,
197
195
  "aria-disabled": a.disabled || void 0,
198
- "aria-describedby": a.error ? `${l(n)}-error` : void 0,
196
+ "aria-describedby": a.error ? `${l(s)}-error` : void 0,
199
197
  "aria-invalid": a.error ? !0 : void 0,
200
198
  tabindex: a.disabled ? -1 : 0,
201
199
  "data-test": "checkbox",
202
200
  class: I(["group/check flex items-center transition-colors duration-motion-fast focus-visible:outline-2 focus-visible:outline-border-focus", [a.variant === "row" ? "gap-3 pl-row-inset focus-visible:-outline-offset-2" : "gap-2.5 rounded-control px-2 py-1.5 focus-visible:outline-offset-1", t && a.variant === "row" ? "first:rounded-t-group last:rounded-b-group" : "", a.disabled ? "cursor-not-allowed" : a.variant === "row" ? "cursor-pointer hover:bg-fill/60 active:bg-fill" : "cursor-pointer hover:bg-fill"]]),
203
- onClick: o,
201
+ onClick: n,
204
202
  onKeydown: [
205
- Ce(pe(o, ["prevent"]), ["space"]),
206
- Ce(pe(o, ["prevent"]), ["enter"])
203
+ Ce(pe(n, ["prevent"]), ["space"]),
204
+ Ce(pe(n, ["prevent"]), ["enter"])
207
205
  ]
208
206
  }, [
209
207
  y("span", {
@@ -219,7 +217,7 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
219
217
  y("div", {
220
218
  class: I(["flex min-w-0 flex-1 items-center gap-3", a.variant === "row" ? "min-h-row border-t border-border-separator py-2 pr-row-inset group-first/check:border-t-0" : ""])
221
219
  }, [
222
- y("div", Jt, [
220
+ y("div", Zt, [
223
221
  y("p", {
224
222
  class: I(["w-full text-body", [a.variant === "row" ? "break-words" : "truncate", a.disabled ? "text-content-muted" : e.value ? "text-content-strong" : "text-content"]])
225
223
  }, _(a.label), 3),
@@ -227,16 +225,16 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
227
225
  key: 0,
228
226
  class: I(["tabular-nums text-content-muted", a.variant === "row" ? "text-footnote" : "text-xs"])
229
227
  }, _(a.description), 3)) : L("", !0),
230
- B(c.$slots, "default")
228
+ F(c.$slots, "default")
231
229
  ]),
232
- c.$slots.trailing ? (u(), g("div", Zt, [
233
- B(c.$slots, "trailing")
230
+ c.$slots.trailing ? (u(), g("div", Xt, [
231
+ F(c.$slots, "trailing")
234
232
  ])) : L("", !0)
235
233
  ], 2)
236
- ], 42, Wt),
234
+ ], 42, Jt),
237
235
  a.error ? (u(), g("p", {
238
236
  key: 0,
239
- id: `${l(n)}-error`,
237
+ id: `${l(s)}-error`,
240
238
  role: "alert",
241
239
  class: "flex items-start gap-1.5 px-2 pt-1 text-footnote text-content-destructive"
242
240
  }, [
@@ -246,13 +244,13 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
246
244
  class: "mt-px shrink-0"
247
245
  }),
248
246
  H(" " + _(a.error), 1)
249
- ], 8, Xt)) : L("", !0)
250
- ], 8, Yt));
247
+ ], 8, Qt)) : L("", !0)
248
+ ], 8, Wt));
251
249
  }
252
- }), Qt = {
250
+ }), ea = {
253
251
  key: 0,
254
252
  class: "text-body text-content-muted"
255
- }, ea = ["id", "aria-label", "aria-describedby", "aria-invalid"], ta = ["aria-pressed", "disabled", "onClick"], no = /* @__PURE__ */ G({
253
+ }, ta = ["id", "aria-label", "aria-describedby", "aria-invalid"], aa = ["aria-pressed", "disabled", "onClick"], io = /* @__PURE__ */ A({
256
254
  __name: "ChoiceChips",
257
255
  props: /* @__PURE__ */ le(/* @__PURE__ */ ue({
258
256
  label: {},
@@ -271,14 +269,14 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
271
269
  modelModifiers: {}
272
270
  }),
273
271
  emits: ["update:modelValue"],
274
- setup(r) {
275
- const a = r, e = re(r, "modelValue"), t = (n) => e.value = e.value.includes(n) ? e.value.filter((o) => o !== n) : [...e.value, n];
276
- return (n, o) => (u(), D(ge, W(l(de)(a), {
272
+ setup(o) {
273
+ const a = o, e = re(o, "modelValue"), t = (s) => e.value = e.value.includes(s) ? e.value.filter((n) => n !== s) : [...e.value, s];
274
+ return (s, n) => (u(), D(ge, W(l(de)(a), {
277
275
  value: a.options.filter((c) => e.value.includes(c.value)).map((c) => c.label).join(", ") || null,
278
276
  "row-layout": "stacked"
279
277
  }), J({
280
278
  default: f(({ id: c, describedby: i, invalid: p }) => [
281
- a.options.length === 0 ? (u(), g("span", Qt, "—")) : (u(), g("div", {
279
+ a.options.length === 0 ? (u(), g("span", ea, "—")) : (u(), g("div", {
282
280
  key: 1,
283
281
  id: c,
284
282
  role: "group",
@@ -302,39 +300,39 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
302
300
  size: 12
303
301
  })) : L("", !0),
304
302
  H(" " + _(k.label), 1)
305
- ], 10, ta))), 128))
306
- ], 8, ea))
303
+ ], 10, aa))), 128))
304
+ ], 8, ta))
307
305
  ]),
308
306
  _: 2
309
307
  }, [
310
- n.$slots.trailing ? {
308
+ s.$slots.trailing ? {
311
309
  name: "trailing",
312
310
  fn: f(() => [
313
- B(n.$slots, "trailing")
311
+ F(s.$slots, "trailing")
314
312
  ]),
315
313
  key: "0"
316
314
  } : void 0,
317
- n.$slots.labelTrailing ? {
315
+ s.$slots.labelTrailing ? {
318
316
  name: "labelTrailing",
319
317
  fn: f(() => [
320
- B(n.$slots, "labelTrailing")
318
+ F(s.$slots, "labelTrailing")
321
319
  ]),
322
320
  key: "1"
323
321
  } : void 0,
324
- n.$slots.readonly ? {
322
+ s.$slots.readonly ? {
325
323
  name: "readonly",
326
324
  fn: f(() => [
327
- B(n.$slots, "readonly")
325
+ F(s.$slots, "readonly")
328
326
  ]),
329
327
  key: "2"
330
328
  } : void 0
331
329
  ]), 1040, ["value"]));
332
330
  }
333
- }), aa = {
331
+ }), la = {
334
332
  key: 0,
335
333
  class: "flex shrink-0 items-center",
336
334
  "data-test": "field-value"
337
- }, la = ["id", "value", "name", "placeholder", "disabled", "required", "aria-expanded", "aria-controls", "aria-activedescendant", "aria-required", "aria-invalid", "aria-describedby"], oa = { class: "block break-words text-body text-content-strong" }, so = /* @__PURE__ */ G({
335
+ }, oa = ["id", "value", "name", "placeholder", "disabled", "required", "aria-expanded", "aria-controls", "aria-activedescendant", "aria-required", "aria-invalid", "aria-describedby"], na = { class: "block break-words text-body text-content-strong" }, uo = /* @__PURE__ */ A({
338
336
  __name: "ComboField",
339
337
  props: /* @__PURE__ */ le(/* @__PURE__ */ ue({
340
338
  label: {},
@@ -362,8 +360,8 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
362
360
  modelModifiers: {}
363
361
  }),
364
362
  emits: /* @__PURE__ */ le(["picked", "focus", "blur"], ["update:modelValue"]),
365
- setup(r, { expose: a, emit: e }) {
366
- const t = r, n = re(r, "modelValue"), o = e, { t: c } = oe(), i = !!Ze(), p = De("text", () => t.error ? "error" : t.disabled ? "locked" : "rest"), k = h(() => t.rowLayout === "stacked"), w = h(() => i && !k.value ? ct(t.width) : "w-full"), $ = U("input"), s = U("anchor"), m = Oe(null), b = Oe(""), C = mt({
363
+ setup(o, { expose: a, emit: e }) {
364
+ const t = o, s = re(o, "modelValue"), n = e, { t: c } = oe(), i = !!Xe(), p = Re("text", () => t.error ? "error" : t.disabled ? "locked" : "rest"), k = h(() => t.rowLayout === "stacked"), w = h(() => i && !k.value ? mt(t.width) : "w-full"), $ = U("input"), r = U("anchor"), m = Ee(null), b = Ee(""), C = pt({
367
365
  source: () => t.search ?? t.options,
368
366
  minLength: () => t.minLength,
369
367
  debounce: () => t.debounce,
@@ -371,37 +369,37 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
371
369
  listAllWhenEmpty: !0,
372
370
  recents: () => t.recents
373
371
  }), { items: q, open: x, status: O, highlighted: R, showingRecent: X } = C, M = h(() => {
374
- const T = n.value;
375
- return T === null ? null : [m.value, t.selected, ...t.options ?? []].find((K) => K?.value === T) ?? null;
372
+ const T = s.value;
373
+ return T === null ? null : [m.value, t.selected, ...t.options ?? []].find((G) => G?.value === T) ?? null;
376
374
  });
377
375
  ye(M, (T) => {
378
376
  x.value || (b.value = T?.label ?? "");
379
377
  }, { immediate: !0 });
380
378
  function ne(T) {
381
- b.value = T.target.value, C.ask(b.value), b.value === "" && (n.value = null, m.value = null);
379
+ b.value = T.target.value, C.ask(b.value), b.value === "" && (s.value = null, m.value = null);
382
380
  }
383
381
  function Q(T) {
384
- o("focus", T), t.disabled || C.show("");
382
+ n("focus", T), t.disabled || C.show("");
385
383
  }
386
384
  function te(T) {
387
- C.close(), C.remember(T), m.value = T, n.value = T.value, b.value = T.label, o("picked", T);
385
+ C.close(), C.remember(T), m.value = T, s.value = T.value, b.value = T.label, n("picked", T);
388
386
  }
389
387
  function fe(T) {
390
- C.close(), b.value = M.value?.label ?? "", o("blur", T);
388
+ C.close(), b.value = M.value?.label ?? "", n("blur", T);
391
389
  }
392
- const me = h(() => vt(x.value, q.value.length, O.value, !0));
393
- return a({ focus: () => $.value?.focus() }), (T, K) => (u(), D(ge, W(l(de)(t), {
390
+ const me = h(() => bt(x.value, q.value.length, O.value, !0));
391
+ return a({ focus: () => $.value?.focus() }), (T, G) => (u(), D(ge, W(l(de)(t), {
394
392
  value: M.value?.label ?? null,
395
393
  "row-layout": t.rowLayout
396
394
  }), J({
397
395
  default: f(({ id: E, describedby: ae, invalid: se }) => [
398
396
  y("div", {
399
397
  ref_key: "anchor",
400
- ref: s,
398
+ ref: r,
401
399
  class: I(["flex items-center gap-1.5", [l(p), w.value]])
402
400
  }, [
403
- T.$slots.value && M.value ? (u(), g("span", aa, [
404
- B(T.$slots, "value", {
401
+ T.$slots.value && M.value ? (u(), g("span", la, [
402
+ F(T.$slots, "value", {
405
403
  option: M.value
406
404
  })
407
405
  ])) : L("", !0),
@@ -428,17 +426,17 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
428
426
  onInput: ne,
429
427
  onFocus: Q,
430
428
  onBlur: fe,
431
- onKeydown: K[0] || (K[0] = (ee) => l(C).keydown(ee, { pick: te, enterNeedsMove: !1 }))
432
- }, null, 42, la),
429
+ onKeydown: G[0] || (G[0] = (ee) => l(C).keydown(ee, { pick: te, enterNeedsMove: !1 }))
430
+ }, null, 42, oa),
433
431
  j(l(Z), {
434
432
  name: "search",
435
433
  size: 14,
436
434
  class: "shrink-0 text-content-muted"
437
435
  })
438
436
  ], 2),
439
- j(ft, {
437
+ j(vt, {
440
438
  id: E,
441
- anchor: s.value,
439
+ anchor: r.value,
442
440
  open: l(x),
443
441
  items: l(q),
444
442
  highlighted: l(R),
@@ -446,15 +444,15 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
446
444
  status: l(O),
447
445
  recent: l(X),
448
446
  "empty-message": !0,
449
- selected: n.value,
447
+ selected: s.value,
450
448
  hint: l(c)("core.form.suggestions.keys_pick"),
451
449
  onPick: te,
452
- onHover: K[1] || (K[1] = (ee) => l(C).highlight(ee))
450
+ onHover: G[1] || (G[1] = (ee) => l(C).highlight(ee))
453
451
  }, J({ _: 2 }, [
454
452
  T.$slots.option ? {
455
453
  name: "option",
456
454
  fn: f((ee) => [
457
- B(T.$slots, "option", ze(Ve(ee)))
455
+ F(T.$slots, "option", ze(Ve(ee)))
458
456
  ]),
459
457
  key: "0"
460
458
  } : void 0
@@ -465,28 +463,28 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
465
463
  T.$slots.trailing ? {
466
464
  name: "trailing",
467
465
  fn: f(() => [
468
- B(T.$slots, "trailing")
466
+ F(T.$slots, "trailing")
469
467
  ]),
470
468
  key: "0"
471
469
  } : void 0,
472
470
  T.$slots.labelTrailing ? {
473
471
  name: "labelTrailing",
474
472
  fn: f(() => [
475
- B(T.$slots, "labelTrailing")
473
+ F(T.$slots, "labelTrailing")
476
474
  ]),
477
475
  key: "1"
478
476
  } : void 0,
479
477
  T.$slots.readonly ? {
480
478
  name: "readonly",
481
479
  fn: f(() => [
482
- B(T.$slots, "readonly")
480
+ F(T.$slots, "readonly")
483
481
  ]),
484
482
  key: "2"
485
483
  } : T.$slots.value && M.value ? {
486
484
  name: "readonly",
487
485
  fn: f(() => [
488
- y("span", oa, [
489
- B(T.$slots, "value", {
486
+ y("span", na, [
487
+ F(T.$slots, "value", {
490
488
  option: M.value
491
489
  })
492
490
  ])
@@ -495,16 +493,16 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
495
493
  } : void 0
496
494
  ]), 1040, ["value", "row-layout"]));
497
495
  }
498
- }), na = {
496
+ }), sa = {
499
497
  key: 0,
500
498
  class: "whitespace-normal"
501
- }, sa = { class: "whitespace-nowrap" }, ra = { class: "whitespace-nowrap" }, ia = ["id", "name", "value", "placeholder", "disabled", "required", "aria-required", "aria-invalid", "aria-describedby"], ua = ["aria-label", "onClick"], da = {
499
+ }, ra = { class: "whitespace-nowrap" }, ia = { class: "whitespace-nowrap" }, ua = ["id", "name", "value", "placeholder", "disabled", "required", "aria-required", "aria-invalid", "aria-describedby"], da = ["aria-label", "onClick"], ca = {
502
500
  class: "-m-3 flex",
503
501
  "data-test": "date-time-popover"
504
- }, ca = { class: "flex w-75 flex-col gap-2.5 border-r border-border-separator p-3.5" }, fa = {
502
+ }, fa = { class: "flex w-75 flex-col gap-2.5 border-r border-border-separator p-3.5" }, ma = {
505
503
  key: 0,
506
504
  class: "border-t border-border-separator pt-2.5"
507
- }, ma = { class: "flex w-48 flex-col gap-2.5 px-3 py-3.5" }, va = ["for"], pa = ["id", "value", "placeholder", "aria-invalid"], ba = ["onClick"], ro = /* @__PURE__ */ G({
505
+ }, va = { class: "flex w-48 flex-col gap-2.5 px-3 py-3.5" }, pa = ["for"], ba = ["id", "value", "placeholder", "aria-invalid"], ya = ["onClick"], co = /* @__PURE__ */ A({
508
506
  __name: "DateTimeField",
509
507
  props: /* @__PURE__ */ le(/* @__PURE__ */ ue({
510
508
  label: {},
@@ -528,10 +526,10 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
528
526
  modelModifiers: {}
529
527
  }),
530
528
  emits: /* @__PURE__ */ le(["focus", "blur"], ["update:modelValue"]),
531
- setup(r, { expose: a, emit: e }) {
532
- const t = r, n = re(r, "modelValue"), o = e, { t: c } = oe(), i = St(), p = Re(), k = U("input"), w = U("popover"), $ = U("calendar"), s = U("sheet"), m = h(() => ({ min: t.min?.slice(0, 10), max: t.max?.slice(0, 10), disabled: t.disabledDates })), b = h(() => t.min && t.min.length === 10 ? `${t.min}T00:00` : t.min), C = h(() => t.max && t.max.length === 10 ? `${t.max}T23:59` : t.max), q = (F, d) => !xt(d, { disabled: t.disabledDates }) && (!b.value || F >= b.value) && (!C.value || F <= C.value), x = $t(() => m.value), O = Bt(() => t.minuteStep), R = h(() => $e(n.value));
533
- function X(F) {
534
- const { date: d, time: z } = Ct(F), v = d === null ? R.value.day ?? Se() : x.parse(d);
529
+ setup(o, { expose: a, emit: e }) {
530
+ const t = o, s = re(o, "modelValue"), n = e, { t: c } = oe(), i = Bt(), p = Me(), k = U("input"), w = U("popover"), $ = U("calendar"), r = U("sheet"), m = h(() => ({ min: t.min?.slice(0, 10), max: t.max?.slice(0, 10), disabled: t.disabledDates })), b = h(() => t.min && t.min.length === 10 ? `${t.min}T00:00` : t.min), C = h(() => t.max && t.max.length === 10 ? `${t.max}T23:59` : t.max), q = (B, d) => !$t(d, { disabled: t.disabledDates }) && (!b.value || B >= b.value) && (!C.value || B <= C.value), x = Ct(() => m.value), O = Lt(() => t.minuteStep), R = h(() => $e(s.value));
531
+ function X(B) {
532
+ const { date: d, time: z } = Ft(B), v = d === null ? R.value.day ?? Se() : x.parse(d);
535
533
  if (!v) return { error: x.invalidMessage() };
536
534
  let V = R.value.time ?? Le(t.minuteStep);
537
535
  if (z !== null) {
@@ -542,58 +540,58 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
542
540
  const S = _e(v, V);
543
541
  return q(S, v) ? { value: S } : { error: x.unavailableMessage() };
544
542
  }
545
- const M = Ne({ model: n, display: (F) => `${i.date($e(F).day)} ${$e(F).time ?? ""}`.trim(), parse: X }), ne = h({
543
+ const M = Ae({ model: s, display: (B) => `${i.date($e(B).day)} ${$e(B).time ?? ""}`.trim(), parse: X }), ne = h({
546
544
  get: () => R.value.time,
547
- set: (F) => {
548
- F && pt(F) && (n.value = _e(R.value.day ?? Se(), F));
545
+ set: (B) => {
546
+ B && yt(B) && (s.value = _e(R.value.day ?? Se(), B));
549
547
  }
550
- }), Q = Ne({ model: ne, display: (F) => F, parse: O.parse }), te = _t(() => t.quickPicks ?? (p.value ? void 0 : []), () => p.value, () => m.value), fe = h(() => t.error || M.message.value || Q.message.value), me = h(() => n.value ? i.dateTime(n.value) : null), T = De("date", () => fe.value ? "error" : t.disabled ? "locked" : "rest"), K = h(() => {
551
- const F = M.typed.value;
552
- return F ? $e(F).day ?? null : null;
553
- }), E = h(() => K.value ?? (bt(R.value.day) ? R.value.day : null)), ae = h(() => M.typed.value ? $e(M.typed.value).time : R.value.time);
554
- function se(F) {
555
- F && M.set(_e(F, R.value.time ?? Le(t.minuteStep)));
548
+ }), Q = Ae({ model: ne, display: (B) => B, parse: O.parse }), te = St(() => t.quickPicks ?? (p.value ? void 0 : []), () => p.value, () => m.value), fe = h(() => t.error || M.message.value || Q.message.value), me = h(() => s.value ? i.dateTime(s.value) : null), T = Re("date", () => fe.value ? "error" : t.disabled ? "locked" : "rest"), G = h(() => {
549
+ const B = M.typed.value;
550
+ return B ? $e(B).day ?? null : null;
551
+ }), E = h(() => G.value ?? (gt(R.value.day) ? R.value.day : null)), ae = h(() => M.typed.value ? $e(M.typed.value).time : R.value.time);
552
+ function se(B) {
553
+ B && M.set(_e(B, R.value.time ?? Le(t.minuteStep)));
556
554
  }
557
- function ee(F) {
558
- F && M.set(_e(R.value.day ?? Se(), F));
555
+ function ee(B) {
556
+ B && M.set(_e(R.value.day ?? Se(), B));
559
557
  }
560
- function ke(F) {
561
- M.set(_e(Se(), Le(t.minuteStep))), F();
558
+ function ke(B) {
559
+ M.set(_e(Se(), Le(t.minuteStep))), B();
562
560
  }
563
- const we = qe();
564
- async function Y(F) {
565
- t.disabled || (w.value?.present(), F && (await he(), await he(), $.value?.focus()));
561
+ const we = De();
562
+ async function Y(B) {
563
+ t.disabled || (w.value?.present(), B && (await he(), await he(), $.value?.focus()));
566
564
  }
567
- function ve(F) {
568
- F.key === "Enter" ? (M.commit(), w.value?.dismiss()) : F.key === "ArrowDown" && (F.preventDefault(), Y(!0));
565
+ function ve(B) {
566
+ B.key === "Enter" ? (M.commit(), w.value?.dismiss()) : B.key === "ArrowDown" && (B.preventDefault(), Y(!0));
569
567
  }
570
- return a({ focus: () => k.value?.focus() }), (F, d) => (u(), D(ge, W({ ...l(de)(t), error: fe.value }, {
568
+ return a({ focus: () => k.value?.focus() }), (B, d) => (u(), D(ge, W({ ...l(de)(t), error: fe.value }, {
571
569
  value: me.value,
572
570
  "value-style": "numeric"
573
571
  }), J({
574
572
  default: f(({ id: z, describedby: v, invalid: V }) => [
575
573
  l(p) ? (u(), g(ie, { key: 0 }, [
576
- j(Xe, W({ id: z, "aria-describedby": v }, {
574
+ j(Qe, W({ id: z, "aria-describedby": v }, {
577
575
  disabled: t.disabled,
578
576
  invalid: V,
579
577
  placeholder: l(c)("core.form.select.choose"),
580
- onClick: d[0] || (d[0] = (S) => s.value?.present())
578
+ onClick: d[0] || (d[0] = (S) => r.value?.present())
581
579
  }), {
582
580
  default: f(() => [
583
- n.value ? (u(), g("span", na, [
584
- y("span", sa, _(l(i).date(R.value.day)), 1),
581
+ s.value ? (u(), g("span", sa, [
582
+ y("span", ra, _(l(i).date(R.value.day)), 1),
585
583
  d[8] || (d[8] = H(_(" "), -1)),
586
- y("span", ra, _(R.value.time), 1)
584
+ y("span", ia, _(R.value.time), 1)
587
585
  ])) : L("", !0)
588
586
  ]),
589
587
  _: 1
590
588
  }, 16, ["disabled", "invalid", "placeholder"]),
591
- j(yt, {
589
+ j(ht, {
592
590
  ref_key: "sheet",
593
- ref: s,
591
+ ref: r,
594
592
  title: t.label ?? l(c)("core.form.date.calendar"),
595
593
  mode: "datetime",
596
- "model-value": n.value,
594
+ "model-value": s.value,
597
595
  min: m.value.min,
598
596
  max: m.value.max,
599
597
  "disabled-dates": t.disabledDates,
@@ -603,7 +601,7 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
603
601
  clearable: !t.required,
604
602
  "onUpdate:modelValue": l(M).set
605
603
  }, null, 8, ["title", "model-value", "min", "max", "disabled-dates", "open-on", "shortcuts", "step", "clearable", "onUpdate:modelValue"])
606
- ], 64)) : (u(), D(Me, {
604
+ ], 64)) : (u(), D(je, {
607
605
  key: 1,
608
606
  ref_key: "popover",
609
607
  ref: w,
@@ -635,33 +633,33 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
635
633
  "aria-invalid": V || void 0,
636
634
  "aria-describedby": v,
637
635
  class: "block min-h-7 min-w-0 border-0 bg-transparent py-1 pl-2.5 text-body tabular-nums text-content-strong placeholder:text-content-disabled focus:outline-none focus:ring-0 disabled:cursor-not-allowed",
638
- onInput: d[1] || (d[1] = (P) => l(M).input(P.target.value)),
639
- onFocus: d[2] || (d[2] = (P) => o("focus", P)),
640
- onBlur: d[3] || (d[3] = (P) => {
641
- l(M).commit(), o("blur", P);
636
+ onInput: d[1] || (d[1] = (K) => l(M).input(K.target.value)),
637
+ onFocus: d[2] || (d[2] = (K) => n("focus", K)),
638
+ onBlur: d[3] || (d[3] = (K) => {
639
+ l(M).commit(), n("blur", K);
642
640
  }),
643
641
  onKeydown: ve,
644
- onClick: d[4] || (d[4] = (P) => Y(!1))
645
- }), null, 16, ia),
642
+ onClick: d[4] || (d[4] = (K) => Y(!1))
643
+ }), null, 16, ua),
646
644
  t.disabled ? L("", !0) : (u(), g("button", {
647
645
  key: 0,
648
646
  type: "button",
649
647
  tabindex: "-1",
650
648
  "aria-label": l(c)("core.form.date.open"),
651
649
  class: "mr-2 flex shrink-0 cursor-pointer items-center text-content-link",
652
- onClick: (P) => N ? w.value?.dismiss() : Y(!0)
650
+ onClick: (K) => N ? w.value?.dismiss() : Y(!0)
653
651
  }, [
654
652
  j(l(Z), {
655
653
  name: "calendarLine",
656
654
  size: 18
657
655
  })
658
- ], 8, ua))
656
+ ], 8, da))
659
657
  ], 2)
660
658
  ]),
661
659
  default: f(({ dismiss: S }) => [
662
- y("div", da, [
663
- y("div", ca, [
664
- j(gt, {
660
+ y("div", ca, [
661
+ y("div", fa, [
662
+ j(kt, {
665
663
  ref_key: "calendar",
666
664
  ref: $,
667
665
  "model-value": E.value,
@@ -671,19 +669,19 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
671
669
  "open-on": t.openOn,
672
670
  "onUpdate:modelValue": se
673
671
  }, null, 8, ["model-value", "min", "max", "disabled-dates", "open-on"]),
674
- l(te).length > 0 ? (u(), g("div", fa, [
675
- j(ht, {
672
+ l(te).length > 0 ? (u(), g("div", ma, [
673
+ j(xt, {
676
674
  items: l(te),
677
675
  selected: E.value,
678
676
  onPick: se
679
677
  }, null, 8, ["items", "selected"])
680
678
  ])) : L("", !0)
681
679
  ]),
682
- y("div", ma, [
680
+ y("div", va, [
683
681
  y("label", {
684
682
  for: l(we),
685
683
  class: "text-footnote font-semibold text-content-muted"
686
- }, _(l(c)("core.form.time.label")), 9, va),
684
+ }, _(l(c)("core.form.time.label")), 9, pa),
687
685
  y("input", {
688
686
  id: l(we),
689
687
  type: "text",
@@ -696,8 +694,8 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
696
694
  onInput: d[5] || (d[5] = (N) => l(Q).input(N.target.value)),
697
695
  onBlur: d[6] || (d[6] = (N) => l(Q).commit()),
698
696
  onKeydown: d[7] || (d[7] = Ce(pe((N) => l(Q).commit(), ["prevent"]), ["enter"]))
699
- }, null, 40, pa),
700
- j(kt, {
697
+ }, null, 40, ba),
698
+ j(wt, {
701
699
  "model-value": ae.value,
702
700
  step: t.minuteStep,
703
701
  "onUpdate:modelValue": ee
@@ -706,7 +704,7 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
706
704
  type: "button",
707
705
  class: "cursor-pointer self-start rounded-full bg-tint-soft px-2.5 py-1.5 text-footnote font-medium text-content-link focus-visible:outline-2 focus-visible:outline-border-focus",
708
706
  onClick: (N) => ke(S)
709
- }, _(l(c)("core.form.time.now")), 9, ba)
707
+ }, _(l(c)("core.form.time.now")), 9, ya)
710
708
  ])
711
709
  ])
712
710
  ]),
@@ -715,49 +713,49 @@ const Gt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Kt = ["name
715
713
  ]),
716
714
  _: 2
717
715
  }, [
718
- F.$slots.trailing ? {
716
+ B.$slots.trailing ? {
719
717
  name: "trailing",
720
718
  fn: f(() => [
721
- B(F.$slots, "trailing")
719
+ F(B.$slots, "trailing")
722
720
  ]),
723
721
  key: "0"
724
722
  } : void 0,
725
- F.$slots.labelTrailing ? {
723
+ B.$slots.labelTrailing ? {
726
724
  name: "labelTrailing",
727
725
  fn: f(() => [
728
- B(F.$slots, "labelTrailing")
726
+ F(B.$slots, "labelTrailing")
729
727
  ]),
730
728
  key: "1"
731
729
  } : void 0,
732
- F.$slots.readonly ? {
730
+ B.$slots.readonly ? {
733
731
  name: "readonly",
734
732
  fn: f(() => [
735
- B(F.$slots, "readonly")
733
+ F(B.$slots, "readonly")
736
734
  ]),
737
735
  key: "2"
738
736
  } : void 0
739
737
  ]), 1040, ["value"]));
740
738
  }
741
739
  });
742
- function Qe(r, a = {}) {
740
+ function et(o, a = {}) {
743
741
  const e = a.accept ?? [];
744
742
  if (e.length > 0) {
745
- const t = r.name.lastIndexOf("."), n = t === -1 ? "" : r.name.slice(t).toLowerCase(), o = r.type.toLowerCase();
743
+ const t = o.name.lastIndexOf("."), s = t === -1 ? "" : o.name.slice(t).toLowerCase(), n = o.type.toLowerCase();
746
744
  if (!e.some((i) => {
747
745
  const p = i.trim().toLowerCase();
748
- return p.startsWith(".") ? p === n : p.endsWith("/*") ? o.startsWith(p.slice(0, -1)) : p === o;
746
+ return p.startsWith(".") ? p === s : p.endsWith("/*") ? n.startsWith(p.slice(0, -1)) : p === n;
749
747
  })) return "invalid_type";
750
748
  }
751
- return (a.maxSize ?? 0) > 0 && r.size > (a.maxSize ?? 0) ? "too_large" : null;
749
+ return (a.maxSize ?? 0) > 0 && o.size > (a.maxSize ?? 0) ? "too_large" : null;
752
750
  }
753
- function Be(r) {
754
- return r < 1024 ? `${r} B` : r < 1024 * 1024 ? `${Math.round(r / 1024)} KB` : `${(r / (1024 * 1024)).toFixed(r % (1024 * 1024) === 0 ? 0 : 1)} MB`;
751
+ function Fe(o) {
752
+ return o < 1024 ? `${o} B` : o < 1024 * 1024 ? `${Math.round(o / 1024)} KB` : `${(o / (1024 * 1024)).toFixed(o % (1024 * 1024) === 0 ? 0 : 1)} MB`;
755
753
  }
756
- const ya = { class: "w-full" }, ga = ["id", "accept", "disabled", "aria-describedby", "aria-invalid"], ha = {
754
+ const ga = { class: "w-full" }, ha = ["id", "accept", "disabled", "aria-describedby", "aria-invalid"], ka = {
757
755
  key: 0,
758
756
  class: "flex items-center gap-3 rounded-group bg-fill p-3",
759
757
  "data-test": "file-selected"
760
- }, ka = { class: "min-w-0 flex-1" }, xa = { class: "truncate text-body font-medium text-content-strong" }, wa = { class: "text-footnote text-content-muted" }, $a = ["disabled", "aria-label", "title"], _a = ["aria-disabled"], Ca = { class: "font-semibold text-content-link" }, Sa = { class: "text-content-muted" }, io = /* @__PURE__ */ G({
758
+ }, xa = { class: "min-w-0 flex-1" }, wa = { class: "truncate text-body font-medium text-content-strong" }, $a = { class: "text-footnote text-content-muted" }, _a = ["disabled", "aria-label", "title"], Ca = ["aria-disabled"], Sa = { class: "font-semibold text-content-link" }, Fa = { class: "text-content-muted" }, fo = /* @__PURE__ */ A({
761
759
  __name: "FileField",
762
760
  props: /* @__PURE__ */ le(/* @__PURE__ */ ue({
763
761
  label: {},
@@ -778,32 +776,32 @@ const ya = { class: "w-full" }, ga = ["id", "accept", "disabled", "aria-describe
778
776
  modelModifiers: {}
779
777
  }),
780
778
  emits: ["update:modelValue"],
781
- setup(r, { expose: a }) {
782
- const e = r, t = re(r, "modelValue"), { t: n } = oe(), o = U("chooser"), c = A(!1), i = A(null), p = h(() => {
779
+ setup(o, { expose: a }) {
780
+ const e = o, t = re(o, "modelValue"), { t: s } = oe(), n = U("chooser"), c = P(!1), i = P(null), p = h(() => {
783
781
  if (e.hint) return e.hint;
784
782
  const $ = [];
785
- return e.accept.length && $.push(n("core.form.file.allowed", { formats: e.accept.map((s) => s.replace(/^\./, "").toUpperCase()).join(", ") })), e.maxSize > 0 && $.push(n("core.form.file.max_size", { size: Be(e.maxSize) })), $.join(" · ") || void 0;
783
+ return e.accept.length && $.push(s("core.form.file.allowed", { formats: e.accept.map((r) => r.replace(/^\./, "").toUpperCase()).join(", ") })), e.maxSize > 0 && $.push(s("core.form.file.max_size", { size: Fe(e.maxSize) })), $.join(" · ") || void 0;
786
784
  });
787
785
  function k($) {
788
786
  if (!$) return;
789
- const s = Qe($, { accept: e.accept, maxSize: e.maxSize });
790
- s ? (i.value = s === "invalid_type" ? n("core.form.file.invalid_type") : n("core.form.file.too_large", { size: Be(e.maxSize) }), t.value = null) : (i.value = null, t.value = $);
787
+ const r = et($, { accept: e.accept, maxSize: e.maxSize });
788
+ r ? (i.value = r === "invalid_type" ? s("core.form.file.invalid_type") : s("core.form.file.too_large", { size: Fe(e.maxSize) }), t.value = null) : (i.value = null, t.value = $);
791
789
  }
792
790
  function w() {
793
791
  t.value = null, i.value = null;
794
792
  }
795
793
  return ye(t, ($) => {
796
- !$ && o.value && (o.value.value = "");
797
- }), a({ clear: w }), ($, s) => (u(), D(ge, W({ ...l(de)(e), hint: p.value, error: i.value ?? e.error }, {
794
+ !$ && n.value && (n.value.value = "");
795
+ }), a({ clear: w }), ($, r) => (u(), D(ge, W({ ...l(de)(e), hint: p.value, error: i.value ?? e.error }, {
798
796
  value: t.value?.name ?? null,
799
797
  "row-layout": "stacked"
800
798
  }), J({
801
799
  default: f(({ id: m, describedby: b, invalid: C }) => [
802
- y("div", ya, [
800
+ y("div", ga, [
803
801
  y("input", {
804
802
  id: m,
805
803
  ref_key: "chooser",
806
- ref: o,
804
+ ref: n,
807
805
  type: "file",
808
806
  class: "sr-only",
809
807
  tabindex: "-1",
@@ -811,18 +809,18 @@ const ya = { class: "w-full" }, ga = ["id", "accept", "disabled", "aria-describe
811
809
  disabled: e.disabled,
812
810
  "aria-describedby": b,
813
811
  "aria-invalid": C || void 0,
814
- onChange: s[0] || (s[0] = (q) => k(q.target.files?.[0]))
815
- }, null, 40, ga),
816
- t.value ? (u(), g("div", ha, [
817
- y("div", ka, [
818
- y("p", xa, _(t.value.name), 1),
819
- y("p", wa, _(l(Be)(t.value.size)), 1)
812
+ onChange: r[0] || (r[0] = (q) => k(q.target.files?.[0]))
813
+ }, null, 40, ha),
814
+ t.value ? (u(), g("div", ka, [
815
+ y("div", xa, [
816
+ y("p", wa, _(t.value.name), 1),
817
+ y("p", $a, _(l(Fe)(t.value.size)), 1)
820
818
  ]),
821
819
  y("button", {
822
820
  type: "button",
823
821
  disabled: e.disabled,
824
- "aria-label": l(n)("core.form.file.remove"),
825
- title: l(n)("core.form.file.remove"),
822
+ "aria-label": l(s)("core.form.file.remove"),
823
+ title: l(s)("core.form.file.remove"),
826
824
  class: "flex size-7 shrink-0 cursor-pointer items-center justify-center rounded-full text-content-muted hover:bg-fill-strong focus-visible:outline-2 focus-visible:outline-border-focus disabled:cursor-not-allowed",
827
825
  onClick: w
828
826
  }, [
@@ -830,7 +828,7 @@ const ya = { class: "w-full" }, ga = ["id", "accept", "disabled", "aria-describe
830
828
  name: "close",
831
829
  size: 14
832
830
  })
833
- ], 8, $a)
831
+ ], 8, _a)
834
832
  ])) : e.variant === "dropzone" ? (u(), g("div", {
835
833
  key: 1,
836
834
  role: "button",
@@ -838,26 +836,26 @@ const ya = { class: "w-full" }, ga = ["id", "accept", "disabled", "aria-describe
838
836
  "data-test": "file-dropzone",
839
837
  "aria-disabled": e.disabled || void 0,
840
838
  class: I(["cursor-pointer rounded-group border-2 border-dashed p-6 text-center text-body transition-colors duration-motion-fast focus-visible:outline-2 focus-visible:outline-border-focus", c.value ? "border-border-focus bg-tint-soft" : "border-border-control hover:bg-fill"]),
841
- onClick: s[1] || (s[1] = (q) => !e.disabled && o.value?.click()),
839
+ onClick: r[1] || (r[1] = (q) => !e.disabled && n.value?.click()),
842
840
  onKeydown: [
843
- s[2] || (s[2] = Ce(pe((q) => !e.disabled && o.value?.click(), ["prevent"]), ["enter"])),
844
- s[3] || (s[3] = Ce(pe((q) => !e.disabled && o.value?.click(), ["prevent"]), ["space"]))
841
+ r[2] || (r[2] = Ce(pe((q) => !e.disabled && n.value?.click(), ["prevent"]), ["enter"])),
842
+ r[3] || (r[3] = Ce(pe((q) => !e.disabled && n.value?.click(), ["prevent"]), ["space"]))
845
843
  ],
846
- onDragover: s[4] || (s[4] = pe((q) => c.value = !0, ["prevent"])),
847
- onDragleave: s[5] || (s[5] = pe((q) => c.value = !1, ["prevent"])),
848
- onDrop: s[6] || (s[6] = pe((q) => {
844
+ onDragover: r[4] || (r[4] = pe((q) => c.value = !0, ["prevent"])),
845
+ onDragleave: r[5] || (r[5] = pe((q) => c.value = !1, ["prevent"])),
846
+ onDrop: r[6] || (r[6] = pe((q) => {
849
847
  c.value = !1, e.disabled || k(q.dataTransfer?.files?.[0]);
850
848
  }, ["prevent"]))
851
849
  }, [
852
- y("span", Ca, _(l(n)("core.form.file.choose")), 1),
853
- y("span", Sa, _(" " + l(n)("core.form.file.drop")), 1)
854
- ], 42, _a)) : (u(), D(be, {
850
+ y("span", Sa, _(l(s)("core.form.file.choose")), 1),
851
+ y("span", Fa, _(" " + l(s)("core.form.file.drop")), 1)
852
+ ], 42, Ca)) : (u(), D(be, {
855
853
  key: 2,
856
854
  disabled: e.disabled,
857
- onClick: s[7] || (s[7] = (q) => o.value?.click())
855
+ onClick: r[7] || (r[7] = (q) => n.value?.click())
858
856
  }, {
859
857
  default: f(() => [
860
- H(_(l(n)("core.form.file.choose")), 1)
858
+ H(_(l(s)("core.form.file.choose")), 1)
861
859
  ]),
862
860
  _: 1
863
861
  }, 8, ["disabled"]))
@@ -868,27 +866,27 @@ const ya = { class: "w-full" }, ga = ["id", "accept", "disabled", "aria-describe
868
866
  $.$slots.trailing ? {
869
867
  name: "trailing",
870
868
  fn: f(() => [
871
- B($.$slots, "trailing")
869
+ F($.$slots, "trailing")
872
870
  ]),
873
871
  key: "0"
874
872
  } : void 0,
875
873
  $.$slots.labelTrailing ? {
876
874
  name: "labelTrailing",
877
875
  fn: f(() => [
878
- B($.$slots, "labelTrailing")
876
+ F($.$slots, "labelTrailing")
879
877
  ]),
880
878
  key: "1"
881
879
  } : void 0,
882
880
  $.$slots.readonly ? {
883
881
  name: "readonly",
884
882
  fn: f(() => [
885
- B($.$slots, "readonly")
883
+ F($.$slots, "readonly")
886
884
  ]),
887
885
  key: "2"
888
886
  } : void 0
889
887
  ]), 1040, ["value"]));
890
888
  }
891
- }), Ba = ["disabled"], uo = /* @__PURE__ */ G({
889
+ }), Ba = ["disabled"], mo = /* @__PURE__ */ A({
892
890
  __name: "FormGroupButton",
893
891
  props: {
894
892
  label: {},
@@ -896,17 +894,17 @@ const ya = { class: "w-full" }, ga = ["id", "accept", "disabled", "aria-describe
896
894
  disabled: { type: Boolean, default: !1 }
897
895
  },
898
896
  emits: ["click"],
899
- setup(r, { emit: a }) {
900
- const e = r, t = a;
901
- return (n, o) => (u(), D(Ft, null, {
897
+ setup(o, { emit: a }) {
898
+ const e = o, t = a;
899
+ return (s, n) => (u(), D(tt, null, {
902
900
  default: f(() => [
903
- j(it, { layout: "stacked" }, {
901
+ j(dt, { layout: "stacked" }, {
904
902
  default: f(() => [
905
903
  y("button", {
906
904
  type: "button",
907
905
  disabled: e.disabled,
908
906
  class: I(["w-full py-1 text-center text-body focus-visible:outline-2 focus-visible:outline-border-focus disabled:text-content-disabled", e.tone === "critical" ? "text-content-destructive" : "text-content-link"]),
909
- onClick: o[0] || (o[0] = (c) => t("click"))
907
+ onClick: n[0] || (n[0] = (c) => t("click"))
910
908
  }, _(e.label), 11, Ba)
911
909
  ]),
912
910
  _: 1
@@ -915,29 +913,29 @@ const ya = { class: "w-full" }, ga = ["id", "accept", "disabled", "aria-describe
915
913
  _: 1
916
914
  }));
917
915
  }
918
- }), co = /* @__PURE__ */ G({
916
+ }), vo = /* @__PURE__ */ A({
919
917
  __name: "FormIndent",
920
- setup(r) {
921
- return at(ut, dt() + 1), (a, e) => B(a.$slots, "default");
918
+ setup(o) {
919
+ return ot(ct, ft() + 1), (a, e) => F(a.$slots, "default");
922
920
  }
923
921
  });
924
- function Fa(r, a) {
925
- return a.filter((e) => (r?.[e] ?? "").trim() === "");
922
+ function La(o, a) {
923
+ return a.filter((e) => (o?.[e] ?? "").trim() === "");
926
924
  }
927
- const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows", "placeholder", "maxlength", "disabled", "aria-required", "aria-invalid", "aria-describedby"], za = ["id", "value", "lang", "name", "placeholder", "maxlength", "disabled", "aria-required", "aria-invalid", "aria-describedby"], Va = {
925
+ const Ta = ["id", "aria-labelledby"], za = ["id", "value", "lang", "name", "rows", "placeholder", "maxlength", "disabled", "aria-required", "aria-invalid", "aria-describedby"], Va = ["id", "value", "lang", "name", "placeholder", "maxlength", "disabled", "aria-required", "aria-invalid", "aria-describedby"], qa = {
928
926
  key: 0,
929
927
  class: "mt-1.5 flex items-center gap-2"
930
- }, qa = {
928
+ }, Da = {
931
929
  key: 0,
932
930
  class: "flex-1 text-footnote text-status-warning-content",
933
931
  "data-test": "i18n-missing"
934
- }, Da = {
932
+ }, Ra = {
935
933
  key: 1,
936
934
  class: "flex-1"
937
- }, Ra = ["aria-label"], Ma = ["id", "aria-selected", "tabindex", "aria-controls", "aria-label", "title", "onClick", "onKeydown"], ja = ["data-state"], Ia = { class: "w-full" }, Oa = { class: "whitespace-pre-line break-words text-body text-content-strong" }, Ea = ["aria-expanded"], Na = { class: "flex-1" }, Ga = {
935
+ }, Ma = ["aria-label"], ja = ["id", "aria-selected", "tabindex", "aria-controls", "aria-label", "title", "onClick", "onKeydown"], Ia = ["data-state"], Oa = { class: "w-full" }, Ea = { class: "whitespace-pre-line break-words text-body text-content-strong" }, Na = ["aria-expanded"], Aa = { class: "flex-1" }, Ga = {
938
936
  key: 0,
939
937
  class: "mt-1 flex flex-col gap-1.5"
940
- }, Ka = ["title"], fo = /* @__PURE__ */ G({
938
+ }, Ka = ["title"], po = /* @__PURE__ */ A({
941
939
  __name: "I18nField",
942
940
  props: /* @__PURE__ */ le(/* @__PURE__ */ ue({
943
941
  label: {},
@@ -962,11 +960,11 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
962
960
  modelModifiers: {}
963
961
  }),
964
962
  emits: ["update:modelValue"],
965
- setup(r, { expose: a }) {
966
- const e = r, t = re(r, "modelValue"), { t: n, locale: o, availableLocales: c } = oe(), i = Ue(Tt, null), p = qe(), k = U("field"), w = U("root"), { editable: $ } = Je(e), s = De(e.multiline ? "area" : "text", () => e.error || ae.value ? "error" : e.disabled ? "locked" : "rest"), m = h(() => e.locales ?? i?.locales ?? c), b = h(() => e.defaultLocale ?? m.value[0] ?? ""), C = h(() => m.value.includes(b.value) ? [b.value, ...m.value.filter((v) => v !== b.value)] : m.value), q = A(null), x = h(() => q.value !== null && C.value.includes(q.value) ? q.value : C.value.includes(o.value) ? o.value : b.value), O = (v) => t.value[v] ?? "", R = (v) => O(v).trim() !== "", X = (v) => v.toUpperCase();
963
+ setup(o, { expose: a }) {
964
+ const e = o, t = re(o, "modelValue"), { t: s, locale: n, availableLocales: c } = oe(), i = Ye(zt, null), p = De(), k = U("field"), w = U("root"), { editable: $ } = Ze(e), r = Re(e.multiline ? "area" : "text", () => e.error || ae.value ? "error" : e.disabled ? "locked" : "rest"), m = h(() => e.locales ?? i?.locales ?? c), b = h(() => e.defaultLocale ?? m.value[0] ?? ""), C = h(() => m.value.includes(b.value) ? [b.value, ...m.value.filter((v) => v !== b.value)] : m.value), q = P(null), x = h(() => q.value !== null && C.value.includes(q.value) ? q.value : C.value.includes(n.value) ? n.value : b.value), O = (v) => t.value[v] ?? "", R = (v) => O(v).trim() !== "", X = (v) => v.toUpperCase();
967
965
  function M(v) {
968
966
  try {
969
- return new Intl.DisplayNames([Lt(o.value)], { type: "language" }).of(v) ?? X(v);
967
+ return new Intl.DisplayNames([Tt(n.value)], { type: "language" }).of(v) ?? X(v);
970
968
  } catch {
971
969
  return X(v);
972
970
  }
@@ -983,29 +981,29 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
983
981
  const S = C.value.length - 1, N = { ArrowRight: V + 1, ArrowLeft: V - 1, Home: 0, End: S }[v.key];
984
982
  if (N === void 0) return;
985
983
  v.preventDefault();
986
- const P = C.value[(N + C.value.length) % C.value.length];
987
- P !== void 0 && (fe(P, !1), he(() => document.getElementById(te(P))?.focus()));
984
+ const K = C.value[(N + C.value.length) % C.value.length];
985
+ K !== void 0 && (fe(K, !1), he(() => document.getElementById(te(K))?.focus()));
988
986
  }
989
- const T = A(!1);
990
- function K(v) {
987
+ const T = P(!1);
988
+ function G(v) {
991
989
  w.value?.contains(v.relatedTarget) || (T.value = !0);
992
990
  }
993
- const E = h(() => Fa(t.value, e.requiredLocales)), ae = h(() => T.value && E.value.length > 0 ? n("core.form.i18n.required", { languages: ne(E.value) }) : void 0), se = h(() => e.requiredLocales.length > 0 ? E.value.length === 0 : C.value.some(R)), ee = h(() => C.value.filter((v) => !R(v) && !(ae.value && E.value.includes(v)))), ke = h(() => R(b.value) && C.value.some((v) => v !== b.value && !R(v)));
991
+ const E = h(() => La(t.value, e.requiredLocales)), ae = h(() => T.value && E.value.length > 0 ? s("core.form.i18n.required", { languages: ne(E.value) }) : void 0), se = h(() => e.requiredLocales.length > 0 ? E.value.length === 0 : C.value.some(R)), ee = h(() => C.value.filter((v) => !R(v) && !(ae.value && E.value.includes(v)))), ke = h(() => R(b.value) && C.value.some((v) => v !== b.value && !R(v)));
994
992
  function we() {
995
993
  const v = O(b.value);
996
994
  t.value = { ...t.value, ...Object.fromEntries(C.value.filter((V) => !R(V)).map((V) => [V, v])) };
997
995
  }
998
- const Y = h(() => [o.value, b.value, ...C.value].find((v) => C.value.includes(v) && R(v))), ve = h(() => C.value.filter((v) => v !== Y.value)), F = h(() => ve.value.filter(R).length), d = A(!1), z = h(() => e.label && !$.value && Y.value ? `${e.label} · ${X(Y.value)}` : e.label);
996
+ const Y = h(() => [n.value, b.value, ...C.value].find((v) => C.value.includes(v) && R(v))), ve = h(() => C.value.filter((v) => v !== Y.value)), B = h(() => ve.value.filter(R).length), d = P(!1), z = h(() => e.label && !$.value && Y.value ? `${e.label} · ${X(Y.value)}` : e.label);
999
997
  return a({ focus: () => k.value?.focus() }), (v, V) => (u(), D(ge, W({ ...l(de)(e), label: z.value, error: e.error ?? ae.value, required: e.required || e.requiredLocales.length > 0 }, {
1000
998
  value: l($) ? se.value ? "written" : null : Y.value ? O(Y.value) : null,
1001
999
  "row-layout": "stacked"
1002
1000
  }), J({
1003
- default: f(({ id: S, describedby: N, invalid: P }) => [
1001
+ default: f(({ id: S, describedby: N, invalid: K }) => [
1004
1002
  y("div", {
1005
1003
  ref_key: "root",
1006
1004
  ref: w,
1007
1005
  class: "w-full",
1008
- onFocusout: K
1006
+ onFocusout: G
1009
1007
  }, [
1010
1008
  y("div", {
1011
1009
  id: `${l(p)}-panel`,
@@ -1013,7 +1011,7 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1013
1011
  "aria-labelledby": te(x.value)
1014
1012
  }, [
1015
1013
  y("div", {
1016
- class: I(["w-full", l(s)])
1014
+ class: I(["w-full", l(r)])
1017
1015
  }, [
1018
1016
  e.multiline ? (u(), g("textarea", {
1019
1017
  key: 0,
@@ -1028,12 +1026,12 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1028
1026
  maxlength: e.maxLength,
1029
1027
  disabled: e.disabled,
1030
1028
  "aria-required": e.required || void 0,
1031
- "aria-invalid": P || void 0,
1029
+ "aria-invalid": K || void 0,
1032
1030
  "aria-describedby": N,
1033
1031
  "data-test": "i18n-input",
1034
1032
  class: "block w-full resize-y border-0 bg-transparent px-0 py-1 text-body text-content-strong placeholder:text-content-disabled focus:outline-none focus:ring-0 disabled:cursor-not-allowed",
1035
- onInput: V[0] || (V[0] = (Fe) => Q(x.value, Fe.target.value))
1036
- }, null, 40, Ta)) : (u(), g("input", {
1033
+ onInput: V[0] || (V[0] = (Be) => Q(x.value, Be.target.value))
1034
+ }, null, 40, za)) : (u(), g("input", {
1037
1035
  key: 1,
1038
1036
  id: S,
1039
1037
  ref_key: "field",
@@ -1046,30 +1044,30 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1046
1044
  maxlength: e.maxLength,
1047
1045
  disabled: e.disabled,
1048
1046
  "aria-required": e.required || void 0,
1049
- "aria-invalid": P || void 0,
1047
+ "aria-invalid": K || void 0,
1050
1048
  "aria-describedby": N,
1051
1049
  "data-test": "i18n-input",
1052
1050
  class: "block w-full min-w-0 border-0 bg-transparent px-0 py-1 text-body text-content-strong placeholder:text-content-disabled focus:outline-none focus:ring-0 disabled:cursor-not-allowed",
1053
- onInput: V[1] || (V[1] = (Fe) => Q(x.value, Fe.target.value))
1054
- }, null, 40, za))
1051
+ onInput: V[1] || (V[1] = (Be) => Q(x.value, Be.target.value))
1052
+ }, null, 40, Va))
1055
1053
  ], 2)
1056
- ], 8, La),
1057
- ee.value.length > 0 || ke.value ? (u(), g("div", Va, [
1058
- ee.value.length > 0 ? (u(), g("p", qa, _(l(n)("core.form.i18n.missing", { languages: ne(ee.value) })), 1)) : (u(), g("span", Da)),
1054
+ ], 8, Ta),
1055
+ ee.value.length > 0 || ke.value ? (u(), g("div", qa, [
1056
+ ee.value.length > 0 ? (u(), g("p", Da, _(l(s)("core.form.i18n.missing", { languages: ne(ee.value) })), 1)) : (u(), g("span", Ra)),
1059
1057
  ke.value && !e.disabled ? (u(), g("button", {
1060
1058
  key: 2,
1061
1059
  type: "button",
1062
1060
  "data-test": "i18n-copy",
1063
1061
  class: "shrink-0 cursor-pointer rounded-control bg-tint-soft px-2.5 py-1.5 text-footnote font-medium text-content-link transition-colors duration-motion-fast hover:bg-fill focus-visible:outline-2 focus-visible:outline-offset-1 focus-visible:outline-border-focus",
1064
1062
  onClick: we
1065
- }, _(l(n)("core.form.i18n.copy", { language: X(b.value) })), 1)) : L("", !0)
1063
+ }, _(l(s)("core.form.i18n.copy", { language: X(b.value) })), 1)) : L("", !0)
1066
1064
  ])) : L("", !0)
1067
1065
  ], 544)
1068
1066
  ]),
1069
1067
  labelTrailing: f(() => [
1070
1068
  y("div", {
1071
1069
  role: "tablist",
1072
- "aria-label": l(n)("core.form.i18n.languages"),
1070
+ "aria-label": l(s)("core.form.i18n.languages"),
1073
1071
  class: "flex shrink-0 gap-0.5 rounded-control bg-fill p-0.5",
1074
1072
  "data-test": "i18n-tabs"
1075
1073
  }, [
@@ -1081,11 +1079,11 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1081
1079
  "aria-selected": S === x.value,
1082
1080
  tabindex: S === x.value ? 0 : -1,
1083
1081
  "aria-controls": `${l(p)}-panel`,
1084
- "aria-label": l(n)(R(S) ? "core.form.i18n.tab_written" : "core.form.i18n.tab_empty", { language: M(S) }),
1082
+ "aria-label": l(s)(R(S) ? "core.form.i18n.tab_written" : "core.form.i18n.tab_empty", { language: M(S) }),
1085
1083
  title: M(S),
1086
1084
  class: I(["flex min-h-7 cursor-pointer items-center gap-1.5 rounded-control px-2.5 py-1 text-footnote font-semibold transition-colors duration-motion-fast focus-visible:outline-2 focus-visible:outline-offset-1 focus-visible:outline-border-focus", S === x.value ? "bg-segment-selected text-content-strong shadow-sm" : "text-content-muted hover:text-content-strong"]),
1087
- onClick: (P) => fe(S, !0),
1088
- onKeydown: (P) => me(P, N)
1085
+ onClick: (K) => fe(S, !0),
1086
+ onKeydown: (K) => me(K, N)
1089
1087
  }, [
1090
1088
  H(_(X(S)) + " ", 1),
1091
1089
  y("span", {
@@ -1093,17 +1091,17 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1093
1091
  class: I(["size-1.5 rounded-full", R(S) ? "bg-status-success-solid" : ae.value && E.value.includes(S) ? "bg-content-destructive" : "bg-content-disabled"]),
1094
1092
  "data-test": "i18n-dot",
1095
1093
  "data-state": R(S) ? "written" : ae.value && E.value.includes(S) ? "required" : "empty"
1096
- }, null, 10, ja)
1097
- ], 42, Ma))), 128))
1098
- ], 8, Ra)
1094
+ }, null, 10, Ia)
1095
+ ], 42, ja))), 128))
1096
+ ], 8, Ma)
1099
1097
  ]),
1100
1098
  _: 2
1101
1099
  }, [
1102
1100
  Y.value ? {
1103
1101
  name: "readonly",
1104
1102
  fn: f(() => [
1105
- y("div", Ia, [
1106
- y("p", Oa, _(O(Y.value)), 1),
1103
+ y("div", Oa, [
1104
+ y("p", Ea, _(O(Y.value)), 1),
1107
1105
  ve.value.length > 0 ? (u(), g(ie, { key: 0 }, [
1108
1106
  y("button", {
1109
1107
  type: "button",
@@ -1111,13 +1109,13 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1111
1109
  class: "mt-1.5 flex w-full cursor-pointer items-center gap-2 text-left text-footnote text-content-muted focus-visible:outline-2 focus-visible:outline-offset-1 focus-visible:outline-border-focus",
1112
1110
  onClick: V[2] || (V[2] = (S) => d.value = !d.value)
1113
1111
  }, [
1114
- y("span", Na, _(l(n)("core.form.i18n.more", { count: ve.value.length, filled: F.value })), 1),
1112
+ y("span", Aa, _(l(s)("core.form.i18n.more", { count: ve.value.length, filled: B.value })), 1),
1115
1113
  j(l(Z), {
1116
1114
  name: "arrowRightSLine",
1117
1115
  size: 16,
1118
1116
  class: I(["shrink-0 transition-transform duration-motion-fast", d.value ? "rotate-90" : ""])
1119
1117
  }, null, 8, ["class"])
1120
- ], 8, Ea),
1118
+ ], 8, Na),
1121
1119
  d.value ? (u(), g("dl", Ga, [
1122
1120
  (u(!0), g(ie, null, xe(ve.value, (S) => (u(), g("div", {
1123
1121
  key: S,
@@ -1129,7 +1127,7 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1129
1127
  }, _(X(S)), 9, Ka),
1130
1128
  y("dd", {
1131
1129
  class: I(["min-w-0 flex-1 whitespace-pre-line break-words", R(S) ? "text-content-strong" : "text-content-disabled"])
1132
- }, _(R(S) ? O(S) : l(n)("core.state.no_value")), 3)
1130
+ }, _(R(S) ? O(S) : l(s)("core.state.no_value")), 3)
1133
1131
  ]))), 128))
1134
1132
  ])) : L("", !0)
1135
1133
  ], 64)) : L("", !0)
@@ -1140,13 +1138,28 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1140
1138
  v.$slots.trailing ? {
1141
1139
  name: "trailing",
1142
1140
  fn: f(() => [
1143
- B(v.$slots, "trailing")
1141
+ F(v.$slots, "trailing")
1144
1142
  ]),
1145
1143
  key: "1"
1146
1144
  } : void 0
1147
1145
  ]), 1040, ["value"]));
1148
1146
  }
1149
- }), mo = /* @__PURE__ */ G({
1147
+ }), Pa = "unsupported_characters", Ha = /[\u{10000}-\u{10FFFF}]/u;
1148
+ function Ua(o) {
1149
+ return Ha.test(o);
1150
+ }
1151
+ function qe(o, a, e) {
1152
+ if (typeof o == "string")
1153
+ Ua(o) && e.addIssue({ code: "custom", path: a, params: { code: Pa } });
1154
+ else if (Array.isArray(o))
1155
+ o.forEach((t, s) => qe(t, [...a, s], e));
1156
+ else if (o && typeof o == "object")
1157
+ for (const [t, s] of Object.entries(o)) qe(s, [...a, t], e);
1158
+ }
1159
+ function bo(o, a) {
1160
+ qe(o, [], a);
1161
+ }
1162
+ const yo = /* @__PURE__ */ A({
1150
1163
  __name: "MoneyField",
1151
1164
  props: /* @__PURE__ */ ue({
1152
1165
  label: {},
@@ -1167,46 +1180,46 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1167
1180
  width: {}
1168
1181
  }, { ...ce, modelValue: void 0, decimals: 2, blankZero: !1, negative: !1, width: "sm" }),
1169
1182
  emits: ["update:modelValue", "focus", "blur"],
1170
- setup(r, { expose: a, emit: e }) {
1171
- const t = r, n = e, o = U("field");
1172
- return a({ focus: () => o.value?.focus() }), (c, i) => (u(), D(zt, W({
1183
+ setup(o, { expose: a, emit: e }) {
1184
+ const t = o, s = e, n = U("field");
1185
+ return a({ focus: () => n.value?.focus() }), (c, i) => (u(), D(Vt, W({
1173
1186
  ref_key: "field",
1174
- ref: o,
1187
+ ref: n,
1175
1188
  "model-value": t.modelValue,
1176
- "onUpdate:modelValue": i[0] || (i[0] = (p) => n("update:modelValue", p))
1189
+ "onUpdate:modelValue": i[0] || (i[0] = (p) => s("update:modelValue", p))
1177
1190
  }, l(de)(t), {
1178
1191
  decimals: t.decimals,
1179
1192
  negative: t.negative,
1180
1193
  "blank-zero": t.blankZero,
1181
1194
  suffix: t.currency,
1182
1195
  width: t.width,
1183
- onFocus: i[1] || (i[1] = (p) => n("focus", p)),
1184
- onBlur: i[2] || (i[2] = (p) => n("blur", p))
1196
+ onFocus: i[1] || (i[1] = (p) => s("focus", p)),
1197
+ onBlur: i[2] || (i[2] = (p) => s("blur", p))
1185
1198
  }), J({ _: 2 }, [
1186
1199
  c.$slots.trailing ? {
1187
1200
  name: "trailing",
1188
1201
  fn: f(() => [
1189
- B(c.$slots, "trailing")
1202
+ F(c.$slots, "trailing")
1190
1203
  ]),
1191
1204
  key: "0"
1192
1205
  } : void 0,
1193
1206
  c.$slots.labelTrailing ? {
1194
1207
  name: "labelTrailing",
1195
1208
  fn: f(() => [
1196
- B(c.$slots, "labelTrailing")
1209
+ F(c.$slots, "labelTrailing")
1197
1210
  ]),
1198
1211
  key: "1"
1199
1212
  } : void 0,
1200
1213
  c.$slots.readonly ? {
1201
1214
  name: "readonly",
1202
1215
  fn: f(() => [
1203
- B(c.$slots, "readonly")
1216
+ F(c.$slots, "readonly")
1204
1217
  ]),
1205
1218
  key: "2"
1206
1219
  } : void 0
1207
1220
  ]), 1040, ["model-value", "decimals", "negative", "blank-zero", "suffix", "width"]));
1208
1221
  }
1209
- }), Pa = { class: "flex flex-col gap-2" }, Aa = ["onClick"], vo = /* @__PURE__ */ G({
1222
+ }), Ya = { class: "flex flex-col gap-2" }, Wa = ["onClick"], go = /* @__PURE__ */ A({
1210
1223
  __name: "MonthYearField",
1211
1224
  props: /* @__PURE__ */ le(/* @__PURE__ */ ue({
1212
1225
  label: {},
@@ -1229,8 +1242,8 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1229
1242
  yearModifiers: {}
1230
1243
  }),
1231
1244
  emits: ["update:month", "update:year"],
1232
- setup(r) {
1233
- const a = r, e = re(r, "month"), t = re(r, "year"), { t: n } = oe(), o = h(() => e.value !== null && e.value >= 1 && e.value <= 12), c = (w, $) => n(`core.form.months.${$}.${w}`), i = h(() => o.value && t.value !== null ? n("core.form.months.with_year", { month: c(e.value, "long"), year: t.value }) : t.value !== null ? String(t.value) : o.value ? c(e.value, "long") : "");
1245
+ setup(o) {
1246
+ const a = o, e = re(o, "month"), t = re(o, "year"), { t: s } = oe(), n = h(() => e.value !== null && e.value >= 1 && e.value <= 12), c = (w, $) => s(`core.form.months.${$}.${w}`), i = h(() => n.value && t.value !== null ? s("core.form.months.with_year", { month: c(e.value, "long"), year: t.value }) : t.value !== null ? String(t.value) : n.value ? c(e.value, "long") : "");
1234
1247
  function p(w, $) {
1235
1248
  e.value = w.month, t.value = w.year, $();
1236
1249
  }
@@ -1240,19 +1253,19 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1240
1253
  return (w, $) => (u(), D(ge, W(l(de)(a), {
1241
1254
  value: i.value || null
1242
1255
  }), J({
1243
- default: f(({ id: s, describedby: m, invalid: b }) => [
1244
- j(Me, {
1256
+ default: f(({ id: r, describedby: m, invalid: b }) => [
1257
+ j(je, {
1245
1258
  label: a.label ?? i.value,
1246
1259
  width: "sm",
1247
1260
  placement: "bottom-start",
1248
1261
  arrow: !1
1249
1262
  }, {
1250
1263
  trigger: f(({ toggle: C, presented: q }) => [
1251
- j(Xe, W({ id: s, "aria-describedby": m }, {
1264
+ j(Qe, W({ id: r, "aria-describedby": m }, {
1252
1265
  expanded: q,
1253
1266
  disabled: a.disabled,
1254
1267
  invalid: b,
1255
- placeholder: a.placeholder ?? l(n)("core.form.select.choose"),
1268
+ placeholder: a.placeholder ?? l(s)("core.form.select.choose"),
1256
1269
  onClick: C
1257
1270
  }), {
1258
1271
  default: f(() => [
@@ -1269,20 +1282,20 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1269
1282
  }, 16, ["expanded", "disabled", "invalid", "placeholder", "onClick"])
1270
1283
  ]),
1271
1284
  default: f(({ dismiss: C }) => [
1272
- y("div", Pa, [
1273
- j(wt, {
1285
+ y("div", Ya, [
1286
+ j(_t, {
1274
1287
  month: e.value,
1275
1288
  year: t.value,
1276
1289
  "min-year": a.minYear,
1277
1290
  "max-year": a.maxYear,
1278
1291
  onPick: (q) => p(q, C)
1279
1292
  }, null, 8, ["month", "year", "min-year", "max-year", "onPick"]),
1280
- o.value || t.value !== null ? (u(), g("button", {
1293
+ n.value || t.value !== null ? (u(), g("button", {
1281
1294
  key: 0,
1282
1295
  type: "button",
1283
1296
  class: "cursor-pointer self-start rounded-control px-1 text-footnote text-content-link",
1284
1297
  onClick: (q) => k(C)
1285
- }, _(l(n)("core.form.select.clear")), 9, Aa)) : L("", !0)
1298
+ }, _(l(s)("core.form.select.clear")), 9, Wa)) : L("", !0)
1286
1299
  ])
1287
1300
  ]),
1288
1301
  _: 2
@@ -1293,27 +1306,27 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1293
1306
  w.$slots.trailing ? {
1294
1307
  name: "trailing",
1295
1308
  fn: f(() => [
1296
- B(w.$slots, "trailing")
1309
+ F(w.$slots, "trailing")
1297
1310
  ]),
1298
1311
  key: "0"
1299
1312
  } : void 0,
1300
1313
  w.$slots.labelTrailing ? {
1301
1314
  name: "labelTrailing",
1302
1315
  fn: f(() => [
1303
- B(w.$slots, "labelTrailing")
1316
+ F(w.$slots, "labelTrailing")
1304
1317
  ]),
1305
1318
  key: "1"
1306
1319
  } : void 0,
1307
1320
  w.$slots.readonly ? {
1308
1321
  name: "readonly",
1309
1322
  fn: f(() => [
1310
- B(w.$slots, "readonly")
1323
+ F(w.$slots, "readonly")
1311
1324
  ]),
1312
1325
  key: "2"
1313
1326
  } : void 0
1314
1327
  ]), 1040, ["value"]));
1315
1328
  }
1316
- }), Ha = { class: "flex min-w-0 flex-wrap items-center gap-1.5 py-0.5" }, Ua = { class: "truncate" }, Ya = ["disabled", "aria-label", "onClick"], Wa = ["id", "disabled", "aria-expanded", "aria-invalid", "aria-describedby", "aria-busy"], Ja = ["id", "disabled", "aria-invalid", "aria-describedby", "aria-busy", "onClick"], Za = { class: "max-h-72 overflow-y-auto" }, Xa = { class: "flex items-center justify-between gap-2" }, Pe = "inline-flex min-h-7 cursor-pointer items-center gap-1 rounded-control bg-fill px-2.5 py-1 text-body text-content-muted hover:bg-fill-strong focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-border-focus disabled:cursor-not-allowed disabled:opacity-45", po = /* @__PURE__ */ G({
1329
+ }), Ja = { class: "flex min-w-0 flex-wrap items-center gap-1.5 py-0.5" }, Za = { class: "truncate" }, Xa = ["disabled", "aria-label", "onClick"], Qa = ["id", "disabled", "aria-expanded", "aria-invalid", "aria-describedby", "aria-busy"], el = ["id", "disabled", "aria-invalid", "aria-describedby", "aria-busy", "onClick"], tl = { class: "max-h-72 overflow-y-auto" }, al = { class: "flex items-center justify-between gap-2" }, Pe = "inline-flex min-h-7 cursor-pointer items-center gap-1 rounded-control bg-fill px-2.5 py-1 text-body text-content-muted hover:bg-fill-strong focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-border-focus disabled:cursor-not-allowed disabled:opacity-45", ho = /* @__PURE__ */ A({
1317
1330
  __name: "MultiSelectField",
1318
1331
  props: /* @__PURE__ */ le(/* @__PURE__ */ ue({
1319
1332
  label: {},
@@ -1335,30 +1348,30 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1335
1348
  modelModifiers: {}
1336
1349
  }),
1337
1350
  emits: ["update:modelValue"],
1338
- setup(r) {
1339
- const a = r, e = re(r, "modelValue"), { t } = oe(), n = Re(), o = U("sheet"), c = A(!1), i = qt(() => a.options, (s) => {
1340
- const m = e.value.filter((b) => s.some((C) => C.value === b));
1351
+ setup(o) {
1352
+ const a = o, e = re(o, "modelValue"), { t } = oe(), s = Me(), n = U("sheet"), c = P(!1), i = Dt(() => a.options, (r) => {
1353
+ const m = e.value.filter((b) => r.some((C) => C.value === b));
1341
1354
  m.length !== e.value.length && (e.value = m);
1342
- }), p = h(() => e.value.flatMap((s) => {
1343
- const m = i.known.value.find((b) => b.value === s) ?? a.selected.find((b) => b.value === s);
1355
+ }), p = h(() => e.value.flatMap((r) => {
1356
+ const m = i.known.value.find((b) => b.value === r) ?? a.selected.find((b) => b.value === r);
1344
1357
  return m ? [m] : [];
1345
1358
  })), k = h(() => a.placeholder ?? t("core.form.select.choose"));
1346
- function w(s) {
1347
- s !== null && (e.value = e.value.includes(s) ? e.value.filter((m) => m !== s) : [...e.value, s]);
1359
+ function w(r) {
1360
+ r !== null && (e.value = e.value.includes(r) ? e.value.filter((m) => m !== r) : [...e.value, r]);
1348
1361
  }
1349
- const $ = (s) => e.value = e.value.filter((m) => m !== s);
1350
- return (s, m) => (u(), D(ge, W(l(de)(a), {
1362
+ const $ = (r) => e.value = e.value.filter((m) => m !== r);
1363
+ return (r, m) => (u(), D(ge, W(l(de)(a), {
1351
1364
  value: p.value.length ? p.value.map((b) => b.label).join(", ") : null,
1352
1365
  "row-layout": "stacked"
1353
1366
  }), J({
1354
1367
  default: f(({ id: b, describedby: C, invalid: q }) => [
1355
- y("div", Ha, [
1368
+ y("div", Ja, [
1356
1369
  (u(!0), g(ie, null, xe(p.value, (x) => (u(), g("span", {
1357
1370
  key: String(x.value),
1358
1371
  "data-test": "chip",
1359
1372
  class: "inline-flex min-h-7 max-w-full items-center gap-1 rounded-full bg-tint-soft pl-3 pr-1 text-subheadline font-medium text-content-link"
1360
1373
  }, [
1361
- y("span", Ua, _(x.label), 1),
1374
+ y("span", Za, _(x.label), 1),
1362
1375
  y("button", {
1363
1376
  type: "button",
1364
1377
  disabled: a.disabled,
@@ -1370,9 +1383,9 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1370
1383
  name: "close",
1371
1384
  size: 12
1372
1385
  })
1373
- ], 8, Ya)
1386
+ ], 8, Xa)
1374
1387
  ]))), 128)),
1375
- l(n) ? (u(), g("button", {
1388
+ l(s) ? (u(), g("button", {
1376
1389
  key: 0,
1377
1390
  id: b,
1378
1391
  type: "button",
@@ -1383,7 +1396,7 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1383
1396
  "aria-describedby": C,
1384
1397
  "aria-busy": l(i).loading.value || void 0,
1385
1398
  class: I(Pe),
1386
- onClick: m[0] || (m[0] = (x) => o.value?.present())
1399
+ onClick: m[0] || (m[0] = (x) => n.value?.present())
1387
1400
  }, [
1388
1401
  l(i).loading.value ? (u(), D(l(Z), {
1389
1402
  key: 0,
@@ -1392,7 +1405,7 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1392
1405
  class: "shrink-0 animate-spin"
1393
1406
  })) : L("", !0),
1394
1407
  H(" " + _(p.value.length ? l(t)("core.actions.edit") : k.value), 1)
1395
- ], 8, Wa)) : (u(), D(Me, {
1408
+ ], 8, Qa)) : (u(), D(je, {
1396
1409
  key: 1,
1397
1410
  label: a.label ?? k.value,
1398
1411
  width: "lg",
@@ -1420,10 +1433,10 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1420
1433
  class: "shrink-0 animate-spin"
1421
1434
  })) : L("", !0),
1422
1435
  H(" " + _(p.value.length ? l(t)("core.actions.edit") : k.value), 1)
1423
- ], 16, Ja)
1436
+ ], 16, el)
1424
1437
  ]),
1425
1438
  default: f(() => [
1426
- y("div", Za, [
1439
+ y("div", tl, [
1427
1440
  j(Ge, {
1428
1441
  options: l(i).rows.value,
1429
1442
  status: l(i).status.value,
@@ -1434,10 +1447,10 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1434
1447
  onSelect: w,
1435
1448
  onRetry: m[1] || (m[1] = (x) => l(i).reload())
1436
1449
  }, J({ _: 2 }, [
1437
- s.$slots.option ? {
1450
+ r.$slots.option ? {
1438
1451
  name: "option",
1439
1452
  fn: f((x) => [
1440
- B(s.$slots, "option", ze(Ve(x)))
1453
+ F(r.$slots, "option", ze(Ve(x)))
1441
1454
  ]),
1442
1455
  key: "0"
1443
1456
  } : void 0
@@ -1447,17 +1460,17 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1447
1460
  _: 2
1448
1461
  }, 1032, ["label"]))
1449
1462
  ]),
1450
- l(n) ? (u(), D(Vt, {
1463
+ l(s) ? (u(), D(qt, {
1451
1464
  key: 0,
1452
1465
  ref_key: "sheet",
1453
- ref: o,
1466
+ ref: n,
1454
1467
  title: a.label ?? k.value,
1455
1468
  grouped: "",
1456
1469
  onPresented: m[5] || (m[5] = (x) => c.value = !0),
1457
1470
  onDismissed: m[6] || (m[6] = (x) => c.value = !1)
1458
1471
  }, {
1459
1472
  footer: f(() => [
1460
- y("div", Xa, [
1473
+ y("div", al, [
1461
1474
  j(be, {
1462
1475
  prominence: "plain",
1463
1476
  disabled: e.value.length === 0,
@@ -1470,7 +1483,7 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1470
1483
  }, 8, ["disabled"]),
1471
1484
  j(be, {
1472
1485
  prominence: "primary",
1473
- onClick: m[4] || (m[4] = (x) => o.value?.dismiss())
1486
+ onClick: m[4] || (m[4] = (x) => n.value?.dismiss())
1474
1487
  }, {
1475
1488
  default: f(() => [
1476
1489
  H(_(l(t)("core.form.select.done")), 1)
@@ -1489,10 +1502,10 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1489
1502
  onSelect: w,
1490
1503
  onRetry: m[2] || (m[2] = (x) => l(i).reload())
1491
1504
  }, J({ _: 2 }, [
1492
- s.$slots.option ? {
1505
+ r.$slots.option ? {
1493
1506
  name: "option",
1494
1507
  fn: f((x) => [
1495
- B(s.$slots, "option", ze(Ve(x)))
1508
+ F(r.$slots, "option", ze(Ve(x)))
1496
1509
  ]),
1497
1510
  key: "0"
1498
1511
  } : void 0
@@ -1503,30 +1516,30 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1503
1516
  ]),
1504
1517
  _: 2
1505
1518
  }, [
1506
- s.$slots.trailing ? {
1519
+ r.$slots.trailing ? {
1507
1520
  name: "trailing",
1508
1521
  fn: f(() => [
1509
- B(s.$slots, "trailing")
1522
+ F(r.$slots, "trailing")
1510
1523
  ]),
1511
1524
  key: "0"
1512
1525
  } : void 0,
1513
- s.$slots.labelTrailing ? {
1526
+ r.$slots.labelTrailing ? {
1514
1527
  name: "labelTrailing",
1515
1528
  fn: f(() => [
1516
- B(s.$slots, "labelTrailing")
1529
+ F(r.$slots, "labelTrailing")
1517
1530
  ]),
1518
1531
  key: "1"
1519
1532
  } : void 0,
1520
- s.$slots.readonly ? {
1533
+ r.$slots.readonly ? {
1521
1534
  name: "readonly",
1522
1535
  fn: f(() => [
1523
- B(s.$slots, "readonly")
1536
+ F(r.$slots, "readonly")
1524
1537
  ]),
1525
1538
  key: "2"
1526
1539
  } : void 0
1527
1540
  ]), 1040, ["value"]));
1528
1541
  }
1529
- }), Qa = ["aria-label"], el = ["src"], tl = { class: "flex flex-wrap items-center gap-3" }, al = ["id", "accept", "disabled", "aria-describedby", "aria-invalid"], ll = ["aria-label"], ol = ["src"], bo = /* @__PURE__ */ G({
1542
+ }), ll = ["aria-label"], ol = ["src"], nl = { class: "flex flex-wrap items-center gap-3" }, sl = ["id", "accept", "disabled", "aria-describedby", "aria-invalid"], rl = ["aria-label"], il = ["src"], ko = /* @__PURE__ */ A({
1530
1543
  __name: "PhotoField",
1531
1544
  props: /* @__PURE__ */ le(/* @__PURE__ */ ue({
1532
1545
  label: {},
@@ -1546,25 +1559,25 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1546
1559
  modelModifiers: {}
1547
1560
  }),
1548
1561
  emits: ["update:modelValue"],
1549
- setup(r) {
1550
- const a = r, e = re(r, "modelValue"), { t } = oe(), n = U("chooser"), o = A(null), c = A(null);
1562
+ setup(o) {
1563
+ const a = o, e = re(o, "modelValue"), { t } = oe(), s = U("chooser"), n = P(null), c = P(null);
1551
1564
  function i() {
1552
1565
  c.value && URL.revokeObjectURL(c.value), c.value = null;
1553
1566
  }
1554
1567
  ye(
1555
1568
  e,
1556
- (s) => {
1557
- i(), s instanceof File && (c.value = URL.createObjectURL(s)), s === null && n.value && (n.value.value = "");
1569
+ (r) => {
1570
+ i(), r instanceof File && (c.value = URL.createObjectURL(r)), r === null && s.value && (s.value.value = "");
1558
1571
  },
1559
1572
  { immediate: !0 }
1560
- ), Ye(i);
1573
+ ), We(i);
1561
1574
  const p = h(() => e.value instanceof File ? c.value : e.value), k = U("viewer"), w = h(() => p.value ? [{ src: p.value, alt: a.label ?? t("core.viewer.label"), downloadName: e.value instanceof File ? e.value.name : void 0 }] : []);
1562
- function $(s) {
1563
- if (!s) return;
1564
- const m = Qe(s, { accept: a.accept, maxSize: a.maxSize });
1565
- m ? o.value = m === "invalid_type" ? t("core.form.file.invalid_type") : t("core.form.file.too_large", { size: Be(a.maxSize) }) : (o.value = null, e.value = s);
1575
+ function $(r) {
1576
+ if (!r) return;
1577
+ const m = et(r, { accept: a.accept, maxSize: a.maxSize });
1578
+ m ? n.value = m === "invalid_type" ? t("core.form.file.invalid_type") : t("core.form.file.too_large", { size: Fe(a.maxSize) }) : (n.value = null, e.value = r);
1566
1579
  }
1567
- return (s, m) => (u(), D(ge, W({ ...l(de)(a), error: o.value ?? a.error }, {
1580
+ return (r, m) => (u(), D(ge, W({ ...l(de)(a), error: n.value ?? a.error }, {
1568
1581
  value: p.value ? l(t)("core.form.file.choose") : null,
1569
1582
  "row-layout": "stacked"
1570
1583
  }), J({
@@ -1581,8 +1594,8 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1581
1594
  src: p.value,
1582
1595
  alt: "",
1583
1596
  class: "size-40 rounded-group object-cover"
1584
- }, null, 8, el)
1585
- ], 8, Qa)) : L("", !0),
1597
+ }, null, 8, ol)
1598
+ ], 8, ll)) : L("", !0),
1586
1599
  p.value ? (u(), D(Ke, {
1587
1600
  key: 1,
1588
1601
  ref_key: "viewer",
@@ -1591,11 +1604,11 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1591
1604
  }, null, 8, ["items"])) : L("", !0)
1592
1605
  ]),
1593
1606
  default: f(({ id: b, describedby: C, invalid: q }) => [
1594
- y("div", tl, [
1607
+ y("div", nl, [
1595
1608
  y("input", {
1596
1609
  id: b,
1597
1610
  ref_key: "chooser",
1598
- ref: n,
1611
+ ref: s,
1599
1612
  type: "file",
1600
1613
  class: "sr-only",
1601
1614
  tabindex: "-1",
@@ -1604,7 +1617,7 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1604
1617
  "aria-describedby": C,
1605
1618
  "aria-invalid": q || void 0,
1606
1619
  onChange: m[1] || (m[1] = (x) => $(x.target.files?.[0]))
1607
- }, null, 40, al),
1620
+ }, null, 40, sl),
1608
1621
  p.value ? (u(), g("button", {
1609
1622
  key: 0,
1610
1623
  type: "button",
@@ -1618,11 +1631,11 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1618
1631
  alt: "",
1619
1632
  "data-test": "photo-preview",
1620
1633
  class: "size-28 rounded-group object-cover"
1621
- }, null, 8, ol)
1622
- ], 8, ll)) : L("", !0),
1634
+ }, null, 8, il)
1635
+ ], 8, rl)) : L("", !0),
1623
1636
  j(be, {
1624
1637
  disabled: a.disabled,
1625
- onClick: m[3] || (m[3] = (x) => n.value?.click())
1638
+ onClick: m[3] || (m[3] = (x) => s.value?.click())
1626
1639
  }, {
1627
1640
  default: f(() => [
1628
1641
  H(_(l(t)("core.form.file.choose")), 1)
@@ -1635,7 +1648,7 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1635
1648
  tone: "critical",
1636
1649
  disabled: a.disabled,
1637
1650
  onClick: m[4] || (m[4] = (x) => {
1638
- e.value = null, o.value = null;
1651
+ e.value = null, n.value = null;
1639
1652
  })
1640
1653
  }, {
1641
1654
  default: f(() => [
@@ -1653,69 +1666,69 @@ const La = ["id", "aria-labelledby"], Ta = ["id", "value", "lang", "name", "rows
1653
1666
  ]),
1654
1667
  _: 2
1655
1668
  }, [
1656
- s.$slots.trailing ? {
1669
+ r.$slots.trailing ? {
1657
1670
  name: "trailing",
1658
1671
  fn: f(() => [
1659
- B(s.$slots, "trailing")
1672
+ F(r.$slots, "trailing")
1660
1673
  ]),
1661
1674
  key: "0"
1662
1675
  } : void 0,
1663
- s.$slots.labelTrailing ? {
1676
+ r.$slots.labelTrailing ? {
1664
1677
  name: "labelTrailing",
1665
1678
  fn: f(() => [
1666
- B(s.$slots, "labelTrailing")
1679
+ F(r.$slots, "labelTrailing")
1667
1680
  ]),
1668
1681
  key: "1"
1669
1682
  } : void 0
1670
1683
  ]), 1040, ["value"]));
1671
1684
  }
1672
- }), nl = { hidden: "" }, sl = /* @__PURE__ */ G({
1685
+ }), ul = { hidden: "" }, dl = /* @__PURE__ */ A({
1673
1686
  __name: "EditorChrome",
1674
1687
  props: {
1675
1688
  options: {}
1676
1689
  },
1677
- setup(r) {
1678
- return It(r.options), (e, t) => (u(), g("span", nl));
1690
+ setup(o) {
1691
+ return Ot(o.options), (e, t) => (u(), g("span", ul));
1679
1692
  }
1680
1693
  });
1681
- function rl(r) {
1682
- const a = A(0);
1694
+ function cl(o) {
1695
+ const a = P(0);
1683
1696
  let e = 0;
1684
1697
  const t = () => {
1685
1698
  e || (e = requestAnimationFrame(() => {
1686
1699
  e = 0, a.value++;
1687
1700
  }));
1688
- }, n = typeof MutationObserver > "u" ? null : new MutationObserver(t);
1701
+ }, s = typeof MutationObserver > "u" ? null : new MutationObserver(t);
1689
1702
  ye(
1690
- () => r.sections.value,
1703
+ () => o.sections.value,
1691
1704
  (i) => {
1692
- n?.disconnect();
1705
+ s?.disconnect();
1693
1706
  for (const p of i)
1694
- n?.observe(p.element, { subtree: !0, childList: !0, attributes: !0, attributeFilter: ["data-field-error", "data-field-required", "data-field-filled"] });
1707
+ s?.observe(p.element, { subtree: !0, childList: !0, attributes: !0, attributeFilter: ["data-field-error", "data-field-required", "data-field-filled"] });
1695
1708
  t();
1696
1709
  },
1697
1710
  { immediate: !0 }
1698
- ), lt() && ot(() => {
1699
- n?.disconnect(), e && cancelAnimationFrame(e);
1711
+ ), nt() && st(() => {
1712
+ s?.disconnect(), e && cancelAnimationFrame(e);
1700
1713
  });
1701
- const o = h(() => (a.value, Object.fromEntries(
1702
- r.sections.value.map((i) => [
1714
+ const n = h(() => (a.value, Object.fromEntries(
1715
+ o.sections.value.map((i) => [
1703
1716
  i.id,
1704
1717
  {
1705
1718
  errors: i.element.querySelectorAll("[data-field-error]").length,
1706
1719
  required: { total: i.element.querySelectorAll("[data-field-required]").length, filled: i.element.querySelectorAll("[data-field-required][data-field-filled]").length }
1707
1720
  }
1708
1721
  ])
1709
- ))), c = h(() => Object.values(o.value).reduce((i, p) => ({ filled: i.filled + p.required.filled, total: i.total + p.required.total }), { filled: 0, total: 0 }));
1710
- return { states: o, totals: c };
1722
+ ))), c = h(() => Object.values(n.value).reduce((i, p) => ({ filled: i.filled + p.required.filled, total: i.total + p.required.total }), { filled: 0, total: 0 }));
1723
+ return { states: n, totals: c };
1711
1724
  }
1712
- const il = {
1725
+ const fl = {
1713
1726
  class: "grid min-w-0 grid-cols-1 items-start gap-8 lg:grid-cols-[12.5rem_minmax(0,1fr)]",
1714
1727
  "data-test": "editor-page"
1715
- }, ul = {
1728
+ }, ml = {
1716
1729
  key: 0,
1717
1730
  class: "sticky top-[calc(var(--app-bar-height)+1.5rem+var(--shell-banner-h,0px))] hidden min-w-0 flex-col gap-4 self-start lg:flex"
1718
- }, yo = /* @__PURE__ */ G({
1731
+ }, xo = /* @__PURE__ */ A({
1719
1732
  __name: "EditorPage",
1720
1733
  props: {
1721
1734
  title: {},
@@ -1727,11 +1740,11 @@ const il = {
1727
1740
  disabledWhileClean: { type: Boolean, default: !1 }
1728
1741
  },
1729
1742
  emits: ["save", "cancel"],
1730
- setup(r, { emit: a }) {
1731
- const e = r, t = a, { t: n } = oe(), o = Re(), c = jt(), { states: i, totals: p } = rl(c), k = U("content"), w = h(
1743
+ setup(o, { emit: a }) {
1744
+ const e = o, t = a, { t: s } = oe(), n = Me(), c = It(), { states: i, totals: p } = cl(c), k = U("content"), w = h(
1732
1745
  () => e.form ? {
1733
1746
  form: e.form,
1734
- label: () => e.saveLabel ?? n("core.actions.save"),
1747
+ label: () => e.saveLabel ?? s("core.actions.save"),
1735
1748
  allowed: () => e.canSave,
1736
1749
  disabledWhileClean: () => e.disabledWhileClean,
1737
1750
  save: () => {
@@ -1744,86 +1757,86 @@ const il = {
1744
1757
  );
1745
1758
  ye(
1746
1759
  () => e.form?.failure.value,
1747
- async (s) => {
1748
- s?.kind === "invalid" && (await he(), await Te(k.value ?? document, c));
1760
+ async (r) => {
1761
+ r?.kind === "invalid" && (await he(), await Te(k.value ?? document, c));
1749
1762
  }
1750
1763
  );
1751
- function $(s) {
1752
- const m = c.sections.value.find((b) => b.id === s)?.element;
1764
+ function $(r) {
1765
+ const m = c.sections.value.find((b) => b.id === r)?.element;
1753
1766
  m && he(() => Te(m));
1754
1767
  }
1755
- return (s, m) => (u(), D(Dt, {
1768
+ return (r, m) => (u(), D(Rt, {
1756
1769
  title: e.title,
1757
1770
  back: e.back,
1758
1771
  width: "content"
1759
1772
  }, J({
1760
1773
  default: f(() => [
1761
- w.value ? (u(), D(sl, {
1774
+ w.value ? (u(), D(dl, {
1762
1775
  key: 0,
1763
1776
  options: w.value
1764
1777
  }, null, 8, ["options"])) : L("", !0),
1765
- y("div", il, [
1766
- l(o) ? L("", !0) : (u(), g("aside", ul, [
1767
- j(Rt, {
1778
+ y("div", fl, [
1779
+ l(n) ? L("", !0) : (u(), g("aside", ml, [
1780
+ j(Mt, {
1768
1781
  standalone: "",
1769
1782
  states: l(i),
1770
1783
  progress: l(p),
1771
1784
  onSelect: $
1772
1785
  }, null, 8, ["states", "progress"]),
1773
- B(s.$slots, "aside")
1786
+ F(r.$slots, "aside")
1774
1787
  ])),
1775
1788
  y("div", {
1776
1789
  ref_key: "content",
1777
1790
  ref: k,
1778
1791
  class: "flex min-w-0 flex-col gap-section-gap"
1779
1792
  }, [
1780
- e.form ? (u(), D(He, {
1793
+ e.form ? (u(), D(Ue, {
1781
1794
  key: 0,
1782
1795
  form: e.form,
1783
1796
  label: e.fieldLabel,
1784
1797
  scope: k.value
1785
1798
  }, null, 8, ["form", "label", "scope"])) : L("", !0),
1786
- B(s.$slots, "default")
1799
+ F(r.$slots, "default")
1787
1800
  ], 512)
1788
1801
  ]),
1789
- l(o) ? (u(), D(Mt, {
1802
+ l(n) ? (u(), D(jt, {
1790
1803
  key: 1,
1791
1804
  states: l(i)
1792
1805
  }, null, 8, ["states"])) : L("", !0)
1793
1806
  ]),
1794
1807
  _: 2
1795
1808
  }, [
1796
- s.$slots.header ? {
1809
+ r.$slots.header ? {
1797
1810
  name: "header",
1798
1811
  fn: f(() => [
1799
- B(s.$slots, "header")
1812
+ F(r.$slots, "header")
1800
1813
  ]),
1801
1814
  key: "0"
1802
1815
  } : void 0,
1803
- s.$slots.pager ? {
1816
+ r.$slots.pager ? {
1804
1817
  name: "pager",
1805
1818
  fn: f(() => [
1806
- B(s.$slots, "pager")
1819
+ F(r.$slots, "pager")
1807
1820
  ]),
1808
1821
  key: "1"
1809
1822
  } : void 0,
1810
- s.$slots.notices ? {
1823
+ r.$slots.notices ? {
1811
1824
  name: "notices",
1812
1825
  fn: f(() => [
1813
- B(s.$slots, "notices")
1826
+ F(r.$slots, "notices")
1814
1827
  ]),
1815
1828
  key: "2"
1816
1829
  } : void 0,
1817
- s.$slots.bottom ? {
1830
+ r.$slots.bottom ? {
1818
1831
  name: "bottom",
1819
1832
  fn: f(() => [
1820
- B(s.$slots, "bottom")
1833
+ F(r.$slots, "bottom")
1821
1834
  ]),
1822
1835
  key: "3"
1823
1836
  } : void 0
1824
1837
  ]), 1032, ["title", "back"]));
1825
1838
  }
1826
- }), dl = ["value", "aria-label", "disabled", "aria-invalid", "placeholder"], go = /* @__PURE__ */ G({
1839
+ }), vl = ["value", "aria-label", "disabled", "aria-invalid", "placeholder"], wo = /* @__PURE__ */ A({
1827
1840
  __name: "NumberCell",
1828
1841
  props: /* @__PURE__ */ le({
1829
1842
  label: {},
@@ -1838,14 +1851,14 @@ const il = {
1838
1851
  modelModifiers: {}
1839
1852
  }),
1840
1853
  emits: ["update:modelValue"],
1841
- setup(r) {
1842
- const a = r, e = re(r, "modelValue");
1843
- function t(o) {
1844
- const c = o.target.value.replace(/\D/g, "");
1854
+ setup(o) {
1855
+ const a = o, e = re(o, "modelValue");
1856
+ function t(n) {
1857
+ const c = n.target.value.replace(/\D/g, "");
1845
1858
  e.value = c === "" ? null : Math.min(a.max, Math.max(a.min, Number(c)));
1846
1859
  }
1847
- const n = (o) => o.target.value = e.value === null ? "" : String(e.value);
1848
- return (o, c) => (u(), g("input", {
1860
+ const s = (n) => n.target.value = e.value === null ? "" : String(e.value);
1861
+ return (n, c) => (u(), g("input", {
1849
1862
  value: e.value ?? "",
1850
1863
  type: "text",
1851
1864
  inputmode: "numeric",
@@ -1856,87 +1869,87 @@ const il = {
1856
1869
  placeholder: a.placeholder,
1857
1870
  class: I(["rounded-control bg-fill px-2 py-1 text-right text-body tabular-nums text-content-strong transition-[background-color,box-shadow] duration-motion-fast ease-motion-standard placeholder:text-content-disabled focus:bg-surface-cell focus:outline-none focus:ring-[1.5px] focus:ring-inset focus:ring-border-focus disabled:opacity-45", [a.wide ? "w-28" : "w-16", a.invalid ? "bg-status-danger-surface ring-[1.5px] ring-inset ring-border-destructive" : ""]]),
1858
1871
  onInput: t,
1859
- onBlur: n
1860
- }, null, 42, dl));
1872
+ onBlur: s
1873
+ }, null, 42, vl));
1861
1874
  }
1862
- }), je = "vue-core:step-draft:";
1863
- function Ie(r) {
1875
+ }), Ie = "vue-core:step-draft:";
1876
+ function Oe(o) {
1864
1877
  try {
1865
- return (r.storage === "local" ? window.localStorage : window.sessionStorage) ?? null;
1878
+ return (o.storage === "local" ? window.localStorage : window.sessionStorage) ?? null;
1866
1879
  } catch {
1867
1880
  return null;
1868
1881
  }
1869
1882
  }
1870
- function cl(r) {
1883
+ function pl(o) {
1871
1884
  try {
1872
- const a = Ie(r)?.getItem(je + r.key);
1885
+ const a = Oe(o)?.getItem(Ie + o.key);
1873
1886
  if (!a) return null;
1874
1887
  const e = JSON.parse(a);
1875
- return !e || e.version !== (r.version ?? 1) || typeof e.values != "object" || e.values === null || typeof e.step != "string" || !Array.isArray(e.passed) ? null : e;
1888
+ return !e || e.version !== (o.version ?? 1) || typeof e.values != "object" || e.values === null || typeof e.step != "string" || !Array.isArray(e.passed) ? null : e;
1876
1889
  } catch {
1877
1890
  return null;
1878
1891
  }
1879
1892
  }
1880
- function fl(r, a) {
1893
+ function bl(o, a) {
1881
1894
  try {
1882
- const e = Ie(r);
1895
+ const e = Oe(o);
1883
1896
  if (!e) return !1;
1884
- const t = (n, o) => typeof Blob < "u" && o instanceof Blob ? null : o;
1885
- return e.setItem(je + r.key, JSON.stringify({ version: r.version ?? 1, ...a }, t)), !0;
1897
+ const t = (s, n) => typeof Blob < "u" && n instanceof Blob ? null : n;
1898
+ return e.setItem(Ie + o.key, JSON.stringify({ version: o.version ?? 1, ...a }, t)), !0;
1886
1899
  } catch {
1887
1900
  return !1;
1888
1901
  }
1889
1902
  }
1890
- function Ae(r) {
1903
+ function He(o) {
1891
1904
  try {
1892
- Ie(r)?.removeItem(je + r.key);
1905
+ Oe(o)?.removeItem(Ie + o.key);
1893
1906
  } catch {
1894
1907
  }
1895
1908
  }
1896
- function ml(r, a) {
1897
- for (const [e, t] of Object.entries(r)) {
1909
+ function yl(o, a) {
1910
+ for (const [e, t] of Object.entries(o)) {
1898
1911
  if (!(e in a)) continue;
1899
- const n = a[e];
1900
- (n === null || t === null || t === void 0 || typeof n == typeof t && Array.isArray(n) === Array.isArray(t)) && (r[e] = n);
1912
+ const s = a[e];
1913
+ (s === null || t === null || t === void 0 || typeof s == typeof t && Array.isArray(s) === Array.isArray(t)) && (o[e] = s);
1901
1914
  }
1902
1915
  }
1903
- function ho(r, a) {
1904
- const { t: e } = oe(), t = h(() => nt(a.steps));
1916
+ function $o(o, a) {
1917
+ const { t: e } = oe(), t = h(() => rt(a.steps));
1905
1918
  if (t.value.length === 0) throw new Error("useStepForm: a flow needs at least one step.");
1906
- const n = A(t.value[0].name), o = Ee(/* @__PURE__ */ new Set()), c = Ee(/* @__PURE__ */ new Set([t.value[0].name])), i = A(null), p = A(!1), k = A(0), w = A(!1), $ = A(!1);
1907
- let s = !1, m = 0;
1908
- const b = h(() => Math.max(0, t.value.findIndex((d) => d.name === n.value))), C = (d) => d.fields?.filter((z) => r.errors.has(z)).length ?? 0, q = h(
1919
+ const s = P(t.value[0].name), n = Ne(/* @__PURE__ */ new Set()), c = Ne(/* @__PURE__ */ new Set([t.value[0].name])), i = P(null), p = P(!1), k = P(0), w = P(!1), $ = P(!1);
1920
+ let r = !1, m = 0;
1921
+ const b = h(() => Math.max(0, t.value.findIndex((d) => d.name === s.value))), C = (d) => d.fields?.filter((z) => o.errors.has(z)).length ?? 0, q = h(
1909
1922
  () => t.value.map((d, z) => {
1910
1923
  const v = C(d), V = z === b.value;
1911
1924
  return {
1912
1925
  name: d.name,
1913
1926
  label: d.label,
1914
1927
  position: z + 1,
1915
- state: V ? "current" : o.has(d.name) && v === 0 ? "done" : "todo",
1928
+ state: V ? "current" : n.has(d.name) && v === 0 ? "done" : "todo",
1916
1929
  errors: v,
1917
1930
  reachable: !V && (c.has(d.name) || z < b.value)
1918
1931
  };
1919
1932
  })
1920
- ), x = h(() => q.value[b.value]), O = h(() => q.value.length), R = h(() => b.value === 0), X = h(() => b.value === O.value - 1), M = h(() => p.value || r.submitting.value);
1933
+ ), x = h(() => q.value[b.value]), O = h(() => q.value.length), R = h(() => b.value === 0), X = h(() => b.value === O.value - 1), M = h(() => p.value || o.submitting.value);
1921
1934
  function ne(d) {
1922
1935
  const z = t.value[d];
1923
- z && (i.value = d > b.value ? "forward" : "back", n.value = z.name, c.add(z.name), m = d, w.value = !1);
1936
+ z && (i.value = d > b.value ? "forward" : "back", s.value = z.name, c.add(z.name), m = d, w.value = !1);
1924
1937
  }
1925
1938
  ye(
1926
1939
  () => t.value.map((d) => d.name).join("\0"),
1927
1940
  () => {
1928
- const d = t.value, z = d.findIndex((V) => V.name === n.value), v = z === -1 ? Math.min(m, d.length - 1) : z;
1929
- n.value = d[v].name, m = v, d.forEach((V, S) => {
1930
- S > v && (o.delete(V.name), c.delete(V.name));
1931
- }), c.add(n.value);
1932
- for (const V of [o, c]) for (const S of [...V]) d.some((N) => N.name === S) || V.delete(S);
1941
+ const d = t.value, z = d.findIndex((V) => V.name === s.value), v = z === -1 ? Math.min(m, d.length - 1) : z;
1942
+ s.value = d[v].name, m = v, d.forEach((V, S) => {
1943
+ S > v && (n.delete(V.name), c.delete(V.name));
1944
+ }), c.add(s.value);
1945
+ for (const V of [n, c]) for (const S of [...V]) d.some((N) => N.name === S) || V.delete(S);
1933
1946
  }
1934
1947
  );
1935
1948
  function Q(d) {
1936
1949
  const z = d.fields;
1937
1950
  if (!z?.length) return !0;
1938
- const v = Object.entries(r.errors.all()).filter(([S]) => !z.includes(tt(S))), V = r.check(d.fields);
1939
- return v.length > 0 && r.errors.set({ ...Object.fromEntries(v), ...r.errors.all() }), V;
1951
+ const v = Object.entries(o.errors.all()).filter(([S]) => !z.includes(lt(S))), V = o.check(d.fields);
1952
+ return v.length > 0 && o.errors.set({ ...Object.fromEntries(v), ...o.errors.all() }), V;
1940
1953
  }
1941
1954
  async function te(d) {
1942
1955
  if (!Q(d))
@@ -1951,9 +1964,9 @@ function ho(r, a) {
1951
1964
  return k.value++, !1;
1952
1965
  }
1953
1966
  async function fe() {
1954
- const d = await r.submit(a.submit, a.submitOptions);
1967
+ const d = await o.submit(a.submit, a.submitOptions);
1955
1968
  if (d.status === "saved" || d.status === "saved-refresh-failed")
1956
- return s = !0, se(), a.onSaved?.(d.value), !0;
1969
+ return r = !0, se(), a.onSaved?.(d.value), !0;
1957
1970
  if (d.status === "failed" && (k.value++, x.value.errors === 0)) {
1958
1971
  const z = q.value.findIndex((v) => v.errors > 0);
1959
1972
  z !== -1 && ne(z);
@@ -1963,7 +1976,7 @@ function ho(r, a) {
1963
1976
  async function me() {
1964
1977
  if (M.value) return !1;
1965
1978
  const d = t.value[b.value];
1966
- return await te(d) ? (o.add(d.name), b.value < O.value - 1 ? (ne(b.value + 1), !0) : fe()) : !1;
1979
+ return await te(d) ? (n.add(d.name), b.value < O.value - 1 ? (ne(b.value + 1), !0) : fe()) : !1;
1967
1980
  }
1968
1981
  async function T(d) {
1969
1982
  if (M.value) return !1;
@@ -1975,48 +1988,48 @@ function ho(r, a) {
1975
1988
  for (; b.value < z; ) if (!await me()) return !1;
1976
1989
  return b.value === z;
1977
1990
  }
1978
- const K = a.draft;
1991
+ const G = a.draft;
1979
1992
  let E;
1980
1993
  function ae() {
1981
- if (E = void 0, !(!K || s)) {
1982
- if (!r.dirty.value) {
1983
- Ae(K), $.value = !1;
1994
+ if (E = void 0, !(!G || r)) {
1995
+ if (!o.dirty.value) {
1996
+ He(G), $.value = !1;
1984
1997
  return;
1985
1998
  }
1986
- $.value = fl(K, { values: et(r.values), step: n.value, passed: [...o] });
1999
+ $.value = bl(G, { values: at(o.values), step: s.value, passed: [...n] });
1987
2000
  }
1988
2001
  }
1989
2002
  function se() {
1990
- s = !0, clearTimeout(E), E = void 0, $.value = !1, K && Ae(K);
2003
+ r = !0, clearTimeout(E), E = void 0, $.value = !1, G && He(G);
1991
2004
  }
1992
- if (K) {
1993
- const d = cl(K);
2005
+ if (G) {
2006
+ const d = pl(G);
1994
2007
  if (d) {
1995
- ml(r.values, d.values);
2008
+ yl(o.values, d.values);
1996
2009
  const z = t.value.map((v) => v.name);
1997
- z.includes(d.step) && (n.value = d.step);
1998
- for (const v of d.passed) z.includes(v) && o.add(v);
1999
- for (const v of [...o, n.value]) c.add(v);
2000
- m = b.value, w.value = r.dirty.value, $.value = w.value;
2010
+ z.includes(d.step) && (s.value = d.step);
2011
+ for (const v of d.passed) z.includes(v) && n.add(v);
2012
+ for (const v of [...n, s.value]) c.add(v);
2013
+ m = b.value, w.value = o.dirty.value, $.value = w.value;
2001
2014
  }
2002
2015
  ye(
2003
- [() => r.values, n, () => [...o].join("\0")],
2016
+ [() => o.values, s, () => [...n].join("\0")],
2004
2017
  () => {
2005
- s || (clearTimeout(E), E = setTimeout(ae, 400));
2018
+ r || (clearTimeout(E), E = setTimeout(ae, 400));
2006
2019
  },
2007
2020
  { deep: !0 }
2008
- ), Ye(() => {
2021
+ ), We(() => {
2009
2022
  E !== void 0 && (clearTimeout(E), ae());
2010
2023
  });
2011
2024
  }
2012
- const { confirmDiscard: ee } = We(() => !s && r.dirty.value);
2013
- Ue(Ot, null) && Et(() => (s || se(), !0));
2025
+ const { confirmDiscard: ee } = Je(() => !r && o.dirty.value);
2026
+ Ye(Et, null) && Nt(() => (r || se(), !0));
2014
2027
  async function ke() {
2015
2028
  const d = await ee();
2016
2029
  return d && se(), d;
2017
2030
  }
2018
2031
  function we() {
2019
- r.reset(), o.clear(), c.clear(), i.value = null, n.value = t.value[0].name, c.add(n.value), m = 0, w.value = !1, se(), s = !1;
2032
+ o.reset(), n.clear(), c.clear(), i.value = null, s.value = t.value[0].name, c.add(s.value), m = 0, w.value = !1, se(), r = !1;
2020
2033
  }
2021
2034
  const Y = h(() => {
2022
2035
  const d = [e("core.steps.position", { current: b.value + 1, total: O.value }), x.value.label];
@@ -2024,7 +2037,7 @@ function ho(r, a) {
2024
2037
  }), ve = h(() => {
2025
2038
  const d = t.value[b.value];
2026
2039
  return d.nextLabel ? d.nextLabel : X.value ? a.submitLabel ?? e("core.actions.save") : e("core.steps.next_named", { step: t.value[b.value + 1].label });
2027
- }), F = h(() => R.value ? null : t.value[b.value - 1].label);
2040
+ }), B = h(() => R.value ? null : t.value[b.value - 1].label);
2028
2041
  return {
2029
2042
  steps: q,
2030
2043
  current: x,
@@ -2036,11 +2049,11 @@ function ho(r, a) {
2036
2049
  direction: i,
2037
2050
  subtitle: Y,
2038
2051
  nextLabel: ve,
2039
- backLabel: F,
2052
+ backLabel: B,
2040
2053
  restored: w,
2041
2054
  refusals: k,
2042
- errors: r.errors,
2043
- failure: r.failure,
2055
+ errors: o.errors,
2056
+ failure: o.failure,
2044
2057
  next: me,
2045
2058
  back: () => ne(b.value - 1),
2046
2059
  goTo: T,
@@ -2049,36 +2062,36 @@ function ho(r, a) {
2049
2062
  bindDialog: () => ({ subtitle: Y.value, primaryLabel: ve.value, status: M.value ? "processing" : "idle", beforeDismiss: ke })
2050
2063
  };
2051
2064
  }
2052
- const vl = {
2065
+ const gl = {
2053
2066
  class: "flex flex-wrap items-center gap-2.5 border-t border-border-separator pt-3.5",
2054
2067
  "data-test": "step-navigation"
2055
- }, pl = /* @__PURE__ */ G({
2068
+ }, hl = /* @__PURE__ */ A({
2056
2069
  __name: "StepNavigation",
2057
2070
  props: {
2058
2071
  flow: {}
2059
2072
  },
2060
2073
  emits: ["cancel"],
2061
- setup(r) {
2062
- const a = r, { t: e } = oe();
2063
- return (t, n) => (u(), g("div", vl, [
2074
+ setup(o) {
2075
+ const a = o, { t: e } = oe();
2076
+ return (t, s) => (u(), g("div", gl, [
2064
2077
  a.flow.backLabel.value ? (u(), D(be, {
2065
2078
  key: 0,
2066
2079
  prominence: "plain",
2067
2080
  icon: "arrowLeftSLine",
2068
2081
  disabled: a.flow.busy.value,
2069
2082
  "data-test": "step-back",
2070
- onClick: n[0] || (n[0] = (o) => a.flow.back())
2083
+ onClick: s[0] || (s[0] = (n) => a.flow.back())
2071
2084
  }, {
2072
2085
  default: f(() => [
2073
2086
  H(_(a.flow.backLabel.value), 1)
2074
2087
  ]),
2075
2088
  _: 1
2076
2089
  }, 8, ["disabled"])) : L("", !0),
2077
- n[3] || (n[3] = y("div", { class: "grow" }, null, -1)),
2090
+ s[3] || (s[3] = y("div", { class: "grow" }, null, -1)),
2078
2091
  j(be, {
2079
2092
  prominence: "plain",
2080
2093
  "data-test": "step-cancel",
2081
- onClick: n[1] || (n[1] = (o) => t.$emit("cancel"))
2094
+ onClick: s[1] || (s[1] = (n) => t.$emit("cancel"))
2082
2095
  }, {
2083
2096
  default: f(() => [
2084
2097
  H(_(l(e)("core.actions.cancel")), 1)
@@ -2089,7 +2102,7 @@ const vl = {
2089
2102
  prominence: "primary",
2090
2103
  processing: a.flow.busy.value,
2091
2104
  "data-test": "step-next",
2092
- onClick: n[2] || (n[2] = (o) => a.flow.next())
2105
+ onClick: s[2] || (s[2] = (n) => a.flow.next())
2093
2106
  }, {
2094
2107
  default: f(() => [
2095
2108
  H(_(a.flow.nextLabel.value), 1)
@@ -2098,87 +2111,87 @@ const vl = {
2098
2111
  }, 8, ["processing"])
2099
2112
  ]));
2100
2113
  }
2101
- }), bl = ["aria-label"], yl = ["aria-current"], gl = ["aria-label"], hl = {
2114
+ }), kl = ["aria-label"], xl = ["aria-current"], wl = ["aria-label"], $l = {
2102
2115
  key: 2,
2103
2116
  class: "sr-only"
2104
- }, kl = {
2117
+ }, _l = {
2105
2118
  key: 1,
2106
2119
  "data-test": "step-dots",
2107
2120
  class: "flex justify-center gap-1.5",
2108
2121
  "aria-hidden": "true"
2109
- }, xl = ["data-state"], wl = /* @__PURE__ */ G({
2122
+ }, Cl = ["data-state"], Sl = /* @__PURE__ */ A({
2110
2123
  __name: "StepProgress",
2111
2124
  props: {
2112
2125
  flow: {},
2113
2126
  progress: { default: "bar" }
2114
2127
  },
2115
- setup(r) {
2116
- const a = r, { t: e } = oe();
2117
- return (t, n) => a.progress === "bar" ? (u(), g("ol", {
2128
+ setup(o) {
2129
+ const a = o, { t: e } = oe();
2130
+ return (t, s) => a.progress === "bar" ? (u(), g("ol", {
2118
2131
  key: 0,
2119
2132
  "aria-label": l(e)("core.steps.label"),
2120
2133
  "data-test": "step-bar",
2121
2134
  class: "grid min-w-0 gap-2",
2122
- style: st({ gridTemplateColumns: `repeat(${a.flow.count.value}, minmax(0, 1fr))` })
2135
+ style: it({ gridTemplateColumns: `repeat(${a.flow.count.value}, minmax(0, 1fr))` })
2123
2136
  }, [
2124
- (u(!0), g(ie, null, xe(a.flow.steps.value, (o) => (u(), g("li", {
2125
- key: o.name,
2137
+ (u(!0), g(ie, null, xe(a.flow.steps.value, (n) => (u(), g("li", {
2138
+ key: n.name,
2126
2139
  class: "flex min-w-0",
2127
- "aria-current": o.state === "current" ? "step" : void 0
2140
+ "aria-current": n.state === "current" ? "step" : void 0
2128
2141
  }, [
2129
- (u(), D(rt(o.reachable ? "button" : "div"), {
2130
- type: o.reachable ? "button" : void 0,
2131
- disabled: o.reachable ? a.flow.busy.value : void 0,
2132
- "data-test": `step-${o.name}`,
2133
- "data-state": o.errors > 0 ? "error" : o.state,
2134
- class: I(["group flex min-w-0 flex-1 flex-col gap-1.5 text-left", o.reachable ? "cursor-pointer rounded-control focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-border-focus disabled:cursor-default" : ""]),
2135
- onClick: (c) => o.reachable ? a.flow.goTo(o.name) : void 0
2142
+ (u(), D(ut(n.reachable ? "button" : "div"), {
2143
+ type: n.reachable ? "button" : void 0,
2144
+ disabled: n.reachable ? a.flow.busy.value : void 0,
2145
+ "data-test": `step-${n.name}`,
2146
+ "data-state": n.errors > 0 ? "error" : n.state,
2147
+ class: I(["group flex min-w-0 flex-1 flex-col gap-1.5 text-left", n.reachable ? "cursor-pointer rounded-control focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-border-focus disabled:cursor-default" : ""]),
2148
+ onClick: (c) => n.reachable ? a.flow.goTo(n.name) : void 0
2136
2149
  }, {
2137
2150
  default: f(() => [
2138
2151
  y("span", {
2139
- class: I(["h-1 rounded-full transition-colors duration-motion-normal", o.errors > 0 ? "bg-status-danger-solid" : o.state === "current" ? "bg-tint" : o.state === "done" ? "bg-control-on" : "bg-fill-strong"]),
2152
+ class: I(["h-1 rounded-full transition-colors duration-motion-normal", n.errors > 0 ? "bg-status-danger-solid" : n.state === "current" ? "bg-tint" : n.state === "done" ? "bg-control-on" : "bg-fill-strong"]),
2140
2153
  "aria-hidden": "true"
2141
2154
  }, null, 2),
2142
2155
  y("span", {
2143
- class: I(["flex min-w-0 items-center gap-1.5 text-footnote", o.state === "current" ? "font-bold text-content-strong" : o.state === "done" ? "font-medium text-content-link" : "font-medium text-content-muted"])
2156
+ class: I(["flex min-w-0 items-center gap-1.5 text-footnote", n.state === "current" ? "font-bold text-content-strong" : n.state === "done" ? "font-medium text-content-link" : "font-medium text-content-muted"])
2144
2157
  }, [
2145
- o.state === "done" ? (u(), D(l(Z), {
2158
+ n.state === "done" ? (u(), D(l(Z), {
2146
2159
  key: 0,
2147
2160
  name: "checkCustom",
2148
2161
  size: 12,
2149
2162
  class: "shrink-0"
2150
2163
  })) : L("", !0),
2151
2164
  y("span", {
2152
- class: I(["truncate", o.reachable ? "group-hover:text-content-link" : ""])
2153
- }, _(o.position) + ". " + _(o.label), 3),
2154
- o.errors > 0 ? (u(), g("span", {
2165
+ class: I(["truncate", n.reachable ? "group-hover:text-content-link" : ""])
2166
+ }, _(n.position) + ". " + _(n.label), 3),
2167
+ n.errors > 0 ? (u(), g("span", {
2155
2168
  key: 1,
2156
2169
  "data-test": "step-errors",
2157
- "aria-label": l(e)("core.form.sections.errors", { count: o.errors }),
2170
+ "aria-label": l(e)("core.form.sections.errors", { count: n.errors }),
2158
2171
  class: "min-w-4.5 shrink-0 rounded-full bg-status-danger-solid px-1.5 text-center text-caption font-semibold text-white"
2159
- }, _(o.errors), 9, gl)) : L("", !0),
2160
- o.state === "done" ? (u(), g("span", hl, _(l(e)("core.steps.done")), 1)) : L("", !0)
2172
+ }, _(n.errors), 9, wl)) : L("", !0),
2173
+ n.state === "done" ? (u(), g("span", $l, _(l(e)("core.steps.done")), 1)) : L("", !0)
2161
2174
  ], 2)
2162
2175
  ]),
2163
2176
  _: 2
2164
2177
  }, 1032, ["type", "disabled", "data-test", "data-state", "class", "onClick"]))
2165
- ], 8, yl))), 128))
2166
- ], 12, bl)) : (u(), g("div", kl, [
2167
- (u(!0), g(ie, null, xe(a.flow.steps.value, (o) => (u(), g("span", {
2168
- key: o.name,
2169
- class: I(["h-1.5 rounded-full transition-all duration-motion-fast", [o.state === "current" ? "w-4.5" : "w-1.5", o.errors > 0 ? "bg-status-danger-solid" : o.state === "todo" && o.position > a.flow.index.value ? "bg-fill-strong" : "bg-tint"]]),
2170
- "data-state": o.errors > 0 ? "error" : o.state
2171
- }, null, 10, xl))), 128))
2178
+ ], 8, xl))), 128))
2179
+ ], 12, kl)) : (u(), g("div", _l, [
2180
+ (u(!0), g(ie, null, xe(a.flow.steps.value, (n) => (u(), g("span", {
2181
+ key: n.name,
2182
+ class: I(["h-1.5 rounded-full transition-all duration-motion-fast", [n.state === "current" ? "w-4.5" : "w-1.5", n.errors > 0 ? "bg-status-danger-solid" : n.state === "todo" && n.position > a.flow.index.value ? "bg-fill-strong" : "bg-tint"]]),
2183
+ "data-state": n.errors > 0 ? "error" : n.state
2184
+ }, null, 10, Cl))), 128))
2172
2185
  ]));
2173
2186
  }
2174
- }), $l = ["data-step"], _l = {
2187
+ }), Fl = ["data-step"], Bl = {
2175
2188
  class: "sr-only",
2176
2189
  "aria-live": "polite"
2177
- }, Cl = {
2190
+ }, Ll = {
2178
2191
  key: 1,
2179
2192
  "data-test": "step-restored",
2180
2193
  class: "flex items-center gap-2 text-footnote text-content-muted"
2181
- }, ko = /* @__PURE__ */ G({
2194
+ }, _o = /* @__PURE__ */ A({
2182
2195
  __name: "StepForm",
2183
2196
  props: {
2184
2197
  flow: {},
@@ -2186,9 +2199,9 @@ const vl = {
2186
2199
  navigation: { default: "inline" }
2187
2200
  },
2188
2201
  emits: ["cancel"],
2189
- setup(r) {
2190
- const a = r, { t: e } = oe(), t = U("body"), n = U("root");
2191
- function o(c) {
2202
+ setup(o) {
2203
+ const a = o, { t: e } = oe(), t = U("body"), s = U("root");
2204
+ function n(c) {
2192
2205
  for (let i = c.parentElement; i; i = i.parentElement) {
2193
2206
  const p = getComputedStyle(i).overflowY;
2194
2207
  if ((p === "auto" || p === "scroll") && i.scrollHeight > i.clientHeight) return c.getBoundingClientRect().top < i.getBoundingClientRect().top;
@@ -2196,23 +2209,23 @@ const vl = {
2196
2209
  return c.getBoundingClientRect().top < 0;
2197
2210
  }
2198
2211
  return ye(() => a.flow.current.value.name, async () => {
2199
- await he(), n.value && o(n.value) && n.value.scrollIntoView?.({ block: "start" }), t.value?.focus({ preventScroll: !0 });
2212
+ await he(), s.value && n(s.value) && s.value.scrollIntoView?.({ block: "start" }), t.value?.focus({ preventScroll: !0 });
2200
2213
  }), ye(() => a.flow.refusals.value, async () => {
2201
2214
  await he(), t.value && await Te(t.value);
2202
2215
  }), (c, i) => (u(), g("div", {
2203
2216
  ref_key: "root",
2204
- ref: n,
2217
+ ref: s,
2205
2218
  class: "flex min-w-0 flex-col gap-group-gap",
2206
2219
  "data-test": "step-form",
2207
2220
  "data-step": a.flow.current.value.name
2208
2221
  }, [
2209
- a.progress !== "none" ? (u(), D(wl, {
2222
+ a.progress !== "none" ? (u(), D(Sl, {
2210
2223
  key: 0,
2211
2224
  flow: a.flow,
2212
2225
  progress: a.progress
2213
2226
  }, null, 8, ["flow", "progress"])) : L("", !0),
2214
- y("p", _l, _(a.flow.subtitle.value), 1),
2215
- a.flow.restored.value ? (u(), g("div", Cl, [
2227
+ y("p", Bl, _(a.flow.subtitle.value), 1),
2228
+ a.flow.restored.value ? (u(), g("div", Ll, [
2216
2229
  y("span", null, _(l(e)("core.steps.restored")), 1),
2217
2230
  j(be, {
2218
2231
  prominence: "link",
@@ -2225,7 +2238,7 @@ const vl = {
2225
2238
  _: 1
2226
2239
  })
2227
2240
  ])) : L("", !0),
2228
- (u(), D(He, {
2241
+ (u(), D(Ue, {
2229
2242
  key: a.flow.current.value.name,
2230
2243
  form: a.flow
2231
2244
  }, null, 8, ["form"])),
@@ -2239,7 +2252,7 @@ const vl = {
2239
2252
  class: I(["flex min-w-0 flex-col gap-group-gap outline-none", a.flow.direction.value === "back" ? "animate-step-back" : a.flow.direction.value === "forward" ? "animate-step-in" : ""]),
2240
2253
  onSubmit: i[1] || (i[1] = pe((p) => a.flow.next(), ["prevent"]))
2241
2254
  }, [
2242
- B(c.$slots, a.flow.current.value.name),
2255
+ F(c.$slots, a.flow.current.value.name),
2243
2256
  i[3] || (i[3] = y("button", {
2244
2257
  type: "submit",
2245
2258
  class: "sr-only",
@@ -2247,87 +2260,90 @@ const vl = {
2247
2260
  "aria-hidden": "true"
2248
2261
  }, null, -1))
2249
2262
  ], 34)),
2250
- a.navigation === "inline" ? (u(), D(pl, {
2263
+ a.navigation === "inline" ? (u(), D(hl, {
2251
2264
  key: 2,
2252
2265
  flow: a.flow,
2253
2266
  onCancel: i[2] || (i[2] = (p) => c.$emit("cancel"))
2254
2267
  }, null, 8, ["flow"])) : L("", !0)
2255
- ], 8, $l));
2268
+ ], 8, Fl));
2256
2269
  }
2257
2270
  });
2258
2271
  export {
2259
- gt as Calendar,
2260
- lo as CardSelectField,
2261
- oo as CheckboxField,
2262
- no as ChoiceChips,
2263
- so as ComboField,
2264
- Bo as CommandDialog,
2265
- Wo as DateField,
2266
- ro as DateTimeField,
2267
- yo as EditorPage,
2268
- $o as ErrorBag,
2272
+ kt as Calendar,
2273
+ so as CardSelectField,
2274
+ ro as CheckboxField,
2275
+ io as ChoiceChips,
2276
+ uo as ComboField,
2277
+ Mo as CommandDialog,
2278
+ on as DateField,
2279
+ co as DateTimeField,
2280
+ xo as EditorPage,
2281
+ Fo as ErrorBag,
2269
2282
  ge as Field,
2270
- io as FileField,
2271
- He as FormErrors,
2272
- Ft as FormGroup,
2273
- uo as FormGroupButton,
2274
- co as FormIndent,
2275
- it as FormRow,
2276
- nn as FormView,
2277
- Qo as GroupEditAction,
2278
- cn as GroupSheet,
2279
- fo as I18nField,
2280
- jo as LeaveGuardRoot,
2281
- zo as MissingLeaveGuardRootError,
2282
- mo as MoneyField,
2283
- vo as MonthYearField,
2284
- po as MultiSelectField,
2285
- go as NumberCell,
2286
- zt as NumberField,
2283
+ fo as FileField,
2284
+ Ue as FormErrors,
2285
+ tt as FormGroup,
2286
+ mo as FormGroupButton,
2287
+ vo as FormIndent,
2288
+ dt as FormRow,
2289
+ un as FormView,
2290
+ Bo as GroupEditAction,
2291
+ vn as GroupSheet,
2292
+ po as I18nField,
2293
+ Ho as LeaveGuardRoot,
2294
+ Eo as MissingLeaveGuardRootError,
2295
+ yo as MoneyField,
2296
+ go as MonthYearField,
2297
+ ho as MultiSelectField,
2298
+ wo as NumberCell,
2299
+ Vt as NumberField,
2287
2300
  Ge as OptionList,
2288
- fn as OtpInput,
2289
- bo as PhotoField,
2290
- mn as RecordGroupScope,
2291
- bn as SegmentedField,
2292
- rn as SelectField,
2293
- ko as StepForm,
2294
- pl as StepNavigation,
2295
- wl as StepProgress,
2296
- gn as SwitchField,
2297
- Ao as TextField,
2298
- kn as TextareaField,
2299
- Zo as TimeField,
2300
- Qe as checkFile,
2301
- en as createFieldGroups,
2302
- Vo as createLeaveGuard,
2301
+ pn as OtpInput,
2302
+ ko as PhotoField,
2303
+ bn as RecordGroupScope,
2304
+ hn as SegmentedField,
2305
+ cn as SelectField,
2306
+ _o as StepForm,
2307
+ hl as StepNavigation,
2308
+ Sl as StepProgress,
2309
+ xn as SwitchField,
2310
+ en as TextField,
2311
+ $n as TextareaField,
2312
+ sn as TimeField,
2313
+ et as checkFile,
2314
+ Lo as createFieldGroups,
2315
+ No as createLeaveGuard,
2303
2316
  ce as fieldDefaults,
2304
- Fo as fieldKey,
2317
+ jo as fieldKey,
2305
2318
  de as fieldProps,
2306
2319
  Te as focusFirstError,
2307
- No as formEditableKey,
2308
- Be as formatBytes,
2309
- Go as groupOptions,
2310
- qo as installLeaveGuard,
2311
- Do as leaveGuardKey,
2312
- Ko as matchOptions,
2313
- Fa as missingLocales,
2314
- tn as provideRecordGroups,
2315
- Uo as recentChoicesKey,
2316
- an as recordGroupsKey,
2317
- Lo as useCommand,
2318
- Nt as useDirtySnapshot,
2319
- Je as useFieldMode,
2320
- _o as useForm,
2321
- vn as useGroupSheet,
2322
- Co as useHiddenFieldErrors,
2323
- We as useLeaveGuard,
2324
- Ro as useLeaveGuardContext,
2325
- un as useOptions,
2326
- wn as useRecordDialog,
2327
- ln as useRecordGroups,
2328
- Oo as useResourceForm,
2329
- It as useSaveChrome,
2330
- rl as useSectionStates,
2331
- ao as useSheetDiscardGuard,
2332
- ho as useStepForm
2320
+ Jo as formEditableKey,
2321
+ Fe as formatBytes,
2322
+ Zo as groupOptions,
2323
+ Ua as hasUnsupportedCharacters,
2324
+ Ao as installLeaveGuard,
2325
+ Go as leaveGuardKey,
2326
+ Xo as matchOptions,
2327
+ La as missingLocales,
2328
+ To as provideRecordGroups,
2329
+ an as recentChoicesKey,
2330
+ zo as recordGroupsKey,
2331
+ bo as refineStorableText,
2332
+ Pa as unsupportedCharactersCode,
2333
+ Io as useCommand,
2334
+ At as useDirtySnapshot,
2335
+ Ze as useFieldMode,
2336
+ Vo as useForm,
2337
+ yn as useGroupSheet,
2338
+ qo as useHiddenFieldErrors,
2339
+ Je as useLeaveGuard,
2340
+ Ko as useLeaveGuardContext,
2341
+ fn as useOptions,
2342
+ Cn as useRecordDialog,
2343
+ Do as useRecordGroups,
2344
+ Yo as useResourceForm,
2345
+ Ot as useSaveChrome,
2346
+ cl as useSectionStates,
2347
+ no as useSheetDiscardGuard,
2348
+ $o as useStepForm
2333
2349
  };