@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.
- package/CHANGELOG.md +39 -0
- package/dist/ActionRow.vue_vue_type_script_setup_true_lang-DybAIOHS.js +64 -0
- package/dist/Activity-CdkJW68R.js +169 -0
- package/dist/{AdaptivePageShell.vue_vue_type_script_setup_true_lang-DdJOodn8.js → AdaptivePageShell.vue_vue_type_script_setup_true_lang-D5i77H6S.js} +147 -159
- 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
- package/dist/BottomDockPortal.vue_vue_type_script_setup_true_lang-DmwR-2SP.js +17 -0
- package/dist/Button.vue_vue_type_script_setup_true_lang-C74hcb0N.js +123 -0
- package/dist/Changes-DxK_QfiB.js +69 -0
- package/dist/{CollectionPage.vue_vue_type_script_setup_true_lang-DHcekGNn.js → CollectionPage.vue_vue_type_script_setup_true_lang-x0jyJ01f.js} +19 -18
- 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
- package/dist/{DateField.vue_vue_type_script_setup_true_lang-BhKdCVFn.js → DateField.vue_vue_type_script_setup_true_lang-CeNwBbJT.js} +1 -1
- package/dist/{DeadLetters-Bb5pPlOY.js → DeadLetters-DnA7LP1w.js} +5 -6
- package/dist/DrawnCheck.vue_vue_type_script_setup_true_lang-9DzDJlIA.js +38 -0
- package/dist/FormGroup.vue_vue_type_script_setup_true_lang-D6jYfNjW.js +427 -0
- package/dist/{FormView.vue_vue_type_script_setup_true_lang-aaNnMIOi.js → FormView.vue_vue_type_script_setup_true_lang-DvbPEiNQ.js} +2 -2
- package/dist/{General-BAG7S6wV.js → General-2matxl2Y.js} +23 -24
- package/dist/Highlight.vue_vue_type_script_setup_true_lang-DZGBmwcX.js +29 -0
- package/dist/{IncidentRecord-D8aOpNHo.js → IncidentRecord-Bt3G4HlX.js} +14 -15
- package/dist/{IncidentsList-C0cFl0Db.js → IncidentsList-2iwgqp9J.js} +3 -3
- package/dist/{Modal.vue_vue_type_script_setup_true_lang-BlHhdmMy.js → Modal.vue_vue_type_script_setup_true_lang-DDS0iEnn.js} +9 -8
- package/dist/{NewRolePage-C6Iu-EQJ.js → NewRolePage-DhGFwvk3.js} +4 -4
- package/dist/{NumberField.vue_vue_type_script_setup_true_lang-TGGAq8J-.js → NumberField.vue_vue_type_script_setup_true_lang-B3UrXNqH.js} +1 -1
- package/dist/{PersonAccess.vue_vue_type_script_setup_true_lang-qz1tmYpF.js → PersonAccess.vue_vue_type_script_setup_true_lang-DbGZSNQc.js} +56 -56
- package/dist/ProfilePage-CpuyDBAv.js +685 -0
- package/dist/ProgressTrack.vue_vue_type_script_setup_true_lang-DrOm8k--.js +30 -0
- package/dist/{RecordHeader.vue_vue_type_script_setup_true_lang-B9mN7UxZ.js → RecordHeader.vue_vue_type_script_setup_true_lang-DqGc3Jyo.js} +1 -1
- 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
- package/dist/{RoleEditor.vue_vue_type_script_setup_true_lang-CJPvOVDV.js → RoleEditor.vue_vue_type_script_setup_true_lang-C0FIotFA.js} +11 -12
- package/dist/{RolePage-Dj_ocMnM.js → RolePage-DaNv049g.js} +10 -10
- package/dist/{RolesPage-PXrs4O-1.js → RolesPage-6hlzJes_.js} +6 -6
- package/dist/SearchInput.vue_vue_type_script_setup_true_lang-w4eAqyZ9.js +32 -0
- 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
- package/dist/{SectionNavigator.vue_vue_type_script_setup_true_lang-B5ove3rM.js → SectionNavigator.vue_vue_type_script_setup_true_lang-Dh3sXUt_.js} +2 -2
- 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
- package/dist/{SelectField.vue_vue_type_script_setup_true_lang-BP8nAQwo.js → SelectField.vue_vue_type_script_setup_true_lang-BZwdANL3.js} +3 -3
- package/dist/{ServiceAccountDialog.vue_vue_type_script_setup_true_lang-aWkKwxNe.js → ServiceAccountDialog.vue_vue_type_script_setup_true_lang-FJbWxME_.js} +20 -20
- package/dist/{ServiceAccountRecord-bxX9yQkC.js → ServiceAccountRecord-0-JF5lRx.js} +24 -24
- package/dist/{ServiceAccountsList-BXE6htxk.js → ServiceAccountsList-DcsnOcf-.js} +32 -32
- package/dist/{Sessions--Gvc0kxw.js → Sessions-DgWhpk-i.js} +23 -24
- package/dist/{SettingsPage-DzDC7gD-.js → SettingsPage-BXPWATYU.js} +28 -30
- package/dist/{SignIn-CTI_699e.js → SignIn-DPoUwHZd.js} +9 -10
- package/dist/{SignInPage-HKC1bm2E.js → SignInPage-OyrVemro.js} +4 -4
- package/dist/SignIns-BMDrZVVp.js +64 -0
- package/dist/StatusLine.vue_vue_type_script_setup_true_lang-DsdQmLq6.js +56 -0
- package/dist/{SwitchField.vue_vue_type_script_setup_true_lang-BMA2YXTZ.js → SwitchField.vue_vue_type_script_setup_true_lang-Ds4q0bbl.js} +1 -1
- package/dist/{TextField.vue_vue_type_script_setup_true_lang-BFVsqcBX.js → TextField.vue_vue_type_script_setup_true_lang-CWIeeZRE.js} +2 -2
- package/dist/{TextareaField.vue_vue_type_script_setup_true_lang-Dyh4Hhyl.js → TextareaField.vue_vue_type_script_setup_true_lang-D2j4s96s.js} +1 -1
- 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
- package/dist/UserRecord-BW-gdCqi.js +202 -0
- package/dist/UsersList-B3ZF_1Dj.js +74 -0
- package/dist/access/index.js +4 -4
- package/dist/app/index.d.ts +1 -0
- package/dist/app/index.js +11 -10
- package/dist/app/languages.d.ts +8 -0
- package/dist/{application-BmXW6iW_.js → application-CuzT-0vW.js} +1 -1
- package/dist/button/index.js +6 -5
- package/dist/collection/Highlight.vue.d.ts +12 -0
- package/dist/collection/PickerModal.vue.d.ts +26 -0
- package/dist/collection/definition.d.ts +6 -6
- package/dist/collection/http.d.ts +6 -6
- package/dist/collection/index.d.ts +6 -1
- package/dist/collection/index.js +145 -85
- package/dist/collection/picker.d.ts +39 -0
- package/dist/collection/types.d.ts +9 -4
- package/dist/collection/useCollection.d.ts +5 -5
- package/dist/content/ActivityStream.vue.d.ts +62 -0
- package/dist/content/CommentThread.vue.d.ts +52 -0
- package/dist/content/Composer.vue.d.ts +36 -0
- package/dist/content/index.d.ts +3 -0
- package/dist/content/index.js +321 -56
- package/dist/controls/index.js +28 -54
- package/dist/form/index.js +132 -134
- package/dist/format/index.d.ts +1 -0
- package/dist/format/index.js +10 -6
- package/dist/format/slug.d.ts +8 -0
- package/dist/http-Dm0uXY9O.js +95 -0
- package/dist/i18n/index.d.ts +15 -0
- package/dist/i18n/index.js +89 -63
- package/dist/i18n/plural.d.ts +23 -0
- package/dist/i18n/serverMessages.d.ts +16 -0
- package/dist/identity/embed.d.ts +39 -0
- package/dist/identity/index.d.ts +22 -1
- package/dist/identity/index.js +40 -21
- package/dist/identity/session.d.ts +9 -1
- package/dist/identity/shared/ChangeFeed.vue.d.ts +6 -3
- package/dist/identity/users/context.d.ts +11 -0
- package/dist/identity/users/dialogs.d.ts +10 -0
- package/dist/identity/users/ext.d.ts +8 -0
- package/dist/identity/users/feature.d.ts +22 -1
- package/dist/identity/users/list.d.ts +12 -1
- package/dist/identity/users/personSections.d.ts +15 -6
- package/dist/identity/users/replace.d.ts +45 -0
- package/dist/identity/users/words.d.ts +28 -0
- package/dist/incidents/api.d.ts +1 -1
- package/dist/incidents/index.js +1 -1
- package/dist/{index-Dz0LkLM8.js → index-ClJeyW3F.js} +4 -4
- package/dist/index-Cq9TuOqH.js +1264 -0
- package/dist/{index-Dm-sdJJr.js → index-kEHY7hcG.js} +31 -32
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/keepAlive-ClGnsIzT.js +55 -0
- package/dist/modal/index.js +3 -3
- package/dist/modules/identity/entities.d.ts +7 -0
- package/dist/modules/identity/routes.d.ts +8 -4
- package/dist/modules/identity/schemas.d.ts +16 -0
- package/dist/{neighbors-DVfU9T0o.js → neighbors-OyvGi233.js} +2 -2
- package/dist/notifications/deadletters/list.d.ts +1 -1
- package/dist/notifications/index.js +1 -1
- package/dist/{options-QuOkMKVZ.js → options-B48UiYsG.js} +2 -2
- package/dist/page/index.js +11 -11
- package/dist/phone/index.js +1 -1
- package/dist/pwa/AndroidInstallBanner.vue.d.ts +18 -0
- package/dist/pwa/InstallQrSheet.vue.d.ts +21 -0
- package/dist/pwa/IosInstallGuide.vue.d.ts +19 -0
- package/dist/pwa/QrCode.vue.d.ts +16 -0
- package/dist/pwa/index.d.ts +4 -0
- package/dist/pwa/index.js +244 -24
- package/dist/resource/index.js +1 -1
- package/dist/rowLayout-BsKEzEME.js +650 -0
- package/dist/shell/DarkModeRow.vue.d.ts +15 -0
- package/dist/shell/OfflineNotice.vue.d.ts +2 -0
- package/dist/shell/QuickSearchButton.vue.d.ts +2 -0
- package/dist/shell/QuickSearchPalette.vue.d.ts +12 -0
- package/dist/shell/darkMode.d.ts +26 -0
- package/dist/shell/index.d.ts +10 -0
- package/dist/shell/index.js +954 -579
- package/dist/shell/offlineNotice.d.ts +3 -0
- package/dist/shell/quickSearch.d.ts +14 -0
- package/dist/shell/quickSearchControl.d.ts +69 -0
- package/dist/shortcut-DUR6yPWA.js +93 -0
- package/dist/state/BackgroundTaskCapsule.vue.d.ts +18 -0
- package/dist/state/backgroundTasks.d.ts +58 -0
- package/dist/state/index.d.ts +4 -0
- package/dist/state/index.js +194 -80
- package/dist/state/useCountUp.d.ts +9 -0
- package/dist/styles.css +1 -1
- package/dist/{suggestions-BVQhoXzS.js → suggestions-q_v3M7G6.js} +1 -1
- package/dist/testing/collection.d.ts +1 -1
- package/dist/{useCommand-Dc8Lgs9h.js → useCommand-Ch_nx1AQ.js} +4 -4
- package/dist/{useGroupSheet-DQ6cVG-z.js → useGroupSheet-CPjHydQV.js} +14 -15
- package/dist/{useRecordDialog-BTsbHY38.js → useRecordDialog-DdkauXnU.js} +1 -1
- package/dist/{useResourceForm-DJ4Q75pq.js → useResourceForm-Dl6YFYyz.js} +1 -1
- package/package.json +3 -2
- package/dist/ActionRow.vue_vue_type_script_setup_true_lang-Cg1lhpcA.js +0 -45
- package/dist/Activity-29hsZ28j.js +0 -156
- package/dist/Button.vue_vue_type_script_setup_true_lang-Dp7OB-eF.js +0 -192
- package/dist/Changes-Dxjdkd_5.js +0 -129
- package/dist/FormErrors.vue_vue_type_script_setup_true_lang-CIggKPtq.js +0 -295
- package/dist/FormGroup.vue_vue_type_script_setup_true_lang-B37dixvJ.js +0 -137
- package/dist/PageBar.vue_vue_type_script_setup_true_lang-qI94fjJv.js +0 -47
- package/dist/ProfilePage-BnohZIEg.js +0 -764
- package/dist/ProgressTrack.vue_vue_type_script_setup_true_lang-B6Prw9hi.js +0 -64
- package/dist/SectionIntro.vue_vue_type_script_setup_true_lang-CZtPrmXD.js +0 -23
- package/dist/SessionList.vue_vue_type_script_setup_true_lang-Cnyt5V8T.js +0 -133
- package/dist/SignIns-BcqBgWgN.js +0 -121
- package/dist/UserRecord-CtUPpbCt.js +0 -267
- package/dist/UsersList-BMkIgIg8.js +0 -155
- package/dist/definition-C7QuyV3i.js +0 -54
- package/dist/http-nz92KjdS.js +0 -42
- package/dist/identity/fieldMessages.d.ts +0 -15
- package/dist/identity/users/languages.d.ts +0 -4
- package/dist/index-CdtofdcJ.js +0 -501
- package/dist/keepAlive-z3IRFkQq.js +0 -46
- package/dist/languages-BShG9LpE.js +0 -10
- package/dist/rowLayout-CT8vWYgI.js +0 -663
- package/dist/signInEvents-DWShrJox.js +0 -30
- package/dist/status-BRA14qwX.js +0 -34
- package/dist/useWaitStatus-fsacMl4W.js +0 -24
- /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 {
|
|
7
|
-
import { _ as G } from "./SelectField.vue_vue_type_script_setup_true_lang-
|
|
8
|
-
import { _ as g } from "./TextareaField.vue_vue_type_script_setup_true_lang-
|
|
9
|
-
import { _ as E } from "./TextField.vue_vue_type_script_setup_true_lang-
|
|
10
|
-
import { u as K, _ as z } from "./useCommand-
|
|
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 "./
|
|
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-
|
|
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",
|
|
29
|
-
function
|
|
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
|
|
81
|
-
function
|
|
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
|
|
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
|
|
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
|
-
},
|
|
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
|
-
},
|
|
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
|
-
},
|
|
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-
|
|
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-
|
|
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
|
|
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
|
|
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
|
-
|
|
323
|
-
|
|
321
|
+
Qe as S,
|
|
322
|
+
Fe as U,
|
|
324
323
|
me as _,
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
324
|
+
je as a,
|
|
325
|
+
We as b,
|
|
326
|
+
He as c,
|
|
327
|
+
Ye as d,
|
|
329
328
|
le as e,
|
|
330
|
-
|
|
331
|
-
|
|
329
|
+
Ke as f,
|
|
330
|
+
Ge as g,
|
|
332
331
|
Ee as h,
|
|
333
332
|
M as i,
|
|
334
|
-
|
|
333
|
+
Ze as j,
|
|
335
334
|
v as k,
|
|
336
|
-
|
|
337
|
-
|
|
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.
|
|
2
|
+
export declare const version = "0.11.0";
|
package/dist/index.js
CHANGED
|
@@ -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
|
+
};
|
package/dist/modal/index.js
CHANGED
|
@@ -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-
|
|
3
|
-
import { m as O } from "../Modal.vue_vue_type_script_setup_true_lang-
|
|
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 "../
|
|
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
|
-
|
|
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
|
-
|
|
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<{
|
|
@@ -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>>>;
|
package/dist/page/index.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { _ as
|
|
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 {
|
|
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-
|
|
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
|
|
11
|
-
import { _ as ye } from "../SectionNavigator.vue_vue_type_script_setup_true_lang-
|
|
12
|
-
import { a as Se, _ as Ce } from "../SectionList.vue_vue_type_script_setup_true_lang-
|
|
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(
|
|
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] = (
|
|
100
|
-
}, { id:
|
|
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
|
-
|
|
152
|
+
he as provideSectionIndex,
|
|
153
153
|
z as sectionId,
|
|
154
154
|
ie as useBottomDockTarget,
|
|
155
155
|
te as useLargeTitle,
|
package/dist/phone/index.js
CHANGED
|
@@ -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-
|
|
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;
|
package/dist/pwa/index.d.ts
CHANGED
|
@@ -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";
|