@oneclick.dev/cms-core-modules 0.0.123 → 0.0.124
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/dist/{ContentEditor-C-Wm48ai.js → ContentEditor-BcIUumah.js} +39 -39
- package/dist/{ContentEditor-MDGolnIP.mjs → ContentEditor-DX1bTQKs.mjs} +4910 -4793
- package/dist/{Detail-Dk8E6_uF.mjs → Detail-B7pe808q.mjs} +15 -14
- package/dist/Detail-BESGmY7z.js +1 -0
- package/dist/{Detail-Cn9Bk0u0.mjs → Detail-B_Q7Qkuz.mjs} +26 -25
- package/dist/Detail-CNiLIEh9.js +1 -0
- package/dist/{Detail-B_scnidb.mjs → Detail-DNxAzeCs.mjs} +35 -34
- package/dist/Detail-t3tOcy3X.js +1 -0
- package/dist/Editor-D4evcdhv.mjs +768 -0
- package/dist/Editor-gLLtuJbY.js +1 -0
- package/dist/FormStatusBadge.vue_vue_type_script_setup_true_lang-BjKpsqT9.js +1 -0
- package/dist/FormStatusBadge.vue_vue_type_script_setup_true_lang-D5v5AhLe.mjs +76 -0
- package/dist/Knowledge-B66vxz--.js +1 -0
- package/dist/Knowledge-BnMTTuJ7.mjs +742 -0
- package/dist/Overview-BE4uYPx0.mjs +745 -0
- package/dist/Overview-CQRpFhbJ.mjs +286 -0
- package/dist/Overview-CTs7sX4d.js +1 -0
- package/dist/Overview-Cj89XXKN.js +1 -0
- package/dist/Overview-D_c18mbR.mjs +248 -0
- package/dist/Overview-g4Rcj245.js +1 -0
- package/dist/TableView-6mdrL3zx.js +4 -0
- package/dist/{TableView-C4Zyp8d7.mjs → TableView-Du5nOE6R.mjs} +2 -2
- package/dist/Test-CzmOmi53.mjs +447 -0
- package/dist/Test-USDtNFY1.js +1 -0
- package/dist/UserDetail-DpUL3mhk.mjs +1483 -0
- package/dist/UserDetail-KRIfxaYd.js +1 -0
- package/dist/cms-core-modules.css +1 -1
- package/dist/index-CQuN5rKx.js +1 -0
- package/dist/index-CnDGeInm.js +1 -0
- package/dist/index-CqDTc5Ig.mjs +20 -0
- package/dist/index-CyvvAdt4.js +1 -0
- package/dist/index-DIRD7t5_.mjs +20 -0
- package/dist/index-OJuBYR60.mjs +57 -0
- package/dist/index.cjs.js +1 -1
- package/dist/index.mjs +327 -84
- package/dist/server-handlers.cjs.js +1 -1
- package/dist/server-handlers.mjs +1764 -605
- package/dist/src/contentManager/components/content-editor/tiptap-extensions/Container.d.ts +1 -1
- package/dist/src/contentManager/components/content-editor/tiptap-extensions/Row.d.ts +7 -0
- package/dist/src/contentManager/components/content-editor/tiptap-extensions/Stack.d.ts +7 -0
- package/dist/src/contentManager/components/content-editor/tiptap-extensions/helpers/resizeHistory.d.ts +9 -0
- package/dist/src/contentManager/components/content-editor/tiptap-menus/ElementEditorMenu.vue.d.ts +3 -1
- package/dist/src/firebaseAuthManager/components/DeleteUserDialog.vue.d.ts +25 -0
- package/dist/src/firebaseAuthManager/components/ReasonActionDialog.vue.d.ts +23 -0
- package/dist/src/firebaseAuthManager/components/UserStatusBadge.vue.d.ts +5 -0
- package/dist/src/firebaseAuthManager/config.d.ts +151 -0
- package/dist/src/firebaseAuthManager/index.d.ts +163 -0
- package/dist/src/firebaseAuthManager/index.vue.d.ts +14 -0
- package/dist/src/firebaseAuthManager/metadata.d.ts +2 -0
- package/dist/src/firebaseAuthManager/pages/Overview.vue.d.ts +2 -0
- package/dist/src/firebaseAuthManager/pages/UserDetail.vue.d.ts +2 -0
- package/dist/src/firebaseAuthManager/permissions.d.ts +5 -0
- package/dist/src/firebaseAuthManager/routes.d.ts +5 -0
- package/dist/src/firebaseAuthManager/server.d.ts +162 -0
- package/dist/src/firebaseAuthManager/types.d.ts +84 -0
- package/dist/src/formBuilder/components/FormPreviewDialog.vue.d.ts +12 -0
- package/dist/src/formBuilder/components/FormStatusBadge.vue.d.ts +9 -0
- package/dist/src/formBuilder/config.d.ts +31 -0
- package/dist/src/formBuilder/index.d.ts +44 -0
- package/dist/src/formBuilder/index.vue.d.ts +14 -0
- package/dist/src/formBuilder/lib/forms.d.ts +11 -0
- package/dist/src/formBuilder/metadata.d.ts +2 -0
- package/dist/src/formBuilder/pages/Editor.vue.d.ts +2 -0
- package/dist/src/formBuilder/pages/Overview.vue.d.ts +2 -0
- package/dist/src/formBuilder/permissions.d.ts +5 -0
- package/dist/src/formBuilder/routes.d.ts +5 -0
- package/dist/src/formBuilder/server.d.ts +87 -0
- package/dist/src/formBuilder/tools.d.ts +1 -0
- package/dist/src/formBuilder/types.d.ts +46 -0
- package/dist/src/helpbot/composables/useHelpbotApi.d.ts +18 -0
- package/dist/src/helpbot/config.d.ts +17 -0
- package/dist/src/helpbot/index.d.ts +29 -0
- package/dist/src/helpbot/index.vue.d.ts +2 -0
- package/dist/src/helpbot/metadata.d.ts +2 -0
- package/dist/src/helpbot/pages/Knowledge.vue.d.ts +4 -0
- package/dist/src/helpbot/pages/Overview.vue.d.ts +2 -0
- package/dist/src/helpbot/pages/Test.vue.d.ts +4 -0
- package/dist/src/helpbot/permissions.d.ts +5 -0
- package/dist/src/helpbot/routes.d.ts +5 -0
- package/dist/src/helpbot/types.d.ts +42 -0
- package/dist/src/index.d.ts +3 -0
- package/dist/src/server-handlers.d.ts +2 -0
- package/dist/types-9N-DKxNj.mjs +250 -0
- package/dist/types-BMraG1kN.js +1 -0
- package/dist/types-Cem0vPo_.js +1 -0
- package/dist/types-ibC3-e1N.mjs +2630 -0
- package/dist/useHelpbotApi-BIIungOh.js +1 -0
- package/dist/useHelpbotApi-HC9JSiSn.mjs +229 -0
- package/dist/vee-validate-zod-BQElPD0m.js +1 -0
- package/dist/vee-validate-zod-CN16K2x9.mjs +1780 -0
- package/package.json +2 -2
- package/src/formBuilder/tools.ts +1 -0
- package/dist/Detail-BCUUNWvp.js +0 -1
- package/dist/Detail-DGg_xXZc.js +0 -1
- package/dist/Detail-Sc2qZdxj.js +0 -1
- package/dist/TableView-BkwoKREo.js +0 -4
- package/dist/vee-validate-zod-SjDT8X35.mjs +0 -4404
- package/dist/vee-validate-zod-VCmLnrtQ.js +0 -1
|
@@ -0,0 +1,745 @@
|
|
|
1
|
+
import { defineComponent as Ze, ref as v, computed as y, onMounted as et, resolveComponent as s, openBlock as o, createElementBlock as x, createElementVNode as u, createVNode as t, withCtx as l, createTextVNode as n, createBlock as d, unref as i, createCommentVNode as f, Fragment as R, withModifiers as de, normalizeClass as J, toDisplayString as m, renderList as Q } from "vue";
|
|
2
|
+
import { t as ce } from "./index-RLz1QPrf.mjs";
|
|
3
|
+
import { Plus as me, ShieldAlert as fe, Search as pe, X as tt, RefreshCw as ve, AlertCircle as lt, Users as at, ShieldCheck as be, ShieldX as xe, Ellipsis as st, UserRound as _e, KeyRound as nt, ChevronLeft as ot, ChevronRight as it } from "lucide-vue-next";
|
|
4
|
+
import { useModule as rt, useModuleApi as ut, useModuleRoute as dt, useModulePermissions as ct, useModuleBreadcrumbs as mt } from "@oneclick.dev/cms-kit";
|
|
5
|
+
import { f as Z, g as ft, _ as ge, a as pt, b as vt, c as bt, d as ye, e as xt, u as _t, m as gt } from "./types-9N-DKxNj.mjs";
|
|
6
|
+
const yt = { class: "mx-auto flex w-full max-w-7xl flex-1 flex-col px-4 py-6 sm:px-6 sm:py-10 lg:px-8" }, kt = { class: "flex flex-col gap-5 sm:flex-row sm:items-start sm:justify-between" }, wt = { class: "max-w-2xl" }, ht = { class: "flex flex-wrap items-center gap-2" }, Ct = {
|
|
7
|
+
key: 0,
|
|
8
|
+
class: "mt-10 flex flex-1 items-center justify-center rounded-xl border border-dashed p-8"
|
|
9
|
+
}, St = { class: "max-w-md text-center" }, Tt = { class: "mx-auto flex size-11 items-center justify-center rounded-full bg-muted" }, At = { class: "mt-8 border-b pb-5" }, zt = { class: "w-full max-w-2xl space-y-2" }, Mt = { class: "grid gap-2 sm:grid-cols-[8rem_minmax(0,1fr)_auto]" }, Dt = { class: "relative min-w-0 flex-1" }, Et = {
|
|
10
|
+
key: 1,
|
|
11
|
+
class: "mt-6 overflow-hidden rounded-xl border",
|
|
12
|
+
"aria-label": "Loading Firebase users"
|
|
13
|
+
}, Ut = { class: "min-w-0 flex-1 space-y-2" }, Pt = { class: "flex min-w-0 items-center gap-3" }, Bt = { class: "min-w-0" }, Ft = { class: "truncate font-medium" }, Nt = ["title"], Rt = { class: "mt-2 flex flex-wrap gap-1 @2xl:hidden" }, Vt = {
|
|
14
|
+
key: 2,
|
|
15
|
+
class: "text-sm text-muted-foreground"
|
|
16
|
+
}, It = { class: "flex max-w-64 flex-wrap gap-1" }, Lt = {
|
|
17
|
+
key: 0,
|
|
18
|
+
class: "text-sm text-muted-foreground"
|
|
19
|
+
}, $t = { class: "mt-5 flex flex-col gap-3 text-sm text-muted-foreground sm:flex-row sm:items-center sm:justify-between" }, jt = { key: 0 }, Kt = /* @__PURE__ */ Ze({
|
|
20
|
+
__name: "Overview",
|
|
21
|
+
setup(Ht) {
|
|
22
|
+
const { config: ee } = rt(), j = ut(), { navigateTo: D } = dt(), { hasPermission: E } = ct();
|
|
23
|
+
mt(() => []);
|
|
24
|
+
const k = v([]), _ = v(!1), V = v(""), H = v(""), z = v(""), w = v(""), U = v("uid"), I = v("uid"), P = v(null), B = v(null), g = v([]), b = v(null), L = v(!1), M = v(""), G = y(() => E("view-auth-users")), h = y(() => E("view-auth-user-pii")), te = y(() => E("create-auth-users")), le = y(() => E("manage-auth-status")), ae = y(() => E("manage-auth-sessions")), ke = y(() => le.value || ae.value), O = y(() => !!ee.linkFirestoreProfiles), we = y(() => {
|
|
25
|
+
const r = Number(ee.pageSize) || 50;
|
|
26
|
+
return Math.min(100, Math.max(10, r));
|
|
27
|
+
}), he = y(() => g.value.length + 1);
|
|
28
|
+
function W(r) {
|
|
29
|
+
return h.value ? r.displayName || r.email || r.phoneNumber || "Unnamed user" : `User ${r.uid.slice(0, 8)}`;
|
|
30
|
+
}
|
|
31
|
+
function X(r) {
|
|
32
|
+
return h.value && (r.email || r.phoneNumber) || r.uid;
|
|
33
|
+
}
|
|
34
|
+
async function C(r = P.value) {
|
|
35
|
+
if (!G.value) return !1;
|
|
36
|
+
_.value = !0, V.value = "";
|
|
37
|
+
const e = {
|
|
38
|
+
limit: we.value
|
|
39
|
+
};
|
|
40
|
+
r && (e.pageToken = r), w.value && (e.search = w.value, e.searchBy = I.value);
|
|
41
|
+
try {
|
|
42
|
+
const c = await j.get("/users", { query: e });
|
|
43
|
+
return k.value = Array.isArray(c.users) ? c.users : [], B.value = c.nextPageToken || null, P.value = r, !0;
|
|
44
|
+
} catch (c) {
|
|
45
|
+
return k.value = [], B.value = null, V.value = ye(c, "Firebase Authentication users could not be loaded."), !1;
|
|
46
|
+
} finally {
|
|
47
|
+
_.value = !1;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
async function Ce() {
|
|
51
|
+
w.value = z.value, I.value = U.value, g.value = [], P.value = null, await C(null);
|
|
52
|
+
}
|
|
53
|
+
async function se() {
|
|
54
|
+
z.value = "", w.value = "", g.value = [], P.value = null, await C(null);
|
|
55
|
+
}
|
|
56
|
+
async function Se() {
|
|
57
|
+
if (!B.value || _.value) return;
|
|
58
|
+
const r = P.value;
|
|
59
|
+
await C(B.value) && g.value.push(r);
|
|
60
|
+
}
|
|
61
|
+
async function Te() {
|
|
62
|
+
if (g.value.length === 0 || _.value) return;
|
|
63
|
+
const r = g.value[g.value.length - 1] || null;
|
|
64
|
+
await C(r) && g.value.pop();
|
|
65
|
+
}
|
|
66
|
+
function Ae(r) {
|
|
67
|
+
const e = r.disabled;
|
|
68
|
+
b.value = {
|
|
69
|
+
user: r,
|
|
70
|
+
kind: "status",
|
|
71
|
+
disabled: !e,
|
|
72
|
+
title: e ? "Restore sign-in" : "Suspend sign-in",
|
|
73
|
+
description: e ? "This user will be allowed to authenticate with the connected Firebase project again." : "This user will no longer be able to sign in or refresh their Firebase session.",
|
|
74
|
+
confirmLabel: e ? "Restore sign-in" : "Suspend sign-in",
|
|
75
|
+
destructive: !e
|
|
76
|
+
}, M.value = "";
|
|
77
|
+
}
|
|
78
|
+
function ze(r) {
|
|
79
|
+
b.value = {
|
|
80
|
+
user: r,
|
|
81
|
+
kind: "sessions",
|
|
82
|
+
title: "Revoke all sessions",
|
|
83
|
+
description: "All Firebase refresh tokens for this user will be revoked. Existing ID tokens can remain valid until they expire unless the connected app checks revocation.",
|
|
84
|
+
confirmLabel: "Revoke sessions",
|
|
85
|
+
destructive: !0
|
|
86
|
+
}, M.value = "";
|
|
87
|
+
}
|
|
88
|
+
function ne(r) {
|
|
89
|
+
r || (b.value = null, M.value = "");
|
|
90
|
+
}
|
|
91
|
+
async function Me(r) {
|
|
92
|
+
const e = b.value;
|
|
93
|
+
if (!(!e || L.value)) {
|
|
94
|
+
L.value = !0, M.value = "";
|
|
95
|
+
try {
|
|
96
|
+
let c;
|
|
97
|
+
const p = xt(e.user.uid);
|
|
98
|
+
e.kind === "status" ? c = await j.post(`/users/${p}/status`, {
|
|
99
|
+
body: { disabled: !!e.disabled, reason: r }
|
|
100
|
+
}) : c = await j.post(`/users/${p}/revoke-sessions`, {
|
|
101
|
+
body: { reason: r }
|
|
102
|
+
});
|
|
103
|
+
const F = _t(c), $ = k.value.findIndex((q) => q.uid === F.uid);
|
|
104
|
+
$ >= 0 && (k.value[$] = F), ce.success(e.kind === "status" ? F.disabled ? "Sign-in suspended" : "Sign-in restored" : "Sessions revoked"), gt(c) && (H.value = "The account action completed, but Studio could not confirm that its activity entry was recorded.", ce.warning("Action completed without a confirmed activity entry")), ne(!1);
|
|
105
|
+
} catch (c) {
|
|
106
|
+
M.value = ye(c, "The account action could not be completed.");
|
|
107
|
+
} finally {
|
|
108
|
+
L.value = !1;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
return et(() => {
|
|
113
|
+
G.value && C(null);
|
|
114
|
+
}), (r, e) => {
|
|
115
|
+
const c = s("Badge"), p = s("Button"), F = s("Label"), $ = s("SelectValue"), q = s("SelectTrigger"), K = s("SelectItem"), De = s("SelectContent"), Ee = s("Select"), Ue = s("Input"), oe = s("AlertTitle"), ie = s("AlertDescription"), re = s("Alert"), N = s("Skeleton"), Pe = s("EmptyMedia"), Be = s("EmptyTitle"), Fe = s("EmptyDescription"), Ne = s("EmptyHeader"), Re = s("EmptyContent"), Ve = s("Empty"), S = s("TableHead"), ue = s("TableRow"), Ie = s("TableHeader"), Le = s("AvatarImage"), $e = s("AvatarFallback"), je = s("Avatar"), T = s("TableCell"), He = s("DropdownMenuTrigger"), Ge = s("DropdownMenuLabel"), Oe = s("DropdownMenuSeparator"), Y = s("DropdownMenuItem"), We = s("DropdownMenuContent"), Xe = s("DropdownMenu"), qe = s("TableBody"), Ke = s("Table"), Ye = s("Card"), Je = s("ButtonGroupText"), Qe = s("ButtonGroup");
|
|
116
|
+
return o(), x("main", yt, [
|
|
117
|
+
u("header", kt, [
|
|
118
|
+
u("div", wt, [
|
|
119
|
+
u("div", ht, [
|
|
120
|
+
e[8] || (e[8] = u("h1", { class: "text-2xl font-semibold tracking-tight sm:text-3xl" }, "Firebase users", -1)),
|
|
121
|
+
t(c, {
|
|
122
|
+
variant: "outline",
|
|
123
|
+
class: "gap-1.5"
|
|
124
|
+
}, {
|
|
125
|
+
default: l(() => [...e[7] || (e[7] = [
|
|
126
|
+
u("span", { class: "size-1.5 rounded-full bg-emerald-500" }, null, -1),
|
|
127
|
+
n(" Firebase integration configured ", -1)
|
|
128
|
+
])]),
|
|
129
|
+
_: 1
|
|
130
|
+
})
|
|
131
|
+
]),
|
|
132
|
+
e[9] || (e[9] = u("p", { class: "mt-2 text-sm leading-6 text-muted-foreground sm:text-base" }, " Find an exact identity, review access state, and perform accountable account actions. ", -1))
|
|
133
|
+
]),
|
|
134
|
+
te.value ? (o(), d(p, {
|
|
135
|
+
key: 0,
|
|
136
|
+
class: "w-full shrink-0 sm:w-auto",
|
|
137
|
+
onClick: e[0] || (e[0] = (a) => i(D)("new"))
|
|
138
|
+
}, {
|
|
139
|
+
default: l(() => [
|
|
140
|
+
t(i(me), { class: "size-4" }),
|
|
141
|
+
e[10] || (e[10] = n(" New user ", -1))
|
|
142
|
+
]),
|
|
143
|
+
_: 1
|
|
144
|
+
})) : f("", !0)
|
|
145
|
+
]),
|
|
146
|
+
G.value ? (o(), x(R, { key: 1 }, [
|
|
147
|
+
u("section", At, [
|
|
148
|
+
u("form", {
|
|
149
|
+
class: "flex flex-col gap-3 lg:flex-row lg:items-end lg:justify-between",
|
|
150
|
+
onSubmit: de(Ce, ["prevent"])
|
|
151
|
+
}, [
|
|
152
|
+
u("div", zt, [
|
|
153
|
+
t(F, { for: "firebase-auth-user-search" }, {
|
|
154
|
+
default: l(() => [...e[13] || (e[13] = [
|
|
155
|
+
n("Exact user search", -1)
|
|
156
|
+
])]),
|
|
157
|
+
_: 1
|
|
158
|
+
}),
|
|
159
|
+
u("div", Mt, [
|
|
160
|
+
t(Ee, {
|
|
161
|
+
modelValue: U.value,
|
|
162
|
+
"onUpdate:modelValue": e[1] || (e[1] = (a) => U.value = a)
|
|
163
|
+
}, {
|
|
164
|
+
default: l(() => [
|
|
165
|
+
t(q, { "aria-label": "Search Firebase users by" }, {
|
|
166
|
+
default: l(() => [
|
|
167
|
+
t($)
|
|
168
|
+
]),
|
|
169
|
+
_: 1
|
|
170
|
+
}),
|
|
171
|
+
t(De, null, {
|
|
172
|
+
default: l(() => [
|
|
173
|
+
t(K, { value: "uid" }, {
|
|
174
|
+
default: l(() => [...e[14] || (e[14] = [
|
|
175
|
+
n("UID", -1)
|
|
176
|
+
])]),
|
|
177
|
+
_: 1
|
|
178
|
+
}),
|
|
179
|
+
t(K, {
|
|
180
|
+
value: "email",
|
|
181
|
+
disabled: !h.value
|
|
182
|
+
}, {
|
|
183
|
+
default: l(() => [...e[15] || (e[15] = [
|
|
184
|
+
n("Email", -1)
|
|
185
|
+
])]),
|
|
186
|
+
_: 1
|
|
187
|
+
}, 8, ["disabled"]),
|
|
188
|
+
t(K, {
|
|
189
|
+
value: "phone",
|
|
190
|
+
disabled: !h.value
|
|
191
|
+
}, {
|
|
192
|
+
default: l(() => [...e[16] || (e[16] = [
|
|
193
|
+
n("Phone", -1)
|
|
194
|
+
])]),
|
|
195
|
+
_: 1
|
|
196
|
+
}, 8, ["disabled"])
|
|
197
|
+
]),
|
|
198
|
+
_: 1
|
|
199
|
+
})
|
|
200
|
+
]),
|
|
201
|
+
_: 1
|
|
202
|
+
}, 8, ["modelValue"]),
|
|
203
|
+
u("div", Dt, [
|
|
204
|
+
t(i(pe), { class: "pointer-events-none absolute left-3 top-1/2 size-4 -translate-y-1/2 text-muted-foreground" }),
|
|
205
|
+
t(Ue, {
|
|
206
|
+
id: "firebase-auth-user-search",
|
|
207
|
+
modelValue: z.value,
|
|
208
|
+
"onUpdate:modelValue": e[2] || (e[2] = (a) => z.value = a),
|
|
209
|
+
type: "search",
|
|
210
|
+
placeholder: U.value === "uid" ? "Exact Firebase UID" : U.value === "email" ? "user@example.com" : "+32470000000",
|
|
211
|
+
class: "pl-9 pr-9",
|
|
212
|
+
autocomplete: "off"
|
|
213
|
+
}, null, 8, ["modelValue", "placeholder"]),
|
|
214
|
+
z.value ? (o(), d(p, {
|
|
215
|
+
key: 0,
|
|
216
|
+
type: "button",
|
|
217
|
+
variant: "ghost",
|
|
218
|
+
size: "icon",
|
|
219
|
+
class: "absolute right-0 top-0",
|
|
220
|
+
"aria-label": "Clear search",
|
|
221
|
+
onClick: se
|
|
222
|
+
}, {
|
|
223
|
+
default: l(() => [
|
|
224
|
+
t(i(tt), { class: "size-4" })
|
|
225
|
+
]),
|
|
226
|
+
_: 1
|
|
227
|
+
})) : f("", !0)
|
|
228
|
+
]),
|
|
229
|
+
t(p, {
|
|
230
|
+
type: "submit",
|
|
231
|
+
variant: "outline",
|
|
232
|
+
class: "w-full sm:w-auto",
|
|
233
|
+
disabled: _.value || !z.value
|
|
234
|
+
}, {
|
|
235
|
+
default: l(() => [
|
|
236
|
+
t(i(pe), { class: "size-4" }),
|
|
237
|
+
e[17] || (e[17] = n(" Search ", -1))
|
|
238
|
+
]),
|
|
239
|
+
_: 1
|
|
240
|
+
}, 8, ["disabled"])
|
|
241
|
+
]),
|
|
242
|
+
e[18] || (e[18] = u("p", { class: "text-xs text-muted-foreground" }, " Choose the identifier type explicitly. Matching is exact; browse the directory with Previous and Next below. ", -1))
|
|
243
|
+
]),
|
|
244
|
+
t(p, {
|
|
245
|
+
type: "button",
|
|
246
|
+
variant: "ghost",
|
|
247
|
+
disabled: _.value,
|
|
248
|
+
onClick: e[3] || (e[3] = (a) => C())
|
|
249
|
+
}, {
|
|
250
|
+
default: l(() => [
|
|
251
|
+
t(i(ve), {
|
|
252
|
+
class: J(["size-4", { "animate-spin": _.value }])
|
|
253
|
+
}, null, 8, ["class"]),
|
|
254
|
+
e[19] || (e[19] = n(" Refresh ", -1))
|
|
255
|
+
]),
|
|
256
|
+
_: 1
|
|
257
|
+
}, 8, ["disabled"])
|
|
258
|
+
], 32)
|
|
259
|
+
]),
|
|
260
|
+
H.value ? (o(), d(re, {
|
|
261
|
+
key: 0,
|
|
262
|
+
class: "mt-6 border-amber-400/60 bg-amber-50 dark:border-amber-800/70 dark:bg-amber-950/30"
|
|
263
|
+
}, {
|
|
264
|
+
default: l(() => [
|
|
265
|
+
t(i(fe)),
|
|
266
|
+
t(oe, null, {
|
|
267
|
+
default: l(() => [...e[20] || (e[20] = [
|
|
268
|
+
n("Activity entry confirmation missing", -1)
|
|
269
|
+
])]),
|
|
270
|
+
_: 1
|
|
271
|
+
}),
|
|
272
|
+
t(ie, null, {
|
|
273
|
+
default: l(() => [
|
|
274
|
+
n(m(H.value), 1)
|
|
275
|
+
]),
|
|
276
|
+
_: 1
|
|
277
|
+
})
|
|
278
|
+
]),
|
|
279
|
+
_: 1
|
|
280
|
+
})) : f("", !0),
|
|
281
|
+
_.value ? (o(), x("section", Et, [
|
|
282
|
+
(o(), x(R, null, Q(6, (a) => u("div", {
|
|
283
|
+
key: a,
|
|
284
|
+
class: "flex items-center gap-4 border-b p-4 last:border-b-0"
|
|
285
|
+
}, [
|
|
286
|
+
t(N, { class: "size-10 shrink-0 rounded-full" }),
|
|
287
|
+
u("div", Ut, [
|
|
288
|
+
t(N, { class: "h-4 w-48 max-w-full" }),
|
|
289
|
+
t(N, { class: "h-3 w-72 max-w-full" })
|
|
290
|
+
]),
|
|
291
|
+
t(N, { class: "hidden h-6 w-24 rounded-full sm:block" }),
|
|
292
|
+
t(N, { class: "size-8 rounded-md" })
|
|
293
|
+
])), 64))
|
|
294
|
+
])) : V.value ? (o(), d(re, {
|
|
295
|
+
key: 2,
|
|
296
|
+
variant: "destructive",
|
|
297
|
+
class: "mt-6"
|
|
298
|
+
}, {
|
|
299
|
+
default: l(() => [
|
|
300
|
+
t(i(lt)),
|
|
301
|
+
t(oe, null, {
|
|
302
|
+
default: l(() => [...e[21] || (e[21] = [
|
|
303
|
+
n("Could not load Firebase users", -1)
|
|
304
|
+
])]),
|
|
305
|
+
_: 1
|
|
306
|
+
}),
|
|
307
|
+
t(ie, { class: "flex flex-col items-start gap-3 sm:flex-row sm:items-center sm:justify-between" }, {
|
|
308
|
+
default: l(() => [
|
|
309
|
+
u("span", null, m(V.value), 1),
|
|
310
|
+
t(p, {
|
|
311
|
+
variant: "outline",
|
|
312
|
+
size: "sm",
|
|
313
|
+
onClick: e[4] || (e[4] = (a) => C())
|
|
314
|
+
}, {
|
|
315
|
+
default: l(() => [
|
|
316
|
+
t(i(ve), { class: "size-4" }),
|
|
317
|
+
e[22] || (e[22] = n(" Try again ", -1))
|
|
318
|
+
]),
|
|
319
|
+
_: 1
|
|
320
|
+
})
|
|
321
|
+
]),
|
|
322
|
+
_: 1
|
|
323
|
+
})
|
|
324
|
+
]),
|
|
325
|
+
_: 1
|
|
326
|
+
})) : k.value.length === 0 ? (o(), d(Ve, {
|
|
327
|
+
key: 3,
|
|
328
|
+
class: "mt-6 min-h-80 rounded-xl border border-dashed"
|
|
329
|
+
}, {
|
|
330
|
+
default: l(() => [
|
|
331
|
+
t(Ne, null, {
|
|
332
|
+
default: l(() => [
|
|
333
|
+
t(Pe, { variant: "icon" }, {
|
|
334
|
+
default: l(() => [
|
|
335
|
+
t(i(at))
|
|
336
|
+
]),
|
|
337
|
+
_: 1
|
|
338
|
+
}),
|
|
339
|
+
t(Be, null, {
|
|
340
|
+
default: l(() => [
|
|
341
|
+
n(m(w.value ? "No exact user match" : "No users on this page"), 1)
|
|
342
|
+
]),
|
|
343
|
+
_: 1
|
|
344
|
+
}),
|
|
345
|
+
t(Fe, null, {
|
|
346
|
+
default: l(() => [
|
|
347
|
+
n(m(w.value ? I.value === "uid" ? "Check the complete Firebase UID and try again." : I.value === "email" ? "Check the complete email address and try again." : "Check the complete E.164 phone number and try again." : "Create the first Authentication user or refresh this directory."), 1)
|
|
348
|
+
]),
|
|
349
|
+
_: 1
|
|
350
|
+
})
|
|
351
|
+
]),
|
|
352
|
+
_: 1
|
|
353
|
+
}),
|
|
354
|
+
t(Re, null, {
|
|
355
|
+
default: l(() => [
|
|
356
|
+
w.value ? (o(), d(p, {
|
|
357
|
+
key: 0,
|
|
358
|
+
variant: "outline",
|
|
359
|
+
onClick: se
|
|
360
|
+
}, {
|
|
361
|
+
default: l(() => [...e[23] || (e[23] = [
|
|
362
|
+
n("Clear search", -1)
|
|
363
|
+
])]),
|
|
364
|
+
_: 1
|
|
365
|
+
})) : te.value ? (o(), d(p, {
|
|
366
|
+
key: 1,
|
|
367
|
+
onClick: e[5] || (e[5] = (a) => i(D)("new"))
|
|
368
|
+
}, {
|
|
369
|
+
default: l(() => [
|
|
370
|
+
t(i(me), { class: "size-4" }),
|
|
371
|
+
e[24] || (e[24] = n(" New user ", -1))
|
|
372
|
+
]),
|
|
373
|
+
_: 1
|
|
374
|
+
})) : f("", !0)
|
|
375
|
+
]),
|
|
376
|
+
_: 1
|
|
377
|
+
})
|
|
378
|
+
]),
|
|
379
|
+
_: 1
|
|
380
|
+
})) : (o(), x(R, { key: 4 }, [
|
|
381
|
+
t(Ye, { class: "mt-6 gap-0 overflow-hidden py-0" }, {
|
|
382
|
+
default: l(() => [
|
|
383
|
+
t(Ke, { class: "table-fixed @2xl:table-auto" }, {
|
|
384
|
+
default: l(() => [
|
|
385
|
+
t(Ie, null, {
|
|
386
|
+
default: l(() => [
|
|
387
|
+
t(ue, null, {
|
|
388
|
+
default: l(() => [
|
|
389
|
+
t(S, null, {
|
|
390
|
+
default: l(() => [...e[25] || (e[25] = [
|
|
391
|
+
n("User", -1)
|
|
392
|
+
])]),
|
|
393
|
+
_: 1
|
|
394
|
+
}),
|
|
395
|
+
t(S, { class: "hidden @2xl:table-cell" }, {
|
|
396
|
+
default: l(() => [...e[26] || (e[26] = [
|
|
397
|
+
n("Access", -1)
|
|
398
|
+
])]),
|
|
399
|
+
_: 1
|
|
400
|
+
}),
|
|
401
|
+
h.value ? (o(), d(S, {
|
|
402
|
+
key: 0,
|
|
403
|
+
class: "hidden @4xl:table-cell"
|
|
404
|
+
}, {
|
|
405
|
+
default: l(() => [...e[27] || (e[27] = [
|
|
406
|
+
n("Verification", -1)
|
|
407
|
+
])]),
|
|
408
|
+
_: 1
|
|
409
|
+
})) : f("", !0),
|
|
410
|
+
t(S, { class: "hidden @5xl:table-cell" }, {
|
|
411
|
+
default: l(() => [...e[28] || (e[28] = [
|
|
412
|
+
n("Providers", -1)
|
|
413
|
+
])]),
|
|
414
|
+
_: 1
|
|
415
|
+
}),
|
|
416
|
+
t(S, { class: "hidden @6xl:table-cell" }, {
|
|
417
|
+
default: l(() => [...e[29] || (e[29] = [
|
|
418
|
+
n("Last sign-in", -1)
|
|
419
|
+
])]),
|
|
420
|
+
_: 1
|
|
421
|
+
}),
|
|
422
|
+
O.value ? (o(), d(S, {
|
|
423
|
+
key: 1,
|
|
424
|
+
class: "hidden @3xl:table-cell"
|
|
425
|
+
}, {
|
|
426
|
+
default: l(() => [...e[30] || (e[30] = [
|
|
427
|
+
n("Profile", -1)
|
|
428
|
+
])]),
|
|
429
|
+
_: 1
|
|
430
|
+
})) : f("", !0),
|
|
431
|
+
t(S, { class: "w-16 text-right" }, {
|
|
432
|
+
default: l(() => [...e[31] || (e[31] = [
|
|
433
|
+
u("span", { class: "sr-only" }, "Actions", -1)
|
|
434
|
+
])]),
|
|
435
|
+
_: 1
|
|
436
|
+
})
|
|
437
|
+
]),
|
|
438
|
+
_: 1
|
|
439
|
+
})
|
|
440
|
+
]),
|
|
441
|
+
_: 1
|
|
442
|
+
}),
|
|
443
|
+
t(qe, null, {
|
|
444
|
+
default: l(() => [
|
|
445
|
+
(o(!0), x(R, null, Q(k.value, (a) => (o(), d(ue, {
|
|
446
|
+
key: a.uid,
|
|
447
|
+
class: "cursor-pointer",
|
|
448
|
+
onClick: (A) => i(D)(i(Z)(a.uid))
|
|
449
|
+
}, {
|
|
450
|
+
default: l(() => [
|
|
451
|
+
t(T, null, {
|
|
452
|
+
default: l(() => [
|
|
453
|
+
u("div", Pt, [
|
|
454
|
+
t(je, { class: "size-10 shrink-0" }, {
|
|
455
|
+
default: l(() => [
|
|
456
|
+
h.value && a.photoURL ? (o(), d(Le, {
|
|
457
|
+
key: 0,
|
|
458
|
+
src: a.photoURL,
|
|
459
|
+
alt: W(a)
|
|
460
|
+
}, null, 8, ["src", "alt"])) : f("", !0),
|
|
461
|
+
t($e, null, {
|
|
462
|
+
default: l(() => [
|
|
463
|
+
n(m(h.value ? i(ft)(a) : "U"), 1)
|
|
464
|
+
]),
|
|
465
|
+
_: 2
|
|
466
|
+
}, 1024)
|
|
467
|
+
]),
|
|
468
|
+
_: 2
|
|
469
|
+
}, 1024),
|
|
470
|
+
u("div", Bt, [
|
|
471
|
+
u("p", Ft, m(W(a)), 1),
|
|
472
|
+
u("p", {
|
|
473
|
+
class: "truncate text-xs text-muted-foreground",
|
|
474
|
+
title: X(a)
|
|
475
|
+
}, m(X(a)), 9, Nt),
|
|
476
|
+
u("div", Rt, [
|
|
477
|
+
t(ge, {
|
|
478
|
+
disabled: a.disabled
|
|
479
|
+
}, null, 8, ["disabled"]),
|
|
480
|
+
O.value ? (o(), d(c, {
|
|
481
|
+
key: 0,
|
|
482
|
+
variant: "outline",
|
|
483
|
+
class: J(a.profile?.enabled && a.profile.exists ? "border-emerald-400/60 text-emerald-700 dark:text-emerald-300" : a.profile?.enabled ? "border-amber-400/60 text-amber-700 dark:text-amber-300" : "text-muted-foreground")
|
|
484
|
+
}, {
|
|
485
|
+
default: l(() => [
|
|
486
|
+
n(m(a.profile?.enabled ? a.profile.exists ? "Profile linked" : "Profile missing" : "Profile unavailable"), 1)
|
|
487
|
+
]),
|
|
488
|
+
_: 2
|
|
489
|
+
}, 1032, ["class"])) : f("", !0)
|
|
490
|
+
])
|
|
491
|
+
])
|
|
492
|
+
])
|
|
493
|
+
]),
|
|
494
|
+
_: 2
|
|
495
|
+
}, 1024),
|
|
496
|
+
t(T, { class: "hidden @2xl:table-cell" }, {
|
|
497
|
+
default: l(() => [
|
|
498
|
+
t(ge, {
|
|
499
|
+
disabled: a.disabled
|
|
500
|
+
}, null, 8, ["disabled"])
|
|
501
|
+
]),
|
|
502
|
+
_: 2
|
|
503
|
+
}, 1024),
|
|
504
|
+
h.value ? (o(), d(T, {
|
|
505
|
+
key: 0,
|
|
506
|
+
class: "hidden @4xl:table-cell"
|
|
507
|
+
}, {
|
|
508
|
+
default: l(() => [
|
|
509
|
+
a.email && a.emailVerified ? (o(), d(c, {
|
|
510
|
+
key: 0,
|
|
511
|
+
variant: "outline",
|
|
512
|
+
class: "gap-1 text-emerald-700 dark:text-emerald-300"
|
|
513
|
+
}, {
|
|
514
|
+
default: l(() => [
|
|
515
|
+
t(i(be), { class: "size-3" }),
|
|
516
|
+
e[32] || (e[32] = n(" Verified ", -1))
|
|
517
|
+
]),
|
|
518
|
+
_: 1
|
|
519
|
+
})) : a.email ? (o(), d(c, {
|
|
520
|
+
key: 1,
|
|
521
|
+
variant: "outline",
|
|
522
|
+
class: "gap-1 text-amber-700 dark:text-amber-300"
|
|
523
|
+
}, {
|
|
524
|
+
default: l(() => [
|
|
525
|
+
t(i(xe), { class: "size-3" }),
|
|
526
|
+
e[33] || (e[33] = n(" Unverified ", -1))
|
|
527
|
+
]),
|
|
528
|
+
_: 1
|
|
529
|
+
})) : (o(), x("span", Vt, "No email"))
|
|
530
|
+
]),
|
|
531
|
+
_: 2
|
|
532
|
+
}, 1024)) : f("", !0),
|
|
533
|
+
t(T, { class: "hidden @5xl:table-cell" }, {
|
|
534
|
+
default: l(() => [
|
|
535
|
+
u("div", It, [
|
|
536
|
+
(o(!0), x(R, null, Q(a.providers, (A) => (o(), d(c, {
|
|
537
|
+
key: A,
|
|
538
|
+
variant: "secondary"
|
|
539
|
+
}, {
|
|
540
|
+
default: l(() => [
|
|
541
|
+
n(m(i(pt)(A)), 1)
|
|
542
|
+
]),
|
|
543
|
+
_: 2
|
|
544
|
+
}, 1024))), 128)),
|
|
545
|
+
a.providers.length === 0 ? (o(), x("span", Lt, "None")) : f("", !0)
|
|
546
|
+
])
|
|
547
|
+
]),
|
|
548
|
+
_: 2
|
|
549
|
+
}, 1024),
|
|
550
|
+
t(T, { class: "hidden whitespace-nowrap @6xl:table-cell" }, {
|
|
551
|
+
default: l(() => [
|
|
552
|
+
n(m(i(vt)(a.lastSignInAt)), 1)
|
|
553
|
+
]),
|
|
554
|
+
_: 2
|
|
555
|
+
}, 1024),
|
|
556
|
+
O.value ? (o(), d(T, {
|
|
557
|
+
key: 1,
|
|
558
|
+
class: "hidden @3xl:table-cell"
|
|
559
|
+
}, {
|
|
560
|
+
default: l(() => [
|
|
561
|
+
t(c, {
|
|
562
|
+
variant: "outline",
|
|
563
|
+
class: J(a.profile?.enabled && a.profile.exists ? "border-emerald-400/60 text-emerald-700 dark:text-emerald-300" : a.profile?.enabled ? "border-amber-400/60 text-amber-700 dark:text-amber-300" : "text-muted-foreground")
|
|
564
|
+
}, {
|
|
565
|
+
default: l(() => [
|
|
566
|
+
n(m(a.profile?.enabled ? a.profile.exists ? "Linked" : "Missing" : "Unavailable"), 1)
|
|
567
|
+
]),
|
|
568
|
+
_: 2
|
|
569
|
+
}, 1032, ["class"])
|
|
570
|
+
]),
|
|
571
|
+
_: 2
|
|
572
|
+
}, 1024)) : f("", !0),
|
|
573
|
+
t(T, {
|
|
574
|
+
class: "text-right",
|
|
575
|
+
onClick: e[6] || (e[6] = de(() => {
|
|
576
|
+
}, ["stop"]))
|
|
577
|
+
}, {
|
|
578
|
+
default: l(() => [
|
|
579
|
+
ke.value ? (o(), d(Xe, { key: 0 }, {
|
|
580
|
+
default: l(() => [
|
|
581
|
+
t(He, { "as-child": "" }, {
|
|
582
|
+
default: l(() => [
|
|
583
|
+
t(p, {
|
|
584
|
+
variant: "ghost",
|
|
585
|
+
size: "icon",
|
|
586
|
+
"aria-label": "User actions"
|
|
587
|
+
}, {
|
|
588
|
+
default: l(() => [
|
|
589
|
+
t(i(st), { class: "size-4" })
|
|
590
|
+
]),
|
|
591
|
+
_: 1
|
|
592
|
+
})
|
|
593
|
+
]),
|
|
594
|
+
_: 1
|
|
595
|
+
}),
|
|
596
|
+
t(We, {
|
|
597
|
+
align: "end",
|
|
598
|
+
class: "w-56"
|
|
599
|
+
}, {
|
|
600
|
+
default: l(() => [
|
|
601
|
+
t(Ge, { class: "truncate" }, {
|
|
602
|
+
default: l(() => [
|
|
603
|
+
n(m(W(a)), 1)
|
|
604
|
+
]),
|
|
605
|
+
_: 2
|
|
606
|
+
}, 1024),
|
|
607
|
+
t(Oe),
|
|
608
|
+
t(Y, {
|
|
609
|
+
onClick: (A) => i(D)(i(Z)(a.uid))
|
|
610
|
+
}, {
|
|
611
|
+
default: l(() => [
|
|
612
|
+
t(i(_e), { class: "size-4" }),
|
|
613
|
+
e[34] || (e[34] = n(" Open user ", -1))
|
|
614
|
+
]),
|
|
615
|
+
_: 1
|
|
616
|
+
}, 8, ["onClick"]),
|
|
617
|
+
le.value ? (o(), d(Y, {
|
|
618
|
+
key: 0,
|
|
619
|
+
onClick: (A) => Ae(a)
|
|
620
|
+
}, {
|
|
621
|
+
default: l(() => [
|
|
622
|
+
a.disabled ? (o(), d(i(be), {
|
|
623
|
+
key: 0,
|
|
624
|
+
class: "size-4"
|
|
625
|
+
})) : (o(), d(i(xe), {
|
|
626
|
+
key: 1,
|
|
627
|
+
class: "size-4"
|
|
628
|
+
})),
|
|
629
|
+
n(" " + m(a.disabled ? "Restore sign-in" : "Suspend sign-in"), 1)
|
|
630
|
+
]),
|
|
631
|
+
_: 2
|
|
632
|
+
}, 1032, ["onClick"])) : f("", !0),
|
|
633
|
+
ae.value ? (o(), d(Y, {
|
|
634
|
+
key: 1,
|
|
635
|
+
onClick: (A) => ze(a)
|
|
636
|
+
}, {
|
|
637
|
+
default: l(() => [
|
|
638
|
+
t(i(nt), { class: "size-4" }),
|
|
639
|
+
e[35] || (e[35] = n(" Revoke sessions ", -1))
|
|
640
|
+
]),
|
|
641
|
+
_: 1
|
|
642
|
+
}, 8, ["onClick"])) : f("", !0)
|
|
643
|
+
]),
|
|
644
|
+
_: 2
|
|
645
|
+
}, 1024)
|
|
646
|
+
]),
|
|
647
|
+
_: 2
|
|
648
|
+
}, 1024)) : (o(), d(p, {
|
|
649
|
+
key: 1,
|
|
650
|
+
variant: "ghost",
|
|
651
|
+
size: "icon",
|
|
652
|
+
"aria-label": "Open user",
|
|
653
|
+
onClick: (A) => i(D)(i(Z)(a.uid))
|
|
654
|
+
}, {
|
|
655
|
+
default: l(() => [
|
|
656
|
+
t(i(_e), { class: "size-4" })
|
|
657
|
+
]),
|
|
658
|
+
_: 1
|
|
659
|
+
}, 8, ["onClick"]))
|
|
660
|
+
]),
|
|
661
|
+
_: 2
|
|
662
|
+
}, 1024)
|
|
663
|
+
]),
|
|
664
|
+
_: 2
|
|
665
|
+
}, 1032, ["onClick"]))), 128))
|
|
666
|
+
]),
|
|
667
|
+
_: 1
|
|
668
|
+
})
|
|
669
|
+
]),
|
|
670
|
+
_: 1
|
|
671
|
+
})
|
|
672
|
+
]),
|
|
673
|
+
_: 1
|
|
674
|
+
}),
|
|
675
|
+
u("footer", $t, [
|
|
676
|
+
u("p", null, [
|
|
677
|
+
n(" Showing " + m(k.value.length) + " " + m(k.value.length === 1 ? "user" : "users") + " ", 1),
|
|
678
|
+
w.value ? (o(), x("span", jt, " for the exact search")) : f("", !0)
|
|
679
|
+
]),
|
|
680
|
+
t(Qe, null, {
|
|
681
|
+
default: l(() => [
|
|
682
|
+
t(p, {
|
|
683
|
+
variant: "outline",
|
|
684
|
+
size: "sm",
|
|
685
|
+
disabled: g.value.length === 0 || _.value,
|
|
686
|
+
onClick: Te
|
|
687
|
+
}, {
|
|
688
|
+
default: l(() => [
|
|
689
|
+
t(i(ot), { class: "size-4" }),
|
|
690
|
+
e[36] || (e[36] = n(" Previous ", -1))
|
|
691
|
+
]),
|
|
692
|
+
_: 1
|
|
693
|
+
}, 8, ["disabled"]),
|
|
694
|
+
t(Je, { class: "min-w-20 justify-center" }, {
|
|
695
|
+
default: l(() => [
|
|
696
|
+
n("Page " + m(he.value), 1)
|
|
697
|
+
]),
|
|
698
|
+
_: 1
|
|
699
|
+
}),
|
|
700
|
+
t(p, {
|
|
701
|
+
variant: "outline",
|
|
702
|
+
size: "sm",
|
|
703
|
+
disabled: !B.value || _.value,
|
|
704
|
+
onClick: Se
|
|
705
|
+
}, {
|
|
706
|
+
default: l(() => [
|
|
707
|
+
e[37] || (e[37] = n(" Next ", -1)),
|
|
708
|
+
t(i(it), { class: "size-4" })
|
|
709
|
+
]),
|
|
710
|
+
_: 1
|
|
711
|
+
}, 8, ["disabled"])
|
|
712
|
+
]),
|
|
713
|
+
_: 1
|
|
714
|
+
})
|
|
715
|
+
])
|
|
716
|
+
], 64))
|
|
717
|
+
], 64)) : (o(), x("section", Ct, [
|
|
718
|
+
u("div", St, [
|
|
719
|
+
u("div", Tt, [
|
|
720
|
+
t(i(fe), { class: "size-5 text-muted-foreground" })
|
|
721
|
+
]),
|
|
722
|
+
e[11] || (e[11] = u("h2", { class: "mt-4 font-semibold" }, "You cannot view Firebase users", -1)),
|
|
723
|
+
e[12] || (e[12] = u("p", { class: "mt-1 text-sm leading-6 text-muted-foreground" }, " Ask a project administrator for the View Firebase users permission. ", -1))
|
|
724
|
+
])
|
|
725
|
+
])),
|
|
726
|
+
b.value ? (o(), d(bt, {
|
|
727
|
+
key: 2,
|
|
728
|
+
open: !!b.value,
|
|
729
|
+
title: b.value.title,
|
|
730
|
+
description: b.value.description,
|
|
731
|
+
"confirm-label": b.value.confirmLabel,
|
|
732
|
+
subject: X(b.value.user),
|
|
733
|
+
destructive: b.value.destructive,
|
|
734
|
+
busy: L.value,
|
|
735
|
+
error: M.value,
|
|
736
|
+
"onUpdate:open": ne,
|
|
737
|
+
onConfirm: Me
|
|
738
|
+
}, null, 8, ["open", "title", "description", "confirm-label", "subject", "destructive", "busy", "error"])) : f("", !0)
|
|
739
|
+
]);
|
|
740
|
+
};
|
|
741
|
+
}
|
|
742
|
+
});
|
|
743
|
+
export {
|
|
744
|
+
Kt as default
|
|
745
|
+
};
|