@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
@@ -0,0 +1,68 @@
1
+ import { defineComponent as k, useModel as _, useTemplateRef as B, computed as l, openBlock as d, createBlock as q, mergeProps as C, unref as i, withCtx as V, createElementVNode as u, normalizeClass as c, withDirectives as L, vModelText as M, createElementBlock as D, toDisplayString as z, createCommentVNode as E, mergeModels as F, mergeDefaults as P } from "vue";
2
+ import { u as R } from "./mediaQuery-CygcXmFW.js";
3
+ import { a as T, u as $, c as N, _ as S, f as j, b as G } from "./control-7EP4tjYy.js";
4
+ const U = ["id", "name", "rows", "placeholder", "maxlength", "autocomplete", "disabled", "required", "aria-required", "aria-invalid", "aria-describedby"], A = {
5
+ key: 0,
6
+ class: "mt-1 self-end text-footnote tabular-nums text-content-muted"
7
+ }, O = /* @__PURE__ */ k({
8
+ __name: "TextareaField",
9
+ props: /* @__PURE__ */ F(/* @__PURE__ */ P({
10
+ label: {},
11
+ hint: {},
12
+ error: {},
13
+ required: { type: Boolean },
14
+ editable: { type: Boolean },
15
+ disabled: { type: Boolean },
16
+ lockedReason: {},
17
+ presentation: {},
18
+ name: {},
19
+ placeholder: {},
20
+ maxLength: {},
21
+ rows: {},
22
+ autocomplete: {},
23
+ stacked: { type: Boolean }
24
+ }, { ...G, placeholder: void 0, maxLength: void 0, rows: 3, autocomplete: void 0, stacked: !1 }), {
25
+ modelValue: { default: "" },
26
+ modelModifiers: {}
27
+ }),
28
+ emits: ["update:modelValue"],
29
+ setup(r, { expose: m }) {
30
+ const e = r, a = _(r, "modelValue"), s = B("area"), p = !!T(), f = R(), { editable: v } = $(e), t = l(() => p && !e.stacked && !f.value && v.value && !!e.label), o = l(() => e.maxLength ? `${a.value.length} / ${e.maxLength}` : void 0), b = l(() => t.value && o.value ? [e.hint, o.value].filter(Boolean).join(" · ") : e.hint), h = N("area", () => e.error ? "error" : e.disabled ? "locked" : "rest");
31
+ return m({ focus: () => s.value?.focus() }), (H, n) => (d(), q(S, C({ ...i(j)(e), hint: b.value }, {
32
+ value: a.value,
33
+ "row-layout": t.value ? "entry" : "stacked",
34
+ "row-label-align": "top"
35
+ }), {
36
+ default: V(({ id: x, describedby: g, invalid: y }) => [
37
+ u("div", {
38
+ class: c(["w-full", i(h)])
39
+ }, [
40
+ L(u("textarea", {
41
+ id: x,
42
+ ref_key: "area",
43
+ ref: s,
44
+ "onUpdate:modelValue": n[0] || (n[0] = (w) => a.value = w),
45
+ name: e.name,
46
+ rows: e.rows,
47
+ placeholder: e.placeholder,
48
+ maxlength: e.maxLength,
49
+ autocomplete: e.autocomplete,
50
+ disabled: e.disabled,
51
+ required: e.required,
52
+ "aria-required": e.required || void 0,
53
+ "aria-invalid": y || void 0,
54
+ "aria-describedby": g,
55
+ class: c(["block w-full 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", e.disabled ? "resize-none" : "resize-y"])
56
+ }, null, 10, U), [
57
+ [M, a.value]
58
+ ])
59
+ ], 2),
60
+ !t.value && o.value ? (d(), D("p", A, z(o.value), 1)) : E("", !0)
61
+ ]),
62
+ _: 1
63
+ }, 16, ["value", "row-layout"]));
64
+ }
65
+ });
66
+ export {
67
+ O as _
68
+ };
@@ -0,0 +1,164 @@
1
+ import { computed as u, defineComponent as K, useModel as W, useTemplateRef as v, openBlock as m, createBlock as E, mergeProps as w, unref as t, withCtx as b, createElementBlock as x, Fragment as N, createVNode as d, createTextVNode as j, toDisplayString as G, createCommentVNode as P, createElementVNode as h, normalizeClass as H, mergeModels as J, mergeDefaults as O, nextTick as U } from "vue";
2
+ import { useI18n as L } from "vue-i18n";
3
+ import { _ as X } from "./DateButton.vue_vue_type_script_setup_true_lang-EcqrfWKz.js";
4
+ import { u as Y } from "./format-B8mJm946.js";
5
+ import { _ as Z } from "./Icon.vue_vue_type_script_lang-D7oC-d-S.js";
6
+ import { u as ee } from "./mediaQuery-CygcXmFW.js";
7
+ import { _ as te } from "./Popover.vue_vue_type_script_setup_true_lang-Dx-tDhNE.js";
8
+ import { c as oe, _ as re, f as ae, b as le } from "./control-7EP4tjYy.js";
9
+ import { d as se, r as ie, t as z, p as ne, u as ue, a as me, i as F, _ as de, b as ce, c as pe } from "./useTypedEntry-aTfPBAhw.js";
10
+ function fe(i) {
11
+ const { t: n } = L(), e = u(() => [n("core.form.time.words.now").toLowerCase(), "now"]);
12
+ return {
13
+ placeholder: u(() => n("core.form.time.placeholder")),
14
+ parse(o) {
15
+ if (e.value.includes(o.trim().toLowerCase())) return { value: z(i()) };
16
+ const a = ne(o, i());
17
+ return "time" in a ? { value: a.time } : { error: a.error === "step" ? n("core.form.time.step", { step: i() }) : n("core.form.time.invalid") };
18
+ },
19
+ shortcuts: (o) => (o ?? se).map((a) => ie(a, n("core.form.time.now"), z(i())))
20
+ };
21
+ }
22
+ const ve = ["id", "name", "value", "placeholder", "disabled", "required", "aria-required", "aria-invalid", "aria-describedby"], be = ["aria-label", "onClick"], Ce = /* @__PURE__ */ K({
23
+ __name: "TimeField",
24
+ props: /* @__PURE__ */ J(/* @__PURE__ */ O({
25
+ label: {},
26
+ hint: {},
27
+ error: {},
28
+ required: { type: Boolean },
29
+ editable: { type: Boolean },
30
+ disabled: { type: Boolean },
31
+ lockedReason: {},
32
+ presentation: {},
33
+ name: {},
34
+ minuteStep: {},
35
+ quickTimes: {}
36
+ }, { ...le, minuteStep: 1, quickTimes: void 0 }), {
37
+ modelValue: { default: null },
38
+ modelModifiers: {}
39
+ }),
40
+ emits: ["update:modelValue"],
41
+ setup(i, { expose: n }) {
42
+ const e = i, o = W(i, "modelValue"), { t: a } = L(), M = Y(), I = ee(), T = v("input"), c = v("popover"), g = v("panel"), q = v("sheet"), k = fe(() => e.minuteStep), l = ue({ model: o, display: (r) => r, parse: k.parse }), C = u(() => k.shortcuts(e.quickTimes)), V = u(() => e.error || l.message.value), Q = oe("date", () => V.value ? "error" : e.disabled ? "locked" : "rest"), R = u(() => {
43
+ const r = me(o.value);
44
+ return r ? M.time(new Date(2e3, 0, 1, r.hour, r.minute)) : null;
45
+ }), $ = u(() => F(l.typed.value) ? l.typed.value : F(o.value) ? o.value : null);
46
+ async function y(r) {
47
+ e.disabled || (c.value?.present(), r && (await U(), await U(), g.value?.querySelector("[role=listbox]")?.focus()));
48
+ }
49
+ function A(r) {
50
+ r.key === "Enter" ? (l.commit(), c.value?.dismiss()) : r.key === "ArrowDown" && (r.preventDefault(), y(!0));
51
+ }
52
+ return n({ focus: () => T.value?.focus() }), (r, s) => (m(), E(re, w({ ...t(ae)(e), error: V.value }, {
53
+ value: R.value,
54
+ "value-style": "numeric"
55
+ }), {
56
+ default: b(({ id: S, describedby: B, invalid: D }) => [
57
+ t(I) ? (m(), x(N, { key: 0 }, [
58
+ d(X, w({ id: S, "aria-describedby": B }, {
59
+ disabled: e.disabled,
60
+ invalid: D,
61
+ placeholder: t(a)("core.form.select.choose"),
62
+ onClick: s[0] || (s[0] = (p) => q.value?.present())
63
+ }), {
64
+ default: b(() => [
65
+ o.value ? (m(), x(N, { key: 0 }, [
66
+ j(G(o.value), 1)
67
+ ], 64)) : P("", !0)
68
+ ]),
69
+ _: 1
70
+ }, 16, ["disabled", "invalid", "placeholder"]),
71
+ d(de, {
72
+ ref_key: "sheet",
73
+ ref: q,
74
+ title: e.label ?? t(a)("core.form.time.label"),
75
+ mode: "time",
76
+ "model-value": o.value,
77
+ shortcuts: C.value,
78
+ step: e.minuteStep,
79
+ clearable: !e.required,
80
+ "onUpdate:modelValue": t(l).set
81
+ }, null, 8, ["title", "model-value", "shortcuts", "step", "clearable", "onUpdate:modelValue"])
82
+ ], 64)) : (m(), E(te, {
83
+ key: 1,
84
+ ref_key: "popover",
85
+ ref: c,
86
+ label: e.label ?? t(a)("core.form.time.label"),
87
+ width: "sm",
88
+ placement: "bottom-start",
89
+ arrow: !1,
90
+ autofocus: !1
91
+ }, {
92
+ trigger: b(({ attrs: p, presented: _ }) => [
93
+ h("div", {
94
+ class: H(["inline-flex max-w-full items-center gap-2", t(Q)])
95
+ }, [
96
+ h("input", w({
97
+ id: S,
98
+ ref_key: "input",
99
+ ref: T
100
+ }, p, {
101
+ type: "text",
102
+ role: "combobox",
103
+ autocomplete: "off",
104
+ size: "10",
105
+ name: e.name,
106
+ value: t(l).text.value,
107
+ placeholder: t(k).placeholder.value,
108
+ disabled: e.disabled,
109
+ required: e.required,
110
+ "aria-required": e.required || void 0,
111
+ "aria-invalid": D || void 0,
112
+ "aria-describedby": B,
113
+ 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",
114
+ onInput: s[1] || (s[1] = (f) => t(l).input(f.target.value)),
115
+ onBlur: s[2] || (s[2] = (f) => t(l).commit()),
116
+ onKeydown: A,
117
+ onClick: s[3] || (s[3] = (f) => y(!1))
118
+ }), null, 16, ve),
119
+ e.disabled ? P("", !0) : (m(), x("button", {
120
+ key: 0,
121
+ type: "button",
122
+ tabindex: "-1",
123
+ "aria-label": t(a)("core.form.time.open"),
124
+ class: "mr-2 flex shrink-0 cursor-pointer items-center text-content-link",
125
+ onClick: (f) => _ ? c.value?.dismiss() : y(!0)
126
+ }, [
127
+ d(t(Z), {
128
+ name: "timeLine",
129
+ size: 18
130
+ })
131
+ ], 8, be))
132
+ ], 2)
133
+ ]),
134
+ default: b(({ dismiss: p }) => [
135
+ h("div", {
136
+ ref_key: "panel",
137
+ ref: g,
138
+ class: "flex flex-col gap-2.5"
139
+ }, [
140
+ d(ce, {
141
+ "model-value": $.value,
142
+ step: e.minuteStep,
143
+ "onUpdate:modelValue": t(l).set
144
+ }, null, 8, ["model-value", "step", "onUpdate:modelValue"]),
145
+ d(pe, {
146
+ items: C.value,
147
+ selected: $.value,
148
+ onPick: (_) => {
149
+ t(l).set(_), p();
150
+ }
151
+ }, null, 8, ["items", "selected", "onPick"])
152
+ ], 512)
153
+ ]),
154
+ _: 2
155
+ }, 1032, ["label"]))
156
+ ]),
157
+ _: 1
158
+ }, 16, ["value"]));
159
+ }
160
+ });
161
+ export {
162
+ Ce as _,
163
+ fe as u
164
+ };
@@ -1,7 +1,7 @@
1
1
  import { defineComponent as p, computed as a, openBlock as n, createElementBlock as s, createVNode as v, unref as r, createTextVNode as _, toDisplayString as c } from "vue";
2
2
  import { useI18n as f } from "vue-i18n";
3
3
  import { u as x, t as y } from "./format-B8mJm946.js";
4
- import { _ as T } from "./Icon.vue_vue_type_script_lang-DtC4_mkz.js";
4
+ import { _ as T } from "./Icon.vue_vue_type_script_lang-D7oC-d-S.js";
5
5
  const g = ["datetime"], k = {
6
6
  key: 1,
7
7
  class: "text-xs text-content-muted"
@@ -0,0 +1,267 @@
1
+ import { defineComponent as R, openBlock as q, createBlock as P, unref as e, withCtx as u, createVNode as t, mergeProps as L, provide as N, computed as g, useTemplateRef as $, createElementVNode as x, toDisplayString as C, createTextVNode as j } from "vue";
2
+ import { useI18n as A } from "vue-i18n";
3
+ import { u as F } from "./neighbors-DpaIMQAL.js";
4
+ import { _ as H } from "./Avatar.vue_vue_type_script_setup_true_lang-CFIheaSr.js";
5
+ import { u as J } from "./describeError-Ctga6GcS.js";
6
+ import { i as w, P as Q, p as W, f as X, M as Y, g as Z, d as ee } from "./index-CGv-u1Ws.js";
7
+ import { _ as se } from "./AlertDialog.vue_vue_type_script_setup_true_lang-whA4WLdl.js";
8
+ import { t as k } from "./toast-D9Z5To38.js";
9
+ import { _ as ae } from "./SectionNavigator.vue_vue_type_script_setup_true_lang-DSMXEaCs.js";
10
+ import { u as E } from "./platform-q3cjODLx.js";
11
+ import { a as te } from "./routeResource-DstM0hvf.js";
12
+ import { a as oe } from "./ResourcePage.vue_vue_type_script_setup_true_lang-CwI_sROp.js";
13
+ import { A as re } from "./access-DdRFrVV1.js";
14
+ import { _ as ne } from "./Badge.vue_vue_type_script_setup_true_lang-DJyZc0C7.js";
15
+ import { u as ie } from "./useLoad-CYRVx6HW.js";
16
+ import { _ as V } from "./IconTile.vue_vue_type_script_setup_true_lang-BpIjgu5E.js";
17
+ import { _ as T } from "./FormGroup.vue_vue_type_script_setup_true_lang-DG2zdG_a.js";
18
+ import { e as B } from "./control-7EP4tjYy.js";
19
+ import { u as z, _ as K } from "./useCommand-BkONMn3X.js";
20
+ import { u as U } from "./fieldMessages-C3Rpbktw.js";
21
+ import { u as ce, s as le } from "./status-BuP3ULjH.js";
22
+ import { _ as M } from "./TextField.vue_vue_type_script_setup_true_lang-B9dwVASU.js";
23
+ const ue = /* @__PURE__ */ R({
24
+ __name: "DeactivateDialog",
25
+ props: {
26
+ id: {},
27
+ name: {},
28
+ sessionCount: {}
29
+ },
30
+ emits: ["done"],
31
+ setup(h, { expose: a, emit: d }) {
32
+ const c = h, v = d, { t: s } = A(), { http: n } = E(), l = z({
33
+ ...U(),
34
+ defaults: () => ({}),
35
+ run: () => n.request(w.usersDeactivate, { id: c.id }),
36
+ done: () => {
37
+ k.success(s("core.users.deactivate.done", { name: c.name })), v("done");
38
+ }
39
+ });
40
+ return a({ open: () => l.present() }), (f, o) => (q(), P(e(K), {
41
+ command: e(l),
42
+ title: e(s)("core.users.deactivate.title"),
43
+ subtitle: c.name,
44
+ "confirm-label": e(s)("core.users.actions.deactivate_short"),
45
+ "busy-label": e(s)("core.users.deactivate.busy"),
46
+ "done-label": e(s)("core.users.deactivate.done_label"),
47
+ size: "md"
48
+ }, {
49
+ default: u(() => [
50
+ t(e(T), { "data-deactivate-dialog": "" }, {
51
+ default: u(() => [
52
+ t(e(B), {
53
+ layout: "setting",
54
+ label: e(s)("core.users.deactivate.signs_out", { n: c.sessionCount ?? 0 }),
55
+ sub: e(s)("core.users.deactivate.signs_out_sub")
56
+ }, {
57
+ leading: u(() => [
58
+ t(e(V), {
59
+ tone: "anchor",
60
+ icon: "logoutBoxRLine"
61
+ })
62
+ ]),
63
+ _: 1
64
+ }, 8, ["label", "sub"]),
65
+ t(e(B), {
66
+ layout: "setting",
67
+ label: e(s)("core.users.deactivate.cannot_sign_in"),
68
+ sub: e(s)("core.users.deactivate.cannot_sign_in_sub")
69
+ }, {
70
+ leading: u(() => [
71
+ t(e(V), {
72
+ tone: "anchor",
73
+ icon: "lockLine"
74
+ })
75
+ ]),
76
+ _: 1
77
+ }, 8, ["label", "sub"])
78
+ ]),
79
+ _: 1
80
+ })
81
+ ]),
82
+ _: 1
83
+ }, 8, ["command", "title", "subtitle", "confirm-label", "busy-label", "done-label"]));
84
+ }
85
+ }), de = /* @__PURE__ */ R({
86
+ __name: "SetPasswordDialog",
87
+ props: {
88
+ id: {},
89
+ name: {}
90
+ },
91
+ emits: ["saved"],
92
+ setup(h, { expose: a, emit: d }) {
93
+ const c = h, v = d, { t: s } = A(), { http: n } = E(), l = {
94
+ safeParse(o) {
95
+ const { password: m, repeat: _ } = o, b = [
96
+ ...m === "" ? [{ path: ["password"], message: s("core.account.validation.required") }] : [],
97
+ ...m !== "" && _ !== m ? [{ path: ["repeat"], message: s(_ === "" ? "core.account.validation.required" : "core.account.validation.mismatch") }] : []
98
+ ];
99
+ return b.length > 0 ? { success: !1, error: { issues: b } } : { success: !0, data: { password: m } };
100
+ }
101
+ }, f = z({
102
+ ...U(),
103
+ defaults: () => ({ password: "", repeat: "" }),
104
+ validator: l,
105
+ run: (o) => n.request(w.usersSetPassword, { id: c.id, password: o.password }),
106
+ done: () => {
107
+ k.success(s("core.users.password.done", { name: c.name })), v("saved");
108
+ }
109
+ });
110
+ return a({ open: () => f.present() }), (o, m) => (q(), P(e(K), {
111
+ command: e(f),
112
+ title: e(s)("core.users.password.title"),
113
+ subtitle: c.name,
114
+ "confirm-label": e(s)("core.users.password.action")
115
+ }, {
116
+ default: u(() => [
117
+ t(e(T), {
118
+ footer: e(s)("core.users.password.footer"),
119
+ "data-set-password-dialog": ""
120
+ }, {
121
+ default: u(() => [
122
+ t(e(M), L(e(f).form.bind("password"), {
123
+ label: e(s)("core.users.fields.password"),
124
+ type: "password",
125
+ required: "",
126
+ autocomplete: "new-password"
127
+ }), null, 16, ["label"]),
128
+ t(e(M), L(e(f).form.bind("repeat"), {
129
+ label: e(s)("core.users.fields.password_repeat"),
130
+ type: "password",
131
+ required: "",
132
+ autocomplete: "new-password"
133
+ }), null, 16, ["label"])
134
+ ]),
135
+ _: 1
136
+ }, 8, ["footer"])
137
+ ]),
138
+ _: 1
139
+ }, 8, ["command", "title", "subtitle", "confirm-label"]));
140
+ }
141
+ }), me = {
142
+ class: "flex items-center gap-3 px-1.5",
143
+ "data-person-identity": ""
144
+ }, pe = { class: "flex min-w-0 flex-col items-start gap-0.5" }, fe = { class: "max-w-full truncate text-headline font-semibold text-content-strong" }, ve = { class: "max-w-full truncate text-footnote text-content-muted" }, Te = /* @__PURE__ */ R({
145
+ __name: "UserRecord",
146
+ setup(h) {
147
+ const { t: a } = A(), { http: d, access: c, session: v } = E(), s = J(), n = te({
148
+ key: Q,
149
+ param: "id",
150
+ load: async (r, { signal: p }) => (await d.request(w.usersShow, { id: r }, { signal: p })).data
151
+ }), l = ie(
152
+ async ({ signal: r }) => {
153
+ const p = n.data.value?.id;
154
+ return p === void 0 ? { sessions: [] } : (await d.request(w.usersSessions, { id: p }, { signal: r })).data;
155
+ },
156
+ { watch: () => n.data.value?.id }
157
+ );
158
+ N(W, l);
159
+ const f = F(ce(d), { current: () => n.id.value, list: X.index, param: "id", backLabel: () => a("core.users.title") }), o = g(() => n.data.value), m = g(() => o.value !== null && v.state.value.status === "authenticated" && v.state.value.user.id === o.value.id), _ = $("deactivateDialog"), b = $("passwordDialog"), D = $("activateDialog");
160
+ async function y() {
161
+ await Promise.all([n.reload(), l.reload()]);
162
+ }
163
+ async function G() {
164
+ const r = n.id.value;
165
+ if (r !== null) {
166
+ try {
167
+ await d.request(w.usersActivate, { id: r }), k.success(a("core.users.activate.done", { name: o.value?.name ?? "" }));
168
+ } catch (p) {
169
+ ee(p) || k.error(s(p, { fallback: a("core.users.activate.failed") }));
170
+ }
171
+ await y();
172
+ }
173
+ }
174
+ const S = g(() => {
175
+ const r = c.can(Y);
176
+ return { manage: r, deactivate: r && !!o.value?.active && !m.value, activate: r && o.value !== null && !o.value.active, endSessions: r && !m.value };
177
+ });
178
+ N(Z, {
179
+ get can() {
180
+ return S.value;
181
+ },
182
+ deactivate: () => _.value?.open(),
183
+ activate: () => D.value?.present(),
184
+ setPassword: () => b.value?.open(),
185
+ refresh: y
186
+ });
187
+ const I = g(() => [
188
+ ...S.value.deactivate ? [{ id: "deactivate", label: a("core.users.actions.deactivate"), icon: "lockLine", placement: "overflow", tone: "critical", onClick: () => _.value?.open() }] : [],
189
+ ...S.value.activate ? [{ id: "activate", label: a("core.users.actions.activate"), icon: "checkCircle", placement: "overflow", onClick: () => D.value?.present() }] : []
190
+ ]), O = g(() => ({
191
+ ...l.data.value ? { "users.record.sessions": l.data.value.sessions.length } : {},
192
+ ...o.value?.status === "locked" ? { "users.record.signin": a("core.users.status.locked") } : {}
193
+ }));
194
+ return (r, p) => (q(), P(e(oe), {
195
+ resource: e(n),
196
+ title: o.value?.name ?? e(a)("core.users.record"),
197
+ list: e(f).context,
198
+ actions: I.value
199
+ }, {
200
+ default: u(({ record: i }) => [
201
+ t(e(ae), {
202
+ label: e(a)("core.users.sections_label"),
203
+ desktop: "sidebar",
204
+ compact: "rows",
205
+ "back-label": i.name,
206
+ counts: O.value
207
+ }, {
208
+ summary: u(() => [
209
+ x("div", me, [
210
+ t(e(H), {
211
+ name: i.name,
212
+ size: "lg",
213
+ tone: "anchor"
214
+ }, null, 8, ["name"]),
215
+ x("div", pe, [
216
+ x("span", fe, C(i.name), 1),
217
+ x("span", ve, C(i.email), 1),
218
+ t(e(ne), {
219
+ tone: e(le)(i.status),
220
+ dot: "",
221
+ "data-person-status": ""
222
+ }, {
223
+ default: u(() => [
224
+ j(C(e(a)(`core.users.status.${i.status}`)), 1)
225
+ ]),
226
+ _: 2
227
+ }, 1032, ["tone"])
228
+ ])
229
+ ])
230
+ ]),
231
+ default: u(() => [
232
+ t(e(re))
233
+ ]),
234
+ _: 2
235
+ }, 1032, ["label", "back-label", "counts"]),
236
+ t(ue, {
237
+ ref_key: "deactivateDialog",
238
+ ref: _,
239
+ id: i.id,
240
+ name: i.name,
241
+ "session-count": e(l).data.value?.sessions.length ?? null,
242
+ onDone: y
243
+ }, null, 8, ["id", "name", "session-count"]),
244
+ t(de, {
245
+ ref_key: "passwordDialog",
246
+ ref: b,
247
+ id: i.id,
248
+ name: i.name,
249
+ onSaved: y
250
+ }, null, 8, ["id", "name"]),
251
+ t(e(se), {
252
+ ref_key: "activateDialog",
253
+ ref: D,
254
+ icon: "checkCircle",
255
+ title: e(a)("core.users.activate.title"),
256
+ message: e(a)("core.users.activate.body", { name: i.name }),
257
+ "confirm-label": e(a)("core.users.actions.activate"),
258
+ action: G
259
+ }, null, 8, ["title", "message", "confirm-label"])
260
+ ]),
261
+ _: 1
262
+ }, 8, ["resource", "title", "list", "actions"]));
263
+ }
264
+ });
265
+ export {
266
+ Te as default
267
+ };
@@ -0,0 +1,155 @@
1
+ import { defineComponent as U, openBlock as p, createBlock as C, unref as e, withCtx as c, createVNode as r, mergeProps as i, useTemplateRef as V, computed as q, createTextVNode as z, toDisplayString as $, createCommentVNode as A, createElementBlock as S, normalizeClass as N } from "vue";
2
+ import { useI18n as B } from "vue-i18n";
3
+ import { useRouter as M } from "vue-router";
4
+ import { u as P, _ as D } from "./CollectionPage.vue_vue_type_script_setup_true_lang-DCBVw2Qd.js";
5
+ import { _ as I } from "./Avatar.vue_vue_type_script_setup_true_lang-CFIheaSr.js";
6
+ import { u as F } from "./format-B8mJm946.js";
7
+ import { u as L } from "./platform-q3cjODLx.js";
8
+ import { _ as G } from "./Badge.vue_vue_type_script_setup_true_lang-DJyZc0C7.js";
9
+ import { i as K, f as E, M as W } from "./index-CGv-u1Ws.js";
10
+ import { U as j, u as H, s as J } from "./status-BuP3ULjH.js";
11
+ import { u as O } from "./environment-Dva-SG8D.js";
12
+ import { u as Q } from "./languages-BShG9LpE.js";
13
+ import { _ as X } from "./FormGroup.vue_vue_type_script_setup_true_lang-DG2zdG_a.js";
14
+ import { _ as Y } from "./SelectField.vue_vue_type_script_setup_true_lang-7O1BAx04.js";
15
+ import { _ as d } from "./TextField.vue_vue_type_script_setup_true_lang-B9dwVASU.js";
16
+ import { u as Z, _ as ee } from "./useCommand-BkONMn3X.js";
17
+ import { t as se } from "./toast-D9Z5To38.js";
18
+ import { u as te } from "./fieldMessages-C3Rpbktw.js";
19
+ const oe = /* @__PURE__ */ U({
20
+ __name: "NewUserDialog",
21
+ emits: ["created"],
22
+ setup(T, { expose: o, emit: b }) {
23
+ const { t } = B(), { http: g } = L(), h = O(), f = te(), w = Q(), y = () => ({ login: "", name: "", email: "", phone: "", locale: h.locale.value, password: "", repeat: "" }), m = (s) => s.trim() === "", k = {
24
+ safeParse(s) {
25
+ const { repeat: n, locale: R, ...u } = s, v = t("core.account.validation.required"), _ = ["login", "name", "email", "password"].filter((x) => m(u[x])).map((x) => ({ path: [x], message: v }));
26
+ return R === null && _.push({ path: ["locale"], message: v }), !m(u.password) && n !== u.password && _.push({ path: ["repeat"], message: m(n) ? v : t("core.account.validation.mismatch") }), _.length > 0 ? { success: !1, error: { issues: _ } } : { success: !0, data: { ...u, locale: R ?? "", phone: m(u.phone) ? void 0 : u.phone } };
27
+ }
28
+ }, l = b, a = Z({
29
+ ...f,
30
+ defaults: y,
31
+ validator: k,
32
+ run: async (s) => (await g.request(K.usersCreate, s)).data,
33
+ done: (s) => {
34
+ se.success(t("core.users.create.done", { name: s.name })), l("created", s);
35
+ }
36
+ });
37
+ return o({ create: () => a.present() }), (s, n) => (p(), C(e(ee), {
38
+ command: e(a),
39
+ title: e(t)("core.users.create.title"),
40
+ subtitle: e(t)("core.users.create.subtitle"),
41
+ "confirm-label": e(t)("core.users.create.action"),
42
+ size: "md"
43
+ }, {
44
+ default: c(() => [
45
+ r(e(X), { "label-width": "11rem" }, {
46
+ default: c(() => [
47
+ r(e(d), i(e(a).form.bind("name"), {
48
+ label: e(t)("core.users.fields.name"),
49
+ required: "",
50
+ autocomplete: "off"
51
+ }), null, 16, ["label"]),
52
+ r(e(d), i(e(a).form.bind("login"), {
53
+ label: e(t)("core.users.fields.login"),
54
+ required: "",
55
+ mono: "",
56
+ autocomplete: "off"
57
+ }), null, 16, ["label"]),
58
+ r(e(d), i(e(a).form.bind("password"), {
59
+ label: e(t)("core.users.fields.password"),
60
+ type: "password",
61
+ required: "",
62
+ autocomplete: "new-password"
63
+ }), null, 16, ["label"]),
64
+ r(e(d), i(e(a).form.bind("repeat"), {
65
+ label: e(t)("core.users.fields.password_repeat"),
66
+ type: "password",
67
+ required: "",
68
+ autocomplete: "new-password"
69
+ }), null, 16, ["label"]),
70
+ r(e(d), i(e(a).form.bind("email"), {
71
+ label: e(t)("core.users.fields.email"),
72
+ type: "email",
73
+ required: "",
74
+ autocomplete: "off"
75
+ }), null, 16, ["label"]),
76
+ r(e(d), i(e(a).form.bind("phone"), {
77
+ label: e(t)("core.users.fields.phone"),
78
+ type: "tel",
79
+ autocomplete: "off"
80
+ }), null, 16, ["label"]),
81
+ r(e(Y), i(e(a).form.bind("locale"), {
82
+ label: e(t)("core.users.fields.locale"),
83
+ options: e(w),
84
+ required: ""
85
+ }), null, 16, ["label", "options"])
86
+ ]),
87
+ _: 1
88
+ })
89
+ ]),
90
+ _: 1
91
+ }, 8, ["command", "title", "subtitle", "confirm-label"]));
92
+ }
93
+ }), ae = ["datetime"], xe = /* @__PURE__ */ U({
94
+ __name: "UsersList",
95
+ setup(T) {
96
+ const { t: o } = B(), { http: b, access: t } = L(), g = F(), h = M(), f = V("dialog"), w = q(() => [
97
+ { key: "name", label: o("core.users.columns.person"), kind: "identity", subtitle: (l) => l.email, sort: "name", mobile: "primary" },
98
+ { key: "login", label: o("core.users.columns.login"), sort: "login", hideBelow: "md", width: 180, mobile: "hidden" },
99
+ { key: "last_sign_in", label: o("core.users.columns.last_sign_in"), width: 170, mobile: "meta" },
100
+ { key: "status", label: o("core.users.columns.status"), width: 130, mobile: "accessory" }
101
+ ]), y = q(() => j.map((l) => ({ key: l, label: o(`core.users.views.${l}`) }))), m = P(H(b), { columns: w, views: y, state: { kind: "url", key: "query" }, recordRoute: (l) => E.record({ id: l.id }) }), k = q(
102
+ () => t.can(W) ? [{ id: "create", label: o("core.users.create.title"), icon: "addLine", placement: "primary", compact: "icon", keyboardShortcut: { key: "N", ctrlKey: !0 }, onClick: () => f.value?.create() }] : []
103
+ );
104
+ return (l, a) => (p(), C(e(D), {
105
+ collection: e(m),
106
+ title: e(o)("core.users.title"),
107
+ description: e(o)("core.users.description"),
108
+ actions: k.value,
109
+ "row-height": 64,
110
+ "row-label": (s) => s.name,
111
+ "views-presentation": "scope"
112
+ }, {
113
+ leading: c(({ item: s }) => [
114
+ r(e(I), {
115
+ name: s.name,
116
+ size: "md",
117
+ tone: "anchor"
118
+ }, null, 8, ["name"])
119
+ ]),
120
+ "cell-last_sign_in": c(({ item: s, compact: n }) => [
121
+ s.last_sign_in ? (p(), S("time", {
122
+ key: 0,
123
+ datetime: s.last_sign_in,
124
+ class: N(["text-content", n ? "text-footnote text-content-muted" : "text-body"])
125
+ }, $(e(g).dateTime(s.last_sign_in)), 11, ae)) : (p(), S("span", {
126
+ key: 1,
127
+ class: N(n ? "text-footnote text-content-disabled" : "text-body text-content-disabled")
128
+ }, $(e(o)("core.users.never")), 3))
129
+ ]),
130
+ "cell-status": c(({ item: s, compact: n }) => [
131
+ !n || s.status !== "active" ? (p(), C(e(G), {
132
+ key: 0,
133
+ tone: e(J)(s.status),
134
+ dot: ""
135
+ }, {
136
+ default: c(() => [
137
+ z($(e(o)(`core.users.status.${s.status}`)), 1)
138
+ ]),
139
+ _: 2
140
+ }, 1032, ["tone"])) : A("", !0)
141
+ ]),
142
+ default: c(() => [
143
+ r(oe, {
144
+ ref_key: "dialog",
145
+ ref: f,
146
+ onCreated: a[0] || (a[0] = (s) => e(h).push(e(E).record({ id: s.id })))
147
+ }, null, 512)
148
+ ]),
149
+ _: 1
150
+ }, 8, ["collection", "title", "description", "actions", "row-label"]));
151
+ }
152
+ });
153
+ export {
154
+ xe as default
155
+ };