@wssto2/vue-core 0.15.3 → 0.17.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 (153) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/README.md +4 -3
  3. package/bin/architecture/engine.mjs +3 -0
  4. package/bin/architecture/permissions.mjs +56 -0
  5. package/bin/architecture/rules.mjs +17 -0
  6. package/bin/commands/check-architecture.mjs +19 -0
  7. package/bin/config.mjs +2 -0
  8. package/dist/{AccessGate.vue_vue_type_script_setup_true_lang-BH3f0hda.js → AccessGate.vue_vue_type_script_setup_true_lang-Bg8JFAOT.js} +1 -1
  9. package/dist/{ActionRow.vue_vue_type_script_setup_true_lang-DybAIOHS.js → ActionRow.vue_vue_type_script_setup_true_lang-B5IMNnTf.js} +4 -4
  10. package/dist/{Activity-DM9t5d3D.js → Activity-CiYn5E6A.js} +7 -7
  11. package/dist/{AdaptivePageShell.vue_vue_type_script_setup_true_lang-uO4EAmBb.js → AdaptivePageShell.vue_vue_type_script_setup_true_lang-oXWQTfBs.js} +170 -168
  12. package/dist/{Changes-DYpysvfX.js → Changes-Cy8STpLX.js} +3 -3
  13. package/dist/{CollectionPage.vue_vue_type_script_setup_true_lang-qxeSTAKV.js → CollectionPage.vue_vue_type_script_setup_true_lang-Dr6nFNBB.js} +6 -6
  14. package/dist/{DataTable.vue_vue_type_script_setup_true_lang-DbRS37n3.js → DataTable.vue_vue_type_script_setup_true_lang-D372wlxR.js} +1 -1
  15. package/dist/{DateField.vue_vue_type_script_setup_true_lang-DzCvYHAf.js → DateField.vue_vue_type_script_setup_true_lang-D0KcfW8R.js} +17 -16
  16. package/dist/{DeadLetters-vt9vhJD7.js → DeadLetters-DhJkMpd_.js} +4 -4
  17. package/dist/{FormGroup.vue_vue_type_script_setup_true_lang-dsO1m9Mm.js → FormGroup.vue_vue_type_script_setup_true_lang-lvAuBG-0.js} +2 -2
  18. package/dist/FormRow.vue_vue_type_script_setup_true_lang-CpgNVQF4.js +160 -0
  19. package/dist/{FormView.vue_vue_type_script_setup_true_lang-Bq_Qa4py.js → FormView.vue_vue_type_script_setup_true_lang-D01Jr4UU.js} +5 -5
  20. package/dist/{General-oUI2MiwO.js → General-CwTPC5UP.js} +11 -11
  21. package/dist/{IncidentRecord-CQdv_bN5.js → IncidentRecord-hXEGuLGg.js} +14 -14
  22. package/dist/{IncidentsList-DwQ0wuM8.js → IncidentsList-C41VyDwK.js} +6 -6
  23. package/dist/{NewRolePage-C-wbA-uW.js → NewRolePage-BYYZJkK7.js} +3 -3
  24. package/dist/{NumberField.vue_vue_type_script_setup_true_lang-U-_kcnGr.js → NumberField.vue_vue_type_script_setup_true_lang-BhNZgEW6.js} +7 -6
  25. package/dist/{PersonAccess.vue_vue_type_script_setup_true_lang-BPDh9s2m.js → PersonAccess.vue_vue_type_script_setup_true_lang-mYFuG-Y3.js} +56 -56
  26. package/dist/{ProfilePage-Di77M2cX.js → ProfilePage-DGEsIycR.js} +13 -13
  27. package/dist/{RecordHeader.vue_vue_type_script_setup_true_lang-CZtvUH5L.js → RecordHeader.vue_vue_type_script_setup_true_lang-B3BnYg1x.js} +1 -1
  28. package/dist/{ResourcePage.vue_vue_type_script_setup_true_lang-uLrX13ab.js → ResourcePage.vue_vue_type_script_setup_true_lang-1iZtj3rh.js} +1 -1
  29. package/dist/{RoleEditor.vue_vue_type_script_setup_true_lang-V2D7fhR9.js → RoleEditor.vue_vue_type_script_setup_true_lang-BslSDDiM.js} +10 -10
  30. package/dist/{RolePage-Crp71rRb.js → RolePage-C08ZUqw1.js} +9 -9
  31. package/dist/{RolesPage-DKXXnnDV.js → RolesPage-FOuY1VKg.js} +10 -10
  32. package/dist/{SectionNavigator.vue_vue_type_script_setup_true_lang-5ogQCj8M.js → SectionNavigator.vue_vue_type_script_setup_true_lang-DCTFxfPB.js} +2 -2
  33. package/dist/{SegmentedField.vue_vue_type_script_setup_true_lang-zv_AxpBn.js → SegmentedField.vue_vue_type_script_setup_true_lang-CLR6EvzO.js} +13 -12
  34. package/dist/{SelectField.vue_vue_type_script_setup_true_lang-CLkoPbGm.js → SelectField.vue_vue_type_script_setup_true_lang-D5xYofdb.js} +10 -9
  35. package/dist/{ServiceAccountDialog.vue_vue_type_script_setup_true_lang-C7WKxJ9i.js → ServiceAccountDialog.vue_vue_type_script_setup_true_lang-CDr4WNIb.js} +9 -9
  36. package/dist/{ServiceAccountRecord-CTU10RWy.js → ServiceAccountRecord-kWwIQGZb.js} +12 -12
  37. package/dist/{ServiceAccountsList-BVRjoswH.js → ServiceAccountsList-CKy9_YHP.js} +8 -8
  38. package/dist/{Sessions-BHwMrF7c.js → Sessions-BDc8gdYH.js} +4 -4
  39. package/dist/{SettingsPage-lRWvsMYK.js → SettingsPage-t-8kmFVT.js} +13 -13
  40. package/dist/{SignIn-HnujOMRY.js → SignIn-CqtkvtCZ.js} +7 -7
  41. package/dist/{SignInPage-c886Fvd7.js → SignInPage-DcdNKZIb.js} +4 -4
  42. package/dist/{SignIns-BsTlN2Zc.js → SignIns-D4-nGu0B.js} +3 -3
  43. package/dist/{SwitchField.vue_vue_type_script_setup_true_lang-Ds4q0bbl.js → SwitchField.vue_vue_type_script_setup_true_lang-CLtcuofe.js} +15 -14
  44. package/dist/{TextField.vue_vue_type_script_setup_true_lang-CWIeeZRE.js → TextField.vue_vue_type_script_setup_true_lang-CVGh-p3J.js} +7 -6
  45. package/dist/{TextareaField.vue_vue_type_script_setup_true_lang-D2j4s96s.js → TextareaField.vue_vue_type_script_setup_true_lang-YxUlNHSk.js} +6 -5
  46. package/dist/{TimeField.vue_vue_type_script_setup_true_lang-C1mLvOkc.js → TimeField.vue_vue_type_script_setup_true_lang-DHNC_MLt.js} +30 -29
  47. package/dist/{Timestamp.vue_vue_type_script_setup_true_lang-jCXYFLtq.js → Timestamp.vue_vue_type_script_setup_true_lang-d_KuxWjH.js} +1 -1
  48. package/dist/{UserRecord-DrbpVHh9.js → UserRecord-CwZCr9Im.js} +10 -10
  49. package/dist/{UsersList-M5tBxrox.js → UsersList-Cn19sFgv.js} +4 -4
  50. package/dist/access/index.js +4 -4
  51. package/dist/app/application.d.ts +2 -0
  52. package/dist/app/index.js +2 -2
  53. package/dist/app/validate.d.ts +3 -1
  54. package/dist/{application-C900Wz0A.js → application-CDSweJb9.js} +144 -142
  55. package/dist/back-LcLlFodC.js +63 -0
  56. package/dist/{chrome-nUcmVu8G.js → chrome-kMBKIB1N.js} +2 -2
  57. package/dist/collection/authors.d.ts +27 -0
  58. package/dist/collection/index.d.ts +2 -0
  59. package/dist/collection/index.js +81 -76
  60. package/dist/config/index.d.ts +42 -0
  61. package/dist/config/index.js +12 -3
  62. package/dist/content/Panel.vue.d.ts +1 -1
  63. package/dist/content/index.js +2 -2
  64. package/dist/{contributions-9CPT-Z5v.js → contributions-B0x5x5xD.js} +1 -1
  65. package/dist/form/CommandDialog.vue.d.ts +1 -1
  66. package/dist/form/DateField.vue.d.ts +1 -1
  67. package/dist/form/DateTimeField.vue.d.ts +1 -1
  68. package/dist/form/FileField.vue.d.ts +1 -1
  69. package/dist/form/FormRow.vue.d.ts +2 -2
  70. package/dist/form/I18nField.vue.d.ts +2 -2
  71. package/dist/form/TextField.vue.d.ts +1 -1
  72. package/dist/form/TextareaField.vue.d.ts +2 -2
  73. package/dist/form/date/value.d.ts +21 -0
  74. package/dist/form/index.d.ts +1 -0
  75. package/dist/form/index.js +745 -715
  76. package/dist/format/format.d.ts +8 -2
  77. package/dist/format/index.js +1 -1
  78. package/dist/format-C_HXlOYQ.js +136 -0
  79. package/dist/{guards-6fJxfUtk.js → guards-CNJ0ATVC.js} +1 -1
  80. package/dist/i18n/index.d.ts +14 -2
  81. package/dist/i18n/index.js +84 -73
  82. package/dist/i18n/messages.d.ts +10 -1
  83. package/dist/i18n/runtime.d.ts +3 -1
  84. package/dist/identity/index.js +3 -3
  85. package/dist/identity/profile/EmailChangeDialog.vue.d.ts +2 -2
  86. package/dist/identity/users/list.d.ts +1 -1
  87. package/dist/incidents/index.js +1 -1
  88. package/dist/{index-_hDHxrt5.js → index-1HS7O2-e.js} +9 -9
  89. package/dist/{index-DM_nWOYf.js → index-BA2w8uwD.js} +86 -86
  90. package/dist/{index-vES_D5ls.js → index-SLJWm40T.js} +4 -4
  91. package/dist/index.d.ts +1 -1
  92. package/dist/index.js +1 -1
  93. package/dist/modal/DiscardChangesModal.vue.d.ts +2 -2
  94. package/dist/modal/Modal.vue.d.ts +2 -2
  95. package/dist/modal/Sheet.vue.d.ts +2 -2
  96. package/dist/modules/identity/routes.d.ts +1 -1
  97. package/dist/modules/identity/schemas.d.ts +2 -2
  98. package/dist/{navigation-DMJ6akat.js → navigation-d-JAPBGA.js} +1 -1
  99. package/dist/{neighbors-DrEahe7B.js → neighbors-Dg_LU9ry.js} +32 -31
  100. package/dist/notifications/index.js +1 -1
  101. package/dist/onboarding/index.js +1 -1
  102. package/dist/options-mOOX6JSS.js +214 -0
  103. package/dist/overlay/AlertDialog.vue.d.ts +3 -3
  104. package/dist/overlay/Menu.vue.d.ts +2 -2
  105. package/dist/overlay/PhotoViewer.vue.d.ts +2 -2
  106. package/dist/overlay/Popover.vue.d.ts +2 -2
  107. package/dist/page/SectionNavigator.vue.d.ts +1 -1
  108. package/dist/page/SectionPanel.vue.d.ts +1 -1
  109. package/dist/page/back.d.ts +37 -0
  110. package/dist/page/index.d.ts +1 -0
  111. package/dist/page/index.js +46 -42
  112. package/dist/phone/index.js +57 -56
  113. package/dist/platform/index.d.ts +10 -1
  114. package/dist/platform/index.js +16 -15
  115. package/dist/platform/platform.d.ts +4 -2
  116. package/dist/{platform-ORzRR3Tw.js → platform-DU9QFts8.js} +7 -6
  117. package/dist/playwright/config.d.ts +33 -0
  118. package/dist/playwright/index.d.ts +2 -0
  119. package/dist/playwright/index.js +192 -171
  120. package/dist/resource/index.js +1 -1
  121. package/dist/router/index.js +3 -3
  122. package/dist/router/sections.d.ts +1 -1
  123. package/dist/{rowLayout-QKfNHsML.js → rowLayout-PIuD7MGo.js} +2 -2
  124. package/dist/sections-BpiRLntE.js +54 -0
  125. package/dist/{serverMessages-Ce8-MK4e.js → serverMessages-C_KkDvpT.js} +1 -1
  126. package/dist/shell/index.js +5 -5
  127. package/dist/state/NextStepPanel.vue.d.ts +63 -0
  128. package/dist/state/PhaseTiles.vue.d.ts +20 -0
  129. package/dist/state/PhaseTrack.vue.d.ts +48 -0
  130. package/dist/state/RequirementList.vue.d.ts +10 -0
  131. package/dist/state/TodoRow.vue.d.ts +52 -0
  132. package/dist/state/index.d.ts +9 -0
  133. package/dist/state/index.js +731 -126
  134. package/dist/state/phaseStep.d.ts +7 -0
  135. package/dist/state/phaseTile.d.ts +10 -0
  136. package/dist/state/requirementItem.d.ts +16 -0
  137. package/dist/state/todoRow.d.ts +8 -0
  138. package/dist/{state-QDaxntgR.js → state-z1iPF1DT.js} +1 -1
  139. package/dist/styles.css +1 -1
  140. package/dist/{suggestions-q_v3M7G6.js → suggestions-DeMgs_ki.js} +1 -1
  141. package/dist/testing/format.d.ts +1 -1
  142. package/dist/testing/index.js +31 -31
  143. package/dist/{useCommand-DAMgQ5NE.js → useCommand-DQKvro1n.js} +2 -2
  144. package/dist/{useGroupSheet-B-Hs4gNO.js → useGroupSheet-CRw3MUmX.js} +3 -3
  145. package/dist/{usePreferences-BfMXVbSO.js → usePreferences-DB29UTFD.js} +1 -1
  146. package/dist/{useRecordDialog-QPKFH1Ww.js → useRecordDialog-0azHxxvm.js} +1 -1
  147. package/dist/{useResourceForm-Oa6bk3NI.js → useResourceForm-zVuWerSn.js} +1 -1
  148. package/dist/{useSaveChrome-7huA3FzR.js → useSaveChrome-DB9OwIjT.js} +1 -1
  149. package/dist/{useTypedEntry-CITij2C_.js → useTypedEntry-BsMV66Yc.js} +46 -45
  150. package/package.json +1 -1
  151. package/dist/format-Cp1h0vsC.js +0 -125
  152. package/dist/options-B48UiYsG.js +0 -368
  153. package/dist/sections-DI_JhgQG.js +0 -53
@@ -1,92 +1,94 @@
1
- import { a as ot, _ as We, c as nt, f as st } from "../FormGroup.vue_vue_type_script_setup_true_lang-dsO1m9Mm.js";
2
- import { E as Bo, b as Lo, d as To, p as qo, r as zo, u as Vo, e as Do, g as Ro } from "../FormGroup.vue_vue_type_script_setup_true_lang-dsO1m9Mm.js";
3
- import { f as qe } from "../useCommand-DAMgQ5NE.js";
4
- import { _ as Io, a as jo, u as Oo } from "../useCommand-DAMgQ5NE.js";
5
- import { ref as P, computed as h, defineComponent as G, openBlock as d, createBlock as R, mergeProps as J, unref as s, createSlots as Z, withCtx as f, createElementVNode as p, normalizeClass as j, createElementBlock as y, Fragment as de, renderList as $e, createVNode as I, createCommentVNode as q, toDisplayString as C, renderSlot as S, mergeDefaults as ce, useModel as re, useId as Re, withKeys as Se, withModifiers as pe, createTextVNode as H, mergeModels as le, useTemplateRef as U, shallowRef as Ne, watch as ge, normalizeProps as ze, guardReactiveProps as Ve, nextTick as xe, provide as rt, inject as Je, onBeforeUnmount as Ze, getCurrentScope as it, onScopeDispose as ut, toValue as dt, shallowReactive as Ae, normalizeStyle as ct, resolveDynamicComponent as ft } from "vue";
6
- import { a as Xe } from "../leaveGuard-Cc8yeLxM.js";
7
- import { M as No, c as Ao, i as Go, l as Ko, u as Po } from "../leaveGuard-Cc8yeLxM.js";
8
- import { _ as Uo } from "../LeaveGuardRoot.vue_vue_type_script_setup_true_lang-CrGrjrlO.js";
9
- import { u as Wo } from "../useResourceForm-Oa6bk3NI.js";
1
+ import { a as rt, _ as Je, c as it, f as ut } from "../FormGroup.vue_vue_type_script_setup_true_lang-lvAuBG-0.js";
2
+ import { E as Oo, b as jo, d as Eo, p as Ao, r as Go, u as Ko, e as Po, g as Ho } from "../FormGroup.vue_vue_type_script_setup_true_lang-lvAuBG-0.js";
3
+ import { f as Le } from "../useCommand-DQKvro1n.js";
4
+ import { _ as Yo, a as Wo, u as Jo } from "../useCommand-DQKvro1n.js";
5
+ import { ref as P, computed as h, defineComponent as G, openBlock as d, createBlock as M, mergeProps as J, unref as s, createSlots as Z, withCtx as f, createElementVNode as p, normalizeClass as I, createElementBlock as y, Fragment as de, renderList as $e, createVNode as N, createCommentVNode as L, toDisplayString as C, renderSlot as S, mergeDefaults as ce, useModel as re, useId as Me, withKeys as Se, withModifiers as pe, createTextVNode as H, mergeModels as le, useTemplateRef as U, shallowRef as Ee, watch as ge, normalizeProps as qe, guardReactiveProps as Ve, nextTick as xe, provide as dt, inject as Ze, onBeforeUnmount as Xe, getCurrentScope as ct, onScopeDispose as ft, toValue as mt, shallowReactive as Ae, normalizeStyle as vt, resolveDynamicComponent as pt } from "vue";
6
+ import { a as Qe } from "../leaveGuard-Cc8yeLxM.js";
7
+ import { M as Xo, c as Qo, i as en, l as tn, u as an } from "../leaveGuard-Cc8yeLxM.js";
8
+ import { _ as on } from "../LeaveGuardRoot.vue_vue_type_script_setup_true_lang-CrGrjrlO.js";
9
+ import { u as sn } from "../useResourceForm-zVuWerSn.js";
10
10
  import { _ as X } from "../Icon.vue_vue_type_script_lang-BhhsFYwp.js";
11
- import { u as Qe, _ as ye, f as fe, b as me, a as et, e as Me, g as mt, j as vt, k as pt } from "../options-B48UiYsG.js";
12
- import { d as Zo, h as Xo, m as Qo } from "../options-B48UiYsG.js";
11
+ import { _ as ye, u as Re } from "../options-mOOX6JSS.js";
12
+ import { g as un, m as dn } from "../options-mOOX6JSS.js";
13
+ import { u as et, f as fe, b as me, a as tt, _ as bt, e as gt, g as yt } from "../FormRow.vue_vue_type_script_setup_true_lang-CpgNVQF4.js";
14
+ import { c as fn } from "../FormRow.vue_vue_type_script_setup_true_lang-CpgNVQF4.js";
13
15
  import { useI18n as oe } from "vue-i18n";
14
- import { b as bt } from "../controlSurface-t7OEFESJ.js";
15
- import { a as gt } from "../TextField.vue_vue_type_script_setup_true_lang-CWIeeZRE.js";
16
- import { _ as tn } from "../TextField.vue_vue_type_script_setup_true_lang-CWIeeZRE.js";
17
- import { u as yt, l as ht } from "../suggestions-q_v3M7G6.js";
18
- import { r as ln } from "../suggestions-q_v3M7G6.js";
19
- import { s as _e, u as Ge, i as kt, o as Ce, e as Fe, k as xt, _ as wt, l as $t, c as _t, b as Ct, t as Te, g as St, q as Ft } from "../useTypedEntry-CITij2C_.js";
20
- import { u as Bt, a as Lt, s as Tt } from "../DateField.vue_vue_type_script_setup_true_lang-DzCvYHAf.js";
21
- import { _ as nn } from "../DateField.vue_vue_type_script_setup_true_lang-DzCvYHAf.js";
22
- import { _ as tt } from "../DateButton.vue_vue_type_script_setup_true_lang-CovKG5lN.js";
23
- import { u as at } from "../format-Cp1h0vsC.js";
24
- import { u as Ie } from "../mediaQuery-CygcXmFW.js";
25
- import { _ as je } from "../Popover.vue_vue_type_script_setup_true_lang-BK8HL_V0.js";
26
- import { u as qt } from "../TimeField.vue_vue_type_script_setup_true_lang-C1mLvOkc.js";
27
- import { _ as rn } from "../TimeField.vue_vue_type_script_setup_true_lang-C1mLvOkc.js";
16
+ import { b as ht } from "../controlSurface-t7OEFESJ.js";
17
+ import { a as kt } from "../TextField.vue_vue_type_script_setup_true_lang-CVGh-p3J.js";
18
+ import { _ as vn } from "../TextField.vue_vue_type_script_setup_true_lang-CVGh-p3J.js";
19
+ import { u as xt, l as wt } from "../suggestions-DeMgs_ki.js";
20
+ import { r as bn } from "../suggestions-DeMgs_ki.js";
21
+ import { o as _e, q as $t, m as _t, s as Ce, u as Ge, i as Ct, e as Fe, k as St, _ as Ft, l as Bt, c as Tt, b as Dt, t as De, g as Lt, v as qt } from "../useTypedEntry-BsMV66Yc.js";
22
+ import { u as Vt, a as zt, s as Mt } from "../DateField.vue_vue_type_script_setup_true_lang-D0KcfW8R.js";
23
+ import { _ as yn } from "../DateField.vue_vue_type_script_setup_true_lang-D0KcfW8R.js";
24
+ import { _ as at } from "../DateButton.vue_vue_type_script_setup_true_lang-CovKG5lN.js";
25
+ import { u as lt } from "../format-C_HXlOYQ.js";
26
+ import { u as Ne } from "../mediaQuery-CygcXmFW.js";
27
+ import { _ as Ie } from "../Popover.vue_vue_type_script_setup_true_lang-BK8HL_V0.js";
28
+ import { u as Rt } from "../TimeField.vue_vue_type_script_setup_true_lang-DHNC_MLt.js";
29
+ import { _ as kn } from "../TimeField.vue_vue_type_script_setup_true_lang-DHNC_MLt.js";
28
30
  import { _ as be } from "../Button.vue_vue_type_script_setup_true_lang-JrqhO99l.js";
29
- import { _ as dn } from "../FormView.vue_vue_type_script_setup_true_lang-Bq_Qa4py.js";
30
- import { a as zt } from "../environment-Dva-SG8D.js";
31
- import { _ as Vt } from "../NumberField.vue_vue_type_script_setup_true_lang-U-_kcnGr.js";
32
- import { _ as Dt } from "../Sheet.vue_vue_type_script_setup_true_lang-BG8HUNfs.js";
33
- import { b as Rt, a as Ke } from "../SelectField.vue_vue_type_script_setup_true_lang-CLkoPbGm.js";
34
- import { _ as fn, u as mn } from "../SelectField.vue_vue_type_script_setup_true_lang-CLkoPbGm.js";
35
- import { _ as pn, b as bn, a as gn, u as yn } from "../useGroupSheet-B-Hs4gNO.js";
31
+ import { _ as wn } from "../FormView.vue_vue_type_script_setup_true_lang-D01Jr4UU.js";
32
+ import { a as Nt } from "../environment-Dva-SG8D.js";
33
+ import { _ as It } from "../NumberField.vue_vue_type_script_setup_true_lang-BhNZgEW6.js";
34
+ import { _ as Ot } from "../Sheet.vue_vue_type_script_setup_true_lang-BG8HUNfs.js";
35
+ import { b as jt, a as Ke } from "../SelectField.vue_vue_type_script_setup_true_lang-D5xYofdb.js";
36
+ import { _ as _n, u as Cn } from "../SelectField.vue_vue_type_script_setup_true_lang-D5xYofdb.js";
37
+ import { _ as Fn, b as Bn, a as Tn, u as Dn } from "../useGroupSheet-CRw3MUmX.js";
36
38
  import { _ as Pe } from "../PhotoViewer.vue_vue_type_script_setup_true_lang-DmMg1T_V.js";
37
- import { _ as kn } from "../SegmentedField.vue_vue_type_script_setup_true_lang-zv_AxpBn.js";
38
- import { _ as wn } from "../SwitchField.vue_vue_type_script_setup_true_lang-Ds4q0bbl.js";
39
- import { _ as _n } from "../TextareaField.vue_vue_type_script_setup_true_lang-D2j4s96s.js";
40
- import { _ as Mt } from "../AdaptivePageShell.vue_vue_type_script_setup_true_lang-uO4EAmBb.js";
41
- import { _ as It, a as jt } from "../SectionList.vue_vue_type_script_setup_true_lang-CodyVezo.js";
42
- import { p as Ot } from "../sectionIndex-BS0ic5W7.js";
43
- import { u as Et } from "../useSaveChrome-7huA3FzR.js";
44
- import { u as Sn } from "../useRecordDialog-QPKFH1Ww.js";
45
- import { matchedRouteKey as Nt, onBeforeRouteLeave as At } from "vue-router";
46
- function Gt(l) {
47
- const a = P(null);
39
+ import { _ as qn } from "../SegmentedField.vue_vue_type_script_setup_true_lang-CLR6EvzO.js";
40
+ import { _ as zn } from "../SwitchField.vue_vue_type_script_setup_true_lang-CLtcuofe.js";
41
+ import { _ as Rn } from "../TextareaField.vue_vue_type_script_setup_true_lang-YxUlNHSk.js";
42
+ import { _ as Et } from "../AdaptivePageShell.vue_vue_type_script_setup_true_lang-oXWQTfBs.js";
43
+ import { _ as At, a as Gt } from "../SectionList.vue_vue_type_script_setup_true_lang-CodyVezo.js";
44
+ import { p as Kt } from "../sectionIndex-BS0ic5W7.js";
45
+ import { u as Pt } from "../useSaveChrome-DB9OwIjT.js";
46
+ import { u as In } from "../useRecordDialog-0azHxxvm.js";
47
+ import { matchedRouteKey as Ht, onBeforeRouteLeave as Ut } from "vue-router";
48
+ function Yt(l) {
49
+ const t = P(null);
48
50
  return {
49
- isDirty: h(() => a.value !== null && JSON.stringify(l()) !== a.value),
50
- markClean: () => a.value = JSON.stringify(l())
51
+ isDirty: h(() => t.value !== null && JSON.stringify(l()) !== t.value),
52
+ markClean: () => t.value = JSON.stringify(l())
51
53
  };
52
54
  }
53
- function no(l) {
54
- const a = P(!1), e = Gt(l), { confirmDiscard: t } = Xe(() => a.value && e.isDirty.value);
55
+ function po(l) {
56
+ const t = P(!1), e = Yt(l), { confirmDiscard: a } = Qe(() => t.value && e.isDirty.value);
55
57
  return {
56
58
  /** The sheet was just filled: its current values are the baseline. */
57
59
  opened: () => {
58
- e.markClean(), a.value = !0;
60
+ e.markClean(), t.value = !0;
59
61
  },
60
62
  /** The sheet closes with nothing to lose (after a save, or once it has closed). */
61
63
  closed: () => {
62
- a.value = !1;
64
+ t.value = !1;
63
65
  },
64
- beforeDismiss: t
66
+ beforeDismiss: a
65
67
  };
66
68
  }
67
- const He = (l, a) => {
68
- const e = Number(a);
69
+ const He = (l, t) => {
70
+ const e = Number(t);
69
71
  if (Number.isInteger(e) && Math.abs(e) < 1e4) return String(e);
70
- const t = Number.isInteger(e) ? 0 : 2;
71
- return l.number(e, { minimumFractionDigits: t, maximumFractionDigits: t });
72
+ const a = Number.isInteger(e) ? 0 : 2;
73
+ return l.number(e, { minimumFractionDigits: a, maximumFractionDigits: a });
72
74
  };
73
- function so({ i18n: l, format: a }) {
74
- const { t: e, te: t } = l.global, o = (r) => `validation_errors.${r}`, n = (r) => `core.validation_errors.${r}`, u = (r, m) => ({ message: e(t(o(r)) ? o(r) : n(r), m) });
75
+ function bo({ i18n: l, format: t }) {
76
+ const { t: e, te: a } = l.global, o = (r) => `validation_errors.${r}`, n = (r) => `core.validation_errors.${r}`, u = (r, m) => ({ message: e(a(o(r)) ? o(r) : n(r), m) });
75
77
  return (r) => {
76
78
  switch (r.code) {
77
79
  case "invalid_type":
78
80
  return u("required");
79
81
  case "too_small":
80
- return r.origin === "string" ? Number(r.minimum) === 1 ? u("required") : u("min", { min: Number(r.minimum) }) : r.origin === "number" ? u("min_value", { min: He(a, r.minimum) }) : void 0;
82
+ return r.origin === "string" ? Number(r.minimum) === 1 ? u("required") : u("min", { min: Number(r.minimum) }) : r.origin === "number" ? u("min_value", { min: He(t, r.minimum) }) : void 0;
81
83
  case "too_big":
82
- return r.origin === "string" ? u("max", { max: Number(r.maximum) }) : r.origin === "number" ? u("max_value", { max: He(a, r.maximum) }) : void 0;
84
+ return r.origin === "string" ? u("max", { max: Number(r.maximum) }) : r.origin === "number" ? u("max_value", { max: He(t, r.maximum) }) : void 0;
83
85
  case "invalid_format":
84
86
  return r.format !== void 0 && ["email", "url", "date", "datetime"].includes(r.format) ? u(r.format) : void 0;
85
87
  case "custom": {
86
88
  const m = r.params?.code;
87
89
  if (typeof m != "string") return;
88
90
  if (m === "required") return u("required");
89
- const k = t(o(m)) ? o(m) : t(n(m)) ? n(m) : null;
91
+ const k = a(o(m)) ? o(m) : a(n(m)) ? n(m) : null;
90
92
  return k === null ? void 0 : { message: e(k) };
91
93
  }
92
94
  default:
@@ -94,14 +96,14 @@ function so({ i18n: l, format: a }) {
94
96
  }
95
97
  };
96
98
  }
97
- const Kt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Pt = ["name", "value", "checked", "disabled", "onChange"], Ht = { class: "min-w-0 flex-1" }, Ut = { class: "block text-body font-semibold text-content-strong" }, Yt = {
99
+ const Wt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Jt = ["name", "value", "checked", "disabled", "onChange"], Zt = { class: "min-w-0 flex-1" }, Xt = { class: "block text-body font-semibold text-content-strong" }, Qt = {
98
100
  key: 0,
99
101
  class: "mt-0.5 block text-footnote text-content-muted"
100
- }, Wt = {
102
+ }, ea = {
101
103
  key: 1,
102
104
  class: "flex size-5 shrink-0 items-center justify-center rounded-full bg-control-on text-white",
103
105
  "aria-hidden": "true"
104
- }, ro = /* @__PURE__ */ G({
106
+ }, go = /* @__PURE__ */ G({
105
107
  __name: "CardSelectField",
106
108
  props: /* @__PURE__ */ ce({
107
109
  label: {},
@@ -119,9 +121,9 @@ const Kt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Pt = ["name
119
121
  columns: {}
120
122
  }, { ...me, modelValue: null, columns: 2 }),
121
123
  emits: ["update:modelValue"],
122
- setup(l, { emit: a }) {
123
- const e = l, t = a, { editable: o } = Qe(e), n = { 1: "grid-cols-1", 2: "grid-cols-2", 3: "grid-cols-3", 4: "grid-cols-4" }, u = h(() => n[e.columns]);
124
- return (r, m) => (d(), R(ye, J(s(fe)(e), {
124
+ setup(l, { emit: t }) {
125
+ const e = l, a = t, { editable: o } = et(e), n = { 1: "grid-cols-1", 2: "grid-cols-2", 3: "grid-cols-3", 4: "grid-cols-4" }, u = h(() => n[e.columns]);
126
+ return (r, m) => (d(), M(ye, J(s(fe)(e), {
125
127
  value: e.options.find((k) => k.value === e.modelValue)?.label ?? null,
126
128
  "row-layout": "stacked"
127
129
  }), Z({
@@ -132,12 +134,12 @@ const Kt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Pt = ["name
132
134
  "aria-label": e.label,
133
135
  "aria-describedby": x,
134
136
  "aria-invalid": $ || void 0,
135
- class: j(["grid w-full gap-2.5", u.value]),
137
+ class: I(["grid w-full gap-2.5", u.value]),
136
138
  "data-test": "card-select"
137
139
  }, [
138
140
  (d(!0), y(de, null, $e(e.options, (i) => (d(), y("label", {
139
141
  key: i.value,
140
- class: j(["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", [i.value === e.modelValue ? "bg-tint-soft ring-[1.5px] ring-inset ring-border-selected" : "hover:bg-fill-strong", e.disabled || !s(o) || i.disabled ? "cursor-not-allowed opacity-60" : "cursor-pointer"]])
142
+ 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", [i.value === e.modelValue ? "bg-tint-soft ring-[1.5px] ring-inset ring-border-selected" : "hover:bg-fill-strong", e.disabled || !s(o) || i.disabled ? "cursor-not-allowed opacity-60" : "cursor-pointer"]])
141
143
  }, [
142
144
  p("input", {
143
145
  type: "radio",
@@ -146,29 +148,29 @@ const Kt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Pt = ["name
146
148
  value: i.value,
147
149
  checked: i.value === e.modelValue,
148
150
  disabled: e.disabled || !s(o) || i.disabled,
149
- onChange: (v) => t("update:modelValue", i.value)
150
- }, null, 40, Pt),
151
+ onChange: (v) => a("update:modelValue", i.value)
152
+ }, null, 40, Jt),
151
153
  i.icon ? (d(), y("span", {
152
154
  key: 0,
153
- class: j(["flex size-9 shrink-0 items-center justify-center rounded-control", i.value === e.modelValue ? "bg-control-on text-white" : "bg-fill-strong text-content-muted"])
155
+ class: I(["flex size-9 shrink-0 items-center justify-center rounded-control", i.value === e.modelValue ? "bg-control-on text-white" : "bg-fill-strong text-content-muted"])
154
156
  }, [
155
- I(s(X), {
157
+ N(s(X), {
156
158
  name: i.icon,
157
159
  size: 18
158
160
  }, null, 8, ["name"])
159
- ], 2)) : q("", !0),
160
- p("span", Ht, [
161
- p("span", Ut, C(i.label), 1),
162
- i.description ? (d(), y("span", Yt, C(i.description), 1)) : q("", !0)
161
+ ], 2)) : L("", !0),
162
+ p("span", Zt, [
163
+ p("span", Xt, C(i.label), 1),
164
+ i.description ? (d(), y("span", Qt, C(i.description), 1)) : L("", !0)
163
165
  ]),
164
- i.value === e.modelValue ? (d(), y("span", Wt, [
165
- I(s(X), {
166
+ i.value === e.modelValue ? (d(), y("span", ea, [
167
+ N(s(X), {
166
168
  name: "checkCustom",
167
169
  size: 12
168
170
  })
169
- ])) : q("", !0)
171
+ ])) : L("", !0)
170
172
  ], 2))), 128))
171
- ], 10, Kt)
173
+ ], 10, Wt)
172
174
  ]),
173
175
  _: 2
174
176
  }, [
@@ -195,10 +197,10 @@ const Kt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Pt = ["name
195
197
  } : void 0
196
198
  ]), 1040, ["value"]));
197
199
  }
198
- }), Jt = ["data-field-error"], Zt = ["aria-checked", "aria-disabled", "aria-describedby", "aria-invalid", "tabindex", "onKeydown"], Xt = { class: "flex min-w-0 flex-1 flex-col items-start" }, Qt = {
200
+ }), ta = ["data-field-error"], aa = ["aria-checked", "aria-disabled", "aria-describedby", "aria-invalid", "tabindex", "onKeydown"], la = { class: "flex min-w-0 flex-1 flex-col items-start" }, oa = {
199
201
  key: 0,
200
202
  class: "flex shrink-0 items-center gap-2.5"
201
- }, ea = ["id"], io = /* @__PURE__ */ G({
203
+ }, na = ["id"], yo = /* @__PURE__ */ G({
202
204
  __name: "CheckboxField",
203
205
  props: /* @__PURE__ */ le({
204
206
  label: {},
@@ -212,21 +214,22 @@ const Kt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Pt = ["name
212
214
  }),
213
215
  emits: ["update:modelValue"],
214
216
  setup(l) {
215
- const a = l, e = re(l, "modelValue"), t = !!et(), o = Re(), n = () => {
216
- a.disabled || (e.value = !e.value);
217
+ const t = l, e = re(l, "modelValue"), a = !!tt(), o = Me(), n = () => {
218
+ t.disabled || (e.value = !e.value);
217
219
  };
218
220
  return (u, r) => (d(), y("div", {
219
- "data-field-error": a.error ? "true" : void 0
221
+ class: "group/check",
222
+ "data-field-error": t.error ? "true" : void 0
220
223
  }, [
221
224
  p("div", {
222
225
  role: "checkbox",
223
226
  "aria-checked": e.value,
224
- "aria-disabled": a.disabled || void 0,
225
- "aria-describedby": a.error ? `${s(o)}-error` : void 0,
226
- "aria-invalid": a.error ? !0 : void 0,
227
- tabindex: a.disabled ? -1 : 0,
227
+ "aria-disabled": t.disabled || void 0,
228
+ "aria-describedby": t.error ? `${s(o)}-error` : void 0,
229
+ "aria-invalid": t.error ? !0 : void 0,
230
+ tabindex: t.disabled ? -1 : 0,
228
231
  "data-test": "checkbox",
229
- class: j(["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"]]),
232
+ class: I(["flex items-center transition-colors duration-motion-fast focus-visible:outline-2 focus-visible:outline-border-focus", [t.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", a && t.variant === "row" ? "group-first/check:rounded-t-group group-last/check:rounded-b-group" : "", t.disabled ? "cursor-not-allowed" : t.variant === "row" ? "cursor-pointer hover:bg-fill/60 active:bg-fill" : "cursor-pointer hover:bg-fill"]]),
230
233
  onClick: n,
231
234
  onKeydown: [
232
235
  Se(pe(n, ["prevent"]), ["space"]),
@@ -234,52 +237,52 @@ const Kt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Pt = ["name
234
237
  ]
235
238
  }, [
236
239
  p("span", {
237
- class: j(["flex shrink-0 items-center justify-center rounded-full border-2", [a.variant === "row" ? "size-5.5" : "size-5", e.value ? a.disabled ? "border-content-disabled bg-content-disabled text-white" : "border-control-on bg-control-on text-white" : "border-border-control"]]),
240
+ class: I(["flex shrink-0 items-center justify-center rounded-full border-2", [t.variant === "row" ? "size-5.5" : "size-5", e.value ? t.disabled ? "border-content-disabled bg-content-disabled text-white" : "border-control-on bg-control-on text-white" : "border-border-control"]]),
238
241
  "aria-hidden": "true"
239
242
  }, [
240
- e.value ? (d(), R(s(X), {
243
+ e.value ? (d(), M(s(X), {
241
244
  key: 0,
242
245
  name: "checkCustom",
243
246
  size: 12
244
- })) : q("", !0)
247
+ })) : L("", !0)
245
248
  ], 2),
246
249
  p("div", {
247
- class: j(["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" : ""])
250
+ class: I(["flex min-w-0 flex-1 items-center gap-3", t.variant === "row" ? "min-h-row border-t border-border-separator py-2 pr-row-inset group-first/check:border-t-0" : ""])
248
251
  }, [
249
- p("div", Xt, [
252
+ p("div", la, [
250
253
  p("p", {
251
- class: j(["w-full text-body", [a.variant === "row" ? "break-words" : "truncate", a.disabled ? "text-content-muted" : e.value ? "text-content-strong" : "text-content"]])
252
- }, C(a.label), 3),
253
- a.description ? (d(), y("p", {
254
+ class: I(["w-full text-body", [t.variant === "row" ? "break-words" : "truncate", t.disabled ? "text-content-muted" : e.value ? "text-content-strong" : "text-content"]])
255
+ }, C(t.label), 3),
256
+ t.description ? (d(), y("p", {
254
257
  key: 0,
255
- class: j(["tabular-nums text-content-muted", a.variant === "row" ? "text-footnote" : "text-xs"])
256
- }, C(a.description), 3)) : q("", !0),
258
+ class: I(["tabular-nums text-content-muted", t.variant === "row" ? "text-footnote" : "text-xs"])
259
+ }, C(t.description), 3)) : L("", !0),
257
260
  S(u.$slots, "default")
258
261
  ]),
259
- u.$slots.trailing ? (d(), y("div", Qt, [
262
+ u.$slots.trailing ? (d(), y("div", oa, [
260
263
  S(u.$slots, "trailing")
261
- ])) : q("", !0)
264
+ ])) : L("", !0)
262
265
  ], 2)
263
- ], 42, Zt),
264
- a.error ? (d(), y("p", {
266
+ ], 42, aa),
267
+ t.error ? (d(), y("p", {
265
268
  key: 0,
266
269
  id: `${s(o)}-error`,
267
270
  role: "alert",
268
271
  class: "flex items-start gap-1.5 px-2 pt-1 text-footnote text-content-destructive"
269
272
  }, [
270
- I(s(X), {
273
+ N(s(X), {
271
274
  name: "alertTriangle",
272
275
  size: 14,
273
276
  class: "mt-px shrink-0"
274
277
  }),
275
- H(" " + C(a.error), 1)
276
- ], 8, ea)) : q("", !0)
277
- ], 8, Jt));
278
+ H(" " + C(t.error), 1)
279
+ ], 8, na)) : L("", !0)
280
+ ], 8, ta));
278
281
  }
279
- }), ta = {
282
+ }), sa = {
280
283
  key: 0,
281
284
  class: "text-body text-content-muted"
282
- }, aa = ["id", "aria-label", "aria-describedby", "aria-invalid"], la = ["aria-pressed", "disabled", "onClick"], uo = /* @__PURE__ */ G({
285
+ }, ra = ["id", "aria-label", "aria-describedby", "aria-invalid"], ia = ["aria-pressed", "disabled", "onClick"], ho = /* @__PURE__ */ G({
283
286
  __name: "ChoiceChips",
284
287
  props: /* @__PURE__ */ le(/* @__PURE__ */ ce({
285
288
  label: {},
@@ -299,38 +302,38 @@ const Kt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Pt = ["name
299
302
  }),
300
303
  emits: ["update:modelValue"],
301
304
  setup(l) {
302
- const a = l, e = re(l, "modelValue"), t = (o) => e.value = e.value.includes(o) ? e.value.filter((n) => n !== o) : [...e.value, o];
303
- return (o, n) => (d(), R(ye, J(s(fe)(a), {
304
- value: a.options.filter((u) => e.value.includes(u.value)).map((u) => u.label).join(", ") || null,
305
+ const t = l, e = re(l, "modelValue"), a = (o) => e.value = e.value.includes(o) ? e.value.filter((n) => n !== o) : [...e.value, o];
306
+ return (o, n) => (d(), M(ye, J(s(fe)(t), {
307
+ value: t.options.filter((u) => e.value.includes(u.value)).map((u) => u.label).join(", ") || null,
305
308
  "row-layout": "stacked"
306
309
  }), Z({
307
310
  default: f(({ id: u, describedby: r, invalid: m }) => [
308
- a.options.length === 0 ? (d(), y("span", ta, "—")) : (d(), y("div", {
311
+ t.options.length === 0 ? (d(), y("span", sa, "—")) : (d(), y("div", {
309
312
  key: 1,
310
313
  id: u,
311
314
  role: "group",
312
- "aria-label": a.label,
315
+ "aria-label": t.label,
313
316
  "aria-describedby": r,
314
317
  "aria-invalid": m || void 0,
315
318
  class: "flex flex-wrap gap-1.5 py-1",
316
319
  "data-test": "choice-chips"
317
320
  }, [
318
- (d(!0), y(de, null, $e(a.options, (k) => (d(), y("button", {
321
+ (d(!0), y(de, null, $e(t.options, (k) => (d(), y("button", {
319
322
  key: k.value,
320
323
  type: "button",
321
324
  "aria-pressed": e.value.includes(k.value),
322
- disabled: a.disabled || k.disabled,
323
- class: j(["inline-flex min-h-8 cursor-pointer items-center gap-1.5 rounded-full px-3 text-subheadline transition-colors duration-motion-fast focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-border-focus disabled:cursor-not-allowed disabled:opacity-60", e.value.includes(k.value) ? "bg-tint-soft font-semibold text-content-link" : "bg-fill font-medium text-content-strong hover:bg-fill-strong"]),
324
- onClick: (x) => t(k.value)
325
+ disabled: t.disabled || k.disabled,
326
+ class: I(["inline-flex min-h-8 cursor-pointer items-center gap-1.5 rounded-full px-3 text-subheadline transition-colors duration-motion-fast focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-border-focus disabled:cursor-not-allowed disabled:opacity-60", e.value.includes(k.value) ? "bg-tint-soft font-semibold text-content-link" : "bg-fill font-medium text-content-strong hover:bg-fill-strong"]),
327
+ onClick: (x) => a(k.value)
325
328
  }, [
326
- e.value.includes(k.value) ? (d(), R(s(X), {
329
+ e.value.includes(k.value) ? (d(), M(s(X), {
327
330
  key: 0,
328
331
  name: "checkCustom",
329
332
  size: 12
330
- })) : q("", !0),
333
+ })) : L("", !0),
331
334
  H(" " + C(k.label), 1)
332
- ], 10, la))), 128))
333
- ], 8, aa))
335
+ ], 10, ia))), 128))
336
+ ], 8, ra))
334
337
  ]),
335
338
  _: 2
336
339
  }, [
@@ -357,11 +360,11 @@ const Kt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Pt = ["name
357
360
  } : void 0
358
361
  ]), 1040, ["value"]));
359
362
  }
360
- }), oa = {
363
+ }), ua = {
361
364
  key: 0,
362
365
  class: "flex shrink-0 items-center",
363
366
  "data-test": "field-value"
364
- }, na = ["id", "value", "name", "placeholder", "disabled", "required", "aria-expanded", "aria-controls", "aria-activedescendant", "aria-required", "aria-invalid", "aria-describedby"], sa = { class: "block break-words text-body text-content-strong" }, co = /* @__PURE__ */ G({
367
+ }, da = ["id", "value", "name", "placeholder", "disabled", "required", "aria-expanded", "aria-controls", "aria-activedescendant", "aria-required", "aria-invalid", "aria-describedby"], ca = { class: "block break-words text-body text-content-strong" }, ko = /* @__PURE__ */ G({
365
368
  __name: "ComboField",
366
369
  props: /* @__PURE__ */ le(/* @__PURE__ */ ce({
367
370
  label: {},
@@ -389,49 +392,49 @@ const Kt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Pt = ["name
389
392
  modelModifiers: {}
390
393
  }),
391
394
  emits: /* @__PURE__ */ le(["picked", "focus", "blur"], ["update:modelValue"]),
392
- setup(l, { expose: a, emit: e }) {
393
- const t = l, o = re(l, "modelValue"), n = e, { t: u } = oe(), r = !!et(), m = Me("text", () => t.error ? "error" : t.disabled ? "locked" : "rest"), k = h(() => t.rowLayout === "stacked"), x = h(() => r && !k.value ? bt(t.width) : "w-full"), $ = U("input"), i = U("anchor"), v = Ne(null), g = Ne(""), T = yt({
394
- source: () => t.search ?? t.options,
395
- minLength: () => t.minLength,
396
- debounce: () => t.debounce,
397
- limit: () => t.limit,
395
+ setup(l, { expose: t, emit: e }) {
396
+ const a = l, o = re(l, "modelValue"), n = e, { t: u } = oe(), r = !!tt(), m = Re("text", () => a.error ? "error" : a.disabled ? "locked" : "rest"), k = h(() => a.rowLayout === "stacked"), x = h(() => r && !k.value ? ht(a.width) : "w-full"), $ = U("input"), i = U("anchor"), v = Ee(null), g = Ee(""), D = xt({
397
+ source: () => a.search ?? a.options,
398
+ minLength: () => a.minLength,
399
+ debounce: () => a.debounce,
400
+ limit: () => a.limit,
398
401
  listAllWhenEmpty: !0,
399
- recents: () => t.recents
400
- }), { items: w, open: F, status: O, highlighted: E, showingRecent: N } = T, V = h(() => {
401
- const z = o.value;
402
- return z === null ? null : [v.value, t.selected, ...t.options ?? []].find((A) => A?.value === z) ?? null;
402
+ recents: () => a.recents
403
+ }), { items: w, open: F, status: O, highlighted: j, showingRecent: E } = D, V = h(() => {
404
+ const q = o.value;
405
+ return q === null ? null : [v.value, a.selected, ...a.options ?? []].find((A) => A?.value === q) ?? null;
403
406
  });
404
- ge(V, (z) => {
405
- F.value || (g.value = z?.label ?? "");
407
+ ge(V, (q) => {
408
+ F.value || (g.value = q?.label ?? "");
406
409
  }, { immediate: !0 });
407
- function Q(z) {
408
- g.value = z.target.value, T.ask(g.value), g.value === "" && (o.value = null, v.value = null);
410
+ function Q(q) {
411
+ g.value = q.target.value, D.ask(g.value), g.value === "" && (o.value = null, v.value = null);
409
412
  }
410
- function ee(z) {
411
- n("focus", z), t.disabled || T.show("");
413
+ function ee(q) {
414
+ n("focus", q), a.disabled || D.show("");
412
415
  }
413
- function ne(z) {
414
- T.close(), T.remember(z), v.value = z, o.value = z.value, g.value = z.label, n("picked", z);
416
+ function ne(q) {
417
+ D.close(), D.remember(q), v.value = q, o.value = q.value, g.value = q.label, n("picked", q);
415
418
  }
416
- function ie(z) {
417
- T.close(), g.value = V.value?.label ?? "", n("blur", z);
419
+ function ie(q) {
420
+ D.close(), g.value = V.value?.label ?? "", n("blur", q);
418
421
  }
419
- const ue = h(() => ht(F.value, w.value.length, O.value, !0));
420
- return a({ focus: () => $.value?.focus() }), (z, A) => (d(), R(ye, J(s(fe)(t), {
422
+ const ue = h(() => wt(F.value, w.value.length, O.value, !0));
423
+ return t({ focus: () => $.value?.focus() }), (q, A) => (d(), M(ye, J(s(fe)(a), {
421
424
  value: V.value?.label ?? null,
422
- "row-layout": t.rowLayout
425
+ "row-layout": a.rowLayout
423
426
  }), Z({
424
427
  default: f(({ id: K, describedby: te, invalid: Y }) => [
425
428
  p("div", {
426
429
  ref_key: "anchor",
427
430
  ref: i,
428
- class: j(["flex items-center gap-1.5", [s(m), x.value]])
431
+ class: I(["flex items-center gap-1.5", [s(m), x.value]])
429
432
  }, [
430
- z.$slots.value && V.value ? (d(), y("span", oa, [
431
- S(z.$slots, "value", {
433
+ q.$slots.value && V.value ? (d(), y("span", ua, [
434
+ S(q.$slots, "value", {
432
435
  option: V.value
433
436
  })
434
- ])) : q("", !0),
437
+ ])) : L("", !0),
435
438
  p("input", {
436
439
  id: K,
437
440
  ref_key: "input",
@@ -440,48 +443,48 @@ const Kt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Pt = ["name
440
443
  type: "text",
441
444
  autocomplete: "off",
442
445
  value: g.value,
443
- name: t.name,
444
- placeholder: t.placeholder,
445
- disabled: t.disabled,
446
- required: t.required,
446
+ name: a.name,
447
+ placeholder: a.placeholder,
448
+ disabled: a.disabled,
449
+ required: a.required,
447
450
  "aria-autocomplete": "list",
448
451
  "aria-expanded": ue.value,
449
452
  "aria-controls": `${K}-list`,
450
- "aria-activedescendant": ue.value && s(w).length > 0 ? `${K}-option-${s(E)}` : void 0,
451
- "aria-required": t.required || void 0,
453
+ "aria-activedescendant": ue.value && s(w).length > 0 ? `${K}-option-${s(j)}` : void 0,
454
+ "aria-required": a.required || void 0,
452
455
  "aria-invalid": Y || void 0,
453
456
  "aria-describedby": te,
454
- class: j(["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", r && !k.value ? "compact:text-right" : ""]),
457
+ class: I(["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", r && !k.value ? "compact:text-right" : ""]),
455
458
  onInput: Q,
456
459
  onFocus: ee,
457
460
  onBlur: ie,
458
- onKeydown: A[0] || (A[0] = (se) => s(T).keydown(se, { pick: ne, enterNeedsMove: !1 }))
459
- }, null, 42, na),
460
- I(s(X), {
461
+ onKeydown: A[0] || (A[0] = (se) => s(D).keydown(se, { pick: ne, enterNeedsMove: !1 }))
462
+ }, null, 42, da),
463
+ N(s(X), {
461
464
  name: "search",
462
465
  size: 14,
463
466
  class: "shrink-0 text-content-muted"
464
467
  })
465
468
  ], 2),
466
- I(gt, {
469
+ N(kt, {
467
470
  id: K,
468
471
  anchor: i.value,
469
472
  open: s(F),
470
473
  items: s(w),
471
- highlighted: s(E),
474
+ highlighted: s(j),
472
475
  query: g.value,
473
476
  status: s(O),
474
- recent: s(N),
477
+ recent: s(E),
475
478
  "empty-message": !0,
476
479
  selected: o.value,
477
480
  hint: s(u)("core.form.suggestions.keys_pick"),
478
481
  onPick: ne,
479
- onHover: A[1] || (A[1] = (se) => s(T).highlight(se))
482
+ onHover: A[1] || (A[1] = (se) => s(D).highlight(se))
480
483
  }, Z({ _: 2 }, [
481
- z.$slots.option ? {
484
+ q.$slots.option ? {
482
485
  name: "option",
483
486
  fn: f((se) => [
484
- S(z.$slots, "option", ze(Ve(se)))
487
+ S(q.$slots, "option", qe(Ve(se)))
485
488
  ]),
486
489
  key: "0"
487
490
  } : void 0
@@ -489,31 +492,31 @@ const Kt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Pt = ["name
489
492
  ]),
490
493
  _: 2
491
494
  }, [
492
- z.$slots.trailing ? {
495
+ q.$slots.trailing ? {
493
496
  name: "trailing",
494
497
  fn: f(() => [
495
- S(z.$slots, "trailing")
498
+ S(q.$slots, "trailing")
496
499
  ]),
497
500
  key: "0"
498
501
  } : void 0,
499
- z.$slots.labelTrailing ? {
502
+ q.$slots.labelTrailing ? {
500
503
  name: "labelTrailing",
501
504
  fn: f(() => [
502
- S(z.$slots, "labelTrailing")
505
+ S(q.$slots, "labelTrailing")
503
506
  ]),
504
507
  key: "1"
505
508
  } : void 0,
506
- z.$slots.readonly ? {
509
+ q.$slots.readonly ? {
507
510
  name: "readonly",
508
511
  fn: f(() => [
509
- S(z.$slots, "readonly")
512
+ S(q.$slots, "readonly")
510
513
  ]),
511
514
  key: "2"
512
- } : z.$slots.value && V.value ? {
515
+ } : q.$slots.value && V.value ? {
513
516
  name: "readonly",
514
517
  fn: f(() => [
515
- p("span", sa, [
516
- S(z.$slots, "value", {
518
+ p("span", ca, [
519
+ S(q.$slots, "value", {
517
520
  option: V.value
518
521
  })
519
522
  ])
@@ -522,16 +525,38 @@ const Kt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Pt = ["name
522
525
  } : void 0
523
526
  ]), 1040, ["value", "row-layout"]));
524
527
  }
525
- }), ra = {
528
+ }), ot = /^(0000-00-00|1970-01-01|0001-01-01)/, Ue = (l) => String(l).padStart(2, "0"), nt = (l) => _t(l.getFullYear(), l.getMonth() + 1, l.getDate()), fa = (l) => `${Ue(l.getHours())}:${Ue(l.getMinutes())}`;
529
+ function xo(l) {
530
+ if (l == null || l === "") return null;
531
+ if (l instanceof Date) return Number.isNaN(l.getTime()) ? null : nt(l);
532
+ if (ot.test(l)) return null;
533
+ const t = /^(\d{4}-\d{2}-\d{2})/.exec(l);
534
+ return t && $t(t[1]) ? t[1] : null;
535
+ }
536
+ function ma(l) {
537
+ if (l == null || l === "" || typeof l == "string" && ot.test(l)) return null;
538
+ const t = l instanceof Date ? l : va(l);
539
+ if (Number.isNaN(t.getTime())) return null;
540
+ const e = nt(t);
541
+ return e ? _e(e, fa(t)) : null;
542
+ }
543
+ function va(l) {
544
+ const t = /^(\d{4})-(\d{2})-(\d{2})(?:[T ](\d{2}):(\d{2})(?::(\d{2}))?)?$/.exec(l);
545
+ return t ? new Date(Number(t[1]), Number(t[2]) - 1, Number(t[3]), Number(t[4] ?? 0), Number(t[5] ?? 0), Number(t[6] ?? 0)) : new Date(l);
546
+ }
547
+ function wo(l = /* @__PURE__ */ new Date()) {
548
+ return ma(l) ?? "";
549
+ }
550
+ const pa = {
526
551
  key: 0,
527
552
  class: "whitespace-normal"
528
- }, ia = { class: "whitespace-nowrap" }, ua = { class: "whitespace-nowrap" }, da = ["id", "name", "value", "placeholder", "disabled", "required", "aria-required", "aria-invalid", "aria-describedby"], ca = ["aria-label", "onClick"], fa = {
553
+ }, ba = { class: "whitespace-nowrap" }, ga = { class: "whitespace-nowrap" }, ya = ["id", "name", "value", "placeholder", "disabled", "required", "aria-required", "aria-invalid", "aria-describedby"], ha = ["aria-label", "onClick"], ka = {
529
554
  class: "-m-3 flex",
530
555
  "data-test": "date-time-popover"
531
- }, ma = { class: "flex w-75 flex-col gap-2.5 border-r border-border-separator p-3.5" }, va = {
556
+ }, xa = { class: "flex w-75 flex-col gap-2.5 border-r border-border-separator p-3.5" }, wa = {
532
557
  key: 0,
533
558
  class: "border-t border-border-separator pt-2.5"
534
- }, pa = { class: "flex w-48 flex-col gap-2.5 px-3 py-3.5" }, ba = ["for"], ga = ["id", "value", "placeholder", "aria-invalid"], ya = ["onClick"], fo = /* @__PURE__ */ G({
559
+ }, $a = { class: "flex w-48 flex-col gap-2.5 px-3 py-3.5" }, _a = ["for"], Ca = ["id", "value", "placeholder", "aria-invalid"], Sa = ["onClick"], $o = /* @__PURE__ */ G({
535
560
  __name: "DateTimeField",
536
561
  props: /* @__PURE__ */ le(/* @__PURE__ */ ce({
537
562
  label: {},
@@ -555,112 +580,112 @@ const Kt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Pt = ["name
555
580
  modelModifiers: {}
556
581
  }),
557
582
  emits: /* @__PURE__ */ le(["focus", "blur"], ["update:modelValue"]),
558
- setup(l, { expose: a, emit: e }) {
559
- const t = l, o = re(l, "modelValue"), n = e, { t: u } = oe(), r = at(), m = Ie(), k = U("input"), x = U("popover"), $ = U("calendar"), i = U("sheet"), v = h(() => ({ min: t.min?.slice(0, 10), max: t.max?.slice(0, 10), disabled: t.disabledDates })), g = h(() => t.min && t.min.length === 10 ? `${t.min}T00:00` : t.min), T = h(() => t.max && t.max.length === 10 ? `${t.max}T23:59` : t.max), w = (_, c) => !St(c, { disabled: t.disabledDates }) && (!g.value || _ >= g.value) && (!T.value || _ <= T.value), F = Bt(() => v.value), O = qt(() => t.minuteStep), E = h(() => _e(o.value));
560
- function N(_) {
561
- const { date: c, time: B } = Tt(_), M = c === null ? E.value.day ?? Fe() : F.parse(c);
562
- if (!M) return { error: F.invalidMessage() };
563
- let b = E.value.time ?? Te(t.minuteStep);
583
+ setup(l, { expose: t, emit: e }) {
584
+ const a = l, o = re(l, "modelValue"), n = e, { t: u } = oe(), r = lt(), m = Ne(), k = U("input"), x = U("popover"), $ = U("calendar"), i = U("sheet"), v = h(() => ({ min: a.min?.slice(0, 10), max: a.max?.slice(0, 10), disabled: a.disabledDates })), g = h(() => a.min && a.min.length === 10 ? `${a.min}T00:00` : a.min), D = h(() => a.max && a.max.length === 10 ? `${a.max}T23:59` : a.max), w = (_, c) => !Lt(c, { disabled: a.disabledDates }) && (!g.value || _ >= g.value) && (!D.value || _ <= D.value), F = Vt(() => v.value), O = Rt(() => a.minuteStep), j = h(() => Ce(o.value));
585
+ function E(_) {
586
+ const { date: c, time: B } = Mt(_), R = c === null ? j.value.day ?? Fe() : F.parse(c);
587
+ if (!R) return { error: F.invalidMessage() };
588
+ let b = j.value.time ?? De(a.minuteStep);
564
589
  if (B !== null) {
565
- const L = O.parse(B);
566
- if ("error" in L) return L;
567
- b = L.value;
590
+ const T = O.parse(B);
591
+ if ("error" in T) return T;
592
+ b = T.value;
568
593
  }
569
- const D = Ce(M, b);
570
- return w(D, M) ? { value: D } : { error: F.unavailableMessage() };
594
+ const z = _e(R, b);
595
+ return w(z, R) ? { value: z } : { error: F.unavailableMessage() };
571
596
  }
572
- const V = Ge({ model: o, display: (_) => `${r.date(_e(_).day)} ${_e(_).time ?? ""}`.trim(), parse: N }), Q = h({
573
- get: () => E.value.time,
597
+ const V = Ge({ model: o, display: (_) => `${r.date(Ce(_).day)} ${Ce(_).time ?? ""}`.trim(), parse: E }), Q = h({
598
+ get: () => j.value.time,
574
599
  set: (_) => {
575
- _ && kt(_) && (o.value = Ce(E.value.day ?? Fe(), _));
600
+ _ && Ct(_) && (o.value = _e(j.value.day ?? Fe(), _));
576
601
  }
577
- }), ee = Ge({ model: Q, display: (_) => _, parse: O.parse }), ne = Lt(() => t.quickPicks ?? (m.value ? void 0 : []), () => m.value, () => v.value), ie = h(() => t.error || V.message.value || ee.message.value), ue = h(() => o.value ? r.dateTime(o.value) : null), z = Me("date", () => ie.value ? "error" : t.disabled ? "locked" : "rest"), A = h(() => {
602
+ }), ee = Ge({ model: Q, display: (_) => _, parse: O.parse }), ne = zt(() => a.quickPicks ?? (m.value ? void 0 : []), () => m.value, () => v.value), ie = h(() => a.error || V.message.value || ee.message.value), ue = h(() => o.value ? r.dateTime(o.value) : null), q = Re("date", () => ie.value ? "error" : a.disabled ? "locked" : "rest"), A = h(() => {
578
603
  const _ = V.typed.value;
579
- return _ ? _e(_).day ?? null : null;
580
- }), K = h(() => A.value ?? (xt(E.value.day) ? E.value.day : null)), te = h(() => V.typed.value ? _e(V.typed.value).time : E.value.time);
604
+ return _ ? Ce(_).day ?? null : null;
605
+ }), K = h(() => A.value ?? (St(j.value.day) ? j.value.day : null)), te = h(() => V.typed.value ? Ce(V.typed.value).time : j.value.time);
581
606
  function Y(_) {
582
- _ && V.set(Ce(_, E.value.time ?? Te(t.minuteStep)));
607
+ _ && V.set(_e(_, j.value.time ?? De(a.minuteStep)));
583
608
  }
584
609
  function se(_) {
585
- _ && V.set(Ce(E.value.day ?? Fe(), _));
610
+ _ && V.set(_e(j.value.day ?? Fe(), _));
586
611
  }
587
612
  function he(_) {
588
- V.set(Ce(Fe(), Te(t.minuteStep))), _();
613
+ V.set(_e(Fe(), De(a.minuteStep))), _();
589
614
  }
590
- const we = Re();
615
+ const we = Me();
591
616
  async function ke(_) {
592
- t.disabled || (x.value?.present(), _ && (await xe(), await xe(), $.value?.focus()));
617
+ a.disabled || (x.value?.present(), _ && (await xe(), await xe(), $.value?.focus()));
593
618
  }
594
619
  function ae(_) {
595
620
  _.key === "Enter" ? (V.commit(), x.value?.dismiss()) : _.key === "ArrowDown" && (_.preventDefault(), ke(!0));
596
621
  }
597
- return a({ focus: () => k.value?.focus() }), (_, c) => (d(), R(ye, J({ ...s(fe)(t), error: ie.value }, {
622
+ return t({ focus: () => k.value?.focus() }), (_, c) => (d(), M(ye, J({ ...s(fe)(a), error: ie.value }, {
598
623
  value: ue.value,
599
624
  "value-style": "numeric"
600
625
  }), Z({
601
- default: f(({ id: B, describedby: M, invalid: b }) => [
626
+ default: f(({ id: B, describedby: R, invalid: b }) => [
602
627
  s(m) ? (d(), y(de, { key: 0 }, [
603
- I(tt, J({ id: B, "aria-describedby": M }, {
604
- disabled: t.disabled,
628
+ N(at, J({ id: B, "aria-describedby": R }, {
629
+ disabled: a.disabled,
605
630
  invalid: b,
606
631
  placeholder: s(u)("core.form.select.choose"),
607
- onClick: c[0] || (c[0] = (D) => i.value?.present())
632
+ onClick: c[0] || (c[0] = (z) => i.value?.present())
608
633
  }), {
609
634
  default: f(() => [
610
- o.value ? (d(), y("span", ra, [
611
- p("span", ia, C(s(r).date(E.value.day)), 1),
635
+ o.value ? (d(), y("span", pa, [
636
+ p("span", ba, C(s(r).date(j.value.day)), 1),
612
637
  c[8] || (c[8] = H(C(" "), -1)),
613
- p("span", ua, C(E.value.time), 1)
614
- ])) : q("", !0)
638
+ p("span", ga, C(j.value.time), 1)
639
+ ])) : L("", !0)
615
640
  ]),
616
641
  _: 1
617
642
  }, 16, ["disabled", "invalid", "placeholder"]),
618
- I(wt, {
643
+ N(Ft, {
619
644
  ref_key: "sheet",
620
645
  ref: i,
621
- title: t.label ?? s(u)("core.form.date.calendar"),
646
+ title: a.label ?? s(u)("core.form.date.calendar"),
622
647
  mode: "datetime",
623
648
  "model-value": o.value,
624
649
  min: v.value.min,
625
650
  max: v.value.max,
626
- "disabled-dates": t.disabledDates,
627
- "open-on": t.openOn,
651
+ "disabled-dates": a.disabledDates,
652
+ "open-on": a.openOn,
628
653
  shortcuts: s(ne),
629
- step: t.minuteStep,
630
- clearable: !t.required,
654
+ step: a.minuteStep,
655
+ clearable: !a.required,
631
656
  "onUpdate:modelValue": s(V).set
632
657
  }, null, 8, ["title", "model-value", "min", "max", "disabled-dates", "open-on", "shortcuts", "step", "clearable", "onUpdate:modelValue"])
633
- ], 64)) : (d(), R(je, {
658
+ ], 64)) : (d(), M(Ie, {
634
659
  key: 1,
635
660
  ref_key: "popover",
636
661
  ref: x,
637
- label: t.label ?? s(u)("core.form.date.calendar"),
662
+ label: a.label ?? s(u)("core.form.date.calendar"),
638
663
  width: "auto",
639
664
  placement: "bottom-start",
640
665
  arrow: !1,
641
666
  autofocus: !1
642
667
  }, {
643
- trigger: f(({ attrs: D, presented: L }) => [
668
+ trigger: f(({ attrs: z, presented: T }) => [
644
669
  p("div", {
645
- class: j(["inline-flex max-w-full items-center gap-2", s(z)])
670
+ class: I(["inline-flex max-w-full items-center gap-2", s(q)])
646
671
  }, [
647
672
  p("input", J({
648
673
  id: B,
649
674
  ref_key: "input",
650
675
  ref: k
651
- }, D, {
676
+ }, z, {
652
677
  type: "text",
653
678
  role: "combobox",
654
679
  autocomplete: "off",
655
680
  size: "20",
656
- name: t.name,
681
+ name: a.name,
657
682
  value: s(V).text.value,
658
683
  placeholder: s(F).placeholder.value,
659
- disabled: t.disabled,
660
- required: t.required,
661
- "aria-required": t.required || void 0,
684
+ disabled: a.disabled,
685
+ required: a.required,
686
+ "aria-required": a.required || void 0,
662
687
  "aria-invalid": b || void 0,
663
- "aria-describedby": M,
688
+ "aria-describedby": R,
664
689
  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",
665
690
  onInput: c[1] || (c[1] = (W) => s(V).input(W.target.value)),
666
691
  onFocus: c[2] || (c[2] = (W) => n("focus", W)),
@@ -669,48 +694,48 @@ const Kt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Pt = ["name
669
694
  }),
670
695
  onKeydown: ae,
671
696
  onClick: c[4] || (c[4] = (W) => ke(!1))
672
- }), null, 16, da),
673
- t.disabled ? q("", !0) : (d(), y("button", {
697
+ }), null, 16, ya),
698
+ a.disabled ? L("", !0) : (d(), y("button", {
674
699
  key: 0,
675
700
  type: "button",
676
701
  tabindex: "-1",
677
702
  "aria-label": s(u)("core.form.date.open"),
678
703
  class: "mr-2 flex shrink-0 cursor-pointer items-center text-content-link",
679
- onClick: (W) => L ? x.value?.dismiss() : ke(!0)
704
+ onClick: (W) => T ? x.value?.dismiss() : ke(!0)
680
705
  }, [
681
- I(s(X), {
706
+ N(s(X), {
682
707
  name: "calendarLine",
683
708
  size: 18
684
709
  })
685
- ], 8, ca))
710
+ ], 8, ha))
686
711
  ], 2)
687
712
  ]),
688
- default: f(({ dismiss: D }) => [
689
- p("div", fa, [
690
- p("div", ma, [
691
- I($t, {
713
+ default: f(({ dismiss: z }) => [
714
+ p("div", ka, [
715
+ p("div", xa, [
716
+ N(Bt, {
692
717
  ref_key: "calendar",
693
718
  ref: $,
694
719
  "model-value": K.value,
695
720
  min: v.value.min,
696
721
  max: v.value.max,
697
- "disabled-dates": t.disabledDates,
698
- "open-on": t.openOn,
722
+ "disabled-dates": a.disabledDates,
723
+ "open-on": a.openOn,
699
724
  "onUpdate:modelValue": Y
700
725
  }, null, 8, ["model-value", "min", "max", "disabled-dates", "open-on"]),
701
- s(ne).length > 0 ? (d(), y("div", va, [
702
- I(_t, {
726
+ s(ne).length > 0 ? (d(), y("div", wa, [
727
+ N(Tt, {
703
728
  items: s(ne),
704
729
  selected: K.value,
705
730
  onPick: Y
706
731
  }, null, 8, ["items", "selected"])
707
- ])) : q("", !0)
732
+ ])) : L("", !0)
708
733
  ]),
709
- p("div", pa, [
734
+ p("div", $a, [
710
735
  p("label", {
711
736
  for: s(we),
712
737
  class: "text-footnote font-semibold text-content-muted"
713
- }, C(s(u)("core.form.time.label")), 9, ba),
738
+ }, C(s(u)("core.form.time.label")), 9, _a),
714
739
  p("input", {
715
740
  id: s(we),
716
741
  type: "text",
@@ -720,20 +745,20 @@ const Kt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Pt = ["name
720
745
  placeholder: s(O).placeholder.value,
721
746
  "aria-invalid": s(ee).message.value ? !0 : void 0,
722
747
  class: "rounded-control bg-fill p-1.5 text-center text-[20px] font-semibold tabular-nums text-content-strong placeholder:text-base placeholder:font-normal placeholder:text-content-disabled focus:outline-2 focus:outline-border-focus",
723
- onInput: c[5] || (c[5] = (L) => s(ee).input(L.target.value)),
724
- onBlur: c[6] || (c[6] = (L) => s(ee).commit()),
725
- onKeydown: c[7] || (c[7] = Se(pe((L) => s(ee).commit(), ["prevent"]), ["enter"]))
726
- }, null, 40, ga),
727
- I(Ct, {
748
+ onInput: c[5] || (c[5] = (T) => s(ee).input(T.target.value)),
749
+ onBlur: c[6] || (c[6] = (T) => s(ee).commit()),
750
+ onKeydown: c[7] || (c[7] = Se(pe((T) => s(ee).commit(), ["prevent"]), ["enter"]))
751
+ }, null, 40, Ca),
752
+ N(Dt, {
728
753
  "model-value": te.value,
729
- step: t.minuteStep,
754
+ step: a.minuteStep,
730
755
  "onUpdate:modelValue": se
731
756
  }, null, 8, ["model-value", "step"]),
732
757
  p("button", {
733
758
  type: "button",
734
759
  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",
735
- onClick: (L) => he(D)
736
- }, C(s(u)("core.form.time.now")), 9, ya)
760
+ onClick: (T) => he(z)
761
+ }, C(s(u)("core.form.time.now")), 9, Sa)
737
762
  ])
738
763
  ])
739
764
  ]),
@@ -766,25 +791,25 @@ const Kt = ["id", "aria-label", "aria-describedby", "aria-invalid"], Pt = ["name
766
791
  ]), 1040, ["value"]));
767
792
  }
768
793
  });
769
- function lt(l, a = {}) {
770
- const e = a.accept ?? [];
794
+ function st(l, t = {}) {
795
+ const e = t.accept ?? [];
771
796
  if (e.length > 0) {
772
- const t = l.name.lastIndexOf("."), o = t === -1 ? "" : l.name.slice(t).toLowerCase(), n = l.type.toLowerCase();
797
+ const a = l.name.lastIndexOf("."), o = a === -1 ? "" : l.name.slice(a).toLowerCase(), n = l.type.toLowerCase();
773
798
  if (!e.some((r) => {
774
799
  const m = r.trim().toLowerCase();
775
800
  return m.startsWith(".") ? m === o : m.endsWith("/*") ? n.startsWith(m.slice(0, -1)) : m === n;
776
801
  })) return "invalid_type";
777
802
  }
778
- return (a.maxSize ?? 0) > 0 && l.size > (a.maxSize ?? 0) ? "too_large" : null;
803
+ return (t.maxSize ?? 0) > 0 && l.size > (t.maxSize ?? 0) ? "too_large" : null;
779
804
  }
780
805
  function Be(l) {
781
806
  return l < 1024 ? `${l} B` : l < 1024 * 1024 ? `${Math.round(l / 1024)} KB` : `${(l / (1024 * 1024)).toFixed(l % (1024 * 1024) === 0 ? 0 : 1)} MB`;
782
807
  }
783
- const ha = { class: "w-full" }, ka = ["id", "accept", "disabled", "aria-describedby", "aria-invalid"], xa = {
808
+ const Fa = { class: "w-full" }, Ba = ["id", "accept", "disabled", "aria-describedby", "aria-invalid"], Ta = {
784
809
  key: 0,
785
810
  class: "flex items-center gap-3 rounded-group bg-fill p-3",
786
811
  "data-test": "file-selected"
787
- }, wa = { class: "min-w-0 flex-1" }, $a = { class: "truncate text-body font-medium text-content-strong" }, _a = { class: "text-footnote text-content-muted" }, Ca = ["disabled", "aria-label", "title"], Sa = ["aria-disabled"], Fa = { class: "font-semibold text-content-link" }, Ba = { class: "text-content-muted" }, mo = /* @__PURE__ */ G({
812
+ }, Da = { class: "min-w-0 flex-1" }, La = { class: "truncate text-body font-medium text-content-strong" }, qa = { class: "text-footnote text-content-muted" }, Va = ["disabled", "aria-label", "title"], za = ["aria-disabled"], Ma = { class: "font-semibold text-content-link" }, Ra = { class: "text-content-muted" }, _o = /* @__PURE__ */ G({
788
813
  __name: "FileField",
789
814
  props: /* @__PURE__ */ le(/* @__PURE__ */ ce({
790
815
  label: {},
@@ -805,28 +830,28 @@ const ha = { class: "w-full" }, ka = ["id", "accept", "disabled", "aria-describe
805
830
  modelModifiers: {}
806
831
  }),
807
832
  emits: ["update:modelValue"],
808
- setup(l, { expose: a }) {
809
- const e = l, t = re(l, "modelValue"), { t: o } = oe(), n = U("chooser"), u = P(!1), r = P(null), m = h(() => {
833
+ setup(l, { expose: t }) {
834
+ const e = l, a = re(l, "modelValue"), { t: o } = oe(), n = U("chooser"), u = P(!1), r = P(null), m = h(() => {
810
835
  if (e.hint) return e.hint;
811
836
  const $ = [];
812
837
  return e.accept.length && $.push(o("core.form.file.allowed", { formats: e.accept.map((i) => i.replace(/^\./, "").toUpperCase()).join(", ") })), e.maxSize > 0 && $.push(o("core.form.file.max_size", { size: Be(e.maxSize) })), $.join(" · ") || void 0;
813
838
  });
814
839
  function k($) {
815
840
  if (!$) return;
816
- const i = lt($, { accept: e.accept, maxSize: e.maxSize });
817
- i ? (r.value = i === "invalid_type" ? o("core.form.file.invalid_type") : o("core.form.file.too_large", { size: Be(e.maxSize) }), t.value = null) : (r.value = null, t.value = $);
841
+ const i = st($, { accept: e.accept, maxSize: e.maxSize });
842
+ i ? (r.value = i === "invalid_type" ? o("core.form.file.invalid_type") : o("core.form.file.too_large", { size: Be(e.maxSize) }), a.value = null) : (r.value = null, a.value = $);
818
843
  }
819
844
  function x() {
820
- t.value = null, r.value = null;
845
+ a.value = null, r.value = null;
821
846
  }
822
- return ge(t, ($) => {
847
+ return ge(a, ($) => {
823
848
  !$ && n.value && (n.value.value = "");
824
- }), a({ clear: x }), ($, i) => (d(), R(ye, J({ ...s(fe)(e), hint: m.value, error: r.value ?? e.error }, {
825
- value: t.value?.name ?? null,
849
+ }), t({ clear: x }), ($, i) => (d(), M(ye, J({ ...s(fe)(e), hint: m.value, error: r.value ?? e.error }, {
850
+ value: a.value?.name ?? null,
826
851
  "row-layout": "stacked"
827
852
  }), Z({
828
- default: f(({ id: v, describedby: g, invalid: T }) => [
829
- p("div", ha, [
853
+ default: f(({ id: v, describedby: g, invalid: D }) => [
854
+ p("div", Fa, [
830
855
  p("input", {
831
856
  id: v,
832
857
  ref_key: "chooser",
@@ -837,13 +862,13 @@ const ha = { class: "w-full" }, ka = ["id", "accept", "disabled", "aria-describe
837
862
  accept: e.accept.join(",") || void 0,
838
863
  disabled: e.disabled,
839
864
  "aria-describedby": g,
840
- "aria-invalid": T || void 0,
865
+ "aria-invalid": D || void 0,
841
866
  onChange: i[0] || (i[0] = (w) => k(w.target.files?.[0]))
842
- }, null, 40, ka),
843
- t.value ? (d(), y("div", xa, [
844
- p("div", wa, [
845
- p("p", $a, C(t.value.name), 1),
846
- p("p", _a, C(s(Be)(t.value.size)), 1)
867
+ }, null, 40, Ba),
868
+ a.value ? (d(), y("div", Ta, [
869
+ p("div", Da, [
870
+ p("p", La, C(a.value.name), 1),
871
+ p("p", qa, C(s(Be)(a.value.size)), 1)
847
872
  ]),
848
873
  p("button", {
849
874
  type: "button",
@@ -853,18 +878,18 @@ const ha = { class: "w-full" }, ka = ["id", "accept", "disabled", "aria-describe
853
878
  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",
854
879
  onClick: x
855
880
  }, [
856
- I(s(X), {
881
+ N(s(X), {
857
882
  name: "close",
858
883
  size: 14
859
884
  })
860
- ], 8, Ca)
885
+ ], 8, Va)
861
886
  ])) : e.variant === "dropzone" ? (d(), y("div", {
862
887
  key: 1,
863
888
  role: "button",
864
889
  tabindex: "0",
865
890
  "data-test": "file-dropzone",
866
891
  "aria-disabled": e.disabled || void 0,
867
- class: j(["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", u.value ? "border-border-focus bg-tint-soft" : "border-border-control hover:bg-fill"]),
892
+ 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", u.value ? "border-border-focus bg-tint-soft" : "border-border-control hover:bg-fill"]),
868
893
  onClick: i[1] || (i[1] = (w) => !e.disabled && n.value?.click()),
869
894
  onKeydown: [
870
895
  i[2] || (i[2] = Se(pe((w) => !e.disabled && n.value?.click(), ["prevent"]), ["enter"])),
@@ -876,9 +901,9 @@ const ha = { class: "w-full" }, ka = ["id", "accept", "disabled", "aria-describe
876
901
  u.value = !1, e.disabled || k(w.dataTransfer?.files?.[0]);
877
902
  }, ["prevent"]))
878
903
  }, [
879
- p("span", Fa, C(s(o)("core.form.file.choose")), 1),
880
- p("span", Ba, C(" " + s(o)("core.form.file.drop")), 1)
881
- ], 42, Sa)) : (d(), R(be, {
904
+ p("span", Ma, C(s(o)("core.form.file.choose")), 1),
905
+ p("span", Ra, C(" " + s(o)("core.form.file.drop")), 1)
906
+ ], 42, za)) : (d(), M(be, {
882
907
  key: 2,
883
908
  disabled: e.disabled,
884
909
  onClick: i[7] || (i[7] = (w) => n.value?.click())
@@ -915,7 +940,7 @@ const ha = { class: "w-full" }, ka = ["id", "accept", "disabled", "aria-describe
915
940
  } : void 0
916
941
  ]), 1040, ["value"]));
917
942
  }
918
- }), La = ["disabled"], vo = /* @__PURE__ */ G({
943
+ }), Na = ["disabled"], Co = /* @__PURE__ */ G({
919
944
  __name: "FormGroupButton",
920
945
  props: {
921
946
  label: {},
@@ -923,18 +948,18 @@ const ha = { class: "w-full" }, ka = ["id", "accept", "disabled", "aria-describe
923
948
  disabled: { type: Boolean, default: !1 }
924
949
  },
925
950
  emits: ["click"],
926
- setup(l, { emit: a }) {
927
- const e = l, t = a;
928
- return (o, n) => (d(), R(ot, null, {
951
+ setup(l, { emit: t }) {
952
+ const e = l, a = t;
953
+ return (o, n) => (d(), M(rt, null, {
929
954
  default: f(() => [
930
- I(mt, { layout: "stacked" }, {
955
+ N(bt, { layout: "stacked" }, {
931
956
  default: f(() => [
932
957
  p("button", {
933
958
  type: "button",
934
959
  disabled: e.disabled,
935
- class: j(["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"]),
936
- onClick: n[0] || (n[0] = (u) => t("click"))
937
- }, C(e.label), 11, La)
960
+ 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"]),
961
+ onClick: n[0] || (n[0] = (u) => a("click"))
962
+ }, C(e.label), 11, Na)
938
963
  ]),
939
964
  _: 1
940
965
  })
@@ -942,29 +967,29 @@ const ha = { class: "w-full" }, ka = ["id", "accept", "disabled", "aria-describe
942
967
  _: 1
943
968
  }));
944
969
  }
945
- }), po = /* @__PURE__ */ G({
970
+ }), So = /* @__PURE__ */ G({
946
971
  __name: "FormIndent",
947
972
  setup(l) {
948
- return rt(vt, pt() + 1), (a, e) => S(a.$slots, "default");
973
+ return dt(gt, yt() + 1), (t, e) => S(t.$slots, "default");
949
974
  }
950
975
  });
951
- function Ta(l, a) {
952
- return a.filter((e) => (l?.[e] ?? "").trim() === "");
976
+ function Ia(l, t) {
977
+ return t.filter((e) => (l?.[e] ?? "").trim() === "");
953
978
  }
954
- const qa = ["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"], Da = {
979
+ const Oa = ["id", "aria-labelledby"], ja = ["id", "value", "lang", "name", "rows", "placeholder", "maxlength", "disabled", "aria-required", "aria-invalid", "aria-describedby"], Ea = ["id", "value", "lang", "name", "placeholder", "maxlength", "disabled", "aria-required", "aria-invalid", "aria-describedby"], Aa = {
955
980
  key: 0,
956
981
  class: "mt-1.5 flex items-center gap-2"
957
- }, Ra = {
982
+ }, Ga = {
958
983
  key: 0,
959
984
  class: "flex-1 text-footnote text-status-warning-content",
960
985
  "data-test": "i18n-missing"
961
- }, Ma = {
986
+ }, Ka = {
962
987
  key: 1,
963
988
  class: "flex-1"
964
- }, Ia = ["aria-label"], ja = ["id", "aria-selected", "tabindex", "aria-controls", "aria-label", "title", "onClick", "onKeydown"], Oa = ["data-state"], Ea = { class: "w-full" }, Na = { class: "whitespace-pre-line break-words text-body text-content-strong" }, Aa = ["aria-expanded"], Ga = { class: "flex-1" }, Ka = {
989
+ }, Pa = ["aria-label"], Ha = ["id", "aria-selected", "tabindex", "aria-controls", "aria-label", "title", "onClick", "onKeydown"], Ua = ["data-state"], Ya = { class: "w-full" }, Wa = { class: "whitespace-pre-line break-words text-body text-content-strong" }, Ja = ["aria-expanded"], Za = { class: "flex-1" }, Xa = {
965
990
  key: 0,
966
991
  class: "mt-1 flex flex-col gap-1.5"
967
- }, Pa = ["title"], bo = /* @__PURE__ */ G({
992
+ }, Qa = ["title"], Fo = /* @__PURE__ */ G({
968
993
  __name: "I18nField",
969
994
  props: /* @__PURE__ */ le(/* @__PURE__ */ ce({
970
995
  label: {},
@@ -989,8 +1014,8 @@ const qa = ["id", "aria-labelledby"], za = ["id", "value", "lang", "name", "rows
989
1014
  modelModifiers: {}
990
1015
  }),
991
1016
  emits: ["update:modelValue"],
992
- setup(l, { expose: a }) {
993
- const e = l, t = re(l, "modelValue"), { t: o, locale: n, availableLocales: u } = oe(), r = at(), m = Je(zt, null), k = Re(), x = U("field"), $ = U("root"), { editable: i } = Qe(e), v = Me(e.multiline ? "area" : "text", () => e.error || Y.value ? "error" : e.disabled ? "locked" : "rest"), g = h(() => e.locales ?? m?.locales ?? u), T = h(() => e.defaultLocale ?? g.value[0] ?? ""), w = h(() => g.value.includes(T.value) ? [T.value, ...g.value.filter((b) => b !== T.value)] : g.value), F = P(null), O = h(() => F.value !== null && w.value.includes(F.value) ? F.value : w.value.includes(n.value) ? n.value : T.value), E = (b) => t.value[b] ?? "", N = (b) => E(b).trim() !== "", V = (b) => b.toUpperCase();
1017
+ setup(l, { expose: t }) {
1018
+ const e = l, a = re(l, "modelValue"), { t: o, locale: n, availableLocales: u } = oe(), r = lt(), m = Ze(Nt, null), k = Me(), x = U("field"), $ = U("root"), { editable: i } = et(e), v = Re(e.multiline ? "area" : "text", () => e.error || Y.value ? "error" : e.disabled ? "locked" : "rest"), g = h(() => e.locales ?? m?.locales ?? u), D = h(() => e.defaultLocale ?? g.value[0] ?? ""), w = h(() => g.value.includes(D.value) ? [D.value, ...g.value.filter((b) => b !== D.value)] : g.value), F = P(null), O = h(() => F.value !== null && w.value.includes(F.value) ? F.value : w.value.includes(n.value) ? n.value : D.value), j = (b) => a.value[b] ?? "", E = (b) => j(b).trim() !== "", V = (b) => b.toUpperCase();
994
1019
  function Q(b) {
995
1020
  try {
996
1021
  return new Intl.DisplayNames([r.intlLocale], { type: "language" }).of(b) ?? V(b);
@@ -999,15 +1024,15 @@ const qa = ["id", "aria-labelledby"], za = ["id", "value", "lang", "name", "rows
999
1024
  }
1000
1025
  }
1001
1026
  const ee = (b) => b.map(Q).join(", ");
1002
- function ne(b, D) {
1003
- t.value = { ...t.value, [b]: D };
1027
+ function ne(b, z) {
1028
+ a.value = { ...a.value, [b]: z };
1004
1029
  }
1005
1030
  const ie = (b) => `${k}-tab-${b}`;
1006
- function ue(b, D) {
1007
- F.value = b, D && xe(() => x.value?.focus());
1031
+ function ue(b, z) {
1032
+ F.value = b, z && xe(() => x.value?.focus());
1008
1033
  }
1009
- function z(b, D) {
1010
- const L = w.value.length - 1, W = { ArrowRight: D + 1, ArrowLeft: D - 1, Home: 0, End: L }[b.key];
1034
+ function q(b, z) {
1035
+ const T = w.value.length - 1, W = { ArrowRight: z + 1, ArrowLeft: z - 1, Home: 0, End: T }[b.key];
1011
1036
  if (W === void 0) return;
1012
1037
  b.preventDefault();
1013
1038
  const ve = w.value[(W + w.value.length) % w.value.length];
@@ -1017,17 +1042,17 @@ const qa = ["id", "aria-labelledby"], za = ["id", "value", "lang", "name", "rows
1017
1042
  function K(b) {
1018
1043
  $.value?.contains(b.relatedTarget) || (A.value = !0);
1019
1044
  }
1020
- const te = h(() => Ta(t.value, e.requiredLocales)), Y = h(() => A.value && te.value.length > 0 ? o("core.form.i18n.required", { languages: ee(te.value) }) : void 0), se = h(() => e.requiredLocales.length > 0 ? te.value.length === 0 : w.value.some(N)), he = h(() => w.value.filter((b) => !N(b) && !(Y.value && te.value.includes(b)))), we = h(() => N(T.value) && w.value.some((b) => b !== T.value && !N(b)));
1045
+ const te = h(() => Ia(a.value, e.requiredLocales)), Y = h(() => A.value && te.value.length > 0 ? o("core.form.i18n.required", { languages: ee(te.value) }) : void 0), se = h(() => e.requiredLocales.length > 0 ? te.value.length === 0 : w.value.some(E)), he = h(() => w.value.filter((b) => !E(b) && !(Y.value && te.value.includes(b)))), we = h(() => E(D.value) && w.value.some((b) => b !== D.value && !E(b)));
1021
1046
  function ke() {
1022
- const b = E(T.value);
1023
- t.value = { ...t.value, ...Object.fromEntries(w.value.filter((D) => !N(D)).map((D) => [D, b])) };
1047
+ const b = j(D.value);
1048
+ a.value = { ...a.value, ...Object.fromEntries(w.value.filter((z) => !E(z)).map((z) => [z, b])) };
1024
1049
  }
1025
- const ae = h(() => [n.value, T.value, ...w.value].find((b) => w.value.includes(b) && N(b))), _ = h(() => w.value.filter((b) => b !== ae.value)), c = h(() => _.value.filter(N).length), B = P(!1), M = h(() => e.label && !i.value && ae.value ? `${e.label} · ${V(ae.value)}` : e.label);
1026
- return a({ focus: () => x.value?.focus() }), (b, D) => (d(), R(ye, J({ ...s(fe)(e), label: M.value, error: e.error ?? Y.value, required: e.required || e.requiredLocales.length > 0 }, {
1027
- value: s(i) ? se.value ? "written" : null : ae.value ? E(ae.value) : null,
1050
+ const ae = h(() => [n.value, D.value, ...w.value].find((b) => w.value.includes(b) && E(b))), _ = h(() => w.value.filter((b) => b !== ae.value)), c = h(() => _.value.filter(E).length), B = P(!1), R = h(() => e.label && !i.value && ae.value ? `${e.label} · ${V(ae.value)}` : e.label);
1051
+ return t({ focus: () => x.value?.focus() }), (b, z) => (d(), M(ye, J({ ...s(fe)(e), label: R.value, error: e.error ?? Y.value, required: e.required || e.requiredLocales.length > 0 }, {
1052
+ value: s(i) ? se.value ? "written" : null : ae.value ? j(ae.value) : null,
1028
1053
  "row-layout": "stacked"
1029
1054
  }), Z({
1030
- default: f(({ id: L, describedby: W, invalid: ve }) => [
1055
+ default: f(({ id: T, describedby: W, invalid: ve }) => [
1031
1056
  p("div", {
1032
1057
  ref_key: "root",
1033
1058
  ref: $,
@@ -1040,14 +1065,14 @@ const qa = ["id", "aria-labelledby"], za = ["id", "value", "lang", "name", "rows
1040
1065
  "aria-labelledby": ie(O.value)
1041
1066
  }, [
1042
1067
  p("div", {
1043
- class: j(["w-full", s(v)])
1068
+ class: I(["w-full", s(v)])
1044
1069
  }, [
1045
1070
  e.multiline ? (d(), y("textarea", {
1046
1071
  key: 0,
1047
- id: L,
1072
+ id: T,
1048
1073
  ref_key: "field",
1049
1074
  ref: x,
1050
- value: E(O.value),
1075
+ value: j(O.value),
1051
1076
  lang: O.value,
1052
1077
  name: e.name,
1053
1078
  rows: e.rows,
@@ -1059,13 +1084,13 @@ const qa = ["id", "aria-labelledby"], za = ["id", "value", "lang", "name", "rows
1059
1084
  "aria-describedby": W,
1060
1085
  "data-test": "i18n-input",
1061
1086
  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",
1062
- onInput: D[0] || (D[0] = (Le) => ne(O.value, Le.target.value))
1063
- }, null, 40, za)) : (d(), y("input", {
1087
+ onInput: z[0] || (z[0] = (Te) => ne(O.value, Te.target.value))
1088
+ }, null, 40, ja)) : (d(), y("input", {
1064
1089
  key: 1,
1065
- id: L,
1090
+ id: T,
1066
1091
  ref_key: "field",
1067
1092
  ref: x,
1068
- value: E(O.value),
1093
+ value: j(O.value),
1069
1094
  lang: O.value,
1070
1095
  type: "text",
1071
1096
  name: e.name,
@@ -1077,20 +1102,20 @@ const qa = ["id", "aria-labelledby"], za = ["id", "value", "lang", "name", "rows
1077
1102
  "aria-describedby": W,
1078
1103
  "data-test": "i18n-input",
1079
1104
  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",
1080
- onInput: D[1] || (D[1] = (Le) => ne(O.value, Le.target.value))
1081
- }, null, 40, Va))
1105
+ onInput: z[1] || (z[1] = (Te) => ne(O.value, Te.target.value))
1106
+ }, null, 40, Ea))
1082
1107
  ], 2)
1083
- ], 8, qa),
1084
- he.value.length > 0 || we.value ? (d(), y("div", Da, [
1085
- he.value.length > 0 ? (d(), y("p", Ra, C(s(o)("core.form.i18n.missing", { languages: ee(he.value) })), 1)) : (d(), y("span", Ma)),
1108
+ ], 8, Oa),
1109
+ he.value.length > 0 || we.value ? (d(), y("div", Aa, [
1110
+ he.value.length > 0 ? (d(), y("p", Ga, C(s(o)("core.form.i18n.missing", { languages: ee(he.value) })), 1)) : (d(), y("span", Ka)),
1086
1111
  we.value && !e.disabled ? (d(), y("button", {
1087
1112
  key: 2,
1088
1113
  type: "button",
1089
1114
  "data-test": "i18n-copy",
1090
1115
  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",
1091
1116
  onClick: ke
1092
- }, C(s(o)("core.form.i18n.copy", { language: V(T.value) })), 1)) : q("", !0)
1093
- ])) : q("", !0)
1117
+ }, C(s(o)("core.form.i18n.copy", { language: V(D.value) })), 1)) : L("", !0)
1118
+ ])) : L("", !0)
1094
1119
  ], 544)
1095
1120
  ]),
1096
1121
  labelTrailing: f(() => [
@@ -1100,66 +1125,66 @@ const qa = ["id", "aria-labelledby"], za = ["id", "value", "lang", "name", "rows
1100
1125
  class: "flex shrink-0 gap-0.5 rounded-control bg-fill p-0.5",
1101
1126
  "data-test": "i18n-tabs"
1102
1127
  }, [
1103
- (d(!0), y(de, null, $e(w.value, (L, W) => (d(), y("button", {
1104
- id: ie(L),
1105
- key: L,
1128
+ (d(!0), y(de, null, $e(w.value, (T, W) => (d(), y("button", {
1129
+ id: ie(T),
1130
+ key: T,
1106
1131
  type: "button",
1107
1132
  role: "tab",
1108
- "aria-selected": L === O.value,
1109
- tabindex: L === O.value ? 0 : -1,
1133
+ "aria-selected": T === O.value,
1134
+ tabindex: T === O.value ? 0 : -1,
1110
1135
  "aria-controls": `${s(k)}-panel`,
1111
- "aria-label": s(o)(N(L) ? "core.form.i18n.tab_written" : "core.form.i18n.tab_empty", { language: Q(L) }),
1112
- title: Q(L),
1113
- class: j(["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", L === O.value ? "bg-segment-selected text-content-strong shadow-sm" : "text-content-muted hover:text-content-strong"]),
1114
- onClick: (ve) => ue(L, !0),
1115
- onKeydown: (ve) => z(ve, W)
1136
+ "aria-label": s(o)(E(T) ? "core.form.i18n.tab_written" : "core.form.i18n.tab_empty", { language: Q(T) }),
1137
+ title: Q(T),
1138
+ 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", T === O.value ? "bg-segment-selected text-content-strong shadow-sm" : "text-content-muted hover:text-content-strong"]),
1139
+ onClick: (ve) => ue(T, !0),
1140
+ onKeydown: (ve) => q(ve, W)
1116
1141
  }, [
1117
- H(C(V(L)) + " ", 1),
1142
+ H(C(V(T)) + " ", 1),
1118
1143
  p("span", {
1119
1144
  "aria-hidden": "true",
1120
- class: j(["size-1.5 rounded-full", N(L) ? "bg-status-success-solid" : Y.value && te.value.includes(L) ? "bg-content-destructive" : "bg-content-disabled"]),
1145
+ class: I(["size-1.5 rounded-full", E(T) ? "bg-status-success-solid" : Y.value && te.value.includes(T) ? "bg-content-destructive" : "bg-content-disabled"]),
1121
1146
  "data-test": "i18n-dot",
1122
- "data-state": N(L) ? "written" : Y.value && te.value.includes(L) ? "required" : "empty"
1123
- }, null, 10, Oa)
1124
- ], 42, ja))), 128))
1125
- ], 8, Ia)
1147
+ "data-state": E(T) ? "written" : Y.value && te.value.includes(T) ? "required" : "empty"
1148
+ }, null, 10, Ua)
1149
+ ], 42, Ha))), 128))
1150
+ ], 8, Pa)
1126
1151
  ]),
1127
1152
  _: 2
1128
1153
  }, [
1129
1154
  ae.value ? {
1130
1155
  name: "readonly",
1131
1156
  fn: f(() => [
1132
- p("div", Ea, [
1133
- p("p", Na, C(E(ae.value)), 1),
1157
+ p("div", Ya, [
1158
+ p("p", Wa, C(j(ae.value)), 1),
1134
1159
  _.value.length > 0 ? (d(), y(de, { key: 0 }, [
1135
1160
  p("button", {
1136
1161
  type: "button",
1137
1162
  "aria-expanded": B.value,
1138
1163
  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",
1139
- onClick: D[2] || (D[2] = (L) => B.value = !B.value)
1164
+ onClick: z[2] || (z[2] = (T) => B.value = !B.value)
1140
1165
  }, [
1141
- p("span", Ga, C(s(o)("core.form.i18n.more", { count: _.value.length, filled: c.value })), 1),
1142
- I(s(X), {
1166
+ p("span", Za, C(s(o)("core.form.i18n.more", { count: _.value.length, filled: c.value })), 1),
1167
+ N(s(X), {
1143
1168
  name: "arrowRightSLine",
1144
1169
  size: 16,
1145
- class: j(["shrink-0 transition-transform duration-motion-fast", B.value ? "rotate-90" : ""])
1170
+ class: I(["shrink-0 transition-transform duration-motion-fast", B.value ? "rotate-90" : ""])
1146
1171
  }, null, 8, ["class"])
1147
- ], 8, Aa),
1148
- B.value ? (d(), y("dl", Ka, [
1149
- (d(!0), y(de, null, $e(_.value, (L) => (d(), y("div", {
1150
- key: L,
1172
+ ], 8, Ja),
1173
+ B.value ? (d(), y("dl", Xa, [
1174
+ (d(!0), y(de, null, $e(_.value, (T) => (d(), y("div", {
1175
+ key: T,
1151
1176
  class: "flex gap-2 text-body"
1152
1177
  }, [
1153
1178
  p("dt", {
1154
1179
  class: "w-8 shrink-0 text-footnote font-semibold leading-6 text-content-muted",
1155
- title: Q(L)
1156
- }, C(V(L)), 9, Pa),
1180
+ title: Q(T)
1181
+ }, C(V(T)), 9, Qa),
1157
1182
  p("dd", {
1158
- class: j(["min-w-0 flex-1 whitespace-pre-line break-words", N(L) ? "text-content-strong" : "text-content-disabled"])
1159
- }, C(N(L) ? E(L) : s(o)("core.state.no_value")), 3)
1183
+ class: I(["min-w-0 flex-1 whitespace-pre-line break-words", E(T) ? "text-content-strong" : "text-content-disabled"])
1184
+ }, C(E(T) ? j(T) : s(o)("core.state.no_value")), 3)
1160
1185
  ]))), 128))
1161
- ])) : q("", !0)
1162
- ], 64)) : q("", !0)
1186
+ ])) : L("", !0)
1187
+ ], 64)) : L("", !0)
1163
1188
  ])
1164
1189
  ]),
1165
1190
  key: "0"
@@ -1173,22 +1198,22 @@ const qa = ["id", "aria-labelledby"], za = ["id", "value", "lang", "name", "rows
1173
1198
  } : void 0
1174
1199
  ]), 1040, ["value"]));
1175
1200
  }
1176
- }), Ha = "unsupported_characters", Ua = /[\u{10000}-\u{10FFFF}]/u;
1177
- function Ya(l) {
1178
- return Ua.test(l);
1201
+ }), el = "unsupported_characters", tl = /[\u{10000}-\u{10FFFF}]/u;
1202
+ function al(l) {
1203
+ return tl.test(l);
1179
1204
  }
1180
- function De(l, a, e) {
1205
+ function ze(l, t, e) {
1181
1206
  if (typeof l == "string")
1182
- Ya(l) && e.addIssue({ code: "custom", path: a, params: { code: Ha } });
1207
+ al(l) && e.addIssue({ code: "custom", path: t, params: { code: el } });
1183
1208
  else if (Array.isArray(l))
1184
- l.forEach((t, o) => De(t, [...a, o], e));
1209
+ l.forEach((a, o) => ze(a, [...t, o], e));
1185
1210
  else if (l && typeof l == "object")
1186
- for (const [t, o] of Object.entries(l)) De(o, [...a, t], e);
1211
+ for (const [a, o] of Object.entries(l)) ze(o, [...t, a], e);
1187
1212
  }
1188
- function go(l, a) {
1189
- De(l, [], a);
1213
+ function Bo(l, t) {
1214
+ ze(l, [], t);
1190
1215
  }
1191
- const yo = /* @__PURE__ */ G({
1216
+ const To = /* @__PURE__ */ G({
1192
1217
  __name: "MoneyField",
1193
1218
  props: /* @__PURE__ */ ce({
1194
1219
  label: {},
@@ -1209,19 +1234,19 @@ const yo = /* @__PURE__ */ G({
1209
1234
  width: {}
1210
1235
  }, { ...me, modelValue: void 0, decimals: 2, blankZero: !1, negative: !1, width: "sm" }),
1211
1236
  emits: ["update:modelValue", "focus", "blur"],
1212
- setup(l, { expose: a, emit: e }) {
1213
- const t = l, o = e, n = U("field");
1214
- return a({ focus: () => n.value?.focus() }), (u, r) => (d(), R(Vt, J({
1237
+ setup(l, { expose: t, emit: e }) {
1238
+ const a = l, o = e, n = U("field");
1239
+ return t({ focus: () => n.value?.focus() }), (u, r) => (d(), M(It, J({
1215
1240
  ref_key: "field",
1216
1241
  ref: n,
1217
- "model-value": t.modelValue,
1242
+ "model-value": a.modelValue,
1218
1243
  "onUpdate:modelValue": r[0] || (r[0] = (m) => o("update:modelValue", m))
1219
- }, s(fe)(t), {
1220
- decimals: t.decimals,
1221
- negative: t.negative,
1222
- "blank-zero": t.blankZero,
1223
- suffix: t.currency,
1224
- width: t.width,
1244
+ }, s(fe)(a), {
1245
+ decimals: a.decimals,
1246
+ negative: a.negative,
1247
+ "blank-zero": a.blankZero,
1248
+ suffix: a.currency,
1249
+ width: a.width,
1225
1250
  onFocus: r[1] || (r[1] = (m) => o("focus", m)),
1226
1251
  onBlur: r[2] || (r[2] = (m) => o("blur", m))
1227
1252
  }), Z({ _: 2 }, [
@@ -1248,7 +1273,7 @@ const yo = /* @__PURE__ */ G({
1248
1273
  } : void 0
1249
1274
  ]), 1040, ["model-value", "decimals", "negative", "blank-zero", "suffix", "width"]));
1250
1275
  }
1251
- }), Wa = { class: "flex flex-col gap-2" }, Ja = ["onClick"], ho = /* @__PURE__ */ G({
1276
+ }), ll = { class: "flex flex-col gap-2" }, ol = ["onClick"], Do = /* @__PURE__ */ G({
1252
1277
  __name: "MonthYearField",
1253
1278
  props: /* @__PURE__ */ le(/* @__PURE__ */ ce({
1254
1279
  label: {},
@@ -1272,59 +1297,59 @@ const yo = /* @__PURE__ */ G({
1272
1297
  }),
1273
1298
  emits: ["update:month", "update:year"],
1274
1299
  setup(l) {
1275
- const a = l, e = re(l, "month"), t = re(l, "year"), { t: o } = oe(), n = h(() => e.value !== null && e.value >= 1 && e.value <= 12), u = (x, $) => o(`core.form.months.${$}.${x}`), r = h(() => n.value && t.value !== null ? o("core.form.months.with_year", { month: u(e.value, "long"), year: t.value }) : t.value !== null ? String(t.value) : n.value ? u(e.value, "long") : "");
1300
+ const t = l, e = re(l, "month"), a = re(l, "year"), { t: o } = oe(), n = h(() => e.value !== null && e.value >= 1 && e.value <= 12), u = (x, $) => o(`core.form.months.${$}.${x}`), r = h(() => n.value && a.value !== null ? o("core.form.months.with_year", { month: u(e.value, "long"), year: a.value }) : a.value !== null ? String(a.value) : n.value ? u(e.value, "long") : "");
1276
1301
  function m(x, $) {
1277
- e.value = x.month, t.value = x.year, $();
1302
+ e.value = x.month, a.value = x.year, $();
1278
1303
  }
1279
1304
  function k(x) {
1280
- e.value = null, t.value = null, x();
1305
+ e.value = null, a.value = null, x();
1281
1306
  }
1282
- return (x, $) => (d(), R(ye, J(s(fe)(a), {
1307
+ return (x, $) => (d(), M(ye, J(s(fe)(t), {
1283
1308
  value: r.value || null
1284
1309
  }), Z({
1285
1310
  default: f(({ id: i, describedby: v, invalid: g }) => [
1286
- I(je, {
1287
- label: a.label ?? r.value,
1311
+ N(Ie, {
1312
+ label: t.label ?? r.value,
1288
1313
  width: "sm",
1289
1314
  placement: "bottom-start",
1290
1315
  arrow: !1
1291
1316
  }, {
1292
- trigger: f(({ toggle: T, presented: w }) => [
1293
- I(tt, J({ id: i, "aria-describedby": v }, {
1317
+ trigger: f(({ toggle: D, presented: w }) => [
1318
+ N(at, J({ id: i, "aria-describedby": v }, {
1294
1319
  expanded: w,
1295
- disabled: a.disabled,
1320
+ disabled: t.disabled,
1296
1321
  invalid: g,
1297
- placeholder: a.placeholder ?? s(o)("core.form.select.choose"),
1298
- onClick: T
1322
+ placeholder: t.placeholder ?? s(o)("core.form.select.choose"),
1323
+ onClick: D
1299
1324
  }), {
1300
1325
  default: f(() => [
1301
1326
  r.value ? (d(), y(de, { key: 0 }, [
1302
1327
  H(C(r.value), 1),
1303
- I(s(X), {
1328
+ N(s(X), {
1304
1329
  name: "calendarLine",
1305
1330
  size: 16,
1306
1331
  class: "ml-2 shrink-0 text-content-muted"
1307
1332
  })
1308
- ], 64)) : q("", !0)
1333
+ ], 64)) : L("", !0)
1309
1334
  ]),
1310
1335
  _: 1
1311
1336
  }, 16, ["expanded", "disabled", "invalid", "placeholder", "onClick"])
1312
1337
  ]),
1313
- default: f(({ dismiss: T }) => [
1314
- p("div", Wa, [
1315
- I(Ft, {
1338
+ default: f(({ dismiss: D }) => [
1339
+ p("div", ll, [
1340
+ N(qt, {
1316
1341
  month: e.value,
1317
- year: t.value,
1318
- "min-year": a.minYear,
1319
- "max-year": a.maxYear,
1320
- onPick: (w) => m(w, T)
1342
+ year: a.value,
1343
+ "min-year": t.minYear,
1344
+ "max-year": t.maxYear,
1345
+ onPick: (w) => m(w, D)
1321
1346
  }, null, 8, ["month", "year", "min-year", "max-year", "onPick"]),
1322
- n.value || t.value !== null ? (d(), y("button", {
1347
+ n.value || a.value !== null ? (d(), y("button", {
1323
1348
  key: 0,
1324
1349
  type: "button",
1325
1350
  class: "cursor-pointer self-start rounded-control px-1 text-footnote text-content-link",
1326
- onClick: (w) => k(T)
1327
- }, C(s(o)("core.form.select.clear")), 9, Ja)) : q("", !0)
1351
+ onClick: (w) => k(D)
1352
+ }, C(s(o)("core.form.select.clear")), 9, ol)) : L("", !0)
1328
1353
  ])
1329
1354
  ]),
1330
1355
  _: 2
@@ -1355,7 +1380,7 @@ const yo = /* @__PURE__ */ G({
1355
1380
  } : void 0
1356
1381
  ]), 1040, ["value"]));
1357
1382
  }
1358
- }), Za = { class: "flex min-w-0 flex-wrap items-center gap-1.5 py-0.5" }, Xa = { class: "truncate" }, Qa = ["disabled", "aria-label", "onClick"], el = ["id", "disabled", "aria-expanded", "aria-invalid", "aria-describedby", "aria-busy"], tl = ["id", "disabled", "aria-invalid", "aria-describedby", "aria-busy", "onClick"], al = { class: "max-h-72 overflow-y-auto" }, ll = { class: "flex items-center justify-between gap-2" }, Ue = "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", ko = /* @__PURE__ */ G({
1383
+ }), nl = { class: "flex min-w-0 flex-wrap items-center gap-1.5 py-0.5" }, sl = { class: "truncate" }, rl = ["disabled", "aria-label", "onClick"], il = ["id", "disabled", "aria-expanded", "aria-invalid", "aria-describedby", "aria-busy"], ul = ["id", "disabled", "aria-invalid", "aria-describedby", "aria-busy", "onClick"], dl = { class: "max-h-72 overflow-y-auto" }, cl = { class: "flex items-center justify-between gap-2" }, Ye = "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", Lo = /* @__PURE__ */ G({
1359
1384
  __name: "MultiSelectField",
1360
1385
  props: /* @__PURE__ */ le(/* @__PURE__ */ ce({
1361
1386
  label: {},
@@ -1378,65 +1403,65 @@ const yo = /* @__PURE__ */ G({
1378
1403
  }),
1379
1404
  emits: ["update:modelValue"],
1380
1405
  setup(l) {
1381
- const a = l, e = re(l, "modelValue"), { t } = oe(), o = Ie(), n = U("sheet"), u = P(!1), r = Rt(() => a.options, (i) => {
1382
- const v = e.value.filter((g) => i.some((T) => T.value === g));
1406
+ const t = l, e = re(l, "modelValue"), { t: a } = oe(), o = Ne(), n = U("sheet"), u = P(!1), r = jt(() => t.options, (i) => {
1407
+ const v = e.value.filter((g) => i.some((D) => D.value === g));
1383
1408
  v.length !== e.value.length && (e.value = v);
1384
1409
  }), m = h(() => e.value.flatMap((i) => {
1385
- const v = r.known.value.find((g) => g.value === i) ?? a.selected.find((g) => g.value === i);
1410
+ const v = r.known.value.find((g) => g.value === i) ?? t.selected.find((g) => g.value === i);
1386
1411
  return v ? [v] : [];
1387
- })), k = h(() => a.placeholder ?? t("core.form.select.choose"));
1412
+ })), k = h(() => t.placeholder ?? a("core.form.select.choose"));
1388
1413
  function x(i) {
1389
1414
  i !== null && (e.value = e.value.includes(i) ? e.value.filter((v) => v !== i) : [...e.value, i]);
1390
1415
  }
1391
1416
  const $ = (i) => e.value = e.value.filter((v) => v !== i);
1392
- return (i, v) => (d(), R(ye, J(s(fe)(a), {
1417
+ return (i, v) => (d(), M(ye, J(s(fe)(t), {
1393
1418
  value: m.value.length ? m.value.map((g) => g.label).join(", ") : null,
1394
1419
  "row-layout": "stacked"
1395
1420
  }), Z({
1396
- default: f(({ id: g, describedby: T, invalid: w }) => [
1397
- p("div", Za, [
1421
+ default: f(({ id: g, describedby: D, invalid: w }) => [
1422
+ p("div", nl, [
1398
1423
  (d(!0), y(de, null, $e(m.value, (F) => (d(), y("span", {
1399
1424
  key: String(F.value),
1400
1425
  "data-test": "chip",
1401
1426
  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"
1402
1427
  }, [
1403
- p("span", Xa, C(F.label), 1),
1428
+ p("span", sl, C(F.label), 1),
1404
1429
  p("button", {
1405
1430
  type: "button",
1406
- disabled: a.disabled,
1407
- "aria-label": `${s(t)("core.form.select.clear")}: ${F.label}`,
1431
+ disabled: t.disabled,
1432
+ "aria-label": `${s(a)("core.form.select.clear")}: ${F.label}`,
1408
1433
  class: "flex size-5 shrink-0 cursor-pointer items-center justify-center rounded-full hover:bg-fill focus-visible:outline-2 focus-visible:outline-border-focus disabled:cursor-not-allowed",
1409
1434
  onClick: (O) => $(F.value)
1410
1435
  }, [
1411
- I(s(X), {
1436
+ N(s(X), {
1412
1437
  name: "close",
1413
1438
  size: 12
1414
1439
  })
1415
- ], 8, Qa)
1440
+ ], 8, rl)
1416
1441
  ]))), 128)),
1417
1442
  s(o) ? (d(), y("button", {
1418
1443
  key: 0,
1419
1444
  id: g,
1420
1445
  type: "button",
1421
- disabled: a.disabled,
1446
+ disabled: t.disabled,
1422
1447
  "aria-haspopup": "dialog",
1423
1448
  "aria-expanded": u.value,
1424
1449
  "aria-invalid": w || void 0,
1425
- "aria-describedby": T,
1450
+ "aria-describedby": D,
1426
1451
  "aria-busy": s(r).loading.value || void 0,
1427
- class: j(Ue),
1452
+ class: I(Ye),
1428
1453
  onClick: v[0] || (v[0] = (F) => n.value?.present())
1429
1454
  }, [
1430
- s(r).loading.value ? (d(), R(s(X), {
1455
+ s(r).loading.value ? (d(), M(s(X), {
1431
1456
  key: 0,
1432
1457
  name: "loader4Line",
1433
1458
  size: 14,
1434
1459
  class: "shrink-0 animate-spin"
1435
- })) : q("", !0),
1436
- H(" " + C(m.value.length ? s(t)("core.actions.edit") : k.value), 1)
1437
- ], 8, el)) : (d(), R(je, {
1460
+ })) : L("", !0),
1461
+ H(" " + C(m.value.length ? s(a)("core.actions.edit") : k.value), 1)
1462
+ ], 8, il)) : (d(), M(Ie, {
1438
1463
  key: 1,
1439
- label: a.label ?? k.value,
1464
+ label: t.label ?? k.value,
1440
1465
  width: "lg",
1441
1466
  "match-trigger-width": "",
1442
1467
  placement: "bottom-start",
@@ -1448,30 +1473,30 @@ const yo = /* @__PURE__ */ G({
1448
1473
  type: "button"
1449
1474
  }, O, {
1450
1475
  "aria-haspopup": "listbox",
1451
- disabled: a.disabled,
1476
+ disabled: t.disabled,
1452
1477
  "aria-invalid": w || void 0,
1453
- "aria-describedby": T,
1478
+ "aria-describedby": D,
1454
1479
  "aria-busy": s(r).loading.value || void 0,
1455
- class: Ue,
1480
+ class: Ye,
1456
1481
  onClick: F
1457
1482
  }), [
1458
- s(r).loading.value ? (d(), R(s(X), {
1483
+ s(r).loading.value ? (d(), M(s(X), {
1459
1484
  key: 0,
1460
1485
  name: "loader4Line",
1461
1486
  size: 14,
1462
1487
  class: "shrink-0 animate-spin"
1463
- })) : q("", !0),
1464
- H(" " + C(m.value.length ? s(t)("core.actions.edit") : k.value), 1)
1465
- ], 16, tl)
1488
+ })) : L("", !0),
1489
+ H(" " + C(m.value.length ? s(a)("core.actions.edit") : k.value), 1)
1490
+ ], 16, ul)
1466
1491
  ]),
1467
1492
  default: f(() => [
1468
- p("div", al, [
1469
- I(Ke, {
1493
+ p("div", dl, [
1494
+ N(Ke, {
1470
1495
  options: s(r).rows.value,
1471
1496
  status: s(r).status.value,
1472
1497
  "model-value": e.value,
1473
1498
  multiple: "",
1474
- "search-from": a.searchFrom,
1499
+ "search-from": t.searchFrom,
1475
1500
  presentation: "plain",
1476
1501
  onSelect: x,
1477
1502
  onRetry: v[1] || (v[1] = (F) => s(r).reload())
@@ -1479,7 +1504,7 @@ const yo = /* @__PURE__ */ G({
1479
1504
  i.$slots.option ? {
1480
1505
  name: "option",
1481
1506
  fn: f((F) => [
1482
- S(i.$slots, "option", ze(Ve(F)))
1507
+ S(i.$slots, "option", qe(Ve(F)))
1483
1508
  ]),
1484
1509
  key: "0"
1485
1510
  } : void 0
@@ -1489,59 +1514,59 @@ const yo = /* @__PURE__ */ G({
1489
1514
  _: 2
1490
1515
  }, 1032, ["label"]))
1491
1516
  ]),
1492
- s(o) ? (d(), R(Dt, {
1517
+ s(o) ? (d(), M(Ot, {
1493
1518
  key: 0,
1494
1519
  ref_key: "sheet",
1495
1520
  ref: n,
1496
- title: a.label ?? k.value,
1521
+ title: t.label ?? k.value,
1497
1522
  grouped: "",
1498
1523
  onPresented: v[5] || (v[5] = (F) => u.value = !0),
1499
1524
  onDismissed: v[6] || (v[6] = (F) => u.value = !1)
1500
1525
  }, {
1501
1526
  footer: f(() => [
1502
- p("div", ll, [
1503
- I(be, {
1527
+ p("div", cl, [
1528
+ N(be, {
1504
1529
  prominence: "plain",
1505
1530
  disabled: e.value.length === 0,
1506
1531
  onClick: v[3] || (v[3] = (F) => e.value = [])
1507
1532
  }, {
1508
1533
  default: f(() => [
1509
- H(C(s(t)("core.form.select.clear")), 1)
1534
+ H(C(s(a)("core.form.select.clear")), 1)
1510
1535
  ]),
1511
1536
  _: 1
1512
1537
  }, 8, ["disabled"]),
1513
- I(be, {
1538
+ N(be, {
1514
1539
  prominence: "primary",
1515
1540
  onClick: v[4] || (v[4] = (F) => n.value?.dismiss())
1516
1541
  }, {
1517
1542
  default: f(() => [
1518
- H(C(s(t)("core.form.select.done")), 1)
1543
+ H(C(s(a)("core.form.select.done")), 1)
1519
1544
  ]),
1520
1545
  _: 1
1521
1546
  })
1522
1547
  ])
1523
1548
  ]),
1524
1549
  default: f(() => [
1525
- I(Ke, {
1550
+ N(Ke, {
1526
1551
  options: s(r).rows.value,
1527
1552
  status: s(r).status.value,
1528
1553
  "model-value": e.value,
1529
1554
  multiple: "",
1530
- "search-from": a.searchFrom,
1555
+ "search-from": t.searchFrom,
1531
1556
  onSelect: x,
1532
1557
  onRetry: v[2] || (v[2] = (F) => s(r).reload())
1533
1558
  }, Z({ _: 2 }, [
1534
1559
  i.$slots.option ? {
1535
1560
  name: "option",
1536
1561
  fn: f((F) => [
1537
- S(i.$slots, "option", ze(Ve(F)))
1562
+ S(i.$slots, "option", qe(Ve(F)))
1538
1563
  ]),
1539
1564
  key: "0"
1540
1565
  } : void 0
1541
1566
  ]), 1032, ["options", "status", "model-value", "search-from"])
1542
1567
  ]),
1543
1568
  _: 3
1544
- }, 8, ["title"])) : q("", !0)
1569
+ }, 8, ["title"])) : L("", !0)
1545
1570
  ]),
1546
1571
  _: 2
1547
1572
  }, [
@@ -1568,7 +1593,7 @@ const yo = /* @__PURE__ */ G({
1568
1593
  } : void 0
1569
1594
  ]), 1040, ["value"]));
1570
1595
  }
1571
- }), ol = ["aria-label"], nl = ["src"], sl = { class: "flex flex-wrap items-center gap-3" }, rl = ["id", "accept", "disabled", "aria-describedby", "aria-invalid"], il = ["aria-label"], ul = ["src"], xo = /* @__PURE__ */ G({
1596
+ }), fl = ["aria-label"], ml = ["src"], vl = { class: "flex flex-wrap items-center gap-3" }, pl = ["id", "accept", "disabled", "aria-describedby", "aria-invalid"], bl = ["aria-label"], gl = ["src"], qo = /* @__PURE__ */ G({
1572
1597
  __name: "PhotoField",
1573
1598
  props: /* @__PURE__ */ le(/* @__PURE__ */ ce({
1574
1599
  label: {},
@@ -1589,7 +1614,7 @@ const yo = /* @__PURE__ */ G({
1589
1614
  }),
1590
1615
  emits: ["update:modelValue"],
1591
1616
  setup(l) {
1592
- const a = l, e = re(l, "modelValue"), { t } = oe(), o = U("chooser"), n = P(null), u = P(null);
1617
+ const t = l, e = re(l, "modelValue"), { t: a } = oe(), o = U("chooser"), n = P(null), u = P(null);
1593
1618
  function r() {
1594
1619
  u.value && URL.revokeObjectURL(u.value), u.value = null;
1595
1620
  }
@@ -1599,22 +1624,22 @@ const yo = /* @__PURE__ */ G({
1599
1624
  r(), i instanceof File && (u.value = URL.createObjectURL(i)), i === null && o.value && (o.value.value = "");
1600
1625
  },
1601
1626
  { immediate: !0 }
1602
- ), Ze(r);
1603
- const m = h(() => e.value instanceof File ? u.value : e.value), k = U("viewer"), x = h(() => m.value ? [{ src: m.value, alt: a.label ?? t("core.viewer.label"), downloadName: e.value instanceof File ? e.value.name : void 0 }] : []);
1627
+ ), Xe(r);
1628
+ const m = h(() => e.value instanceof File ? u.value : e.value), k = U("viewer"), x = h(() => m.value ? [{ src: m.value, alt: t.label ?? a("core.viewer.label"), downloadName: e.value instanceof File ? e.value.name : void 0 }] : []);
1604
1629
  function $(i) {
1605
1630
  if (!i) return;
1606
- const v = lt(i, { accept: a.accept, maxSize: a.maxSize });
1607
- v ? n.value = v === "invalid_type" ? t("core.form.file.invalid_type") : t("core.form.file.too_large", { size: Be(a.maxSize) }) : (n.value = null, e.value = i);
1631
+ const v = st(i, { accept: t.accept, maxSize: t.maxSize });
1632
+ v ? n.value = v === "invalid_type" ? a("core.form.file.invalid_type") : a("core.form.file.too_large", { size: Be(t.maxSize) }) : (n.value = null, e.value = i);
1608
1633
  }
1609
- return (i, v) => (d(), R(ye, J({ ...s(fe)(a), error: n.value ?? a.error }, {
1610
- value: m.value ? s(t)("core.form.file.choose") : null,
1634
+ return (i, v) => (d(), M(ye, J({ ...s(fe)(t), error: n.value ?? t.error }, {
1635
+ value: m.value ? s(a)("core.form.file.choose") : null,
1611
1636
  "row-layout": "stacked"
1612
1637
  }), Z({
1613
1638
  readonly: f(() => [
1614
1639
  m.value ? (d(), y("button", {
1615
1640
  key: 0,
1616
1641
  type: "button",
1617
- "aria-label": s(t)("core.viewer.open"),
1642
+ "aria-label": s(a)("core.viewer.open"),
1618
1643
  "data-test": "photo-open",
1619
1644
  class: "block cursor-zoom-in rounded-group focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-border-focus",
1620
1645
  onClick: v[0] || (v[0] = (g) => k.value?.present(0))
@@ -1623,17 +1648,17 @@ const yo = /* @__PURE__ */ G({
1623
1648
  src: m.value,
1624
1649
  alt: "",
1625
1650
  class: "size-40 rounded-group object-cover"
1626
- }, null, 8, nl)
1627
- ], 8, ol)) : q("", !0),
1628
- m.value ? (d(), R(Pe, {
1651
+ }, null, 8, ml)
1652
+ ], 8, fl)) : L("", !0),
1653
+ m.value ? (d(), M(Pe, {
1629
1654
  key: 1,
1630
1655
  ref_key: "viewer",
1631
1656
  ref: k,
1632
1657
  items: x.value
1633
- }, null, 8, ["items"])) : q("", !0)
1658
+ }, null, 8, ["items"])) : L("", !0)
1634
1659
  ]),
1635
- default: f(({ id: g, describedby: T, invalid: w }) => [
1636
- p("div", sl, [
1660
+ default: f(({ id: g, describedby: D, invalid: w }) => [
1661
+ p("div", vl, [
1637
1662
  p("input", {
1638
1663
  id: g,
1639
1664
  ref_key: "chooser",
@@ -1641,16 +1666,16 @@ const yo = /* @__PURE__ */ G({
1641
1666
  type: "file",
1642
1667
  class: "sr-only",
1643
1668
  tabindex: "-1",
1644
- accept: a.accept.join(","),
1645
- disabled: a.disabled,
1646
- "aria-describedby": T,
1669
+ accept: t.accept.join(","),
1670
+ disabled: t.disabled,
1671
+ "aria-describedby": D,
1647
1672
  "aria-invalid": w || void 0,
1648
1673
  onChange: v[1] || (v[1] = (F) => $(F.target.files?.[0]))
1649
- }, null, 40, rl),
1674
+ }, null, 40, pl),
1650
1675
  m.value ? (d(), y("button", {
1651
1676
  key: 0,
1652
1677
  type: "button",
1653
- "aria-label": s(t)("core.viewer.open"),
1678
+ "aria-label": s(a)("core.viewer.open"),
1654
1679
  "data-test": "photo-open",
1655
1680
  class: "block cursor-zoom-in rounded-group focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-border-focus",
1656
1681
  onClick: v[2] || (v[2] = (F) => k.value?.present(0))
@@ -1660,38 +1685,38 @@ const yo = /* @__PURE__ */ G({
1660
1685
  alt: "",
1661
1686
  "data-test": "photo-preview",
1662
1687
  class: "size-28 rounded-group object-cover"
1663
- }, null, 8, ul)
1664
- ], 8, il)) : q("", !0),
1665
- I(be, {
1666
- disabled: a.disabled,
1688
+ }, null, 8, gl)
1689
+ ], 8, bl)) : L("", !0),
1690
+ N(be, {
1691
+ disabled: t.disabled,
1667
1692
  onClick: v[3] || (v[3] = (F) => o.value?.click())
1668
1693
  }, {
1669
1694
  default: f(() => [
1670
- H(C(s(t)("core.form.file.choose")), 1)
1695
+ H(C(s(a)("core.form.file.choose")), 1)
1671
1696
  ]),
1672
1697
  _: 1
1673
1698
  }, 8, ["disabled"]),
1674
- m.value ? (d(), R(be, {
1699
+ m.value ? (d(), M(be, {
1675
1700
  key: 1,
1676
1701
  prominence: "plain",
1677
1702
  tone: "critical",
1678
- disabled: a.disabled,
1703
+ disabled: t.disabled,
1679
1704
  onClick: v[4] || (v[4] = (F) => {
1680
1705
  e.value = null, n.value = null;
1681
1706
  })
1682
1707
  }, {
1683
1708
  default: f(() => [
1684
- H(C(s(t)("core.form.file.remove")), 1)
1709
+ H(C(s(a)("core.form.file.remove")), 1)
1685
1710
  ]),
1686
1711
  _: 1
1687
- }, 8, ["disabled"])) : q("", !0)
1712
+ }, 8, ["disabled"])) : L("", !0)
1688
1713
  ]),
1689
- m.value ? (d(), R(Pe, {
1714
+ m.value ? (d(), M(Pe, {
1690
1715
  key: 0,
1691
1716
  ref_key: "viewer",
1692
1717
  ref: k,
1693
1718
  items: x.value
1694
- }, null, 8, ["items"])) : q("", !0)
1719
+ }, null, 8, ["items"])) : L("", !0)
1695
1720
  ]),
1696
1721
  _: 2
1697
1722
  }, [
@@ -1711,36 +1736,36 @@ const yo = /* @__PURE__ */ G({
1711
1736
  } : void 0
1712
1737
  ]), 1040, ["value"]));
1713
1738
  }
1714
- }), dl = { hidden: "" }, cl = /* @__PURE__ */ G({
1739
+ }), yl = { hidden: "" }, hl = /* @__PURE__ */ G({
1715
1740
  __name: "EditorChrome",
1716
1741
  props: {
1717
1742
  options: {}
1718
1743
  },
1719
1744
  setup(l) {
1720
- return Et(l.options), (e, t) => (d(), y("span", dl));
1745
+ return Pt(l.options), (e, a) => (d(), y("span", yl));
1721
1746
  }
1722
1747
  });
1723
- function fl(l) {
1724
- const a = P(0);
1748
+ function kl(l) {
1749
+ const t = P(0);
1725
1750
  let e = 0;
1726
- const t = () => {
1751
+ const a = () => {
1727
1752
  e || (e = requestAnimationFrame(() => {
1728
- e = 0, a.value++;
1753
+ e = 0, t.value++;
1729
1754
  }));
1730
- }, o = typeof MutationObserver > "u" ? null : new MutationObserver(t);
1755
+ }, o = typeof MutationObserver > "u" ? null : new MutationObserver(a);
1731
1756
  ge(
1732
1757
  () => l.sections.value,
1733
1758
  (r) => {
1734
1759
  o?.disconnect();
1735
1760
  for (const m of r)
1736
1761
  o?.observe(m.element, { subtree: !0, childList: !0, attributes: !0, attributeFilter: ["data-field-error", "data-field-required", "data-field-filled"] });
1737
- t();
1762
+ a();
1738
1763
  },
1739
1764
  { immediate: !0 }
1740
- ), it() && ut(() => {
1765
+ ), ct() && ft(() => {
1741
1766
  o?.disconnect(), e && cancelAnimationFrame(e);
1742
1767
  });
1743
- const n = h(() => (a.value, Object.fromEntries(
1768
+ const n = h(() => (t.value, Object.fromEntries(
1744
1769
  l.sections.value.map((r) => [
1745
1770
  r.id,
1746
1771
  {
@@ -1751,13 +1776,13 @@ function fl(l) {
1751
1776
  ))), u = h(() => Object.values(n.value).reduce((r, m) => ({ filled: r.filled + m.required.filled, total: r.total + m.required.total }), { filled: 0, total: 0 }));
1752
1777
  return { states: n, totals: u };
1753
1778
  }
1754
- const ml = {
1779
+ const xl = {
1755
1780
  class: "grid min-w-0 grid-cols-1 items-start gap-8 lg:grid-cols-[12.5rem_minmax(0,1fr)]",
1756
1781
  "data-test": "editor-page"
1757
- }, vl = {
1782
+ }, wl = {
1758
1783
  key: 0,
1759
1784
  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"
1760
- }, wo = /* @__PURE__ */ G({
1785
+ }, Vo = /* @__PURE__ */ G({
1761
1786
  __name: "EditorPage",
1762
1787
  props: {
1763
1788
  title: {},
@@ -1769,44 +1794,44 @@ const ml = {
1769
1794
  disabledWhileClean: { type: Boolean, default: !1 }
1770
1795
  },
1771
1796
  emits: ["save", "cancel"],
1772
- setup(l, { emit: a }) {
1773
- const e = l, t = a, { t: o } = oe(), n = Ie(), u = Ot(), { states: r, totals: m } = fl(u), k = U("content"), x = h(
1797
+ setup(l, { emit: t }) {
1798
+ const e = l, a = t, { t: o } = oe(), n = Ne(), u = Kt(), { states: r, totals: m } = kl(u), k = U("content"), x = h(
1774
1799
  () => e.form ? {
1775
1800
  form: e.form,
1776
1801
  label: () => e.saveLabel ?? o("core.actions.save"),
1777
1802
  allowed: () => e.canSave,
1778
1803
  disabledWhileClean: () => e.disabledWhileClean,
1779
1804
  save: () => {
1780
- e.form?.submitting.value || t("save");
1805
+ e.form?.submitting.value || a("save");
1781
1806
  },
1782
1807
  cancel: () => {
1783
- e.form?.reset(), t("cancel");
1808
+ e.form?.reset(), a("cancel");
1784
1809
  }
1785
1810
  } : null
1786
1811
  );
1787
1812
  ge(
1788
1813
  () => e.form?.failure.value,
1789
1814
  async (i) => {
1790
- i?.kind === "invalid" && (await xe(), await qe(k.value ?? document, u));
1815
+ i?.kind === "invalid" && (await xe(), await Le(k.value ?? document, u));
1791
1816
  }
1792
1817
  );
1793
1818
  function $(i) {
1794
1819
  const v = u.sections.value.find((g) => g.id === i)?.element;
1795
- v && xe(() => qe(v));
1820
+ v && xe(() => Le(v));
1796
1821
  }
1797
- return (i, v) => (d(), R(Mt, {
1822
+ return (i, v) => (d(), M(Et, {
1798
1823
  title: e.title,
1799
1824
  back: e.back,
1800
1825
  width: "content"
1801
1826
  }, Z({
1802
1827
  default: f(() => [
1803
- x.value ? (d(), R(cl, {
1828
+ x.value ? (d(), M(hl, {
1804
1829
  key: 0,
1805
1830
  options: x.value
1806
- }, null, 8, ["options"])) : q("", !0),
1807
- p("div", ml, [
1808
- s(n) ? q("", !0) : (d(), y("aside", vl, [
1809
- I(It, {
1831
+ }, null, 8, ["options"])) : L("", !0),
1832
+ p("div", xl, [
1833
+ s(n) ? L("", !0) : (d(), y("aside", wl, [
1834
+ N(At, {
1810
1835
  standalone: "",
1811
1836
  states: s(r),
1812
1837
  progress: s(m),
@@ -1819,19 +1844,19 @@ const ml = {
1819
1844
  ref: k,
1820
1845
  class: "flex min-w-0 flex-col gap-section-gap"
1821
1846
  }, [
1822
- e.form ? (d(), R(We, {
1847
+ e.form ? (d(), M(Je, {
1823
1848
  key: 0,
1824
1849
  form: e.form,
1825
1850
  label: e.fieldLabel,
1826
1851
  scope: k.value
1827
- }, null, 8, ["form", "label", "scope"])) : q("", !0),
1852
+ }, null, 8, ["form", "label", "scope"])) : L("", !0),
1828
1853
  S(i.$slots, "default")
1829
1854
  ], 512)
1830
1855
  ]),
1831
- s(n) ? (d(), R(jt, {
1856
+ s(n) ? (d(), M(Gt, {
1832
1857
  key: 1,
1833
1858
  states: s(r)
1834
- }, null, 8, ["states"])) : q("", !0)
1859
+ }, null, 8, ["states"])) : L("", !0)
1835
1860
  ]),
1836
1861
  _: 2
1837
1862
  }, [
@@ -1865,7 +1890,7 @@ const ml = {
1865
1890
  } : void 0
1866
1891
  ]), 1032, ["title", "back"]));
1867
1892
  }
1868
- }), pl = ["value", "aria-label", "disabled", "aria-invalid", "placeholder"], $o = /* @__PURE__ */ G({
1893
+ }), $l = ["value", "aria-label", "disabled", "aria-invalid", "placeholder"], zo = /* @__PURE__ */ G({
1869
1894
  __name: "NumberCell",
1870
1895
  props: /* @__PURE__ */ le({
1871
1896
  label: {},
@@ -1881,10 +1906,10 @@ const ml = {
1881
1906
  }),
1882
1907
  emits: ["update:modelValue"],
1883
1908
  setup(l) {
1884
- const a = l, e = re(l, "modelValue");
1885
- function t(n) {
1909
+ const t = l, e = re(l, "modelValue");
1910
+ function a(n) {
1886
1911
  const u = n.target.value.replace(/\D/g, "");
1887
- e.value = u === "" ? null : Math.min(a.max, Math.max(a.min, Number(u)));
1912
+ e.value = u === "" ? null : Math.min(t.max, Math.max(t.min, Number(u)));
1888
1913
  }
1889
1914
  const o = (n) => n.target.value = e.value === null ? "" : String(e.value);
1890
1915
  return (n, u) => (d(), y("input", {
@@ -1892,93 +1917,93 @@ const ml = {
1892
1917
  type: "text",
1893
1918
  inputmode: "numeric",
1894
1919
  autocomplete: "off",
1895
- "aria-label": a.label,
1896
- disabled: a.disabled,
1897
- "aria-invalid": a.invalid || void 0,
1898
- placeholder: a.placeholder,
1899
- class: j(["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" : ""]]),
1900
- onInput: t,
1920
+ "aria-label": t.label,
1921
+ disabled: t.disabled,
1922
+ "aria-invalid": t.invalid || void 0,
1923
+ placeholder: t.placeholder,
1924
+ 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", [t.wide ? "w-28" : "w-16", t.invalid ? "bg-status-danger-surface ring-[1.5px] ring-inset ring-border-destructive" : ""]]),
1925
+ onInput: a,
1901
1926
  onBlur: o
1902
- }, null, 42, pl));
1927
+ }, null, 42, $l));
1903
1928
  }
1904
1929
  }), Oe = "vue-core:step-draft:";
1905
- function Ee(l) {
1930
+ function je(l) {
1906
1931
  try {
1907
1932
  return (l.storage === "local" ? window.localStorage : window.sessionStorage) ?? null;
1908
1933
  } catch {
1909
1934
  return null;
1910
1935
  }
1911
1936
  }
1912
- function bl(l) {
1937
+ function _l(l) {
1913
1938
  try {
1914
- const a = Ee(l)?.getItem(Oe + l.key);
1915
- if (!a) return null;
1916
- const e = JSON.parse(a);
1939
+ const t = je(l)?.getItem(Oe + l.key);
1940
+ if (!t) return null;
1941
+ const e = JSON.parse(t);
1917
1942
  return !e || e.version !== (l.version ?? 1) || typeof e.values != "object" || e.values === null || typeof e.step != "string" || !Array.isArray(e.passed) ? null : e;
1918
1943
  } catch {
1919
1944
  return null;
1920
1945
  }
1921
1946
  }
1922
- function gl(l, a) {
1947
+ function Cl(l, t) {
1923
1948
  try {
1924
- const e = Ee(l);
1949
+ const e = je(l);
1925
1950
  if (!e) return !1;
1926
- const t = (o, n) => typeof Blob < "u" && n instanceof Blob ? null : n;
1927
- return e.setItem(Oe + l.key, JSON.stringify({ version: l.version ?? 1, ...a }, t)), !0;
1951
+ const a = (o, n) => typeof Blob < "u" && n instanceof Blob ? null : n;
1952
+ return e.setItem(Oe + l.key, JSON.stringify({ version: l.version ?? 1, ...t }, a)), !0;
1928
1953
  } catch {
1929
1954
  return !1;
1930
1955
  }
1931
1956
  }
1932
- function Ye(l) {
1957
+ function We(l) {
1933
1958
  try {
1934
- Ee(l)?.removeItem(Oe + l.key);
1959
+ je(l)?.removeItem(Oe + l.key);
1935
1960
  } catch {
1936
1961
  }
1937
1962
  }
1938
- function yl(l, a) {
1939
- for (const [e, t] of Object.entries(l)) {
1940
- if (!(e in a)) continue;
1941
- const o = a[e];
1942
- (o === null || t === null || t === void 0 || typeof o == typeof t && Array.isArray(o) === Array.isArray(t)) && (l[e] = o);
1963
+ function Sl(l, t) {
1964
+ for (const [e, a] of Object.entries(l)) {
1965
+ if (!(e in t)) continue;
1966
+ const o = t[e];
1967
+ (o === null || a === null || a === void 0 || typeof o == typeof a && Array.isArray(o) === Array.isArray(a)) && (l[e] = o);
1943
1968
  }
1944
1969
  }
1945
- function _o(l, a) {
1946
- const { t: e } = oe(), t = h(() => dt(a.steps));
1947
- if (t.value.length === 0) throw new Error("useStepForm: a flow needs at least one step.");
1948
- const o = P(t.value[0].name), n = Ae(/* @__PURE__ */ new Set()), u = Ae(/* @__PURE__ */ new Set([t.value[0].name])), r = P(null), m = P(!1), k = P(0), x = P(!1), $ = P(!1);
1970
+ function Mo(l, t) {
1971
+ const { t: e } = oe(), a = h(() => mt(t.steps));
1972
+ if (a.value.length === 0) throw new Error("useStepForm: a flow needs at least one step.");
1973
+ const o = P(a.value[0].name), n = Ae(/* @__PURE__ */ new Set()), u = Ae(/* @__PURE__ */ new Set([a.value[0].name])), r = P(null), m = P(!1), k = P(0), x = P(!1), $ = P(!1);
1949
1974
  let i = !1, v = 0;
1950
- const g = h(() => Math.max(0, t.value.findIndex((c) => c.name === o.value))), T = (c) => c.fields?.filter((B) => l.errors.has(B)).length ?? 0, w = h(
1951
- () => t.value.map((c, B) => {
1952
- const M = T(c), b = B === g.value;
1975
+ const g = h(() => Math.max(0, a.value.findIndex((c) => c.name === o.value))), D = (c) => c.fields?.filter((B) => l.errors.has(B)).length ?? 0, w = h(
1976
+ () => a.value.map((c, B) => {
1977
+ const R = D(c), b = B === g.value;
1953
1978
  return {
1954
1979
  name: c.name,
1955
1980
  label: c.label,
1956
1981
  position: B + 1,
1957
- state: b ? "current" : n.has(c.name) && M === 0 ? "done" : "todo",
1958
- errors: M,
1982
+ state: b ? "current" : n.has(c.name) && R === 0 ? "done" : "todo",
1983
+ errors: R,
1959
1984
  reachable: !b && (u.has(c.name) || B < g.value)
1960
1985
  };
1961
1986
  })
1962
- ), F = h(() => w.value[g.value]), O = h(() => w.value.length), E = h(() => g.value === 0), N = h(() => g.value === O.value - 1), V = h(() => m.value || l.submitting.value);
1987
+ ), F = h(() => w.value[g.value]), O = h(() => w.value.length), j = h(() => g.value === 0), E = h(() => g.value === O.value - 1), V = h(() => m.value || l.submitting.value);
1963
1988
  function Q(c) {
1964
- const B = t.value[c];
1989
+ const B = a.value[c];
1965
1990
  B && (r.value = c > g.value ? "forward" : "back", o.value = B.name, u.add(B.name), v = c, x.value = !1);
1966
1991
  }
1967
1992
  ge(
1968
- () => t.value.map((c) => c.name).join("\0"),
1993
+ () => a.value.map((c) => c.name).join("\0"),
1969
1994
  () => {
1970
- const c = t.value, B = c.findIndex((b) => b.name === o.value), M = B === -1 ? Math.min(v, c.length - 1) : B;
1971
- o.value = c[M].name, v = M, c.forEach((b, D) => {
1972
- D > M && (n.delete(b.name), u.delete(b.name));
1995
+ const c = a.value, B = c.findIndex((b) => b.name === o.value), R = B === -1 ? Math.min(v, c.length - 1) : B;
1996
+ o.value = c[R].name, v = R, c.forEach((b, z) => {
1997
+ z > R && (n.delete(b.name), u.delete(b.name));
1973
1998
  }), u.add(o.value);
1974
- for (const b of [n, u]) for (const D of [...b]) c.some((L) => L.name === D) || b.delete(D);
1999
+ for (const b of [n, u]) for (const z of [...b]) c.some((T) => T.name === z) || b.delete(z);
1975
2000
  }
1976
2001
  );
1977
2002
  function ee(c) {
1978
2003
  const B = c.fields;
1979
2004
  if (!B?.length) return !0;
1980
- const M = Object.entries(l.errors.all()).filter(([D]) => !B.includes(st(D))), b = l.check(c.fields);
1981
- return M.length > 0 && l.errors.set({ ...Object.fromEntries(M), ...l.errors.all() }), b;
2005
+ const R = Object.entries(l.errors.all()).filter(([z]) => !B.includes(ut(z))), b = l.check(c.fields);
2006
+ return R.length > 0 && l.errors.set({ ...Object.fromEntries(R), ...l.errors.all() }), b;
1982
2007
  }
1983
2008
  async function ne(c) {
1984
2009
  if (!ee(c))
@@ -1993,23 +2018,23 @@ function _o(l, a) {
1993
2018
  return k.value++, !1;
1994
2019
  }
1995
2020
  async function ie() {
1996
- const c = await l.submit(a.submit, a.submitOptions);
2021
+ const c = await l.submit(t.submit, t.submitOptions);
1997
2022
  if (c.status === "saved" || c.status === "saved-refresh-failed")
1998
- return i = !0, Y(), a.onSaved?.(c.value), !0;
2023
+ return i = !0, Y(), t.onSaved?.(c.value), !0;
1999
2024
  if (c.status === "failed" && (k.value++, F.value.errors === 0)) {
2000
- const B = w.value.findIndex((M) => M.errors > 0);
2025
+ const B = w.value.findIndex((R) => R.errors > 0);
2001
2026
  B !== -1 && Q(B);
2002
2027
  }
2003
2028
  return !1;
2004
2029
  }
2005
2030
  async function ue() {
2006
2031
  if (V.value) return !1;
2007
- const c = t.value[g.value];
2032
+ const c = a.value[g.value];
2008
2033
  return await ne(c) ? (n.add(c.name), g.value < O.value - 1 ? (Q(g.value + 1), !0) : ie()) : !1;
2009
2034
  }
2010
- async function z(c) {
2035
+ async function q(c) {
2011
2036
  if (V.value) return !1;
2012
- const B = t.value.findIndex((M) => M.name === c);
2037
+ const B = a.value.findIndex((R) => R.name === c);
2013
2038
  if (B === -1) return !1;
2014
2039
  if (B <= g.value)
2015
2040
  return B < g.value && Q(B), !0;
@@ -2017,28 +2042,28 @@ function _o(l, a) {
2017
2042
  for (; g.value < B; ) if (!await ue()) return !1;
2018
2043
  return g.value === B;
2019
2044
  }
2020
- const A = a.draft;
2045
+ const A = t.draft;
2021
2046
  let K;
2022
2047
  function te() {
2023
2048
  if (K = void 0, !(!A || i)) {
2024
2049
  if (!l.dirty.value) {
2025
- Ye(A), $.value = !1;
2050
+ We(A), $.value = !1;
2026
2051
  return;
2027
2052
  }
2028
- $.value = gl(A, { values: nt(l.values), step: o.value, passed: [...n] });
2053
+ $.value = Cl(A, { values: it(l.values), step: o.value, passed: [...n] });
2029
2054
  }
2030
2055
  }
2031
2056
  function Y() {
2032
- i = !0, clearTimeout(K), K = void 0, $.value = !1, A && Ye(A);
2057
+ i = !0, clearTimeout(K), K = void 0, $.value = !1, A && We(A);
2033
2058
  }
2034
2059
  if (A) {
2035
- const c = bl(A);
2060
+ const c = _l(A);
2036
2061
  if (c) {
2037
- yl(l.values, c.values);
2038
- const B = t.value.map((M) => M.name);
2062
+ Sl(l.values, c.values);
2063
+ const B = a.value.map((R) => R.name);
2039
2064
  B.includes(c.step) && (o.value = c.step);
2040
- for (const M of c.passed) B.includes(M) && n.add(M);
2041
- for (const M of [...n, o.value]) u.add(M);
2065
+ for (const R of c.passed) B.includes(R) && n.add(R);
2066
+ for (const R of [...n, o.value]) u.add(R);
2042
2067
  v = g.value, x.value = l.dirty.value, $.value = x.value;
2043
2068
  }
2044
2069
  ge(
@@ -2047,33 +2072,33 @@ function _o(l, a) {
2047
2072
  i || (clearTimeout(K), K = setTimeout(te, 400));
2048
2073
  },
2049
2074
  { deep: !0 }
2050
- ), Ze(() => {
2075
+ ), Xe(() => {
2051
2076
  K !== void 0 && (clearTimeout(K), te());
2052
2077
  });
2053
2078
  }
2054
- const { confirmDiscard: se } = Xe(() => !i && l.dirty.value);
2055
- Je(Nt, null) && At(() => (i || Y(), !0));
2079
+ const { confirmDiscard: se } = Qe(() => !i && l.dirty.value);
2080
+ Ze(Ht, null) && Ut(() => (i || Y(), !0));
2056
2081
  async function he() {
2057
2082
  const c = await se();
2058
2083
  return c && Y(), c;
2059
2084
  }
2060
2085
  function we() {
2061
- l.reset(), n.clear(), u.clear(), r.value = null, o.value = t.value[0].name, u.add(o.value), v = 0, x.value = !1, Y(), i = !1;
2086
+ l.reset(), n.clear(), u.clear(), r.value = null, o.value = a.value[0].name, u.add(o.value), v = 0, x.value = !1, Y(), i = !1;
2062
2087
  }
2063
2088
  const ke = h(() => {
2064
2089
  const c = [e("core.steps.position", { current: g.value + 1, total: O.value }), F.value.label];
2065
2090
  return $.value && c.push(e("core.steps.draft_saved")), c.join(" · ");
2066
2091
  }), ae = h(() => {
2067
- const c = t.value[g.value];
2068
- return c.nextLabel ? c.nextLabel : N.value ? a.submitLabel ?? e("core.actions.save") : e("core.steps.next_named", { step: t.value[g.value + 1].label });
2069
- }), _ = h(() => E.value ? null : t.value[g.value - 1].label);
2092
+ const c = a.value[g.value];
2093
+ return c.nextLabel ? c.nextLabel : E.value ? t.submitLabel ?? e("core.actions.save") : e("core.steps.next_named", { step: a.value[g.value + 1].label });
2094
+ }), _ = h(() => j.value ? null : a.value[g.value - 1].label);
2070
2095
  return {
2071
2096
  steps: w,
2072
2097
  current: F,
2073
2098
  index: g,
2074
2099
  count: O,
2075
- isFirst: E,
2076
- isLast: N,
2100
+ isFirst: j,
2101
+ isLast: E,
2077
2102
  busy: V,
2078
2103
  direction: r,
2079
2104
  subtitle: ke,
@@ -2085,142 +2110,142 @@ function _o(l, a) {
2085
2110
  failure: l.failure,
2086
2111
  next: ue,
2087
2112
  back: () => Q(g.value - 1),
2088
- goTo: z,
2113
+ goTo: q,
2089
2114
  restart: we,
2090
2115
  confirmDiscard: he,
2091
2116
  bindDialog: () => ({ subtitle: ke.value, primaryLabel: ae.value, status: V.value ? "processing" : "idle", beforeDismiss: he })
2092
2117
  };
2093
2118
  }
2094
- const hl = {
2119
+ const Fl = {
2095
2120
  class: "flex flex-wrap items-center gap-2.5 border-t border-border-separator pt-3.5",
2096
2121
  "data-test": "step-navigation"
2097
- }, kl = /* @__PURE__ */ G({
2122
+ }, Bl = /* @__PURE__ */ G({
2098
2123
  __name: "StepNavigation",
2099
2124
  props: {
2100
2125
  flow: {}
2101
2126
  },
2102
2127
  emits: ["cancel"],
2103
2128
  setup(l) {
2104
- const a = l, { t: e } = oe();
2105
- return (t, o) => (d(), y("div", hl, [
2106
- a.flow.backLabel.value ? (d(), R(be, {
2129
+ const t = l, { t: e } = oe();
2130
+ return (a, o) => (d(), y("div", Fl, [
2131
+ t.flow.backLabel.value ? (d(), M(be, {
2107
2132
  key: 0,
2108
2133
  prominence: "plain",
2109
2134
  icon: "arrowLeftSLine",
2110
- disabled: a.flow.busy.value,
2135
+ disabled: t.flow.busy.value,
2111
2136
  "data-test": "step-back",
2112
- onClick: o[0] || (o[0] = (n) => a.flow.back())
2137
+ onClick: o[0] || (o[0] = (n) => t.flow.back())
2113
2138
  }, {
2114
2139
  default: f(() => [
2115
- H(C(a.flow.backLabel.value), 1)
2140
+ H(C(t.flow.backLabel.value), 1)
2116
2141
  ]),
2117
2142
  _: 1
2118
- }, 8, ["disabled"])) : q("", !0),
2143
+ }, 8, ["disabled"])) : L("", !0),
2119
2144
  o[3] || (o[3] = p("div", { class: "grow" }, null, -1)),
2120
- I(be, {
2145
+ N(be, {
2121
2146
  prominence: "plain",
2122
2147
  "data-test": "step-cancel",
2123
- onClick: o[1] || (o[1] = (n) => t.$emit("cancel"))
2148
+ onClick: o[1] || (o[1] = (n) => a.$emit("cancel"))
2124
2149
  }, {
2125
2150
  default: f(() => [
2126
2151
  H(C(s(e)("core.actions.cancel")), 1)
2127
2152
  ]),
2128
2153
  _: 1
2129
2154
  }),
2130
- I(be, {
2155
+ N(be, {
2131
2156
  prominence: "primary",
2132
- processing: a.flow.busy.value,
2157
+ processing: t.flow.busy.value,
2133
2158
  "data-test": "step-next",
2134
- onClick: o[2] || (o[2] = (n) => a.flow.next())
2159
+ onClick: o[2] || (o[2] = (n) => t.flow.next())
2135
2160
  }, {
2136
2161
  default: f(() => [
2137
- H(C(a.flow.nextLabel.value), 1)
2162
+ H(C(t.flow.nextLabel.value), 1)
2138
2163
  ]),
2139
2164
  _: 1
2140
2165
  }, 8, ["processing"])
2141
2166
  ]));
2142
2167
  }
2143
- }), xl = ["aria-label"], wl = ["aria-current"], $l = ["aria-label"], _l = {
2168
+ }), Tl = ["aria-label"], Dl = ["aria-current"], Ll = ["aria-label"], ql = {
2144
2169
  key: 2,
2145
2170
  class: "sr-only"
2146
- }, Cl = {
2171
+ }, Vl = {
2147
2172
  key: 1,
2148
2173
  "data-test": "step-dots",
2149
2174
  class: "flex justify-center gap-1.5",
2150
2175
  "aria-hidden": "true"
2151
- }, Sl = ["data-state"], Fl = /* @__PURE__ */ G({
2176
+ }, zl = ["data-state"], Ml = /* @__PURE__ */ G({
2152
2177
  __name: "StepProgress",
2153
2178
  props: {
2154
2179
  flow: {},
2155
2180
  progress: { default: "bar" }
2156
2181
  },
2157
2182
  setup(l) {
2158
- const a = l, { t: e } = oe();
2159
- return (t, o) => a.progress === "bar" ? (d(), y("ol", {
2183
+ const t = l, { t: e } = oe();
2184
+ return (a, o) => t.progress === "bar" ? (d(), y("ol", {
2160
2185
  key: 0,
2161
2186
  "aria-label": s(e)("core.steps.label"),
2162
2187
  "data-test": "step-bar",
2163
2188
  class: "grid min-w-0 gap-2",
2164
- style: ct({ gridTemplateColumns: `repeat(${a.flow.count.value}, minmax(0, 1fr))` })
2189
+ style: vt({ gridTemplateColumns: `repeat(${t.flow.count.value}, minmax(0, 1fr))` })
2165
2190
  }, [
2166
- (d(!0), y(de, null, $e(a.flow.steps.value, (n) => (d(), y("li", {
2191
+ (d(!0), y(de, null, $e(t.flow.steps.value, (n) => (d(), y("li", {
2167
2192
  key: n.name,
2168
2193
  class: "flex min-w-0",
2169
2194
  "aria-current": n.state === "current" ? "step" : void 0
2170
2195
  }, [
2171
- (d(), R(ft(n.reachable ? "button" : "div"), {
2196
+ (d(), M(pt(n.reachable ? "button" : "div"), {
2172
2197
  type: n.reachable ? "button" : void 0,
2173
- disabled: n.reachable ? a.flow.busy.value : void 0,
2198
+ disabled: n.reachable ? t.flow.busy.value : void 0,
2174
2199
  "data-test": `step-${n.name}`,
2175
2200
  "data-state": n.errors > 0 ? "error" : n.state,
2176
- class: j(["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" : ""]),
2177
- onClick: (u) => n.reachable ? a.flow.goTo(n.name) : void 0
2201
+ 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" : ""]),
2202
+ onClick: (u) => n.reachable ? t.flow.goTo(n.name) : void 0
2178
2203
  }, {
2179
2204
  default: f(() => [
2180
2205
  p("span", {
2181
- class: j(["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"]),
2206
+ 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"]),
2182
2207
  "aria-hidden": "true"
2183
2208
  }, null, 2),
2184
2209
  p("span", {
2185
- class: j(["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"])
2210
+ 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"])
2186
2211
  }, [
2187
- n.state === "done" ? (d(), R(s(X), {
2212
+ n.state === "done" ? (d(), M(s(X), {
2188
2213
  key: 0,
2189
2214
  name: "checkCustom",
2190
2215
  size: 12,
2191
2216
  class: "shrink-0"
2192
- })) : q("", !0),
2217
+ })) : L("", !0),
2193
2218
  p("span", {
2194
- class: j(["truncate", n.reachable ? "group-hover:text-content-link" : ""])
2219
+ class: I(["truncate", n.reachable ? "group-hover:text-content-link" : ""])
2195
2220
  }, C(n.position) + ". " + C(n.label), 3),
2196
2221
  n.errors > 0 ? (d(), y("span", {
2197
2222
  key: 1,
2198
2223
  "data-test": "step-errors",
2199
2224
  "aria-label": s(e)("core.form.sections.errors", { count: n.errors }),
2200
2225
  class: "min-w-4.5 shrink-0 rounded-full bg-status-danger-solid px-1.5 text-center text-caption font-semibold text-white"
2201
- }, C(n.errors), 9, $l)) : q("", !0),
2202
- n.state === "done" ? (d(), y("span", _l, C(s(e)("core.steps.done")), 1)) : q("", !0)
2226
+ }, C(n.errors), 9, Ll)) : L("", !0),
2227
+ n.state === "done" ? (d(), y("span", ql, C(s(e)("core.steps.done")), 1)) : L("", !0)
2203
2228
  ], 2)
2204
2229
  ]),
2205
2230
  _: 2
2206
2231
  }, 1032, ["type", "disabled", "data-test", "data-state", "class", "onClick"]))
2207
- ], 8, wl))), 128))
2208
- ], 12, xl)) : (d(), y("div", Cl, [
2209
- (d(!0), y(de, null, $e(a.flow.steps.value, (n) => (d(), y("span", {
2232
+ ], 8, Dl))), 128))
2233
+ ], 12, Tl)) : (d(), y("div", Vl, [
2234
+ (d(!0), y(de, null, $e(t.flow.steps.value, (n) => (d(), y("span", {
2210
2235
  key: n.name,
2211
- class: j(["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"]]),
2236
+ 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 > t.flow.index.value ? "bg-fill-strong" : "bg-tint"]]),
2212
2237
  "data-state": n.errors > 0 ? "error" : n.state
2213
- }, null, 10, Sl))), 128))
2238
+ }, null, 10, zl))), 128))
2214
2239
  ]));
2215
2240
  }
2216
- }), Bl = ["data-step"], Ll = {
2241
+ }), Rl = ["data-step"], Nl = {
2217
2242
  class: "sr-only",
2218
2243
  "aria-live": "polite"
2219
- }, Tl = {
2244
+ }, Il = {
2220
2245
  key: 1,
2221
2246
  "data-test": "step-restored",
2222
2247
  class: "flex items-center gap-2 text-footnote text-content-muted"
2223
- }, Co = /* @__PURE__ */ G({
2248
+ }, Ro = /* @__PURE__ */ G({
2224
2249
  __name: "StepForm",
2225
2250
  props: {
2226
2251
  flow: {},
@@ -2229,7 +2254,7 @@ const hl = {
2229
2254
  },
2230
2255
  emits: ["cancel"],
2231
2256
  setup(l) {
2232
- const a = l, { t: e } = oe(), t = U("body"), o = U("root");
2257
+ const t = l, { t: e } = oe(), a = U("body"), o = U("root");
2233
2258
  function n(u) {
2234
2259
  for (let r = u.parentElement; r; r = r.parentElement) {
2235
2260
  const m = getComputedStyle(r).overflowY;
@@ -2237,51 +2262,51 @@ const hl = {
2237
2262
  }
2238
2263
  return u.getBoundingClientRect().top < 0;
2239
2264
  }
2240
- return ge(() => a.flow.current.value.name, async () => {
2241
- await xe(), o.value && n(o.value) && o.value.scrollIntoView?.({ block: "start" }), t.value?.focus({ preventScroll: !0 });
2242
- }), ge(() => a.flow.refusals.value, async () => {
2243
- await xe(), t.value && await qe(t.value);
2265
+ return ge(() => t.flow.current.value.name, async () => {
2266
+ await xe(), o.value && n(o.value) && o.value.scrollIntoView?.({ block: "start" }), a.value?.focus({ preventScroll: !0 });
2267
+ }), ge(() => t.flow.refusals.value, async () => {
2268
+ await xe(), a.value && await Le(a.value);
2244
2269
  }), (u, r) => (d(), y("div", {
2245
2270
  ref_key: "root",
2246
2271
  ref: o,
2247
2272
  class: "flex min-w-0 flex-col gap-group-gap",
2248
2273
  "data-test": "step-form",
2249
- "data-step": a.flow.current.value.name
2274
+ "data-step": t.flow.current.value.name
2250
2275
  }, [
2251
- a.progress !== "none" ? (d(), R(Fl, {
2276
+ t.progress !== "none" ? (d(), M(Ml, {
2252
2277
  key: 0,
2253
- flow: a.flow,
2254
- progress: a.progress
2255
- }, null, 8, ["flow", "progress"])) : q("", !0),
2256
- p("p", Ll, C(a.flow.subtitle.value), 1),
2257
- a.flow.restored.value ? (d(), y("div", Tl, [
2278
+ flow: t.flow,
2279
+ progress: t.progress
2280
+ }, null, 8, ["flow", "progress"])) : L("", !0),
2281
+ p("p", Nl, C(t.flow.subtitle.value), 1),
2282
+ t.flow.restored.value ? (d(), y("div", Il, [
2258
2283
  p("span", null, C(s(e)("core.steps.restored")), 1),
2259
- I(be, {
2284
+ N(be, {
2260
2285
  prominence: "link",
2261
2286
  size: "sm",
2262
- onClick: r[0] || (r[0] = (m) => a.flow.restart())
2287
+ onClick: r[0] || (r[0] = (m) => t.flow.restart())
2263
2288
  }, {
2264
2289
  default: f(() => [
2265
2290
  H(C(s(e)("core.steps.start_over")), 1)
2266
2291
  ]),
2267
2292
  _: 1
2268
2293
  })
2269
- ])) : q("", !0),
2270
- (d(), R(We, {
2271
- key: a.flow.current.value.name,
2272
- form: a.flow
2294
+ ])) : L("", !0),
2295
+ (d(), M(Je, {
2296
+ key: t.flow.current.value.name,
2297
+ form: t.flow
2273
2298
  }, null, 8, ["form"])),
2274
2299
  (d(), y("form", {
2275
- key: a.flow.current.value.name,
2300
+ key: t.flow.current.value.name,
2276
2301
  ref_key: "body",
2277
- ref: t,
2302
+ ref: a,
2278
2303
  tabindex: "-1",
2279
2304
  novalidate: "",
2280
2305
  "data-test": "step-body",
2281
- class: j(["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" : ""]),
2282
- onSubmit: r[1] || (r[1] = pe((m) => a.flow.next(), ["prevent"]))
2306
+ class: I(["flex min-w-0 flex-col gap-group-gap outline-none", t.flow.direction.value === "back" ? "animate-step-back" : t.flow.direction.value === "forward" ? "animate-step-in" : ""]),
2307
+ onSubmit: r[1] || (r[1] = pe((m) => t.flow.next(), ["prevent"]))
2283
2308
  }, [
2284
- S(u.$slots, a.flow.current.value.name),
2309
+ S(u.$slots, t.flow.current.value.name),
2285
2310
  r[3] || (r[3] = p("button", {
2286
2311
  type: "submit",
2287
2312
  class: "sr-only",
@@ -2289,91 +2314,96 @@ const hl = {
2289
2314
  "aria-hidden": "true"
2290
2315
  }, null, -1))
2291
2316
  ], 34)),
2292
- a.navigation === "inline" ? (d(), R(kl, {
2317
+ t.navigation === "inline" ? (d(), M(Bl, {
2293
2318
  key: 2,
2294
- flow: a.flow,
2319
+ flow: t.flow,
2295
2320
  onCancel: r[2] || (r[2] = (m) => u.$emit("cancel"))
2296
- }, null, 8, ["flow"])) : q("", !0)
2297
- ], 8, Bl));
2321
+ }, null, 8, ["flow"])) : L("", !0)
2322
+ ], 8, Rl));
2298
2323
  }
2299
2324
  });
2300
2325
  export {
2301
- $t as Calendar,
2302
- ro as CardSelectField,
2303
- io as CheckboxField,
2304
- uo as ChoiceChips,
2305
- co as ComboField,
2306
- Io as CommandDialog,
2307
- nn as DateField,
2308
- fo as DateTimeField,
2309
- wo as EditorPage,
2310
- Bo as ErrorBag,
2326
+ Bt as Calendar,
2327
+ go as CardSelectField,
2328
+ yo as CheckboxField,
2329
+ ho as ChoiceChips,
2330
+ ko as ComboField,
2331
+ Yo as CommandDialog,
2332
+ yn as DateField,
2333
+ $o as DateTimeField,
2334
+ Vo as EditorPage,
2335
+ Oo as ErrorBag,
2311
2336
  ye as Field,
2312
- mo as FileField,
2313
- We as FormErrors,
2314
- ot as FormGroup,
2315
- vo as FormGroupButton,
2316
- po as FormIndent,
2317
- mt as FormRow,
2318
- dn as FormView,
2319
- Lo as GroupEditAction,
2320
- pn as GroupSheet,
2321
- bo as I18nField,
2322
- Uo as LeaveGuardRoot,
2323
- No as MissingLeaveGuardRootError,
2324
- yo as MoneyField,
2325
- ho as MonthYearField,
2326
- ko as MultiSelectField,
2327
- $o as NumberCell,
2328
- Vt as NumberField,
2337
+ _o as FileField,
2338
+ Je as FormErrors,
2339
+ rt as FormGroup,
2340
+ Co as FormGroupButton,
2341
+ So as FormIndent,
2342
+ bt as FormRow,
2343
+ wn as FormView,
2344
+ jo as GroupEditAction,
2345
+ Fn as GroupSheet,
2346
+ Fo as I18nField,
2347
+ on as LeaveGuardRoot,
2348
+ Xo as MissingLeaveGuardRootError,
2349
+ To as MoneyField,
2350
+ Do as MonthYearField,
2351
+ Lo as MultiSelectField,
2352
+ zo as NumberCell,
2353
+ It as NumberField,
2329
2354
  Ke as OptionList,
2330
- bn as OtpInput,
2331
- xo as PhotoField,
2332
- gn as RecordGroupScope,
2333
- kn as SegmentedField,
2334
- fn as SelectField,
2335
- Co as StepForm,
2336
- kl as StepNavigation,
2337
- Fl as StepProgress,
2338
- wn as SwitchField,
2339
- tn as TextField,
2340
- _n as TextareaField,
2341
- rn as TimeField,
2342
- lt as checkFile,
2343
- To as createFieldGroups,
2344
- Ao as createLeaveGuard,
2355
+ Bn as OtpInput,
2356
+ qo as PhotoField,
2357
+ Tn as RecordGroupScope,
2358
+ qn as SegmentedField,
2359
+ _n as SelectField,
2360
+ Ro as StepForm,
2361
+ Bl as StepNavigation,
2362
+ Ml as StepProgress,
2363
+ zn as SwitchField,
2364
+ vn as TextField,
2365
+ Rn as TextareaField,
2366
+ kn as TimeField,
2367
+ st as checkFile,
2368
+ Eo as createFieldGroups,
2369
+ Qo as createLeaveGuard,
2370
+ ma as dateTimeValue,
2371
+ xo as dateValue,
2345
2372
  me as fieldDefaults,
2346
- jo as fieldKey,
2373
+ Wo as fieldKey,
2347
2374
  fe as fieldProps,
2348
- qe as focusFirstError,
2349
- Zo as formEditableKey,
2375
+ Le as focusFirstError,
2376
+ fn as formEditableKey,
2350
2377
  Be as formatBytes,
2351
- Xo as groupOptions,
2352
- Ya as hasUnsupportedCharacters,
2353
- Go as installLeaveGuard,
2354
- Ko as leaveGuardKey,
2355
- Qo as matchOptions,
2356
- Ta as missingLocales,
2357
- qo as provideRecordGroups,
2358
- ln as recentChoicesKey,
2359
- zo as recordGroupsKey,
2360
- go as refineStorableText,
2361
- Ha as unsupportedCharactersCode,
2362
- Oo as useCommand,
2363
- Gt as useDirtySnapshot,
2364
- Qe as useFieldMode,
2365
- Vo as useForm,
2366
- yn as useGroupSheet,
2367
- Do as useHiddenFieldErrors,
2368
- Xe as useLeaveGuard,
2369
- Po as useLeaveGuardContext,
2370
- mn as useOptions,
2371
- Sn as useRecordDialog,
2372
- Ro as useRecordGroups,
2373
- Wo as useResourceForm,
2374
- Et as useSaveChrome,
2375
- fl as useSectionStates,
2376
- no as useSheetDiscardGuard,
2377
- _o as useStepForm,
2378
- so as zodErrorMap
2378
+ un as groupOptions,
2379
+ al as hasUnsupportedCharacters,
2380
+ en as installLeaveGuard,
2381
+ tn as leaveGuardKey,
2382
+ dn as matchOptions,
2383
+ Ia as missingLocales,
2384
+ wo as now,
2385
+ va as parseDateValue,
2386
+ Ao as provideRecordGroups,
2387
+ bn as recentChoicesKey,
2388
+ Go as recordGroupsKey,
2389
+ Bo as refineStorableText,
2390
+ Fe as today,
2391
+ el as unsupportedCharactersCode,
2392
+ Jo as useCommand,
2393
+ Yt as useDirtySnapshot,
2394
+ et as useFieldMode,
2395
+ Ko as useForm,
2396
+ Dn as useGroupSheet,
2397
+ Po as useHiddenFieldErrors,
2398
+ Qe as useLeaveGuard,
2399
+ an as useLeaveGuardContext,
2400
+ Cn as useOptions,
2401
+ In as useRecordDialog,
2402
+ Ho as useRecordGroups,
2403
+ sn as useResourceForm,
2404
+ Pt as useSaveChrome,
2405
+ kl as useSectionStates,
2406
+ po as useSheetDiscardGuard,
2407
+ Mo as useStepForm,
2408
+ bo as zodErrorMap
2379
2409
  };