@wssto2/vue-core 0.2.0 → 0.4.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 (309) hide show
  1. package/README.md +36 -0
  2. package/dist/AccessGate.vue_vue_type_script_setup_true_lang-DcbZBINh.js +22 -0
  3. package/dist/AccountMenuItem.vue_vue_type_script_setup_true_lang-CPeNxh5K.js +76 -0
  4. package/dist/ActionRow.vue_vue_type_script_setup_true_lang-LlfIPWsJ.js +45 -0
  5. package/dist/Activity-2gGxQn7v.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-BoinCY93.js} +48 -47
  7. package/dist/{AlertDialog.vue_vue_type_script_setup_true_lang-e4hzkzg3.js → AlertDialog.vue_vue_type_script_setup_true_lang-whA4WLdl.js} +1 -1
  8. package/dist/{AsyncSection.vue_vue_type_script_setup_true_lang-CWLB3xsR.js → AsyncSection.vue_vue_type_script_setup_true_lang-Blj6KgCr.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-DSStj_5z.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-CL9Qh5yq.js} +1 -1
  12. package/dist/Changes-Bm8xvagD.js +129 -0
  13. package/dist/CollectionPage.vue_vue_type_script_setup_true_lang-DCBVw2Qd.js +1485 -0
  14. package/dist/DataTable.vue_vue_type_script_setup_true_lang-UH6f9puS.js +52 -0
  15. package/dist/DateField.vue_vue_type_script_setup_true_lang-GVasv8ao.js +255 -0
  16. package/dist/DeadLetters-CMRtXn_N.js +104 -0
  17. package/dist/{DiscardChangesModal.vue_vue_type_script_setup_true_lang-DyhYHRyz.js → DiscardChangesModal.vue_vue_type_script_setup_true_lang-D1arePCZ.js} +1 -1
  18. package/dist/{EmptyState.vue_vue_type_script_setup_true_lang-BeGpHMUP.js → EmptyState.vue_vue_type_script_setup_true_lang-50p-Mp8I.js} +1 -1
  19. package/dist/FormErrors.vue_vue_type_script_setup_true_lang-BQb7wLT0.js +276 -0
  20. package/dist/FormGroup.vue_vue_type_script_setup_true_lang-DG2zdG_a.js +136 -0
  21. package/dist/FormView.vue_vue_type_script_setup_true_lang-cr0xNDXP.js +38 -0
  22. package/dist/General-CTqd0SLK.js +145 -0
  23. package/dist/HeaderAction.vue_vue_type_script_setup_true_lang-Cgji-Jrr.js +45 -0
  24. package/dist/{Icon.vue_vue_type_script_lang-DtC4_mkz.js → Icon.vue_vue_type_script_lang-D7oC-d-S.js} +54 -37
  25. package/dist/{IconTile.vue_vue_type_script_setup_true_lang-Csfv6Sel.js → IconTile.vue_vue_type_script_setup_true_lang-BpIjgu5E.js} +1 -1
  26. package/dist/KeyValue.vue_vue_type_script_setup_true_lang-wcZcvnow.js +35 -0
  27. package/dist/{LeaveGuardRoot.vue_vue_type_script_setup_true_lang-CvwoT1JF.js → LeaveGuardRoot.vue_vue_type_script_setup_true_lang-Cv7KlA5y.js} +2 -2
  28. package/dist/{Menu.vue_vue_type_script_setup_true_lang-CrMj6KPD.js → Menu.vue_vue_type_script_setup_true_lang-DTbAcDzL.js} +66 -58
  29. package/dist/{Modal.vue_vue_type_script_setup_true_lang-BQZM49gC.js → Modal.vue_vue_type_script_setup_true_lang-DpBb8ans.js} +4 -4
  30. package/dist/NewRolePage-DTOWIxxC.js +42 -0
  31. package/dist/NoAccess.vue_vue_type_script_setup_true_lang-DWxq-MTM.js +31 -0
  32. package/dist/NumberField.vue_vue_type_script_setup_true_lang-C7N5nq0P.js +113 -0
  33. package/dist/OtpInput.vue_vue_type_script_setup_true_lang-gp4FfWAH.js +95 -0
  34. package/dist/PageBar.vue_vue_type_script_setup_true_lang-B7qdEeej.js +47 -0
  35. package/dist/{Panel.vue_vue_type_script_setup_true_lang-BQmv3cLb.js → Panel.vue_vue_type_script_setup_true_lang-BA0u_DtS.js} +1 -1
  36. package/dist/PanelActions.vue_vue_type_script_setup_true_lang-E9VdIGkf.js +46 -0
  37. package/dist/{PhotoViewer.vue_vue_type_script_setup_true_lang-ElDizaW2.js → PhotoViewer.vue_vue_type_script_setup_true_lang-QPCW3Xi6.js} +1 -1
  38. package/dist/Popover.vue_vue_type_script_setup_true_lang-Dx-tDhNE.js +125 -0
  39. package/dist/ProfilePage-BlpiWH_W.js +654 -0
  40. package/dist/{ProgressTrack.vue_vue_type_script_setup_true_lang-1DDaNs2W.js → ProgressTrack.vue_vue_type_script_setup_true_lang-B6Prw9hi.js} +2 -2
  41. package/dist/RecordHeader.vue_vue_type_script_setup_true_lang-C_ymvhHU.js +64 -0
  42. package/dist/ResourcePage.vue_vue_type_script_setup_true_lang-CwI_sROp.js +173 -0
  43. package/dist/RoleEditor.vue_vue_type_script_setup_true_lang-CmwvSytD.js +300 -0
  44. package/dist/RolePage-DZk7BZOc.js +315 -0
  45. package/dist/RolesPage-DzGGCMnm.js +115 -0
  46. package/dist/SectionIntro.vue_vue_type_script_setup_true_lang-CZtPrmXD.js +23 -0
  47. package/dist/SectionList.vue_vue_type_script_setup_true_lang-BFYls8fR.js +148 -0
  48. package/dist/SectionNavigator.vue_vue_type_script_setup_true_lang-DSMXEaCs.js +314 -0
  49. package/dist/SegmentedField.vue_vue_type_script_setup_true_lang-BMqWlpsL.js +58 -0
  50. package/dist/SelectField.vue_vue_type_script_setup_true_lang-7O1BAx04.js +423 -0
  51. package/dist/SessionList.vue_vue_type_script_setup_true_lang-D5KRitar.js +111 -0
  52. package/dist/Sessions-CWqjjTr1.js +96 -0
  53. package/dist/SettingsPage-C4s0IdkW.js +255 -0
  54. package/dist/Sheet.vue_vue_type_script_setup_true_lang-DgOFV4fa.js +145 -0
  55. package/dist/SignIn-zzKY__df.js +140 -0
  56. package/dist/SignInPage-Rqnus_s-.js +60 -0
  57. package/dist/SignInTable.vue_vue_type_script_setup_true_lang-CEbAvZ_C.js +79 -0
  58. package/dist/SignIns-Cnf9BVR0.js +66 -0
  59. package/dist/SwipeActions.vue_vue_type_script_setup_true_lang-BJIA2JfI.js +93 -0
  60. package/dist/SwitchField.vue_vue_type_script_setup_true_lang-CM8yp9JQ.js +64 -0
  61. package/dist/Tabs.vue_vue_type_script_setup_true_lang-CcMcE38r.js +155 -0
  62. package/dist/TextField.vue_vue_type_script_setup_true_lang-B9dwVASU.js +269 -0
  63. package/dist/TextareaField.vue_vue_type_script_setup_true_lang-CqAWfABZ.js +68 -0
  64. package/dist/TimeField.vue_vue_type_script_setup_true_lang-DWfAUlnz.js +164 -0
  65. package/dist/{Timestamp.vue_vue_type_script_setup_true_lang-CSY_mMm1.js → Timestamp.vue_vue_type_script_setup_true_lang-FVRUr-9y.js} +1 -1
  66. package/dist/UserRecord-DqigxVxH.js +267 -0
  67. package/dist/UsersList-DNlZsI9J.js +155 -0
  68. package/dist/ViewTabs.vue_vue_type_script_setup_true_lang-BJIoZAlH.js +28 -0
  69. package/dist/access/AddRoleDialog.vue.d.ts +19 -0
  70. package/dist/access/BindingRow.vue.d.ts +19 -0
  71. package/dist/access/EffectiveAccess.vue.d.ts +12 -0
  72. package/dist/access/NewRolePage.vue.d.ts +2 -0
  73. package/dist/access/PermissionTree.vue.d.ts +13 -0
  74. package/dist/access/PersonAccess.vue.d.ts +21 -0
  75. package/dist/access/ReplaceRoleDialog.vue.d.ts +17 -0
  76. package/dist/access/RoleCompareDialog.vue.d.ts +14 -0
  77. package/dist/access/RoleEditor.vue.d.ts +28 -0
  78. package/dist/access/RolePage.vue.d.ts +2 -0
  79. package/dist/access/RolesPage.vue.d.ts +2 -0
  80. package/dist/access/api.d.ts +26 -0
  81. package/dist/access/catalogue.d.ts +64 -0
  82. package/dist/access/context.d.ts +20 -0
  83. package/dist/access/effective.d.ts +42 -0
  84. package/dist/access/feature.d.ts +27 -0
  85. package/dist/access/index.d.ts +13 -0
  86. package/dist/access/index.js +15 -0
  87. package/dist/access/labels.d.ts +35 -0
  88. package/dist/access/refusals.d.ts +6 -0
  89. package/dist/access/routes.d.ts +45 -0
  90. package/dist/access/scopes.d.ts +20 -0
  91. package/dist/app/contributions.d.ts +1 -1
  92. package/dist/app/feature.d.ts +8 -0
  93. package/dist/app/index.js +259 -296
  94. package/dist/bottomDock-BZEiOPYZ.js +12 -0
  95. package/dist/button/Button.vue.d.ts +3 -3
  96. package/dist/button/index.js +1 -1
  97. package/dist/chrome-BS3xJcad.js +93 -0
  98. package/dist/client/client.d.ts +13 -0
  99. package/dist/client/index.d.ts +3 -1
  100. package/dist/client/index.js +11 -138
  101. package/dist/client/route.d.ts +59 -0
  102. package/dist/client-k9euDWF4.js +147 -0
  103. package/dist/closeOverlays-CjVsIrpL.js +8 -0
  104. package/dist/collection/definition.d.ts +3 -0
  105. package/dist/collection/http.d.ts +4 -2
  106. package/dist/collection/index.js +74 -2428
  107. package/dist/collection/useCollection.d.ts +2 -0
  108. package/dist/content/index.js +37 -66
  109. package/dist/contributions-DsfmDoRD.js +26 -0
  110. package/dist/control-7EP4tjYy.js +313 -0
  111. package/dist/controls/DateButton.vue.d.ts +1 -1
  112. package/dist/controls/PopupButton.vue.d.ts +1 -1
  113. package/dist/controls/index.js +11 -10
  114. package/dist/defineRoutes-BGAdiIrt.js +19 -0
  115. package/dist/{describeError-l5T9b8Uv.js → describeError-Ctga6GcS.js} +1 -1
  116. package/dist/environment-Dva-SG8D.js +6 -0
  117. package/dist/{error-Bb_dr_Ay.js → error-CD7x0Jrz.js} +2 -2
  118. package/dist/feature-DdUAfyi4.js +25 -0
  119. package/dist/fieldMessages-C3Rpbktw.js +25 -0
  120. package/dist/form/CheckboxField.vue.d.ts +1 -1
  121. package/dist/form/CommandDialog.vue.d.ts +1 -1
  122. package/dist/form/DateField.vue.d.ts +1 -1
  123. package/dist/form/DateTimeField.vue.d.ts +1 -1
  124. package/dist/form/EditorPage.vue.d.ts +1 -1
  125. package/dist/form/Field.vue.d.ts +1 -1
  126. package/dist/form/FileField.vue.d.ts +1 -1
  127. package/dist/form/FormGroup.vue.d.ts +1 -1
  128. package/dist/form/FormGroupButton.vue.d.ts +1 -1
  129. package/dist/form/FormRow.vue.d.ts +1 -1
  130. package/dist/form/I18nField.vue.d.ts +3 -3
  131. package/dist/form/MoneyField.vue.d.ts +1 -1
  132. package/dist/form/MonthYearField.vue.d.ts +1 -1
  133. package/dist/form/NumberCell.vue.d.ts +1 -1
  134. package/dist/form/NumberField.vue.d.ts +2 -2
  135. package/dist/form/OtpInput.vue.d.ts +2 -2
  136. package/dist/form/PhotoField.vue.d.ts +1 -1
  137. package/dist/form/SwitchField.vue.d.ts +1 -1
  138. package/dist/form/TextField.vue.d.ts +3 -3
  139. package/dist/form/TextareaField.vue.d.ts +3 -3
  140. package/dist/form/TimeField.vue.d.ts +1 -1
  141. package/dist/form/date/DatePickerSheet.vue.d.ts +1 -1
  142. package/dist/form/date/MonthYearPanel.vue.d.ts +1 -1
  143. package/dist/form/index.js +1159 -3474
  144. package/dist/guards-Dve61KjR.js +51 -0
  145. package/dist/http-CNcDHSOj.js +194 -0
  146. package/dist/i18n/index.d.ts +281 -0
  147. package/dist/i18n/index.js +52 -52
  148. package/dist/icon/core.d.ts +17 -0
  149. package/dist/icon/index.js +1 -1
  150. package/dist/identity/ImpersonationBanner.vue.d.ts +2 -0
  151. package/dist/identity/LocaleSync.vue.d.ts +2 -0
  152. package/dist/identity/SessionExpiry.vue.d.ts +2 -0
  153. package/dist/identity/SignInAsButton.vue.d.ts +15 -0
  154. package/dist/identity/SignInPage.vue.d.ts +2 -0
  155. package/dist/identity/context.d.ts +7 -0
  156. package/dist/identity/feature.d.ts +16 -0
  157. package/dist/identity/fieldMessages.d.ts +15 -0
  158. package/dist/identity/index.d.ts +16 -0
  159. package/dist/identity/index.js +18 -0
  160. package/dist/identity/profile/DetailsPanel.vue.d.ts +11 -0
  161. package/dist/identity/profile/EmailChangeDialog.vue.d.ts +14 -0
  162. package/dist/identity/profile/EmailPanel.vue.d.ts +11 -0
  163. package/dist/identity/profile/PanelActions.vue.d.ts +17 -0
  164. package/dist/identity/profile/PasswordPanel.vue.d.ts +2 -0
  165. package/dist/identity/profile/ProfileMenuItem.vue.d.ts +2 -0
  166. package/dist/identity/profile/ProfilePage.vue.d.ts +2 -0
  167. package/dist/identity/profile/SessionsPanel.vue.d.ts +2 -0
  168. package/dist/identity/profile/SignInsPanel.vue.d.ts +2 -0
  169. package/dist/identity/profile/VerifyCode.vue.d.ts +49 -0
  170. package/dist/identity/profile/routes.d.ts +13 -0
  171. package/dist/identity/session.d.ts +30 -0
  172. package/dist/identity/shared/ActionRow.vue.d.ts +20 -0
  173. package/dist/identity/shared/ChangeFeed.vue.d.ts +11 -0
  174. package/dist/identity/shared/PageBar.vue.d.ts +12 -0
  175. package/dist/identity/shared/SectionIntro.vue.d.ts +16 -0
  176. package/dist/identity/shared/SessionList.vue.d.ts +19 -0
  177. package/dist/identity/shared/SignInTable.vue.d.ts +11 -0
  178. package/dist/identity/shared/ViewTabs.vue.d.ts +23 -0
  179. package/dist/identity/shared/signInEvents.d.ts +9 -0
  180. package/dist/identity/signIn.d.ts +27 -0
  181. package/dist/identity/useSignInForm.d.ts +20 -0
  182. package/dist/identity/user.d.ts +6 -0
  183. package/dist/identity/users/DeactivateDialog.vue.d.ts +18 -0
  184. package/dist/identity/users/NewUserDialog.vue.d.ts +9 -0
  185. package/dist/identity/users/SetPasswordDialog.vue.d.ts +16 -0
  186. package/dist/identity/users/UserRecord.vue.d.ts +2 -0
  187. package/dist/identity/users/UsersList.vue.d.ts +2 -0
  188. package/dist/identity/users/access.d.ts +4 -0
  189. package/dist/identity/users/context.d.ts +9 -0
  190. package/dist/identity/users/feature.d.ts +34 -0
  191. package/dist/identity/users/languages.d.ts +4 -0
  192. package/dist/identity/users/list.d.ts +8 -0
  193. package/dist/identity/users/person.d.ts +26 -0
  194. package/dist/identity/users/personSections.d.ts +22 -0
  195. package/dist/identity/users/routes.d.ts +22 -0
  196. package/dist/identity/users/sections/Activity.vue.d.ts +2 -0
  197. package/dist/identity/users/sections/Changes.vue.d.ts +2 -0
  198. package/dist/identity/users/sections/General.vue.d.ts +2 -0
  199. package/dist/identity/users/sections/Sessions.vue.d.ts +2 -0
  200. package/dist/identity/users/sections/SignIn.vue.d.ts +2 -0
  201. package/dist/identity/users/sections/SignIns.vue.d.ts +2 -0
  202. package/dist/identity/users/status.d.ts +4 -0
  203. package/dist/index-BsJ92eub.js +504 -0
  204. package/dist/index-CGv-u1Ws.js +459 -0
  205. package/dist/index-GcLnFF-z.js +706 -0
  206. package/dist/index.d.ts +1 -1
  207. package/dist/index.js +1 -1
  208. package/dist/internal/languageName.d.ts +2 -0
  209. package/dist/keepAlive-WYQGRhuz.js +48 -0
  210. package/dist/languageName-CItV_SOv.js +11 -0
  211. package/dist/languages-BShG9LpE.js +10 -0
  212. package/dist/leaveGuard-Cc8yeLxM.js +72 -0
  213. package/dist/modal/Modal.vue.d.ts +1 -1
  214. package/dist/modal/Sheet.vue.d.ts +2 -0
  215. package/dist/modal/index.js +5 -5
  216. package/dist/modules/access/entities.d.ts +112 -0
  217. package/dist/modules/access/routes.d.ts +67 -0
  218. package/dist/modules/access/schemas.d.ts +73 -0
  219. package/dist/modules/events/entities.d.ts +16 -0
  220. package/dist/modules/events/routes.d.ts +17 -0
  221. package/dist/modules/events/schemas.d.ts +16 -0
  222. package/dist/modules/identity/entities.d.ts +150 -0
  223. package/dist/modules/identity/routes.d.ts +118 -0
  224. package/dist/modules/identity/schemas.d.ts +145 -0
  225. package/dist/modules/notification/entities.d.ts +46 -0
  226. package/dist/modules/notification/routes.d.ts +26 -0
  227. package/dist/modules/notification/schemas.d.ts +25 -0
  228. package/dist/{navigation-B33ikiCS.js → navigation-Cm3iChlR.js} +21 -20
  229. package/dist/neighbors-DpaIMQAL.js +86 -0
  230. package/dist/notifications/InboxPanel.vue.d.ts +16 -0
  231. package/dist/notifications/MarkAllRead.vue.d.ts +7 -0
  232. package/dist/notifications/NotificationBell.vue.d.ts +2 -0
  233. package/dist/notifications/SettingsLink.vue.d.ts +6 -0
  234. package/dist/notifications/context.d.ts +20 -0
  235. package/dist/notifications/deadletters/DeadLetters.vue.d.ts +2 -0
  236. package/dist/notifications/deadletters/access.d.ts +3 -0
  237. package/dist/notifications/deadletters/list.d.ts +3 -0
  238. package/dist/notifications/deadletters/routes.d.ts +13 -0
  239. package/dist/notifications/feature.d.ts +31 -0
  240. package/dist/notifications/inbox.d.ts +62 -0
  241. package/dist/notifications/index.d.ts +13 -0
  242. package/dist/notifications/index.js +8 -0
  243. package/dist/notifications/settings/EmailPanel.vue.d.ts +14 -0
  244. package/dist/notifications/settings/QuietHoursPanel.vue.d.ts +14 -0
  245. package/dist/notifications/settings/SettingsMenuItem.vue.d.ts +2 -0
  246. package/dist/notifications/settings/SettingsPage.vue.d.ts +2 -0
  247. package/dist/notifications/settings/categoryText.d.ts +9 -0
  248. package/dist/notifications/settings/routes.d.ts +13 -0
  249. package/dist/notifications/settings/settings.d.ts +18 -0
  250. package/dist/notifications/settings/state.d.ts +16 -0
  251. package/dist/notifications/state.d.ts +27 -0
  252. package/dist/notifications/stream.d.ts +21 -0
  253. package/dist/options-Ba_0uLWN.js +18 -0
  254. package/dist/overlay/AlertDialog.vue.d.ts +3 -3
  255. package/dist/overlay/Popover.vue.d.ts +1 -1
  256. package/dist/overlay/closeOverlays.d.ts +7 -0
  257. package/dist/overlay/index.js +21 -20
  258. package/dist/page/AdaptivePageShell.vue.d.ts +2 -2
  259. package/dist/page/ResourceHeader.vue.d.ts +2 -2
  260. package/dist/page/index.js +99 -457
  261. package/dist/phone/PhoneField.vue.d.ts +2 -2
  262. package/dist/phone/index.js +68 -67
  263. package/dist/platform/index.d.ts +2 -2
  264. package/dist/platform/index.js +73 -90
  265. package/dist/platform/platform.d.ts +2 -2
  266. package/dist/platform/session.d.ts +22 -1
  267. package/dist/platform-q3cjODLx.js +255 -0
  268. package/dist/resource/index.js +8 -248
  269. package/dist/route-goWMxDUN.js +13 -0
  270. package/dist/routeResource-DstM0hvf.js +82 -0
  271. package/dist/router/guards.d.ts +7 -1
  272. package/dist/router/index.js +23 -37
  273. package/dist/router/navigation.d.ts +1 -1
  274. package/dist/rowLayout-BqTEhEuy.js +603 -0
  275. package/dist/sectionIndex-BS0ic5W7.js +86 -0
  276. package/dist/{sections-LtxV5Mtk.js → sections-CntvUTxn.js} +1 -1
  277. package/dist/shell/AccountMenuItem.vue.d.ts +1 -1
  278. package/dist/shell/BackofficeShell.vue.d.ts +2 -2
  279. package/dist/shell/NavigationList.vue.d.ts +1 -1
  280. package/dist/shell/ShellBrand.vue.d.ts +1 -1
  281. package/dist/shell/backofficeShell.d.ts +1 -1
  282. package/dist/shell/identity.d.ts +1 -1
  283. package/dist/shell/index.js +491 -595
  284. package/dist/state/ProgressTrack.vue.d.ts +1 -1
  285. package/dist/state/index.js +59 -92
  286. package/dist/status-BuP3ULjH.js +33 -0
  287. package/dist/styles.css +1 -1
  288. package/dist/suggestions-BxMm6MQA.js +138 -0
  289. package/dist/testing/index.js +1 -1
  290. package/dist/toast-D9Z5To38.js +13 -0
  291. package/dist/transport-BnP7WC0Y.js +4 -0
  292. package/dist/useCommand-BkONMn3X.js +135 -0
  293. package/dist/useLoad-CYRVx6HW.js +39 -0
  294. package/dist/useResourceForm-D1hIpwW5.js +52 -0
  295. package/dist/useSaveChrome-chi6D3HY.js +25 -0
  296. package/dist/useSheetDrag-OsD6Eb6I.js +72 -0
  297. package/dist/useTypedEntry-aTfPBAhw.js +857 -0
  298. package/package.json +26 -5
  299. package/dist/NoAccess.vue_vue_type_script_setup_true_lang-OKW8pKYU.js +0 -78
  300. package/dist/SectionList.vue_vue_type_script_setup_true_lang-L9ita_Kx.js +0 -230
  301. package/dist/SelectField.vue_vue_type_script_setup_true_lang-DZTrU8NJ.js +0 -661
  302. package/dist/Sheet.vue_vue_type_script_setup_true_lang-CtkJ-4e3.js +0 -210
  303. package/dist/SwipeActions.vue_vue_type_script_setup_true_lang-CGTuEnTv.js +0 -243
  304. package/dist/chrome-D9pwD6iS.js +0 -101
  305. package/dist/environment-D3nozt9a.js +0 -75
  306. package/dist/feature-DyDtyMLU.js +0 -47
  307. package/dist/options-DAkBtYkI.js +0 -330
  308. package/dist/platform-jqlKVJ2e.js +0 -244
  309. package/dist/toast-DvrHQ6Ag.js +0 -131
@@ -1,39 +1,25 @@
1
- import { _ as m, c as p, a as l, i as y, b as A, r as h } from "../NoAccess.vue_vue_type_script_setup_true_lang-OKW8pKYU.js";
2
- import { A as g, f as w, i as b, r as v, u as x } from "../access-DdRFrVV1.js";
3
- import { u as H } from "../sections-LtxV5Mtk.js";
4
- import { b as S, c as j, n as K, u as _ } from "../navigation-B33ikiCS.js";
5
- const c = (s) => /:[A-Za-z0-9_]/.test(s);
6
- function* r(s) {
7
- for (const e of s)
8
- typeof e.name == "string" && (yield e.name), e.children && (yield* r(e.children));
9
- }
10
- function f(s) {
11
- const e = Object.values(s), o = /* @__PURE__ */ new Set();
12
- for (const a of r(e)) {
13
- if (o.has(a)) throw new Error(`defineRoutes: the route name "${a}" is used twice in one declaration.`);
14
- o.add(a);
15
- }
16
- const n = {};
17
- for (const [a, t] of Object.entries(s))
18
- n[a] = c(t.path) ? (i) => ({ name: t.name, params: i ?? {} }) : { name: t.name };
19
- return { ...n, records: e };
20
- }
1
+ import { _ as a, c as o, a as r, i as t } from "../NoAccess.vue_vue_type_script_setup_true_lang-DWxq-MTM.js";
2
+ import { d as c } from "../defineRoutes-BGAdiIrt.js";
3
+ import { A as u, f as p, i as f, r as A, u as m } from "../access-DdRFrVV1.js";
4
+ import { i as l, r as x } from "../guards-Dve61KjR.js";
5
+ import { u as y } from "../sections-CntvUTxn.js";
6
+ import { b as v, c as N, n as H, u as b } from "../navigation-Cm3iChlR.js";
21
7
  export {
22
- g as AppRouterView,
23
- m as NoAccess,
24
- S as bindNavigation,
25
- p as createAppHistory,
26
- j as createNavigation,
27
- l as createReplaceOnlyHistory,
28
- f as defineRoutes,
29
- w as firstDenied,
30
- y as installRouterGuards,
31
- b as isAllowed,
32
- A as isIosHomeScreenApp,
33
- K as navigationKey,
34
- h as returnTo,
35
- v as routeAccessKey,
36
- _ as useNavigation,
37
- x as useRouteAccess,
38
- H as useRouteSections
8
+ u as AppRouterView,
9
+ a as NoAccess,
10
+ v as bindNavigation,
11
+ o as createAppHistory,
12
+ N as createNavigation,
13
+ r as createReplaceOnlyHistory,
14
+ c as defineRoutes,
15
+ p as firstDenied,
16
+ l as installRouterGuards,
17
+ f as isAllowed,
18
+ t as isIosHomeScreenApp,
19
+ H as navigationKey,
20
+ x as returnTo,
21
+ A as routeAccessKey,
22
+ b as useNavigation,
23
+ m as useRouteAccess,
24
+ y as useRouteSections
39
25
  };
@@ -1,6 +1,6 @@
1
1
  import { type ComputedRef } from "vue";
2
2
  import type { RouteLocationRaw, Router } from "vue-router";
3
- import type { Session } from "../platform/session";
3
+ import { type Session } from "../platform/session";
4
4
  import type { Destination } from "./index";
5
5
  /**
6
6
  * Connects a destination the backend's menu names to a route of the application. The backend owns the
@@ -0,0 +1,603 @@
1
+ import { defineComponent as W, computed as g, openBlock as o, createElementBlock as n, createBlock as D, unref as i, withCtx as H, Fragment as p, renderList as $, normalizeClass as S, toDisplayString as w, createTextVNode as G, createCommentVNode as m, renderSlot as x, createVNode as C, ref as ne, getCurrentScope as me, onScopeDispose as ye, nextTick as be, useSlots as se, useTemplateRef as ke, normalizeStyle as L, createElementVNode as d, withModifiers as le, createSlots as ge } from "vue";
2
+ import { useI18n as ve } from "vue-i18n";
3
+ import { RouterLink as ce, useRouter as _e } from "vue-router";
4
+ import { _ as we } from "./SwipeActions.vue_vue_type_script_setup_true_lang-BJIA2JfI.js";
5
+ import { _ as K } from "./Icon.vue_vue_type_script_lang-D7oC-d-S.js";
6
+ import { _ as xe } from "./Menu.vue_vue_type_script_setup_true_lang-DTbAcDzL.js";
7
+ import { _ as Ce } from "./Tooltip.vue_vue_type_script_setup_true_lang-OOD_XNWx.js";
8
+ import { _ as re } from "./EmptyState.vue_vue_type_script_setup_true_lang-50p-Mp8I.js";
9
+ import { u as $e } from "./format-B8mJm946.js";
10
+ import { _ as Se } from "./Badge.vue_vue_type_script_setup_true_lang-DJyZc0C7.js";
11
+ import { _ as Le } from "./Timestamp.vue_vue_type_script_setup_true_lang-FVRUr-9y.js";
12
+ import { a as Me } from "./mediaQuery-CygcXmFW.js";
13
+ function Re(y, s) {
14
+ const e = (s ?? "").split(/\s+/).filter((u) => u !== "");
15
+ if (e.length === 0 || y === "") return [{ text: y, match: !1 }];
16
+ const f = new RegExp(`(${e.sort((u, a) => a.length - u.length).map((u) => u.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")).join("|")})`, "giu");
17
+ return y.split(f).flatMap((u, a) => u === "" ? [] : [{ text: u, match: a % 2 === 1 }]);
18
+ }
19
+ const Pe = { class: "flex min-w-0 flex-col" }, Ae = {
20
+ key: 1,
21
+ class: "truncate text-row-title"
22
+ }, Ee = ["data-row-click-ignore"], ie = "rounded-sm bg-status-warning-surface text-status-warning-content", ae = /* @__PURE__ */ W({
23
+ __name: "RecordIdentity",
24
+ props: {
25
+ title: {},
26
+ subtitle: { default: null },
27
+ to: { default: null },
28
+ subtitleSelectable: { type: Boolean, default: !1 },
29
+ highlight: { default: null }
30
+ },
31
+ setup(y) {
32
+ const s = y, e = g(() => Re(s.title, s.highlight));
33
+ return (f, u) => (o(), n("div", Pe, [
34
+ s.to ? (o(), D(i(ce), {
35
+ key: 0,
36
+ to: s.to,
37
+ class: "block truncate rounded-sm text-row-title focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-border-focus"
38
+ }, {
39
+ default: H(() => [
40
+ (o(!0), n(p, null, $(e.value, (a, v) => (o(), n(p, { key: v }, [
41
+ a.match ? (o(), n("mark", {
42
+ key: 0,
43
+ class: S(ie)
44
+ }, w(a.text), 1)) : (o(), n(p, { key: 1 }, [
45
+ G(w(a.text), 1)
46
+ ], 64))
47
+ ], 64))), 128))
48
+ ]),
49
+ _: 1
50
+ }, 8, ["to"])) : (o(), n("span", Ae, [
51
+ (o(!0), n(p, null, $(e.value, (a, v) => (o(), n(p, { key: v }, [
52
+ a.match ? (o(), n("mark", {
53
+ key: 0,
54
+ class: S(ie)
55
+ }, w(a.text), 1)) : (o(), n(p, { key: 1 }, [
56
+ G(w(a.text), 1)
57
+ ], 64))
58
+ ], 64))), 128))
59
+ ])),
60
+ s.subtitle ? (o(), n("span", {
61
+ key: 2,
62
+ "data-row-click-ignore": s.subtitleSelectable ? "" : void 0,
63
+ class: S(["truncate text-row-subtitle", { "w-fit cursor-text select-text": s.subtitleSelectable }])
64
+ }, w(s.subtitle), 11, Ee)) : m("", !0)
65
+ ]));
66
+ }
67
+ });
68
+ function ue(y, s) {
69
+ let e = y;
70
+ for (const f of String(s).split(".")) {
71
+ if (typeof e != "object" || e === null) return;
72
+ e = e[f];
73
+ }
74
+ return e;
75
+ }
76
+ const Te = {
77
+ key: 0,
78
+ class: "flex items-center gap-3"
79
+ }, De = ["datetime"], Be = {
80
+ key: 2,
81
+ class: "tabular-nums"
82
+ }, He = {
83
+ key: 3,
84
+ class: "tabular-nums"
85
+ }, Y = /* @__PURE__ */ W({
86
+ __name: "CollectionCell",
87
+ props: {
88
+ column: {},
89
+ item: {},
90
+ compact: { type: Boolean },
91
+ to: {},
92
+ search: {}
93
+ },
94
+ setup(y) {
95
+ const s = y, e = $e(), f = g(() => ue(s.item, s.column.key)), u = g(() => f.value), a = g(() => f.value === null || f.value === void 0 ? "" : String(f.value)), v = g(() => typeof f.value == "number" ? f.value : typeof f.value == "string" && f.value.trim() !== "" ? Number(f.value) : null);
96
+ return (M, N) => s.column.kind === "identity" ? (o(), n(p, { key: 0 }, [
97
+ !s.compact && M.$slots.leading ? (o(), n("div", Te, [
98
+ x(M.$slots, "leading"),
99
+ C(ae, {
100
+ to: s.to,
101
+ title: s.column.title?.(s.item) ?? a.value,
102
+ subtitle: s.column.subtitle?.(s.item),
103
+ highlight: s.search,
104
+ "subtitle-selectable": ""
105
+ }, null, 8, ["to", "title", "subtitle", "highlight"])
106
+ ])) : (o(), D(ae, {
107
+ key: 1,
108
+ to: s.to,
109
+ title: s.column.title?.(s.item) ?? a.value,
110
+ subtitle: s.column.subtitle?.(s.item),
111
+ highlight: s.search,
112
+ "subtitle-selectable": ""
113
+ }, null, 8, ["to", "title", "subtitle", "highlight"]))
114
+ ], 64)) : s.column.kind === "timestamp" ? (o(), n(p, { key: 1 }, [
115
+ s.compact && u.value ? (o(), n("time", {
116
+ key: 0,
117
+ class: "tabular-nums",
118
+ datetime: String(f.value)
119
+ }, w(s.column.precision === "date" ? i(e).date(u.value) : i(e).dateTime(u.value)), 9, De)) : s.compact ? m("", !0) : (o(), D(i(Le), {
120
+ key: 1,
121
+ value: u.value,
122
+ precision: s.column.precision ?? "dateTime"
123
+ }, null, 8, ["value", "precision"]))
124
+ ], 64)) : s.column.kind === "number" ? (o(), n("span", Be, w(i(e).number(v.value, s.column.format)), 1)) : s.column.kind === "money" ? (o(), n("span", He, w(i(e).money(v.value, typeof s.column.currency == "function" ? s.column.currency(s.item) : s.column.currency)), 1)) : s.column.kind === "badge" ? (o(), D(i(Se), {
125
+ key: 4,
126
+ tone: s.column.tone(s.item),
127
+ dot: ""
128
+ }, {
129
+ default: H(() => [
130
+ G(w(s.column.text?.(s.item) ?? a.value), 1)
131
+ ]),
132
+ _: 1
133
+ }, 8, ["tone"])) : (o(), n(p, { key: 5 }, [
134
+ G(w(a.value), 1)
135
+ ], 64));
136
+ }
137
+ }), Ie = 'a, button, input, select, textarea, label, [role="button"], [data-row-click-ignore]', Ne = 500, ze = 8;
138
+ function Fe(y) {
139
+ const s = _e(), e = ne([]), f = ne("");
140
+ let u = !1, a = null, v = { x: 0, y: 0 };
141
+ const M = (c) => y.actions()?.(c) ?? [];
142
+ function N(c) {
143
+ return M(c).filter((b) => b.href).map((b) => ({ key: b.key, label: b.label, icon: b.icon, href: b.href, tone: b.tone ?? "neutral", external: b.external }));
144
+ }
145
+ function B(c, b, R) {
146
+ const F = M(c);
147
+ return F.length === 0 ? !1 : (f.value = y.label()?.(c) ?? y.moreLabel(), e.value = F.map((_) => ({
148
+ id: _.key,
149
+ label: _.label,
150
+ icon: _.icon,
151
+ section: _.section,
152
+ tone: _.tone === "critical" ? "critical" : void 0,
153
+ onSelect: () => {
154
+ _.onSelect ? _.onSelect() : _.href && (_.external ? window.open(_.href, "_blank", "noopener") : window.location.assign(_.href));
155
+ }
156
+ })), be(() => y.presentMenu(b, R)), !0);
157
+ }
158
+ function z(c, b) {
159
+ const R = c.currentTarget.getBoundingClientRect();
160
+ B(b, R.left, R.bottom);
161
+ }
162
+ function A(c, b) {
163
+ !y.actions() || c.target.closest("a") || B(b, c.clientX, c.clientY) && (c.preventDefault(), u = !0);
164
+ }
165
+ function P() {
166
+ a && clearTimeout(a), a = null;
167
+ }
168
+ function E(c, b) {
169
+ u = !1, !(c.pointerType !== "touch" || !y.actions()) && (v = { x: c.clientX, y: c.clientY }, P(), a = setTimeout(() => {
170
+ a = null, B(b, v.x, v.y) && (u = !0, navigator.vibrate?.(10));
171
+ }, Ne));
172
+ }
173
+ function U(c) {
174
+ a && Math.hypot(c.clientX - v.x, c.clientY - v.y) > ze && P();
175
+ }
176
+ function X(c) {
177
+ u && (u = !1, c.preventDefault(), c.stopPropagation());
178
+ }
179
+ function I(c, b) {
180
+ const R = y.target(b);
181
+ if (!(!R || c.target.closest(Ie)) && !window.getSelection()?.toString()) {
182
+ if (c.metaKey || c.ctrlKey) {
183
+ window.open(s.resolve(R).href, "_blank");
184
+ return;
185
+ }
186
+ s.push(R);
187
+ }
188
+ }
189
+ return me() && ye(P), { menuItems: e, menuLabel: f, swipeActions: N, openMenuFrom: z, onContextMenu: A, onPointerDown: E, onPointerMove: U, cancelPress: P, onClickCapture: X, onClick: I, actionsOf: M };
190
+ }
191
+ const Ve = {
192
+ key: 0,
193
+ class: "overflow-hidden rounded-group bg-surface-cell shadow-group",
194
+ "data-test": "collection-mobile-rows"
195
+ }, je = { class: "flex flex-1 flex-col gap-2 pt-1" }, Oe = ["onClick", "onContextmenu", "onPointerdown"], Ke = { class: "flex items-start gap-3" }, Ye = {
196
+ key: 0,
197
+ class: "shrink-0 pt-0.5"
198
+ }, Ge = { class: "flex min-w-0 flex-1 flex-col gap-1" }, Ue = { class: "flex min-w-0 items-start gap-3" }, Xe = { class: "min-w-0 flex-1" }, Je = {
199
+ key: 1,
200
+ class: "block truncate text-row-title"
201
+ }, Qe = {
202
+ key: 0,
203
+ class: "flex shrink-0 items-center gap-2 pt-0.5"
204
+ }, We = ["aria-label", "onClick"], qe = {
205
+ key: 0,
206
+ class: "flex min-w-0 flex-wrap items-center gap-x-3 gap-y-1 text-row-meta"
207
+ }, Ze = {
208
+ key: 1,
209
+ class: "truncate"
210
+ }, et = {
211
+ key: 2,
212
+ class: "px-4 py-6",
213
+ "data-test": "collection-failed"
214
+ }, tt = {
215
+ key: 3,
216
+ class: "px-4 py-2 text-center",
217
+ "data-test": "collection-empty"
218
+ }, ot = {
219
+ key: 1,
220
+ class: "inline-block w-full align-middle"
221
+ }, nt = { class: "border-b border-border-separator" }, st = ["aria-sort"], lt = ["onClick"], rt = { key: 1 }, it = {
222
+ key: 0,
223
+ class: "px-4 pt-2.5 pb-2",
224
+ style: { width: "20px" }
225
+ }, at = { class: "sr-only" }, ct = {
226
+ key: 0,
227
+ class: "size-8 shrink-0 rounded-full bg-fill"
228
+ }, ut = { class: "flex flex-1 flex-col gap-1.5" }, dt = { key: 0 }, ft = ["onClick", "onContextmenu", "onPointerdown"], pt = { key: 0 }, ht = { class: "flex items-center justify-center gap-1" }, mt = ["aria-label", "onClick"], yt = {
229
+ key: 2,
230
+ "data-test": "collection-failed"
231
+ }, bt = ["colspan"], kt = {
232
+ key: 3,
233
+ "data-test": "collection-empty"
234
+ }, gt = ["colspan"], vt = 37, Tt = /* @__PURE__ */ W({
235
+ __name: "CollectionRows",
236
+ props: {
237
+ columns: {},
238
+ rows: {},
239
+ rowKey: {},
240
+ display: {},
241
+ phone: { type: Boolean },
242
+ link: {},
243
+ search: { default: void 0 },
244
+ sorted: { default: null },
245
+ rowActions: { type: Function, default: void 0 },
246
+ rowLabel: { type: Function, default: void 0 },
247
+ rowHeight: { default: void 0 },
248
+ density: { default: "regular" },
249
+ actionsVisible: { type: Boolean, default: !1 },
250
+ skeletonRows: {},
251
+ reserveRows: { default: void 0 },
252
+ rowClass: { type: Function, default: void 0 }
253
+ },
254
+ emits: ["sort"],
255
+ setup(y, { emit: s }) {
256
+ const e = y, f = s, u = se(), { t: a } = ve(), v = se(), M = (r) => e.columns.filter((k) => k.mobile === r), N = g(() => M("primary")), B = g(() => M("accessory")), z = g(() => M("meta")), A = (r) => `cell-${String(r.key).replace(/\./g, "_")}`, P = (r) => !!v[A(r)], E = (r, k) => ue(r, k.key), U = (r) => r == null || r === "", X = { md: "hidden md:table-cell", xl: "hidden xl:table-cell", "2xl": "hidden 2xl:table-cell" }, I = (r) => r.hideBelow ? [X[r.hideBelow]] : [], c = (r) => ["text-nowrap px-4 pt-2.5 pb-2 text-footnote font-normal text-content-muted", ...I(r)], b = { start: "text-left", center: "text-center", end: "text-right" }, R = (r) => [...I(r), b[r.align ?? "start"]], F = { start: "justify-start", center: "justify-center", end: "justify-end" }, _ = g(() => e.rows.length > 0 && e.link(e.rows[0]) !== null), q = ke("rowMenu"), h = Fe({
257
+ actions: () => e.rowActions,
258
+ label: () => e.rowLabel,
259
+ target: (r) => e.link(r),
260
+ presentMenu: (r, k) => q.value?.presentAt(r, k),
261
+ moreLabel: () => a("core.page.more_actions")
262
+ }), V = g(() => !!e.rowActions && (e.actionsVisible || !u.actions && !_.value)), j = g(() => !!u.actions || _.value || V.value), Z = (r) => e.rowLabel ? `${a("core.page.more_actions")}: ${e.rowLabel(r)}` : a("core.page.more_actions"), J = (r) => h.actionsOf(r).length > 0, ee = g(() => e.columns.length + (j.value ? 1 : 0)), O = (r) => r.sort !== void 0 && e.sorted?.key === r.sort, de = (r) => r.sort === void 0 ? void 0 : O(r) ? e.sorted?.direction === "asc" ? "ascending" : "descending" : "none", fe = (r) => O(r) ? e.sorted?.direction === "asc" ? "arrowUpSLine" : "arrowDownSLine" : "expandUpDownLine", te = (r) => ({ animationDelay: `${Math.min(r, 8) * 30}ms` }), Q = g(() => e.display === "loading"), pe = g(() => Q.value && e.reserveRows !== void 0 ? `${e.reserveRows * (e.rowHeight ?? 40) + vt}px` : void 0), oe = g(() => e.display === "empty" || e.display === "no-matches");
263
+ return (r, k) => (o(), n(p, null, [
264
+ e.phone ? (o(), n("ul", Ve, [
265
+ Q.value ? (o(!0), n(p, { key: 0 }, $(e.skeletonRows, (t) => (o(), n("li", {
266
+ key: `skeleton-${t}`,
267
+ "aria-hidden": "true",
268
+ class: "relative flex animate-pulse items-start gap-3 px-row-inset py-3 motion-reduce:animate-none not-first:before:absolute not-first:before:top-0 not-first:before:right-0 not-first:before:left-row-inset not-first:before:h-px not-first:before:bg-border-separator",
269
+ style: L({ animationDelay: `${t * 60}ms` })
270
+ }, [
271
+ k[5] || (k[5] = d("span", { class: "size-9 shrink-0 rounded-full bg-fill" }, null, -1)),
272
+ d("span", je, [
273
+ d("span", {
274
+ class: "h-2.5 rounded-full bg-fill-strong",
275
+ style: L({ width: `${45 + t * 13 % 30}%` })
276
+ }, null, 4),
277
+ d("span", {
278
+ class: "h-2 rounded-full bg-fill",
279
+ style: L({ width: `${60 + t * 7 % 25}%` })
280
+ }, null, 4)
281
+ ])
282
+ ], 4))), 128)) : m("", !0),
283
+ e.display === "rows" ? (o(!0), n(p, { key: 1 }, $(e.rows, (t, T) => (o(), n("li", {
284
+ key: e.rowKey(t),
285
+ style: L(te(T)),
286
+ "data-test": "collection-row",
287
+ class: S(["relative animate-row-in transition-colors duration-motion-fast active:bg-fill not-first:before:absolute not-first:before:top-0 not-first:before:right-0 not-first:before:left-row-inset not-first:before:z-10 not-first:before:h-px not-first:before:bg-border-separator", [e.link(t) ? "cursor-pointer" : void 0, e.rowClass?.(t)]]),
288
+ onClickCapture: k[0] || (k[0] = //@ts-ignore
289
+ (...l) => i(h).onClickCapture && i(h).onClickCapture(...l)),
290
+ onClick: (l) => i(h).onClick(l, t),
291
+ onContextmenu: (l) => i(h).onContextMenu(l, t),
292
+ onPointerdown: (l) => i(h).onPointerDown(l, t),
293
+ onPointermove: k[1] || (k[1] = //@ts-ignore
294
+ (...l) => i(h).onPointerMove && i(h).onPointerMove(...l)),
295
+ onPointerup: k[2] || (k[2] = //@ts-ignore
296
+ (...l) => i(h).cancelPress && i(h).cancelPress(...l)),
297
+ onPointercancel: k[3] || (k[3] = //@ts-ignore
298
+ (...l) => i(h).cancelPress && i(h).cancelPress(...l))
299
+ }, [
300
+ C(i(we), {
301
+ actions: i(h).swipeActions(t),
302
+ "content-class": "px-row-inset py-2.5"
303
+ }, {
304
+ default: H(() => [
305
+ d("div", Ke, [
306
+ u.leading ? (o(), n("div", Ye, [
307
+ x(r.$slots, "leading", {
308
+ item: t,
309
+ compact: !0
310
+ })
311
+ ])) : m("", !0),
312
+ d("div", Ge, [
313
+ d("div", Ue, [
314
+ d("div", Xe, [
315
+ (o(!0), n(p, null, $(N.value, (l) => (o(), n(p, {
316
+ key: String(l.key)
317
+ }, [
318
+ P(l) ? x(r.$slots, A(l), {
319
+ item: t,
320
+ value: E(t, l),
321
+ compact: !0,
322
+ to: e.link(t),
323
+ search: e.search
324
+ }, void 0, void 0, 0) : (o(), n("span", Je, [
325
+ C(Y, {
326
+ column: l,
327
+ item: t,
328
+ compact: !0,
329
+ to: e.link(t),
330
+ search: e.search
331
+ }, null, 8, ["column", "item", "to", "search"])
332
+ ]))
333
+ ], 64))), 128))
334
+ ]),
335
+ B.value.length || V.value && J(t) ? (o(), n("div", Qe, [
336
+ (o(!0), n(p, null, $(B.value, (l) => (o(), n(p, {
337
+ key: String(l.key)
338
+ }, [
339
+ P(l) ? x(r.$slots, A(l), {
340
+ item: t,
341
+ value: E(t, l),
342
+ compact: !0,
343
+ to: e.link(t),
344
+ search: e.search
345
+ }, void 0, void 0, 0) : (o(), D(Y, {
346
+ key: 1,
347
+ column: l,
348
+ item: t,
349
+ compact: !0,
350
+ to: e.link(t),
351
+ search: e.search
352
+ }, null, 8, ["column", "item", "to", "search"]))
353
+ ], 64))), 128)),
354
+ V.value && J(t) ? (o(), n("button", {
355
+ key: 0,
356
+ type: "button",
357
+ "data-test": "collection-row-more",
358
+ "aria-label": Z(t),
359
+ class: "hit-target -my-1 -mr-1 flex size-8 cursor-pointer items-center justify-center rounded-full text-content-muted active:bg-fill",
360
+ onClick: le((l) => i(h).openMenuFrom(l, t), ["stop"])
361
+ }, [
362
+ C(i(K), {
363
+ name: "moreLine",
364
+ size: 20
365
+ })
366
+ ], 8, We)) : m("", !0)
367
+ ])) : m("", !0)
368
+ ]),
369
+ z.value.length ? (o(), n("div", qe, [
370
+ (o(!0), n(p, null, $(z.value, (l) => (o(), n(p, {
371
+ key: String(l.key)
372
+ }, [
373
+ P(l) ? x(r.$slots, A(l), {
374
+ item: t,
375
+ value: E(t, l),
376
+ compact: !0,
377
+ to: e.link(t),
378
+ search: e.search
379
+ }, void 0, void 0, 0) : U(E(t, l)) ? m("", !0) : (o(), n("span", Ze, [
380
+ C(Y, {
381
+ column: l,
382
+ item: t,
383
+ compact: !0,
384
+ to: e.link(t),
385
+ search: e.search
386
+ }, null, 8, ["column", "item", "to", "search"])
387
+ ]))
388
+ ], 64))), 128))
389
+ ])) : m("", !0)
390
+ ])
391
+ ])
392
+ ]),
393
+ _: 2
394
+ }, 1032, ["actions"])
395
+ ], 46, Oe))), 128)) : m("", !0),
396
+ e.display === "failed" ? (o(), n("li", et, [
397
+ x(r.$slots, "failed")
398
+ ])) : m("", !0),
399
+ oe.value ? (o(), n("li", tt, [
400
+ x(r.$slots, "empty", {}, () => [
401
+ C(i(re), {
402
+ title: i(a)("core.collection.no_data")
403
+ }, null, 8, ["title"])
404
+ ])
405
+ ])) : m("", !0)
406
+ ])) : (o(), n("div", ot, [
407
+ d("div", {
408
+ class: "overflow-x-auto",
409
+ style: L({ minHeight: pe.value })
410
+ }, [
411
+ d("table", {
412
+ class: S(["collection-grid w-full", { condensed: e.density === "condensed" }])
413
+ }, [
414
+ d("thead", nt, [
415
+ d("tr", null, [
416
+ (o(!0), n(p, null, $(e.columns, (t) => (o(), n("th", {
417
+ key: String(t.key),
418
+ scope: "col",
419
+ class: S(c(t)),
420
+ style: L({ width: t.width ? `${t.width}px` : void 0, textAlign: t.align ?? "start" }),
421
+ "aria-sort": de(t)
422
+ }, [
423
+ d("div", {
424
+ class: S(["flex", F[t.align ?? "start"]])
425
+ }, [
426
+ t.sort !== void 0 ? (o(), n("button", {
427
+ key: 0,
428
+ type: "button",
429
+ class: S(["group inline-flex cursor-pointer items-center gap-1 rounded-sm transition-colors hover:text-content-strong focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-border-focus", [O(t) ? "font-semibold text-content-strong" : "", t.align === "end" ? "flex-row-reverse" : ""]]),
430
+ onClick: (T) => f("sort", t.sort)
431
+ }, [
432
+ d("span", null, w(t.label), 1),
433
+ C(i(K), {
434
+ name: fe(t),
435
+ size: 14,
436
+ class: S(O(t) ? "text-content-muted" : "text-content-disabled opacity-0 transition-opacity group-hover:opacity-100 group-focus-visible:opacity-100")
437
+ }, null, 8, ["name", "class"])
438
+ ], 10, lt)) : (o(), n("span", rt, w(t.label), 1))
439
+ ], 2)
440
+ ], 14, st))), 128)),
441
+ j.value ? (o(), n("th", it, [
442
+ d("span", at, w(i(a)("core.actions.more")), 1)
443
+ ])) : m("", !0)
444
+ ])
445
+ ]),
446
+ d("tbody", null, [
447
+ Q.value ? (o(!0), n(p, { key: 0 }, $(e.skeletonRows, (t) => (o(), n("tr", {
448
+ key: `skeleton-${t}`,
449
+ "aria-hidden": "true",
450
+ style: L(e.rowHeight ? { height: `${e.rowHeight}px` } : void 0)
451
+ }, [
452
+ (o(!0), n(p, null, $(e.columns, (T, l) => (o(), n("td", {
453
+ key: String(T.key),
454
+ class: S(I(T))
455
+ }, [
456
+ d("div", {
457
+ class: "flex animate-pulse items-center gap-3 motion-reduce:animate-none",
458
+ style: L({ animationDelay: `${t * 60}ms` })
459
+ }, [
460
+ l === 0 ? (o(), n("span", ct)) : m("", !0),
461
+ d("span", ut, [
462
+ d("span", {
463
+ class: "h-2.5 rounded-full bg-fill-strong",
464
+ style: L({ width: `${55 + (t * 7 + l * 13) % 35}%` })
465
+ }, null, 4),
466
+ d("span", {
467
+ class: "h-2 rounded-full bg-fill",
468
+ style: L({ width: `${30 + (t * 11 + l * 5) % 30}%` })
469
+ }, null, 4)
470
+ ])
471
+ ], 4)
472
+ ], 2))), 128)),
473
+ j.value ? (o(), n("td", dt, [...k[6] || (k[6] = [
474
+ d("div", { class: "mx-auto h-6 w-6 animate-pulse rounded-full bg-fill motion-reduce:animate-none" }, null, -1)
475
+ ])])) : m("", !0)
476
+ ], 4))), 128)) : m("", !0),
477
+ e.display === "rows" ? (o(!0), n(p, { key: 1 }, $(e.rows, (t, T) => (o(), n("tr", {
478
+ key: e.rowKey(t),
479
+ class: S(["animate-row-in", [e.link(t) ? "cursor-pointer" : void 0, e.rowClass?.(t)]]),
480
+ "data-test": "collection-row",
481
+ style: L([e.rowHeight ? { height: `${e.rowHeight}px` } : {}, te(T)]),
482
+ onClickCapture: k[4] || (k[4] = //@ts-ignore
483
+ (...l) => i(h).onClickCapture && i(h).onClickCapture(...l)),
484
+ onClick: (l) => i(h).onClick(l, t),
485
+ onContextmenu: (l) => i(h).onContextMenu(l, t),
486
+ onPointerdown: (l) => i(h).onPointerDown(l, t)
487
+ }, [
488
+ (o(!0), n(p, null, $(e.columns, (l, he) => (o(), n("td", {
489
+ key: String(l.key),
490
+ class: S(R(l))
491
+ }, [
492
+ x(r.$slots, A(l), {
493
+ item: t,
494
+ value: E(t, l),
495
+ compact: !1,
496
+ to: e.link(t)
497
+ }, () => [
498
+ C(Y, {
499
+ column: l,
500
+ item: t,
501
+ compact: !1,
502
+ to: e.link(t),
503
+ search: e.search
504
+ }, ge({ _: 2 }, [
505
+ u.leading && he === 0 ? {
506
+ name: "leading",
507
+ fn: H(() => [
508
+ x(r.$slots, "leading", {
509
+ item: t,
510
+ compact: !1
511
+ })
512
+ ]),
513
+ key: "0"
514
+ } : void 0
515
+ ]), 1032, ["column", "item", "to", "search"])
516
+ ])
517
+ ], 2))), 128)),
518
+ j.value ? (o(), n("td", pt, [
519
+ x(r.$slots, "actions", { item: t }, () => [
520
+ d("div", ht, [
521
+ e.link(t) ? (o(), D(i(Ce), {
522
+ key: 0,
523
+ text: i(a)("core.collection.open_record"),
524
+ side: "left"
525
+ }, {
526
+ default: H(() => [
527
+ C(i(ce), {
528
+ to: e.link(t),
529
+ "aria-label": `${i(a)("core.collection.open_record")}${e.rowLabel ? `: ${e.rowLabel(t)}` : ""}`,
530
+ class: "inline-flex rounded-md p-1.5 text-content-link transition-colors hover:bg-tint-soft focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-border-focus"
531
+ }, {
532
+ default: H(() => [
533
+ C(i(K), {
534
+ name: "eye",
535
+ size: 18
536
+ })
537
+ ]),
538
+ _: 1
539
+ }, 8, ["to", "aria-label"])
540
+ ]),
541
+ _: 2
542
+ }, 1032, ["text"])) : m("", !0),
543
+ V.value && J(t) ? (o(), n("button", {
544
+ key: 1,
545
+ type: "button",
546
+ "data-test": "collection-row-more",
547
+ "aria-label": Z(t),
548
+ class: "hit-target flex size-8 cursor-pointer items-center justify-center rounded-full bg-fill text-content-strong transition-colors duration-motion-fast hover:bg-fill-strong focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-border-focus",
549
+ onClick: le((l) => i(h).openMenuFrom(l, t), ["stop"])
550
+ }, [
551
+ C(i(K), {
552
+ name: "moreLine",
553
+ size: 18
554
+ })
555
+ ], 8, mt)) : m("", !0)
556
+ ])
557
+ ])
558
+ ])) : m("", !0)
559
+ ], 46, ft))), 128)) : m("", !0),
560
+ e.display === "failed" ? (o(), n("tr", yt, [
561
+ d("td", {
562
+ colspan: ee.value,
563
+ class: "!whitespace-normal py-6"
564
+ }, [
565
+ x(r.$slots, "failed")
566
+ ], 8, bt)
567
+ ])) : m("", !0),
568
+ oe.value ? (o(), n("tr", kt, [
569
+ d("td", {
570
+ colspan: ee.value,
571
+ class: "!whitespace-normal py-6 text-center"
572
+ }, [
573
+ x(r.$slots, "empty", {}, () => [
574
+ C(i(re), {
575
+ title: i(a)("core.collection.no_data")
576
+ }, null, 8, ["title"])
577
+ ])
578
+ ], 8, gt)
579
+ ])) : m("", !0)
580
+ ])
581
+ ], 2)
582
+ ], 4)
583
+ ])),
584
+ e.rowActions ? (o(), D(i(xe), {
585
+ key: 2,
586
+ ref_key: "rowMenu",
587
+ ref: q,
588
+ items: i(h).menuItems.value,
589
+ label: i(h).menuLabel.value
590
+ }, null, 8, ["items", "label"])) : m("", !0)
591
+ ], 64));
592
+ }
593
+ });
594
+ function Dt(y) {
595
+ const s = Me("(max-width: 1023px)"), e = g(() => y().some((f) => f.mobile && f.mobile !== "hidden"));
596
+ return { narrow: g(() => s.value), phone: g(() => s.value && e.value) };
597
+ }
598
+ export {
599
+ Tt as _,
600
+ Y as a,
601
+ ae as b,
602
+ Dt as u
603
+ };