@datatechsolutions/ui 3.8.0 → 3.9.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/dist/astrlabe/index.js +107 -107
- package/dist/astrlabe/index.mjs +3 -3
- package/dist/astrlabe/workflow-canvas.js +3 -3
- package/dist/astrlabe/workflow-canvas.mjs +2 -2
- package/dist/{chunk-KKXI7CPF.mjs → chunk-2E7HYTS7.mjs} +3 -3
- package/dist/{chunk-KKXI7CPF.mjs.map → chunk-2E7HYTS7.mjs.map} +1 -1
- package/dist/{chunk-EWYAM4WJ.mjs → chunk-2ZY3IQ2I.mjs} +3 -3
- package/dist/{chunk-EWYAM4WJ.mjs.map → chunk-2ZY3IQ2I.mjs.map} +1 -1
- package/dist/{chunk-VPFVW7ZF.js → chunk-6E2YH67A.js} +35 -35
- package/dist/{chunk-VPFVW7ZF.js.map → chunk-6E2YH67A.js.map} +1 -1
- package/dist/{chunk-A4A3SQTV.mjs → chunk-6QJI5YOJ.mjs} +3 -3
- package/dist/{chunk-A4A3SQTV.mjs.map → chunk-6QJI5YOJ.mjs.map} +1 -1
- package/dist/{chunk-3X3IYDG6.js → chunk-7AM2SXEF.js} +68 -68
- package/dist/{chunk-3X3IYDG6.js.map → chunk-7AM2SXEF.js.map} +1 -1
- package/dist/{chunk-H37VDL7Y.js → chunk-A2RIX2RK.js} +4 -4
- package/dist/{chunk-H37VDL7Y.js.map → chunk-A2RIX2RK.js.map} +1 -1
- package/dist/{chunk-32DHEVOH.mjs → chunk-ARLYOLSO.mjs} +3 -3
- package/dist/{chunk-32DHEVOH.mjs.map → chunk-ARLYOLSO.mjs.map} +1 -1
- package/dist/{chunk-5YVOLHSW.mjs → chunk-AXBD6OAF.mjs} +4 -4
- package/dist/{chunk-5YVOLHSW.mjs.map → chunk-AXBD6OAF.mjs.map} +1 -1
- package/dist/{chunk-ZP37M2QK.mjs → chunk-BWUFLW5W.mjs} +6 -6
- package/dist/{chunk-ZP37M2QK.mjs.map → chunk-BWUFLW5W.mjs.map} +1 -1
- package/dist/{chunk-HBOORO52.js → chunk-CLTNCBSP.js} +4 -4
- package/dist/{chunk-HBOORO52.js.map → chunk-CLTNCBSP.js.map} +1 -1
- package/dist/{chunk-F35GFICG.js → chunk-CRBGZA6Y.js} +13 -13
- package/dist/{chunk-F35GFICG.js.map → chunk-CRBGZA6Y.js.map} +1 -1
- package/dist/{chunk-7JZFNKJD.js → chunk-DQIEVLA3.js} +35 -35
- package/dist/{chunk-7JZFNKJD.js.map → chunk-DQIEVLA3.js.map} +1 -1
- package/dist/{chunk-57E4TCB2.mjs → chunk-EAIE4QGD.mjs} +3 -3
- package/dist/{chunk-57E4TCB2.mjs.map → chunk-EAIE4QGD.mjs.map} +1 -1
- package/dist/{chunk-5W6LMDXV.mjs → chunk-GQWC4EKE.mjs} +4 -4
- package/dist/{chunk-5W6LMDXV.mjs.map → chunk-GQWC4EKE.mjs.map} +1 -1
- package/dist/{chunk-FKUIVS6I.js → chunk-IVKFXPLO.js} +28 -28
- package/dist/{chunk-FKUIVS6I.js.map → chunk-IVKFXPLO.js.map} +1 -1
- package/dist/{chunk-FNA66TT4.js → chunk-MT66VKLS.js} +163 -219
- package/dist/chunk-MT66VKLS.js.map +1 -0
- package/dist/{chunk-74BU2EBZ.mjs → chunk-OEZ7GAJY.mjs} +6 -6
- package/dist/{chunk-74BU2EBZ.mjs.map → chunk-OEZ7GAJY.mjs.map} +1 -1
- package/dist/{chunk-CZZOCKEA.mjs → chunk-OVQ4MKCV.mjs} +3 -3
- package/dist/{chunk-CZZOCKEA.mjs.map → chunk-OVQ4MKCV.mjs.map} +1 -1
- package/dist/{chunk-WDBVIU7W.mjs → chunk-PD3JLDA5.mjs} +3 -3
- package/dist/{chunk-WDBVIU7W.mjs.map → chunk-PD3JLDA5.mjs.map} +1 -1
- package/dist/{chunk-TJPPZU77.js → chunk-R6GEJBFC.js} +34 -34
- package/dist/{chunk-TJPPZU77.js.map → chunk-R6GEJBFC.js.map} +1 -1
- package/dist/{chunk-Q4QORAMH.js → chunk-RFUSH7WD.js} +10 -10
- package/dist/{chunk-Q4QORAMH.js.map → chunk-RFUSH7WD.js.map} +1 -1
- package/dist/{chunk-VS6PTRQ7.mjs → chunk-SJ6SUS7H.mjs} +3 -3
- package/dist/{chunk-VS6PTRQ7.mjs.map → chunk-SJ6SUS7H.mjs.map} +1 -1
- package/dist/{chunk-E57RZXOR.js → chunk-T4IYOKHR.js} +25 -25
- package/dist/{chunk-E57RZXOR.js.map → chunk-T4IYOKHR.js.map} +1 -1
- package/dist/{chunk-3H5CFLVK.js → chunk-U6VFS3RD.js} +135 -135
- package/dist/{chunk-3H5CFLVK.js.map → chunk-U6VFS3RD.js.map} +1 -1
- package/dist/{chunk-RCHTRG7R.js → chunk-UZIICTIY.js} +55 -55
- package/dist/{chunk-RCHTRG7R.js.map → chunk-UZIICTIY.js.map} +1 -1
- package/dist/{chunk-TCP45Q4B.js → chunk-WJENX6KB.js} +9 -9
- package/dist/{chunk-TCP45Q4B.js.map → chunk-WJENX6KB.js.map} +1 -1
- package/dist/{chunk-PYNXIDG3.mjs → chunk-WS3IJFPW.mjs} +3 -3
- package/dist/{chunk-PYNXIDG3.mjs.map → chunk-WS3IJFPW.mjs.map} +1 -1
- package/dist/{chunk-Q7HRCCFT.js → chunk-ZDXEGSCF.js} +45 -45
- package/dist/{chunk-Q7HRCCFT.js.map → chunk-ZDXEGSCF.js.map} +1 -1
- package/dist/{chunk-PCUINUIC.mjs → chunk-ZQEMKEEH.mjs} +3 -3
- package/dist/{chunk-PCUINUIC.mjs.map → chunk-ZQEMKEEH.mjs.map} +1 -1
- package/dist/{chunk-E6C7MFHJ.mjs → chunk-ZQRUAXGP.mjs} +164 -218
- package/dist/chunk-ZQRUAXGP.mjs.map +1 -0
- package/dist/index.d.mts +43 -42
- package/dist/index.d.ts +43 -42
- package/dist/index.js +662 -670
- package/dist/index.mjs +1 -1
- package/dist/platform/admin/index.js +9 -9
- package/dist/platform/admin/index.mjs +3 -3
- package/dist/platform/agents-workspace.js +6 -6
- package/dist/platform/agents-workspace.mjs +5 -5
- package/dist/platform/app-shell.js +3 -3
- package/dist/platform/app-shell.mjs +2 -2
- package/dist/platform/auth/index.js +21 -21
- package/dist/platform/auth/index.mjs +3 -3
- package/dist/platform/billing/index.js +3 -3
- package/dist/platform/billing/index.mjs +2 -2
- package/dist/platform/impersonation/index.js +3 -3
- package/dist/platform/impersonation/index.mjs +2 -2
- package/dist/platform/index.d.mts +1 -1
- package/dist/platform/index.d.ts +1 -1
- package/dist/platform/index.js +74 -74
- package/dist/platform/index.mjs +17 -17
- package/dist/platform/pages/index.d.mts +93 -4
- package/dist/platform/pages/index.d.ts +93 -4
- package/dist/platform/pages/index.js +1009 -575
- package/dist/platform/pages/index.js.map +1 -1
- package/dist/platform/pages/index.mjs +805 -372
- package/dist/platform/pages/index.mjs.map +1 -1
- package/dist/platform/settings/index.js +6 -6
- package/dist/platform/settings/index.mjs +5 -5
- package/dist/platform/workflow-canvas-shell.js +4 -4
- package/dist/platform/workflow-canvas-shell.mjs +3 -3
- package/package.json +1 -1
- package/dist/chunk-E6C7MFHJ.mjs.map +0 -1
- package/dist/chunk-FNA66TT4.js.map +0 -1
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
4
|
var chunkQGLGQXJE_js = require('./chunk-QGLGQXJE.js');
|
|
5
|
-
var
|
|
5
|
+
var chunkMT66VKLS_js = require('./chunk-MT66VKLS.js');
|
|
6
6
|
var chunkYXN2K77G_js = require('./chunk-YXN2K77G.js');
|
|
7
7
|
var chunkBHOT22QL_js = require('./chunk-BHOT22QL.js');
|
|
8
8
|
var chunkUZ3CMNUJ_js = require('./chunk-UZ3CMNUJ.js');
|
|
@@ -40,7 +40,7 @@ function MfaSetup({
|
|
|
40
40
|
onVerifySetup
|
|
41
41
|
}) {
|
|
42
42
|
const t = chunkYXN2K77G_js.useTranslations("windsock");
|
|
43
|
-
const { client } =
|
|
43
|
+
const { client } = chunkMT66VKLS_js.useAuth();
|
|
44
44
|
const setupSteps = [
|
|
45
45
|
{
|
|
46
46
|
id: "method",
|
|
@@ -162,7 +162,7 @@ function MfaSetup({
|
|
|
162
162
|
}
|
|
163
163
|
})();
|
|
164
164
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
165
|
-
|
|
165
|
+
chunkMT66VKLS_js.StepFormPage,
|
|
166
166
|
{
|
|
167
167
|
title: t("mfa.setup.title"),
|
|
168
168
|
subtitle: enforcement === "required" ? t("mfa.setup.subtitleRequired") : t("mfa.setup.subtitleOptional"),
|
|
@@ -179,7 +179,7 @@ function MfaSetup({
|
|
|
179
179
|
canAdvance,
|
|
180
180
|
children: [
|
|
181
181
|
currentStep === 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
182
|
-
|
|
182
|
+
chunkMT66VKLS_js.OptionGrid,
|
|
183
183
|
{
|
|
184
184
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.ShieldCheckIcon, { className: "h-4 w-4" }),
|
|
185
185
|
title: t("mfa.setup.methodGridTitle"),
|
|
@@ -195,7 +195,7 @@ function MfaSetup({
|
|
|
195
195
|
columns: 2
|
|
196
196
|
}
|
|
197
197
|
),
|
|
198
|
-
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(
|
|
198
|
+
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(chunkMT66VKLS_js.Spinner, {}) }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
199
199
|
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(
|
|
200
200
|
"img",
|
|
201
201
|
{
|
|
@@ -221,7 +221,7 @@ function MfaSetup({
|
|
|
221
221
|
autoFocus: true
|
|
222
222
|
}
|
|
223
223
|
),
|
|
224
|
-
isLoading && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
224
|
+
isLoading && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(chunkMT66VKLS_js.Spinner, {}) })
|
|
225
225
|
] }),
|
|
226
226
|
currentStep === 3 && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
227
227
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -232,7 +232,7 @@ function MfaSetup({
|
|
|
232
232
|
}
|
|
233
233
|
),
|
|
234
234
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
235
|
-
|
|
235
|
+
chunkMT66VKLS_js.FormCheckbox,
|
|
236
236
|
{
|
|
237
237
|
label: t("mfa.setup.backupCodesSavedConfirm"),
|
|
238
238
|
checked: savedBackupCodes,
|
|
@@ -253,7 +253,7 @@ function MfaManage({
|
|
|
253
253
|
}) {
|
|
254
254
|
const t = chunkYXN2K77G_js.useTranslations("windsock");
|
|
255
255
|
const format = chunkYXN2K77G_js.useFormatter();
|
|
256
|
-
const { client } =
|
|
256
|
+
const { client } = chunkMT66VKLS_js.useAuth();
|
|
257
257
|
const [isBackupSheetOpen, setIsBackupSheetOpen] = react.useState(false);
|
|
258
258
|
const [newBackupCodes, setNewBackupCodes] = react.useState([]);
|
|
259
259
|
const [isRegenerating, setIsRegenerating] = react.useState(false);
|
|
@@ -325,20 +325,20 @@ function MfaManage({
|
|
|
325
325
|
}, [onEnroll]);
|
|
326
326
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
327
327
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
328
|
-
|
|
328
|
+
chunkMT66VKLS_js.SectionCard,
|
|
329
329
|
{
|
|
330
330
|
header: {
|
|
331
331
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.ShieldCheckIcon, { className: "h-5 w-5 text-white" }),
|
|
332
332
|
title: t("mfa.manage.title"),
|
|
333
333
|
subtitle: t("mfa.manage.subtitle"),
|
|
334
334
|
gradient: "from-emerald-500 via-teal-500 to-cyan-500",
|
|
335
|
-
rightContent: mfaEnabled ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
335
|
+
rightContent: mfaEnabled ? /* @__PURE__ */ jsxRuntime.jsx(chunkMT66VKLS_js.StatusBadge, { status: "active", label: t("mfa.manage.statusEnabled"), size: "sm" }) : /* @__PURE__ */ jsxRuntime.jsx(chunkMT66VKLS_js.StatusBadge, { status: "inactive", label: t("mfa.manage.statusDisabled"), size: "sm" })
|
|
336
336
|
},
|
|
337
337
|
padded: false,
|
|
338
338
|
children: !mfaEnabled ? (
|
|
339
339
|
/* MFA not enabled — show empty state with enable CTA */
|
|
340
340
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "p-4 sm:p-6", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
341
|
-
|
|
341
|
+
chunkMT66VKLS_js.EmptyState,
|
|
342
342
|
{
|
|
343
343
|
message: t("mfa.manage.emptyStateMessage"),
|
|
344
344
|
description: t("mfa.manage.emptyStateDescription"),
|
|
@@ -353,11 +353,11 @@ function MfaManage({
|
|
|
353
353
|
) : (
|
|
354
354
|
/* MFA enabled — show enrolled methods list + action buttons */
|
|
355
355
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4 p-4 sm:p-6", children: [
|
|
356
|
-
enrolledMethods.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
357
|
-
|
|
356
|
+
enrolledMethods.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(chunkMT66VKLS_js.ListCard, { children: enrolledMethods.map((method, index) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
357
|
+
chunkMT66VKLS_js.ListCardItem,
|
|
358
358
|
{
|
|
359
359
|
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" }) }),
|
|
360
|
-
trailing: /* @__PURE__ */ jsxRuntime.jsx(
|
|
360
|
+
trailing: /* @__PURE__ */ jsxRuntime.jsx(chunkMT66VKLS_js.StatusBadge, { status: "active", label: t("mfa.manage.methodStatusActive"), size: "sm" }),
|
|
361
361
|
children: [
|
|
362
362
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm font-medium text-gray-900 dark:text-white", children: method.label }),
|
|
363
363
|
method.createdAt && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-gray-500 dark:text-gray-400 mt-0.5", children: t("mfa.manage.methodEnrolledAt", {
|
|
@@ -413,7 +413,7 @@ function MfaManage({
|
|
|
413
413
|
}
|
|
414
414
|
),
|
|
415
415
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
416
|
-
|
|
416
|
+
chunkMT66VKLS_js.Sheet,
|
|
417
417
|
{
|
|
418
418
|
open: isBackupSheetOpen,
|
|
419
419
|
onClose: handleCloseBackupSheet,
|
|
@@ -442,7 +442,7 @@ function MfaManage({
|
|
|
442
442
|
}
|
|
443
443
|
),
|
|
444
444
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
445
|
-
|
|
445
|
+
chunkMT66VKLS_js.Sheet,
|
|
446
446
|
{
|
|
447
447
|
open: isConfirmDisableOpen,
|
|
448
448
|
onClose: handleCancelDisable,
|
|
@@ -455,7 +455,7 @@ function MfaManage({
|
|
|
455
455
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-gray-500 dark:text-gray-400", children: t("mfa.manage.confirmDisableDescription") })
|
|
456
456
|
] }),
|
|
457
457
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
458
|
-
|
|
458
|
+
chunkMT66VKLS_js.PasswordInput,
|
|
459
459
|
{
|
|
460
460
|
label: t("mfa.manage.disablePasswordLabel"),
|
|
461
461
|
value: disablePassword,
|
|
@@ -499,7 +499,7 @@ var ALL_TABS = ["profile", "security", "sessions", "linked-accounts"];
|
|
|
499
499
|
function ProfileTabContent({ onProfileUpdate }) {
|
|
500
500
|
const t = chunkYXN2K77G_js.useTranslations("windsock");
|
|
501
501
|
const currentLocale = chunkYXN2K77G_js.useLocale();
|
|
502
|
-
const { user, client } =
|
|
502
|
+
const { user, client } = chunkMT66VKLS_js.useAuth();
|
|
503
503
|
const [name, setName] = react.useState(user?.name ?? "");
|
|
504
504
|
const [avatarPreview, setAvatarPreview] = react.useState(user?.image ?? null);
|
|
505
505
|
const [isUploadingAvatar, setIsUploadingAvatar] = react.useState(false);
|
|
@@ -572,7 +572,7 @@ function ProfileTabContent({ onProfileUpdate }) {
|
|
|
572
572
|
}, [name, selectedLocale, currentLocale, user, onProfileUpdate, client, t]);
|
|
573
573
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-6", children: [
|
|
574
574
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
575
|
-
|
|
575
|
+
chunkMT66VKLS_js.SectionCard,
|
|
576
576
|
{
|
|
577
577
|
header: {
|
|
578
578
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.UserIcon, { className: "h-5 w-5 text-white" }),
|
|
@@ -580,7 +580,7 @@ function ProfileTabContent({ onProfileUpdate }) {
|
|
|
580
580
|
subtitle: t("userProfile.profile.subtitle"),
|
|
581
581
|
gradient: "from-blue-500 via-indigo-500 to-violet-500"
|
|
582
582
|
},
|
|
583
|
-
children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
583
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(chunkMT66VKLS_js.BaseForm, { onSubmit: handleSave, submitLabel: t("userProfile.profile.saveButton"), showFooter: false, children: [
|
|
584
584
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-center gap-3 pb-4", children: [
|
|
585
585
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
586
586
|
"button",
|
|
@@ -591,7 +591,7 @@ function ProfileTabContent({ onProfileUpdate }) {
|
|
|
591
591
|
className: "group relative",
|
|
592
592
|
children: [
|
|
593
593
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
594
|
-
|
|
594
|
+
chunkMT66VKLS_js.Avatar,
|
|
595
595
|
{
|
|
596
596
|
src: avatarPreview ?? void 0,
|
|
597
597
|
initials: user?.name?.slice(0, 2).toUpperCase() ?? user?.email?.slice(0, 2).toUpperCase(),
|
|
@@ -599,7 +599,7 @@ function ProfileTabContent({ onProfileUpdate }) {
|
|
|
599
599
|
className: "h-20 w-20 text-2xl"
|
|
600
600
|
}
|
|
601
601
|
),
|
|
602
|
-
/* @__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(
|
|
602
|
+
/* @__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(chunkMT66VKLS_js.InlineSpinner, {}) : /* @__PURE__ */ jsxRuntime.jsx(outline.CameraIcon, { className: "h-6 w-6 text-white opacity-0 transition group-hover:opacity-100" }) })
|
|
603
603
|
]
|
|
604
604
|
}
|
|
605
605
|
),
|
|
@@ -616,7 +616,7 @@ function ProfileTabContent({ onProfileUpdate }) {
|
|
|
616
616
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-slate-500 dark:text-slate-400", children: t("userProfile.profile.avatarHint") })
|
|
617
617
|
] }),
|
|
618
618
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
619
|
-
|
|
619
|
+
chunkMT66VKLS_js.Input,
|
|
620
620
|
{
|
|
621
621
|
label: t("userProfile.profile.nameLabel"),
|
|
622
622
|
value: name,
|
|
@@ -626,7 +626,7 @@ function ProfileTabContent({ onProfileUpdate }) {
|
|
|
626
626
|
}
|
|
627
627
|
),
|
|
628
628
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
629
|
-
|
|
629
|
+
chunkMT66VKLS_js.Input,
|
|
630
630
|
{
|
|
631
631
|
label: t("userProfile.profile.emailLabel"),
|
|
632
632
|
type: "email",
|
|
@@ -653,7 +653,7 @@ function ProfileTabContent({ onProfileUpdate }) {
|
|
|
653
653
|
}
|
|
654
654
|
),
|
|
655
655
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
656
|
-
|
|
656
|
+
chunkMT66VKLS_js.SectionCard,
|
|
657
657
|
{
|
|
658
658
|
header: {
|
|
659
659
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.GlobeAltIcon, { className: "h-5 w-5 text-white" }),
|
|
@@ -702,7 +702,7 @@ function ProfileTabContent({ onProfileUpdate }) {
|
|
|
702
702
|
}
|
|
703
703
|
function SecurityTabContent() {
|
|
704
704
|
const t = chunkYXN2K77G_js.useTranslations("windsock");
|
|
705
|
-
const { client, user, refresh } =
|
|
705
|
+
const { client, user, refresh } = chunkMT66VKLS_js.useAuth();
|
|
706
706
|
const [showMfaSetup, setShowMfaSetup] = react.useState(false);
|
|
707
707
|
const [currentPassword, setCurrentPassword] = react.useState("");
|
|
708
708
|
const [newPassword, setNewPassword] = react.useState("");
|
|
@@ -766,7 +766,7 @@ function SecurityTabContent() {
|
|
|
766
766
|
}
|
|
767
767
|
),
|
|
768
768
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
769
|
-
|
|
769
|
+
chunkMT66VKLS_js.SectionCard,
|
|
770
770
|
{
|
|
771
771
|
header: {
|
|
772
772
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.UserIcon, { className: "h-5 w-5 text-white" }),
|
|
@@ -774,9 +774,9 @@ function SecurityTabContent() {
|
|
|
774
774
|
subtitle: t("userProfile.security.changePasswordSubtitle"),
|
|
775
775
|
gradient: "from-blue-500 via-sky-500 to-cyan-500"
|
|
776
776
|
},
|
|
777
|
-
children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
777
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(chunkMT66VKLS_js.BaseForm, { onSubmit: handleChangePassword, submitLabel: t("userProfile.security.changePasswordButton"), showFooter: false, children: [
|
|
778
778
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
779
|
-
|
|
779
|
+
chunkMT66VKLS_js.PasswordInput,
|
|
780
780
|
{
|
|
781
781
|
label: t("userProfile.security.currentPasswordLabel"),
|
|
782
782
|
value: currentPassword,
|
|
@@ -786,7 +786,7 @@ function SecurityTabContent() {
|
|
|
786
786
|
}
|
|
787
787
|
),
|
|
788
788
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
789
|
-
|
|
789
|
+
chunkMT66VKLS_js.PasswordInput,
|
|
790
790
|
{
|
|
791
791
|
label: t("userProfile.security.newPasswordLabel"),
|
|
792
792
|
value: newPassword,
|
|
@@ -797,7 +797,7 @@ function SecurityTabContent() {
|
|
|
797
797
|
),
|
|
798
798
|
/* @__PURE__ */ jsxRuntime.jsx(chunkQGLGQXJE_js.PasswordStrengthMeter, { password: newPassword }),
|
|
799
799
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
800
|
-
|
|
800
|
+
chunkMT66VKLS_js.PasswordInput,
|
|
801
801
|
{
|
|
802
802
|
label: t("userProfile.security.confirmPasswordLabel"),
|
|
803
803
|
value: confirmPassword,
|
|
@@ -827,7 +827,7 @@ function SecurityTabContent() {
|
|
|
827
827
|
function SessionsTabContent() {
|
|
828
828
|
const t = chunkYXN2K77G_js.useTranslations("windsock");
|
|
829
829
|
const format = chunkYXN2K77G_js.useFormatter();
|
|
830
|
-
const { client } =
|
|
830
|
+
const { client } = chunkMT66VKLS_js.useAuth();
|
|
831
831
|
const [sessions, setSessions] = react.useState([]);
|
|
832
832
|
const [isLoading, setIsLoading] = react.useState(true);
|
|
833
833
|
const [revokingId, setRevokingId] = react.useState(null);
|
|
@@ -870,7 +870,7 @@ function SessionsTabContent() {
|
|
|
870
870
|
}
|
|
871
871
|
}, [client]);
|
|
872
872
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
873
|
-
|
|
873
|
+
chunkMT66VKLS_js.SectionCard,
|
|
874
874
|
{
|
|
875
875
|
header: {
|
|
876
876
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.ComputerDesktopIcon, { className: "h-5 w-5 text-white" }),
|
|
@@ -880,7 +880,7 @@ function SessionsTabContent() {
|
|
|
880
880
|
},
|
|
881
881
|
padded: false,
|
|
882
882
|
children: isLoading ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-center gap-2 p-8 text-sm text-slate-500 dark:text-slate-400", children: [
|
|
883
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
883
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkMT66VKLS_js.InlineSpinner, {}),
|
|
884
884
|
/* @__PURE__ */ jsxRuntime.jsx("span", { children: t("userProfile.sessions.loading") })
|
|
885
885
|
] }) : sessions.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "p-6 text-center text-sm text-slate-500 dark:text-slate-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: [
|
|
886
886
|
/* @__PURE__ */ jsxRuntime.jsx("thead", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { className: "border-b liquid-divider", children: [
|
|
@@ -914,7 +914,7 @@ function SessionsTabContent() {
|
|
|
914
914
|
}
|
|
915
915
|
function LinkedAccountsTabContent() {
|
|
916
916
|
const t = chunkYXN2K77G_js.useTranslations("windsock");
|
|
917
|
-
const { client } =
|
|
917
|
+
const { client } = chunkMT66VKLS_js.useAuth();
|
|
918
918
|
const [accounts, setAccounts] = react.useState([]);
|
|
919
919
|
const [isLoading, setIsLoading] = react.useState(true);
|
|
920
920
|
const [actioningProvider, setActioningProvider] = react.useState(null);
|
|
@@ -956,7 +956,7 @@ function LinkedAccountsTabContent() {
|
|
|
956
956
|
}, [client]);
|
|
957
957
|
const providerInitials = (provider) => provider.slice(0, 2).toUpperCase();
|
|
958
958
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
959
|
-
|
|
959
|
+
chunkMT66VKLS_js.SectionCard,
|
|
960
960
|
{
|
|
961
961
|
header: {
|
|
962
962
|
icon: /* @__PURE__ */ jsxRuntime.jsx(outline.LinkIcon, { className: "h-5 w-5 text-white" }),
|
|
@@ -966,13 +966,13 @@ function LinkedAccountsTabContent() {
|
|
|
966
966
|
},
|
|
967
967
|
padded: false,
|
|
968
968
|
children: isLoading ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-center gap-2 p-8 text-sm text-slate-500 dark:text-slate-400", children: [
|
|
969
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
969
|
+
/* @__PURE__ */ jsxRuntime.jsx(chunkMT66VKLS_js.InlineSpinner, {}),
|
|
970
970
|
/* @__PURE__ */ jsxRuntime.jsx("span", { children: t("userProfile.linkedAccounts.loading") })
|
|
971
|
-
] }) : accounts.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "p-6 text-center text-sm text-slate-500 dark:text-slate-400", children: t("userProfile.linkedAccounts.empty") }) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
972
|
-
|
|
971
|
+
] }) : accounts.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "p-6 text-center text-sm text-slate-500 dark:text-slate-400", children: t("userProfile.linkedAccounts.empty") }) : /* @__PURE__ */ jsxRuntime.jsx(chunkMT66VKLS_js.ListCard, { children: accounts.map((account) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
972
|
+
chunkMT66VKLS_js.ListCardItem,
|
|
973
973
|
{
|
|
974
974
|
leading: /* @__PURE__ */ jsxRuntime.jsx(
|
|
975
|
-
|
|
975
|
+
chunkMT66VKLS_js.Avatar,
|
|
976
976
|
{
|
|
977
977
|
src: account.logoUrl,
|
|
978
978
|
initials: providerInitials(account.provider),
|
|
@@ -1007,12 +1007,12 @@ function UserProfile({
|
|
|
1007
1007
|
onProfileUpdate
|
|
1008
1008
|
}) {
|
|
1009
1009
|
const t = chunkYXN2K77G_js.useTranslations("windsock");
|
|
1010
|
-
const { status } =
|
|
1010
|
+
const { status } = chunkMT66VKLS_js.useAuth();
|
|
1011
1011
|
const [activeTab, setActiveTab] = react.useState(
|
|
1012
1012
|
tabs.includes(defaultTab) ? defaultTab : tabs[0] ?? "profile"
|
|
1013
1013
|
);
|
|
1014
1014
|
if (status === "loading") {
|
|
1015
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center justify-center py-12", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1015
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center justify-center py-12", children: /* @__PURE__ */ jsxRuntime.jsx(chunkMT66VKLS_js.InlineSpinner, {}) });
|
|
1016
1016
|
}
|
|
1017
1017
|
if (status !== "authenticated") {
|
|
1018
1018
|
return null;
|
|
@@ -1023,7 +1023,7 @@ function UserProfile({
|
|
|
1023
1023
|
}));
|
|
1024
1024
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-6", children: [
|
|
1025
1025
|
tabs.length > 1 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
1026
|
-
|
|
1026
|
+
chunkMT66VKLS_js.SegmentedControl,
|
|
1027
1027
|
{
|
|
1028
1028
|
segments,
|
|
1029
1029
|
value: activeTab,
|
|
@@ -1045,5 +1045,5 @@ exports.ProfileTabContent = ProfileTabContent;
|
|
|
1045
1045
|
exports.SecurityTabContent = SecurityTabContent;
|
|
1046
1046
|
exports.SessionsTabContent = SessionsTabContent;
|
|
1047
1047
|
exports.UserProfile = UserProfile;
|
|
1048
|
-
//# sourceMappingURL=chunk-
|
|
1049
|
-
//# sourceMappingURL=chunk-
|
|
1048
|
+
//# sourceMappingURL=chunk-ZDXEGSCF.js.map
|
|
1049
|
+
//# sourceMappingURL=chunk-ZDXEGSCF.js.map
|