@datatechsolutions/ui 3.11.2 → 3.12.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/astrlabe/index.js +108 -108
- package/dist/astrlabe/index.mjs +4 -4
- package/dist/astrlabe/workflow-canvas.js +4 -4
- package/dist/astrlabe/workflow-canvas.mjs +3 -3
- package/dist/{chunk-TZA5T4MJ.mjs → chunk-4D23CQZM.mjs} +80 -16
- package/dist/chunk-4D23CQZM.mjs.map +1 -0
- package/dist/{chunk-5Y67PZWC.js → chunk-5OZTI7TR.js} +4 -4
- package/dist/{chunk-5Y67PZWC.js.map → chunk-5OZTI7TR.js.map} +1 -1
- package/dist/{chunk-5TJR3VJ6.mjs → chunk-5TLKFOEL.mjs} +4 -4
- package/dist/{chunk-5TJR3VJ6.mjs.map → chunk-5TLKFOEL.mjs.map} +1 -1
- package/dist/{chunk-N7T4X6A7.mjs → chunk-BPMYNE7S.mjs} +3 -3
- package/dist/{chunk-N7T4X6A7.mjs.map → chunk-BPMYNE7S.mjs.map} +1 -1
- package/dist/{chunk-JBXNEOFB.mjs → chunk-EDI46QA7.mjs} +3 -3
- package/dist/{chunk-JBXNEOFB.mjs.map → chunk-EDI46QA7.mjs.map} +1 -1
- package/dist/{chunk-3BFQ3SVG.js → chunk-FKRIQYRG.js} +68 -68
- package/dist/{chunk-3BFQ3SVG.js.map → chunk-FKRIQYRG.js.map} +1 -1
- package/dist/{chunk-HLIMHIRH.js → chunk-HTODLUKG.js} +9 -9
- package/dist/{chunk-HLIMHIRH.js.map → chunk-HTODLUKG.js.map} +1 -1
- package/dist/{chunk-BGLYJ7GR.js → chunk-ID55ABBB.js} +35 -35
- package/dist/{chunk-BGLYJ7GR.js.map → chunk-ID55ABBB.js.map} +1 -1
- package/dist/{chunk-MCHTZ63Q.js → chunk-LRNVB7MO.js} +4 -4
- package/dist/{chunk-MCHTZ63Q.js.map → chunk-LRNVB7MO.js.map} +1 -1
- package/dist/{chunk-Y4YIGEX6.js → chunk-MFF37C24.js} +135 -135
- package/dist/{chunk-Y4YIGEX6.js.map → chunk-MFF37C24.js.map} +1 -1
- package/dist/{chunk-TXI3QDYE.js → chunk-MYHBXIO2.js} +34 -34
- package/dist/{chunk-TXI3QDYE.js.map → chunk-MYHBXIO2.js.map} +1 -1
- package/dist/{chunk-OZEOBZOW.mjs → chunk-N5GQIT7A.mjs} +7 -7
- package/dist/{chunk-OZEOBZOW.mjs.map → chunk-N5GQIT7A.mjs.map} +1 -1
- package/dist/{chunk-AVLOGVVA.mjs → chunk-NK4H3JWN.mjs} +3 -3
- package/dist/{chunk-AVLOGVVA.mjs.map → chunk-NK4H3JWN.mjs.map} +1 -1
- package/dist/{chunk-RUWUH7DW.mjs → chunk-NQGLSM46.mjs} +3 -3
- package/dist/{chunk-RUWUH7DW.mjs.map → chunk-NQGLSM46.mjs.map} +1 -1
- package/dist/{chunk-KGC5CRS7.mjs → chunk-OM5NNUD2.mjs} +3 -3
- package/dist/{chunk-KGC5CRS7.mjs.map → chunk-OM5NNUD2.mjs.map} +1 -1
- package/dist/{chunk-D5FL3ZHC.mjs → chunk-OW5LSEHU.mjs} +86 -43
- package/dist/chunk-OW5LSEHU.mjs.map +1 -0
- package/dist/{chunk-WSXP645I.mjs → chunk-PIIY2Z2O.mjs} +3 -3
- package/dist/{chunk-WSXP645I.mjs.map → chunk-PIIY2Z2O.mjs.map} +1 -1
- package/dist/{chunk-5JS3UFBF.js → chunk-PLEWG2L7.js} +13 -13
- package/dist/{chunk-5JS3UFBF.js.map → chunk-PLEWG2L7.js.map} +1 -1
- package/dist/{chunk-5NKGJV72.js → chunk-QSCWV47U.js} +25 -25
- package/dist/{chunk-5NKGJV72.js.map → chunk-QSCWV47U.js.map} +1 -1
- package/dist/{chunk-4PUVECVF.mjs → chunk-RBH723MG.mjs} +3 -3
- package/dist/{chunk-4PUVECVF.mjs.map → chunk-RBH723MG.mjs.map} +1 -1
- package/dist/{chunk-NDGYIHJ3.mjs → chunk-RT264BD4.mjs} +3 -3
- package/dist/{chunk-NDGYIHJ3.mjs.map → chunk-RT264BD4.mjs.map} +1 -1
- package/dist/{chunk-3J4E2THD.js → chunk-TDNBO3V7.js} +45 -45
- package/dist/{chunk-3J4E2THD.js.map → chunk-TDNBO3V7.js.map} +1 -1
- package/dist/{chunk-6R5Z2IQ5.js → chunk-ULKZGM2T.js} +86 -43
- package/dist/chunk-ULKZGM2T.js.map +1 -0
- package/dist/{chunk-JXROBMRU.mjs → chunk-UVFWKDRO.mjs} +3 -3
- package/dist/{chunk-JXROBMRU.mjs.map → chunk-UVFWKDRO.mjs.map} +1 -1
- package/dist/{chunk-GDVB7QDZ.js → chunk-V3UZCOZI.js} +102 -38
- package/dist/chunk-V3UZCOZI.js.map +1 -0
- package/dist/{chunk-V32NUE5U.js → chunk-VYU2FYDE.js} +55 -55
- package/dist/{chunk-V32NUE5U.js.map → chunk-VYU2FYDE.js.map} +1 -1
- package/dist/{chunk-M64U336M.mjs → chunk-WLNY3GVM.mjs} +6 -6
- package/dist/{chunk-M64U336M.mjs.map → chunk-WLNY3GVM.mjs.map} +1 -1
- package/dist/{chunk-LW2LFJZ7.js → chunk-XGAPZT4J.js} +36 -36
- package/dist/{chunk-LW2LFJZ7.js.map → chunk-XGAPZT4J.js.map} +1 -1
- package/dist/{chunk-LBCUQ4FY.mjs → chunk-YYNGXKUE.mjs} +3 -3
- package/dist/{chunk-LBCUQ4FY.mjs.map → chunk-YYNGXKUE.mjs.map} +1 -1
- package/dist/{chunk-N5FWIT7N.js → chunk-Z75CEP4V.js} +10 -10
- package/dist/{chunk-N5FWIT7N.js.map → chunk-Z75CEP4V.js.map} +1 -1
- package/dist/index.d.mts +13 -4
- package/dist/index.d.ts +13 -4
- package/dist/index.js +663 -663
- package/dist/index.mjs +2 -2
- package/dist/platform/admin/index.js +10 -10
- package/dist/platform/admin/index.mjs +4 -4
- package/dist/platform/agents-workspace.js +7 -7
- package/dist/platform/agents-workspace.mjs +6 -6
- package/dist/platform/app-shell.js +4 -4
- package/dist/platform/app-shell.mjs +3 -3
- package/dist/platform/auth/index.js +22 -22
- package/dist/platform/auth/index.mjs +4 -4
- package/dist/platform/billing/index.js +4 -4
- package/dist/platform/billing/index.mjs +3 -3
- package/dist/platform/impersonation/index.js +4 -4
- package/dist/platform/impersonation/index.mjs +3 -3
- package/dist/platform/index.d.mts +1 -1
- package/dist/platform/index.d.ts +1 -1
- package/dist/platform/index.js +86 -86
- package/dist/platform/index.mjs +18 -18
- package/dist/platform/pages/index.d.mts +75 -16
- package/dist/platform/pages/index.d.ts +75 -16
- package/dist/platform/pages/index.js +1089 -505
- package/dist/platform/pages/index.js.map +1 -1
- package/dist/platform/pages/index.mjs +789 -205
- package/dist/platform/pages/index.mjs.map +1 -1
- package/dist/platform/settings/index.js +7 -7
- package/dist/platform/settings/index.mjs +6 -6
- package/dist/platform/workflow-canvas-shell.js +5 -5
- package/dist/platform/workflow-canvas-shell.mjs +4 -4
- package/package.json +1 -1
- package/dist/chunk-6R5Z2IQ5.js.map +0 -1
- package/dist/chunk-D5FL3ZHC.mjs.map +0 -1
- package/dist/chunk-GDVB7QDZ.js.map +0 -1
- package/dist/chunk-TZA5T4MJ.mjs.map +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var chunkYXN2K77G_js = require('./chunk-YXN2K77G.js');
|
|
5
4
|
var chunk22XPYFHJ_js = require('./chunk-22XPYFHJ.js');
|
|
5
|
+
var chunkYXN2K77G_js = require('./chunk-YXN2K77G.js');
|
|
6
6
|
var chunkBHOT22QL_js = require('./chunk-BHOT22QL.js');
|
|
7
7
|
var chunkUZ3CMNUJ_js = require('./chunk-UZ3CMNUJ.js');
|
|
8
8
|
var chunkS7KHTUHA_js = require('./chunk-S7KHTUHA.js');
|
|
@@ -3044,7 +3044,7 @@ function SearchBar({
|
|
|
3044
3044
|
inputRef.current?.blur();
|
|
3045
3045
|
onCancel?.();
|
|
3046
3046
|
}, [onSearchChange, onCancel]);
|
|
3047
|
-
const containerClasses = noBorder ? "flex flex-wrap items-center gap-2
|
|
3047
|
+
const containerClasses = noBorder ? "flex flex-wrap items-center gap-2 px-2 py-1 bg-transparent" : `liquid-surface flex flex-wrap items-center gap-2 px-2 py-1 rounded-2xl
|
|
3048
3048
|
transition-all duration-200
|
|
3049
3049
|
${isFocused ? "ring-2 ring-indigo-500/70 ring-offset-1" : ""}`;
|
|
3050
3050
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
@@ -3084,7 +3084,7 @@ function SearchBar({
|
|
|
3084
3084
|
onFocus: handleFocus,
|
|
3085
3085
|
onBlur: handleBlur,
|
|
3086
3086
|
"data-testid": "search-input",
|
|
3087
|
-
className: "w-full h-
|
|
3087
|
+
className: "w-full h-10 pl-10 pr-10 text-base bg-transparent\n text-slate-900 dark:text-white\n placeholder:text-slate-400 dark:placeholder:text-slate-500\n focus:outline-none"
|
|
3088
3088
|
}
|
|
3089
3089
|
),
|
|
3090
3090
|
/* @__PURE__ */ jsxRuntime.jsx(framerMotion.AnimatePresence, { children: searchTerm && /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -3122,7 +3122,7 @@ function SearchBar({
|
|
|
3122
3122
|
type: "button",
|
|
3123
3123
|
onClick: filtersModal.onOpen,
|
|
3124
3124
|
outline: true,
|
|
3125
|
-
className: "h-
|
|
3125
|
+
className: "h-10",
|
|
3126
3126
|
children: [
|
|
3127
3127
|
/* @__PURE__ */ jsxRuntime.jsx(HeroIcons.FunnelIcon, { className: "h-4 w-4" }),
|
|
3128
3128
|
/* @__PURE__ */ jsxRuntime.jsx("span", { children: resolvedFiltersTitle }),
|
|
@@ -3756,21 +3756,33 @@ function Spinner({
|
|
|
3756
3756
|
}
|
|
3757
3757
|
function LoadingOverlay({ show, message, blur = true }) {
|
|
3758
3758
|
if (!show) return null;
|
|
3759
|
-
return /* @__PURE__ */ jsxRuntime.
|
|
3759
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3760
3760
|
framerMotion.motion.div,
|
|
3761
3761
|
{
|
|
3762
|
+
role: "status",
|
|
3763
|
+
"aria-live": "polite",
|
|
3762
3764
|
initial: { opacity: 0 },
|
|
3763
3765
|
animate: { opacity: 1 },
|
|
3764
3766
|
exit: { opacity: 0 },
|
|
3765
3767
|
className: clsx4.clsx(
|
|
3766
3768
|
"fixed inset-0 z-50 flex flex-col items-center justify-center",
|
|
3767
|
-
"bg-
|
|
3768
|
-
blur && "backdrop-blur-
|
|
3769
|
+
"bg-slate-900/25 dark:bg-slate-950/45",
|
|
3770
|
+
blur && "backdrop-blur-md"
|
|
3769
3771
|
),
|
|
3770
|
-
children:
|
|
3771
|
-
|
|
3772
|
-
|
|
3773
|
-
|
|
3772
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3773
|
+
framerMotion.motion.div,
|
|
3774
|
+
{
|
|
3775
|
+
initial: { opacity: 0, scale: 0.92, y: 8 },
|
|
3776
|
+
animate: { opacity: 1, scale: 1, y: 0 },
|
|
3777
|
+
exit: { opacity: 0, scale: 0.92, y: 8 },
|
|
3778
|
+
transition: { type: "spring", stiffness: 320, damping: 28 },
|
|
3779
|
+
className: "liquid-surface-strong flex flex-col items-center gap-3 rounded-2xl px-7 py-6 min-w-[160px]",
|
|
3780
|
+
children: [
|
|
3781
|
+
/* @__PURE__ */ jsxRuntime.jsx(Spinner, { size: "lg", color: "blue", variant: "circle" }),
|
|
3782
|
+
message && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm font-medium text-slate-700 dark:text-slate-200", children: message })
|
|
3783
|
+
]
|
|
3784
|
+
}
|
|
3785
|
+
)
|
|
3774
3786
|
}
|
|
3775
3787
|
);
|
|
3776
3788
|
}
|
|
@@ -6695,11 +6707,11 @@ function ChipPicker({
|
|
|
6695
6707
|
}
|
|
6696
6708
|
}, [draft, commitDraft, items, removeUserCreated]);
|
|
6697
6709
|
if (isLoading) {
|
|
6698
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "p-4 text-center text-sm text-
|
|
6710
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "p-4 text-center text-sm text-slate-500 dark:text-slate-400", children: loadingLabel });
|
|
6699
6711
|
}
|
|
6700
6712
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-3", children: [
|
|
6701
6713
|
showActions && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between", children: [
|
|
6702
|
-
/* @__PURE__ */ jsxRuntime.jsxs("p", { className: "text-xs text-
|
|
6714
|
+
/* @__PURE__ */ jsxRuntime.jsxs("p", { className: "text-xs text-slate-500 dark:text-slate-400", children: [
|
|
6703
6715
|
selectedIds.length,
|
|
6704
6716
|
" ",
|
|
6705
6717
|
selectedLabel
|
|
@@ -6714,13 +6726,13 @@ function ChipPicker({
|
|
|
6714
6726
|
children: selectAllLabel
|
|
6715
6727
|
}
|
|
6716
6728
|
),
|
|
6717
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-
|
|
6729
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-slate-400 dark:text-slate-500", children: "|" }),
|
|
6718
6730
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
6719
6731
|
"button",
|
|
6720
6732
|
{
|
|
6721
6733
|
type: "button",
|
|
6722
6734
|
onClick: clearAll,
|
|
6723
|
-
className: "text-xs text-
|
|
6735
|
+
className: "text-xs text-slate-500 dark:text-slate-400 hover:text-slate-700 dark:hover:text-slate-200 focus:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500/70 focus-visible:rounded",
|
|
6724
6736
|
children: clearLabel
|
|
6725
6737
|
}
|
|
6726
6738
|
)
|
|
@@ -6739,7 +6751,15 @@ function ChipPicker({
|
|
|
6739
6751
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
6740
6752
|
"span",
|
|
6741
6753
|
{
|
|
6742
|
-
|
|
6754
|
+
style: {
|
|
6755
|
+
// Crystal chrome — same recipe as Badge / StatusBadge /
|
|
6756
|
+
// ActiveFilterChips. Keeps every chip-shaped primitive
|
|
6757
|
+
// visually identical (translucent jewel, not flat tile).
|
|
6758
|
+
backdropFilter: "blur(12px) saturate(1.5)",
|
|
6759
|
+
WebkitBackdropFilter: "blur(12px) saturate(1.5)",
|
|
6760
|
+
boxShadow: "inset 0 1px 1.5px rgba(255,255,255,0.45), 0 1px 3px -1px rgba(15,23,42,0.12)"
|
|
6761
|
+
},
|
|
6762
|
+
className: `inline-flex items-center gap-1.5 rounded-full border text-xs font-medium transition ${isSelected ? `${style.bg} ${style.text} border-current/30 ring-2 ring-offset-1 ring-current` : "liquid-surface text-slate-700 hover:bg-white/55 dark:text-slate-200 dark:hover:bg-white/[0.10]"}`,
|
|
6743
6763
|
children: [
|
|
6744
6764
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
6745
6765
|
"label",
|
|
@@ -6776,7 +6796,7 @@ function ChipPicker({
|
|
|
6776
6796
|
item.id
|
|
6777
6797
|
);
|
|
6778
6798
|
}),
|
|
6779
|
-
allowCustom && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "inline-flex items-center gap-1 rounded-full border border-dashed border-slate-
|
|
6799
|
+
allowCustom && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "inline-flex items-center gap-1 rounded-full border border-dashed border-slate-400/50 bg-white/45 px-2 py-1 text-xs backdrop-blur-md dark:border-white/20 dark:bg-white/[0.06]", children: [
|
|
6780
6800
|
/* @__PURE__ */ jsxRuntime.jsx(HeroIcons.PlusIcon, { className: "h-3 w-3 text-slate-500 dark:text-slate-400", "aria-hidden": "true" }),
|
|
6781
6801
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
6782
6802
|
"input",
|
|
@@ -6796,7 +6816,7 @@ function ChipPicker({
|
|
|
6796
6816
|
]
|
|
6797
6817
|
}
|
|
6798
6818
|
),
|
|
6799
|
-
items.length === 0 && !allowCustom && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "p-6 text-center text-sm text-
|
|
6819
|
+
items.length === 0 && !allowCustom && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "p-6 text-center text-sm text-slate-500 dark:text-slate-400", children: emptyLabel })
|
|
6800
6820
|
] });
|
|
6801
6821
|
}
|
|
6802
6822
|
var DEFAULT_COPYABLE_CLASSNAME = "liquid-surface-strong text-gray-500 dark:text-gray-400";
|
|
@@ -8603,7 +8623,7 @@ function CardGridSkeleton({ count = 8, columns = 4 }) {
|
|
|
8603
8623
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: `grid ${gridCols[columns]} gap-3`, role: "status", "aria-label": "Loading content", children: Array.from({ length: count }).map((_, i) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
8604
8624
|
"div",
|
|
8605
8625
|
{
|
|
8606
|
-
className: "rounded-xl
|
|
8626
|
+
className: "liquid-surface rounded-xl p-4",
|
|
8607
8627
|
children: [
|
|
8608
8628
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-start gap-3 mb-3", children: [
|
|
8609
8629
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "shimmer h-8 w-12 rounded" }),
|
|
@@ -8616,7 +8636,7 @@ function CardGridSkeleton({ count = 8, columns = 4 }) {
|
|
|
8616
8636
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "shimmer h-5 w-5 rounded-full" }),
|
|
8617
8637
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "shimmer h-4 w-20 rounded" })
|
|
8618
8638
|
] }),
|
|
8619
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "pt-3 border-t
|
|
8639
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "pt-3 border-t liquid-divider", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "shimmer h-3 w-32 rounded" }) })
|
|
8620
8640
|
]
|
|
8621
8641
|
},
|
|
8622
8642
|
i
|
|
@@ -8626,7 +8646,7 @@ function RegionFilterSkeleton({ count = 9 }) {
|
|
|
8626
8646
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-4 sm:grid-cols-6 lg:grid-cols-9 gap-2", children: Array.from({ length: count }).map((_, i) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
8627
8647
|
"div",
|
|
8628
8648
|
{
|
|
8629
|
-
className: "rounded-lg
|
|
8649
|
+
className: "liquid-surface rounded-lg p-2 flex flex-col items-center gap-1",
|
|
8630
8650
|
children: [
|
|
8631
8651
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "shimmer h-6 w-9 rounded" }),
|
|
8632
8652
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "shimmer h-4 w-6 rounded" }),
|
|
@@ -8640,7 +8660,7 @@ function BrandFilterSkeleton({ count = 4 }) {
|
|
|
8640
8660
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid gap-3 grid-cols-2 sm:grid-cols-3 lg:grid-cols-4", children: Array.from({ length: count }).map((_, i) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
8641
8661
|
"div",
|
|
8642
8662
|
{
|
|
8643
|
-
className: "rounded-xl
|
|
8663
|
+
className: "liquid-surface rounded-xl p-3 flex items-center gap-3",
|
|
8644
8664
|
children: [
|
|
8645
8665
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "shimmer h-10 w-10 rounded-lg" }),
|
|
8646
8666
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex-1 space-y-2", children: [
|
|
@@ -8658,9 +8678,9 @@ function AnalysisSkeleton() {
|
|
|
8658
8678
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "shimmer h-7 w-48 rounded" }),
|
|
8659
8679
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "shimmer h-4 w-96 rounded" })
|
|
8660
8680
|
] }),
|
|
8661
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-xl
|
|
8681
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "liquid-surface rounded-xl p-6 space-y-4", children: [
|
|
8662
8682
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center gap-2", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "shimmer h-10 w-32 rounded-lg" }) }),
|
|
8663
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-3", children: Array.from({ length: 3 }).map((_, i) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "rounded-lg border border-
|
|
8683
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-3", children: Array.from({ length: 3 }).map((_, i) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "rounded-lg border border-white/30 dark:border-white/10 p-4 bg-white/40 dark:bg-white/[0.04] backdrop-blur-sm", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-3", children: [
|
|
8664
8684
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "shimmer h-8 w-8 rounded-lg" }),
|
|
8665
8685
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex-1 space-y-2", children: [
|
|
8666
8686
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "shimmer h-4 w-24 rounded" }),
|
|
@@ -8676,8 +8696,8 @@ function AnalysisSkeleton() {
|
|
|
8676
8696
|
}
|
|
8677
8697
|
|
|
8678
8698
|
// src/components/skeletons/shimmer.tsx
|
|
8679
|
-
var shimmerClass = "bg-gradient-to-r from-
|
|
8680
|
-
var shimmerWhiteClass = "bg-white/
|
|
8699
|
+
var shimmerClass = "bg-gradient-to-r from-slate-500/12 via-slate-500/24 to-slate-500/12 dark:from-white/8 dark:via-white/14 dark:to-white/8 animate-shimmer motion-reduce:animate-none bg-[length:200%_100%]";
|
|
8700
|
+
var shimmerWhiteClass = "bg-white/25 dark:bg-white/15 animate-pulse motion-reduce:animate-none backdrop-blur-sm";
|
|
8681
8701
|
function SectionHeaderSkeleton() {
|
|
8682
8702
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-3", children: [
|
|
8683
8703
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: `h-10 w-10 rounded-lg ${shimmerClass}` }),
|
|
@@ -9433,16 +9453,28 @@ var APP_COLORS = {
|
|
|
9433
9453
|
astrlabe: "bg-sky-500/30 text-sky-100 ring-sky-400/30",
|
|
9434
9454
|
windsock: "bg-indigo-500/30 text-indigo-100 ring-indigo-400/30"
|
|
9435
9455
|
};
|
|
9456
|
+
function readEnv(key) {
|
|
9457
|
+
try {
|
|
9458
|
+
const viteEnv = undefined;
|
|
9459
|
+
if (viteEnv && viteEnv[key]) return viteEnv[key];
|
|
9460
|
+
} catch {
|
|
9461
|
+
}
|
|
9462
|
+
if (typeof process !== "undefined" && process.env) {
|
|
9463
|
+
return process.env[key];
|
|
9464
|
+
}
|
|
9465
|
+
return void 0;
|
|
9466
|
+
}
|
|
9436
9467
|
function detectApp() {
|
|
9437
|
-
const appName =
|
|
9468
|
+
const appName = readEnv("VITE_APP_NAME") ?? readEnv("NEXT_PUBLIC_APP_NAME") ?? readEnv("NEXT_PUBLIC_AUTH_CLIENT_ID") ?? "unknown";
|
|
9438
9469
|
const port = typeof window !== "undefined" ? window.location.port : "";
|
|
9439
|
-
const gateway =
|
|
9470
|
+
const gateway = readEnv("VITE_API_URL") ?? readEnv("NEXT_PUBLIC_API_GATEWAY_URL") ?? readEnv("NEXT_PUBLIC_LAMBDA_CLIENT_BASE") ?? "";
|
|
9440
9471
|
return { name: appName, port, gateway };
|
|
9441
9472
|
}
|
|
9442
9473
|
function DevModeBanner({
|
|
9443
9474
|
user,
|
|
9444
9475
|
devModeLabel = "DEV",
|
|
9445
|
-
devModeMessage = "Local development mode"
|
|
9476
|
+
devModeMessage = "Local development mode",
|
|
9477
|
+
forceShow = false
|
|
9446
9478
|
}) {
|
|
9447
9479
|
const [glassTest, setGlassTest] = React9.useState(false);
|
|
9448
9480
|
const toggleGlassTest = React9.useCallback(() => {
|
|
@@ -9451,7 +9483,7 @@ function DevModeBanner({
|
|
|
9451
9483
|
html.classList.toggle("glass-test", next);
|
|
9452
9484
|
setGlassTest(next);
|
|
9453
9485
|
}, [glassTest]);
|
|
9454
|
-
if (
|
|
9486
|
+
if (!forceShow && readEnv("VITE_DEV_MODE") !== "true" && readEnv("NEXT_PUBLIC_DEV_MODE") !== "true") {
|
|
9455
9487
|
return null;
|
|
9456
9488
|
}
|
|
9457
9489
|
const app = detectApp();
|
|
@@ -9640,24 +9672,25 @@ function FlyoutQuickActions({
|
|
|
9640
9672
|
onClose?.();
|
|
9641
9673
|
action();
|
|
9642
9674
|
};
|
|
9675
|
+
const tileBase = "liquid-surface m-1 flex items-center justify-center gap-x-2 rounded-xl p-2.5 text-xs font-semibold sm:gap-x-2.5 sm:p-3 sm:text-sm text-slate-900 dark:text-white transition-all duration-200 hover:-translate-y-0.5 hover:shadow-md active:scale-[0.985] focus:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500/70 focus-visible:ring-offset-1";
|
|
9643
9676
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
9644
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mx-3 my-3 h-px bg-gradient-to-r from-transparent via-
|
|
9677
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mx-3 my-3 h-px bg-gradient-to-r from-transparent via-slate-200/80 to-transparent dark:via-white/10" }),
|
|
9645
9678
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-2 gap-1.5 sm:gap-2 px-1", children: [
|
|
9646
9679
|
onNotifications ? /* @__PURE__ */ jsxRuntime.jsxs(
|
|
9647
9680
|
"button",
|
|
9648
9681
|
{
|
|
9649
9682
|
type: "button",
|
|
9650
9683
|
onClick: () => handleAction(onNotifications),
|
|
9651
|
-
className:
|
|
9684
|
+
className: tileBase,
|
|
9652
9685
|
children: [
|
|
9653
|
-
/* @__PURE__ */ jsxRuntime.jsx(HeroIcons.BellIcon, { className: "size-5 flex-none text-slate-
|
|
9686
|
+
/* @__PURE__ */ jsxRuntime.jsx(HeroIcons.BellIcon, { className: "size-5 flex-none text-slate-500 dark:text-slate-300" }),
|
|
9654
9687
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "truncate", children: t("notifications") }),
|
|
9655
9688
|
notificationCount > 0 && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "inline-flex min-w-[18px] items-center justify-center rounded-full bg-red-500 px-1 text-[10px] font-semibold text-white", children: notificationCount > 99 ? "99+" : notificationCount })
|
|
9656
9689
|
]
|
|
9657
9690
|
}
|
|
9658
9691
|
) : null,
|
|
9659
9692
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "liquid-surface m-1 flex items-center justify-center gap-x-2 rounded-xl p-2.5 text-xs font-semibold sm:gap-x-2.5 sm:p-3 sm:text-sm text-slate-900 dark:text-white", children: [
|
|
9660
|
-
isDark ? /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.MoonIcon, { className: "size-5 flex-none text-slate-
|
|
9693
|
+
isDark ? /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.MoonIcon, { className: "size-5 flex-none text-slate-500 dark:text-slate-300" }) : /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.SunIcon, { className: "size-5 flex-none text-slate-500 dark:text-slate-300" }),
|
|
9661
9694
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "truncate", children: t("theme") }),
|
|
9662
9695
|
/* @__PURE__ */ jsxRuntime.jsx(ThemeSwitch, { checked: isDark, onChange: onToggleTheme, label: t("theme") })
|
|
9663
9696
|
] }),
|
|
@@ -9666,9 +9699,9 @@ function FlyoutQuickActions({
|
|
|
9666
9699
|
{
|
|
9667
9700
|
type: "button",
|
|
9668
9701
|
onClick: () => handleAction(onProfile),
|
|
9669
|
-
className:
|
|
9702
|
+
className: tileBase,
|
|
9670
9703
|
children: [
|
|
9671
|
-
userInitial ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "inline-flex h-5 w-5 items-center justify-center rounded-full bg-slate-
|
|
9704
|
+
userInitial ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "inline-flex h-5 w-5 items-center justify-center rounded-full bg-slate-500/15 text-[10px] font-semibold text-slate-700 dark:bg-white/15 dark:text-slate-100", children: userInitial }) : /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.UserCircleIcon, { className: "size-5 flex-none text-slate-500 dark:text-slate-300" }),
|
|
9672
9705
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "truncate", children: userName || t("profile") })
|
|
9673
9706
|
]
|
|
9674
9707
|
}
|
|
@@ -9678,9 +9711,9 @@ function FlyoutQuickActions({
|
|
|
9678
9711
|
{
|
|
9679
9712
|
type: "button",
|
|
9680
9713
|
onClick: () => handleAction(onSignOut),
|
|
9681
|
-
className: "liquid-button liquid-button-red m-1 flex items-center justify-center gap-x-2 rounded-xl p-2.5 text-xs font-semibold sm:gap-x-2.5 sm:p-3 sm:text-sm text-red-
|
|
9714
|
+
className: "liquid-button liquid-button-red m-1 flex items-center justify-center gap-x-2 rounded-xl p-2.5 text-xs font-semibold sm:gap-x-2.5 sm:p-3 sm:text-sm text-red-700 dark:text-red-300 transition-all duration-200 hover:-translate-y-0.5 hover:shadow-md active:scale-[0.985] focus:outline-none focus-visible:ring-2 focus-visible:ring-red-500/70 focus-visible:ring-offset-1",
|
|
9682
9715
|
children: [
|
|
9683
|
-
/* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ArrowRightOnRectangleIcon, { className: "size-5 flex-none text-
|
|
9716
|
+
/* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ArrowRightOnRectangleIcon, { className: "size-5 flex-none text-red-600/70 dark:text-red-300/80" }),
|
|
9684
9717
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "truncate", children: t("signOut") })
|
|
9685
9718
|
]
|
|
9686
9719
|
}
|
|
@@ -9727,7 +9760,7 @@ function FlyoutNavGrid({
|
|
|
9727
9760
|
{
|
|
9728
9761
|
type: "button",
|
|
9729
9762
|
onClick: () => item.onClick ? item.onClick() : onNavigate(item.href),
|
|
9730
|
-
className: `group relative flex w-full items-start gap-x-3 sm:gap-x-4 rounded-xl sm:rounded-2xl p-2.5 sm:p-3 text-left transition ${isSelected ? "selected liquid-surface liquid-surface-active" : `liquid-surface hover:shadow-md ${item.hoverClass ?? ""}`}`,
|
|
9763
|
+
className: `group relative flex w-full items-start gap-x-3 sm:gap-x-4 rounded-xl sm:rounded-2xl p-2.5 sm:p-3 text-left transition-all duration-200 focus:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500/70 focus-visible:ring-offset-1 active:scale-[0.985] ${isSelected ? "selected liquid-surface liquid-surface-active shadow-md" : `liquid-surface hover:-translate-y-0.5 hover:shadow-md ${item.hoverClass ?? ""}`}`,
|
|
9731
9764
|
style: isSelected && getAccentRgb ? { "--glass-accent": getAccentRgb(item.href) } : void 0,
|
|
9732
9765
|
children: [
|
|
9733
9766
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative mt-0.5 flex h-11 w-11 sm:h-14 sm:w-14 flex-none items-center justify-center overflow-hidden rounded-xl sm:rounded-2xl border border-white/40 bg-white/35 shadow-[inset_0_1px_0_rgba(255,255,255,0.85),0_12px_20px_-14px_rgba(15,23,42,0.55)] dark:border-white/14 dark:bg-white/10 dark:shadow-[inset_0_1px_0_rgba(255,255,255,0.2),0_12px_22px_-16px_rgba(0,0,0,0.8)]", children: [
|
|
@@ -19545,7 +19578,11 @@ var usePlatformShellStore = zustand.create((set, get) => ({
|
|
|
19545
19578
|
locale: "en",
|
|
19546
19579
|
theme: "system",
|
|
19547
19580
|
resolvedTheme: "dark",
|
|
19548
|
-
|
|
19581
|
+
// Canonical default — floating iOS-style dock at the bottom of
|
|
19582
|
+
// the viewport for non-launchpad / "standard content" pages.
|
|
19583
|
+
// User preference (`Settings → Preferences → Dock position`)
|
|
19584
|
+
// overrides per-user once set.
|
|
19585
|
+
dockPosition: "bottom",
|
|
19549
19586
|
dockAutoHide: false,
|
|
19550
19587
|
dockEnabled: true
|
|
19551
19588
|
},
|
|
@@ -19613,7 +19650,13 @@ function PlatformShell({
|
|
|
19613
19650
|
user,
|
|
19614
19651
|
authStatus,
|
|
19615
19652
|
onSignOut,
|
|
19616
|
-
|
|
19653
|
+
// `bottom` is the canonical default for "standard content" pages
|
|
19654
|
+
// (every non-launchpad route) — the dock floats at the bottom of
|
|
19655
|
+
// the viewport like an iOS home dock. User preference (`Settings →
|
|
19656
|
+
// Preferences → Dock position`) can override per-user; the
|
|
19657
|
+
// PlatformShell store also defaults to `bottom` to keep first-time
|
|
19658
|
+
// users on the canonical layout.
|
|
19659
|
+
dockPosition = "bottom",
|
|
19617
19660
|
dockAutoHide = false,
|
|
19618
19661
|
dockEnabled = true,
|
|
19619
19662
|
resolvedTheme,
|
|
@@ -20759,5 +20802,5 @@ exports.useSocialProviders = useSocialProviders;
|
|
|
20759
20802
|
exports.validateDashboardSpec = validateDashboardSpec;
|
|
20760
20803
|
exports.xScale = xScale;
|
|
20761
20804
|
exports.yScale = yScale;
|
|
20762
|
-
//# sourceMappingURL=chunk-
|
|
20763
|
-
//# sourceMappingURL=chunk-
|
|
20805
|
+
//# sourceMappingURL=chunk-ULKZGM2T.js.map
|
|
20806
|
+
//# sourceMappingURL=chunk-ULKZGM2T.js.map
|