@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.
- package/README.md +36 -0
- package/dist/AccessGate.vue_vue_type_script_setup_true_lang-DcbZBINh.js +22 -0
- package/dist/AccountMenuItem.vue_vue_type_script_setup_true_lang-CPeNxh5K.js +76 -0
- package/dist/ActionRow.vue_vue_type_script_setup_true_lang-LlfIPWsJ.js +45 -0
- package/dist/Activity-2gGxQn7v.js +156 -0
- 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
- package/dist/{AlertDialog.vue_vue_type_script_setup_true_lang-e4hzkzg3.js → AlertDialog.vue_vue_type_script_setup_true_lang-whA4WLdl.js} +1 -1
- package/dist/{AsyncSection.vue_vue_type_script_setup_true_lang-CWLB3xsR.js → AsyncSection.vue_vue_type_script_setup_true_lang-Blj6KgCr.js} +4 -4
- 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
- package/dist/{BottomDock.vue_vue_type_script_setup_true_lang-DhlMnPC2.js → BottomDock.vue_vue_type_script_setup_true_lang-CjN7xYEr.js} +1 -1
- package/dist/{Button.vue_vue_type_script_setup_true_lang-B1eZgLae.js → Button.vue_vue_type_script_setup_true_lang-CL9Qh5yq.js} +1 -1
- package/dist/Changes-Bm8xvagD.js +129 -0
- package/dist/CollectionPage.vue_vue_type_script_setup_true_lang-DCBVw2Qd.js +1485 -0
- package/dist/DataTable.vue_vue_type_script_setup_true_lang-UH6f9puS.js +52 -0
- package/dist/DateField.vue_vue_type_script_setup_true_lang-GVasv8ao.js +255 -0
- package/dist/DeadLetters-CMRtXn_N.js +104 -0
- package/dist/{DiscardChangesModal.vue_vue_type_script_setup_true_lang-DyhYHRyz.js → DiscardChangesModal.vue_vue_type_script_setup_true_lang-D1arePCZ.js} +1 -1
- 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
- package/dist/FormErrors.vue_vue_type_script_setup_true_lang-BQb7wLT0.js +276 -0
- package/dist/FormGroup.vue_vue_type_script_setup_true_lang-DG2zdG_a.js +136 -0
- package/dist/FormView.vue_vue_type_script_setup_true_lang-cr0xNDXP.js +38 -0
- package/dist/General-CTqd0SLK.js +145 -0
- package/dist/HeaderAction.vue_vue_type_script_setup_true_lang-Cgji-Jrr.js +45 -0
- package/dist/{Icon.vue_vue_type_script_lang-DtC4_mkz.js → Icon.vue_vue_type_script_lang-D7oC-d-S.js} +54 -37
- package/dist/{IconTile.vue_vue_type_script_setup_true_lang-Csfv6Sel.js → IconTile.vue_vue_type_script_setup_true_lang-BpIjgu5E.js} +1 -1
- package/dist/KeyValue.vue_vue_type_script_setup_true_lang-wcZcvnow.js +35 -0
- package/dist/{LeaveGuardRoot.vue_vue_type_script_setup_true_lang-CvwoT1JF.js → LeaveGuardRoot.vue_vue_type_script_setup_true_lang-Cv7KlA5y.js} +2 -2
- package/dist/{Menu.vue_vue_type_script_setup_true_lang-CrMj6KPD.js → Menu.vue_vue_type_script_setup_true_lang-DTbAcDzL.js} +66 -58
- package/dist/{Modal.vue_vue_type_script_setup_true_lang-BQZM49gC.js → Modal.vue_vue_type_script_setup_true_lang-DpBb8ans.js} +4 -4
- package/dist/NewRolePage-DTOWIxxC.js +42 -0
- package/dist/NoAccess.vue_vue_type_script_setup_true_lang-DWxq-MTM.js +31 -0
- package/dist/NumberField.vue_vue_type_script_setup_true_lang-C7N5nq0P.js +113 -0
- package/dist/OtpInput.vue_vue_type_script_setup_true_lang-gp4FfWAH.js +95 -0
- package/dist/PageBar.vue_vue_type_script_setup_true_lang-B7qdEeej.js +47 -0
- 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
- package/dist/PanelActions.vue_vue_type_script_setup_true_lang-E9VdIGkf.js +46 -0
- package/dist/{PhotoViewer.vue_vue_type_script_setup_true_lang-ElDizaW2.js → PhotoViewer.vue_vue_type_script_setup_true_lang-QPCW3Xi6.js} +1 -1
- package/dist/Popover.vue_vue_type_script_setup_true_lang-Dx-tDhNE.js +125 -0
- package/dist/ProfilePage-BlpiWH_W.js +654 -0
- package/dist/{ProgressTrack.vue_vue_type_script_setup_true_lang-1DDaNs2W.js → ProgressTrack.vue_vue_type_script_setup_true_lang-B6Prw9hi.js} +2 -2
- package/dist/RecordHeader.vue_vue_type_script_setup_true_lang-C_ymvhHU.js +64 -0
- package/dist/ResourcePage.vue_vue_type_script_setup_true_lang-CwI_sROp.js +173 -0
- package/dist/RoleEditor.vue_vue_type_script_setup_true_lang-CmwvSytD.js +300 -0
- package/dist/RolePage-DZk7BZOc.js +315 -0
- package/dist/RolesPage-DzGGCMnm.js +115 -0
- package/dist/SectionIntro.vue_vue_type_script_setup_true_lang-CZtPrmXD.js +23 -0
- package/dist/SectionList.vue_vue_type_script_setup_true_lang-BFYls8fR.js +148 -0
- package/dist/SectionNavigator.vue_vue_type_script_setup_true_lang-DSMXEaCs.js +314 -0
- package/dist/SegmentedField.vue_vue_type_script_setup_true_lang-BMqWlpsL.js +58 -0
- package/dist/SelectField.vue_vue_type_script_setup_true_lang-7O1BAx04.js +423 -0
- package/dist/SessionList.vue_vue_type_script_setup_true_lang-D5KRitar.js +111 -0
- package/dist/Sessions-CWqjjTr1.js +96 -0
- package/dist/SettingsPage-C4s0IdkW.js +255 -0
- package/dist/Sheet.vue_vue_type_script_setup_true_lang-DgOFV4fa.js +145 -0
- package/dist/SignIn-zzKY__df.js +140 -0
- package/dist/SignInPage-Rqnus_s-.js +60 -0
- package/dist/SignInTable.vue_vue_type_script_setup_true_lang-CEbAvZ_C.js +79 -0
- package/dist/SignIns-Cnf9BVR0.js +66 -0
- package/dist/SwipeActions.vue_vue_type_script_setup_true_lang-BJIA2JfI.js +93 -0
- package/dist/SwitchField.vue_vue_type_script_setup_true_lang-CM8yp9JQ.js +64 -0
- package/dist/Tabs.vue_vue_type_script_setup_true_lang-CcMcE38r.js +155 -0
- package/dist/TextField.vue_vue_type_script_setup_true_lang-B9dwVASU.js +269 -0
- package/dist/TextareaField.vue_vue_type_script_setup_true_lang-CqAWfABZ.js +68 -0
- package/dist/TimeField.vue_vue_type_script_setup_true_lang-DWfAUlnz.js +164 -0
- 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
- package/dist/UserRecord-DqigxVxH.js +267 -0
- package/dist/UsersList-DNlZsI9J.js +155 -0
- package/dist/ViewTabs.vue_vue_type_script_setup_true_lang-BJIoZAlH.js +28 -0
- package/dist/access/AddRoleDialog.vue.d.ts +19 -0
- package/dist/access/BindingRow.vue.d.ts +19 -0
- package/dist/access/EffectiveAccess.vue.d.ts +12 -0
- package/dist/access/NewRolePage.vue.d.ts +2 -0
- package/dist/access/PermissionTree.vue.d.ts +13 -0
- package/dist/access/PersonAccess.vue.d.ts +21 -0
- package/dist/access/ReplaceRoleDialog.vue.d.ts +17 -0
- package/dist/access/RoleCompareDialog.vue.d.ts +14 -0
- package/dist/access/RoleEditor.vue.d.ts +28 -0
- package/dist/access/RolePage.vue.d.ts +2 -0
- package/dist/access/RolesPage.vue.d.ts +2 -0
- package/dist/access/api.d.ts +26 -0
- package/dist/access/catalogue.d.ts +64 -0
- package/dist/access/context.d.ts +20 -0
- package/dist/access/effective.d.ts +42 -0
- package/dist/access/feature.d.ts +27 -0
- package/dist/access/index.d.ts +13 -0
- package/dist/access/index.js +15 -0
- package/dist/access/labels.d.ts +35 -0
- package/dist/access/refusals.d.ts +6 -0
- package/dist/access/routes.d.ts +45 -0
- package/dist/access/scopes.d.ts +20 -0
- package/dist/app/contributions.d.ts +1 -1
- package/dist/app/feature.d.ts +8 -0
- package/dist/app/index.js +259 -296
- package/dist/bottomDock-BZEiOPYZ.js +12 -0
- package/dist/button/Button.vue.d.ts +3 -3
- package/dist/button/index.js +1 -1
- package/dist/chrome-BS3xJcad.js +93 -0
- package/dist/client/client.d.ts +13 -0
- package/dist/client/index.d.ts +3 -1
- package/dist/client/index.js +11 -138
- package/dist/client/route.d.ts +59 -0
- package/dist/client-k9euDWF4.js +147 -0
- package/dist/closeOverlays-CjVsIrpL.js +8 -0
- package/dist/collection/definition.d.ts +3 -0
- package/dist/collection/http.d.ts +4 -2
- package/dist/collection/index.js +74 -2428
- package/dist/collection/useCollection.d.ts +2 -0
- package/dist/content/index.js +37 -66
- package/dist/contributions-DsfmDoRD.js +26 -0
- package/dist/control-7EP4tjYy.js +313 -0
- package/dist/controls/DateButton.vue.d.ts +1 -1
- package/dist/controls/PopupButton.vue.d.ts +1 -1
- package/dist/controls/index.js +11 -10
- package/dist/defineRoutes-BGAdiIrt.js +19 -0
- package/dist/{describeError-l5T9b8Uv.js → describeError-Ctga6GcS.js} +1 -1
- package/dist/environment-Dva-SG8D.js +6 -0
- package/dist/{error-Bb_dr_Ay.js → error-CD7x0Jrz.js} +2 -2
- package/dist/feature-DdUAfyi4.js +25 -0
- package/dist/fieldMessages-C3Rpbktw.js +25 -0
- package/dist/form/CheckboxField.vue.d.ts +1 -1
- package/dist/form/CommandDialog.vue.d.ts +1 -1
- package/dist/form/DateField.vue.d.ts +1 -1
- package/dist/form/DateTimeField.vue.d.ts +1 -1
- package/dist/form/EditorPage.vue.d.ts +1 -1
- package/dist/form/Field.vue.d.ts +1 -1
- package/dist/form/FileField.vue.d.ts +1 -1
- package/dist/form/FormGroup.vue.d.ts +1 -1
- package/dist/form/FormGroupButton.vue.d.ts +1 -1
- package/dist/form/FormRow.vue.d.ts +1 -1
- package/dist/form/I18nField.vue.d.ts +3 -3
- package/dist/form/MoneyField.vue.d.ts +1 -1
- package/dist/form/MonthYearField.vue.d.ts +1 -1
- package/dist/form/NumberCell.vue.d.ts +1 -1
- package/dist/form/NumberField.vue.d.ts +2 -2
- package/dist/form/OtpInput.vue.d.ts +2 -2
- package/dist/form/PhotoField.vue.d.ts +1 -1
- package/dist/form/SwitchField.vue.d.ts +1 -1
- package/dist/form/TextField.vue.d.ts +3 -3
- package/dist/form/TextareaField.vue.d.ts +3 -3
- package/dist/form/TimeField.vue.d.ts +1 -1
- package/dist/form/date/DatePickerSheet.vue.d.ts +1 -1
- package/dist/form/date/MonthYearPanel.vue.d.ts +1 -1
- package/dist/form/index.js +1159 -3474
- package/dist/guards-Dve61KjR.js +51 -0
- package/dist/http-CNcDHSOj.js +194 -0
- package/dist/i18n/index.d.ts +281 -0
- package/dist/i18n/index.js +52 -52
- package/dist/icon/core.d.ts +17 -0
- package/dist/icon/index.js +1 -1
- package/dist/identity/ImpersonationBanner.vue.d.ts +2 -0
- package/dist/identity/LocaleSync.vue.d.ts +2 -0
- package/dist/identity/SessionExpiry.vue.d.ts +2 -0
- package/dist/identity/SignInAsButton.vue.d.ts +15 -0
- package/dist/identity/SignInPage.vue.d.ts +2 -0
- package/dist/identity/context.d.ts +7 -0
- package/dist/identity/feature.d.ts +16 -0
- package/dist/identity/fieldMessages.d.ts +15 -0
- package/dist/identity/index.d.ts +16 -0
- package/dist/identity/index.js +18 -0
- package/dist/identity/profile/DetailsPanel.vue.d.ts +11 -0
- package/dist/identity/profile/EmailChangeDialog.vue.d.ts +14 -0
- package/dist/identity/profile/EmailPanel.vue.d.ts +11 -0
- package/dist/identity/profile/PanelActions.vue.d.ts +17 -0
- package/dist/identity/profile/PasswordPanel.vue.d.ts +2 -0
- package/dist/identity/profile/ProfileMenuItem.vue.d.ts +2 -0
- package/dist/identity/profile/ProfilePage.vue.d.ts +2 -0
- package/dist/identity/profile/SessionsPanel.vue.d.ts +2 -0
- package/dist/identity/profile/SignInsPanel.vue.d.ts +2 -0
- package/dist/identity/profile/VerifyCode.vue.d.ts +49 -0
- package/dist/identity/profile/routes.d.ts +13 -0
- package/dist/identity/session.d.ts +30 -0
- package/dist/identity/shared/ActionRow.vue.d.ts +20 -0
- package/dist/identity/shared/ChangeFeed.vue.d.ts +11 -0
- package/dist/identity/shared/PageBar.vue.d.ts +12 -0
- package/dist/identity/shared/SectionIntro.vue.d.ts +16 -0
- package/dist/identity/shared/SessionList.vue.d.ts +19 -0
- package/dist/identity/shared/SignInTable.vue.d.ts +11 -0
- package/dist/identity/shared/ViewTabs.vue.d.ts +23 -0
- package/dist/identity/shared/signInEvents.d.ts +9 -0
- package/dist/identity/signIn.d.ts +27 -0
- package/dist/identity/useSignInForm.d.ts +20 -0
- package/dist/identity/user.d.ts +6 -0
- package/dist/identity/users/DeactivateDialog.vue.d.ts +18 -0
- package/dist/identity/users/NewUserDialog.vue.d.ts +9 -0
- package/dist/identity/users/SetPasswordDialog.vue.d.ts +16 -0
- package/dist/identity/users/UserRecord.vue.d.ts +2 -0
- package/dist/identity/users/UsersList.vue.d.ts +2 -0
- package/dist/identity/users/access.d.ts +4 -0
- package/dist/identity/users/context.d.ts +9 -0
- package/dist/identity/users/feature.d.ts +34 -0
- package/dist/identity/users/languages.d.ts +4 -0
- package/dist/identity/users/list.d.ts +8 -0
- package/dist/identity/users/person.d.ts +26 -0
- package/dist/identity/users/personSections.d.ts +22 -0
- package/dist/identity/users/routes.d.ts +22 -0
- package/dist/identity/users/sections/Activity.vue.d.ts +2 -0
- package/dist/identity/users/sections/Changes.vue.d.ts +2 -0
- package/dist/identity/users/sections/General.vue.d.ts +2 -0
- package/dist/identity/users/sections/Sessions.vue.d.ts +2 -0
- package/dist/identity/users/sections/SignIn.vue.d.ts +2 -0
- package/dist/identity/users/sections/SignIns.vue.d.ts +2 -0
- package/dist/identity/users/status.d.ts +4 -0
- package/dist/index-BsJ92eub.js +504 -0
- package/dist/index-CGv-u1Ws.js +459 -0
- package/dist/index-GcLnFF-z.js +706 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/internal/languageName.d.ts +2 -0
- package/dist/keepAlive-WYQGRhuz.js +48 -0
- package/dist/languageName-CItV_SOv.js +11 -0
- package/dist/languages-BShG9LpE.js +10 -0
- package/dist/leaveGuard-Cc8yeLxM.js +72 -0
- package/dist/modal/Modal.vue.d.ts +1 -1
- package/dist/modal/Sheet.vue.d.ts +2 -0
- package/dist/modal/index.js +5 -5
- package/dist/modules/access/entities.d.ts +112 -0
- package/dist/modules/access/routes.d.ts +67 -0
- package/dist/modules/access/schemas.d.ts +73 -0
- package/dist/modules/events/entities.d.ts +16 -0
- package/dist/modules/events/routes.d.ts +17 -0
- package/dist/modules/events/schemas.d.ts +16 -0
- package/dist/modules/identity/entities.d.ts +150 -0
- package/dist/modules/identity/routes.d.ts +118 -0
- package/dist/modules/identity/schemas.d.ts +145 -0
- package/dist/modules/notification/entities.d.ts +46 -0
- package/dist/modules/notification/routes.d.ts +26 -0
- package/dist/modules/notification/schemas.d.ts +25 -0
- package/dist/{navigation-B33ikiCS.js → navigation-Cm3iChlR.js} +21 -20
- package/dist/neighbors-DpaIMQAL.js +86 -0
- package/dist/notifications/InboxPanel.vue.d.ts +16 -0
- package/dist/notifications/MarkAllRead.vue.d.ts +7 -0
- package/dist/notifications/NotificationBell.vue.d.ts +2 -0
- package/dist/notifications/SettingsLink.vue.d.ts +6 -0
- package/dist/notifications/context.d.ts +20 -0
- package/dist/notifications/deadletters/DeadLetters.vue.d.ts +2 -0
- package/dist/notifications/deadletters/access.d.ts +3 -0
- package/dist/notifications/deadletters/list.d.ts +3 -0
- package/dist/notifications/deadletters/routes.d.ts +13 -0
- package/dist/notifications/feature.d.ts +31 -0
- package/dist/notifications/inbox.d.ts +62 -0
- package/dist/notifications/index.d.ts +13 -0
- package/dist/notifications/index.js +8 -0
- package/dist/notifications/settings/EmailPanel.vue.d.ts +14 -0
- package/dist/notifications/settings/QuietHoursPanel.vue.d.ts +14 -0
- package/dist/notifications/settings/SettingsMenuItem.vue.d.ts +2 -0
- package/dist/notifications/settings/SettingsPage.vue.d.ts +2 -0
- package/dist/notifications/settings/categoryText.d.ts +9 -0
- package/dist/notifications/settings/routes.d.ts +13 -0
- package/dist/notifications/settings/settings.d.ts +18 -0
- package/dist/notifications/settings/state.d.ts +16 -0
- package/dist/notifications/state.d.ts +27 -0
- package/dist/notifications/stream.d.ts +21 -0
- package/dist/options-Ba_0uLWN.js +18 -0
- package/dist/overlay/AlertDialog.vue.d.ts +3 -3
- package/dist/overlay/Popover.vue.d.ts +1 -1
- package/dist/overlay/closeOverlays.d.ts +7 -0
- package/dist/overlay/index.js +21 -20
- package/dist/page/AdaptivePageShell.vue.d.ts +2 -2
- package/dist/page/ResourceHeader.vue.d.ts +2 -2
- package/dist/page/index.js +99 -457
- package/dist/phone/PhoneField.vue.d.ts +2 -2
- package/dist/phone/index.js +68 -67
- package/dist/platform/index.d.ts +2 -2
- package/dist/platform/index.js +73 -90
- package/dist/platform/platform.d.ts +2 -2
- package/dist/platform/session.d.ts +22 -1
- package/dist/platform-q3cjODLx.js +255 -0
- package/dist/resource/index.js +8 -248
- package/dist/route-goWMxDUN.js +13 -0
- package/dist/routeResource-DstM0hvf.js +82 -0
- package/dist/router/guards.d.ts +7 -1
- package/dist/router/index.js +23 -37
- package/dist/router/navigation.d.ts +1 -1
- package/dist/rowLayout-BqTEhEuy.js +603 -0
- package/dist/sectionIndex-BS0ic5W7.js +86 -0
- package/dist/{sections-LtxV5Mtk.js → sections-CntvUTxn.js} +1 -1
- package/dist/shell/AccountMenuItem.vue.d.ts +1 -1
- package/dist/shell/BackofficeShell.vue.d.ts +2 -2
- package/dist/shell/NavigationList.vue.d.ts +1 -1
- package/dist/shell/ShellBrand.vue.d.ts +1 -1
- package/dist/shell/backofficeShell.d.ts +1 -1
- package/dist/shell/identity.d.ts +1 -1
- package/dist/shell/index.js +491 -595
- package/dist/state/ProgressTrack.vue.d.ts +1 -1
- package/dist/state/index.js +59 -92
- package/dist/status-BuP3ULjH.js +33 -0
- package/dist/styles.css +1 -1
- package/dist/suggestions-BxMm6MQA.js +138 -0
- package/dist/testing/index.js +1 -1
- package/dist/toast-D9Z5To38.js +13 -0
- package/dist/transport-BnP7WC0Y.js +4 -0
- package/dist/useCommand-BkONMn3X.js +135 -0
- package/dist/useLoad-CYRVx6HW.js +39 -0
- package/dist/useResourceForm-D1hIpwW5.js +52 -0
- package/dist/useSaveChrome-chi6D3HY.js +25 -0
- package/dist/useSheetDrag-OsD6Eb6I.js +72 -0
- package/dist/useTypedEntry-aTfPBAhw.js +857 -0
- package/package.json +26 -5
- package/dist/NoAccess.vue_vue_type_script_setup_true_lang-OKW8pKYU.js +0 -78
- package/dist/SectionList.vue_vue_type_script_setup_true_lang-L9ita_Kx.js +0 -230
- package/dist/SelectField.vue_vue_type_script_setup_true_lang-DZTrU8NJ.js +0 -661
- package/dist/Sheet.vue_vue_type_script_setup_true_lang-CtkJ-4e3.js +0 -210
- package/dist/SwipeActions.vue_vue_type_script_setup_true_lang-CGTuEnTv.js +0 -243
- package/dist/chrome-D9pwD6iS.js +0 -101
- package/dist/environment-D3nozt9a.js +0 -75
- package/dist/feature-DyDtyMLU.js +0 -47
- package/dist/options-DAkBtYkI.js +0 -330
- package/dist/platform-jqlKVJ2e.js +0 -244
- package/dist/toast-DvrHQ6Ag.js +0 -131
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { defineComponent as g, ref as m, watch as p, openBlock as c, createElementBlock as v, createVNode as i, unref as e, withCtx as w, createBlock as x, createCommentVNode as y, createElementVNode as V, toDisplayString as $ } from "vue";
|
|
2
|
+
import { useI18n as N } from "vue-i18n";
|
|
3
|
+
import { P as S, i as b } from "./index-CGv-u1Ws.js";
|
|
4
|
+
import { u as k } from "./platform-q3cjODLx.js";
|
|
5
|
+
import { b as I } from "./routeResource-DstM0hvf.js";
|
|
6
|
+
import { _ as R } from "./AsyncSection.vue_vue_type_script_setup_true_lang-Blj6KgCr.js";
|
|
7
|
+
import { u as C } from "./useLoad-CYRVx6HW.js";
|
|
8
|
+
import { _ as E } from "./PageBar.vue_vue_type_script_setup_true_lang-B7qdEeej.js";
|
|
9
|
+
import { _ as B } from "./SectionIntro.vue_vue_type_script_setup_true_lang-CZtPrmXD.js";
|
|
10
|
+
import { _ as P } from "./SignInTable.vue_vue_type_script_setup_true_lang-CEbAvZ_C.js";
|
|
11
|
+
import { _ as h } from "./ViewTabs.vue_vue_type_script_setup_true_lang-BJIoZAlH.js";
|
|
12
|
+
const U = {
|
|
13
|
+
class: "flex min-w-0 flex-col gap-group-gap",
|
|
14
|
+
"data-person-signins": ""
|
|
15
|
+
}, q = { class: "px-row-inset text-footnote text-content-muted" }, M = /* @__PURE__ */ g({
|
|
16
|
+
__name: "SignIns",
|
|
17
|
+
setup(D) {
|
|
18
|
+
const d = ["all", "failed"], { t: s } = N(), { http: f } = k(), l = I(S), r = m("all"), a = m(1), n = C(
|
|
19
|
+
async ({ signal: u }) => {
|
|
20
|
+
const t = l.id.value;
|
|
21
|
+
return t === null ? null : (await f.request(b.usersSignins, { id: t, view: r.value, page: a.value, per_page: 20 }, { signal: u })).data;
|
|
22
|
+
},
|
|
23
|
+
{ watch: () => l.id.value }
|
|
24
|
+
);
|
|
25
|
+
return p(r, () => {
|
|
26
|
+
a.value = 1, n.reload();
|
|
27
|
+
}), p(a, () => void n.reload()), (u, t) => (c(), v("div", U, [
|
|
28
|
+
i(B, {
|
|
29
|
+
title: e(s)("core.users.sections.signins"),
|
|
30
|
+
description: e(s)("core.users.intro.signins", { name: e(l).data.value?.name ?? "" })
|
|
31
|
+
}, null, 8, ["title", "description"]),
|
|
32
|
+
i(h, {
|
|
33
|
+
modelValue: r.value,
|
|
34
|
+
"onUpdate:modelValue": t[0] || (t[0] = (o) => r.value = o),
|
|
35
|
+
views: d,
|
|
36
|
+
counts: e(n).data.value?.meta?.views,
|
|
37
|
+
"label-of": (o) => e(s)(`core.account.signins.views.${o}`),
|
|
38
|
+
label: e(s)("core.users.sections.signins")
|
|
39
|
+
}, null, 8, ["modelValue", "counts", "label-of", "label"]),
|
|
40
|
+
i(e(R), {
|
|
41
|
+
state: e(n).state.value,
|
|
42
|
+
"skeleton-rows": 5,
|
|
43
|
+
"is-empty": () => !1,
|
|
44
|
+
onRetry: t[2] || (t[2] = (o) => e(n).reload())
|
|
45
|
+
}, {
|
|
46
|
+
default: w(({ value: o }) => [
|
|
47
|
+
i(P, {
|
|
48
|
+
rows: o?.data ?? []
|
|
49
|
+
}, null, 8, ["rows"]),
|
|
50
|
+
o ? (c(), x(E, {
|
|
51
|
+
key: 0,
|
|
52
|
+
page: a.value,
|
|
53
|
+
"onUpdate:page": t[1] || (t[1] = (_) => a.value = _),
|
|
54
|
+
"last-page": o.last_page,
|
|
55
|
+
total: o.total
|
|
56
|
+
}, null, 8, ["page", "last-page", "total"])) : y("", !0),
|
|
57
|
+
V("p", q, $(e(s)("core.account.signins.footer_user")), 1)
|
|
58
|
+
]),
|
|
59
|
+
_: 1
|
|
60
|
+
}, 8, ["state"])
|
|
61
|
+
]));
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
export {
|
|
65
|
+
M as default
|
|
66
|
+
};
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { defineComponent as D, computed as N, ref as p, watch as O, onBeforeUnmount as T, openBlock as f, createElementBlock as d, createElementVNode as b, normalizeStyle as x, Fragment as z, renderList as E, normalizeClass as _, createVNode as X, unref as $, createTextVNode as B, toDisplayString as V, renderSlot as Y } from "vue";
|
|
2
|
+
import { _ as A } from "./Icon.vue_vue_type_script_lang-D7oC-d-S.js";
|
|
3
|
+
import { p as I } from "./perDocument-DUuFrdGU.js";
|
|
4
|
+
const R = ["aria-hidden"], W = ["href", "target", "rel", "tabindex", "data-action"], j = Symbol("vue-core:swipe-open-row"), F = () => I(j, () => p(null)), q = /* @__PURE__ */ D({
|
|
5
|
+
__name: "SwipeActions",
|
|
6
|
+
props: {
|
|
7
|
+
actions: {},
|
|
8
|
+
contentClass: { default: "" }
|
|
9
|
+
},
|
|
10
|
+
setup(y) {
|
|
11
|
+
const o = y, k = 76, C = {
|
|
12
|
+
positive: "bg-status-success-solid",
|
|
13
|
+
info: "bg-status-info-solid",
|
|
14
|
+
neutral: "bg-status-neutral-solid",
|
|
15
|
+
critical: "bg-status-danger-solid"
|
|
16
|
+
}, n = F(), l = Symbol("swipe-row"), r = N(() => o.actions.length * k), t = p(0), s = p(!1);
|
|
17
|
+
let v = 0, m = 0, h = 0, i = null, u = !1;
|
|
18
|
+
function P(e) {
|
|
19
|
+
u = !1, !(e.pointerType !== "touch" || o.actions.length === 0) && (v = e.clientX, m = e.clientY, h = t.value, i = null);
|
|
20
|
+
}
|
|
21
|
+
function M(e) {
|
|
22
|
+
if (e.pointerType !== "touch" || o.actions.length === 0) return;
|
|
23
|
+
const c = e.clientX - v, a = e.clientY - m;
|
|
24
|
+
if (i === null) {
|
|
25
|
+
if (Math.abs(c) < 6 && Math.abs(a) < 6) return;
|
|
26
|
+
i = Math.abs(c) > Math.abs(a);
|
|
27
|
+
}
|
|
28
|
+
i && (s.value = !0, t.value = Math.min(0, Math.max(-r.value - 24, h + c)));
|
|
29
|
+
}
|
|
30
|
+
function g() {
|
|
31
|
+
t.value = 0, n.value === l && (n.value = null);
|
|
32
|
+
}
|
|
33
|
+
function w() {
|
|
34
|
+
if (!s.value) return;
|
|
35
|
+
s.value = !1, u = !0;
|
|
36
|
+
const e = -t.value > r.value / 2;
|
|
37
|
+
t.value = e ? -r.value : 0, e ? n.value = l : n.value === l && (n.value = null);
|
|
38
|
+
}
|
|
39
|
+
function S(e) {
|
|
40
|
+
if (u) {
|
|
41
|
+
u = !1, e.stopPropagation(), e.preventDefault();
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
t.value !== 0 && !e.target.closest("[data-swipe-action]") && (e.stopPropagation(), e.preventDefault(), g());
|
|
45
|
+
}
|
|
46
|
+
return O(n, (e) => {
|
|
47
|
+
e !== l && t.value !== 0 && !s.value && (t.value = 0);
|
|
48
|
+
}), T(() => {
|
|
49
|
+
n.value === l && (n.value = null);
|
|
50
|
+
}), (e, c) => (f(), d("div", {
|
|
51
|
+
class: "relative overflow-hidden",
|
|
52
|
+
"data-test": "swipe-row",
|
|
53
|
+
onClickCapture: S
|
|
54
|
+
}, [
|
|
55
|
+
b("div", {
|
|
56
|
+
class: "absolute inset-y-0 right-0 flex",
|
|
57
|
+
style: x({ width: `${r.value}px` }),
|
|
58
|
+
"aria-hidden": t.value === 0
|
|
59
|
+
}, [
|
|
60
|
+
(f(!0), d(z, null, E(o.actions, (a) => (f(), d("a", {
|
|
61
|
+
key: a.key,
|
|
62
|
+
href: a.href,
|
|
63
|
+
"data-swipe-action": "",
|
|
64
|
+
target: a.external ? "_blank" : void 0,
|
|
65
|
+
rel: a.external ? "noopener" : void 0,
|
|
66
|
+
tabindex: t.value === 0 ? -1 : 0,
|
|
67
|
+
"data-action": a.key,
|
|
68
|
+
class: _(["flex flex-1 flex-col items-center justify-center gap-1 text-footnote font-semibold text-white", C[a.tone]]),
|
|
69
|
+
onClick: g
|
|
70
|
+
}, [
|
|
71
|
+
X($(A), {
|
|
72
|
+
name: a.icon,
|
|
73
|
+
size: 22
|
|
74
|
+
}, null, 8, ["name"]),
|
|
75
|
+
B(" " + V(a.label), 1)
|
|
76
|
+
], 10, W))), 128))
|
|
77
|
+
], 12, R),
|
|
78
|
+
b("div", {
|
|
79
|
+
class: _(["relative touch-pan-y bg-surface-cell", [o.contentClass, s.value ? "" : "transition-transform duration-motion-normal ease-motion-standard"]]),
|
|
80
|
+
style: x({ transform: `translateX(${t.value}px)` }),
|
|
81
|
+
onPointerdown: P,
|
|
82
|
+
onPointermove: M,
|
|
83
|
+
onPointerup: w,
|
|
84
|
+
onPointercancel: w
|
|
85
|
+
}, [
|
|
86
|
+
Y(e.$slots, "default")
|
|
87
|
+
], 38)
|
|
88
|
+
], 32));
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
export {
|
|
92
|
+
q as _
|
|
93
|
+
};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { defineComponent as p, useModel as b, computed as w, openBlock as v, createBlock as g, mergeProps as y, unref as a, withCtx as _, createElementVNode as t, renderSlot as k, normalizeClass as l, normalizeStyle as z, toDisplayString as B, mergeModels as S, mergeDefaults as x } from "vue";
|
|
2
|
+
import { useI18n as C } from "vue-i18n";
|
|
3
|
+
import { u as M, _ as V, f as D, b as E } from "./control-7EP4tjYy.js";
|
|
4
|
+
const F = { class: "flex items-center gap-2" }, I = ["id", "aria-checked", "aria-label", "aria-describedby", "aria-invalid", "disabled"], P = { class: "sr-only" }, Z = /* @__PURE__ */ p({
|
|
5
|
+
__name: "SwitchField",
|
|
6
|
+
props: /* @__PURE__ */ S(/* @__PURE__ */ x({
|
|
7
|
+
label: {},
|
|
8
|
+
hint: {},
|
|
9
|
+
error: {},
|
|
10
|
+
required: { type: Boolean },
|
|
11
|
+
editable: { type: Boolean },
|
|
12
|
+
disabled: { type: Boolean },
|
|
13
|
+
lockedReason: {},
|
|
14
|
+
presentation: {},
|
|
15
|
+
name: {},
|
|
16
|
+
size: {}
|
|
17
|
+
}, { ...E, size: "md" }), {
|
|
18
|
+
modelValue: { type: Boolean, default: !1 },
|
|
19
|
+
modelModifiers: {}
|
|
20
|
+
}),
|
|
21
|
+
emits: ["update:modelValue"],
|
|
22
|
+
setup(s) {
|
|
23
|
+
const o = s, e = b(s, "modelValue"), { t: i } = C(), { editable: r } = M(o), n = {
|
|
24
|
+
sm: { "--switch-w": "1.75rem", "--switch-h": "1rem" },
|
|
25
|
+
md: { "--switch-w": "var(--app-switch-width)", "--switch-h": "var(--app-switch-height)" },
|
|
26
|
+
lg: { "--switch-w": "3.1875rem", "--switch-h": "1.9375rem" }
|
|
27
|
+
}, d = w(() => n[o.size]);
|
|
28
|
+
function c() {
|
|
29
|
+
!o.disabled && r.value && (e.value = !e.value);
|
|
30
|
+
}
|
|
31
|
+
return (u, $) => (v(), g(V, y(a(D)(o), {
|
|
32
|
+
value: e.value,
|
|
33
|
+
"row-layout": "setting"
|
|
34
|
+
}), {
|
|
35
|
+
default: _(({ id: m, describedby: h, invalid: f }) => [
|
|
36
|
+
t("div", F, [
|
|
37
|
+
k(u.$slots, "before"),
|
|
38
|
+
t("button", {
|
|
39
|
+
id: m,
|
|
40
|
+
type: "button",
|
|
41
|
+
role: "switch",
|
|
42
|
+
"aria-checked": e.value,
|
|
43
|
+
"aria-label": o.label,
|
|
44
|
+
"aria-describedby": h,
|
|
45
|
+
"aria-invalid": f || void 0,
|
|
46
|
+
disabled: o.disabled,
|
|
47
|
+
style: z(d.value),
|
|
48
|
+
class: l(["hit-target relative inline-flex h-(--switch-h) w-(--switch-w) shrink-0 cursor-pointer rounded-full transition-colors duration-motion-fast ease-motion-standard focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-border-focus disabled:cursor-not-allowed disabled:opacity-45", e.value ? "bg-control-on" : "bg-fill-strong"]),
|
|
49
|
+
onClick: c
|
|
50
|
+
}, [
|
|
51
|
+
t("span", {
|
|
52
|
+
class: l(["pointer-events-none absolute left-0.5 top-0.5 size-[calc(var(--switch-h)-0.25rem)] rounded-full bg-white shadow-knob transition-transform duration-motion-normal ease-motion-standard", e.value ? "translate-x-[calc(var(--switch-w)-var(--switch-h))]" : ""])
|
|
53
|
+
}, null, 2),
|
|
54
|
+
t("span", P, B(e.value ? a(i)("core.form.yes") : a(i)("core.form.no")), 1)
|
|
55
|
+
], 14, I)
|
|
56
|
+
])
|
|
57
|
+
]),
|
|
58
|
+
_: 3
|
|
59
|
+
}, 16, ["value"]));
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
export {
|
|
63
|
+
Z as _
|
|
64
|
+
};
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import { defineComponent as B, useModel as M, useId as z, inject as K, useTemplateRef as I, computed as S, openBlock as o, createElementBlock as l, createElementVNode as f, Fragment as T, renderList as V, normalizeClass as r, unref as c, createTextVNode as j, toDisplayString as m, createCommentVNode as u, createBlock as h, renderSlot as R, mergeModels as D } from "vue";
|
|
2
|
+
import { routerKey as q, routeLocationKey as F } from "vue-router";
|
|
3
|
+
import { _ as y } from "./Icon.vue_vue_type_script_lang-D7oC-d-S.js";
|
|
4
|
+
import { u as G } from "./mediaQuery-CygcXmFW.js";
|
|
5
|
+
const H = ["aria-label"], P = ["aria-label"], J = ["id", "aria-selected", "tabindex", "aria-controls", "data-tab", "onClick", "onKeydown"], O = {
|
|
6
|
+
key: 0,
|
|
7
|
+
class: "text-footnote font-normal tabular-nums"
|
|
8
|
+
}, Q = ["aria-label"], U = ["aria-label"], W = ["id", "aria-selected", "tabindex", "aria-controls", "data-tab", "onClick", "onKeydown"], X = ["id", "aria-labelledby"], ne = /* @__PURE__ */ B({
|
|
9
|
+
__name: "Tabs",
|
|
10
|
+
props: /* @__PURE__ */ D({
|
|
11
|
+
tabs: {},
|
|
12
|
+
presentation: { default: "segmented" },
|
|
13
|
+
alignment: { default: "start" },
|
|
14
|
+
stretch: { type: Boolean, default: !1 },
|
|
15
|
+
label: { default: void 0 }
|
|
16
|
+
}, {
|
|
17
|
+
modelValue: {},
|
|
18
|
+
modelModifiers: {}
|
|
19
|
+
}),
|
|
20
|
+
emits: ["update:modelValue"],
|
|
21
|
+
setup(x) {
|
|
22
|
+
const t = x, w = M(x, "modelValue"), d = z(), k = K(q, null), E = K(F, null);
|
|
23
|
+
function _() {
|
|
24
|
+
if (!k) throw new Error("Tabs: a tab has `to`, but no router is installed in the app.");
|
|
25
|
+
return k;
|
|
26
|
+
}
|
|
27
|
+
const L = G(), p = I("list"), N = S(() => t.presentation === "scope" && L.value);
|
|
28
|
+
function a(n) {
|
|
29
|
+
return n.to !== void 0 ? _().resolve(n.to).name === E?.name : n.value === w.value;
|
|
30
|
+
}
|
|
31
|
+
const $ = S(() => t.tabs.find(a)), b = (n) => `${d}-tab-${String(n.value)}`;
|
|
32
|
+
function v(n) {
|
|
33
|
+
n.to !== void 0 ? _().push(n.to) : w.value = n.value;
|
|
34
|
+
}
|
|
35
|
+
function C(n, g) {
|
|
36
|
+
const e = t.tabs.length - 1, i = { ArrowRight: g + 1, ArrowLeft: g - 1, Home: 0, End: e }[n.key];
|
|
37
|
+
if (i === void 0) return;
|
|
38
|
+
n.preventDefault();
|
|
39
|
+
const s = t.tabs[(i + t.tabs.length) % t.tabs.length];
|
|
40
|
+
s && (v(s), p.value?.querySelector(`[data-tab="${String(s.value)}"]`)?.focus());
|
|
41
|
+
}
|
|
42
|
+
const A = { start: "justify-start", center: "justify-center", end: "justify-end" };
|
|
43
|
+
return (n, g) => (o(), l("div", null, [
|
|
44
|
+
N.value ? (o(), l("nav", {
|
|
45
|
+
key: 0,
|
|
46
|
+
ref_key: "list",
|
|
47
|
+
ref: p,
|
|
48
|
+
class: "-mx-1 overflow-x-auto overflow-y-hidden",
|
|
49
|
+
"aria-label": t.label
|
|
50
|
+
}, [
|
|
51
|
+
f("ul", {
|
|
52
|
+
class: "flex gap-2 p-1",
|
|
53
|
+
role: "tablist",
|
|
54
|
+
"aria-label": t.label
|
|
55
|
+
}, [
|
|
56
|
+
(o(!0), l(T, null, V(t.tabs, (e, i) => (o(), l("li", {
|
|
57
|
+
key: e.value,
|
|
58
|
+
role: "presentation",
|
|
59
|
+
class: "shrink-0"
|
|
60
|
+
}, [
|
|
61
|
+
f("button", {
|
|
62
|
+
id: b(e),
|
|
63
|
+
type: "button",
|
|
64
|
+
role: "tab",
|
|
65
|
+
"aria-selected": a(e),
|
|
66
|
+
tabindex: a(e) ? 0 : -1,
|
|
67
|
+
"aria-controls": `${c(d)}-panel`,
|
|
68
|
+
"data-tab": String(e.value),
|
|
69
|
+
class: r(["flex min-h-[2.125rem] cursor-pointer items-center gap-1.5 whitespace-nowrap rounded-full px-3.5 text-subheadline font-semibold transition-colors duration-motion-fast focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-border-focus", a(e) ? "bg-tint text-content-on-tint" : "bg-surface-cell text-content-strong shadow-group active:bg-fill"]),
|
|
70
|
+
onClick: (s) => v(e),
|
|
71
|
+
onKeydown: (s) => C(s, i)
|
|
72
|
+
}, [
|
|
73
|
+
j(m(e.shortLabel ?? e.label) + " ", 1),
|
|
74
|
+
e.badge ? (o(), l("span", O, m(e.badge), 1)) : u("", !0),
|
|
75
|
+
e.warning ? (o(), h(c(y), {
|
|
76
|
+
key: 1,
|
|
77
|
+
name: "alertTriangle",
|
|
78
|
+
size: 14,
|
|
79
|
+
label: e.warning
|
|
80
|
+
}, null, 8, ["label"])) : u("", !0)
|
|
81
|
+
], 42, J)
|
|
82
|
+
]))), 128))
|
|
83
|
+
], 8, P)
|
|
84
|
+
], 8, H)) : (o(), l("nav", {
|
|
85
|
+
key: 1,
|
|
86
|
+
ref_key: "list",
|
|
87
|
+
ref: p,
|
|
88
|
+
"aria-label": t.label,
|
|
89
|
+
class: r([
|
|
90
|
+
t.presentation === "scope" ? "" : "overflow-y-hidden overflow-x-auto whitespace-nowrap",
|
|
91
|
+
t.presentation === "plain" ? "" : "rounded-control bg-fill p-0.5"
|
|
92
|
+
])
|
|
93
|
+
}, [
|
|
94
|
+
f("ul", {
|
|
95
|
+
class: r(["flex gap-0.5", t.presentation === "scope" ? "flex-wrap whitespace-nowrap" : "", A[t.alignment]]),
|
|
96
|
+
role: "tablist",
|
|
97
|
+
"aria-label": t.label
|
|
98
|
+
}, [
|
|
99
|
+
(o(!0), l(T, null, V(t.tabs, (e, i) => (o(), l("li", {
|
|
100
|
+
key: e.value,
|
|
101
|
+
role: "presentation",
|
|
102
|
+
class: r({ "flex flex-1": t.stretch })
|
|
103
|
+
}, [
|
|
104
|
+
f("button", {
|
|
105
|
+
id: b(e),
|
|
106
|
+
type: "button",
|
|
107
|
+
role: "tab",
|
|
108
|
+
"aria-selected": a(e),
|
|
109
|
+
tabindex: a(e) ? 0 : -1,
|
|
110
|
+
"aria-controls": `${c(d)}-panel`,
|
|
111
|
+
"data-tab": String(e.value),
|
|
112
|
+
class: r([
|
|
113
|
+
"flex min-h-8 cursor-pointer items-center justify-center rounded-control px-3.5 py-1 text-subheadline transition-colors duration-motion-fast ease-motion-standard focus-visible:outline-2 focus-visible:outline-offset-1 focus-visible:outline-border-focus",
|
|
114
|
+
a(e) ? "bg-segment-selected font-semibold text-content-strong shadow-sm" : "font-medium text-content hover:text-content-strong",
|
|
115
|
+
t.stretch ? "flex-1" : ""
|
|
116
|
+
]),
|
|
117
|
+
onClick: (s) => v(e),
|
|
118
|
+
onKeydown: (s) => C(s, i)
|
|
119
|
+
}, [
|
|
120
|
+
e.icon ? (o(), h(c(y), {
|
|
121
|
+
key: 0,
|
|
122
|
+
name: e.icon,
|
|
123
|
+
class: r(["mr-2", a(e) ? "text-content-link" : ""])
|
|
124
|
+
}, null, 8, ["name", "class"])) : u("", !0),
|
|
125
|
+
j(" " + m(e.label) + " ", 1),
|
|
126
|
+
e.badge ? (o(), l("span", {
|
|
127
|
+
key: 1,
|
|
128
|
+
class: r(["ml-2 block min-w-[1.125rem] rounded-full px-1.5 text-center text-caption font-semibold tabular-nums", a(e) ? "bg-tint-soft text-content-link" : "bg-surface-cell text-content-muted"])
|
|
129
|
+
}, m(e.badge), 3)) : u("", !0),
|
|
130
|
+
e.warning ? (o(), h(c(y), {
|
|
131
|
+
key: 2,
|
|
132
|
+
name: "alertTriangle",
|
|
133
|
+
size: 16,
|
|
134
|
+
label: e.warning,
|
|
135
|
+
class: "ml-2 text-status-warning-content"
|
|
136
|
+
}, null, 8, ["label"])) : u("", !0)
|
|
137
|
+
], 42, W)
|
|
138
|
+
], 2))), 128))
|
|
139
|
+
], 10, U)
|
|
140
|
+
], 10, Q)),
|
|
141
|
+
n.$slots.default ? (o(), l("div", {
|
|
142
|
+
key: 2,
|
|
143
|
+
id: `${c(d)}-panel`,
|
|
144
|
+
role: "tabpanel",
|
|
145
|
+
"aria-labelledby": $.value ? b($.value) : void 0,
|
|
146
|
+
class: "mt-4"
|
|
147
|
+
}, [
|
|
148
|
+
R(n.$slots, "default")
|
|
149
|
+
], 8, X)) : u("", !0)
|
|
150
|
+
]));
|
|
151
|
+
}
|
|
152
|
+
});
|
|
153
|
+
export {
|
|
154
|
+
ne as _
|
|
155
|
+
};
|
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
import { defineComponent as H, useTemplateRef as P, computed as x, watch as Y, nextTick as Z, openBlock as n, createElementBlock as i, withModifiers as ee, normalizeStyle as te, unref as s, createElementVNode as m, toDisplayString as r, createCommentVNode as d, Fragment as E, renderList as oe, normalizeClass as q, createBlock as z, createTextVNode as F, useModel as se, ref as ne, mergeProps as ae, withCtx as ie, withDirectives as le, vModelDynamic as re, mergeModels as I, mergeDefaults as ce } from "vue";
|
|
2
|
+
import { useI18n as K } from "vue-i18n";
|
|
3
|
+
import { b as ue } from "./controlSurface-t7OEFESJ.js";
|
|
4
|
+
import { a as de, c as pe, _ as me, f as fe, b as he } from "./control-7EP4tjYy.js";
|
|
5
|
+
import { _ as ve } from "./Icon.vue_vue_type_script_lang-D7oC-d-S.js";
|
|
6
|
+
import { u as ge } from "./anchored-Cj4--8dT.js";
|
|
7
|
+
import { l as O, m as xe, u as ye, c as be } from "./suggestions-BxMm6MQA.js";
|
|
8
|
+
const _e = ["id", "aria-busy"], ke = { class: "min-h-0 flex-1 overflow-y-auto p-1.5" }, we = {
|
|
9
|
+
key: 0,
|
|
10
|
+
class: "px-2.5 pb-1 pt-1.5 text-caption font-semibold uppercase text-content-disabled",
|
|
11
|
+
role: "presentation"
|
|
12
|
+
}, $e = ["id", "aria-selected", "aria-disabled", "onMouseenter", "onClick"], Me = { class: "min-w-0 flex-1" }, qe = { class: "block truncate text-body text-content-strong" }, Le = {
|
|
13
|
+
key: 0,
|
|
14
|
+
class: "font-semibold"
|
|
15
|
+
}, Be = {
|
|
16
|
+
key: 0,
|
|
17
|
+
class: "block truncate text-footnote text-content-muted"
|
|
18
|
+
}, Ce = {
|
|
19
|
+
key: 2,
|
|
20
|
+
class: "px-3 py-2 text-footnote text-content-muted",
|
|
21
|
+
role: "status"
|
|
22
|
+
}, Se = {
|
|
23
|
+
key: 3,
|
|
24
|
+
class: "px-3 py-2 text-footnote text-content-destructive",
|
|
25
|
+
role: "alert"
|
|
26
|
+
}, De = {
|
|
27
|
+
key: 4,
|
|
28
|
+
class: "px-3 py-2 text-footnote text-content-muted"
|
|
29
|
+
}, Ve = {
|
|
30
|
+
key: 0,
|
|
31
|
+
class: "mx-1.5 mb-1.5 mt-0.5 border-t border-border-separator px-2.5 pb-0.5 pt-2 text-caption text-content-muted compact:hidden",
|
|
32
|
+
"aria-hidden": "true"
|
|
33
|
+
}, Ee = /* @__PURE__ */ H({
|
|
34
|
+
__name: "SuggestionList",
|
|
35
|
+
props: {
|
|
36
|
+
id: {},
|
|
37
|
+
anchor: {},
|
|
38
|
+
open: { type: Boolean },
|
|
39
|
+
items: {},
|
|
40
|
+
highlighted: {},
|
|
41
|
+
query: {},
|
|
42
|
+
status: {},
|
|
43
|
+
recent: { type: Boolean },
|
|
44
|
+
emptyMessage: { type: Boolean },
|
|
45
|
+
hint: {}
|
|
46
|
+
},
|
|
47
|
+
emits: ["pick", "hover"],
|
|
48
|
+
setup(w, { emit: L }) {
|
|
49
|
+
const o = w, t = L, { t: c } = K(), b = P("panel"), _ = x(() => O(o.open, o.items.length, o.status, o.emptyMessage)), k = x(() => o.status === "loading"), f = (h) => xe(h.label, o.query), { style: B } = ge(b, {
|
|
50
|
+
reference: () => o.anchor,
|
|
51
|
+
placement: () => "bottom-start",
|
|
52
|
+
offset: 4,
|
|
53
|
+
padding: 8,
|
|
54
|
+
fit: (h, v) => {
|
|
55
|
+
h.style.width = `${o.anchor?.offsetWidth ?? 0}px`, h.style.maxHeight = `${Math.max(120, Math.min(320, v.height))}px`;
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
return Y(() => o.highlighted, () => void Z(() => b.value?.querySelector("[aria-selected='true']")?.scrollIntoView?.({ block: "nearest" }))), (h, v) => _.value ? (n(), i("div", {
|
|
59
|
+
key: 0,
|
|
60
|
+
id: `${o.id}-list`,
|
|
61
|
+
ref_key: "panel",
|
|
62
|
+
ref: b,
|
|
63
|
+
role: "listbox",
|
|
64
|
+
"aria-busy": k.value || void 0,
|
|
65
|
+
style: te(s(B)),
|
|
66
|
+
"data-test": "suggestion-list",
|
|
67
|
+
class: "z-1000 flex flex-col overflow-hidden rounded-menu bg-surface-overlay shadow-float",
|
|
68
|
+
onMousedown: v[0] || (v[0] = ee(() => {
|
|
69
|
+
}, ["prevent"]))
|
|
70
|
+
}, [
|
|
71
|
+
m("div", ke, [
|
|
72
|
+
o.recent ? (n(), i("p", we, r(s(c)("core.form.suggestions.recent")), 1)) : d("", !0),
|
|
73
|
+
o.items.length > 0 ? (n(!0), i(E, { key: 1 }, oe(o.items, (a, g) => (n(), i("div", {
|
|
74
|
+
id: `${o.id}-option-${g}`,
|
|
75
|
+
key: String(a.value),
|
|
76
|
+
role: "option",
|
|
77
|
+
"aria-selected": g === o.highlighted,
|
|
78
|
+
"aria-disabled": a.disabled || void 0,
|
|
79
|
+
"data-test": "suggestion-option",
|
|
80
|
+
class: q(["flex cursor-pointer items-center gap-2.5 rounded-control px-2.5 py-2", [g === o.highlighted ? "bg-tint-soft" : "hover:bg-fill", a.disabled ? "cursor-not-allowed opacity-45" : "", k.value ? "opacity-60" : ""]]),
|
|
81
|
+
onMouseenter: (l) => t("hover", g),
|
|
82
|
+
onClick: (l) => !a.disabled && t("pick", a)
|
|
83
|
+
}, [
|
|
84
|
+
o.recent ? (n(), z(s(ve), {
|
|
85
|
+
key: 0,
|
|
86
|
+
name: "history",
|
|
87
|
+
size: 16,
|
|
88
|
+
class: "shrink-0 text-content-disabled"
|
|
89
|
+
})) : d("", !0),
|
|
90
|
+
m("span", Me, [
|
|
91
|
+
m("span", qe, [
|
|
92
|
+
o.recent ? (n(), i(E, { key: 0 }, [
|
|
93
|
+
F(r(a.label), 1)
|
|
94
|
+
], 64)) : (n(), i(E, { key: 1 }, [
|
|
95
|
+
F(r(f(a).before), 1),
|
|
96
|
+
f(a).match ? (n(), i("strong", Le, r(f(a).match), 1)) : d("", !0),
|
|
97
|
+
F(r(f(a).after), 1)
|
|
98
|
+
], 64))
|
|
99
|
+
]),
|
|
100
|
+
a.description ? (n(), i("span", Be, r(a.description), 1)) : d("", !0)
|
|
101
|
+
])
|
|
102
|
+
], 42, $e))), 128)) : o.status === "loading" ? (n(), i("p", Ce, r(s(c)("core.form.select.loading")), 1)) : o.status === "failed" ? (n(), i("p", Se, r(s(c)("core.form.select.failed")), 1)) : (n(), i("p", De, r(s(c)("core.form.select.no_matches")), 1))
|
|
103
|
+
]),
|
|
104
|
+
o.hint && o.items.length > 0 ? (n(), i("p", Ve, r(o.hint), 1)) : d("", !0)
|
|
105
|
+
], 44, _e)) : d("", !0);
|
|
106
|
+
}
|
|
107
|
+
}), Fe = {
|
|
108
|
+
key: 0,
|
|
109
|
+
class: "shrink-0 text-footnote text-content-muted"
|
|
110
|
+
}, Pe = { class: "relative min-w-0 flex-1" }, ze = ["id", "type", "name", "placeholder", "maxlength", "autocomplete", "disabled", "required", "aria-required", "aria-invalid", "aria-describedby", "role", "aria-autocomplete", "aria-expanded", "aria-controls", "aria-activedescendant"], Ae = { class: "invisible" }, Ne = { class: "text-content-disabled" }, Re = {
|
|
111
|
+
key: 1,
|
|
112
|
+
class: "shrink-0 text-footnote text-content-muted"
|
|
113
|
+
}, Ue = /* @__PURE__ */ H({
|
|
114
|
+
__name: "TextField",
|
|
115
|
+
props: /* @__PURE__ */ I(/* @__PURE__ */ ce({
|
|
116
|
+
label: {},
|
|
117
|
+
hint: {},
|
|
118
|
+
error: {},
|
|
119
|
+
required: { type: Boolean },
|
|
120
|
+
editable: { type: Boolean },
|
|
121
|
+
disabled: { type: Boolean },
|
|
122
|
+
lockedReason: {},
|
|
123
|
+
presentation: {},
|
|
124
|
+
name: {},
|
|
125
|
+
type: {},
|
|
126
|
+
placeholder: {},
|
|
127
|
+
maxLength: {},
|
|
128
|
+
autocomplete: {},
|
|
129
|
+
mono: { type: Boolean },
|
|
130
|
+
prefix: {},
|
|
131
|
+
suffix: {},
|
|
132
|
+
width: {},
|
|
133
|
+
suggestions: { type: [Array, Function] },
|
|
134
|
+
suggestionsMinLength: {},
|
|
135
|
+
suggestionsDebounce: {},
|
|
136
|
+
suggestionsLimit: {},
|
|
137
|
+
recents: {}
|
|
138
|
+
}, {
|
|
139
|
+
...he,
|
|
140
|
+
type: "text",
|
|
141
|
+
placeholder: void 0,
|
|
142
|
+
maxLength: void 0,
|
|
143
|
+
autocomplete: void 0,
|
|
144
|
+
mono: !1,
|
|
145
|
+
prefix: void 0,
|
|
146
|
+
suffix: void 0,
|
|
147
|
+
width: "md",
|
|
148
|
+
suggestions: void 0,
|
|
149
|
+
suggestionsMinLength: 2,
|
|
150
|
+
suggestionsDebounce: 300,
|
|
151
|
+
suggestionsLimit: 8,
|
|
152
|
+
recents: void 0
|
|
153
|
+
}), {
|
|
154
|
+
modelValue: { default: "" },
|
|
155
|
+
modelModifiers: {}
|
|
156
|
+
}),
|
|
157
|
+
emits: /* @__PURE__ */ I(["picked"], ["update:modelValue"]),
|
|
158
|
+
setup(w, { expose: L, emit: o }) {
|
|
159
|
+
const t = w, c = se(w, "modelValue"), b = o, _ = P("input"), k = P("anchor"), f = !!de(), B = pe("text", () => t.error ? "error" : t.disabled ? "locked" : "rest"), h = x(() => f ? ue(t.width) : "w-full"), { t: v } = K(), a = (e) => typeof e == "string" ? { value: e, label: e } : { value: e.text, label: e.text, ...e.detail !== void 0 ? { description: e.detail } : {} }, g = x(() => {
|
|
160
|
+
const e = t.suggestions;
|
|
161
|
+
if (e)
|
|
162
|
+
return typeof e == "function" ? async (p, y) => (await e(p, y)).map(a) : e.map(a);
|
|
163
|
+
}), l = x(() => g.value !== void 0), u = ye({
|
|
164
|
+
source: () => g.value,
|
|
165
|
+
minLength: () => t.suggestionsMinLength,
|
|
166
|
+
debounce: () => t.suggestionsDebounce,
|
|
167
|
+
limit: () => t.suggestionsLimit,
|
|
168
|
+
listAllWhenEmpty: !1,
|
|
169
|
+
recents: () => t.recents
|
|
170
|
+
}), { items: C, open: S, status: A, highlighted: N, showingRecent: R } = u, T = ne(!0), D = () => {
|
|
171
|
+
const e = _.value;
|
|
172
|
+
T.value = !e || e.selectionStart === e.value.length && e.selectionEnd === e.value.length;
|
|
173
|
+
}, $ = x(() => l.value && S.value && !R.value && T.value && u.current.value ? be(c.value, u.current.value.label) : ""), W = x(() => O(S.value, C.value.length, A.value, !1));
|
|
174
|
+
function G(e) {
|
|
175
|
+
D(), l.value && u.ask(e.target.value);
|
|
176
|
+
}
|
|
177
|
+
function V(e) {
|
|
178
|
+
c.value = e.value, u.remember(e), u.close(), b("picked", { text: e.value, ...e.description !== void 0 ? { detail: e.description } : {} });
|
|
179
|
+
}
|
|
180
|
+
function U() {
|
|
181
|
+
l.value && c.value === "" && u.show("");
|
|
182
|
+
}
|
|
183
|
+
function j() {
|
|
184
|
+
const e = u.current.value;
|
|
185
|
+
return !$.value || !e ? !1 : (V(e), !0);
|
|
186
|
+
}
|
|
187
|
+
const J = (e) => {
|
|
188
|
+
l.value && u.keydown(e, { pick: V, enterNeedsMove: !0, complete: j });
|
|
189
|
+
};
|
|
190
|
+
return L({ focus: () => _.value?.focus() }), (e, p) => (n(), z(me, ae(s(fe)(t), {
|
|
191
|
+
value: c.value,
|
|
192
|
+
prefix: t.prefix,
|
|
193
|
+
suffix: t.suffix,
|
|
194
|
+
"value-style": t.mono ? "mono" : void 0
|
|
195
|
+
}), {
|
|
196
|
+
default: ie(({ id: y, describedby: Q, invalid: X }) => [
|
|
197
|
+
m("div", {
|
|
198
|
+
ref_key: "anchor",
|
|
199
|
+
ref: k,
|
|
200
|
+
class: q(["flex items-center gap-1.5", [s(B), h.value]])
|
|
201
|
+
}, [
|
|
202
|
+
t.prefix ? (n(), i("span", Fe, r(t.prefix), 1)) : d("", !0),
|
|
203
|
+
m("div", Pe, [
|
|
204
|
+
le(m("input", {
|
|
205
|
+
id: y,
|
|
206
|
+
ref_key: "input",
|
|
207
|
+
ref: _,
|
|
208
|
+
"onUpdate:modelValue": p[0] || (p[0] = (M) => c.value = M),
|
|
209
|
+
type: t.type,
|
|
210
|
+
name: t.name,
|
|
211
|
+
placeholder: t.placeholder,
|
|
212
|
+
maxlength: t.maxLength,
|
|
213
|
+
autocomplete: l.value ? "off" : t.autocomplete,
|
|
214
|
+
disabled: t.disabled,
|
|
215
|
+
required: t.required,
|
|
216
|
+
"aria-required": t.required || void 0,
|
|
217
|
+
"aria-invalid": X || void 0,
|
|
218
|
+
"aria-describedby": Q,
|
|
219
|
+
role: l.value ? "combobox" : void 0,
|
|
220
|
+
"aria-autocomplete": l.value ? "both" : void 0,
|
|
221
|
+
"aria-expanded": l.value ? W.value : void 0,
|
|
222
|
+
"aria-controls": l.value ? `${y}-list` : void 0,
|
|
223
|
+
"aria-activedescendant": l.value && W.value && s(C).length > 0 ? `${y}-option-${s(N)}` : void 0,
|
|
224
|
+
class: q(["block w-full min-w-0 border-0 bg-transparent px-0 py-1 text-body text-content-strong placeholder:text-content-disabled focus:outline-none focus:ring-0 disabled:cursor-not-allowed", [t.mono ? "font-mono" : "", f && !l.value ? "compact:text-right" : ""]]),
|
|
225
|
+
onInput: G,
|
|
226
|
+
onKeyup: D,
|
|
227
|
+
onClick: D,
|
|
228
|
+
onKeydown: J,
|
|
229
|
+
onFocus: U,
|
|
230
|
+
onBlur: p[1] || (p[1] = (M) => s(u).close())
|
|
231
|
+
}, null, 42, ze), [
|
|
232
|
+
[re, c.value]
|
|
233
|
+
]),
|
|
234
|
+
$.value ? (n(), i("span", {
|
|
235
|
+
key: 0,
|
|
236
|
+
"aria-hidden": "true",
|
|
237
|
+
class: q(["pointer-events-none absolute inset-0 flex items-center overflow-hidden whitespace-pre py-1 text-body", t.mono ? "font-mono" : ""]),
|
|
238
|
+
"data-test": "completion"
|
|
239
|
+
}, [
|
|
240
|
+
m("span", Ae, r(c.value), 1),
|
|
241
|
+
m("span", Ne, r($.value), 1)
|
|
242
|
+
], 2)) : d("", !0)
|
|
243
|
+
]),
|
|
244
|
+
t.suffix ? (n(), i("span", Re, r(t.suffix), 1)) : d("", !0)
|
|
245
|
+
], 2),
|
|
246
|
+
l.value ? (n(), z(Ee, {
|
|
247
|
+
key: 0,
|
|
248
|
+
id: y,
|
|
249
|
+
anchor: k.value,
|
|
250
|
+
open: s(S),
|
|
251
|
+
items: s(C),
|
|
252
|
+
highlighted: s(N),
|
|
253
|
+
query: c.value,
|
|
254
|
+
status: s(A),
|
|
255
|
+
recent: s(R),
|
|
256
|
+
"empty-message": !1,
|
|
257
|
+
hint: $.value ? s(v)("core.form.suggestions.keys_complete") : s(v)("core.form.suggestions.keys_pick"),
|
|
258
|
+
onPick: V,
|
|
259
|
+
onHover: p[2] || (p[2] = (M) => s(u).highlight(M))
|
|
260
|
+
}, null, 8, ["id", "anchor", "open", "items", "highlighted", "query", "status", "recent", "hint"])) : d("", !0)
|
|
261
|
+
]),
|
|
262
|
+
_: 1
|
|
263
|
+
}, 16, ["value", "prefix", "suffix", "value-style"]));
|
|
264
|
+
}
|
|
265
|
+
});
|
|
266
|
+
export {
|
|
267
|
+
Ue as _,
|
|
268
|
+
Ee as a
|
|
269
|
+
};
|