@splpi/estore-shared-components 0.0.1 → 0.0.3
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/README.md +1 -0
- package/dist/index.d.mts +8 -12
- package/dist/index.d.ts +8 -12
- package/dist/index.js +524 -311
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +513 -288
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -32,13 +32,13 @@ var index_exports = {};
|
|
|
32
32
|
__export(index_exports, {
|
|
33
33
|
Beneficiary: () => beneficiary_default,
|
|
34
34
|
BottomQuickActions: () => BottomQuickActions_default,
|
|
35
|
-
FloatingLabelInput: () => floating_label_input_default,
|
|
36
35
|
HealthDeclaration: () => HealthDeclaration_default,
|
|
37
36
|
LifePlanApplication1: () => LifePlanApplication1_default,
|
|
38
37
|
LifePlanApplication2: () => LifePlanApplication2_default,
|
|
39
38
|
LifePlanApplication3: () => LifePlanApplication3_default,
|
|
40
39
|
LifePlanApplicationFormWrapper: () => LifePlanApplicationFormWrapper_default,
|
|
41
40
|
LifePlanApplicationStepWrapper: () => LifePlanApplicationStepWrapper_default,
|
|
41
|
+
NotifyInstall: () => NotifyInstall,
|
|
42
42
|
SharedLifePlanApplication: () => SharedLifePlanApplication_default,
|
|
43
43
|
UserProfile: () => UserProfile_default,
|
|
44
44
|
createEmptyApplicationData: () => createEmptyApplicationData,
|
|
@@ -270,24 +270,32 @@ var STANDARD_ICON_BUTTON_STYLES = {
|
|
|
270
270
|
}
|
|
271
271
|
};
|
|
272
272
|
|
|
273
|
-
// src/NewSaleForm/ui/
|
|
274
|
-
var import_react = require("react");
|
|
275
|
-
var import_react2 = require("
|
|
273
|
+
// src/NewSaleForm/ui/FloatingLabelInput.tsx
|
|
274
|
+
var import_react = require("@chakra-ui/react");
|
|
275
|
+
var import_react2 = require("react");
|
|
276
276
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
277
277
|
var FloatingLabelInput = (props) => {
|
|
278
278
|
const { label, onValueChange, value, defaultValue = "", ...rest } = props;
|
|
279
|
-
const [inputState, setInputState] = (0,
|
|
279
|
+
const [inputState, setInputState] = (0, import_react.useControllableState)({
|
|
280
280
|
defaultValue,
|
|
281
281
|
onChange: onValueChange,
|
|
282
282
|
value
|
|
283
283
|
});
|
|
284
|
-
const [focused, setFocused] = (0,
|
|
284
|
+
const [focused, setFocused] = (0, import_react2.useState)(false);
|
|
285
285
|
const shouldFloat = inputState.length > 0 || focused;
|
|
286
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
286
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_react.Box, { pos: "relative", w: "full", children: [
|
|
287
287
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
288
|
-
|
|
288
|
+
import_react.Input,
|
|
289
289
|
{
|
|
290
290
|
...rest,
|
|
291
|
+
h: "12",
|
|
292
|
+
pt: shouldFloat ? "5" : "2",
|
|
293
|
+
pb: "1",
|
|
294
|
+
fontSize: "sm",
|
|
295
|
+
fontWeight: "semibold",
|
|
296
|
+
borderWidth: "1.5px",
|
|
297
|
+
borderRadius: "lg",
|
|
298
|
+
_placeholder: { color: "transparent" },
|
|
291
299
|
onFocus: (e) => {
|
|
292
300
|
props.onFocus?.(e);
|
|
293
301
|
setFocused(true);
|
|
@@ -304,26 +312,32 @@ var FloatingLabelInput = (props) => {
|
|
|
304
312
|
"data-float": shouldFloat || void 0
|
|
305
313
|
}
|
|
306
314
|
),
|
|
307
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
315
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.Field.Label, { css: floatingStyles, "data-float": shouldFloat || void 0, children: label })
|
|
308
316
|
] });
|
|
309
317
|
};
|
|
310
|
-
var floatingStyles = (0,
|
|
318
|
+
var floatingStyles = (0, import_react.defineStyle)({
|
|
319
|
+
/* placeholder state — vertically centred inside the input */
|
|
311
320
|
pos: "absolute",
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
top: "2.5",
|
|
321
|
+
top: "50%",
|
|
322
|
+
transform: "translateY(-50%)",
|
|
315
323
|
insetStart: "3",
|
|
324
|
+
fontSize: "sm",
|
|
316
325
|
fontWeight: "normal",
|
|
326
|
+
color: "gray.400",
|
|
327
|
+
bg: "bg",
|
|
328
|
+
px: "0.5",
|
|
317
329
|
pointerEvents: "none",
|
|
318
|
-
transition: "
|
|
319
|
-
|
|
330
|
+
transition: "top 0.15s ease, font-size 0.15s ease, color 0.15s ease, transform 0.15s ease",
|
|
331
|
+
/* floated state — sits above the border, clearly a label */
|
|
320
332
|
"&[data-float]": {
|
|
321
|
-
top: "-
|
|
322
|
-
|
|
323
|
-
|
|
333
|
+
top: "-2",
|
|
334
|
+
transform: "translateY(0)",
|
|
335
|
+
fontSize: "xs",
|
|
336
|
+
fontWeight: "medium",
|
|
337
|
+
color: "gray.400",
|
|
338
|
+
insetStart: "2.5"
|
|
324
339
|
}
|
|
325
340
|
});
|
|
326
|
-
var floating_label_input_default = FloatingLabelInput;
|
|
327
341
|
|
|
328
342
|
// src/NewSaleForm/LifePlanApplication1.tsx
|
|
329
343
|
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
@@ -436,7 +450,7 @@ var LifePlanApplication1 = ({
|
|
|
436
450
|
}
|
|
437
451
|
) }),
|
|
438
452
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react3.Field.Root, { children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
439
|
-
|
|
453
|
+
FloatingLabelInput,
|
|
440
454
|
{
|
|
441
455
|
id: "idNumber",
|
|
442
456
|
type: "text",
|
|
@@ -446,7 +460,7 @@ var LifePlanApplication1 = ({
|
|
|
446
460
|
}
|
|
447
461
|
) }),
|
|
448
462
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react3.Field.Root, { children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
449
|
-
|
|
463
|
+
FloatingLabelInput,
|
|
450
464
|
{
|
|
451
465
|
id: "lastName",
|
|
452
466
|
type: "text",
|
|
@@ -456,7 +470,7 @@ var LifePlanApplication1 = ({
|
|
|
456
470
|
}
|
|
457
471
|
) }),
|
|
458
472
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react3.Field.Root, { children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
459
|
-
|
|
473
|
+
FloatingLabelInput,
|
|
460
474
|
{
|
|
461
475
|
id: "firstName",
|
|
462
476
|
type: "text",
|
|
@@ -466,7 +480,7 @@ var LifePlanApplication1 = ({
|
|
|
466
480
|
}
|
|
467
481
|
) }),
|
|
468
482
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react3.Field.Root, { children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
469
|
-
|
|
483
|
+
FloatingLabelInput,
|
|
470
484
|
{
|
|
471
485
|
id: "middleName",
|
|
472
486
|
type: "text",
|
|
@@ -476,7 +490,7 @@ var LifePlanApplication1 = ({
|
|
|
476
490
|
}
|
|
477
491
|
) }),
|
|
478
492
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react3.Field.Root, { children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
479
|
-
|
|
493
|
+
FloatingLabelInput,
|
|
480
494
|
{
|
|
481
495
|
id: "suffix",
|
|
482
496
|
type: "text",
|
|
@@ -502,7 +516,7 @@ var LifePlanApplication1 = ({
|
|
|
502
516
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react3.Input, { id: "dateOfNeutralization", type: "date" })
|
|
503
517
|
] }),
|
|
504
518
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react3.Field.Root, { children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
505
|
-
|
|
519
|
+
FloatingLabelInput,
|
|
506
520
|
{
|
|
507
521
|
id: "height",
|
|
508
522
|
label: "Height (ft)",
|
|
@@ -514,7 +528,7 @@ var LifePlanApplication1 = ({
|
|
|
514
528
|
}
|
|
515
529
|
) }),
|
|
516
530
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react3.Field.Root, { children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
517
|
-
|
|
531
|
+
FloatingLabelInput,
|
|
518
532
|
{
|
|
519
533
|
id: "weight",
|
|
520
534
|
label: "Weight (lbs)",
|
|
@@ -563,7 +577,7 @@ var LifePlanApplication1 = ({
|
|
|
563
577
|
}
|
|
564
578
|
) }),
|
|
565
579
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react3.Field.Root, { children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
566
|
-
|
|
580
|
+
FloatingLabelInput,
|
|
567
581
|
{
|
|
568
582
|
id: "nationality",
|
|
569
583
|
type: "text",
|
|
@@ -573,7 +587,7 @@ var LifePlanApplication1 = ({
|
|
|
573
587
|
}
|
|
574
588
|
) }),
|
|
575
589
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react3.Field.Root, { children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
576
|
-
|
|
590
|
+
FloatingLabelInput,
|
|
577
591
|
{
|
|
578
592
|
id: "mobileNumber",
|
|
579
593
|
type: "text",
|
|
@@ -583,7 +597,7 @@ var LifePlanApplication1 = ({
|
|
|
583
597
|
}
|
|
584
598
|
) }),
|
|
585
599
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react3.Field.Root, { children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
586
|
-
|
|
600
|
+
FloatingLabelInput,
|
|
587
601
|
{
|
|
588
602
|
id: "landlineNumber",
|
|
589
603
|
type: "text",
|
|
@@ -596,7 +610,7 @@ var LifePlanApplication1 = ({
|
|
|
596
610
|
}
|
|
597
611
|
) }),
|
|
598
612
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react3.Field.Root, { children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
599
|
-
|
|
613
|
+
FloatingLabelInput,
|
|
600
614
|
{
|
|
601
615
|
id: "email",
|
|
602
616
|
type: "email",
|
|
@@ -606,7 +620,7 @@ var LifePlanApplication1 = ({
|
|
|
606
620
|
}
|
|
607
621
|
) }),
|
|
608
622
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react3.Field.Root, { children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
609
|
-
|
|
623
|
+
FloatingLabelInput,
|
|
610
624
|
{
|
|
611
625
|
id: "mailingAddress",
|
|
612
626
|
type: "text",
|
|
@@ -616,7 +630,7 @@ var LifePlanApplication1 = ({
|
|
|
616
630
|
}
|
|
617
631
|
) }),
|
|
618
632
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react3.Field.Root, { children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
619
|
-
|
|
633
|
+
FloatingLabelInput,
|
|
620
634
|
{
|
|
621
635
|
id: "insurability",
|
|
622
636
|
type: "text",
|
|
@@ -929,7 +943,7 @@ var LifePlanApplication2 = ({
|
|
|
929
943
|
}
|
|
930
944
|
) }),
|
|
931
945
|
/* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_react5.Field.Root, { children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
932
|
-
|
|
946
|
+
FloatingLabelInput,
|
|
933
947
|
{
|
|
934
948
|
id: "street",
|
|
935
949
|
label: "Street",
|
|
@@ -938,7 +952,7 @@ var LifePlanApplication2 = ({
|
|
|
938
952
|
}
|
|
939
953
|
) }),
|
|
940
954
|
/* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_react5.Field.Root, { children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
941
|
-
|
|
955
|
+
FloatingLabelInput,
|
|
942
956
|
{
|
|
943
957
|
id: "lotNumber",
|
|
944
958
|
label: "Lot #",
|
|
@@ -1315,7 +1329,7 @@ var Beneficiary = ({ onUpdate }) => {
|
|
|
1315
1329
|
children: [
|
|
1316
1330
|
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(import_react10.Field.Root, { children: [
|
|
1317
1331
|
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
1318
|
-
|
|
1332
|
+
FloatingLabelInput,
|
|
1319
1333
|
{
|
|
1320
1334
|
id: "firstName",
|
|
1321
1335
|
type: "text",
|
|
@@ -1331,7 +1345,7 @@ var Beneficiary = ({ onUpdate }) => {
|
|
|
1331
1345
|
] }),
|
|
1332
1346
|
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(import_react10.Field.Root, { children: [
|
|
1333
1347
|
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
1334
|
-
|
|
1348
|
+
FloatingLabelInput,
|
|
1335
1349
|
{
|
|
1336
1350
|
id: "lastName",
|
|
1337
1351
|
type: "text",
|
|
@@ -1347,7 +1361,7 @@ var Beneficiary = ({ onUpdate }) => {
|
|
|
1347
1361
|
] }),
|
|
1348
1362
|
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(import_react10.Field.Root, { children: [
|
|
1349
1363
|
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
1350
|
-
|
|
1364
|
+
FloatingLabelInput,
|
|
1351
1365
|
{
|
|
1352
1366
|
id: "middleInitial",
|
|
1353
1367
|
type: "text",
|
|
@@ -1366,7 +1380,7 @@ var Beneficiary = ({ onUpdate }) => {
|
|
|
1366
1380
|
),
|
|
1367
1381
|
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(import_react10.Field.Root, { children: [
|
|
1368
1382
|
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
1369
|
-
|
|
1383
|
+
FloatingLabelInput,
|
|
1370
1384
|
{
|
|
1371
1385
|
id: "address",
|
|
1372
1386
|
type: "text",
|
|
@@ -3148,7 +3162,7 @@ var LifePlanApplicationStepWrapper = () => {
|
|
|
3148
3162
|
};
|
|
3149
3163
|
var LifePlanApplicationStepWrapper_default = LifePlanApplicationStepWrapper;
|
|
3150
3164
|
|
|
3151
|
-
// src/
|
|
3165
|
+
// src/Generic/BottomQuickActions.tsx
|
|
3152
3166
|
var import_react29 = __toESM(require("react"));
|
|
3153
3167
|
var import_react30 = require("@chakra-ui/react");
|
|
3154
3168
|
var import_lu6 = require("react-icons/lu");
|
|
@@ -3182,7 +3196,7 @@ var BRAND_COLORS = {
|
|
|
3182
3196
|
paleGold: "#FFF48E"
|
|
3183
3197
|
};
|
|
3184
3198
|
|
|
3185
|
-
// src/
|
|
3199
|
+
// src/Generic/BottomQuickActions.tsx
|
|
3186
3200
|
var import_jsx_runtime18 = require("react/jsx-runtime");
|
|
3187
3201
|
var SHEET_BG = BRAND_COLORS.white;
|
|
3188
3202
|
var DRAG_COLOR = BRAND_COLORS.neutralBorder;
|
|
@@ -3465,9 +3479,208 @@ var BottomQuickActions = ({
|
|
|
3465
3479
|
};
|
|
3466
3480
|
var BottomQuickActions_default = BottomQuickActions;
|
|
3467
3481
|
|
|
3468
|
-
// src/
|
|
3482
|
+
// src/Generic/NotifyInstall.tsx
|
|
3483
|
+
var import_react32 = require("react");
|
|
3484
|
+
var import_react33 = require("@chakra-ui/react");
|
|
3485
|
+
var import_fi = require("react-icons/fi");
|
|
3486
|
+
|
|
3487
|
+
// src/hooks/useNotifyInstall.ts
|
|
3469
3488
|
var import_react31 = require("react");
|
|
3470
|
-
|
|
3489
|
+
function useNotifyInstall() {
|
|
3490
|
+
const [isInstalled, setIsInstalled] = (0, import_react31.useState)(false);
|
|
3491
|
+
const [isMobile, setIsMobile] = (0, import_react31.useState)(false);
|
|
3492
|
+
const [installPrompt, setInstallPrompt] = (0, import_react31.useState)(null);
|
|
3493
|
+
(0, import_react31.useEffect)(() => {
|
|
3494
|
+
const mobile = /Android|iPhone|iPad|iPod/i.test(navigator.userAgent);
|
|
3495
|
+
setIsMobile(mobile);
|
|
3496
|
+
const installed = window.matchMedia("(display-mode: standalone)").matches || window.navigator.standalone === true;
|
|
3497
|
+
setIsInstalled(installed);
|
|
3498
|
+
const handler = (event) => {
|
|
3499
|
+
event.preventDefault();
|
|
3500
|
+
setInstallPrompt(event);
|
|
3501
|
+
};
|
|
3502
|
+
window.addEventListener("beforeinstallprompt", handler);
|
|
3503
|
+
return () => {
|
|
3504
|
+
window.removeEventListener("beforeinstallprompt", handler);
|
|
3505
|
+
};
|
|
3506
|
+
}, []);
|
|
3507
|
+
const install = async () => {
|
|
3508
|
+
if (!installPrompt) return;
|
|
3509
|
+
installPrompt.prompt();
|
|
3510
|
+
const result = await installPrompt.userChoice;
|
|
3511
|
+
if (result.outcome === "accepted") {
|
|
3512
|
+
setIsInstalled(true);
|
|
3513
|
+
}
|
|
3514
|
+
setInstallPrompt(null);
|
|
3515
|
+
};
|
|
3516
|
+
return {
|
|
3517
|
+
isInstalled,
|
|
3518
|
+
isMobile,
|
|
3519
|
+
canInstall: !!installPrompt,
|
|
3520
|
+
install
|
|
3521
|
+
};
|
|
3522
|
+
}
|
|
3523
|
+
|
|
3524
|
+
// src/Generic/NotifyInstall.tsx
|
|
3525
|
+
var import_jsx_runtime19 = require("react/jsx-runtime");
|
|
3526
|
+
var STEPS = [
|
|
3527
|
+
{
|
|
3528
|
+
icon: import_fi.FiShare,
|
|
3529
|
+
label: "Tap the browser menu or Share button"
|
|
3530
|
+
},
|
|
3531
|
+
{
|
|
3532
|
+
icon: import_fi.FiPlusSquare,
|
|
3533
|
+
label: 'Choose "Add to Home Screen"'
|
|
3534
|
+
}
|
|
3535
|
+
];
|
|
3536
|
+
var INSTALL_DIALOG_DISMISSED_KEY = "estore-install-dialog-dismissed";
|
|
3537
|
+
function NotifyInstall({
|
|
3538
|
+
children
|
|
3539
|
+
}) {
|
|
3540
|
+
const { isInstalled, isMobile, canInstall, install } = useNotifyInstall();
|
|
3541
|
+
const [isDismissed, setIsDismissed] = (0, import_react32.useState)(false);
|
|
3542
|
+
(0, import_react32.useEffect)(() => {
|
|
3543
|
+
const wasDismissed = localStorage.getItem(INSTALL_DIALOG_DISMISSED_KEY);
|
|
3544
|
+
setIsDismissed(wasDismissed === "true");
|
|
3545
|
+
}, []);
|
|
3546
|
+
const handleClose = () => {
|
|
3547
|
+
localStorage.setItem(INSTALL_DIALOG_DISMISSED_KEY, "true");
|
|
3548
|
+
setIsDismissed(true);
|
|
3549
|
+
};
|
|
3550
|
+
const isOpen = !isInstalled && isMobile && !isDismissed;
|
|
3551
|
+
if (!isOpen) {
|
|
3552
|
+
return children;
|
|
3553
|
+
}
|
|
3554
|
+
return /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(import_jsx_runtime19.Fragment, { children: [
|
|
3555
|
+
children,
|
|
3556
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
3557
|
+
import_react33.Dialog.Root,
|
|
3558
|
+
{
|
|
3559
|
+
open: isOpen,
|
|
3560
|
+
onOpenChange: (details) => {
|
|
3561
|
+
if (!details.open) {
|
|
3562
|
+
handleClose();
|
|
3563
|
+
}
|
|
3564
|
+
},
|
|
3565
|
+
placement: "center",
|
|
3566
|
+
motionPreset: "slide-in-bottom",
|
|
3567
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(import_react33.Portal, { children: [
|
|
3568
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_react33.Dialog.Backdrop, { bg: "blackAlpha.600", backdropFilter: "blur(2px)" }),
|
|
3569
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
3570
|
+
import_react33.Dialog.Positioner,
|
|
3571
|
+
{
|
|
3572
|
+
p: { base: 0, sm: 4 },
|
|
3573
|
+
alignItems: { base: "flex-end", sm: "center" },
|
|
3574
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(
|
|
3575
|
+
import_react33.Dialog.Content,
|
|
3576
|
+
{
|
|
3577
|
+
w: "xl",
|
|
3578
|
+
maxW: { base: "full", sm: "sm" },
|
|
3579
|
+
borderRadius: { base: "2xl 2xl 0 0", sm: "2xl" },
|
|
3580
|
+
overflow: "hidden",
|
|
3581
|
+
boxShadow: "2xl",
|
|
3582
|
+
m: 0,
|
|
3583
|
+
children: [
|
|
3584
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_react33.Dialog.Body, { px: { base: 6, sm: 8 }, py: { base: 8, sm: 10 }, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(import_react33.VStack, { gap: 6, textAlign: "center", children: [
|
|
3585
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
3586
|
+
import_react33.Flex,
|
|
3587
|
+
{
|
|
3588
|
+
boxSize: { base: 16, sm: 20 },
|
|
3589
|
+
align: "center",
|
|
3590
|
+
justify: "center",
|
|
3591
|
+
rounded: "2xl",
|
|
3592
|
+
bg: "green.50",
|
|
3593
|
+
color: "green.600",
|
|
3594
|
+
shadow: "sm",
|
|
3595
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_react33.Icon, { as: import_fi.FiDownload, boxSize: { base: 8, sm: 9 } })
|
|
3596
|
+
}
|
|
3597
|
+
),
|
|
3598
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(import_react33.VStack, { gap: 2, children: [
|
|
3599
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
3600
|
+
import_react33.Heading,
|
|
3601
|
+
{
|
|
3602
|
+
fontSize: { base: "lg", sm: "xl" },
|
|
3603
|
+
fontWeight: "bold",
|
|
3604
|
+
color: "gray.900",
|
|
3605
|
+
children: "Install St. Peter eStore"
|
|
3606
|
+
}
|
|
3607
|
+
),
|
|
3608
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
3609
|
+
import_react33.Text,
|
|
3610
|
+
{
|
|
3611
|
+
fontSize: { base: "sm", sm: "md" },
|
|
3612
|
+
color: "gray.600",
|
|
3613
|
+
lineHeight: "tall",
|
|
3614
|
+
children: "Add the app to your home screen for a faster, app-like experience before continuing."
|
|
3615
|
+
}
|
|
3616
|
+
)
|
|
3617
|
+
] }),
|
|
3618
|
+
canInstall ? /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(
|
|
3619
|
+
import_react33.Button,
|
|
3620
|
+
{
|
|
3621
|
+
onClick: install,
|
|
3622
|
+
colorPalette: "green",
|
|
3623
|
+
size: "lg",
|
|
3624
|
+
w: "full",
|
|
3625
|
+
rounded: "xl",
|
|
3626
|
+
children: [
|
|
3627
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_react33.Icon, { as: import_fi.FiDownload }),
|
|
3628
|
+
"Add to Home Screen"
|
|
3629
|
+
]
|
|
3630
|
+
}
|
|
3631
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
3632
|
+
import_react33.Box,
|
|
3633
|
+
{
|
|
3634
|
+
w: "full",
|
|
3635
|
+
bg: "gray.50",
|
|
3636
|
+
borderWidth: "1px",
|
|
3637
|
+
borderColor: "gray.100",
|
|
3638
|
+
rounded: "xl",
|
|
3639
|
+
p: 4,
|
|
3640
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_react33.VStack, { gap: 4, align: "stretch", children: STEPS.map((step, index) => /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(import_react33.HStack, { gap: 3, align: "center", children: [
|
|
3641
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
3642
|
+
import_react33.Flex,
|
|
3643
|
+
{
|
|
3644
|
+
boxSize: 9,
|
|
3645
|
+
flexShrink: 0,
|
|
3646
|
+
align: "center",
|
|
3647
|
+
justify: "center",
|
|
3648
|
+
rounded: "lg",
|
|
3649
|
+
bg: "white",
|
|
3650
|
+
borderWidth: "1px",
|
|
3651
|
+
borderColor: "gray.200",
|
|
3652
|
+
color: "green.600",
|
|
3653
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_react33.Icon, { as: step.icon, boxSize: 4 })
|
|
3654
|
+
}
|
|
3655
|
+
),
|
|
3656
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
3657
|
+
import_react33.Text,
|
|
3658
|
+
{
|
|
3659
|
+
fontSize: "sm",
|
|
3660
|
+
color: "gray.700",
|
|
3661
|
+
textAlign: "left",
|
|
3662
|
+
children: step.label
|
|
3663
|
+
}
|
|
3664
|
+
)
|
|
3665
|
+
] }, index)) })
|
|
3666
|
+
}
|
|
3667
|
+
)
|
|
3668
|
+
] }) }),
|
|
3669
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_react33.Dialog.CloseTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_react33.CloseButton, { size: "sm", onClick: handleClose }) })
|
|
3670
|
+
]
|
|
3671
|
+
}
|
|
3672
|
+
)
|
|
3673
|
+
}
|
|
3674
|
+
)
|
|
3675
|
+
] })
|
|
3676
|
+
}
|
|
3677
|
+
)
|
|
3678
|
+
] });
|
|
3679
|
+
}
|
|
3680
|
+
|
|
3681
|
+
// src/UserProfile/UserProfile.tsx
|
|
3682
|
+
var import_react34 = require("react");
|
|
3683
|
+
var import_react35 = require("@chakra-ui/react");
|
|
3471
3684
|
var import_ri = require("react-icons/ri");
|
|
3472
3685
|
var import_lu7 = require("react-icons/lu");
|
|
3473
3686
|
var import_hi2 = require("react-icons/hi2");
|
|
@@ -3476,7 +3689,7 @@ var import_lia = require("react-icons/lia");
|
|
|
3476
3689
|
var import_fa5 = require("react-icons/fa");
|
|
3477
3690
|
var import_md = require("react-icons/md");
|
|
3478
3691
|
var import_io5 = require("react-icons/io5");
|
|
3479
|
-
var
|
|
3692
|
+
var import_jsx_runtime20 = require("react/jsx-runtime");
|
|
3480
3693
|
var NAVBAR_STORAGE_KEY = "profile-navbar-quick-items";
|
|
3481
3694
|
var FONT_SIZE_STORAGE_KEY = "profile-font-size-pref";
|
|
3482
3695
|
var DEFAULT_NAV_HREFS = ["/", "/plans", "/pay-my-plan", "/claims"];
|
|
@@ -3774,28 +3987,28 @@ function ReusableProfile({
|
|
|
3774
3987
|
onTwoFactorChange,
|
|
3775
3988
|
onToast = noopToast
|
|
3776
3989
|
}) {
|
|
3777
|
-
const [profileView, setProfileView] = (0,
|
|
3778
|
-
const [fallbackColorMode, setFallbackColorMode] = (0,
|
|
3990
|
+
const [profileView, setProfileView] = (0, import_react34.useState)("main");
|
|
3991
|
+
const [fallbackColorMode, setFallbackColorMode] = (0, import_react34.useState)("light");
|
|
3779
3992
|
const colorMode = controlledColorMode ?? fallbackColorMode;
|
|
3780
|
-
const [fontSize, setFontSizeLocal] = (0,
|
|
3781
|
-
const [quickNavHrefs, setQuickNavHrefs] = (0,
|
|
3782
|
-
const [replacingIdx, setReplacingIdx] = (0,
|
|
3783
|
-
const [editName, setEditName] = (0,
|
|
3784
|
-
const [editLoading, setEditLoading] = (0,
|
|
3785
|
-
const [currentPw, setCurrentPw] = (0,
|
|
3786
|
-
const [newPw, setNewPw] = (0,
|
|
3787
|
-
const [confirmPw, setConfirmPw] = (0,
|
|
3788
|
-
const [showCurrentPw, setShowCurrentPw] = (0,
|
|
3789
|
-
const [showNewPw, setShowNewPw] = (0,
|
|
3790
|
-
const [showConfirmPw, setShowConfirmPw] = (0,
|
|
3791
|
-
const [pwLoading, setPwLoading] = (0,
|
|
3792
|
-
const [twoFactorEnabled, setTwoFactorEnabled] = (0,
|
|
3993
|
+
const [fontSize, setFontSizeLocal] = (0, import_react34.useState)("md");
|
|
3994
|
+
const [quickNavHrefs, setQuickNavHrefs] = (0, import_react34.useState)(initialQuickNavHrefs);
|
|
3995
|
+
const [replacingIdx, setReplacingIdx] = (0, import_react34.useState)(null);
|
|
3996
|
+
const [editName, setEditName] = (0, import_react34.useState)(user.displayName);
|
|
3997
|
+
const [editLoading, setEditLoading] = (0, import_react34.useState)(false);
|
|
3998
|
+
const [currentPw, setCurrentPw] = (0, import_react34.useState)("");
|
|
3999
|
+
const [newPw, setNewPw] = (0, import_react34.useState)("");
|
|
4000
|
+
const [confirmPw, setConfirmPw] = (0, import_react34.useState)("");
|
|
4001
|
+
const [showCurrentPw, setShowCurrentPw] = (0, import_react34.useState)(false);
|
|
4002
|
+
const [showNewPw, setShowNewPw] = (0, import_react34.useState)(false);
|
|
4003
|
+
const [showConfirmPw, setShowConfirmPw] = (0, import_react34.useState)(false);
|
|
4004
|
+
const [pwLoading, setPwLoading] = (0, import_react34.useState)(false);
|
|
4005
|
+
const [twoFactorEnabled, setTwoFactorEnabled] = (0, import_react34.useState)(
|
|
3793
4006
|
initialTwoFactorEnabled
|
|
3794
4007
|
);
|
|
3795
|
-
const [isMounted, setIsMounted] = (0,
|
|
3796
|
-
const isDesktopRaw = (0,
|
|
4008
|
+
const [isMounted, setIsMounted] = (0, import_react34.useState)(false);
|
|
4009
|
+
const isDesktopRaw = (0, import_react35.useBreakpointValue)({ base: false, md: true });
|
|
3797
4010
|
const isDesktop = isMounted ? isDesktopRaw ?? false : false;
|
|
3798
|
-
(0,
|
|
4011
|
+
(0, import_react34.useEffect)(() => {
|
|
3799
4012
|
setIsMounted(true);
|
|
3800
4013
|
if (!enableLocalStorage || typeof window === "undefined") return;
|
|
3801
4014
|
setFontSizeLocal(localStorage.getItem(FONT_SIZE_STORAGE_KEY) ?? "md");
|
|
@@ -3806,10 +4019,10 @@ function ReusableProfile({
|
|
|
3806
4019
|
setQuickNavHrefs(initialQuickNavHrefs);
|
|
3807
4020
|
}
|
|
3808
4021
|
}, [enableLocalStorage, initialQuickNavHrefs, storageKey]);
|
|
3809
|
-
(0,
|
|
4022
|
+
(0, import_react34.useEffect)(() => {
|
|
3810
4023
|
setEditName(user.displayName);
|
|
3811
4024
|
}, [user.displayName]);
|
|
3812
|
-
const availableOptions = (0,
|
|
4025
|
+
const availableOptions = (0, import_react34.useMemo)(
|
|
3813
4026
|
() => availableNavOptions.filter(
|
|
3814
4027
|
(option) => !user.role || option.roles.includes(user.role)
|
|
3815
4028
|
),
|
|
@@ -3937,9 +4150,9 @@ function ReusableProfile({
|
|
|
3937
4150
|
}
|
|
3938
4151
|
};
|
|
3939
4152
|
const roleLabel = user.role ? ROLE_LABELS[user.role] ?? user.role : "";
|
|
3940
|
-
const mainContent = /* @__PURE__ */ (0,
|
|
3941
|
-
/* @__PURE__ */ (0,
|
|
3942
|
-
|
|
4153
|
+
const mainContent = /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_jsx_runtime20.Fragment, { children: [
|
|
4154
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
|
|
4155
|
+
import_react35.Box,
|
|
3943
4156
|
{
|
|
3944
4157
|
bg: "var(--chakra-colors-primary)",
|
|
3945
4158
|
pt: 12,
|
|
@@ -3947,21 +4160,21 @@ function ReusableProfile({
|
|
|
3947
4160
|
px: 4,
|
|
3948
4161
|
textAlign: "center",
|
|
3949
4162
|
children: [
|
|
3950
|
-
/* @__PURE__ */ (0,
|
|
3951
|
-
|
|
4163
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
|
|
4164
|
+
import_react35.Avatar.Root,
|
|
3952
4165
|
{
|
|
3953
4166
|
size: "2xl",
|
|
3954
4167
|
mx: "auto",
|
|
3955
4168
|
mb: 4,
|
|
3956
4169
|
colorPalette: pickPalette(user.displayName || "U"),
|
|
3957
4170
|
children: [
|
|
3958
|
-
user.avatarSrc && /* @__PURE__ */ (0,
|
|
3959
|
-
/* @__PURE__ */ (0,
|
|
4171
|
+
user.avatarSrc && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Avatar.Image, { src: user.avatarSrc, alt: user.displayName }),
|
|
4172
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Avatar.Fallback, { name: user.displayName })
|
|
3960
4173
|
]
|
|
3961
4174
|
}
|
|
3962
4175
|
),
|
|
3963
|
-
/* @__PURE__ */ (0,
|
|
3964
|
-
|
|
4176
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4177
|
+
import_react35.Text,
|
|
3965
4178
|
{
|
|
3966
4179
|
color: "white",
|
|
3967
4180
|
fontWeight: "bold",
|
|
@@ -3971,9 +4184,9 @@ function ReusableProfile({
|
|
|
3971
4184
|
children: user.displayName
|
|
3972
4185
|
}
|
|
3973
4186
|
),
|
|
3974
|
-
user.email && /* @__PURE__ */ (0,
|
|
3975
|
-
roleLabel && /* @__PURE__ */ (0,
|
|
3976
|
-
|
|
4187
|
+
user.email && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { color: "rgba(255,255,255,0.75)", fontSize: "sm", mb: 2, children: user.email }),
|
|
4188
|
+
roleLabel && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Box, { display: "inline-flex", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4189
|
+
import_react35.Badge,
|
|
3977
4190
|
{
|
|
3978
4191
|
bg: "rgba(255,255,255,0.15)",
|
|
3979
4192
|
color: "white",
|
|
@@ -3989,9 +4202,9 @@ function ReusableProfile({
|
|
|
3989
4202
|
]
|
|
3990
4203
|
}
|
|
3991
4204
|
),
|
|
3992
|
-
/* @__PURE__ */ (0,
|
|
3993
|
-
/* @__PURE__ */ (0,
|
|
3994
|
-
|
|
4205
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { px: 4, pt: 5, pb: 1, children: [
|
|
4206
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4207
|
+
import_react35.Text,
|
|
3995
4208
|
{
|
|
3996
4209
|
fontSize: "xs",
|
|
3997
4210
|
fontWeight: "bold",
|
|
@@ -4002,8 +4215,8 @@ function ReusableProfile({
|
|
|
4002
4215
|
children: "Account"
|
|
4003
4216
|
}
|
|
4004
4217
|
),
|
|
4005
|
-
/* @__PURE__ */ (0,
|
|
4006
|
-
|
|
4218
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4219
|
+
import_react35.Box,
|
|
4007
4220
|
{
|
|
4008
4221
|
as: "button",
|
|
4009
4222
|
w: "full",
|
|
@@ -4011,8 +4224,8 @@ function ReusableProfile({
|
|
|
4011
4224
|
_hover: { opacity: 0.7 },
|
|
4012
4225
|
transition: "opacity 0.15s",
|
|
4013
4226
|
onClick: () => setProfileView("edit-account"),
|
|
4014
|
-
children: /* @__PURE__ */ (0,
|
|
4015
|
-
|
|
4227
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
|
|
4228
|
+
import_react35.Flex,
|
|
4016
4229
|
{
|
|
4017
4230
|
justify: "space-between",
|
|
4018
4231
|
align: "center",
|
|
@@ -4021,9 +4234,9 @@ function ReusableProfile({
|
|
|
4021
4234
|
borderRadius: "lg",
|
|
4022
4235
|
bg: isDesktop && profileView === "edit-account" ? "gray.100" : void 0,
|
|
4023
4236
|
children: [
|
|
4024
|
-
/* @__PURE__ */ (0,
|
|
4025
|
-
/* @__PURE__ */ (0,
|
|
4026
|
-
|
|
4237
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Flex, { align: "center", gap: 3, children: [
|
|
4238
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4239
|
+
import_react35.Box,
|
|
4027
4240
|
{
|
|
4028
4241
|
w: "38px",
|
|
4029
4242
|
h: "38px",
|
|
@@ -4034,23 +4247,23 @@ function ReusableProfile({
|
|
|
4034
4247
|
justifyContent: "center",
|
|
4035
4248
|
color: "gray.600",
|
|
4036
4249
|
flexShrink: 0,
|
|
4037
|
-
children: /* @__PURE__ */ (0,
|
|
4250
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuUser, { size: 16 })
|
|
4038
4251
|
}
|
|
4039
4252
|
),
|
|
4040
|
-
/* @__PURE__ */ (0,
|
|
4041
|
-
/* @__PURE__ */ (0,
|
|
4042
|
-
/* @__PURE__ */ (0,
|
|
4253
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { children: [
|
|
4254
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "sm", fontWeight: "semibold", children: "Edit Account" }),
|
|
4255
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "xs", color: "gray.500", children: "Update your display name and contact details" })
|
|
4043
4256
|
] })
|
|
4044
4257
|
] }),
|
|
4045
|
-
/* @__PURE__ */ (0,
|
|
4258
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuChevronRight, { size: 16, color: "var(--chakra-colors-gray-400)" })
|
|
4046
4259
|
]
|
|
4047
4260
|
}
|
|
4048
4261
|
)
|
|
4049
4262
|
}
|
|
4050
4263
|
),
|
|
4051
|
-
/* @__PURE__ */ (0,
|
|
4052
|
-
/* @__PURE__ */ (0,
|
|
4053
|
-
|
|
4264
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Separator, {}),
|
|
4265
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4266
|
+
import_react35.Box,
|
|
4054
4267
|
{
|
|
4055
4268
|
as: "button",
|
|
4056
4269
|
w: "full",
|
|
@@ -4061,8 +4274,8 @@ function ReusableProfile({
|
|
|
4061
4274
|
resetPasswordForm();
|
|
4062
4275
|
setProfileView("change-password");
|
|
4063
4276
|
},
|
|
4064
|
-
children: /* @__PURE__ */ (0,
|
|
4065
|
-
|
|
4277
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
|
|
4278
|
+
import_react35.Flex,
|
|
4066
4279
|
{
|
|
4067
4280
|
justify: "space-between",
|
|
4068
4281
|
align: "center",
|
|
@@ -4071,9 +4284,9 @@ function ReusableProfile({
|
|
|
4071
4284
|
borderRadius: "lg",
|
|
4072
4285
|
bg: isDesktop && profileView === "change-password" ? "gray.100" : void 0,
|
|
4073
4286
|
children: [
|
|
4074
|
-
/* @__PURE__ */ (0,
|
|
4075
|
-
/* @__PURE__ */ (0,
|
|
4076
|
-
|
|
4287
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Flex, { align: "center", gap: 3, children: [
|
|
4288
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4289
|
+
import_react35.Box,
|
|
4077
4290
|
{
|
|
4078
4291
|
w: "38px",
|
|
4079
4292
|
h: "38px",
|
|
@@ -4084,25 +4297,25 @@ function ReusableProfile({
|
|
|
4084
4297
|
justifyContent: "center",
|
|
4085
4298
|
color: "gray.600",
|
|
4086
4299
|
flexShrink: 0,
|
|
4087
|
-
children: /* @__PURE__ */ (0,
|
|
4300
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuLock, { size: 16 })
|
|
4088
4301
|
}
|
|
4089
4302
|
),
|
|
4090
|
-
/* @__PURE__ */ (0,
|
|
4091
|
-
/* @__PURE__ */ (0,
|
|
4092
|
-
/* @__PURE__ */ (0,
|
|
4303
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { children: [
|
|
4304
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "sm", fontWeight: "semibold", children: "Change Password" }),
|
|
4305
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "xs", color: "gray.500", children: "Test locally through the callback prop" })
|
|
4093
4306
|
] })
|
|
4094
4307
|
] }),
|
|
4095
|
-
/* @__PURE__ */ (0,
|
|
4308
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuChevronRight, { size: 16, color: "var(--chakra-colors-gray-400)" })
|
|
4096
4309
|
]
|
|
4097
4310
|
}
|
|
4098
4311
|
)
|
|
4099
4312
|
}
|
|
4100
4313
|
),
|
|
4101
|
-
/* @__PURE__ */ (0,
|
|
4102
|
-
/* @__PURE__ */ (0,
|
|
4103
|
-
/* @__PURE__ */ (0,
|
|
4104
|
-
/* @__PURE__ */ (0,
|
|
4105
|
-
|
|
4314
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Separator, {}),
|
|
4315
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Flex, { justify: "space-between", align: "center", py: 3, children: [
|
|
4316
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Flex, { align: "center", gap: 3, children: [
|
|
4317
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4318
|
+
import_react35.Box,
|
|
4106
4319
|
{
|
|
4107
4320
|
w: "38px",
|
|
4108
4321
|
h: "38px",
|
|
@@ -4113,16 +4326,16 @@ function ReusableProfile({
|
|
|
4113
4326
|
justifyContent: "center",
|
|
4114
4327
|
color: "gray.600",
|
|
4115
4328
|
flexShrink: 0,
|
|
4116
|
-
children: /* @__PURE__ */ (0,
|
|
4329
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuShield, { size: 16 })
|
|
4117
4330
|
}
|
|
4118
4331
|
),
|
|
4119
|
-
/* @__PURE__ */ (0,
|
|
4120
|
-
/* @__PURE__ */ (0,
|
|
4121
|
-
/* @__PURE__ */ (0,
|
|
4332
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { children: [
|
|
4333
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "sm", fontWeight: "semibold", children: "Two Factor Authentication" }),
|
|
4334
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "xs", color: "gray.500", children: twoFactorEnabled ? "Enabled" : "Disabled" })
|
|
4122
4335
|
] })
|
|
4123
4336
|
] }),
|
|
4124
|
-
/* @__PURE__ */ (0,
|
|
4125
|
-
|
|
4337
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4338
|
+
import_react35.Box,
|
|
4126
4339
|
{
|
|
4127
4340
|
role: "switch",
|
|
4128
4341
|
"aria-checked": twoFactorEnabled,
|
|
@@ -4144,8 +4357,8 @@ function ReusableProfile({
|
|
|
4144
4357
|
cursor: "pointer",
|
|
4145
4358
|
flexShrink: 0,
|
|
4146
4359
|
outline: "none",
|
|
4147
|
-
children: /* @__PURE__ */ (0,
|
|
4148
|
-
|
|
4360
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4361
|
+
import_react35.Box,
|
|
4149
4362
|
{
|
|
4150
4363
|
position: "absolute",
|
|
4151
4364
|
top: "3px",
|
|
@@ -4162,9 +4375,9 @@ function ReusableProfile({
|
|
|
4162
4375
|
)
|
|
4163
4376
|
] })
|
|
4164
4377
|
] }),
|
|
4165
|
-
/* @__PURE__ */ (0,
|
|
4166
|
-
/* @__PURE__ */ (0,
|
|
4167
|
-
|
|
4378
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { px: 4, pt: 4, pb: 2, children: [
|
|
4379
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4380
|
+
import_react35.Text,
|
|
4168
4381
|
{
|
|
4169
4382
|
fontSize: "xs",
|
|
4170
4383
|
fontWeight: "bold",
|
|
@@ -4175,10 +4388,10 @@ function ReusableProfile({
|
|
|
4175
4388
|
children: "Preferences"
|
|
4176
4389
|
}
|
|
4177
4390
|
),
|
|
4178
|
-
/* @__PURE__ */ (0,
|
|
4179
|
-
/* @__PURE__ */ (0,
|
|
4180
|
-
/* @__PURE__ */ (0,
|
|
4181
|
-
|
|
4391
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Flex, { justify: "space-between", align: "center", py: 3, children: [
|
|
4392
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Flex, { align: "center", gap: 3, children: [
|
|
4393
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4394
|
+
import_react35.Box,
|
|
4182
4395
|
{
|
|
4183
4396
|
w: "38px",
|
|
4184
4397
|
h: "38px",
|
|
@@ -4189,18 +4402,18 @@ function ReusableProfile({
|
|
|
4189
4402
|
justifyContent: "center",
|
|
4190
4403
|
color: "gray.600",
|
|
4191
4404
|
flexShrink: 0,
|
|
4192
|
-
children: colorMode === "dark" ? /* @__PURE__ */ (0,
|
|
4405
|
+
children: colorMode === "dark" ? /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuMoon, { size: 16 }) : /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuSun, { size: 16 })
|
|
4193
4406
|
}
|
|
4194
4407
|
),
|
|
4195
|
-
/* @__PURE__ */ (0,
|
|
4196
|
-
/* @__PURE__ */ (0,
|
|
4197
|
-
/* @__PURE__ */ (0,
|
|
4408
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { children: [
|
|
4409
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "sm", fontWeight: "semibold", children: "Appearance" }),
|
|
4410
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "xs", color: "gray.500", children: colorMode === "light" ? "Light mode" : "Dark mode" })
|
|
4198
4411
|
] })
|
|
4199
4412
|
] }),
|
|
4200
|
-
/* @__PURE__ */ (0,
|
|
4413
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.HStack, { gap: 1.5, children: ["light", "dark"].map((mode) => {
|
|
4201
4414
|
const isActive = colorMode === mode;
|
|
4202
|
-
return /* @__PURE__ */ (0,
|
|
4203
|
-
|
|
4415
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
|
|
4416
|
+
import_react35.Button,
|
|
4204
4417
|
{
|
|
4205
4418
|
size: "sm",
|
|
4206
4419
|
variant: "outline",
|
|
@@ -4215,9 +4428,9 @@ function ReusableProfile({
|
|
|
4215
4428
|
},
|
|
4216
4429
|
onClick: () => handleColorMode(mode),
|
|
4217
4430
|
children: [
|
|
4218
|
-
mode === "light" ? /* @__PURE__ */ (0,
|
|
4219
|
-
/* @__PURE__ */ (0,
|
|
4220
|
-
|
|
4431
|
+
mode === "light" ? /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuSun, { size: 13 }) : /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuMoon, { size: 13 }),
|
|
4432
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4433
|
+
import_react35.Text,
|
|
4221
4434
|
{
|
|
4222
4435
|
fontSize: "xs",
|
|
4223
4436
|
textTransform: "capitalize",
|
|
@@ -4231,11 +4444,11 @@ function ReusableProfile({
|
|
|
4231
4444
|
);
|
|
4232
4445
|
}) })
|
|
4233
4446
|
] }),
|
|
4234
|
-
/* @__PURE__ */ (0,
|
|
4235
|
-
/* @__PURE__ */ (0,
|
|
4236
|
-
/* @__PURE__ */ (0,
|
|
4237
|
-
/* @__PURE__ */ (0,
|
|
4238
|
-
|
|
4447
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Separator, {}),
|
|
4448
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Flex, { justify: "space-between", align: "center", py: 3, children: [
|
|
4449
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Flex, { align: "center", gap: 3, children: [
|
|
4450
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4451
|
+
import_react35.Box,
|
|
4239
4452
|
{
|
|
4240
4453
|
w: "38px",
|
|
4241
4454
|
h: "38px",
|
|
@@ -4251,15 +4464,15 @@ function ReusableProfile({
|
|
|
4251
4464
|
children: "A"
|
|
4252
4465
|
}
|
|
4253
4466
|
),
|
|
4254
|
-
/* @__PURE__ */ (0,
|
|
4255
|
-
/* @__PURE__ */ (0,
|
|
4256
|
-
/* @__PURE__ */ (0,
|
|
4467
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { children: [
|
|
4468
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "sm", fontWeight: "semibold", children: "Text Size" }),
|
|
4469
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "xs", color: "gray.500", children: fontSizeLabel })
|
|
4257
4470
|
] })
|
|
4258
4471
|
] }),
|
|
4259
|
-
/* @__PURE__ */ (0,
|
|
4472
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.HStack, { gap: 1, children: FONT_SIZES.map((option) => {
|
|
4260
4473
|
const isActive = fontSize === option.value;
|
|
4261
|
-
return /* @__PURE__ */ (0,
|
|
4262
|
-
|
|
4474
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4475
|
+
import_react35.Button,
|
|
4263
4476
|
{
|
|
4264
4477
|
size: "sm",
|
|
4265
4478
|
variant: "outline",
|
|
@@ -4274,8 +4487,8 @@ function ReusableProfile({
|
|
|
4274
4487
|
},
|
|
4275
4488
|
onClick: () => handleFontSize(option.value),
|
|
4276
4489
|
title: option.title,
|
|
4277
|
-
children: /* @__PURE__ */ (0,
|
|
4278
|
-
|
|
4490
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4491
|
+
import_react35.Text,
|
|
4279
4492
|
{
|
|
4280
4493
|
fontWeight: isActive ? "bold" : "normal",
|
|
4281
4494
|
style: { fontSize: `${option.scale * 13}px` },
|
|
@@ -4287,9 +4500,9 @@ function ReusableProfile({
|
|
|
4287
4500
|
);
|
|
4288
4501
|
}) })
|
|
4289
4502
|
] }),
|
|
4290
|
-
/* @__PURE__ */ (0,
|
|
4291
|
-
/* @__PURE__ */ (0,
|
|
4292
|
-
|
|
4503
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Separator, {}),
|
|
4504
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4505
|
+
import_react35.Box,
|
|
4293
4506
|
{
|
|
4294
4507
|
as: "button",
|
|
4295
4508
|
w: "full",
|
|
@@ -4297,10 +4510,10 @@ function ReusableProfile({
|
|
|
4297
4510
|
_hover: { opacity: 0.7 },
|
|
4298
4511
|
transition: "opacity 0.15s",
|
|
4299
4512
|
onClick: () => setProfileView("navbar-customize"),
|
|
4300
|
-
children: /* @__PURE__ */ (0,
|
|
4301
|
-
/* @__PURE__ */ (0,
|
|
4302
|
-
/* @__PURE__ */ (0,
|
|
4303
|
-
|
|
4513
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Flex, { justify: "space-between", align: "center", py: 3, children: [
|
|
4514
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Flex, { align: "center", gap: 3, children: [
|
|
4515
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4516
|
+
import_react35.Box,
|
|
4304
4517
|
{
|
|
4305
4518
|
w: "38px",
|
|
4306
4519
|
h: "38px",
|
|
@@ -4311,12 +4524,12 @@ function ReusableProfile({
|
|
|
4311
4524
|
justifyContent: "center",
|
|
4312
4525
|
color: "gray.600",
|
|
4313
4526
|
flexShrink: 0,
|
|
4314
|
-
children: /* @__PURE__ */ (0,
|
|
4527
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuArrowLeftRight, { size: 16 })
|
|
4315
4528
|
}
|
|
4316
4529
|
),
|
|
4317
|
-
/* @__PURE__ */ (0,
|
|
4318
|
-
/* @__PURE__ */ (0,
|
|
4319
|
-
/* @__PURE__ */ (0,
|
|
4530
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { children: [
|
|
4531
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "sm", fontWeight: "semibold", children: "Quick Navigation" }),
|
|
4532
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Text, { fontSize: "xs", color: "gray.500", children: [
|
|
4320
4533
|
quickNavHrefs.length,
|
|
4321
4534
|
" of ",
|
|
4322
4535
|
maxQuickNavItems,
|
|
@@ -4324,13 +4537,13 @@ function ReusableProfile({
|
|
|
4324
4537
|
] })
|
|
4325
4538
|
] })
|
|
4326
4539
|
] }),
|
|
4327
|
-
/* @__PURE__ */ (0,
|
|
4540
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuChevronRight, { size: 16, color: "var(--chakra-colors-gray-400)" })
|
|
4328
4541
|
] })
|
|
4329
4542
|
}
|
|
4330
4543
|
)
|
|
4331
4544
|
] }),
|
|
4332
|
-
/* @__PURE__ */ (0,
|
|
4333
|
-
|
|
4545
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Box, { px: 4, pt: 4, pb: 10, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.VStack, { gap: 2.5, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4546
|
+
import_react35.Button,
|
|
4334
4547
|
{
|
|
4335
4548
|
w: "full",
|
|
4336
4549
|
variant: "outline",
|
|
@@ -4342,30 +4555,30 @@ function ReusableProfile({
|
|
|
4342
4555
|
}
|
|
4343
4556
|
) }) })
|
|
4344
4557
|
] });
|
|
4345
|
-
const editAccountContent = /* @__PURE__ */ (0,
|
|
4346
|
-
/* @__PURE__ */ (0,
|
|
4347
|
-
/* @__PURE__ */ (0,
|
|
4348
|
-
|
|
4558
|
+
const editAccountContent = /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_jsx_runtime20.Fragment, { children: [
|
|
4559
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Box, { px: 4, pt: 4, pb: 3, borderBottomWidth: "1px", borderColor: "gray.200", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Flex, { align: "center", gap: 2, pr: 10, children: [
|
|
4560
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4561
|
+
import_react35.IconButton,
|
|
4349
4562
|
{
|
|
4350
4563
|
size: "sm",
|
|
4351
4564
|
variant: "ghost",
|
|
4352
4565
|
"aria-label": "Back",
|
|
4353
4566
|
color: "gray.600",
|
|
4354
4567
|
onClick: () => setProfileView("main"),
|
|
4355
|
-
children: /* @__PURE__ */ (0,
|
|
4568
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuChevronLeft, {})
|
|
4356
4569
|
}
|
|
4357
4570
|
),
|
|
4358
|
-
/* @__PURE__ */ (0,
|
|
4571
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontWeight: "bold", fontSize: "md", children: "Edit Account" })
|
|
4359
4572
|
] }) }),
|
|
4360
|
-
/* @__PURE__ */ (0,
|
|
4361
|
-
user.avatarSrc && /* @__PURE__ */ (0,
|
|
4362
|
-
/* @__PURE__ */ (0,
|
|
4573
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Box, { textAlign: "center", pt: 5, pb: 4, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Avatar.Root, { size: "xl", mx: "auto", mb: 1, children: [
|
|
4574
|
+
user.avatarSrc && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Avatar.Image, { src: user.avatarSrc, alt: editName }),
|
|
4575
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Avatar.Fallback, { name: editName })
|
|
4363
4576
|
] }) }),
|
|
4364
|
-
/* @__PURE__ */ (0,
|
|
4365
|
-
/* @__PURE__ */ (0,
|
|
4366
|
-
/* @__PURE__ */ (0,
|
|
4367
|
-
/* @__PURE__ */ (0,
|
|
4368
|
-
|
|
4577
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.VStack, { gap: 4, px: 4, pb: 10, align: "stretch", children: [
|
|
4578
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { w: "full", children: [
|
|
4579
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "xs", fontWeight: "semibold", color: "gray.500", mb: 1.5, children: "Display Name" }),
|
|
4580
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4581
|
+
import_react35.Input,
|
|
4369
4582
|
{
|
|
4370
4583
|
value: editName,
|
|
4371
4584
|
onChange: (event) => setEditName(event.target.value),
|
|
@@ -4374,10 +4587,10 @@ function ReusableProfile({
|
|
|
4374
4587
|
}
|
|
4375
4588
|
)
|
|
4376
4589
|
] }),
|
|
4377
|
-
/* @__PURE__ */ (0,
|
|
4378
|
-
/* @__PURE__ */ (0,
|
|
4379
|
-
/* @__PURE__ */ (0,
|
|
4380
|
-
|
|
4590
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { w: "full", children: [
|
|
4591
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "xs", fontWeight: "semibold", color: "gray.500", mb: 1.5, children: "Email" }),
|
|
4592
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4593
|
+
import_react35.Input,
|
|
4381
4594
|
{
|
|
4382
4595
|
value: user.email ?? "",
|
|
4383
4596
|
readOnly: true,
|
|
@@ -4387,10 +4600,10 @@ function ReusableProfile({
|
|
|
4387
4600
|
}
|
|
4388
4601
|
)
|
|
4389
4602
|
] }),
|
|
4390
|
-
/* @__PURE__ */ (0,
|
|
4391
|
-
/* @__PURE__ */ (0,
|
|
4392
|
-
/* @__PURE__ */ (0,
|
|
4393
|
-
|
|
4603
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { w: "full", children: [
|
|
4604
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "xs", fontWeight: "semibold", color: "gray.500", mb: 1.5, children: "Mobile Number" }),
|
|
4605
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4606
|
+
import_react35.Input,
|
|
4394
4607
|
{
|
|
4395
4608
|
value: user.mobileNumber ?? "",
|
|
4396
4609
|
readOnly: true,
|
|
@@ -4400,8 +4613,8 @@ function ReusableProfile({
|
|
|
4400
4613
|
}
|
|
4401
4614
|
)
|
|
4402
4615
|
] }),
|
|
4403
|
-
/* @__PURE__ */ (0,
|
|
4404
|
-
|
|
4616
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4617
|
+
import_react35.Button,
|
|
4405
4618
|
{
|
|
4406
4619
|
w: "full",
|
|
4407
4620
|
mt: 2,
|
|
@@ -4415,40 +4628,40 @@ function ReusableProfile({
|
|
|
4415
4628
|
)
|
|
4416
4629
|
] })
|
|
4417
4630
|
] });
|
|
4418
|
-
const changePasswordContent = /* @__PURE__ */ (0,
|
|
4419
|
-
/* @__PURE__ */ (0,
|
|
4420
|
-
/* @__PURE__ */ (0,
|
|
4421
|
-
|
|
4631
|
+
const changePasswordContent = /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_jsx_runtime20.Fragment, { children: [
|
|
4632
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Box, { px: 4, pt: 4, pb: 3, borderBottomWidth: "1px", borderColor: "gray.200", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Flex, { align: "center", gap: 2, pr: 10, children: [
|
|
4633
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4634
|
+
import_react35.IconButton,
|
|
4422
4635
|
{
|
|
4423
4636
|
size: "sm",
|
|
4424
4637
|
variant: "ghost",
|
|
4425
4638
|
"aria-label": "Back",
|
|
4426
4639
|
color: "gray.600",
|
|
4427
4640
|
onClick: () => setProfileView("main"),
|
|
4428
|
-
children: /* @__PURE__ */ (0,
|
|
4641
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuChevronLeft, {})
|
|
4429
4642
|
}
|
|
4430
4643
|
),
|
|
4431
|
-
/* @__PURE__ */ (0,
|
|
4644
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontWeight: "bold", fontSize: "md", children: "Change Password" })
|
|
4432
4645
|
] }) }),
|
|
4433
|
-
/* @__PURE__ */ (0,
|
|
4434
|
-
/* @__PURE__ */ (0,
|
|
4435
|
-
/* @__PURE__ */ (0,
|
|
4436
|
-
/* @__PURE__ */ (0,
|
|
4437
|
-
|
|
4646
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.VStack, { gap: 5, px: 4, pt: 6, pb: 10, children: [
|
|
4647
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { w: "full", children: [
|
|
4648
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "xs", fontWeight: "semibold", color: "gray.500", mb: 1.5, children: "Current Password" }),
|
|
4649
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4650
|
+
import_react35.InputGroup,
|
|
4438
4651
|
{
|
|
4439
|
-
endElement: /* @__PURE__ */ (0,
|
|
4440
|
-
|
|
4652
|
+
endElement: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4653
|
+
import_react35.IconButton,
|
|
4441
4654
|
{
|
|
4442
4655
|
size: "xs",
|
|
4443
4656
|
variant: "ghost",
|
|
4444
4657
|
color: "gray.500",
|
|
4445
4658
|
"aria-label": "Toggle current password visibility",
|
|
4446
4659
|
onClick: () => setShowCurrentPw(!showCurrentPw),
|
|
4447
|
-
children: showCurrentPw ? /* @__PURE__ */ (0,
|
|
4660
|
+
children: showCurrentPw ? /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuEyeOff, { size: 15 }) : /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuEye, { size: 15 })
|
|
4448
4661
|
}
|
|
4449
4662
|
),
|
|
4450
|
-
children: /* @__PURE__ */ (0,
|
|
4451
|
-
|
|
4663
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4664
|
+
import_react35.Input,
|
|
4452
4665
|
{
|
|
4453
4666
|
type: showCurrentPw ? "text" : "password",
|
|
4454
4667
|
value: currentPw,
|
|
@@ -4460,24 +4673,24 @@ function ReusableProfile({
|
|
|
4460
4673
|
}
|
|
4461
4674
|
)
|
|
4462
4675
|
] }),
|
|
4463
|
-
/* @__PURE__ */ (0,
|
|
4464
|
-
/* @__PURE__ */ (0,
|
|
4465
|
-
/* @__PURE__ */ (0,
|
|
4466
|
-
|
|
4676
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { w: "full", children: [
|
|
4677
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "xs", fontWeight: "semibold", color: "gray.500", mb: 1.5, children: "New Password" }),
|
|
4678
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4679
|
+
import_react35.InputGroup,
|
|
4467
4680
|
{
|
|
4468
|
-
endElement: /* @__PURE__ */ (0,
|
|
4469
|
-
|
|
4681
|
+
endElement: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4682
|
+
import_react35.IconButton,
|
|
4470
4683
|
{
|
|
4471
4684
|
size: "xs",
|
|
4472
4685
|
variant: "ghost",
|
|
4473
4686
|
color: "gray.500",
|
|
4474
4687
|
"aria-label": "Toggle new password visibility",
|
|
4475
4688
|
onClick: () => setShowNewPw(!showNewPw),
|
|
4476
|
-
children: showNewPw ? /* @__PURE__ */ (0,
|
|
4689
|
+
children: showNewPw ? /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuEyeOff, { size: 15 }) : /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuEye, { size: 15 })
|
|
4477
4690
|
}
|
|
4478
4691
|
),
|
|
4479
|
-
children: /* @__PURE__ */ (0,
|
|
4480
|
-
|
|
4692
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4693
|
+
import_react35.Input,
|
|
4481
4694
|
{
|
|
4482
4695
|
type: showNewPw ? "text" : "password",
|
|
4483
4696
|
value: newPw,
|
|
@@ -4488,9 +4701,9 @@ function ReusableProfile({
|
|
|
4488
4701
|
)
|
|
4489
4702
|
}
|
|
4490
4703
|
),
|
|
4491
|
-
newPw && /* @__PURE__ */ (0,
|
|
4492
|
-
/* @__PURE__ */ (0,
|
|
4493
|
-
|
|
4704
|
+
newPw && /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { mt: 2, children: [
|
|
4705
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Flex, { gap: 1, mb: 1, children: [1, 2, 3, 4, 5].map((i) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4706
|
+
import_react35.Box,
|
|
4494
4707
|
{
|
|
4495
4708
|
flex: 1,
|
|
4496
4709
|
h: "3px",
|
|
@@ -4500,27 +4713,27 @@ function ReusableProfile({
|
|
|
4500
4713
|
},
|
|
4501
4714
|
i
|
|
4502
4715
|
)) }),
|
|
4503
|
-
/* @__PURE__ */ (0,
|
|
4716
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "xs", color: pwMeta.color, fontWeight: "medium", children: pwMeta.label })
|
|
4504
4717
|
] })
|
|
4505
4718
|
] }),
|
|
4506
|
-
/* @__PURE__ */ (0,
|
|
4507
|
-
/* @__PURE__ */ (0,
|
|
4508
|
-
/* @__PURE__ */ (0,
|
|
4509
|
-
|
|
4719
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { w: "full", children: [
|
|
4720
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "xs", fontWeight: "semibold", color: "gray.500", mb: 1.5, children: "Confirm New Password" }),
|
|
4721
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4722
|
+
import_react35.InputGroup,
|
|
4510
4723
|
{
|
|
4511
|
-
endElement: /* @__PURE__ */ (0,
|
|
4512
|
-
|
|
4724
|
+
endElement: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4725
|
+
import_react35.IconButton,
|
|
4513
4726
|
{
|
|
4514
4727
|
size: "xs",
|
|
4515
4728
|
variant: "ghost",
|
|
4516
4729
|
color: "gray.500",
|
|
4517
4730
|
"aria-label": "Toggle confirm password visibility",
|
|
4518
4731
|
onClick: () => setShowConfirmPw(!showConfirmPw),
|
|
4519
|
-
children: showConfirmPw ? /* @__PURE__ */ (0,
|
|
4732
|
+
children: showConfirmPw ? /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuEyeOff, { size: 15 }) : /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuEye, { size: 15 })
|
|
4520
4733
|
}
|
|
4521
4734
|
),
|
|
4522
|
-
children: /* @__PURE__ */ (0,
|
|
4523
|
-
|
|
4735
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4736
|
+
import_react35.Input,
|
|
4524
4737
|
{
|
|
4525
4738
|
type: showConfirmPw ? "text" : "password",
|
|
4526
4739
|
value: confirmPw,
|
|
@@ -4531,10 +4744,10 @@ function ReusableProfile({
|
|
|
4531
4744
|
)
|
|
4532
4745
|
}
|
|
4533
4746
|
),
|
|
4534
|
-
confirmPw && confirmPw !== newPw && /* @__PURE__ */ (0,
|
|
4747
|
+
confirmPw && confirmPw !== newPw && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "xs", color: "red.500", mt: 1, children: "Passwords do not match" })
|
|
4535
4748
|
] }),
|
|
4536
|
-
/* @__PURE__ */ (0,
|
|
4537
|
-
|
|
4749
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4750
|
+
import_react35.Button,
|
|
4538
4751
|
{
|
|
4539
4752
|
w: "full",
|
|
4540
4753
|
mt: 1,
|
|
@@ -4549,9 +4762,9 @@ function ReusableProfile({
|
|
|
4549
4762
|
)
|
|
4550
4763
|
] })
|
|
4551
4764
|
] });
|
|
4552
|
-
const navbarCustomizeContent = /* @__PURE__ */ (0,
|
|
4553
|
-
/* @__PURE__ */ (0,
|
|
4554
|
-
|
|
4765
|
+
const navbarCustomizeContent = /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_jsx_runtime20.Fragment, { children: [
|
|
4766
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4767
|
+
import_react35.Box,
|
|
4555
4768
|
{
|
|
4556
4769
|
px: 4,
|
|
4557
4770
|
pt: 4,
|
|
@@ -4562,9 +4775,9 @@ function ReusableProfile({
|
|
|
4562
4775
|
top: 0,
|
|
4563
4776
|
bg: "bg",
|
|
4564
4777
|
zIndex: 1,
|
|
4565
|
-
children: /* @__PURE__ */ (0,
|
|
4566
|
-
/* @__PURE__ */ (0,
|
|
4567
|
-
|
|
4778
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Flex, { align: "center", gap: 2, pr: 10, children: [
|
|
4779
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4780
|
+
import_react35.IconButton,
|
|
4568
4781
|
{
|
|
4569
4782
|
size: "sm",
|
|
4570
4783
|
variant: "ghost",
|
|
@@ -4574,12 +4787,12 @@ function ReusableProfile({
|
|
|
4574
4787
|
setReplacingIdx(null);
|
|
4575
4788
|
setProfileView("main");
|
|
4576
4789
|
},
|
|
4577
|
-
children: /* @__PURE__ */ (0,
|
|
4790
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuChevronLeft, {})
|
|
4578
4791
|
}
|
|
4579
4792
|
),
|
|
4580
|
-
/* @__PURE__ */ (0,
|
|
4581
|
-
/* @__PURE__ */ (0,
|
|
4582
|
-
/* @__PURE__ */ (0,
|
|
4793
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { children: [
|
|
4794
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontWeight: "bold", fontSize: "md", children: "Quick Navigation" }),
|
|
4795
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Text, { fontSize: "xs", color: "gray.500", children: [
|
|
4583
4796
|
"Choose up to ",
|
|
4584
4797
|
maxQuickNavItems,
|
|
4585
4798
|
" shortcuts for the bottom bar"
|
|
@@ -4588,10 +4801,10 @@ function ReusableProfile({
|
|
|
4588
4801
|
] })
|
|
4589
4802
|
}
|
|
4590
4803
|
),
|
|
4591
|
-
/* @__PURE__ */ (0,
|
|
4592
|
-
/* @__PURE__ */ (0,
|
|
4593
|
-
/* @__PURE__ */ (0,
|
|
4594
|
-
|
|
4804
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { px: 4, pt: 5, pb: 2, children: [
|
|
4805
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Flex, { align: "center", justify: "space-between", mb: 3, children: [
|
|
4806
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4807
|
+
import_react35.Text,
|
|
4595
4808
|
{
|
|
4596
4809
|
fontSize: "xs",
|
|
4597
4810
|
fontWeight: "bold",
|
|
@@ -4601,8 +4814,8 @@ function ReusableProfile({
|
|
|
4601
4814
|
children: "Pinned"
|
|
4602
4815
|
}
|
|
4603
4816
|
),
|
|
4604
|
-
/* @__PURE__ */ (0,
|
|
4605
|
-
|
|
4817
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
|
|
4818
|
+
import_react35.Text,
|
|
4606
4819
|
{
|
|
4607
4820
|
fontSize: "xs",
|
|
4608
4821
|
color: quickNavHrefs.length >= maxQuickNavItems ? "orange.500" : "gray.400",
|
|
@@ -4615,8 +4828,8 @@ function ReusableProfile({
|
|
|
4615
4828
|
}
|
|
4616
4829
|
)
|
|
4617
4830
|
] }),
|
|
4618
|
-
quickNavHrefs.length === 0 ? /* @__PURE__ */ (0,
|
|
4619
|
-
|
|
4831
|
+
quickNavHrefs.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4832
|
+
import_react35.Flex,
|
|
4620
4833
|
{
|
|
4621
4834
|
align: "center",
|
|
4622
4835
|
justify: "center",
|
|
@@ -4625,18 +4838,18 @@ function ReusableProfile({
|
|
|
4625
4838
|
borderWidth: "1px",
|
|
4626
4839
|
borderStyle: "dashed",
|
|
4627
4840
|
borderColor: "gray.200",
|
|
4628
|
-
children: /* @__PURE__ */ (0,
|
|
4841
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "sm", color: "gray.400", children: "No items pinned \u2014 add from below" })
|
|
4629
4842
|
}
|
|
4630
|
-
) : /* @__PURE__ */ (0,
|
|
4843
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.VStack, { gap: 0, children: quickNavHrefs.map((href, idx) => {
|
|
4631
4844
|
const option = availableOptions.find((item) => item.key === href);
|
|
4632
4845
|
if (!option) return null;
|
|
4633
4846
|
const ItemIcon = option.Icon;
|
|
4634
4847
|
const isFirst = idx === 0;
|
|
4635
4848
|
const isLast = idx === quickNavHrefs.length - 1;
|
|
4636
4849
|
const isReplacing = replacingIdx === idx;
|
|
4637
|
-
return /* @__PURE__ */ (0,
|
|
4638
|
-
/* @__PURE__ */ (0,
|
|
4639
|
-
|
|
4850
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { w: "full", children: [
|
|
4851
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
|
|
4852
|
+
import_react35.Flex,
|
|
4640
4853
|
{
|
|
4641
4854
|
justify: "space-between",
|
|
4642
4855
|
align: "center",
|
|
@@ -4648,9 +4861,9 @@ function ReusableProfile({
|
|
|
4648
4861
|
borderColor: isReplacing ? "orange.200" : void 0,
|
|
4649
4862
|
transition: "all 0.15s",
|
|
4650
4863
|
children: [
|
|
4651
|
-
/* @__PURE__ */ (0,
|
|
4652
|
-
/* @__PURE__ */ (0,
|
|
4653
|
-
|
|
4864
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Flex, { align: "center", gap: 3, children: [
|
|
4865
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4866
|
+
import_react35.Box,
|
|
4654
4867
|
{
|
|
4655
4868
|
w: "36px",
|
|
4656
4869
|
h: "36px",
|
|
@@ -4661,13 +4874,13 @@ function ReusableProfile({
|
|
|
4661
4874
|
justifyContent: "center",
|
|
4662
4875
|
color: "white",
|
|
4663
4876
|
flexShrink: 0,
|
|
4664
|
-
children: /* @__PURE__ */ (0,
|
|
4877
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(ItemIcon, { size: 15 })
|
|
4665
4878
|
}
|
|
4666
4879
|
),
|
|
4667
|
-
/* @__PURE__ */ (0,
|
|
4668
|
-
/* @__PURE__ */ (0,
|
|
4669
|
-
isReplacing && /* @__PURE__ */ (0,
|
|
4670
|
-
|
|
4880
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { children: [
|
|
4881
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "sm", fontWeight: "medium", children: option.title }),
|
|
4882
|
+
isReplacing && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4883
|
+
import_react35.Text,
|
|
4671
4884
|
{
|
|
4672
4885
|
fontSize: "xs",
|
|
4673
4886
|
color: "orange.500",
|
|
@@ -4677,9 +4890,9 @@ function ReusableProfile({
|
|
|
4677
4890
|
)
|
|
4678
4891
|
] })
|
|
4679
4892
|
] }),
|
|
4680
|
-
/* @__PURE__ */ (0,
|
|
4681
|
-
/* @__PURE__ */ (0,
|
|
4682
|
-
|
|
4893
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.HStack, { gap: 0.5, children: [
|
|
4894
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4895
|
+
import_react35.IconButton,
|
|
4683
4896
|
{
|
|
4684
4897
|
size: "xs",
|
|
4685
4898
|
variant: "ghost",
|
|
@@ -4687,11 +4900,11 @@ function ReusableProfile({
|
|
|
4687
4900
|
color: "gray.500",
|
|
4688
4901
|
disabled: isFirst || isReplacing,
|
|
4689
4902
|
onClick: () => moveNavItem(idx, -1),
|
|
4690
|
-
children: /* @__PURE__ */ (0,
|
|
4903
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuChevronUp, { size: 14 })
|
|
4691
4904
|
}
|
|
4692
4905
|
),
|
|
4693
|
-
/* @__PURE__ */ (0,
|
|
4694
|
-
|
|
4906
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4907
|
+
import_react35.IconButton,
|
|
4695
4908
|
{
|
|
4696
4909
|
size: "xs",
|
|
4697
4910
|
variant: "ghost",
|
|
@@ -4699,11 +4912,11 @@ function ReusableProfile({
|
|
|
4699
4912
|
color: "gray.500",
|
|
4700
4913
|
disabled: isLast || isReplacing,
|
|
4701
4914
|
onClick: () => moveNavItem(idx, 1),
|
|
4702
|
-
children: /* @__PURE__ */ (0,
|
|
4915
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuChevronDown, { size: 14 })
|
|
4703
4916
|
}
|
|
4704
4917
|
),
|
|
4705
|
-
/* @__PURE__ */ (0,
|
|
4706
|
-
|
|
4918
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4919
|
+
import_react35.IconButton,
|
|
4707
4920
|
{
|
|
4708
4921
|
size: "xs",
|
|
4709
4922
|
variant: isReplacing ? "solid" : "ghost",
|
|
@@ -4712,11 +4925,11 @@ function ReusableProfile({
|
|
|
4712
4925
|
color: isReplacing ? "white" : "gray.500",
|
|
4713
4926
|
_hover: { bg: isReplacing ? "orange.500" : "gray.100" },
|
|
4714
4927
|
onClick: () => setReplacingIdx(isReplacing ? null : idx),
|
|
4715
|
-
children: /* @__PURE__ */ (0,
|
|
4928
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuArrowLeftRight, { size: 13 })
|
|
4716
4929
|
}
|
|
4717
4930
|
),
|
|
4718
|
-
/* @__PURE__ */ (0,
|
|
4719
|
-
|
|
4931
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4932
|
+
import_react35.IconButton,
|
|
4720
4933
|
{
|
|
4721
4934
|
size: "xs",
|
|
4722
4935
|
variant: "ghost",
|
|
@@ -4725,23 +4938,23 @@ function ReusableProfile({
|
|
|
4725
4938
|
_hover: { bg: "red.50" },
|
|
4726
4939
|
disabled: isReplacing,
|
|
4727
4940
|
onClick: () => removeNavItem(href),
|
|
4728
|
-
children: /* @__PURE__ */ (0,
|
|
4941
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuX, { size: 14 })
|
|
4729
4942
|
}
|
|
4730
4943
|
)
|
|
4731
4944
|
] })
|
|
4732
4945
|
]
|
|
4733
4946
|
}
|
|
4734
4947
|
),
|
|
4735
|
-
!isLast && /* @__PURE__ */ (0,
|
|
4948
|
+
!isLast && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Separator, {})
|
|
4736
4949
|
] }, href);
|
|
4737
4950
|
}) })
|
|
4738
4951
|
] }),
|
|
4739
|
-
/* @__PURE__ */ (0,
|
|
4740
|
-
/* @__PURE__ */ (0,
|
|
4741
|
-
/* @__PURE__ */ (0,
|
|
4742
|
-
replacingIdx !== null ? /* @__PURE__ */ (0,
|
|
4743
|
-
/* @__PURE__ */ (0,
|
|
4744
|
-
|
|
4952
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Separator, { mx: 4, my: 1 }),
|
|
4953
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { px: 4, pt: 4, pb: 10, children: [
|
|
4954
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Flex, { align: "center", justify: "space-between", mb: 3, children: [
|
|
4955
|
+
replacingIdx !== null ? /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { children: [
|
|
4956
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4957
|
+
import_react35.Text,
|
|
4745
4958
|
{
|
|
4746
4959
|
fontSize: "xs",
|
|
4747
4960
|
fontWeight: "bold",
|
|
@@ -4751,15 +4964,15 @@ function ReusableProfile({
|
|
|
4751
4964
|
children: "Select Replacement"
|
|
4752
4965
|
}
|
|
4753
4966
|
),
|
|
4754
|
-
/* @__PURE__ */ (0,
|
|
4967
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Text, { fontSize: "xs", color: "gray.500", mt: 0.5, children: [
|
|
4755
4968
|
'for "',
|
|
4756
4969
|
availableOptions.find(
|
|
4757
4970
|
(item) => item.key === quickNavHrefs[replacingIdx]
|
|
4758
4971
|
)?.title,
|
|
4759
4972
|
'"'
|
|
4760
4973
|
] })
|
|
4761
|
-
] }) : /* @__PURE__ */ (0,
|
|
4762
|
-
|
|
4974
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4975
|
+
import_react35.Text,
|
|
4763
4976
|
{
|
|
4764
4977
|
fontSize: "xs",
|
|
4765
4978
|
fontWeight: "bold",
|
|
@@ -4769,8 +4982,8 @@ function ReusableProfile({
|
|
|
4769
4982
|
children: "Available"
|
|
4770
4983
|
}
|
|
4771
4984
|
),
|
|
4772
|
-
replacingIdx !== null && /* @__PURE__ */ (0,
|
|
4773
|
-
|
|
4985
|
+
replacingIdx !== null && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
4986
|
+
import_react35.Button,
|
|
4774
4987
|
{
|
|
4775
4988
|
size: "xs",
|
|
4776
4989
|
variant: "ghost",
|
|
@@ -4780,17 +4993,17 @@ function ReusableProfile({
|
|
|
4780
4993
|
}
|
|
4781
4994
|
)
|
|
4782
4995
|
] }),
|
|
4783
|
-
unpinnedOptions.length === 0 ? /* @__PURE__ */ (0,
|
|
4996
|
+
unpinnedOptions.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "sm", color: "gray.400", py: 3, textAlign: "center", children: "All available items are pinned" }) : /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.VStack, { gap: 0, children: unpinnedOptions.map((option, idx) => {
|
|
4784
4997
|
const ItemIcon = option.Icon;
|
|
4785
4998
|
const isLast = idx === unpinnedOptions.length - 1;
|
|
4786
4999
|
const isReplacingMode = replacingIdx !== null;
|
|
4787
5000
|
const canAdd = quickNavHrefs.length < maxQuickNavItems;
|
|
4788
5001
|
const actionEnabled = isReplacingMode || canAdd;
|
|
4789
|
-
return /* @__PURE__ */ (0,
|
|
4790
|
-
/* @__PURE__ */ (0,
|
|
4791
|
-
/* @__PURE__ */ (0,
|
|
4792
|
-
/* @__PURE__ */ (0,
|
|
4793
|
-
|
|
5002
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Box, { w: "full", children: [
|
|
5003
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Flex, { justify: "space-between", align: "center", py: 2.5, children: [
|
|
5004
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react35.Flex, { align: "center", gap: 3, children: [
|
|
5005
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
5006
|
+
import_react35.Box,
|
|
4794
5007
|
{
|
|
4795
5008
|
w: "36px",
|
|
4796
5009
|
h: "36px",
|
|
@@ -4801,11 +5014,11 @@ function ReusableProfile({
|
|
|
4801
5014
|
justifyContent: "center",
|
|
4802
5015
|
color: isReplacingMode ? "orange.500" : "gray.500",
|
|
4803
5016
|
flexShrink: 0,
|
|
4804
|
-
children: /* @__PURE__ */ (0,
|
|
5017
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(ItemIcon, { size: 15 })
|
|
4805
5018
|
}
|
|
4806
5019
|
),
|
|
4807
|
-
/* @__PURE__ */ (0,
|
|
4808
|
-
|
|
5020
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
5021
|
+
import_react35.Text,
|
|
4809
5022
|
{
|
|
4810
5023
|
fontSize: "sm",
|
|
4811
5024
|
fontWeight: "medium",
|
|
@@ -4814,8 +5027,8 @@ function ReusableProfile({
|
|
|
4814
5027
|
}
|
|
4815
5028
|
)
|
|
4816
5029
|
] }),
|
|
4817
|
-
isReplacingMode ? /* @__PURE__ */ (0,
|
|
4818
|
-
|
|
5030
|
+
isReplacingMode ? /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
5031
|
+
import_react35.IconButton,
|
|
4819
5032
|
{
|
|
4820
5033
|
size: "xs",
|
|
4821
5034
|
variant: "outline",
|
|
@@ -4824,10 +5037,10 @@ function ReusableProfile({
|
|
|
4824
5037
|
color: "orange.500",
|
|
4825
5038
|
_hover: { bg: "orange.50" },
|
|
4826
5039
|
onClick: () => replaceNavItem(replacingIdx, option.key),
|
|
4827
|
-
children: /* @__PURE__ */ (0,
|
|
5040
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuArrowLeftRight, { size: 13 })
|
|
4828
5041
|
}
|
|
4829
|
-
) : /* @__PURE__ */ (0,
|
|
4830
|
-
|
|
5042
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
5043
|
+
import_react35.IconButton,
|
|
4831
5044
|
{
|
|
4832
5045
|
size: "xs",
|
|
4833
5046
|
variant: "outline",
|
|
@@ -4837,19 +5050,19 @@ function ReusableProfile({
|
|
|
4837
5050
|
color: canAdd ? "var(--chakra-colors-primary)" : "gray.300",
|
|
4838
5051
|
_hover: { bg: canAdd ? "blue.50" : "transparent" },
|
|
4839
5052
|
onClick: () => addNavItem(option.key),
|
|
4840
|
-
children: /* @__PURE__ */ (0,
|
|
5053
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuPlus, { size: 13 })
|
|
4841
5054
|
}
|
|
4842
5055
|
)
|
|
4843
5056
|
] }),
|
|
4844
|
-
!isLast && /* @__PURE__ */ (0,
|
|
5057
|
+
!isLast && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Separator, {})
|
|
4845
5058
|
] }, option.key);
|
|
4846
5059
|
}) })
|
|
4847
5060
|
] })
|
|
4848
5061
|
] });
|
|
4849
5062
|
const subViewContent = profileView === "edit-account" ? editAccountContent : profileView === "change-password" ? changePasswordContent : profileView === "navbar-customize" ? navbarCustomizeContent : null;
|
|
4850
5063
|
if (isDesktop) {
|
|
4851
|
-
return /* @__PURE__ */ (0,
|
|
4852
|
-
|
|
5064
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
|
|
5065
|
+
import_react35.Flex,
|
|
4853
5066
|
{
|
|
4854
5067
|
maxW: "6xl",
|
|
4855
5068
|
mx: "auto",
|
|
@@ -4859,8 +5072,8 @@ function ReusableProfile({
|
|
|
4859
5072
|
p: { md: 6, lg: 8 },
|
|
4860
5073
|
align: "start",
|
|
4861
5074
|
children: [
|
|
4862
|
-
/* @__PURE__ */ (0,
|
|
4863
|
-
|
|
5075
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
5076
|
+
import_react35.Box,
|
|
4864
5077
|
{
|
|
4865
5078
|
w: { md: "300px", lg: "340px" },
|
|
4866
5079
|
flexShrink: 0,
|
|
@@ -4874,8 +5087,8 @@ function ReusableProfile({
|
|
|
4874
5087
|
children: mainContent
|
|
4875
5088
|
}
|
|
4876
5089
|
),
|
|
4877
|
-
/* @__PURE__ */ (0,
|
|
4878
|
-
|
|
5090
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
5091
|
+
import_react35.Box,
|
|
4879
5092
|
{
|
|
4880
5093
|
flex: "1",
|
|
4881
5094
|
minW: 0,
|
|
@@ -4885,8 +5098,8 @@ function ReusableProfile({
|
|
|
4885
5098
|
overflow: "hidden",
|
|
4886
5099
|
bg: "bg",
|
|
4887
5100
|
minH: "540px",
|
|
4888
|
-
children: subViewContent ?? /* @__PURE__ */ (0,
|
|
4889
|
-
|
|
5101
|
+
children: subViewContent ?? /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
|
|
5102
|
+
import_react35.Flex,
|
|
4890
5103
|
{
|
|
4891
5104
|
direction: "column",
|
|
4892
5105
|
align: "center",
|
|
@@ -4896,8 +5109,8 @@ function ReusableProfile({
|
|
|
4896
5109
|
textAlign: "center",
|
|
4897
5110
|
color: "gray.400",
|
|
4898
5111
|
children: [
|
|
4899
|
-
/* @__PURE__ */ (0,
|
|
4900
|
-
|
|
5112
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
5113
|
+
import_react35.Box,
|
|
4901
5114
|
{
|
|
4902
5115
|
w: "56px",
|
|
4903
5116
|
h: "56px",
|
|
@@ -4907,10 +5120,10 @@ function ReusableProfile({
|
|
|
4907
5120
|
alignItems: "center",
|
|
4908
5121
|
justifyContent: "center",
|
|
4909
5122
|
mb: 4,
|
|
4910
|
-
children: /* @__PURE__ */ (0,
|
|
5123
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lu7.LuUser, { size: 24 })
|
|
4911
5124
|
}
|
|
4912
5125
|
),
|
|
4913
|
-
/* @__PURE__ */ (0,
|
|
5126
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Text, { fontSize: "sm", mt: 1, maxW: "280px", children: "Choose Edit Account, Change Password, or Quick Navigation from the menu to update your details here." })
|
|
4914
5127
|
]
|
|
4915
5128
|
}
|
|
4916
5129
|
)
|
|
@@ -4920,20 +5133,20 @@ function ReusableProfile({
|
|
|
4920
5133
|
}
|
|
4921
5134
|
);
|
|
4922
5135
|
}
|
|
4923
|
-
return /* @__PURE__ */ (0,
|
|
5136
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react35.Box, { maxW: "480px", mx: "auto", w: "full", minH: "100%", bg: "bg", children: profileView === "main" ? mainContent : subViewContent });
|
|
4924
5137
|
}
|
|
4925
5138
|
var UserProfile_default = ReusableProfile;
|
|
4926
5139
|
// Annotate the CommonJS export names for ESM import in node:
|
|
4927
5140
|
0 && (module.exports = {
|
|
4928
5141
|
Beneficiary,
|
|
4929
5142
|
BottomQuickActions,
|
|
4930
|
-
FloatingLabelInput,
|
|
4931
5143
|
HealthDeclaration,
|
|
4932
5144
|
LifePlanApplication1,
|
|
4933
5145
|
LifePlanApplication2,
|
|
4934
5146
|
LifePlanApplication3,
|
|
4935
5147
|
LifePlanApplicationFormWrapper,
|
|
4936
5148
|
LifePlanApplicationStepWrapper,
|
|
5149
|
+
NotifyInstall,
|
|
4937
5150
|
SharedLifePlanApplication,
|
|
4938
5151
|
UserProfile,
|
|
4939
5152
|
createEmptyApplicationData,
|