@alepha/ui 0.14.1 → 0.14.2
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/admin/AdminAudits-B3EhKhN7.js +3 -0
- package/dist/admin/{AdminAudits-CwvH8e8c.js → AdminAudits-DIrCCPk3.js} +3 -2
- package/dist/admin/AdminAudits-DIrCCPk3.js.map +1 -0
- package/dist/admin/AdminFiles-C8OG4dtD.js +3 -0
- package/dist/admin/{AdminFiles-C_w1tb_x.js → AdminFiles-RsL178Ta.js} +2 -2
- package/dist/admin/{AdminFiles-C_w1tb_x.js.map → AdminFiles-RsL178Ta.js.map} +1 -1
- package/dist/admin/AdminNotifications-BSL4B2fQ.js +3 -0
- package/dist/admin/{AdminNotifications-DuYy74AN.js → AdminNotifications-cIbywWKi.js} +2 -2
- package/dist/admin/{AdminNotifications-DuYy74AN.js.map → AdminNotifications-cIbywWKi.js.map} +1 -1
- package/dist/admin/{AdminParameters-DYg48Jwe.js → AdminParameters-BKObzzpN.js} +1 -1
- package/dist/admin/{AdminParameters-YagqWTG3.js → AdminParameters-D-q3Qmhv.js} +2 -2
- package/dist/admin/{AdminParameters-YagqWTG3.js.map → AdminParameters-D-q3Qmhv.js.map} +1 -1
- package/dist/admin/AdminSessions-DHG9zPfr.js +3 -0
- package/dist/admin/{AdminSessions-BCjgJ-93.js → AdminSessions-vOgkrQ2U.js} +3 -2
- package/dist/admin/AdminSessions-vOgkrQ2U.js.map +1 -0
- package/dist/admin/{AdminUserAudits-B_PUXCKC.js → AdminUserAudits-CSsN1fIC.js} +3 -2
- package/dist/admin/AdminUserAudits-CSsN1fIC.js.map +1 -0
- package/dist/admin/{AdminUserAudits-D7cTcElL.js → AdminUserAudits-DmAnivo3.js} +1 -1
- package/dist/admin/{AdminUserCreate-DzfRbGZ4.js → AdminUserCreate-B72nu-3W.js} +3 -2
- package/dist/admin/AdminUserCreate-B72nu-3W.js.map +1 -0
- package/dist/admin/{AdminUserCreate-oUA1KDIl.js → AdminUserCreate-DpA13zwj.js} +1 -1
- package/dist/admin/{AdminUserDetails-DeTrJm-t.js → AdminUserDetails-BCt8Su-4.js} +3 -2
- package/dist/admin/AdminUserDetails-BCt8Su-4.js.map +1 -0
- package/dist/admin/{AdminUserDetails-y1H5DW8Y.js → AdminUserDetails-z1y8kJeB.js} +1 -1
- package/dist/admin/{AdminUserLayout-CsfrrZkD.js → AdminUserLayout-Ck0GLRE5.js} +3 -2
- package/dist/admin/AdminUserLayout-Ck0GLRE5.js.map +1 -0
- package/dist/admin/{AdminUserLayout-Dejnz13m.js → AdminUserLayout-DyQYacQQ.js} +1 -1
- package/dist/admin/AdminUserSessions-D9X2_HMA.js +3 -0
- package/dist/admin/{AdminUserSessions-DO9H85O-.js → AdminUserSessions-DEaGu6n6.js} +3 -2
- package/dist/admin/AdminUserSessions-DEaGu6n6.js.map +1 -0
- package/dist/admin/AdminUserSettings-CE66UTIP.js +3 -0
- package/dist/admin/{AdminUserSettings-B3jA8g3p.js → AdminUserSettings-CR7MxX_R.js} +3 -2
- package/dist/admin/AdminUserSettings-CR7MxX_R.js.map +1 -0
- package/dist/admin/{AdminUsers-ebbrJBT0.js → AdminUsers-BnGIRvmV.js} +3 -2
- package/dist/admin/AdminUsers-BnGIRvmV.js.map +1 -0
- package/dist/admin/AdminUsers-CG9-2Z8W.js +3 -0
- package/dist/admin/index.d.ts +16 -16
- package/dist/admin/index.d.ts.map +1 -1
- package/dist/admin/index.js +26 -25
- package/dist/admin/index.js.map +1 -1
- package/dist/auth/{AuthLayout-BAZJHzDG.js → AuthLayout-B1sUB8fB.js} +2 -2
- package/dist/auth/AuthLayout-B1sUB8fB.js.map +1 -0
- package/dist/auth/Login-BWi-pPbO.js +4 -0
- package/dist/auth/{Login-CeNZZjrr.js → Login-Cjxv3EDi.js} +2 -2
- package/dist/auth/Login-Cjxv3EDi.js.map +1 -0
- package/dist/auth/{Register-s4ENeyiE.js → Register-BKBIpHhW.js} +3 -2
- package/dist/auth/Register-BKBIpHhW.js.map +1 -0
- package/dist/auth/Register-CtdvihIM.js +4 -0
- package/dist/auth/ResetPassword-BUdM7T_R.js +3 -0
- package/dist/auth/{ResetPassword-GLIFkJT7.js → ResetPassword-DvqD_1SJ.js} +3 -2
- package/dist/auth/ResetPassword-DvqD_1SJ.js.map +1 -0
- package/dist/auth/VerifyEmail-BYmtnkEl.js +3 -0
- package/dist/auth/{VerifyEmail-R79sSej_.js → VerifyEmail-VaBruOnO.js} +3 -2
- package/dist/auth/VerifyEmail-VaBruOnO.js.map +1 -0
- package/dist/auth/index.d.ts +11 -11
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +10 -10
- package/dist/auth/index.js.map +1 -1
- package/dist/core/index.d.ts +36 -55
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +44 -345
- package/dist/core/index.js.map +1 -1
- package/dist/demo/DemoDataTable-2mzzf__a.js +150 -0
- package/dist/demo/DemoDataTable-2mzzf__a.js.map +1 -0
- package/dist/demo/DemoHome-CnuL5WV9.js +25 -0
- package/dist/demo/DemoHome-CnuL5WV9.js.map +1 -0
- package/dist/demo/DemoHome-D6Z7EE4V.js +3 -0
- package/dist/demo/DemoJsonViewer-CYUggLop.js +4 -0
- package/dist/demo/DemoJsonViewer-NUGst5wW.js +430 -0
- package/dist/demo/DemoJsonViewer-NUGst5wW.js.map +1 -0
- package/dist/demo/DemoLayout-ZFDzyvY3.js +3 -0
- package/dist/demo/DemoLayout-dvbeuBBf.js +47 -0
- package/dist/demo/DemoLayout-dvbeuBBf.js.map +1 -0
- package/dist/demo/DemoLogin--wE44i23.js +327 -0
- package/dist/demo/DemoLogin--wE44i23.js.map +1 -0
- package/dist/demo/DemoRegister-BtrMksx6.js +488 -0
- package/dist/demo/DemoRegister-BtrMksx6.js.map +1 -0
- package/dist/demo/DemoResetPassword-DVXiiiX7.js +341 -0
- package/dist/demo/DemoResetPassword-DVXiiiX7.js.map +1 -0
- package/dist/demo/DemoSidebar-DWnjYHoP.js +82 -0
- package/dist/demo/DemoSidebar-DWnjYHoP.js.map +1 -0
- package/dist/demo/DemoTypeForm-P5_VInW2.js +83 -0
- package/dist/demo/DemoTypeForm-P5_VInW2.js.map +1 -0
- package/dist/demo/DemoVerifyEmail-C_ooC5u8.js +152 -0
- package/dist/demo/DemoVerifyEmail-C_ooC5u8.js.map +1 -0
- package/dist/demo/IconGoogle-DvmFiEDB.js +58 -0
- package/dist/demo/IconGoogle-DvmFiEDB.js.map +1 -0
- package/dist/demo/Showcase-vemLuO2t.js +187 -0
- package/dist/demo/Showcase-vemLuO2t.js.map +1 -0
- package/dist/demo/index.d.ts +97 -0
- package/dist/demo/index.d.ts.map +1 -0
- package/dist/demo/index.js +121 -0
- package/dist/demo/index.js.map +1 -0
- package/dist/json/index.d.ts +58 -0
- package/dist/json/index.d.ts.map +1 -0
- package/dist/json/index.js +325 -0
- package/dist/json/index.js.map +1 -0
- package/package.json +17 -6
- package/src/admin/AdminRouter.ts +1 -1
- package/src/admin/MainRouter.ts +1 -1
- package/src/admin/components/audits/AdminAudits.tsx +2 -1
- package/src/admin/components/sessions/AdminSessions.tsx +2 -1
- package/src/admin/components/users/AdminUserAudits.tsx +2 -1
- package/src/admin/components/users/AdminUserCreate.tsx +2 -1
- package/src/admin/components/users/AdminUserDetails.tsx +2 -1
- package/src/admin/components/users/AdminUserLayout.tsx +2 -6
- package/src/admin/components/users/AdminUserSessions.tsx +2 -1
- package/src/admin/components/users/AdminUserSettings.tsx +2 -1
- package/src/admin/components/users/AdminUsers.tsx +2 -1
- package/src/auth/AuthRouter.ts +1 -1
- package/src/auth/components/AuthLayout.tsx +1 -1
- package/src/auth/components/Login.tsx +1 -1
- package/src/auth/components/Register.tsx +2 -1
- package/src/auth/components/ResetPassword.tsx +2 -1
- package/src/auth/components/VerifyEmail.tsx +2 -1
- package/src/auth/components/buttons/UserButton.tsx +1 -1
- package/src/core/RootRouter.ts +1 -1
- package/src/core/components/buttons/ActionButton.tsx +3 -4
- package/src/core/components/form/Control.tsx +12 -1
- package/src/core/components/form/ControlNumber.tsx +5 -0
- package/src/core/components/layout/AdminShell.tsx +2 -1
- package/src/core/components/layout/AlephaMantineProvider.tsx +2 -1
- package/src/core/components/layout/Omnibar.tsx +2 -1
- package/src/core/components/layout/Sidebar.tsx +10 -13
- package/src/core/index.ts +1 -2
- package/src/core/services/DialogService.tsx +0 -17
- package/{styles.css → src/core/styles.css} +1 -5
- package/src/demo/DemoRouter.ts +123 -0
- package/src/demo/components/DemoHome.tsx +29 -0
- package/src/demo/components/DemoLayout.tsx +52 -0
- package/src/demo/components/auth/DemoLogin.tsx +130 -0
- package/src/demo/components/auth/DemoRegister.tsx +144 -0
- package/src/demo/components/auth/DemoResetPassword.tsx +69 -0
- package/src/demo/components/auth/DemoVerifyEmail.tsx +28 -0
- package/src/demo/components/core/DemoDataTable.tsx +174 -0
- package/src/demo/components/core/DemoSidebar.tsx +85 -0
- package/src/demo/components/core/DemoTypeForm.tsx +69 -0
- package/src/demo/components/json/DemoJsonViewer.tsx +128 -0
- package/src/demo/components/shared/MacWindow.tsx +105 -0
- package/src/demo/components/shared/Showcase.tsx +112 -0
- package/src/demo/index.ts +30 -0
- package/src/demo/styles.css +0 -0
- package/src/json/components/JsonViewer.css +25 -0
- package/src/json/components/JsonViewer.tsx +526 -0
- package/src/json/extensions/DialogService.tsx +31 -0
- package/src/json/index.ts +5 -0
- package/src/json/styles.css +1 -0
- package/dist/admin/AdminAudits-CwvH8e8c.js.map +0 -1
- package/dist/admin/AdminAudits-Dv8Vk_6r.js +0 -3
- package/dist/admin/AdminFiles-5CPA3lQk.js +0 -3
- package/dist/admin/AdminNotifications-DLjmZWtf.js +0 -3
- package/dist/admin/AdminSessions-BCjgJ-93.js.map +0 -1
- package/dist/admin/AdminSessions-DEh2uN-4.js +0 -3
- package/dist/admin/AdminUserAudits-B_PUXCKC.js.map +0 -1
- package/dist/admin/AdminUserCreate-DzfRbGZ4.js.map +0 -1
- package/dist/admin/AdminUserDetails-DeTrJm-t.js.map +0 -1
- package/dist/admin/AdminUserLayout-CsfrrZkD.js.map +0 -1
- package/dist/admin/AdminUserSessions-Bbhcpz4k.js +0 -3
- package/dist/admin/AdminUserSessions-DO9H85O-.js.map +0 -1
- package/dist/admin/AdminUserSettings-B3jA8g3p.js.map +0 -1
- package/dist/admin/AdminUserSettings-CE0xpbQc.js +0 -3
- package/dist/admin/AdminUsers-CegGZDhW.js +0 -3
- package/dist/admin/AdminUsers-ebbrJBT0.js.map +0 -1
- package/dist/auth/AuthLayout-BAZJHzDG.js.map +0 -1
- package/dist/auth/Login-CeNZZjrr.js.map +0 -1
- package/dist/auth/Login-hQcu1nlu.js +0 -4
- package/dist/auth/Register-B6HBNVHS.js +0 -4
- package/dist/auth/Register-s4ENeyiE.js.map +0 -1
- package/dist/auth/ResetPassword-Cjd-W-Nu.js +0 -3
- package/dist/auth/ResetPassword-GLIFkJT7.js.map +0 -1
- package/dist/auth/VerifyEmail-Dc9ABKUw.js +0 -3
- package/dist/auth/VerifyEmail-R79sSej_.js.map +0 -1
- package/src/core/components/data/JsonViewer.tsx +0 -361
package/dist/core/index.js
CHANGED
|
@@ -3,7 +3,8 @@ import { $head, AlephaReactHead } from "@alepha/react/head";
|
|
|
3
3
|
import { AlephaReactI18n, useI18n } from "@alepha/react/i18n";
|
|
4
4
|
import { $atom, $inject, $module, Alepha, AlephaError, TypeBoxError, t } from "alepha";
|
|
5
5
|
import { $cookie } from "alepha/server/cookies";
|
|
6
|
-
import { $page, NestedView,
|
|
6
|
+
import { $page, NestedView, useActive, useRouter } from "@alepha/react/router";
|
|
7
|
+
import { useAction, useEvents, useInject, useStore } from "@alepha/react";
|
|
7
8
|
import { ActionIcon, Anchor, AppShell, Autocomplete, Badge, Box, Burger, Button, Card, Checkbox, Collapse, ColorInput, ColorSchemeScript, CopyButton, Divider, Fieldset, FileInput, Flex, Flex as Flex$1, Grid, Group, Input, Kbd, MantineProvider, Menu, MultiSelect, NumberInput, Pagination, PasswordInput, Popover, ScrollArea, SegmentedControl, Select, Slider, Stack, Switch, Table, TagsInput, Text, Text as Text$1, TextInput, Textarea, ThemeIcon, Tooltip, UnstyledButton, useComputedColorScheme, useMantineColorScheme, useMantineTheme } from "@mantine/core";
|
|
8
9
|
import { ModalsProvider, modals } from "@mantine/modals";
|
|
9
10
|
import { Notifications, notifications } from "@mantine/notifications";
|
|
@@ -410,7 +411,7 @@ var RootRouter = class {
|
|
|
410
411
|
|
|
411
412
|
//#endregion
|
|
412
413
|
//#region ../../src/core/components/data/ErrorViewer.tsx
|
|
413
|
-
const getSizeConfig
|
|
414
|
+
const getSizeConfig = (size = "sm") => {
|
|
414
415
|
const configs = {
|
|
415
416
|
xs: {
|
|
416
417
|
text: "xs",
|
|
@@ -445,7 +446,7 @@ const parseStackTrace = (stack) => {
|
|
|
445
446
|
};
|
|
446
447
|
const ErrorViewer = ({ error, showStack = true, copyable = true, size = "sm" }) => {
|
|
447
448
|
const [stackExpanded, setStackExpanded] = useState(false);
|
|
448
|
-
const sizeConfig = getSizeConfig
|
|
449
|
+
const sizeConfig = getSizeConfig(size);
|
|
449
450
|
const copyIconSize = sizeConfig.icon + 2;
|
|
450
451
|
const isError = error instanceof Error;
|
|
451
452
|
const errorName = isError ? error.name : "Error";
|
|
@@ -548,297 +549,6 @@ const ErrorViewer = ({ error, showStack = true, copyable = true, size = "sm" })
|
|
|
548
549
|
};
|
|
549
550
|
var ErrorViewer_default = ErrorViewer;
|
|
550
551
|
|
|
551
|
-
//#endregion
|
|
552
|
-
//#region ../../src/core/components/data/JsonViewer.tsx
|
|
553
|
-
const getSizeConfig = (size = "sm") => {
|
|
554
|
-
const configs = {
|
|
555
|
-
xs: {
|
|
556
|
-
text: "xs",
|
|
557
|
-
icon: 12,
|
|
558
|
-
indent: 16,
|
|
559
|
-
gap: 4,
|
|
560
|
-
iconWidth: 18
|
|
561
|
-
},
|
|
562
|
-
sm: {
|
|
563
|
-
text: "sm",
|
|
564
|
-
icon: 14,
|
|
565
|
-
indent: 20,
|
|
566
|
-
gap: 6,
|
|
567
|
-
iconWidth: 20
|
|
568
|
-
},
|
|
569
|
-
md: {
|
|
570
|
-
text: "md",
|
|
571
|
-
icon: 16,
|
|
572
|
-
indent: 24,
|
|
573
|
-
gap: 8,
|
|
574
|
-
iconWidth: 22
|
|
575
|
-
},
|
|
576
|
-
lg: {
|
|
577
|
-
text: "lg",
|
|
578
|
-
icon: 18,
|
|
579
|
-
indent: 28,
|
|
580
|
-
gap: 10,
|
|
581
|
-
iconWidth: 24
|
|
582
|
-
},
|
|
583
|
-
xl: {
|
|
584
|
-
text: "xl",
|
|
585
|
-
icon: 20,
|
|
586
|
-
indent: 32,
|
|
587
|
-
gap: 12,
|
|
588
|
-
iconWidth: 26
|
|
589
|
-
}
|
|
590
|
-
};
|
|
591
|
-
return configs[size] || configs.sm;
|
|
592
|
-
};
|
|
593
|
-
const JsonNode = ({ name, value, depth, maxDepth, isLast = false, isArrayItem = false, size = "sm", iconWidth }) => {
|
|
594
|
-
const [expanded, setExpanded] = useState(depth < 2);
|
|
595
|
-
const sizeConfig = getSizeConfig(size);
|
|
596
|
-
const getValueType = (val) => {
|
|
597
|
-
if (val === null) return "null";
|
|
598
|
-
if (val === void 0) return "undefined";
|
|
599
|
-
if (Array.isArray(val)) return "array";
|
|
600
|
-
return typeof val;
|
|
601
|
-
};
|
|
602
|
-
const valueType = getValueType(value);
|
|
603
|
-
const renderPrimitive = (val) => {
|
|
604
|
-
const type = getValueType(val);
|
|
605
|
-
const textProps = {
|
|
606
|
-
component: "span",
|
|
607
|
-
ff: "monospace",
|
|
608
|
-
size: sizeConfig.text
|
|
609
|
-
};
|
|
610
|
-
switch (type) {
|
|
611
|
-
case "string": return /* @__PURE__ */ jsxs(Text$1, {
|
|
612
|
-
...textProps,
|
|
613
|
-
c: "teal",
|
|
614
|
-
children: [
|
|
615
|
-
"\"",
|
|
616
|
-
val,
|
|
617
|
-
"\""
|
|
618
|
-
]
|
|
619
|
-
});
|
|
620
|
-
case "number": return /* @__PURE__ */ jsx(Text$1, {
|
|
621
|
-
...textProps,
|
|
622
|
-
c: "blue",
|
|
623
|
-
children: val
|
|
624
|
-
});
|
|
625
|
-
case "boolean": return /* @__PURE__ */ jsx(Text$1, {
|
|
626
|
-
...textProps,
|
|
627
|
-
c: "violet",
|
|
628
|
-
children: String(val)
|
|
629
|
-
});
|
|
630
|
-
case "null": return /* @__PURE__ */ jsx(Text$1, {
|
|
631
|
-
...textProps,
|
|
632
|
-
c: "dimmed",
|
|
633
|
-
children: "null"
|
|
634
|
-
});
|
|
635
|
-
case "undefined": return /* @__PURE__ */ jsx(Text$1, {
|
|
636
|
-
...textProps,
|
|
637
|
-
c: "dimmed",
|
|
638
|
-
children: "undefined"
|
|
639
|
-
});
|
|
640
|
-
default: return /* @__PURE__ */ jsx(Text$1, {
|
|
641
|
-
...textProps,
|
|
642
|
-
children: String(val)
|
|
643
|
-
});
|
|
644
|
-
}
|
|
645
|
-
};
|
|
646
|
-
const renderKey = () => {
|
|
647
|
-
if (name === void 0) return null;
|
|
648
|
-
return /* @__PURE__ */ jsx(Text$1, {
|
|
649
|
-
component: "span",
|
|
650
|
-
c: "cyan",
|
|
651
|
-
ff: "monospace",
|
|
652
|
-
fw: 500,
|
|
653
|
-
size: sizeConfig.text,
|
|
654
|
-
children: isArrayItem ? `[${name}]` : `"${name}"`
|
|
655
|
-
});
|
|
656
|
-
};
|
|
657
|
-
const comma = !isLast && /* @__PURE__ */ jsx(Text$1, {
|
|
658
|
-
component: "span",
|
|
659
|
-
c: "dimmed",
|
|
660
|
-
ff: "monospace",
|
|
661
|
-
size: sizeConfig.text,
|
|
662
|
-
children: ","
|
|
663
|
-
});
|
|
664
|
-
if (valueType === "object" || valueType === "array") {
|
|
665
|
-
const isObject = valueType === "object";
|
|
666
|
-
const entries = isObject ? Object.entries(value) : value.map((v, i) => [i, v]);
|
|
667
|
-
const isEmpty = entries.length === 0;
|
|
668
|
-
const canExpand = depth < maxDepth && !isEmpty;
|
|
669
|
-
const preview = isObject ? "{...}" : "[...]";
|
|
670
|
-
const brackets = isObject ? ["{", "}"] : ["[", "]"];
|
|
671
|
-
return /* @__PURE__ */ jsxs(Box, { children: [/* @__PURE__ */ jsxs(Box, {
|
|
672
|
-
style: {
|
|
673
|
-
display: "grid",
|
|
674
|
-
gridTemplateColumns: `${iconWidth}px auto`,
|
|
675
|
-
alignItems: "center"
|
|
676
|
-
},
|
|
677
|
-
children: [/* @__PURE__ */ jsx(Box, {
|
|
678
|
-
style: {
|
|
679
|
-
display: "flex",
|
|
680
|
-
justifyContent: "center",
|
|
681
|
-
alignItems: "center"
|
|
682
|
-
},
|
|
683
|
-
children: canExpand && /* @__PURE__ */ jsx(ActionIcon, {
|
|
684
|
-
size: "xs",
|
|
685
|
-
variant: "transparent",
|
|
686
|
-
c: "dimmed",
|
|
687
|
-
onClick: () => setExpanded(!expanded),
|
|
688
|
-
style: { cursor: "pointer" },
|
|
689
|
-
children: expanded ? /* @__PURE__ */ jsx(IconChevronDown, { size: sizeConfig.icon }) : /* @__PURE__ */ jsx(IconChevronRight, { size: sizeConfig.icon })
|
|
690
|
-
})
|
|
691
|
-
}), /* @__PURE__ */ jsxs(Box, {
|
|
692
|
-
style: {
|
|
693
|
-
display: "flex",
|
|
694
|
-
alignItems: "center",
|
|
695
|
-
gap: sizeConfig.gap
|
|
696
|
-
},
|
|
697
|
-
children: [
|
|
698
|
-
renderKey(),
|
|
699
|
-
name !== void 0 && /* @__PURE__ */ jsx(Text$1, {
|
|
700
|
-
component: "span",
|
|
701
|
-
c: "dimmed",
|
|
702
|
-
ff: "monospace",
|
|
703
|
-
size: sizeConfig.text,
|
|
704
|
-
children: ":"
|
|
705
|
-
}),
|
|
706
|
-
/* @__PURE__ */ jsx(Text$1, {
|
|
707
|
-
component: "span",
|
|
708
|
-
c: "dimmed",
|
|
709
|
-
ff: "monospace",
|
|
710
|
-
size: sizeConfig.text,
|
|
711
|
-
children: brackets[0]
|
|
712
|
-
}),
|
|
713
|
-
!expanded && !isEmpty && /* @__PURE__ */ jsx(Text$1, {
|
|
714
|
-
component: "span",
|
|
715
|
-
c: "dimmed",
|
|
716
|
-
ff: "monospace",
|
|
717
|
-
fs: "italic",
|
|
718
|
-
size: sizeConfig.text,
|
|
719
|
-
children: preview
|
|
720
|
-
}),
|
|
721
|
-
(isEmpty || !expanded) && /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(Text$1, {
|
|
722
|
-
component: "span",
|
|
723
|
-
c: "dimmed",
|
|
724
|
-
ff: "monospace",
|
|
725
|
-
size: sizeConfig.text,
|
|
726
|
-
children: brackets[1]
|
|
727
|
-
}), comma] }),
|
|
728
|
-
!isEmpty && !expanded && /* @__PURE__ */ jsxs(Text$1, {
|
|
729
|
-
component: "span",
|
|
730
|
-
c: "dimmed",
|
|
731
|
-
size: sizeConfig.text,
|
|
732
|
-
children: [
|
|
733
|
-
entries.length,
|
|
734
|
-
" ",
|
|
735
|
-
entries.length === 1 ? "item" : "items"
|
|
736
|
-
]
|
|
737
|
-
})
|
|
738
|
-
]
|
|
739
|
-
})]
|
|
740
|
-
}), /* @__PURE__ */ jsxs(Collapse, {
|
|
741
|
-
in: expanded && canExpand,
|
|
742
|
-
children: [/* @__PURE__ */ jsx(Box, {
|
|
743
|
-
pl: sizeConfig.indent,
|
|
744
|
-
ml: iconWidth / 2,
|
|
745
|
-
style: { borderLeft: "1px solid var(--mantine-color-default-border)" },
|
|
746
|
-
children: entries.map(([key, val], index) => /* @__PURE__ */ jsx(JsonNode, {
|
|
747
|
-
name: String(key),
|
|
748
|
-
value: val,
|
|
749
|
-
depth: depth + 1,
|
|
750
|
-
maxDepth,
|
|
751
|
-
isLast: index === entries.length - 1,
|
|
752
|
-
isArrayItem: !isObject,
|
|
753
|
-
size,
|
|
754
|
-
iconWidth
|
|
755
|
-
}, String(key)))
|
|
756
|
-
}), /* @__PURE__ */ jsxs(Box, {
|
|
757
|
-
style: {
|
|
758
|
-
display: "grid",
|
|
759
|
-
gridTemplateColumns: `${iconWidth}px auto`
|
|
760
|
-
},
|
|
761
|
-
children: [/* @__PURE__ */ jsx(Box, {}), /* @__PURE__ */ jsxs(Box, {
|
|
762
|
-
style: {
|
|
763
|
-
display: "flex",
|
|
764
|
-
gap: sizeConfig.gap
|
|
765
|
-
},
|
|
766
|
-
children: [/* @__PURE__ */ jsx(Text$1, {
|
|
767
|
-
c: "dimmed",
|
|
768
|
-
ff: "monospace",
|
|
769
|
-
size: sizeConfig.text,
|
|
770
|
-
children: brackets[1]
|
|
771
|
-
}), comma]
|
|
772
|
-
})]
|
|
773
|
-
})]
|
|
774
|
-
})] });
|
|
775
|
-
}
|
|
776
|
-
return /* @__PURE__ */ jsxs(Box, {
|
|
777
|
-
style: {
|
|
778
|
-
display: "grid",
|
|
779
|
-
gridTemplateColumns: `${iconWidth}px auto`,
|
|
780
|
-
alignItems: "center"
|
|
781
|
-
},
|
|
782
|
-
children: [/* @__PURE__ */ jsx(Box, {}), /* @__PURE__ */ jsxs(Box, {
|
|
783
|
-
style: {
|
|
784
|
-
display: "flex",
|
|
785
|
-
alignItems: "center",
|
|
786
|
-
gap: sizeConfig.gap
|
|
787
|
-
},
|
|
788
|
-
children: [
|
|
789
|
-
renderKey(),
|
|
790
|
-
name !== void 0 && /* @__PURE__ */ jsx(Text$1, {
|
|
791
|
-
component: "span",
|
|
792
|
-
c: "dimmed",
|
|
793
|
-
ff: "monospace",
|
|
794
|
-
size: sizeConfig.text,
|
|
795
|
-
children: ":"
|
|
796
|
-
}),
|
|
797
|
-
renderPrimitive(value),
|
|
798
|
-
comma
|
|
799
|
-
]
|
|
800
|
-
})]
|
|
801
|
-
});
|
|
802
|
-
};
|
|
803
|
-
const JsonViewer = ({ data, defaultExpanded = true, maxDepth = 10, copyable = true, size = "sm" }) => {
|
|
804
|
-
const sizeConfig = getSizeConfig(size);
|
|
805
|
-
const copyIconSize = sizeConfig.icon + 2;
|
|
806
|
-
return /* @__PURE__ */ jsxs(Box, {
|
|
807
|
-
pos: "relative",
|
|
808
|
-
w: "100%",
|
|
809
|
-
children: [copyable && /* @__PURE__ */ jsx(Box, {
|
|
810
|
-
pos: "absolute",
|
|
811
|
-
top: 0,
|
|
812
|
-
right: 0,
|
|
813
|
-
style: { zIndex: 1 },
|
|
814
|
-
children: /* @__PURE__ */ jsx(CopyButton, {
|
|
815
|
-
value: JSON.stringify(data, null, 2),
|
|
816
|
-
children: ({ copied, copy }) => /* @__PURE__ */ jsx(Tooltip, {
|
|
817
|
-
label: copied ? "Copied" : "Copy JSON",
|
|
818
|
-
children: /* @__PURE__ */ jsx(ActionIcon, {
|
|
819
|
-
color: copied ? "teal" : "gray",
|
|
820
|
-
variant: "subtle",
|
|
821
|
-
onClick: copy,
|
|
822
|
-
size,
|
|
823
|
-
children: copied ? /* @__PURE__ */ jsx(IconCheck, { size: copyIconSize }) : /* @__PURE__ */ jsx(IconCopy, { size: copyIconSize })
|
|
824
|
-
})
|
|
825
|
-
})
|
|
826
|
-
})
|
|
827
|
-
}), /* @__PURE__ */ jsx(Box, {
|
|
828
|
-
pt: copyable ? 30 : 0,
|
|
829
|
-
style: { overflowX: "auto" },
|
|
830
|
-
children: /* @__PURE__ */ jsx(JsonNode, {
|
|
831
|
-
value: data,
|
|
832
|
-
depth: 0,
|
|
833
|
-
maxDepth,
|
|
834
|
-
size,
|
|
835
|
-
iconWidth: sizeConfig.iconWidth
|
|
836
|
-
})
|
|
837
|
-
})]
|
|
838
|
-
});
|
|
839
|
-
};
|
|
840
|
-
var JsonViewer_default = JsonViewer;
|
|
841
|
-
|
|
842
552
|
//#endregion
|
|
843
553
|
//#region ../../src/core/components/dialogs/AlertDialog.tsx
|
|
844
554
|
const AlertDialog = ({ options, onClose }) => /* @__PURE__ */ jsxs(Fragment, { children: [options?.message && /* @__PURE__ */ jsx(Text$1, {
|
|
@@ -1009,27 +719,6 @@ var DialogService = class {
|
|
|
1009
719
|
else modals.closeAll();
|
|
1010
720
|
}
|
|
1011
721
|
/**
|
|
1012
|
-
* Show a JSON editor/viewer dialog
|
|
1013
|
-
*/
|
|
1014
|
-
json(data, options) {
|
|
1015
|
-
this.open({
|
|
1016
|
-
size: "lg",
|
|
1017
|
-
title: options?.title || "Json Viewer",
|
|
1018
|
-
...options,
|
|
1019
|
-
content: /* @__PURE__ */ jsx(Flex$1, {
|
|
1020
|
-
bdrs: "md",
|
|
1021
|
-
w: "100%",
|
|
1022
|
-
flex: 1,
|
|
1023
|
-
p: "sm",
|
|
1024
|
-
bg: ui.colors.surface,
|
|
1025
|
-
children: /* @__PURE__ */ jsx(JsonViewer_default, {
|
|
1026
|
-
size: "xs",
|
|
1027
|
-
data
|
|
1028
|
-
})
|
|
1029
|
-
})
|
|
1030
|
-
});
|
|
1031
|
-
}
|
|
1032
|
-
/**
|
|
1033
722
|
* Show an error viewer dialog
|
|
1034
723
|
*/
|
|
1035
724
|
error(error, options) {
|
|
@@ -1937,27 +1626,34 @@ const ControlNumber = (props) => {
|
|
|
1937
1626
|
} }, [props.input]);
|
|
1938
1627
|
if (!props.input?.props) return null;
|
|
1939
1628
|
const { type, ...inputPropsWithoutType } = props.input.props;
|
|
1940
|
-
if (props.sliderProps)
|
|
1941
|
-
|
|
1942
|
-
|
|
1943
|
-
|
|
1944
|
-
|
|
1945
|
-
|
|
1946
|
-
|
|
1947
|
-
|
|
1948
|
-
|
|
1949
|
-
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
|
|
1953
|
-
|
|
1954
|
-
|
|
1955
|
-
|
|
1956
|
-
|
|
1957
|
-
|
|
1629
|
+
if (props.sliderProps) {
|
|
1630
|
+
const min = props.sliderProps.min ?? inputProps.minimum ?? 0;
|
|
1631
|
+
const max = props.sliderProps.max ?? inputProps.maximum ?? 100;
|
|
1632
|
+
return /* @__PURE__ */ jsx(Input.Wrapper, {
|
|
1633
|
+
...inputProps,
|
|
1634
|
+
children: /* @__PURE__ */ jsx("div", {
|
|
1635
|
+
style: {
|
|
1636
|
+
height: 32,
|
|
1637
|
+
padding: 8
|
|
1638
|
+
},
|
|
1639
|
+
children: /* @__PURE__ */ jsx(Slider, {
|
|
1640
|
+
...inputProps,
|
|
1641
|
+
ref,
|
|
1642
|
+
id,
|
|
1643
|
+
...inputPropsWithoutType,
|
|
1644
|
+
...props.sliderProps,
|
|
1645
|
+
value,
|
|
1646
|
+
min,
|
|
1647
|
+
max,
|
|
1648
|
+
label: () => value,
|
|
1649
|
+
onChange: (val) => {
|
|
1650
|
+
setValue(val);
|
|
1651
|
+
props.input.set(val);
|
|
1652
|
+
}
|
|
1653
|
+
})
|
|
1958
1654
|
})
|
|
1959
|
-
})
|
|
1960
|
-
}
|
|
1655
|
+
});
|
|
1656
|
+
}
|
|
1961
1657
|
return /* @__PURE__ */ jsx(NumberInput, {
|
|
1962
1658
|
...inputProps,
|
|
1963
1659
|
ref,
|
|
@@ -2599,6 +2295,7 @@ const Control = (_props) => {
|
|
|
2599
2295
|
}
|
|
2600
2296
|
if (props.number || props.input.schema && "type" in props.input.schema && (props.input.schema.type === "number" || props.input.schema.type === "integer")) {
|
|
2601
2297
|
const controlNumberProps = typeof props.number === "object" ? props.number : {};
|
|
2298
|
+
if (props.slider) controlNumberProps.sliderProps ??= {};
|
|
2602
2299
|
return /* @__PURE__ */ jsx(ControlNumber_default, {
|
|
2603
2300
|
input: props.input,
|
|
2604
2301
|
title: props.title,
|
|
@@ -2631,6 +2328,7 @@ const Control = (_props) => {
|
|
|
2631
2328
|
}
|
|
2632
2329
|
if (props.input.schema && "enum" in props.input.schema && props.input.schema.enum || isArray && !isArrayOfObjects || props.select) {
|
|
2633
2330
|
const opts = typeof props.select === "object" ? props.select : {};
|
|
2331
|
+
if (props.segmented) opts.segmented ??= {};
|
|
2634
2332
|
return /* @__PURE__ */ jsx(ControlSelect_default, {
|
|
2635
2333
|
input: props.input,
|
|
2636
2334
|
title: props.title,
|
|
@@ -2647,7 +2345,9 @@ const Control = (_props) => {
|
|
|
2647
2345
|
id,
|
|
2648
2346
|
color: "blue",
|
|
2649
2347
|
defaultChecked: props.input.props.defaultValue,
|
|
2650
|
-
|
|
2348
|
+
onChange: (event) => {
|
|
2349
|
+
props.input.set(event.currentTarget.checked);
|
|
2350
|
+
},
|
|
2651
2351
|
...switchProps
|
|
2652
2352
|
});
|
|
2653
2353
|
}
|
|
@@ -2937,7 +2637,7 @@ var ToggleSidebarButton_default = ToggleSidebarButton;
|
|
|
2937
2637
|
//#region ../../src/core/components/layout/Sidebar.tsx
|
|
2938
2638
|
const Sidebar = (props) => {
|
|
2939
2639
|
const router = useRouter();
|
|
2940
|
-
const {
|
|
2640
|
+
const { onItemClick } = props;
|
|
2941
2641
|
const renderNode = (item, key) => {
|
|
2942
2642
|
if ("type" in item) {
|
|
2943
2643
|
if (item.type === "spacer") return /* @__PURE__ */ jsx(Flex$1, { h: 16 }, key);
|
|
@@ -2982,11 +2682,10 @@ const Sidebar = (props) => {
|
|
|
2982
2682
|
}, key);
|
|
2983
2683
|
};
|
|
2984
2684
|
const getSidebarNodes = () => {
|
|
2985
|
-
if (props.
|
|
2685
|
+
if (props.items) return props.items;
|
|
2986
2686
|
if (props.autoPopulateMenu) {
|
|
2987
2687
|
const items = router.concretePages.map((page) => ({
|
|
2988
2688
|
label: page.label ?? page.name,
|
|
2989
|
-
description: page.description?.slice(0, 32),
|
|
2990
2689
|
icon: renderIcon(page.icon),
|
|
2991
2690
|
href: router.path(page.name)
|
|
2992
2691
|
}));
|
|
@@ -2998,7 +2697,7 @@ const Sidebar = (props) => {
|
|
|
2998
2697
|
return [];
|
|
2999
2698
|
};
|
|
3000
2699
|
const padding = "md";
|
|
3001
|
-
const gap = props.
|
|
2700
|
+
const gap = props.items ? props.gap : "xs";
|
|
3002
2701
|
const menu = useMemo(() => getSidebarNodes(), []);
|
|
3003
2702
|
return /* @__PURE__ */ jsxs(Flex$1, {
|
|
3004
2703
|
flex: 1,
|
|
@@ -3007,11 +2706,11 @@ const Sidebar = (props) => {
|
|
|
3007
2706
|
className: "overflow-auto",
|
|
3008
2707
|
...props.flexProps,
|
|
3009
2708
|
children: [
|
|
3010
|
-
/* @__PURE__ */
|
|
2709
|
+
/* @__PURE__ */ jsx(Flex$1, {
|
|
3011
2710
|
gap,
|
|
3012
2711
|
px: padding,
|
|
3013
2712
|
direction: "column",
|
|
3014
|
-
children:
|
|
2713
|
+
children: menu.filter((it) => it.position === "top").map((item, index) => renderNode(item, index))
|
|
3015
2714
|
}),
|
|
3016
2715
|
/* @__PURE__ */ jsx(Flex$1, {
|
|
3017
2716
|
gap,
|
|
@@ -3021,11 +2720,11 @@ const Sidebar = (props) => {
|
|
|
3021
2720
|
className: "overflow-auto",
|
|
3022
2721
|
children: menu.filter((it) => !it.position).map((item, index) => renderNode(item, index))
|
|
3023
2722
|
}),
|
|
3024
|
-
/* @__PURE__ */
|
|
2723
|
+
/* @__PURE__ */ jsx(Flex$1, {
|
|
3025
2724
|
gap,
|
|
3026
2725
|
px: padding,
|
|
3027
2726
|
direction: "column",
|
|
3028
|
-
children:
|
|
2727
|
+
children: menu.filter((it) => it.position === "bottom").map((item, index) => renderNode(item, index))
|
|
3029
2728
|
})
|
|
3030
2729
|
]
|
|
3031
2730
|
});
|
|
@@ -3941,5 +3640,5 @@ const AlephaUI = $module({
|
|
|
3941
3640
|
});
|
|
3942
3641
|
|
|
3943
3642
|
//#endregion
|
|
3944
|
-
export { ActionButton_default as ActionButton, AdminShell_default as AdminShell, AlephaMantineProvider_default as AlephaMantineProvider, AlephaUI, AlertDialog_default as AlertDialog, AppBar_default as AppBar, BurgerButton_default as BurgerButton, ClipboardButton_default as ClipboardButton, ConfirmDialog_default as ConfirmDialog, Control_default as Control, ControlArray_default as ControlArray, ControlDate_default as ControlDate, ControlNumber_default as ControlNumber, ControlObject_default as ControlObject, ControlQueryBuilder_default as ControlQueryBuilder, ControlSelect_default as ControlSelect, DarkModeButton_default as DarkModeButton, DataTable_default as DataTable, DialogService, Flex,
|
|
3643
|
+
export { ActionButton_default as ActionButton, AdminShell_default as AdminShell, AlephaMantineProvider_default as AlephaMantineProvider, AlephaUI, AlertDialog_default as AlertDialog, AppBar_default as AppBar, BurgerButton_default as BurgerButton, ClipboardButton_default as ClipboardButton, ConfirmDialog_default as ConfirmDialog, Control_default as Control, ControlArray_default as ControlArray, ControlDate_default as ControlDate, ControlNumber_default as ControlNumber, ControlObject_default as ControlObject, ControlQueryBuilder_default as ControlQueryBuilder, ControlSelect_default as ControlSelect, DarkModeButton_default as DarkModeButton, DataTable_default as DataTable, DialogService, Flex, LanguageButton_default as LanguageButton, OPERATOR_INFO, Omnibar_default as Omnibar, OmnibarButton_default as OmnibarButton, PromptDialog_default as PromptDialog, RootRouter, Sidebar, Text, ThemeButton_default as ThemeButton, ThemeProvider, ToastService, TypeForm_default as TypeForm, alephaThemeAtom, alephaThemeListAtom, capitalize, defaultTheme, extractSchemaFields, getDefaultIcon, getOperatorsForField, midnightTheme, prettyName, ui, useDialog, useToast };
|
|
3945
3644
|
//# sourceMappingURL=index.js.map
|