@datatechsolutions/ui 3.5.0 → 3.5.1
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/astrlabe/contracts.d.mts +517 -0
- package/dist/astrlabe/contracts.d.ts +517 -0
- package/dist/astrlabe/graph-node.d.mts +28 -0
- package/dist/astrlabe/graph-node.d.ts +28 -0
- package/dist/astrlabe/index.d.mts +743 -0
- package/dist/astrlabe/index.d.ts +743 -0
- package/dist/astrlabe/index.js +108 -108
- package/dist/astrlabe/index.mjs +4 -4
- package/dist/astrlabe/utils.d.mts +60 -0
- package/dist/astrlabe/utils.d.ts +60 -0
- package/dist/astrlabe/workflow-canvas.d.mts +6 -0
- package/dist/astrlabe/workflow-canvas.d.ts +6 -0
- package/dist/astrlabe/workflow-canvas.js +4 -4
- package/dist/astrlabe/workflow-canvas.mjs +3 -3
- package/dist/astrlabe/workflow-preview-canvas.d.mts +10 -0
- package/dist/astrlabe/workflow-preview-canvas.d.ts +10 -0
- package/dist/billing-panel-DsHhhJqG.d.mts +18 -0
- package/dist/billing-panel-DsHhhJqG.d.ts +18 -0
- package/dist/brand/index.d.mts +71 -0
- package/dist/brand/index.d.ts +71 -0
- package/dist/{chunk-UHMAKUON.mjs → chunk-2TBNOQ7M.mjs} +3 -3
- package/dist/{chunk-UHMAKUON.mjs.map → chunk-2TBNOQ7M.mjs.map} +1 -1
- package/dist/{chunk-CY2MBKVG.js → chunk-2UMDWOUY.js} +4 -4
- package/dist/{chunk-CY2MBKVG.js.map → chunk-2UMDWOUY.js.map} +1 -1
- package/dist/{chunk-6V3DUBOZ.mjs → chunk-37ZLBCJF.mjs} +7 -7
- package/dist/{chunk-6V3DUBOZ.mjs.map → chunk-37ZLBCJF.mjs.map} +1 -1
- package/dist/{chunk-NCDBNGIB.js → chunk-5AVO5DJO.js} +62 -62
- package/dist/{chunk-NCDBNGIB.js.map → chunk-5AVO5DJO.js.map} +1 -1
- package/dist/{chunk-QPSHM2JQ.mjs → chunk-7OZ4MVEF.mjs} +4 -4
- package/dist/{chunk-QPSHM2JQ.mjs.map → chunk-7OZ4MVEF.mjs.map} +1 -1
- package/dist/{chunk-3OLYSMI5.mjs → chunk-CDYNTHUE.mjs} +4 -4
- package/dist/{chunk-3OLYSMI5.mjs.map → chunk-CDYNTHUE.mjs.map} +1 -1
- package/dist/{chunk-IOEQ2GET.mjs → chunk-CJGNEALB.mjs} +4 -4
- package/dist/{chunk-IOEQ2GET.mjs.map → chunk-CJGNEALB.mjs.map} +1 -1
- package/dist/{chunk-NJ5RVWLA.mjs → chunk-CP5QXRXA.mjs} +4 -4
- package/dist/{chunk-NJ5RVWLA.mjs.map → chunk-CP5QXRXA.mjs.map} +1 -1
- package/dist/{chunk-2MJAHST4.mjs → chunk-EGXB3WXT.mjs} +4 -4
- package/dist/{chunk-2MJAHST4.mjs.map → chunk-EGXB3WXT.mjs.map} +1 -1
- package/dist/{chunk-NKXQYFS7.js → chunk-EI6FIA45.js} +16 -16
- package/dist/{chunk-NKXQYFS7.js.map → chunk-EI6FIA45.js.map} +1 -1
- package/dist/{chunk-NOHHZ6FM.mjs → chunk-EUXHJMGC.mjs} +3 -3
- package/dist/{chunk-NOHHZ6FM.mjs.map → chunk-EUXHJMGC.mjs.map} +1 -1
- package/dist/{chunk-QSMPKL27.js → chunk-F5UDX6JA.js} +74 -74
- package/dist/{chunk-QSMPKL27.js.map → chunk-F5UDX6JA.js.map} +1 -1
- package/dist/{chunk-P43PX75J.js → chunk-HVDDCBQ2.js} +33 -33
- package/dist/{chunk-P43PX75J.js.map → chunk-HVDDCBQ2.js.map} +1 -1
- package/dist/{chunk-AWDH6WNA.js → chunk-K4M4B6ME.js} +3 -3
- package/dist/{chunk-AWDH6WNA.js.map → chunk-K4M4B6ME.js.map} +1 -1
- package/dist/{chunk-VMGNQFRO.js → chunk-KIBOX3UQ.js} +53 -53
- package/dist/{chunk-VMGNQFRO.js.map → chunk-KIBOX3UQ.js.map} +1 -1
- package/dist/{chunk-5I7F7KZ6.js → chunk-KRPSTXN5.js} +10 -10
- package/dist/{chunk-5I7F7KZ6.js.map → chunk-KRPSTXN5.js.map} +1 -1
- package/dist/{chunk-ZM2Q2SMC.mjs → chunk-L5O4NWQO.mjs} +3 -3
- package/dist/{chunk-ZM2Q2SMC.mjs.map → chunk-L5O4NWQO.mjs.map} +1 -1
- package/dist/{chunk-BVXATTTA.js → chunk-MT4FJRMD.js} +4 -4
- package/dist/{chunk-BVXATTTA.js.map → chunk-MT4FJRMD.js.map} +1 -1
- package/dist/{chunk-C4NRF2G2.js → chunk-OWJIKCR2.js} +13 -13
- package/dist/{chunk-C4NRF2G2.js.map → chunk-OWJIKCR2.js.map} +1 -1
- package/dist/{chunk-5BEVTOZV.mjs → chunk-PFHXKWFT.mjs} +4 -4
- package/dist/{chunk-5BEVTOZV.mjs.map → chunk-PFHXKWFT.mjs.map} +1 -1
- package/dist/{chunk-QLFSJ6HK.mjs → chunk-PI2C3S6A.mjs} +3 -3
- package/dist/{chunk-QLFSJ6HK.mjs.map → chunk-PI2C3S6A.mjs.map} +1 -1
- package/dist/{chunk-74MHWEDC.js → chunk-PYQLY2RH.js} +161 -161
- package/dist/{chunk-74MHWEDC.js.map → chunk-PYQLY2RH.js.map} +1 -1
- package/dist/{chunk-Z7VY5M4T.js → chunk-QIUVK4BI.js} +77 -77
- package/dist/{chunk-Z7VY5M4T.js.map → chunk-QIUVK4BI.js.map} +1 -1
- package/dist/{chunk-4PFU6A2B.mjs → chunk-R3Q5RXXO.mjs} +3 -3
- package/dist/{chunk-4PFU6A2B.mjs.map → chunk-R3Q5RXXO.mjs.map} +1 -1
- package/dist/{chunk-7UHV6A4C.mjs → chunk-R6O57NTJ.mjs} +6 -6
- package/dist/{chunk-7UHV6A4C.mjs.map → chunk-R6O57NTJ.mjs.map} +1 -1
- package/dist/{chunk-A7FI4K7Z.js → chunk-RQBTLFYH.js} +5 -5
- package/dist/{chunk-A7FI4K7Z.js.map → chunk-RQBTLFYH.js.map} +1 -1
- package/dist/{chunk-V5VBYOF5.js → chunk-SFFSXC5E.js} +36 -36
- package/dist/{chunk-V5VBYOF5.js.map → chunk-SFFSXC5E.js.map} +1 -1
- package/dist/{chunk-AVM53A3Y.js → chunk-U6XA2OYE.js} +28 -28
- package/dist/{chunk-AVM53A3Y.js.map → chunk-U6XA2OYE.js.map} +1 -1
- package/dist/{chunk-7CEZB3ZD.mjs → chunk-ULEPJXTN.mjs} +3 -3
- package/dist/{chunk-7CEZB3ZD.mjs.map → chunk-ULEPJXTN.mjs.map} +1 -1
- package/dist/{chunk-FK3WDELF.js → chunk-VMIAMBCP.js} +40 -40
- package/dist/{chunk-FK3WDELF.js.map → chunk-VMIAMBCP.js.map} +1 -1
- package/dist/{chunk-OASC7NYV.mjs → chunk-WKCR4KVQ.mjs} +3 -3
- package/dist/{chunk-OASC7NYV.mjs.map → chunk-WKCR4KVQ.mjs.map} +1 -1
- package/dist/{chunk-6W7VTZG6.mjs → chunk-YV2SE5LS.mjs} +3 -3
- package/dist/{chunk-6W7VTZG6.mjs.map → chunk-YV2SE5LS.mjs.map} +1 -1
- package/dist/dynamic-island-confirm-BKsZkAEP.d.mts +17 -0
- package/dist/dynamic-island-confirm-BKsZkAEP.d.ts +17 -0
- package/dist/index-BNRGVAS5.d.mts +222 -0
- package/dist/index-BoebbJ44.d.mts +49 -0
- package/dist/index-BoebbJ44.d.ts +49 -0
- package/dist/index-CnCY-b5V.d.ts +222 -0
- package/dist/index.d.mts +5310 -0
- package/dist/index.d.ts +5310 -0
- package/dist/index.js +721 -721
- package/dist/index.mjs +2 -2
- package/dist/layout-engine-YZcVr20M.d.mts +19 -0
- package/dist/layout-engine-YZcVr20M.d.ts +19 -0
- package/dist/lib/i18n-context.d.mts +36 -0
- package/dist/lib/i18n-context.d.ts +36 -0
- package/dist/lib/router-context.d.mts +35 -0
- package/dist/lib/router-context.d.ts +35 -0
- package/dist/navigation-BiWVffAN.d.mts +49 -0
- package/dist/navigation-BiWVffAN.d.ts +49 -0
- package/dist/platform/admin/index.d.mts +17 -0
- package/dist/platform/admin/index.d.ts +17 -0
- package/dist/platform/admin/index.js +11 -11
- package/dist/platform/admin/index.mjs +5 -5
- package/dist/platform/agents-workspace.d.mts +19 -0
- package/dist/platform/agents-workspace.d.ts +19 -0
- package/dist/platform/agents-workspace.js +7 -7
- package/dist/platform/agents-workspace.mjs +6 -6
- package/dist/platform/app-shell.d.mts +58 -0
- package/dist/platform/app-shell.d.ts +58 -0
- package/dist/platform/app-shell.js +4 -4
- package/dist/platform/app-shell.mjs +3 -3
- package/dist/platform/auth/index.d.mts +73 -0
- package/dist/platform/auth/index.d.ts +73 -0
- package/dist/platform/auth/index.js +28 -28
- package/dist/platform/auth/index.mjs +5 -5
- package/dist/platform/billing/index.d.mts +29 -0
- package/dist/platform/billing/index.d.ts +29 -0
- package/dist/platform/billing/index.js +4 -4
- package/dist/platform/billing/index.mjs +3 -3
- package/dist/platform/impersonation/index.d.mts +19 -0
- package/dist/platform/impersonation/index.d.ts +19 -0
- package/dist/platform/impersonation/index.js +4 -4
- package/dist/platform/impersonation/index.mjs +3 -3
- package/dist/platform/index.d.mts +188 -0
- package/dist/platform/index.d.ts +188 -0
- package/dist/platform/index.js +89 -89
- package/dist/platform/index.mjs +19 -19
- package/dist/platform/pages/index.d.mts +440 -0
- package/dist/platform/pages/index.d.ts +440 -0
- package/dist/platform/pages/index.js +206 -206
- package/dist/platform/pages/index.js.map +1 -1
- package/dist/platform/pages/index.mjs +9 -9
- package/dist/platform/pages/index.mjs.map +1 -1
- package/dist/platform/rbac.d.mts +42 -0
- package/dist/platform/rbac.d.ts +42 -0
- package/dist/platform/settings/index.d.mts +31 -0
- package/dist/platform/settings/index.d.ts +31 -0
- package/dist/platform/settings/index.js +8 -8
- package/dist/platform/settings/index.mjs +7 -7
- package/dist/platform/telemetry/index.d.mts +51 -0
- package/dist/platform/telemetry/index.d.ts +51 -0
- package/dist/platform/utils/index.d.mts +32 -0
- package/dist/platform/utils/index.d.ts +32 -0
- package/dist/platform/windsock-admin-client.d.mts +57 -0
- package/dist/platform/windsock-admin-client.d.ts +57 -0
- package/dist/platform/workflow-api-client.d.mts +6 -0
- package/dist/platform/workflow-api-client.d.ts +6 -0
- package/dist/platform/workflow-canvas-shell.d.mts +18 -0
- package/dist/platform/workflow-canvas-shell.d.ts +18 -0
- package/dist/platform/workflow-canvas-shell.js +5 -5
- package/dist/platform/workflow-canvas-shell.mjs +4 -4
- package/dist/rule-form-BYJzyork.d.mts +128 -0
- package/dist/rule-form-BYJzyork.d.ts +128 -0
- package/dist/workflow-api-client-CpFl3WcG.d.mts +468 -0
- package/dist/workflow-api-client-uLICOanv.d.ts +468 -0
- package/dist/workflow-canvas--qaYKuMm.d.ts +113 -0
- package/dist/workflow-canvas-B80fmD_n.d.mts +113 -0
- package/dist/workflow-store-o17I6L6A.d.ts +79 -0
- package/dist/workflow-store-ppVHdMZi.d.mts +79 -0
- package/package.json +1 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
5
|
-
var
|
|
4
|
+
var chunk2UMDWOUY_js = require('./chunk-2UMDWOUY.js');
|
|
5
|
+
var chunkK4M4B6ME_js = require('./chunk-K4M4B6ME.js');
|
|
6
6
|
var chunkUZ3CMNUJ_js = require('./chunk-UZ3CMNUJ.js');
|
|
7
7
|
var chunkYXN2K77G_js = require('./chunk-YXN2K77G.js');
|
|
8
8
|
var react = require('react');
|
|
@@ -39,7 +39,7 @@ function MfaSetup({
|
|
|
39
39
|
onVerifySetup
|
|
40
40
|
}) {
|
|
41
41
|
const t = chunkYXN2K77G_js.useTranslations("windsock");
|
|
42
|
-
const { client } =
|
|
42
|
+
const { client } = chunkK4M4B6ME_js.useAuth();
|
|
43
43
|
const setupSteps = [
|
|
44
44
|
{
|
|
45
45
|
id: "method",
|
|
@@ -161,7 +161,7 @@ function MfaSetup({
|
|
|
161
161
|
}
|
|
162
162
|
})();
|
|
163
163
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
164
|
-
|
|
164
|
+
chunkK4M4B6ME_js.StepFormPage,
|
|
165
165
|
{
|
|
166
166
|
title: t("mfa.setup.title"),
|
|
167
167
|
subtitle: enforcement === "required" ? t("mfa.setup.subtitleRequired") : t("mfa.setup.subtitleOptional"),
|
|
@@ -178,7 +178,7 @@ function MfaSetup({
|
|
|
178
178
|
canAdvance,
|
|
179
179
|
children: [
|
|
180
180
|
currentStep === 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
181
|
-
|
|
181
|
+
chunkK4M4B6ME_js.OptionGrid,
|
|
182
182
|
{
|
|
183
183
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.ShieldCheckIcon, { className: "h-4 w-4" }),
|
|
184
184
|
title: t("mfa.setup.methodGridTitle"),
|
|
@@ -194,7 +194,7 @@ function MfaSetup({
|
|
|
194
194
|
columns: 2
|
|
195
195
|
}
|
|
196
196
|
),
|
|
197
|
-
currentStep === 1 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-4", children: isLoading ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex justify-center py-8", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
197
|
+
currentStep === 1 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-4", children: isLoading ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex justify-center py-8", children: /* @__PURE__ */ jsxRuntime.jsx(chunkK4M4B6ME_js.Spinner, {}) }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
198
198
|
qrCodeUri && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex justify-center", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "rounded-xl bg-white p-4", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
199
199
|
"img",
|
|
200
200
|
{
|
|
@@ -210,7 +210,7 @@ function MfaSetup({
|
|
|
210
210
|
] }) }),
|
|
211
211
|
currentStep === 2 && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
212
212
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
213
|
-
|
|
213
|
+
chunk2UMDWOUY_js.OtpInput,
|
|
214
214
|
{
|
|
215
215
|
value: verifyCode,
|
|
216
216
|
onChange: setVerifyCode,
|
|
@@ -220,18 +220,18 @@ function MfaSetup({
|
|
|
220
220
|
autoFocus: true
|
|
221
221
|
}
|
|
222
222
|
),
|
|
223
|
-
isLoading && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
223
|
+
isLoading && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(chunkK4M4B6ME_js.Spinner, {}) })
|
|
224
224
|
] }),
|
|
225
225
|
currentStep === 3 && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
226
226
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
227
|
-
|
|
227
|
+
chunk2UMDWOUY_js.BackupCodeGrid,
|
|
228
228
|
{
|
|
229
229
|
codes: backupCodes,
|
|
230
230
|
revealed: true
|
|
231
231
|
}
|
|
232
232
|
),
|
|
233
233
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
234
|
-
|
|
234
|
+
chunkK4M4B6ME_js.FormCheckbox,
|
|
235
235
|
{
|
|
236
236
|
label: t("mfa.setup.backupCodesSavedConfirm"),
|
|
237
237
|
checked: savedBackupCodes,
|
|
@@ -252,7 +252,7 @@ function MfaManage({
|
|
|
252
252
|
}) {
|
|
253
253
|
const t = chunkYXN2K77G_js.useTranslations("windsock");
|
|
254
254
|
const format = chunkYXN2K77G_js.useFormatter();
|
|
255
|
-
const { client } =
|
|
255
|
+
const { client } = chunkK4M4B6ME_js.useAuth();
|
|
256
256
|
const [isBackupSheetOpen, setIsBackupSheetOpen] = react.useState(false);
|
|
257
257
|
const [newBackupCodes, setNewBackupCodes] = react.useState([]);
|
|
258
258
|
const [isRegenerating, setIsRegenerating] = react.useState(false);
|
|
@@ -324,20 +324,20 @@ function MfaManage({
|
|
|
324
324
|
}, [onEnroll]);
|
|
325
325
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
326
326
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
327
|
-
|
|
327
|
+
chunkK4M4B6ME_js.SectionCard,
|
|
328
328
|
{
|
|
329
329
|
header: {
|
|
330
330
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.ShieldCheckIcon, { className: "h-5 w-5 text-white" }),
|
|
331
331
|
title: t("mfa.manage.title"),
|
|
332
332
|
subtitle: t("mfa.manage.subtitle"),
|
|
333
333
|
gradient: "from-emerald-500 via-teal-500 to-cyan-500",
|
|
334
|
-
rightContent: mfaEnabled ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
334
|
+
rightContent: mfaEnabled ? /* @__PURE__ */ jsxRuntime.jsx(chunkK4M4B6ME_js.StatusBadge, { status: "active", label: t("mfa.manage.statusEnabled"), size: "sm" }) : /* @__PURE__ */ jsxRuntime.jsx(chunkK4M4B6ME_js.StatusBadge, { status: "inactive", label: t("mfa.manage.statusDisabled"), size: "sm" })
|
|
335
335
|
},
|
|
336
336
|
padded: false,
|
|
337
337
|
children: !mfaEnabled ? (
|
|
338
338
|
/* MFA not enabled — show empty state with enable CTA */
|
|
339
339
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "p-4 sm:p-6", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
340
|
-
|
|
340
|
+
chunkK4M4B6ME_js.EmptyState,
|
|
341
341
|
{
|
|
342
342
|
message: t("mfa.manage.emptyStateMessage"),
|
|
343
343
|
description: t("mfa.manage.emptyStateDescription"),
|
|
@@ -352,11 +352,11 @@ function MfaManage({
|
|
|
352
352
|
) : (
|
|
353
353
|
/* MFA enabled — show enrolled methods list + action buttons */
|
|
354
354
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4 p-4 sm:p-6", children: [
|
|
355
|
-
enrolledMethods.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
356
|
-
|
|
355
|
+
enrolledMethods.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(chunkK4M4B6ME_js.ListCard, { children: enrolledMethods.map((method, index) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
356
|
+
chunkK4M4B6ME_js.ListCardItem,
|
|
357
357
|
{
|
|
358
358
|
leading: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-9 w-9 rounded-xl bg-gradient-to-br from-emerald-500 to-teal-600 flex items-center justify-center shadow-sm", children: /* @__PURE__ */ jsxRuntime.jsx(outline.ShieldCheckIcon, { className: "h-5 w-5 text-white" }) }),
|
|
359
|
-
trailing: /* @__PURE__ */ jsxRuntime.jsx(
|
|
359
|
+
trailing: /* @__PURE__ */ jsxRuntime.jsx(chunkK4M4B6ME_js.StatusBadge, { status: "active", label: t("mfa.manage.methodStatusActive"), size: "sm" }),
|
|
360
360
|
children: [
|
|
361
361
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm font-medium text-gray-900 dark:text-white", children: method.label }),
|
|
362
362
|
method.createdAt && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-gray-500 dark:text-gray-400 mt-0.5", children: t("mfa.manage.methodEnrolledAt", {
|
|
@@ -372,7 +372,7 @@ function MfaManage({
|
|
|
372
372
|
)) }),
|
|
373
373
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2 sm:flex-row sm:gap-3", children: [
|
|
374
374
|
onEnroll && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
375
|
-
|
|
375
|
+
chunkK4M4B6ME_js.Button,
|
|
376
376
|
{
|
|
377
377
|
color: "ios-glass-blue",
|
|
378
378
|
onClick: handleEnroll,
|
|
@@ -384,7 +384,7 @@ function MfaManage({
|
|
|
384
384
|
}
|
|
385
385
|
),
|
|
386
386
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
387
|
-
|
|
387
|
+
chunkK4M4B6ME_js.Button,
|
|
388
388
|
{
|
|
389
389
|
outline: true,
|
|
390
390
|
onClick: handleOpenBackupSheet,
|
|
@@ -398,7 +398,7 @@ function MfaManage({
|
|
|
398
398
|
}
|
|
399
399
|
),
|
|
400
400
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
401
|
-
|
|
401
|
+
chunkK4M4B6ME_js.Button,
|
|
402
402
|
{
|
|
403
403
|
color: "ios-glass-red",
|
|
404
404
|
onClick: handleRequestDisable,
|
|
@@ -412,7 +412,7 @@ function MfaManage({
|
|
|
412
412
|
}
|
|
413
413
|
),
|
|
414
414
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
415
|
-
|
|
415
|
+
chunkK4M4B6ME_js.Sheet,
|
|
416
416
|
{
|
|
417
417
|
open: isBackupSheetOpen,
|
|
418
418
|
onClose: handleCloseBackupSheet,
|
|
@@ -422,14 +422,14 @@ function MfaManage({
|
|
|
422
422
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4 p-4 sm:p-6", children: [
|
|
423
423
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-gray-500 dark:text-gray-400", children: t("mfa.manage.backupCodesSheetDescription") }),
|
|
424
424
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
425
|
-
|
|
425
|
+
chunk2UMDWOUY_js.BackupCodeGrid,
|
|
426
426
|
{
|
|
427
427
|
codes: newBackupCodes,
|
|
428
428
|
revealed: true
|
|
429
429
|
}
|
|
430
430
|
),
|
|
431
431
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
432
|
-
|
|
432
|
+
chunkK4M4B6ME_js.Button,
|
|
433
433
|
{
|
|
434
434
|
color: "ios-glass-blue",
|
|
435
435
|
fullWidth: true,
|
|
@@ -441,7 +441,7 @@ function MfaManage({
|
|
|
441
441
|
}
|
|
442
442
|
),
|
|
443
443
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
444
|
-
|
|
444
|
+
chunkK4M4B6ME_js.Sheet,
|
|
445
445
|
{
|
|
446
446
|
open: isConfirmDisableOpen,
|
|
447
447
|
onClose: handleCancelDisable,
|
|
@@ -454,7 +454,7 @@ function MfaManage({
|
|
|
454
454
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-gray-500 dark:text-gray-400", children: t("mfa.manage.confirmDisableDescription") })
|
|
455
455
|
] }),
|
|
456
456
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
457
|
-
|
|
457
|
+
chunkK4M4B6ME_js.PasswordInput,
|
|
458
458
|
{
|
|
459
459
|
label: t("mfa.manage.disablePasswordLabel"),
|
|
460
460
|
value: disablePassword,
|
|
@@ -468,7 +468,7 @@ function MfaManage({
|
|
|
468
468
|
disableError && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-red-600 dark:text-red-400", role: "alert", children: disableError }),
|
|
469
469
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-3", children: [
|
|
470
470
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
471
|
-
|
|
471
|
+
chunkK4M4B6ME_js.Button,
|
|
472
472
|
{
|
|
473
473
|
outline: true,
|
|
474
474
|
onClick: handleCancelDisable,
|
|
@@ -478,7 +478,7 @@ function MfaManage({
|
|
|
478
478
|
}
|
|
479
479
|
),
|
|
480
480
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
481
|
-
|
|
481
|
+
chunkK4M4B6ME_js.Button,
|
|
482
482
|
{
|
|
483
483
|
color: "ios-glass-red",
|
|
484
484
|
onClick: handleConfirmDisable,
|
|
@@ -498,7 +498,7 @@ var ALL_TABS = ["profile", "security", "sessions", "linked-accounts"];
|
|
|
498
498
|
function ProfileTabContent({ onProfileUpdate }) {
|
|
499
499
|
const t = chunkYXN2K77G_js.useTranslations("windsock");
|
|
500
500
|
const currentLocale = chunkYXN2K77G_js.useLocale();
|
|
501
|
-
const { user, client } =
|
|
501
|
+
const { user, client } = chunkK4M4B6ME_js.useAuth();
|
|
502
502
|
const [name, setName] = react.useState(user?.name ?? "");
|
|
503
503
|
const [avatarPreview, setAvatarPreview] = react.useState(user?.image ?? null);
|
|
504
504
|
const [isUploadingAvatar, setIsUploadingAvatar] = react.useState(false);
|
|
@@ -571,7 +571,7 @@ function ProfileTabContent({ onProfileUpdate }) {
|
|
|
571
571
|
}, [name, selectedLocale, currentLocale, user, onProfileUpdate, client, t]);
|
|
572
572
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-6", children: [
|
|
573
573
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
574
|
-
|
|
574
|
+
chunkK4M4B6ME_js.SectionCard,
|
|
575
575
|
{
|
|
576
576
|
header: {
|
|
577
577
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.UserIcon, { className: "h-5 w-5 text-white" }),
|
|
@@ -579,7 +579,7 @@ function ProfileTabContent({ onProfileUpdate }) {
|
|
|
579
579
|
subtitle: t("userProfile.profile.subtitle"),
|
|
580
580
|
gradient: "from-blue-500 via-indigo-500 to-violet-500"
|
|
581
581
|
},
|
|
582
|
-
children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
582
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(chunkK4M4B6ME_js.BaseForm, { onSubmit: handleSave, submitLabel: t("userProfile.profile.saveButton"), showFooter: false, children: [
|
|
583
583
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-center gap-3 pb-4", children: [
|
|
584
584
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
585
585
|
"button",
|
|
@@ -590,7 +590,7 @@ function ProfileTabContent({ onProfileUpdate }) {
|
|
|
590
590
|
className: "group relative",
|
|
591
591
|
children: [
|
|
592
592
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
593
|
-
|
|
593
|
+
chunkK4M4B6ME_js.Avatar,
|
|
594
594
|
{
|
|
595
595
|
src: avatarPreview ?? void 0,
|
|
596
596
|
initials: user?.name?.slice(0, 2).toUpperCase() ?? user?.email?.slice(0, 2).toUpperCase(),
|
|
@@ -598,7 +598,7 @@ function ProfileTabContent({ onProfileUpdate }) {
|
|
|
598
598
|
className: "h-20 w-20 text-2xl"
|
|
599
599
|
}
|
|
600
600
|
),
|
|
601
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-0 flex items-center justify-center rounded-full bg-black/0 transition group-hover:bg-black/40", children: isUploadingAvatar ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
601
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-0 flex items-center justify-center rounded-full bg-black/0 transition group-hover:bg-black/40", children: isUploadingAvatar ? /* @__PURE__ */ jsxRuntime.jsx(chunkK4M4B6ME_js.InlineSpinner, {}) : /* @__PURE__ */ jsxRuntime.jsx(outline.CameraIcon, { className: "h-6 w-6 text-white opacity-0 transition group-hover:opacity-100" }) })
|
|
602
602
|
]
|
|
603
603
|
}
|
|
604
604
|
),
|
|
@@ -615,7 +615,7 @@ function ProfileTabContent({ onProfileUpdate }) {
|
|
|
615
615
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-gray-500 dark:text-gray-400", children: t("userProfile.profile.avatarHint") })
|
|
616
616
|
] }),
|
|
617
617
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
618
|
-
|
|
618
|
+
chunkK4M4B6ME_js.Input,
|
|
619
619
|
{
|
|
620
620
|
label: t("userProfile.profile.nameLabel"),
|
|
621
621
|
value: name,
|
|
@@ -625,7 +625,7 @@ function ProfileTabContent({ onProfileUpdate }) {
|
|
|
625
625
|
}
|
|
626
626
|
),
|
|
627
627
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
628
|
-
|
|
628
|
+
chunkK4M4B6ME_js.Input,
|
|
629
629
|
{
|
|
630
630
|
label: t("userProfile.profile.emailLabel"),
|
|
631
631
|
type: "email",
|
|
@@ -638,7 +638,7 @@ function ProfileTabContent({ onProfileUpdate }) {
|
|
|
638
638
|
saveError && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-red-600 dark:text-red-400", children: saveError }),
|
|
639
639
|
saveSuccess && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-green-600 dark:text-green-400", children: t("userProfile.profile.saveSuccess") }),
|
|
640
640
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
641
|
-
|
|
641
|
+
chunkK4M4B6ME_js.Button,
|
|
642
642
|
{
|
|
643
643
|
type: "submit",
|
|
644
644
|
color: "ios-glass-blue",
|
|
@@ -652,7 +652,7 @@ function ProfileTabContent({ onProfileUpdate }) {
|
|
|
652
652
|
}
|
|
653
653
|
),
|
|
654
654
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
655
|
-
|
|
655
|
+
chunkK4M4B6ME_js.SectionCard,
|
|
656
656
|
{
|
|
657
657
|
header: {
|
|
658
658
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.GlobeAltIcon, { className: "h-5 w-5 text-white" }),
|
|
@@ -683,7 +683,7 @@ function ProfileTabContent({ onProfileUpdate }) {
|
|
|
683
683
|
);
|
|
684
684
|
}) }),
|
|
685
685
|
selectedLocale !== currentLocale && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-4", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
686
|
-
|
|
686
|
+
chunkK4M4B6ME_js.Button,
|
|
687
687
|
{
|
|
688
688
|
type: "button",
|
|
689
689
|
color: "ios-glass-blue",
|
|
@@ -701,7 +701,7 @@ function ProfileTabContent({ onProfileUpdate }) {
|
|
|
701
701
|
}
|
|
702
702
|
function SecurityTabContent() {
|
|
703
703
|
const t = chunkYXN2K77G_js.useTranslations("windsock");
|
|
704
|
-
const { client, user, refresh } =
|
|
704
|
+
const { client, user, refresh } = chunkK4M4B6ME_js.useAuth();
|
|
705
705
|
const [showMfaSetup, setShowMfaSetup] = react.useState(false);
|
|
706
706
|
const [currentPassword, setCurrentPassword] = react.useState("");
|
|
707
707
|
const [newPassword, setNewPassword] = react.useState("");
|
|
@@ -765,7 +765,7 @@ function SecurityTabContent() {
|
|
|
765
765
|
}
|
|
766
766
|
),
|
|
767
767
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
768
|
-
|
|
768
|
+
chunkK4M4B6ME_js.SectionCard,
|
|
769
769
|
{
|
|
770
770
|
header: {
|
|
771
771
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.UserIcon, { className: "h-5 w-5 text-white" }),
|
|
@@ -773,9 +773,9 @@ function SecurityTabContent() {
|
|
|
773
773
|
subtitle: t("userProfile.security.changePasswordSubtitle"),
|
|
774
774
|
gradient: "from-blue-500 via-sky-500 to-cyan-500"
|
|
775
775
|
},
|
|
776
|
-
children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
776
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(chunkK4M4B6ME_js.BaseForm, { onSubmit: handleChangePassword, submitLabel: t("userProfile.security.changePasswordButton"), showFooter: false, children: [
|
|
777
777
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
778
|
-
|
|
778
|
+
chunkK4M4B6ME_js.PasswordInput,
|
|
779
779
|
{
|
|
780
780
|
label: t("userProfile.security.currentPasswordLabel"),
|
|
781
781
|
value: currentPassword,
|
|
@@ -785,7 +785,7 @@ function SecurityTabContent() {
|
|
|
785
785
|
}
|
|
786
786
|
),
|
|
787
787
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
788
|
-
|
|
788
|
+
chunkK4M4B6ME_js.PasswordInput,
|
|
789
789
|
{
|
|
790
790
|
label: t("userProfile.security.newPasswordLabel"),
|
|
791
791
|
value: newPassword,
|
|
@@ -794,9 +794,9 @@ function SecurityTabContent() {
|
|
|
794
794
|
autoComplete: "new-password"
|
|
795
795
|
}
|
|
796
796
|
),
|
|
797
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
797
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunk2UMDWOUY_js.PasswordStrengthMeter, { password: newPassword }),
|
|
798
798
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
799
|
-
|
|
799
|
+
chunkK4M4B6ME_js.PasswordInput,
|
|
800
800
|
{
|
|
801
801
|
label: t("userProfile.security.confirmPasswordLabel"),
|
|
802
802
|
value: confirmPassword,
|
|
@@ -808,7 +808,7 @@ function SecurityTabContent() {
|
|
|
808
808
|
passwordError && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-red-600 dark:text-red-400", children: passwordError }),
|
|
809
809
|
passwordSuccess && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-green-600 dark:text-green-400", children: t("userProfile.security.changePasswordSuccess") }),
|
|
810
810
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
811
|
-
|
|
811
|
+
chunkK4M4B6ME_js.Button,
|
|
812
812
|
{
|
|
813
813
|
type: "submit",
|
|
814
814
|
color: "ios-glass-blue",
|
|
@@ -826,7 +826,7 @@ function SecurityTabContent() {
|
|
|
826
826
|
function SessionsTabContent() {
|
|
827
827
|
const t = chunkYXN2K77G_js.useTranslations("windsock");
|
|
828
828
|
const format = chunkYXN2K77G_js.useFormatter();
|
|
829
|
-
const { client } =
|
|
829
|
+
const { client } = chunkK4M4B6ME_js.useAuth();
|
|
830
830
|
const [sessions, setSessions] = react.useState([]);
|
|
831
831
|
const [isLoading, setIsLoading] = react.useState(true);
|
|
832
832
|
const [revokingId, setRevokingId] = react.useState(null);
|
|
@@ -869,7 +869,7 @@ function SessionsTabContent() {
|
|
|
869
869
|
}
|
|
870
870
|
}, [client]);
|
|
871
871
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
872
|
-
|
|
872
|
+
chunkK4M4B6ME_js.SectionCard,
|
|
873
873
|
{
|
|
874
874
|
header: {
|
|
875
875
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.ComputerDesktopIcon, { className: "h-5 w-5 text-white" }),
|
|
@@ -879,7 +879,7 @@ function SessionsTabContent() {
|
|
|
879
879
|
},
|
|
880
880
|
padded: false,
|
|
881
881
|
children: isLoading ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-center gap-2 p-8 text-sm text-gray-500 dark:text-gray-400", children: [
|
|
882
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
882
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkK4M4B6ME_js.InlineSpinner, {}),
|
|
883
883
|
/* @__PURE__ */ jsxRuntime.jsx("span", { children: t("userProfile.sessions.loading") })
|
|
884
884
|
] }) : sessions.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "p-6 text-center text-sm text-gray-500 dark:text-gray-400", children: t("userProfile.sessions.empty") }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "overflow-x-auto", children: /* @__PURE__ */ jsxRuntime.jsxs("table", { className: "w-full text-sm", children: [
|
|
885
885
|
/* @__PURE__ */ jsxRuntime.jsx("thead", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { className: "border-b border-gray-200/60 dark:border-white/10", children: [
|
|
@@ -891,12 +891,12 @@ function SessionsTabContent() {
|
|
|
891
891
|
/* @__PURE__ */ jsxRuntime.jsx("tbody", { className: "divide-y divide-gray-200/60 dark:divide-white/10", children: sessions.map((session) => /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
|
|
892
892
|
/* @__PURE__ */ jsxRuntime.jsx("td", { className: "px-4 py-3 text-gray-900 dark:text-white", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
|
|
893
893
|
session.device,
|
|
894
|
-
session.current && /* @__PURE__ */ jsxRuntime.jsx(
|
|
894
|
+
session.current && /* @__PURE__ */ jsxRuntime.jsx(chunkK4M4B6ME_js.Badge, { color: "green", children: t("userProfile.sessions.currentBadge") })
|
|
895
895
|
] }) }),
|
|
896
896
|
/* @__PURE__ */ jsxRuntime.jsx("td", { className: "px-4 py-3 text-gray-500 dark:text-gray-400", children: session.location }),
|
|
897
897
|
/* @__PURE__ */ jsxRuntime.jsx("td", { className: "px-4 py-3 text-gray-500 dark:text-gray-400", children: format.relativeTime(new Date(session.lastActive)) }),
|
|
898
898
|
/* @__PURE__ */ jsxRuntime.jsx("td", { className: "px-4 py-3 text-right", children: !session.current && /* @__PURE__ */ jsxRuntime.jsx(
|
|
899
|
-
|
|
899
|
+
chunkK4M4B6ME_js.Button,
|
|
900
900
|
{
|
|
901
901
|
size: "sm",
|
|
902
902
|
color: "ios-glass-red",
|
|
@@ -913,7 +913,7 @@ function SessionsTabContent() {
|
|
|
913
913
|
}
|
|
914
914
|
function LinkedAccountsTabContent() {
|
|
915
915
|
const t = chunkYXN2K77G_js.useTranslations("windsock");
|
|
916
|
-
const { client } =
|
|
916
|
+
const { client } = chunkK4M4B6ME_js.useAuth();
|
|
917
917
|
const [accounts, setAccounts] = react.useState([]);
|
|
918
918
|
const [isLoading, setIsLoading] = react.useState(true);
|
|
919
919
|
const [actioningProvider, setActioningProvider] = react.useState(null);
|
|
@@ -955,7 +955,7 @@ function LinkedAccountsTabContent() {
|
|
|
955
955
|
}, [client]);
|
|
956
956
|
const providerInitials = (provider) => provider.slice(0, 2).toUpperCase();
|
|
957
957
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
958
|
-
|
|
958
|
+
chunkK4M4B6ME_js.SectionCard,
|
|
959
959
|
{
|
|
960
960
|
header: {
|
|
961
961
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.LinkIcon, { className: "h-5 w-5 text-white" }),
|
|
@@ -965,13 +965,13 @@ function LinkedAccountsTabContent() {
|
|
|
965
965
|
},
|
|
966
966
|
padded: false,
|
|
967
967
|
children: isLoading ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-center gap-2 p-8 text-sm text-gray-500 dark:text-gray-400", children: [
|
|
968
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
968
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkK4M4B6ME_js.InlineSpinner, {}),
|
|
969
969
|
/* @__PURE__ */ jsxRuntime.jsx("span", { children: t("userProfile.linkedAccounts.loading") })
|
|
970
|
-
] }) : accounts.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "p-6 text-center text-sm text-gray-500 dark:text-gray-400", children: t("userProfile.linkedAccounts.empty") }) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
971
|
-
|
|
970
|
+
] }) : accounts.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "p-6 text-center text-sm text-gray-500 dark:text-gray-400", children: t("userProfile.linkedAccounts.empty") }) : /* @__PURE__ */ jsxRuntime.jsx(chunkK4M4B6ME_js.ListCard, { children: accounts.map((account) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
971
|
+
chunkK4M4B6ME_js.ListCardItem,
|
|
972
972
|
{
|
|
973
973
|
leading: /* @__PURE__ */ jsxRuntime.jsx(
|
|
974
|
-
|
|
974
|
+
chunkK4M4B6ME_js.Avatar,
|
|
975
975
|
{
|
|
976
976
|
src: account.logoUrl,
|
|
977
977
|
initials: providerInitials(account.provider),
|
|
@@ -979,7 +979,7 @@ function LinkedAccountsTabContent() {
|
|
|
979
979
|
}
|
|
980
980
|
),
|
|
981
981
|
trailing: /* @__PURE__ */ jsxRuntime.jsx(
|
|
982
|
-
|
|
982
|
+
chunkK4M4B6ME_js.Button,
|
|
983
983
|
{
|
|
984
984
|
size: "sm",
|
|
985
985
|
color: "ios-glass-red",
|
|
@@ -1006,12 +1006,12 @@ function UserProfile({
|
|
|
1006
1006
|
onProfileUpdate
|
|
1007
1007
|
}) {
|
|
1008
1008
|
const t = chunkYXN2K77G_js.useTranslations("windsock");
|
|
1009
|
-
const { status } =
|
|
1009
|
+
const { status } = chunkK4M4B6ME_js.useAuth();
|
|
1010
1010
|
const [activeTab, setActiveTab] = react.useState(
|
|
1011
1011
|
tabs.includes(defaultTab) ? defaultTab : tabs[0] ?? "profile"
|
|
1012
1012
|
);
|
|
1013
1013
|
if (status === "loading") {
|
|
1014
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center justify-center py-12", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1014
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center justify-center py-12", children: /* @__PURE__ */ jsxRuntime.jsx(chunkK4M4B6ME_js.InlineSpinner, {}) });
|
|
1015
1015
|
}
|
|
1016
1016
|
if (status !== "authenticated") {
|
|
1017
1017
|
return null;
|
|
@@ -1022,7 +1022,7 @@ function UserProfile({
|
|
|
1022
1022
|
}));
|
|
1023
1023
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-6", children: [
|
|
1024
1024
|
tabs.length > 1 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
1025
|
-
|
|
1025
|
+
chunkK4M4B6ME_js.SegmentedControl,
|
|
1026
1026
|
{
|
|
1027
1027
|
segments,
|
|
1028
1028
|
value: activeTab,
|
|
@@ -1044,5 +1044,5 @@ exports.ProfileTabContent = ProfileTabContent;
|
|
|
1044
1044
|
exports.SecurityTabContent = SecurityTabContent;
|
|
1045
1045
|
exports.SessionsTabContent = SessionsTabContent;
|
|
1046
1046
|
exports.UserProfile = UserProfile;
|
|
1047
|
-
//# sourceMappingURL=chunk-
|
|
1048
|
-
//# sourceMappingURL=chunk-
|
|
1047
|
+
//# sourceMappingURL=chunk-5AVO5DJO.js.map
|
|
1048
|
+
//# sourceMappingURL=chunk-5AVO5DJO.js.map
|