@wssto2/vue-core 0.9.4 → 0.11.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 (169) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/dist/ActionRow.vue_vue_type_script_setup_true_lang-DybAIOHS.js +64 -0
  3. package/dist/Activity-CdkJW68R.js +169 -0
  4. package/dist/{AdaptivePageShell.vue_vue_type_script_setup_true_lang-DdJOodn8.js → AdaptivePageShell.vue_vue_type_script_setup_true_lang-D5i77H6S.js} +147 -159
  5. package/dist/{AsyncSection.vue_vue_type_script_setup_true_lang-BdeOKqz_.js → AsyncSection.vue_vue_type_script_setup_true_lang-DGzQ-Snp.js} +1 -1
  6. package/dist/BottomDockPortal.vue_vue_type_script_setup_true_lang-DmwR-2SP.js +17 -0
  7. package/dist/Button.vue_vue_type_script_setup_true_lang-C74hcb0N.js +123 -0
  8. package/dist/Changes-DxK_QfiB.js +69 -0
  9. package/dist/{CollectionPage.vue_vue_type_script_setup_true_lang-DHcekGNn.js → CollectionPage.vue_vue_type_script_setup_true_lang-x0jyJ01f.js} +19 -18
  10. package/dist/{DataTable.vue_vue_type_script_setup_true_lang-8kBsNRuq.js → DataTable.vue_vue_type_script_setup_true_lang-C_ZytnW-.js} +1 -1
  11. package/dist/{DateField.vue_vue_type_script_setup_true_lang-BhKdCVFn.js → DateField.vue_vue_type_script_setup_true_lang-CeNwBbJT.js} +1 -1
  12. package/dist/{DeadLetters-Bb5pPlOY.js → DeadLetters-DnA7LP1w.js} +5 -6
  13. package/dist/DrawnCheck.vue_vue_type_script_setup_true_lang-9DzDJlIA.js +38 -0
  14. package/dist/FormGroup.vue_vue_type_script_setup_true_lang-D6jYfNjW.js +427 -0
  15. package/dist/{FormView.vue_vue_type_script_setup_true_lang-aaNnMIOi.js → FormView.vue_vue_type_script_setup_true_lang-DvbPEiNQ.js} +2 -2
  16. package/dist/{General-BAG7S6wV.js → General-2matxl2Y.js} +23 -24
  17. package/dist/Highlight.vue_vue_type_script_setup_true_lang-DZGBmwcX.js +29 -0
  18. package/dist/{IncidentRecord-D8aOpNHo.js → IncidentRecord-Bt3G4HlX.js} +14 -15
  19. package/dist/{IncidentsList-C0cFl0Db.js → IncidentsList-2iwgqp9J.js} +3 -3
  20. package/dist/{Modal.vue_vue_type_script_setup_true_lang-BlHhdmMy.js → Modal.vue_vue_type_script_setup_true_lang-DDS0iEnn.js} +9 -8
  21. package/dist/{NewRolePage-C6Iu-EQJ.js → NewRolePage-DhGFwvk3.js} +4 -4
  22. package/dist/{NumberField.vue_vue_type_script_setup_true_lang-TGGAq8J-.js → NumberField.vue_vue_type_script_setup_true_lang-B3UrXNqH.js} +1 -1
  23. package/dist/{PersonAccess.vue_vue_type_script_setup_true_lang-qz1tmYpF.js → PersonAccess.vue_vue_type_script_setup_true_lang-DbGZSNQc.js} +56 -56
  24. package/dist/ProfilePage-CpuyDBAv.js +685 -0
  25. package/dist/ProgressTrack.vue_vue_type_script_setup_true_lang-DrOm8k--.js +30 -0
  26. package/dist/{RecordHeader.vue_vue_type_script_setup_true_lang-B9mN7UxZ.js → RecordHeader.vue_vue_type_script_setup_true_lang-DqGc3Jyo.js} +1 -1
  27. package/dist/{ResourcePage.vue_vue_type_script_setup_true_lang-Cw8mGf_B.js → ResourcePage.vue_vue_type_script_setup_true_lang-DljhsTU4.js} +3 -3
  28. package/dist/{RoleEditor.vue_vue_type_script_setup_true_lang-CJPvOVDV.js → RoleEditor.vue_vue_type_script_setup_true_lang-C0FIotFA.js} +11 -12
  29. package/dist/{RolePage-Dj_ocMnM.js → RolePage-DaNv049g.js} +10 -10
  30. package/dist/{RolesPage-PXrs4O-1.js → RolesPage-6hlzJes_.js} +6 -6
  31. package/dist/SearchInput.vue_vue_type_script_setup_true_lang-w4eAqyZ9.js +32 -0
  32. package/dist/{SectionList.vue_vue_type_script_setup_true_lang-CtdF1zuv.js → SectionList.vue_vue_type_script_setup_true_lang-DR0_NsqC.js} +1 -1
  33. package/dist/{SectionNavigator.vue_vue_type_script_setup_true_lang-B5ove3rM.js → SectionNavigator.vue_vue_type_script_setup_true_lang-Dh3sXUt_.js} +2 -2
  34. package/dist/{SegmentedField.vue_vue_type_script_setup_true_lang-ChfDFAA2.js → SegmentedField.vue_vue_type_script_setup_true_lang-zv_AxpBn.js} +1 -1
  35. package/dist/{SelectField.vue_vue_type_script_setup_true_lang-BP8nAQwo.js → SelectField.vue_vue_type_script_setup_true_lang-BZwdANL3.js} +3 -3
  36. package/dist/{ServiceAccountDialog.vue_vue_type_script_setup_true_lang-aWkKwxNe.js → ServiceAccountDialog.vue_vue_type_script_setup_true_lang-FJbWxME_.js} +20 -20
  37. package/dist/{ServiceAccountRecord-bxX9yQkC.js → ServiceAccountRecord-0-JF5lRx.js} +24 -24
  38. package/dist/{ServiceAccountsList-BXE6htxk.js → ServiceAccountsList-DcsnOcf-.js} +32 -32
  39. package/dist/{Sessions--Gvc0kxw.js → Sessions-DgWhpk-i.js} +23 -24
  40. package/dist/{SettingsPage-DzDC7gD-.js → SettingsPage-BXPWATYU.js} +28 -30
  41. package/dist/{SignIn-CTI_699e.js → SignIn-DPoUwHZd.js} +9 -10
  42. package/dist/{SignInPage-HKC1bm2E.js → SignInPage-OyrVemro.js} +4 -4
  43. package/dist/SignIns-BMDrZVVp.js +64 -0
  44. package/dist/StatusLine.vue_vue_type_script_setup_true_lang-DsdQmLq6.js +56 -0
  45. package/dist/{SwitchField.vue_vue_type_script_setup_true_lang-BMA2YXTZ.js → SwitchField.vue_vue_type_script_setup_true_lang-Ds4q0bbl.js} +1 -1
  46. package/dist/{TextField.vue_vue_type_script_setup_true_lang-BFVsqcBX.js → TextField.vue_vue_type_script_setup_true_lang-CWIeeZRE.js} +2 -2
  47. package/dist/{TextareaField.vue_vue_type_script_setup_true_lang-Dyh4Hhyl.js → TextareaField.vue_vue_type_script_setup_true_lang-D2j4s96s.js} +1 -1
  48. package/dist/{TimeField.vue_vue_type_script_setup_true_lang-gGFfQLuK.js → TimeField.vue_vue_type_script_setup_true_lang-D-Em4glH.js} +1 -1
  49. package/dist/UserRecord-BW-gdCqi.js +202 -0
  50. package/dist/UsersList-B3ZF_1Dj.js +74 -0
  51. package/dist/access/index.js +4 -4
  52. package/dist/app/index.d.ts +1 -0
  53. package/dist/app/index.js +11 -10
  54. package/dist/app/languages.d.ts +8 -0
  55. package/dist/{application-BmXW6iW_.js → application-CuzT-0vW.js} +1 -1
  56. package/dist/button/index.js +6 -5
  57. package/dist/collection/Highlight.vue.d.ts +12 -0
  58. package/dist/collection/PickerModal.vue.d.ts +26 -0
  59. package/dist/collection/definition.d.ts +6 -6
  60. package/dist/collection/http.d.ts +6 -6
  61. package/dist/collection/index.d.ts +6 -1
  62. package/dist/collection/index.js +145 -85
  63. package/dist/collection/picker.d.ts +39 -0
  64. package/dist/collection/types.d.ts +9 -4
  65. package/dist/collection/useCollection.d.ts +5 -5
  66. package/dist/content/ActivityStream.vue.d.ts +62 -0
  67. package/dist/content/CommentThread.vue.d.ts +52 -0
  68. package/dist/content/Composer.vue.d.ts +36 -0
  69. package/dist/content/index.d.ts +3 -0
  70. package/dist/content/index.js +321 -56
  71. package/dist/controls/index.js +28 -54
  72. package/dist/form/index.js +132 -134
  73. package/dist/format/index.d.ts +1 -0
  74. package/dist/format/index.js +10 -6
  75. package/dist/format/slug.d.ts +8 -0
  76. package/dist/http-Dm0uXY9O.js +95 -0
  77. package/dist/i18n/index.d.ts +15 -0
  78. package/dist/i18n/index.js +89 -63
  79. package/dist/i18n/plural.d.ts +23 -0
  80. package/dist/i18n/serverMessages.d.ts +16 -0
  81. package/dist/identity/embed.d.ts +39 -0
  82. package/dist/identity/index.d.ts +22 -1
  83. package/dist/identity/index.js +40 -21
  84. package/dist/identity/session.d.ts +9 -1
  85. package/dist/identity/shared/ChangeFeed.vue.d.ts +6 -3
  86. package/dist/identity/users/context.d.ts +11 -0
  87. package/dist/identity/users/dialogs.d.ts +10 -0
  88. package/dist/identity/users/ext.d.ts +8 -0
  89. package/dist/identity/users/feature.d.ts +22 -1
  90. package/dist/identity/users/list.d.ts +12 -1
  91. package/dist/identity/users/personSections.d.ts +15 -6
  92. package/dist/identity/users/replace.d.ts +45 -0
  93. package/dist/identity/users/words.d.ts +28 -0
  94. package/dist/incidents/api.d.ts +1 -1
  95. package/dist/incidents/index.js +1 -1
  96. package/dist/{index-Dz0LkLM8.js → index-ClJeyW3F.js} +4 -4
  97. package/dist/index-Cq9TuOqH.js +1264 -0
  98. package/dist/{index-Dm-sdJJr.js → index-kEHY7hcG.js} +31 -32
  99. package/dist/index.d.ts +1 -1
  100. package/dist/index.js +1 -1
  101. package/dist/keepAlive-ClGnsIzT.js +55 -0
  102. package/dist/modal/index.js +3 -3
  103. package/dist/modules/identity/entities.d.ts +7 -0
  104. package/dist/modules/identity/routes.d.ts +8 -4
  105. package/dist/modules/identity/schemas.d.ts +16 -0
  106. package/dist/{neighbors-DVfU9T0o.js → neighbors-OyvGi233.js} +2 -2
  107. package/dist/notifications/deadletters/list.d.ts +1 -1
  108. package/dist/notifications/index.js +1 -1
  109. package/dist/{options-QuOkMKVZ.js → options-B48UiYsG.js} +2 -2
  110. package/dist/page/index.js +11 -11
  111. package/dist/phone/index.js +1 -1
  112. package/dist/pwa/AndroidInstallBanner.vue.d.ts +18 -0
  113. package/dist/pwa/InstallQrSheet.vue.d.ts +21 -0
  114. package/dist/pwa/IosInstallGuide.vue.d.ts +19 -0
  115. package/dist/pwa/QrCode.vue.d.ts +16 -0
  116. package/dist/pwa/index.d.ts +4 -0
  117. package/dist/pwa/index.js +244 -24
  118. package/dist/resource/index.js +1 -1
  119. package/dist/rowLayout-BsKEzEME.js +650 -0
  120. package/dist/shell/DarkModeRow.vue.d.ts +15 -0
  121. package/dist/shell/OfflineNotice.vue.d.ts +2 -0
  122. package/dist/shell/QuickSearchButton.vue.d.ts +2 -0
  123. package/dist/shell/QuickSearchPalette.vue.d.ts +12 -0
  124. package/dist/shell/darkMode.d.ts +26 -0
  125. package/dist/shell/index.d.ts +10 -0
  126. package/dist/shell/index.js +954 -579
  127. package/dist/shell/offlineNotice.d.ts +3 -0
  128. package/dist/shell/quickSearch.d.ts +14 -0
  129. package/dist/shell/quickSearchControl.d.ts +69 -0
  130. package/dist/shortcut-DUR6yPWA.js +93 -0
  131. package/dist/state/BackgroundTaskCapsule.vue.d.ts +18 -0
  132. package/dist/state/backgroundTasks.d.ts +58 -0
  133. package/dist/state/index.d.ts +4 -0
  134. package/dist/state/index.js +194 -80
  135. package/dist/state/useCountUp.d.ts +9 -0
  136. package/dist/styles.css +1 -1
  137. package/dist/{suggestions-BVQhoXzS.js → suggestions-q_v3M7G6.js} +1 -1
  138. package/dist/testing/collection.d.ts +1 -1
  139. package/dist/{useCommand-Dc8Lgs9h.js → useCommand-Ch_nx1AQ.js} +4 -4
  140. package/dist/{useGroupSheet-DQ6cVG-z.js → useGroupSheet-CPjHydQV.js} +14 -15
  141. package/dist/{useRecordDialog-BTsbHY38.js → useRecordDialog-DdkauXnU.js} +1 -1
  142. package/dist/{useResourceForm-DJ4Q75pq.js → useResourceForm-Dl6YFYyz.js} +1 -1
  143. package/package.json +3 -2
  144. package/dist/ActionRow.vue_vue_type_script_setup_true_lang-Cg1lhpcA.js +0 -45
  145. package/dist/Activity-29hsZ28j.js +0 -156
  146. package/dist/Button.vue_vue_type_script_setup_true_lang-Dp7OB-eF.js +0 -192
  147. package/dist/Changes-Dxjdkd_5.js +0 -129
  148. package/dist/FormErrors.vue_vue_type_script_setup_true_lang-CIggKPtq.js +0 -295
  149. package/dist/FormGroup.vue_vue_type_script_setup_true_lang-B37dixvJ.js +0 -137
  150. package/dist/PageBar.vue_vue_type_script_setup_true_lang-qI94fjJv.js +0 -47
  151. package/dist/ProfilePage-BnohZIEg.js +0 -764
  152. package/dist/ProgressTrack.vue_vue_type_script_setup_true_lang-B6Prw9hi.js +0 -64
  153. package/dist/SectionIntro.vue_vue_type_script_setup_true_lang-CZtPrmXD.js +0 -23
  154. package/dist/SessionList.vue_vue_type_script_setup_true_lang-Cnyt5V8T.js +0 -133
  155. package/dist/SignIns-BcqBgWgN.js +0 -121
  156. package/dist/UserRecord-CtUPpbCt.js +0 -267
  157. package/dist/UsersList-BMkIgIg8.js +0 -155
  158. package/dist/definition-C7QuyV3i.js +0 -54
  159. package/dist/http-nz92KjdS.js +0 -42
  160. package/dist/identity/fieldMessages.d.ts +0 -15
  161. package/dist/identity/users/languages.d.ts +0 -4
  162. package/dist/index-CdtofdcJ.js +0 -501
  163. package/dist/keepAlive-z3IRFkQq.js +0 -46
  164. package/dist/languages-BShG9LpE.js +0 -10
  165. package/dist/rowLayout-CT8vWYgI.js +0 -663
  166. package/dist/signInEvents-DWShrJox.js +0 -30
  167. package/dist/status-BRA14qwX.js +0 -34
  168. package/dist/useWaitStatus-fsacMl4W.js +0 -24
  169. /package/dist/{fieldMessages-B6GHgi40.js → serverMessages-B6GHgi40.js} +0 -0
@@ -3,18 +3,17 @@ import { d as V, p as U } from "./feature-DdUAfyi4.js";
3
3
  import { defineComponent as A, computed as O, onMounted as L, watch as B, openBlock as S, createBlock as y, unref as e, withCtx as I, createElementVNode as X, createVNode as c, mergeProps as d, createCommentVNode as R, ref as F } from "vue";
4
4
  import { d as j } from "./context-Ch1r4fdN.js";
5
5
  import { useI18n as P } from "vue-i18n";
6
- import { _ as N } from "./FormGroup.vue_vue_type_script_setup_true_lang-B37dixvJ.js";
7
- import { _ as G } from "./SelectField.vue_vue_type_script_setup_true_lang-BP8nAQwo.js";
8
- import { _ as g } from "./TextareaField.vue_vue_type_script_setup_true_lang-Dyh4Hhyl.js";
9
- import { _ as E } from "./TextField.vue_vue_type_script_setup_true_lang-BFVsqcBX.js";
10
- import { u as K, _ as z } from "./useCommand-Dc8Lgs9h.js";
6
+ import { a as N } from "./FormGroup.vue_vue_type_script_setup_true_lang-D6jYfNjW.js";
7
+ import { _ as G } from "./SelectField.vue_vue_type_script_setup_true_lang-BZwdANL3.js";
8
+ import { _ as g } from "./TextareaField.vue_vue_type_script_setup_true_lang-D2j4s96s.js";
9
+ import { _ as E } from "./TextField.vue_vue_type_script_setup_true_lang-CWIeeZRE.js";
10
+ import { u as K, _ as z } from "./useCommand-Ch_nx1AQ.js";
11
11
  import { t as H } from "./toast-CqSDTWRX.js";
12
12
  import { u as k } from "./platform-BQOX_Ntw.js";
13
- import { d as Q } from "./definition-C7QuyV3i.js";
14
- import { r as W, l as Y } from "./http-nz92KjdS.js";
13
+ import { d as Q, r as W, l as Y } from "./http-Dm0uXY9O.js";
15
14
  import { _ as J } from "./AccountMenuItem.vue_vue_type_script_setup_true_lang-BIYgaihv.js";
16
15
  import { d as Z } from "./defineRoutes-BGAdiIrt.js";
17
- import { d as ee } from "./application-BmXW6iW_.js";
16
+ import { d as ee } from "./application-CuzT-0vW.js";
18
17
  import { R as te } from "./client-Dg303Pmc.js";
19
18
  import { a as ne } from "./error-CD7x0Jrz.js";
20
19
  const v = {
@@ -25,8 +24,8 @@ const v = {
25
24
  comment: p("POST", "/v1/incidents/:incidentID/comments", { permission: "incident:create" }),
26
25
  update: p("PATCH", "/v1/incidents/:incidentID", { permission: "incident:update" }),
27
26
  clientError: p("POST", "/v1/incidents/client-errors")
28
- }, [ie, C] = j("vue-core.incidents"), q = "incident:view", se = "incident:create", je = "incident:update", re = "incident:manage";
29
- function Ge(t) {
27
+ }, [ie, C] = j("vue-core.incidents"), q = "incident:view", se = "incident:create", Fe = "incident:update", re = "incident:manage";
28
+ function je(t) {
30
29
  return Q({
31
30
  id: "incidents",
32
31
  stateVersion: 1,
@@ -77,8 +76,8 @@ function de(t) {
77
76
  extra_json: ""
78
77
  };
79
78
  }
80
- const Ke = () => ({ body: "", visibility: "public" });
81
- function ze() {
79
+ const Ge = () => ({ body: "", visibility: "public" });
80
+ function Ke() {
82
81
  return {
83
82
  status: "",
84
83
  severity: "",
@@ -91,7 +90,7 @@ function ze() {
91
90
  external_ticket_url: ""
92
91
  };
93
92
  }
94
- function He({ incident: t }) {
93
+ function ze({ incident: t }) {
95
94
  return {
96
95
  status: t.status,
97
96
  severity: t.severity,
@@ -104,7 +103,7 @@ function He({ incident: t }) {
104
103
  external_ticket_url: t.external_ticket_url ?? ""
105
104
  };
106
105
  }
107
- const Qe = {
106
+ const He = {
108
107
  new: "core.incidents.statuses.new",
109
108
  triaged: "core.incidents.statuses.triaged",
110
109
  in_progress: "core.incidents.statuses.in_progress",
@@ -116,19 +115,19 @@ const Qe = {
116
115
  medium: "core.incidents.severities.medium",
117
116
  high: "core.incidents.severities.high",
118
117
  critical: "core.incidents.severities.critical"
119
- }, We = {
118
+ }, Qe = {
120
119
  user_report: "core.incidents.sources.user_report",
121
120
  runtime_error: "core.incidents.sources.runtime_error",
122
121
  client_error: "core.incidents.sources.client_error",
123
122
  mixed: "core.incidents.sources.mixed"
124
- }, Ye = {
123
+ }, We = {
125
124
  new: "info",
126
125
  triaged: "warning",
127
126
  in_progress: "warning",
128
127
  resolved: "positive",
129
128
  ignored: "neutral",
130
129
  duplicate: "neutral"
131
- }, Je = {
130
+ }, Ye = {
132
131
  low: "neutral",
133
132
  medium: "info",
134
133
  high: "warning",
@@ -263,16 +262,16 @@ const Qe = {
263
262
  }, null, 8, ["label"])) : R("", !0);
264
263
  }
265
264
  }), M = Z({
266
- index: { name: "incidents.index", path: "/incidents", component: () => import("./IncidentsList-C0cFl0Db.js"), meta: { access: q, titleKey: "core.incidents.title" } },
265
+ index: { name: "incidents.index", path: "/incidents", component: () => import("./IncidentsList-2iwgqp9J.js"), meta: { access: q, titleKey: "core.incidents.title" } },
267
266
  details: {
268
267
  name: "incidents.details",
269
268
  path: "/incidents/:incidentID",
270
- component: () => import("./IncidentRecord-D8aOpNHo.js"),
269
+ component: () => import("./IncidentRecord-Bt3G4HlX.js"),
271
270
  // Previous / next record swaps the id in place.
272
271
  meta: { access: q, titleKey: "core.incidents.title", remountOnParam: "incidentID" }
273
272
  }
274
273
  });
275
- function Ze(t = {}) {
274
+ function Je(t = {}) {
276
275
  return V({
277
276
  id: "incidents",
278
277
  routes: M.records,
@@ -286,7 +285,7 @@ function Ze(t = {}) {
286
285
  }
287
286
  const fe = 2e3, ge = 2e4, be = 255, ve = 500, he = 100, xe = 100, Ee = 20, we = /* @__PURE__ */ new Set(["vue", "unhandledrejection", "window"]), b = (t, n) => t.slice(0, n), Se = (t) => /^script error\.?$/i.test(t.trim()), ye = (t) => t.split(`
288
287
  `).find((n) => /^\s*at\s|@\S/.test(n))?.trim() ?? "";
289
- function et(t) {
288
+ function Ze(t) {
290
289
  const { platform: n, appVersion: s = "", onError: r = ee } = t, o = /* @__PURE__ */ new Set();
291
290
  function i(l) {
292
291
  const { error: u } = l;
@@ -319,22 +318,22 @@ ${ye(x)}`;
319
318
  export {
320
319
  se as C,
321
320
  re as M,
322
- We as S,
323
- je as U,
321
+ Qe as S,
322
+ Fe as U,
324
323
  me as _,
325
- Ge as a,
326
- Ye as b,
327
- Qe as c,
328
- Je as d,
324
+ je as a,
325
+ We as b,
326
+ He as c,
327
+ Ye as d,
329
328
  le as e,
330
- ze as f,
331
- Ke as g,
329
+ Ke as f,
330
+ Ge as g,
332
331
  Ee as h,
333
332
  M as i,
334
- et as j,
333
+ Ze as j,
335
334
  v as k,
336
- Ze as l,
337
- He as m,
335
+ Je as l,
336
+ ze as m,
338
337
  ce as r,
339
338
  ae as u
340
339
  };
package/dist/index.d.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  /** The version of @wssto2/vue-core (kept equal to package.json by index.test.ts). */
2
- export declare const version = "0.9.4";
2
+ export declare const version = "0.11.0";
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- const o = "0.9.4";
1
+ const o = "0.11.0";
2
2
  export {
3
3
  o as version
4
4
  };
@@ -0,0 +1,55 @@
1
+ import { computed as f } from "vue";
2
+ import { l as b } from "./languageName-CItV_SOv.js";
3
+ import { u as w } from "./environment-Dva-SG8D.js";
4
+ function A() {
5
+ const i = w();
6
+ return f(() => i.locales.map((t) => ({ value: t, label: b(t) })));
7
+ }
8
+ const h = 864e5;
9
+ function T(i = {}) {
10
+ const { margin: t = 6e4, retryAfter: m = 3e4 } = i;
11
+ return {
12
+ id: "vue-core.keep-session-alive",
13
+ scope: "session",
14
+ start({ signal: o, platform: s, report: v }) {
15
+ let r;
16
+ const a = () => {
17
+ const e = s.session.state.value;
18
+ return s.session.renewable && e.status === "authenticated" && e.expiresAt ? e.expiresAt.getTime() - Date.now() - t : null;
19
+ }, p = async () => {
20
+ try {
21
+ await s.session.renew();
22
+ } catch (e) {
23
+ v(e);
24
+ }
25
+ };
26
+ function u(e = 0) {
27
+ clearTimeout(r);
28
+ const d = a();
29
+ d !== null && !o.aborted && (r = setTimeout(() => void n(), Math.min(Math.max(d, e), h)));
30
+ }
31
+ async function n() {
32
+ if (o.aborted || !navigator.onLine) return;
33
+ const e = a();
34
+ if (e !== null) {
35
+ if (e <= 0) {
36
+ if (await p(), o.aborted) return;
37
+ u((a() ?? 1) <= 0 ? m : 0);
38
+ return;
39
+ }
40
+ u();
41
+ }
42
+ }
43
+ const c = () => {
44
+ document.visibilityState === "visible" && n();
45
+ }, l = () => void n();
46
+ return document.addEventListener("visibilitychange", c), window.addEventListener("online", l), n(), () => {
47
+ clearTimeout(r), document.removeEventListener("visibilitychange", c), window.removeEventListener("online", l);
48
+ };
49
+ }
50
+ };
51
+ }
52
+ export {
53
+ T as k,
54
+ A as u
55
+ };
@@ -1,10 +1,10 @@
1
1
  import { _ as G } from "../DiscardChangesModal.vue_vue_type_script_setup_true_lang-B3WbLyNb.js";
2
- import { _ as b } from "../Modal.vue_vue_type_script_setup_true_lang-BlHhdmMy.js";
3
- import { m as O } from "../Modal.vue_vue_type_script_setup_true_lang-BlHhdmMy.js";
2
+ import { _ as b } from "../Modal.vue_vue_type_script_setup_true_lang-DDS0iEnn.js";
3
+ import { m as O } from "../Modal.vue_vue_type_script_setup_true_lang-DDS0iEnn.js";
4
4
  import { _ as T } from "../Sheet.vue_vue_type_script_setup_true_lang-B91aRD_y.js";
5
5
  import { defineComponent as y, ref as k, computed as v, openBlock as t, createBlock as w, unref as i, withCtx as S, createElementVNode as r, createElementBlock as o, Fragment as c, renderList as u, toDisplayString as l, createCommentVNode as C } from "vue";
6
6
  import { useI18n as B } from "vue-i18n";
7
- import { a as M, u as $ } from "../Button.vue_vue_type_script_setup_true_lang-Dp7OB-eF.js";
7
+ import { a as M, u as $ } from "../shortcut-DUR6yPWA.js";
8
8
  const j = {
9
9
  class: "flex flex-col gap-5",
10
10
  "data-test": "shortcut-help"
@@ -17,6 +17,7 @@ export type ChangeRow = {
17
17
  after: Record<string, string>;
18
18
  actor: PersonRef | null;
19
19
  created_at: string;
20
+ ext?: unknown;
20
21
  };
21
22
  export type ChangeView = "all" | "access" | "details";
22
23
  export type ClauseInfo = {
@@ -26,10 +27,14 @@ export type ClauseInfo = {
26
27
  role?: string;
27
28
  binding_id?: number;
28
29
  };
30
+ export type DeactivateResult = {
31
+ ext?: unknown;
32
+ };
29
33
  export type Impersonator = {
30
34
  id: number;
31
35
  name: string;
32
36
  };
37
+ export type LastSignInFilter = "never" | "idle";
33
38
  export type MyAccess = {
34
39
  subject: Subject;
35
40
  root: boolean;
@@ -129,6 +134,7 @@ export type UserDetail = {
129
134
  last_sign_in: string | null;
130
135
  locked_until: string | null;
131
136
  created_at: string;
137
+ ext?: unknown;
132
138
  };
133
139
  export type UserRow = {
134
140
  id: number;
@@ -142,6 +148,7 @@ export type UserRow = {
142
148
  last_sign_in: string | null;
143
149
  locked_until: string | null;
144
150
  created_at: string;
151
+ ext?: unknown;
145
152
  };
146
153
  export type UserView = "active" | "locked" | "inactive" | "all";
147
154
  export type ViewCount = {
@@ -1,5 +1,5 @@
1
- import { type ListResult } from "../../client";
2
- import type { ActivityRow, ChangeRow, PendingEmail, ProfileResponse, SessionList, SessionResponse, SignInRow, UnlockResult, UserDetail, UserRow } from "./entities";
1
+ import { type ListResult, type QueryValue } from "../../client";
2
+ import type { ActivityRow, ChangeRow, DeactivateResult, PendingEmail, ProfileResponse, SessionList, SessionResponse, SignInRow, UnlockResult, UserDetail, UserRow } from "./entities";
3
3
  export declare const identityRoutes: {
4
4
  readonly login: import("../../client").ApiRoute<{
5
5
  login: string;
@@ -24,7 +24,8 @@ export declare const identityRoutes: {
24
24
  order_dir?: string | undefined;
25
25
  page?: number | undefined;
26
26
  per_page?: number | undefined;
27
- }, ListResult<UserRow>, unknown>;
27
+ last_sign_in?: "idle" | "never" | undefined;
28
+ } & Record<string, QueryValue>, ListResult<UserRow>, unknown>;
28
29
  readonly usersShow: import("../../client").ApiRoute<{
29
30
  id: number;
30
31
  }, UserDetail, unknown>;
@@ -35,6 +36,7 @@ export declare const identityRoutes: {
35
36
  locale: string;
36
37
  password: string;
37
38
  phone?: string | undefined;
39
+ ext?: unknown;
38
40
  }, UserDetail, unknown>;
39
41
  readonly usersUpdate: import("../../client").ApiRoute<{
40
42
  id: number;
@@ -43,6 +45,7 @@ export declare const identityRoutes: {
43
45
  email: string;
44
46
  locale: string;
45
47
  phone?: string | undefined;
48
+ ext?: unknown;
46
49
  }, UserDetail, unknown>;
47
50
  readonly usersSetPassword: import("../../client").ApiRoute<{
48
51
  id: number;
@@ -50,7 +53,8 @@ export declare const identityRoutes: {
50
53
  }, void, unknown>;
51
54
  readonly usersDeactivate: import("../../client").ApiRoute<{
52
55
  id: number;
53
- }, void, unknown>;
56
+ details?: unknown;
57
+ }, DeactivateResult, unknown>;
54
58
  readonly usersActivate: import("../../client").ApiRoute<{
55
59
  id: number;
56
60
  }, void, unknown>;
@@ -46,8 +46,19 @@ export declare const CreateUserInputSchema: z.ZodObject<{
46
46
  phone: z.ZodOptional<z.ZodString>;
47
47
  locale: z.ZodString;
48
48
  password: z.ZodString;
49
+ ext: z.ZodOptional<z.ZodUnknown>;
49
50
  }, z.core.$strip>;
50
51
  export type CreateUserInput = z.infer<typeof CreateUserInputSchema>;
52
+ export declare const DeactivateUserInputSchema: z.ZodObject<{
53
+ id: z.ZodNumber;
54
+ details: z.ZodOptional<z.ZodUnknown>;
55
+ }, z.core.$strip>;
56
+ export type DeactivateUserInput = z.infer<typeof DeactivateUserInputSchema>;
57
+ export declare const LastSignInFilterSchema: z.ZodEnum<{
58
+ idle: "idle";
59
+ never: "never";
60
+ }>;
61
+ export type LastSignInFilter = z.infer<typeof LastSignInFilterSchema>;
51
62
  export declare const UserViewSchema: z.ZodEnum<{
52
63
  inactive: "inactive";
53
64
  all: "all";
@@ -67,6 +78,10 @@ export declare const ListUsersInputSchema: z.ZodObject<{
67
78
  order_dir: z.ZodOptional<z.ZodString>;
68
79
  page: z.ZodOptional<z.ZodNumber>;
69
80
  per_page: z.ZodOptional<z.ZodNumber>;
81
+ last_sign_in: z.ZodOptional<z.ZodEnum<{
82
+ idle: "idle";
83
+ never: "never";
84
+ }>>;
70
85
  }, z.core.$strip>;
71
86
  export type ListUsersInput = z.infer<typeof ListUsersInputSchema>;
72
87
  export declare const LoginAsInputSchema: z.ZodObject<{
@@ -132,6 +147,7 @@ export declare const UpdateUserInputSchema: z.ZodObject<{
132
147
  email: z.ZodString;
133
148
  phone: z.ZodOptional<z.ZodString>;
134
149
  locale: z.ZodString;
150
+ ext: z.ZodOptional<z.ZodUnknown>;
135
151
  }, z.core.$strip>;
136
152
  export type UpdateUserInput = z.infer<typeof UpdateUserInputSchema>;
137
153
  export declare const UserInputSchema: z.ZodObject<{
@@ -100,6 +100,6 @@ function re(l, t) {
100
100
  } };
101
101
  }
102
102
  export {
103
- re as a,
104
- le as u
103
+ le as a,
104
+ re as u
105
105
  };
@@ -1,3 +1,3 @@
1
1
  import type { HttpClient } from "../../client";
2
2
  /** The dead letters of every consumer of the application's event queue, as go-core's `GET /v1/events/dead-letters` pages them (newest first; only the consumer narrows it). */
3
- export declare function deadLetterList(http: HttpClient): import("../../collection").CollectionDefinition<import("..").DeadLetterRow, never, "consumer", never>;
3
+ export declare function deadLetterList(http: HttpClient): import("../../collection").CollectionDefinition<import("..").DeadLetterRow, never, "consumer", never, Readonly<Record<string, unknown>>>;
@@ -1,4 +1,4 @@
1
- import { d as s, e as a, n as o, b as i, c as n, f as u } from "../index-Dz0LkLM8.js";
1
+ import { d as s, e as a, n as o, b as i, c as n, f as u } from "../index-ClJeyW3F.js";
2
2
  export {
3
3
  s as deadLettersRoutes,
4
4
  a as eventsRoutes,
@@ -359,8 +359,8 @@ export {
359
359
  je as e,
360
360
  He as f,
361
361
  fe as g,
362
- Z as h,
363
- Fe as i,
362
+ Fe as h,
363
+ Z as i,
364
364
  ee as j,
365
365
  oe as k,
366
366
  Oe as m,
@@ -1,15 +1,15 @@
1
- import { _ as x } from "../AdaptivePageShell.vue_vue_type_script_setup_true_lang-DdJOodn8.js";
2
- import { a as W, b as X, c as Y, d as Z, p as ee, u as te, e as ae } from "../AdaptivePageShell.vue_vue_type_script_setup_true_lang-DdJOodn8.js";
1
+ import { _ as W, a as X, b as Y, c as Z, p as ee, u as te, d as ae } from "../AdaptivePageShell.vue_vue_type_script_setup_true_lang-D5i77H6S.js";
3
2
  import { _ as se } from "../BottomDock.vue_vue_type_script_setup_true_lang-CjN7xYEr.js";
4
3
  import { b as ne, i as re, u as ie } from "../bottomDock-BZEiOPYZ.js";
5
- import { defineComponent as v, openBlock as a, createBlock as b, withCtx as c, createElementVNode as s, normalizeStyle as k, createElementBlock as l, Fragment as y, renderList as B, normalizeClass as d, unref as h, createCommentVNode as p, toDisplayString as f, useModel as S, useId as C, useTemplateRef as P, computed as $, mergeProps as w, createSlots as T, renderSlot as m, mergeModels as D } from "vue";
4
+ import { _ as x } from "../BottomDockPortal.vue_vue_type_script_setup_true_lang-DmwR-2SP.js";
5
+ import { defineComponent as v, openBlock as a, createBlock as b, withCtx as c, createElementVNode as s, normalizeStyle as k, createElementBlock as l, Fragment as y, renderList as B, normalizeClass as d, unref as _, createCommentVNode as p, toDisplayString as f, useModel as S, useId as C, useTemplateRef as P, computed as $, mergeProps as w, createSlots as T, renderSlot as m, mergeModels as D } from "vue";
6
6
  import { _ as L } from "../Icon.vue_vue_type_script_lang-BhhsFYwp.js";
7
- import { _ as ue } from "../RecordHeader.vue_vue_type_script_setup_true_lang-B9mN7UxZ.js";
7
+ import { _ as ue } from "../RecordHeader.vue_vue_type_script_setup_true_lang-DqGc3Jyo.js";
8
8
  import { c as pe, i as fe, p as me, a as be, u as ge, b as ve } from "../chrome-nUcmVu8G.js";
9
9
  import { s as z, u as I } from "../sectionIndex-BS0ic5W7.js";
10
- import { p as _e, a as xe } from "../sectionIndex-BS0ic5W7.js";
11
- import { _ as ye } from "../SectionNavigator.vue_vue_type_script_setup_true_lang-B5ove3rM.js";
12
- import { a as Se, _ as Ce } from "../SectionList.vue_vue_type_script_setup_true_lang-CtdF1zuv.js";
10
+ import { p as he, a as xe } from "../sectionIndex-BS0ic5W7.js";
11
+ import { _ as ye } from "../SectionNavigator.vue_vue_type_script_setup_true_lang-Dh3sXUt_.js";
12
+ import { a as Se, _ as Ce } from "../SectionList.vue_vue_type_script_setup_true_lang-DR0_NsqC.js";
13
13
  import { _ as A } from "../Panel.vue_vue_type_script_setup_true_lang-D_Wg42hu.js";
14
14
  const K = ["aria-label"], M = ["aria-label"], N = ["aria-selected", "tabindex", "onClick"], R = { class: "relative" }, E = {
15
15
  key: 2,
@@ -51,7 +51,7 @@ const K = ["aria-label"], M = ["aria-label"], N = ["aria-selected", "tabindex",
51
51
  onClick: (u) => r("select", e.value)
52
52
  }, [
53
53
  s("span", R, [
54
- e.icon ? (a(), b(h(L), {
54
+ e.icon ? (a(), b(_(L), {
55
55
  key: 0,
56
56
  name: e.icon,
57
57
  size: 22
@@ -96,8 +96,8 @@ const K = ["aria-label"], M = ["aria-label"], N = ["aria-selected", "tabindex",
96
96
  ref_key: "panel",
97
97
  ref: i,
98
98
  collapsed: o.value,
99
- "onUpdate:collapsed": u[0] || (u[0] = (_) => o.value = _)
100
- }, { id: h(r), tabindex: -1 }, {
99
+ "onUpdate:collapsed": u[0] || (u[0] = (h) => o.value = h)
100
+ }, { id: _(r), tabindex: -1 }, {
101
101
  title: t.title,
102
102
  icon: t.icon,
103
103
  number: t.number,
@@ -149,7 +149,7 @@ export {
149
149
  fe as installPageChrome,
150
150
  me as pageChromeKey,
151
151
  ee as pageSectionBackKey,
152
- _e as provideSectionIndex,
152
+ he as provideSectionIndex,
153
153
  z as sectionId,
154
154
  ie as useBottomDockTarget,
155
155
  te as useLargeTitle,
@@ -1,7 +1,7 @@
1
1
  import { defineComponent as fe, useModel as me, useTemplateRef as F, ref as E, computed as g, watch as ne, nextTick as A, openBlock as w, createElementBlock as $, createElementVNode as f, normalizeClass as P, unref as s, createVNode as M, toDisplayString as T, normalizeStyle as xe, Fragment as ee, renderList as le, createCommentVNode as J, withModifiers as we, withDirectives as _e, vModelText as ke, mergeModels as ae, inject as Ce, shallowRef as $e, onBeforeUnmount as De, createBlock as Me, mergeProps as Te, createSlots as Se, withCtx as ie, createTextVNode as Ne, renderSlot as Ie, mergeDefaults as Pe } from "vue";
2
2
  import { useI18n as pe } from "vue-i18n";
3
3
  import { b as Ve } from "../controlSurface-t7OEFESJ.js";
4
- import { c as se, a as Oe, e as Re, _ as Be, f as Ee, b as ze } from "../options-QuOkMKVZ.js";
4
+ import { c as se, a as Oe, e as Re, _ as Be, f as Ee, b as ze } from "../options-B48UiYsG.js";
5
5
  import { _ as q } from "../Icon.vue_vue_type_script_lang-BhhsFYwp.js";
6
6
  import { _ as ue } from "../CountryFlag.vue_vue_type_script_setup_true_lang-Kry_vPPZ.js";
7
7
  import { u as Fe } from "../anchored-DpuUwf-9.js";
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Installing the application on Android: one tap opens the system's own install dialog. Shown by
3
+ * the application when `useInstallPrompt().canInstall` is true; `close` fires when the user
4
+ * installs or dismisses it, and the application keeps it closed.
5
+ *
6
+ * <AndroidInstallBanner v-if="canInstall && !dismissed" app-name="Helpdesk" @close="dismissed = true" />
7
+ */
8
+ type __VLS_Props = {
9
+ appName: string;
10
+ /** The tile's letters; the first three of the name by default. */
11
+ badge?: string;
12
+ };
13
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
14
+ close: () => any;
15
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
16
+ onClose?: (() => any) | undefined;
17
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
18
+ export default _default;
@@ -0,0 +1,21 @@
1
+ /**
2
+ * "The application on your phone": the QR code of the address the user is signed in on and, in
3
+ * Chrome or Edge on this computer, installing the application here with one click. Open it with
4
+ * `v-model:open`; it closes itself and reports it.
5
+ *
6
+ * <InstallQrSheet v-model:open="qrOpen" app-name="Helpdesk" />
7
+ */
8
+ type __VLS_Props = {
9
+ appName: string;
10
+ /** The address the code opens; the page's own origin by default. */
11
+ url?: string;
12
+ };
13
+ type __VLS_PublicProps = __VLS_Props & {
14
+ "open"?: boolean;
15
+ };
16
+ declare const _default: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
17
+ "update:open": (value: boolean) => any;
18
+ }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
19
+ "onUpdate:open"?: ((value: boolean) => any) | undefined;
20
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
21
+ export default _default;
@@ -0,0 +1,19 @@
1
+ /**
2
+ * "Add the application to your home screen" on iPhone. Safari gives pages no install API and no
3
+ * view of its menus, so the card shows the three taps in turn (the more button at the bottom
4
+ * right, Share, Add to Home Screen), advancing on its own and on Next, with an arrow at the more
5
+ * button for the first. `close` fires when the user closes it; the application keeps it closed.
6
+ *
7
+ * <IosInstallGuide v-if="currentPlatform() === 'ios' && !dismissed" app-name="Helpdesk" @close="dismissed = true" />
8
+ */
9
+ type __VLS_Props = {
10
+ appName: string;
11
+ /** The tile's letters; the first three of the name by default. */
12
+ badge?: string;
13
+ };
14
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
15
+ close: () => any;
16
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
17
+ onClose?: (() => any) | undefined;
18
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
19
+ export default _default;
@@ -0,0 +1,16 @@
1
+ /**
2
+ * A QR code of `value` (typically the application's own address, to open it on a phone), drawn as
3
+ * one SVG path from `uqr`'s module matrix: dark modules on a white quiet zone in either theme, as
4
+ * cameras read it. `label` is the accessible name.
5
+ *
6
+ * <QrCode :value="origin" :size="184" label="QR code of the address" />
7
+ */
8
+ type __VLS_Props = {
9
+ value: string;
10
+ size?: number;
11
+ label: string;
12
+ };
13
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
14
+ size: number;
15
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
16
+ export default _default;
@@ -1,2 +1,6 @@
1
1
  export { captureInstallPrompt, currentPlatform, isStandalone, useInstallPrompt, type AppPlatform } from "./install";
2
2
  export { registerServiceWorker, type ServiceWorkerOptions } from "./worker";
3
+ export { default as AndroidInstallBanner } from "./AndroidInstallBanner.vue";
4
+ export { default as InstallQrSheet } from "./InstallQrSheet.vue";
5
+ export { default as IosInstallGuide } from "./IosInstallGuide.vue";
6
+ export { default as QrCode } from "./QrCode.vue";