@wssto2/vue-core 0.2.0 → 0.3.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 (265) hide show
  1. package/README.md +33 -0
  2. package/dist/AccessGate.vue_vue_type_script_setup_true_lang-DKX3PH2n.js +22 -0
  3. package/dist/AccountMenuItem.vue_vue_type_script_setup_true_lang-DIGqTLwd.js +76 -0
  4. package/dist/ActionRow.vue_vue_type_script_setup_true_lang-B7Lpfkf6.js +45 -0
  5. package/dist/Activity-DviO0VQ8.js +156 -0
  6. package/dist/{AdaptivePageShell.vue_vue_type_script_setup_true_lang-CeKK8_g5.js → AdaptivePageShell.vue_vue_type_script_setup_true_lang-CvAnzdc1.js} +48 -47
  7. package/dist/{AlertDialog.vue_vue_type_script_setup_true_lang-e4hzkzg3.js → AlertDialog.vue_vue_type_script_setup_true_lang-CJsMUIUg.js} +1 -1
  8. package/dist/{AsyncSection.vue_vue_type_script_setup_true_lang-CWLB3xsR.js → AsyncSection.vue_vue_type_script_setup_true_lang-CCtthMRd.js} +4 -4
  9. package/dist/{Banner.vue_vue_type_script_setup_true_lang-n_wGPIIu.js → Banner.vue_vue_type_script_setup_true_lang-Cib_YYpr.js} +1 -1
  10. package/dist/{BottomDock.vue_vue_type_script_setup_true_lang-DhlMnPC2.js → BottomDock.vue_vue_type_script_setup_true_lang-CjN7xYEr.js} +1 -1
  11. package/dist/{Button.vue_vue_type_script_setup_true_lang-B1eZgLae.js → Button.vue_vue_type_script_setup_true_lang-CYil8h9z.js} +1 -1
  12. package/dist/Changes-DlT5mN9G.js +129 -0
  13. package/dist/CollectionPage.vue_vue_type_script_setup_true_lang-CXILftEc.js +1481 -0
  14. package/dist/DataTable.vue_vue_type_script_setup_true_lang-DSYgS9lC.js +52 -0
  15. package/dist/DateField.vue_vue_type_script_setup_true_lang-DMVjNsaM.js +1099 -0
  16. package/dist/{DiscardChangesModal.vue_vue_type_script_setup_true_lang-DyhYHRyz.js → DiscardChangesModal.vue_vue_type_script_setup_true_lang-Cb3xJI1x.js} +1 -1
  17. package/dist/{EmptyState.vue_vue_type_script_setup_true_lang-BeGpHMUP.js → EmptyState.vue_vue_type_script_setup_true_lang-C2ZYIT9F.js} +1 -1
  18. package/dist/FormErrors.vue_vue_type_script_setup_true_lang-DVgNBQ8p.js +276 -0
  19. package/dist/FormGroup.vue_vue_type_script_setup_true_lang-0mfG8TkU.js +136 -0
  20. package/dist/FormView.vue_vue_type_script_setup_true_lang-Bz2m3AtF.js +38 -0
  21. package/dist/General-BD-Hcz0a.js +145 -0
  22. package/dist/{Icon.vue_vue_type_script_lang-DtC4_mkz.js → Icon.vue_vue_type_script_lang-VvcV2Bzo.js} +46 -33
  23. package/dist/{IconTile.vue_vue_type_script_setup_true_lang-Csfv6Sel.js → IconTile.vue_vue_type_script_setup_true_lang-D7QgnUyN.js} +1 -1
  24. package/dist/KeyValue.vue_vue_type_script_setup_true_lang-wcZcvnow.js +35 -0
  25. package/dist/{LeaveGuardRoot.vue_vue_type_script_setup_true_lang-CvwoT1JF.js → LeaveGuardRoot.vue_vue_type_script_setup_true_lang-C2udmeEA.js} +2 -2
  26. package/dist/{Menu.vue_vue_type_script_setup_true_lang-CrMj6KPD.js → Menu.vue_vue_type_script_setup_true_lang-BNAjx9tj.js} +61 -57
  27. package/dist/{Modal.vue_vue_type_script_setup_true_lang-BQZM49gC.js → Modal.vue_vue_type_script_setup_true_lang-D7SwVPpL.js} +4 -4
  28. package/dist/NewRolePage-Dla4YnMs.js +42 -0
  29. package/dist/NoAccess.vue_vue_type_script_setup_true_lang-8m9cNptR.js +31 -0
  30. package/dist/NumberField.vue_vue_type_script_setup_true_lang-CYRg7Kfg.js +113 -0
  31. package/dist/OtpInput.vue_vue_type_script_setup_true_lang-gp4FfWAH.js +95 -0
  32. package/dist/PageBar.vue_vue_type_script_setup_true_lang-Cfr5xsJx.js +47 -0
  33. package/dist/{Panel.vue_vue_type_script_setup_true_lang-BQmv3cLb.js → Panel.vue_vue_type_script_setup_true_lang-BCRxRK4D.js} +1 -1
  34. package/dist/{PhotoViewer.vue_vue_type_script_setup_true_lang-ElDizaW2.js → PhotoViewer.vue_vue_type_script_setup_true_lang-B3Q4dhqJ.js} +1 -1
  35. package/dist/Popover.vue_vue_type_script_setup_true_lang-Dx-tDhNE.js +125 -0
  36. package/dist/ProfilePage-OJMQ8cr8.js +691 -0
  37. package/dist/{ProgressTrack.vue_vue_type_script_setup_true_lang-1DDaNs2W.js → ProgressTrack.vue_vue_type_script_setup_true_lang-B6Prw9hi.js} +2 -2
  38. package/dist/RecordHeader.vue_vue_type_script_setup_true_lang-DKsaKlAq.js +64 -0
  39. package/dist/ResourcePage.vue_vue_type_script_setup_true_lang-CJcKa9SW.js +173 -0
  40. package/dist/RoleEditor.vue_vue_type_script_setup_true_lang-DuEPOmjI.js +299 -0
  41. package/dist/RolePage-bZzv_E4l.js +315 -0
  42. package/dist/RolesPage-BniZv0nB.js +115 -0
  43. package/dist/SectionIntro.vue_vue_type_script_setup_true_lang-CZtPrmXD.js +23 -0
  44. package/dist/SectionList.vue_vue_type_script_setup_true_lang-BKP_bge8.js +148 -0
  45. package/dist/SectionNavigator.vue_vue_type_script_setup_true_lang-BgGEGxSI.js +314 -0
  46. package/dist/SegmentedField.vue_vue_type_script_setup_true_lang-BZ9UdgA1.js +58 -0
  47. package/dist/SelectField.vue_vue_type_script_setup_true_lang-BiGaEKBQ.js +422 -0
  48. package/dist/SessionList.vue_vue_type_script_setup_true_lang-DUQpr7gb.js +111 -0
  49. package/dist/Sessions-Co5-xdeb.js +96 -0
  50. package/dist/Sheet.vue_vue_type_script_setup_true_lang-bHYzx7-J.js +142 -0
  51. package/dist/SignIn-BWwFbxki.js +140 -0
  52. package/dist/SignInPage-FnLtoi2q.js +60 -0
  53. package/dist/SignInTable.vue_vue_type_script_setup_true_lang-Dnx3T_42.js +79 -0
  54. package/dist/SignIns-3UcI64_h.js +66 -0
  55. package/dist/SwipeActions.vue_vue_type_script_setup_true_lang-4I8m27ol.js +93 -0
  56. package/dist/Tabs.vue_vue_type_script_setup_true_lang-BeGaydRr.js +155 -0
  57. package/dist/TextField.vue_vue_type_script_setup_true_lang-C_FMf3Vc.js +269 -0
  58. package/dist/TextareaField.vue_vue_type_script_setup_true_lang-CU3KTKIJ.js +127 -0
  59. package/dist/{Timestamp.vue_vue_type_script_setup_true_lang-CSY_mMm1.js → Timestamp.vue_vue_type_script_setup_true_lang-1RJGKxbD.js} +1 -1
  60. package/dist/UserRecord-Ci8HfwbX.js +267 -0
  61. package/dist/UsersList-vEJ-cgkT.js +155 -0
  62. package/dist/ViewTabs.vue_vue_type_script_setup_true_lang-ByqTU2JT.js +28 -0
  63. package/dist/access/AddRoleDialog.vue.d.ts +19 -0
  64. package/dist/access/BindingRow.vue.d.ts +19 -0
  65. package/dist/access/EffectiveAccess.vue.d.ts +12 -0
  66. package/dist/access/NewRolePage.vue.d.ts +2 -0
  67. package/dist/access/PermissionTree.vue.d.ts +13 -0
  68. package/dist/access/PersonAccess.vue.d.ts +21 -0
  69. package/dist/access/ReplaceRoleDialog.vue.d.ts +17 -0
  70. package/dist/access/RoleCompareDialog.vue.d.ts +14 -0
  71. package/dist/access/RoleEditor.vue.d.ts +28 -0
  72. package/dist/access/RolePage.vue.d.ts +2 -0
  73. package/dist/access/RolesPage.vue.d.ts +2 -0
  74. package/dist/access/api.d.ts +26 -0
  75. package/dist/access/catalogue.d.ts +64 -0
  76. package/dist/access/context.d.ts +20 -0
  77. package/dist/access/effective.d.ts +42 -0
  78. package/dist/access/feature.d.ts +27 -0
  79. package/dist/access/index.d.ts +13 -0
  80. package/dist/access/index.js +15 -0
  81. package/dist/access/labels.d.ts +35 -0
  82. package/dist/access/refusals.d.ts +6 -0
  83. package/dist/access/routes.d.ts +45 -0
  84. package/dist/access/scopes.d.ts +20 -0
  85. package/dist/app/contributions.d.ts +1 -1
  86. package/dist/app/feature.d.ts +8 -0
  87. package/dist/app/index.js +259 -296
  88. package/dist/bottomDock-BZEiOPYZ.js +12 -0
  89. package/dist/button/Button.vue.d.ts +3 -3
  90. package/dist/button/index.js +1 -1
  91. package/dist/chrome-BS3xJcad.js +93 -0
  92. package/dist/client/client.d.ts +13 -0
  93. package/dist/client/index.d.ts +3 -1
  94. package/dist/client/index.js +19 -138
  95. package/dist/client/route.d.ts +59 -0
  96. package/dist/client-Bw0aM5Gu.js +147 -0
  97. package/dist/closeOverlays-CjVsIrpL.js +8 -0
  98. package/dist/collection/http.d.ts +4 -2
  99. package/dist/collection/index.js +74 -2428
  100. package/dist/content/index.js +37 -66
  101. package/dist/contributions-CDDg3fKp.js +26 -0
  102. package/dist/controls/DateButton.vue.d.ts +1 -1
  103. package/dist/controls/PopupButton.vue.d.ts +1 -1
  104. package/dist/controls/index.js +11 -10
  105. package/dist/defineRoutes-BGAdiIrt.js +19 -0
  106. package/dist/{describeError-l5T9b8Uv.js → describeError-Ctga6GcS.js} +1 -1
  107. package/dist/environment-Dva-SG8D.js +6 -0
  108. package/dist/{error-Bb_dr_Ay.js → error-CD7x0Jrz.js} +2 -2
  109. package/dist/feature-DdUAfyi4.js +25 -0
  110. package/dist/fieldMessages-C3Rpbktw.js +25 -0
  111. package/dist/form/CheckboxField.vue.d.ts +1 -1
  112. package/dist/form/CommandDialog.vue.d.ts +1 -1
  113. package/dist/form/DateField.vue.d.ts +1 -1
  114. package/dist/form/DateTimeField.vue.d.ts +1 -1
  115. package/dist/form/EditorPage.vue.d.ts +1 -1
  116. package/dist/form/Field.vue.d.ts +1 -1
  117. package/dist/form/FileField.vue.d.ts +1 -1
  118. package/dist/form/FormGroup.vue.d.ts +1 -1
  119. package/dist/form/FormGroupButton.vue.d.ts +1 -1
  120. package/dist/form/FormRow.vue.d.ts +1 -1
  121. package/dist/form/I18nField.vue.d.ts +3 -3
  122. package/dist/form/MoneyField.vue.d.ts +1 -1
  123. package/dist/form/MonthYearField.vue.d.ts +1 -1
  124. package/dist/form/NumberCell.vue.d.ts +1 -1
  125. package/dist/form/NumberField.vue.d.ts +2 -2
  126. package/dist/form/OtpInput.vue.d.ts +2 -2
  127. package/dist/form/PhotoField.vue.d.ts +1 -1
  128. package/dist/form/SwitchField.vue.d.ts +1 -1
  129. package/dist/form/TextField.vue.d.ts +3 -3
  130. package/dist/form/TextareaField.vue.d.ts +3 -3
  131. package/dist/form/TimeField.vue.d.ts +1 -1
  132. package/dist/form/date/DatePickerSheet.vue.d.ts +1 -1
  133. package/dist/form/date/MonthYearPanel.vue.d.ts +1 -1
  134. package/dist/form/index.js +1262 -3430
  135. package/dist/guards-Cd1V28oG.js +51 -0
  136. package/dist/http-DGGSKWvU.js +193 -0
  137. package/dist/i18n/index.d.ts +281 -0
  138. package/dist/i18n/index.js +50 -50
  139. package/dist/icon/core.d.ts +13 -0
  140. package/dist/icon/index.js +1 -1
  141. package/dist/identity/ImpersonationBanner.vue.d.ts +2 -0
  142. package/dist/identity/LocaleSync.vue.d.ts +2 -0
  143. package/dist/identity/SessionExpiry.vue.d.ts +2 -0
  144. package/dist/identity/SignInAsButton.vue.d.ts +15 -0
  145. package/dist/identity/SignInPage.vue.d.ts +2 -0
  146. package/dist/identity/context.d.ts +7 -0
  147. package/dist/identity/feature.d.ts +16 -0
  148. package/dist/identity/fieldMessages.d.ts +15 -0
  149. package/dist/identity/index.d.ts +16 -0
  150. package/dist/identity/index.js +18 -0
  151. package/dist/identity/profile/DetailsPanel.vue.d.ts +11 -0
  152. package/dist/identity/profile/EmailChangeDialog.vue.d.ts +14 -0
  153. package/dist/identity/profile/EmailPanel.vue.d.ts +11 -0
  154. package/dist/identity/profile/PanelActions.vue.d.ts +17 -0
  155. package/dist/identity/profile/PasswordPanel.vue.d.ts +2 -0
  156. package/dist/identity/profile/ProfileMenuItem.vue.d.ts +2 -0
  157. package/dist/identity/profile/ProfilePage.vue.d.ts +2 -0
  158. package/dist/identity/profile/SessionsPanel.vue.d.ts +2 -0
  159. package/dist/identity/profile/SignInsPanel.vue.d.ts +2 -0
  160. package/dist/identity/profile/VerifyCode.vue.d.ts +49 -0
  161. package/dist/identity/profile/routes.d.ts +13 -0
  162. package/dist/identity/session.d.ts +30 -0
  163. package/dist/identity/shared/ActionRow.vue.d.ts +20 -0
  164. package/dist/identity/shared/ChangeFeed.vue.d.ts +11 -0
  165. package/dist/identity/shared/PageBar.vue.d.ts +12 -0
  166. package/dist/identity/shared/SectionIntro.vue.d.ts +16 -0
  167. package/dist/identity/shared/SessionList.vue.d.ts +19 -0
  168. package/dist/identity/shared/SignInTable.vue.d.ts +11 -0
  169. package/dist/identity/shared/ViewTabs.vue.d.ts +23 -0
  170. package/dist/identity/shared/signInEvents.d.ts +9 -0
  171. package/dist/identity/signIn.d.ts +27 -0
  172. package/dist/identity/useSignInForm.d.ts +20 -0
  173. package/dist/identity/user.d.ts +6 -0
  174. package/dist/identity/users/DeactivateDialog.vue.d.ts +18 -0
  175. package/dist/identity/users/NewUserDialog.vue.d.ts +9 -0
  176. package/dist/identity/users/SetPasswordDialog.vue.d.ts +16 -0
  177. package/dist/identity/users/UserRecord.vue.d.ts +2 -0
  178. package/dist/identity/users/UsersList.vue.d.ts +2 -0
  179. package/dist/identity/users/access.d.ts +4 -0
  180. package/dist/identity/users/context.d.ts +9 -0
  181. package/dist/identity/users/feature.d.ts +34 -0
  182. package/dist/identity/users/languages.d.ts +4 -0
  183. package/dist/identity/users/list.d.ts +8 -0
  184. package/dist/identity/users/person.d.ts +26 -0
  185. package/dist/identity/users/personSections.d.ts +22 -0
  186. package/dist/identity/users/routes.d.ts +22 -0
  187. package/dist/identity/users/sections/Activity.vue.d.ts +2 -0
  188. package/dist/identity/users/sections/Changes.vue.d.ts +2 -0
  189. package/dist/identity/users/sections/General.vue.d.ts +2 -0
  190. package/dist/identity/users/sections/Sessions.vue.d.ts +2 -0
  191. package/dist/identity/users/sections/SignIn.vue.d.ts +2 -0
  192. package/dist/identity/users/sections/SignIns.vue.d.ts +2 -0
  193. package/dist/identity/users/status.d.ts +4 -0
  194. package/dist/index-B2dbYZR9.js +706 -0
  195. package/dist/index-BAcl44SC.js +459 -0
  196. package/dist/index.d.ts +1 -1
  197. package/dist/index.js +1 -1
  198. package/dist/internal/languageName.d.ts +2 -0
  199. package/dist/keepAlive-WYQGRhuz.js +48 -0
  200. package/dist/languageName-CItV_SOv.js +11 -0
  201. package/dist/languages-BShG9LpE.js +10 -0
  202. package/dist/leaveGuard-Cc8yeLxM.js +72 -0
  203. package/dist/modal/Modal.vue.d.ts +1 -1
  204. package/dist/modal/index.js +5 -5
  205. package/dist/modules/access/entities.d.ts +112 -0
  206. package/dist/modules/access/routes.d.ts +67 -0
  207. package/dist/modules/access/schemas.d.ts +73 -0
  208. package/dist/modules/identity/entities.d.ts +150 -0
  209. package/dist/modules/identity/routes.d.ts +118 -0
  210. package/dist/modules/identity/schemas.d.ts +145 -0
  211. package/dist/{navigation-B33ikiCS.js → navigation-BPWa63ge.js} +21 -20
  212. package/dist/neighbors-D0WRBxXI.js +86 -0
  213. package/dist/{options-DAkBtYkI.js → options-BXkMR63B.js} +51 -52
  214. package/dist/overlay/AlertDialog.vue.d.ts +3 -3
  215. package/dist/overlay/Popover.vue.d.ts +1 -1
  216. package/dist/overlay/closeOverlays.d.ts +7 -0
  217. package/dist/overlay/index.js +21 -20
  218. package/dist/page/AdaptivePageShell.vue.d.ts +2 -2
  219. package/dist/page/ResourceHeader.vue.d.ts +2 -2
  220. package/dist/page/index.js +99 -457
  221. package/dist/phone/PhoneField.vue.d.ts +2 -2
  222. package/dist/phone/index.js +2 -2
  223. package/dist/platform/index.d.ts +2 -2
  224. package/dist/platform/index.js +73 -90
  225. package/dist/platform/platform.d.ts +2 -2
  226. package/dist/platform/session.d.ts +22 -1
  227. package/dist/platform-hunMqFdB.js +255 -0
  228. package/dist/resource/index.js +8 -248
  229. package/dist/routeResource-DstM0hvf.js +82 -0
  230. package/dist/router/guards.d.ts +7 -1
  231. package/dist/router/index.js +23 -37
  232. package/dist/router/navigation.d.ts +1 -1
  233. package/dist/rowLayout-BI7a3Kom.js +603 -0
  234. package/dist/sectionIndex-BS0ic5W7.js +86 -0
  235. package/dist/{sections-LtxV5Mtk.js → sections-BEqW1dOc.js} +1 -1
  236. package/dist/shell/AccountMenuItem.vue.d.ts +1 -1
  237. package/dist/shell/BackofficeShell.vue.d.ts +2 -2
  238. package/dist/shell/NavigationList.vue.d.ts +1 -1
  239. package/dist/shell/ShellBrand.vue.d.ts +1 -1
  240. package/dist/shell/backofficeShell.d.ts +1 -1
  241. package/dist/shell/identity.d.ts +1 -1
  242. package/dist/shell/index.js +507 -575
  243. package/dist/state/ProgressTrack.vue.d.ts +1 -1
  244. package/dist/state/index.js +59 -92
  245. package/dist/status-C9aXR-Jb.js +33 -0
  246. package/dist/styles.css +1 -1
  247. package/dist/suggestions-BJAqOj4c.js +138 -0
  248. package/dist/testing/index.js +1 -1
  249. package/dist/toast-D9Z5To38.js +13 -0
  250. package/dist/useCommand-BgRwnYlV.js +135 -0
  251. package/dist/useLoad-CYRVx6HW.js +39 -0
  252. package/dist/useResourceForm-Bgc9jMcu.js +52 -0
  253. package/dist/useSaveChrome-chi6D3HY.js +25 -0
  254. package/dist/useSheetDrag-OsD6Eb6I.js +72 -0
  255. package/package.json +22 -5
  256. package/dist/NoAccess.vue_vue_type_script_setup_true_lang-OKW8pKYU.js +0 -78
  257. package/dist/SectionList.vue_vue_type_script_setup_true_lang-L9ita_Kx.js +0 -230
  258. package/dist/SelectField.vue_vue_type_script_setup_true_lang-DZTrU8NJ.js +0 -661
  259. package/dist/Sheet.vue_vue_type_script_setup_true_lang-CtkJ-4e3.js +0 -210
  260. package/dist/SwipeActions.vue_vue_type_script_setup_true_lang-CGTuEnTv.js +0 -243
  261. package/dist/chrome-D9pwD6iS.js +0 -101
  262. package/dist/environment-D3nozt9a.js +0 -75
  263. package/dist/feature-DyDtyMLU.js +0 -47
  264. package/dist/platform-jqlKVJ2e.js +0 -244
  265. package/dist/toast-DvrHQ6Ag.js +0 -131
@@ -1,230 +0,0 @@
1
- import { inject as I, shallowRef as B, ref as D, watch as k, getCurrentScope as N, onScopeDispose as R, provide as T, onMounted as j, onBeforeUnmount as A, nextTick as M, defineComponent as E, computed as w, unref as d, openBlock as p, createBlock as L, withCtx as y, createElementVNode as m, createVNode as $, mergeProps as U, createElementBlock as h, toDisplayString as v, createCommentVNode as _, resolveDynamicComponent as P, normalizeClass as C, Fragment as V, renderList as H, withModifiers as K, normalizeStyle as Y } from "vue";
2
- import { useI18n as z } from "vue-i18n";
3
- import { _ as F } from "./Icon.vue_vue_type_script_lang-DtC4_mkz.js";
4
- import { _ as G } from "./Menu.vue_vue_type_script_setup_true_lang-CrMj6KPD.js";
5
- import { _ as J } from "./AdaptivePageShell.vue_vue_type_script_setup_true_lang-CeKK8_g5.js";
6
- import { routerKey as W } from "vue-router";
7
- const O = Symbol("vue-core.sectionIndex"), Q = 120, X = (l, a) => l.element.compareDocumentPosition(a.element) & Node.DOCUMENT_POSITION_FOLLOWING ? -1 : 1, Z = () => window.matchMedia?.("(prefers-reduced-motion: reduce)").matches ? "auto" : "smooth";
8
- function $e(l) {
9
- return l.normalize("NFD").replace(/[̀-ͯ]/g, "").replace(/đ/gi, "d").toLowerCase().replace(/[^a-z0-9]+/g, "-").replace(/^-+|-+$/g, "");
10
- }
11
- function Se() {
12
- const l = I(W, null), a = B([]), n = D(null);
13
- function c() {
14
- const e = a.value;
15
- if (e.length === 0) {
16
- n.value = null;
17
- return;
18
- }
19
- if (window.innerHeight + window.scrollY >= document.documentElement.scrollHeight - 2) {
20
- n.value = e[e.length - 1].id;
21
- return;
22
- }
23
- let t = e[0].id;
24
- for (const i of e) i.element.getBoundingClientRect().top - Q <= 0 && (t = i.id);
25
- n.value = t;
26
- }
27
- let r = 0;
28
- const s = () => {
29
- r || (r = requestAnimationFrame(() => {
30
- r = 0, c();
31
- }));
32
- };
33
- k(
34
- () => a.value.length > 0,
35
- (e) => {
36
- e ? (window.addEventListener("scroll", s, { passive: !0 }), window.addEventListener("resize", s, { passive: !0 })) : (window.removeEventListener("scroll", s), window.removeEventListener("resize", s));
37
- }
38
- ), N() && R(() => {
39
- window.removeEventListener("scroll", s), window.removeEventListener("resize", s), r && cancelAnimationFrame(r);
40
- });
41
- let f = "";
42
- const u = () => decodeURIComponent(l?.currentRoute.value.hash.slice(1) ?? "");
43
- function b() {
44
- const e = u(), t = `${l?.currentRoute.value.path}#${e}`, i = e ? a.value.find((g) => g.id === e) : void 0;
45
- !i || t === f || (f = t, requestAnimationFrame(() => void x(i.id, { updateUrl: !1 })));
46
- }
47
- l && k(() => l.currentRoute.value.hash, b);
48
- async function x(e, t = {}) {
49
- const i = a.value.find((g) => g.id === e);
50
- if (i) {
51
- if (n.value = e, t.updateUrl !== !1 && l && l.currentRoute.value.hash !== `#${e}`) {
52
- const { path: g, query: q } = l.currentRoute.value;
53
- f = `${g}#${e}`, l.replace({ path: g, query: q, hash: `#${e}` });
54
- }
55
- i.reveal?.(), await M(), i.element.scrollIntoView({ behavior: Z(), block: "start" }), i.element.hasAttribute("tabindex") && i.element.focus({ preventScroll: !0 });
56
- }
57
- }
58
- const o = {
59
- sections: a,
60
- activeId: n,
61
- register(e) {
62
- if (a.value.some((t) => t.id === e.id)) throw new Error(`Section "${e.id}" is registered twice: give one of the sections another id.`);
63
- return a.value = [...a.value, e].sort(X), c(), b(), () => {
64
- a.value = a.value.filter((t) => t.id !== e.id), c();
65
- };
66
- },
67
- update(e, t) {
68
- a.value = a.value.map((i) => i.id === e ? { ...i, ...t } : i);
69
- },
70
- scrollTo: x
71
- };
72
- return T(O, o), o;
73
- }
74
- function S() {
75
- return I(O, null);
76
- }
77
- function Ce(l, a, n, c = {}) {
78
- const r = S();
79
- if (!r) return;
80
- let s = null;
81
- j(() => {
82
- n.value && (s = r.register({ id: l, label: a(), number: c.number?.(), element: n.value, reveal: c.reveal }));
83
- }), k([a, () => c.number?.()], ([f, u]) => r.update(l, { label: f, number: u })), A(() => s?.());
84
- }
85
- const ee = {
86
- class: "dock-safe-area pointer-events-none",
87
- "data-test": "section-jumper"
88
- }, te = { class: "flex justify-center px-4 pb-3" }, oe = ["aria-label", "onClick"], ne = {
89
- key: 0,
90
- class: "text-footnote font-semibold tabular-nums text-content-link"
91
- }, re = { class: "min-w-0 truncate text-headline font-semibold text-content-strong" }, se = {
92
- key: 1,
93
- "data-test": "jumper-error-count",
94
- class: "min-w-4.5 rounded-full bg-status-danger-solid px-1.5 text-center text-caption font-semibold text-white"
95
- }, Ie = /* @__PURE__ */ E({
96
- __name: "SectionJumper",
97
- props: {
98
- states: { default: void 0 }
99
- },
100
- setup(l) {
101
- const a = l, { t: n } = z(), c = S(), r = w(() => c?.sections.value ?? []), s = w(() => r.value.find((o) => o.id === c?.activeId.value) ?? r.value[0] ?? null), f = (o) => [o.number, o.label].filter(Boolean).join(" "), u = (o) => a.states?.[o]?.errors ?? 0, b = (o) => u(o.id) > 0 ? `${f(o)} · ${n("core.form.sections.errors", { count: u(o.id) })}` : f(o), x = w(() => r.value.map((o) => ({ id: o.id, label: b(o), onSelect: () => void c?.scrollTo(o.id) })));
102
- return (o, e) => d(c) && r.value.length > 1 && s.value ? (p(), L(J, { key: 0 }, {
103
- default: y(() => [
104
- m("div", ee, [
105
- m("div", te, [
106
- $(G, {
107
- items: x.value,
108
- label: d(n)("core.sections.label"),
109
- placement: "top"
110
- }, {
111
- trigger: y(({ toggle: t, attrs: i }) => [
112
- m("button", U({ type: "button" }, i, {
113
- "aria-label": `${d(n)("core.sections.label")}: ${b(s.value)}`,
114
- class: "pointer-events-auto flex h-12 max-w-full cursor-pointer items-center gap-2.5 rounded-full bg-surface-overlay/90 pr-3.5 pl-4 shadow-float backdrop-blur-xl transition-colors duration-motion-fast focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-border-focus",
115
- onClick: t
116
- }), [
117
- s.value.number ? (p(), h("span", ne, v(s.value.number), 1)) : _("", !0),
118
- m("span", re, v(s.value.label), 1),
119
- u(s.value.id) > 0 ? (p(), h("span", se, v(u(s.value.id)), 1)) : _("", !0),
120
- $(d(F), {
121
- name: "arrowDownSLine",
122
- size: 16,
123
- class: "shrink-0 rotate-180 text-content-muted"
124
- })
125
- ], 16, oe)
126
- ]),
127
- _: 1
128
- }, 8, ["items", "label"])
129
- ])
130
- ])
131
- ]),
132
- _: 1
133
- })) : _("", !0);
134
- }
135
- }), ae = {
136
- key: 0,
137
- class: "px-2.5 text-caption font-semibold tracking-wide text-content-muted uppercase"
138
- }, le = { class: "flex flex-col gap-0.5" }, ie = ["href", "aria-current", "data-test", "data-state", "onClick"], ce = {
139
- key: 0,
140
- class: "w-5 shrink-0 text-footnote font-semibold tabular-nums text-content-link"
141
- }, ue = { class: "min-w-0 flex-1 break-words" }, de = ["aria-label"], me = {
142
- key: 2,
143
- class: "flex size-4 shrink-0 items-center justify-center rounded-full bg-control-on text-white"
144
- }, fe = { class: "sr-only" }, pe = {
145
- key: 1,
146
- class: "mx-2.5 flex flex-col gap-1.5 border-t border-border-separator pt-3.5",
147
- "data-test": "section-progress"
148
- }, ve = { class: "text-footnote text-content-muted" }, he = ["aria-valuemax", "aria-valuenow", "aria-label"], be = { class: "text-footnote tabular-nums text-content-muted" }, Ee = /* @__PURE__ */ E({
149
- __name: "SectionList",
150
- props: {
151
- standalone: { type: Boolean, default: !1 },
152
- states: { default: void 0 },
153
- progress: { default: null }
154
- },
155
- emits: ["select"],
156
- setup(l, { emit: a }) {
157
- const n = l, c = a, { t: r } = z(), s = S(), f = w(() => s?.sections.value ?? []), u = (o) => n.states?.[o]?.errors ?? 0, b = (o) => {
158
- const e = n.states?.[o]?.required;
159
- return !!e && e.total > 0 && e.filled === e.total && u(o) === 0;
160
- };
161
- function x(o) {
162
- s?.scrollTo(o), c("select", o);
163
- }
164
- return (o, e) => f.value.length > 1 ? (p(), L(P(n.standalone ? "nav" : "div"), {
165
- key: 0,
166
- "data-test": "section-list",
167
- class: C(n.standalone ? "flex min-w-0 flex-col gap-3.5" : "mt-1 mb-2 pl-2"),
168
- "aria-label": n.standalone ? d(r)("core.sections.label") : void 0
169
- }, {
170
- default: y(() => [
171
- n.standalone ? (p(), h("h2", ae, v(d(r)("core.sections.label")), 1)) : _("", !0),
172
- m("ul", le, [
173
- (p(!0), h(V, null, H(f.value, (t) => (p(), h("li", {
174
- key: t.id
175
- }, [
176
- m("a", {
177
- href: `#${t.id}`,
178
- "aria-current": d(s)?.activeId.value === t.id ? "location" : void 0,
179
- "data-test": `section-link-${t.id}`,
180
- "data-state": u(t.id) > 0 ? "error" : b(t.id) ? "done" : void 0,
181
- class: C(["flex min-h-[2.125rem] items-center gap-2.5 rounded-control px-2.5 py-1 text-body text-content-strong transition-colors duration-motion-fast focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-border-focus", d(s)?.activeId.value === t.id ? "bg-tint-soft font-semibold" : "hover:bg-fill"]),
182
- onClick: K((i) => x(t.id), ["prevent"])
183
- }, [
184
- t.number ? (p(), h("span", ce, v(t.number), 1)) : _("", !0),
185
- m("span", ue, v(t.label), 1),
186
- u(t.id) > 0 ? (p(), h("span", {
187
- key: 1,
188
- "data-test": "section-error-count",
189
- class: "min-w-4.5 rounded-full bg-status-danger-solid px-1.5 text-center text-caption font-semibold text-white",
190
- "aria-label": d(r)("core.form.sections.errors", { count: u(t.id) })
191
- }, v(u(t.id)), 9, de)) : b(t.id) ? (p(), h("span", me, [
192
- $(d(F), {
193
- name: "checkCustom",
194
- size: 12
195
- }),
196
- m("span", fe, v(d(r)("core.form.sections.done")), 1)
197
- ])) : _("", !0)
198
- ], 10, ie)
199
- ]))), 128))
200
- ]),
201
- n.progress && n.progress.total > 0 ? (p(), h("div", pe, [
202
- m("span", ve, v(d(r)("core.form.required.label")), 1),
203
- m("div", {
204
- class: "h-1 overflow-hidden rounded-full bg-fill",
205
- role: "progressbar",
206
- "aria-valuemin": 0,
207
- "aria-valuemax": n.progress.total,
208
- "aria-valuenow": n.progress.filled,
209
- "aria-label": d(r)("core.form.required.label")
210
- }, [
211
- m("div", {
212
- class: "h-1 rounded-full bg-control-on transition-[width] duration-motion-normal",
213
- style: Y({ width: `${Math.round(n.progress.filled / n.progress.total * 100)}%` })
214
- }, null, 4)
215
- ], 8, he),
216
- m("span", be, v(d(r)("core.form.required.count", { filled: n.progress.filled, total: n.progress.total })), 1)
217
- ])) : _("", !0)
218
- ]),
219
- _: 1
220
- }, 8, ["class", "aria-label"])) : _("", !0);
221
- }
222
- });
223
- export {
224
- Ee as _,
225
- Ie as a,
226
- S as b,
227
- Se as p,
228
- $e as s,
229
- Ce as u
230
- };