@almadar/ui 2.24.4 → 2.24.8
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/avl/index.cjs +43 -43
- package/dist/avl/index.js +43 -43
- package/dist/components/index.cjs +996 -930
- package/dist/components/index.js +996 -930
- package/dist/components/organisms/debug/RuntimeDebugger.d.ts +2 -2
- package/dist/components/organisms/game/three/index.cjs +41 -41
- package/dist/components/organisms/game/three/index.js +41 -41
- package/dist/docs/index.cjs +144 -141
- package/dist/docs/index.js +144 -141
- package/dist/illustrations/index.cjs +17 -17
- package/dist/illustrations/index.js +17 -17
- package/dist/lib/index.cjs +62 -50
- package/dist/lib/index.js +62 -50
- package/dist/marketing/index.cjs +169 -166
- package/dist/marketing/index.js +169 -166
- package/dist/providers/index.cjs +221 -205
- package/dist/providers/index.js +221 -205
- package/dist/runtime/index.cjs +979 -881
- package/dist/runtime/index.js +979 -881
- package/package.json +1 -1
- package/tailwind-preset.cjs +32 -134
package/dist/providers/index.cjs
CHANGED
|
@@ -387,8 +387,8 @@ function EventBusProvider({ children, debug: debug2 = false }) {
|
|
|
387
387
|
payload,
|
|
388
388
|
timestamp: Date.now()
|
|
389
389
|
};
|
|
390
|
-
const
|
|
391
|
-
const listenerCount =
|
|
390
|
+
const listeners6 = listenersRef.current.get(type);
|
|
391
|
+
const listenerCount = listeners6?.size ?? 0;
|
|
392
392
|
if (debug2) {
|
|
393
393
|
if (listenerCount > 0) {
|
|
394
394
|
console.log(`[EventBus] Emit: ${type} \u2192 ${listenerCount} listener(s)`, payload);
|
|
@@ -396,8 +396,8 @@ function EventBusProvider({ children, debug: debug2 = false }) {
|
|
|
396
396
|
console.warn(`[EventBus] Emit: ${type} (NO LISTENERS - event may be lost!)`, payload);
|
|
397
397
|
}
|
|
398
398
|
}
|
|
399
|
-
if (
|
|
400
|
-
const listenersCopy = Array.from(
|
|
399
|
+
if (listeners6) {
|
|
400
|
+
const listenersCopy = Array.from(listeners6);
|
|
401
401
|
for (const listener of listenersCopy) {
|
|
402
402
|
try {
|
|
403
403
|
listener(event);
|
|
@@ -419,17 +419,17 @@ function EventBusProvider({ children, debug: debug2 = false }) {
|
|
|
419
419
|
if (!listenersRef.current.has(type)) {
|
|
420
420
|
listenersRef.current.set(type, /* @__PURE__ */ new Set());
|
|
421
421
|
}
|
|
422
|
-
const
|
|
423
|
-
|
|
422
|
+
const listeners6 = listenersRef.current.get(type);
|
|
423
|
+
listeners6.add(listener);
|
|
424
424
|
if (debug2) {
|
|
425
|
-
console.log(`[EventBus] Subscribed to '${type}', total: ${
|
|
425
|
+
console.log(`[EventBus] Subscribed to '${type}', total: ${listeners6.size}`);
|
|
426
426
|
}
|
|
427
427
|
return () => {
|
|
428
|
-
|
|
428
|
+
listeners6.delete(listener);
|
|
429
429
|
if (debug2) {
|
|
430
|
-
console.log(`[EventBus] Unsubscribed from '${type}', remaining: ${
|
|
430
|
+
console.log(`[EventBus] Unsubscribed from '${type}', remaining: ${listeners6.size}`);
|
|
431
431
|
}
|
|
432
|
-
if (
|
|
432
|
+
if (listeners6.size === 0) {
|
|
433
433
|
listenersRef.current.delete(type);
|
|
434
434
|
}
|
|
435
435
|
};
|
|
@@ -442,8 +442,8 @@ function EventBusProvider({ children, debug: debug2 = false }) {
|
|
|
442
442
|
return on(type, wrappedListener);
|
|
443
443
|
}, [on]);
|
|
444
444
|
const hasListeners = React110.useCallback((type) => {
|
|
445
|
-
const
|
|
446
|
-
return
|
|
445
|
+
const listeners6 = listenersRef.current.get(type);
|
|
446
|
+
return listeners6 !== void 0 && listeners6.size > 0;
|
|
447
447
|
}, []);
|
|
448
448
|
const onAny = React110.useCallback((listener) => {
|
|
449
449
|
anyListenersRef.current.add(listener);
|
|
@@ -661,28 +661,28 @@ var marginYStyles = {
|
|
|
661
661
|
};
|
|
662
662
|
var bgStyles = {
|
|
663
663
|
transparent: "bg-transparent",
|
|
664
|
-
primary: "bg-
|
|
665
|
-
secondary: "bg-
|
|
666
|
-
muted: "bg-
|
|
667
|
-
accent: "bg-
|
|
668
|
-
surface: "bg-
|
|
669
|
-
overlay: "bg-
|
|
664
|
+
primary: "bg-primary text-primary-foreground",
|
|
665
|
+
secondary: "bg-secondary text-secondary-foreground",
|
|
666
|
+
muted: "bg-muted text-foreground",
|
|
667
|
+
accent: "bg-accent text-accent-foreground",
|
|
668
|
+
surface: "bg-card",
|
|
669
|
+
overlay: "bg-card/80 backdrop-blur-sm"
|
|
670
670
|
};
|
|
671
671
|
var roundedStyles = {
|
|
672
672
|
none: "rounded-none",
|
|
673
|
-
sm: "rounded-
|
|
674
|
-
md: "rounded-
|
|
675
|
-
lg: "rounded-
|
|
676
|
-
xl: "rounded-
|
|
677
|
-
"2xl": "rounded-
|
|
678
|
-
full: "rounded-
|
|
673
|
+
sm: "rounded-sm",
|
|
674
|
+
md: "rounded-md",
|
|
675
|
+
lg: "rounded-lg",
|
|
676
|
+
xl: "rounded-xl",
|
|
677
|
+
"2xl": "rounded-xl",
|
|
678
|
+
full: "rounded-full"
|
|
679
679
|
};
|
|
680
680
|
var shadowStyles = {
|
|
681
681
|
none: "shadow-none",
|
|
682
|
-
sm: "shadow-
|
|
683
|
-
md: "shadow
|
|
684
|
-
lg: "shadow-
|
|
685
|
-
xl: "shadow-
|
|
682
|
+
sm: "shadow-sm",
|
|
683
|
+
md: "shadow",
|
|
684
|
+
lg: "shadow-lg",
|
|
685
|
+
xl: "shadow-lg"
|
|
686
686
|
};
|
|
687
687
|
var displayStyles = {
|
|
688
688
|
block: "block",
|
|
@@ -770,7 +770,7 @@ var Box = React110__namespace.default.forwardRef(
|
|
|
770
770
|
// Background
|
|
771
771
|
bgStyles[bg],
|
|
772
772
|
// Border - uses theme variables
|
|
773
|
-
border && "border-[length:var(--border-width)] border-
|
|
773
|
+
border && "border-[length:var(--border-width)] border-border",
|
|
774
774
|
// Rounded
|
|
775
775
|
roundedStyles[rounded],
|
|
776
776
|
// Shadow
|
|
@@ -799,30 +799,30 @@ var Box = React110__namespace.default.forwardRef(
|
|
|
799
799
|
);
|
|
800
800
|
Box.displayName = "Box";
|
|
801
801
|
var variantStyles = {
|
|
802
|
-
h1: "text-4xl font-bold tracking-tight text-
|
|
803
|
-
h2: "text-3xl font-bold tracking-tight text-
|
|
804
|
-
h3: "text-2xl font-bold text-
|
|
805
|
-
h4: "text-xl font-bold text-
|
|
806
|
-
h5: "text-lg font-bold text-
|
|
807
|
-
h6: "text-base font-bold text-
|
|
808
|
-
heading: "text-2xl font-bold text-
|
|
809
|
-
subheading: "text-lg font-semibold text-
|
|
810
|
-
body1: "text-base font-normal text-
|
|
811
|
-
body2: "text-sm font-normal text-
|
|
812
|
-
body: "text-base font-normal text-
|
|
813
|
-
caption: "text-xs font-normal text-
|
|
814
|
-
overline: "text-xs uppercase tracking-wide font-bold text-
|
|
815
|
-
small: "text-sm font-normal text-
|
|
816
|
-
large: "text-lg font-medium text-
|
|
817
|
-
label: "text-sm font-medium text-
|
|
802
|
+
h1: "text-4xl font-bold tracking-tight text-foreground",
|
|
803
|
+
h2: "text-3xl font-bold tracking-tight text-foreground",
|
|
804
|
+
h3: "text-2xl font-bold text-foreground",
|
|
805
|
+
h4: "text-xl font-bold text-foreground",
|
|
806
|
+
h5: "text-lg font-bold text-foreground",
|
|
807
|
+
h6: "text-base font-bold text-foreground",
|
|
808
|
+
heading: "text-2xl font-bold text-foreground",
|
|
809
|
+
subheading: "text-lg font-semibold text-foreground",
|
|
810
|
+
body1: "text-base font-normal text-foreground",
|
|
811
|
+
body2: "text-sm font-normal text-foreground",
|
|
812
|
+
body: "text-base font-normal text-foreground",
|
|
813
|
+
caption: "text-xs font-normal text-muted-foreground",
|
|
814
|
+
overline: "text-xs uppercase tracking-wide font-bold text-muted-foreground",
|
|
815
|
+
small: "text-sm font-normal text-foreground",
|
|
816
|
+
large: "text-lg font-medium text-foreground",
|
|
817
|
+
label: "text-sm font-medium text-foreground"
|
|
818
818
|
};
|
|
819
819
|
var colorStyles = {
|
|
820
|
-
primary: "text-
|
|
821
|
-
secondary: "text-
|
|
822
|
-
muted: "text-
|
|
823
|
-
error: "text-
|
|
824
|
-
success: "text-
|
|
825
|
-
warning: "text-
|
|
820
|
+
primary: "text-foreground",
|
|
821
|
+
secondary: "text-muted-foreground",
|
|
822
|
+
muted: "text-muted-foreground",
|
|
823
|
+
error: "text-error",
|
|
824
|
+
success: "text-success",
|
|
825
|
+
warning: "text-warning",
|
|
826
826
|
inherit: "text-inherit"
|
|
827
827
|
};
|
|
828
828
|
var weightStyles = {
|
|
@@ -907,49 +907,49 @@ var Typography = ({
|
|
|
907
907
|
Typography.displayName = "Typography";
|
|
908
908
|
var variantStyles2 = {
|
|
909
909
|
primary: [
|
|
910
|
-
"bg-
|
|
911
|
-
"border-
|
|
912
|
-
"shadow-
|
|
913
|
-
"hover:bg-
|
|
914
|
-
"active:scale-[var(--active-scale)] active:shadow-
|
|
910
|
+
"bg-primary text-primary-foreground",
|
|
911
|
+
"border-none",
|
|
912
|
+
"shadow-sm",
|
|
913
|
+
"hover:bg-primary-hover hover:shadow-lg",
|
|
914
|
+
"active:scale-[var(--active-scale)] active:shadow-sm"
|
|
915
915
|
].join(" "),
|
|
916
916
|
secondary: [
|
|
917
|
-
"bg-transparent text-
|
|
918
|
-
"border
|
|
919
|
-
"hover:bg-
|
|
917
|
+
"bg-transparent text-accent",
|
|
918
|
+
"border border-accent",
|
|
919
|
+
"hover:bg-accent hover:text-white hover:border-accent",
|
|
920
920
|
"active:scale-[var(--active-scale)]"
|
|
921
921
|
].join(" "),
|
|
922
922
|
ghost: [
|
|
923
|
-
"bg-transparent text-
|
|
924
|
-
"hover:text-
|
|
923
|
+
"bg-transparent text-muted-foreground",
|
|
924
|
+
"hover:text-foreground hover:bg-muted",
|
|
925
925
|
"active:scale-[var(--active-scale)]"
|
|
926
926
|
].join(" "),
|
|
927
927
|
danger: [
|
|
928
|
-
"bg-
|
|
929
|
-
"border-[length:var(--border-width)] border-
|
|
930
|
-
"shadow-
|
|
931
|
-
"hover:bg-
|
|
932
|
-
"active:scale-[var(--active-scale)] active:shadow-
|
|
928
|
+
"bg-surface text-error",
|
|
929
|
+
"border-[length:var(--border-width)] border-error",
|
|
930
|
+
"shadow-sm",
|
|
931
|
+
"hover:bg-error hover:text-error-foreground hover:shadow-lg",
|
|
932
|
+
"active:scale-[var(--active-scale)] active:shadow-sm"
|
|
933
933
|
].join(" "),
|
|
934
934
|
success: [
|
|
935
|
-
"bg-
|
|
936
|
-
"border-[length:var(--border-width)] border-
|
|
937
|
-
"shadow-
|
|
938
|
-
"hover:bg-
|
|
939
|
-
"active:scale-[var(--active-scale)] active:shadow-
|
|
935
|
+
"bg-surface text-success",
|
|
936
|
+
"border-[length:var(--border-width)] border-success",
|
|
937
|
+
"shadow-sm",
|
|
938
|
+
"hover:bg-success hover:text-success-foreground hover:shadow-lg",
|
|
939
|
+
"active:scale-[var(--active-scale)] active:shadow-sm"
|
|
940
940
|
].join(" "),
|
|
941
941
|
warning: [
|
|
942
|
-
"bg-
|
|
943
|
-
"border-[length:var(--border-width)] border-
|
|
944
|
-
"shadow-
|
|
945
|
-
"hover:bg-
|
|
946
|
-
"active:scale-[var(--active-scale)] active:shadow-
|
|
942
|
+
"bg-surface text-warning",
|
|
943
|
+
"border-[length:var(--border-width)] border-warning",
|
|
944
|
+
"shadow-sm",
|
|
945
|
+
"hover:bg-warning hover:text-warning-foreground hover:shadow-lg",
|
|
946
|
+
"active:scale-[var(--active-scale)] active:shadow-sm"
|
|
947
947
|
].join(" "),
|
|
948
948
|
// "default" is an alias for secondary
|
|
949
949
|
default: [
|
|
950
|
-
"bg-
|
|
951
|
-
"border-[length:var(--border-width-thin)] border-
|
|
952
|
-
"hover:bg-
|
|
950
|
+
"bg-secondary text-secondary-foreground",
|
|
951
|
+
"border-[length:var(--border-width-thin)] border-border",
|
|
952
|
+
"hover:bg-secondary-hover",
|
|
953
953
|
"active:scale-[var(--active-scale)]"
|
|
954
954
|
].join(" ")
|
|
955
955
|
};
|
|
@@ -1020,9 +1020,10 @@ var Button = React110__namespace.default.forwardRef(
|
|
|
1020
1020
|
className: cn(
|
|
1021
1021
|
"inline-flex items-center justify-center gap-2",
|
|
1022
1022
|
"font-[var(--font-weight-medium)]",
|
|
1023
|
-
"rounded-
|
|
1023
|
+
"rounded-sm",
|
|
1024
|
+
"cursor-pointer",
|
|
1024
1025
|
"transition-all duration-[var(--transition-normal)]",
|
|
1025
|
-
"focus:outline-none focus:ring-[length:var(--focus-ring-width)] focus:ring-
|
|
1026
|
+
"focus:outline-none focus:ring-[length:var(--focus-ring-width)] focus:ring-ring focus:ring-offset-[length:var(--focus-ring-offset)]",
|
|
1026
1027
|
"disabled:opacity-50 disabled:cursor-not-allowed",
|
|
1027
1028
|
variantStyles2[variant],
|
|
1028
1029
|
sizeStyles2[size],
|
|
@@ -1043,34 +1044,34 @@ var Button = React110__namespace.default.forwardRef(
|
|
|
1043
1044
|
Button.displayName = "Button";
|
|
1044
1045
|
var variantStyles3 = {
|
|
1045
1046
|
default: [
|
|
1046
|
-
"bg-
|
|
1047
|
-
"border-[length:var(--border-width-thin)] border-
|
|
1047
|
+
"bg-muted text-foreground",
|
|
1048
|
+
"border-[length:var(--border-width-thin)] border-border"
|
|
1048
1049
|
].join(" "),
|
|
1049
|
-
primary: "bg-
|
|
1050
|
-
secondary: "bg-
|
|
1050
|
+
primary: "bg-primary text-primary-foreground",
|
|
1051
|
+
secondary: "bg-secondary text-secondary-foreground",
|
|
1051
1052
|
success: [
|
|
1052
|
-
"bg-
|
|
1053
|
-
"border-[length:var(--border-width)] border-
|
|
1053
|
+
"bg-surface text-success",
|
|
1054
|
+
"border-[length:var(--border-width)] border-success"
|
|
1054
1055
|
].join(" "),
|
|
1055
1056
|
warning: [
|
|
1056
|
-
"bg-
|
|
1057
|
-
"border-[length:var(--border-width)] border-
|
|
1057
|
+
"bg-surface text-warning",
|
|
1058
|
+
"border-[length:var(--border-width)] border-warning"
|
|
1058
1059
|
].join(" "),
|
|
1059
1060
|
danger: [
|
|
1060
|
-
"bg-
|
|
1061
|
-
"border-[length:var(--border-width)] border-
|
|
1061
|
+
"bg-surface text-error",
|
|
1062
|
+
"border-[length:var(--border-width)] border-error"
|
|
1062
1063
|
].join(" "),
|
|
1063
1064
|
error: [
|
|
1064
|
-
"bg-
|
|
1065
|
-
"border-[length:var(--border-width)] border-
|
|
1065
|
+
"bg-surface text-error",
|
|
1066
|
+
"border-[length:var(--border-width)] border-error"
|
|
1066
1067
|
].join(" "),
|
|
1067
1068
|
info: [
|
|
1068
|
-
"bg-
|
|
1069
|
-
"border-[length:var(--border-width)] border-
|
|
1069
|
+
"bg-surface text-info",
|
|
1070
|
+
"border-[length:var(--border-width)] border-info"
|
|
1070
1071
|
].join(" "),
|
|
1071
1072
|
neutral: [
|
|
1072
|
-
"bg-
|
|
1073
|
-
"border-[length:var(--border-width-thin)] border-
|
|
1073
|
+
"bg-muted text-muted-foreground",
|
|
1074
|
+
"border-[length:var(--border-width-thin)] border-border"
|
|
1074
1075
|
].join(" ")
|
|
1075
1076
|
};
|
|
1076
1077
|
var sizeStyles3 = {
|
|
@@ -1090,7 +1091,7 @@ var Badge = React110__namespace.default.forwardRef(
|
|
|
1090
1091
|
{
|
|
1091
1092
|
ref,
|
|
1092
1093
|
className: cn(
|
|
1093
|
-
"inline-flex items-center gap-1 font-bold rounded-
|
|
1094
|
+
"inline-flex items-center gap-1 font-bold rounded-sm",
|
|
1094
1095
|
variantStyles3[variant],
|
|
1095
1096
|
sizeStyles3[size],
|
|
1096
1097
|
className
|
|
@@ -1126,21 +1127,21 @@ var Input = React110__namespace.default.forwardRef(
|
|
|
1126
1127
|
const resolvedLeftIcon = leftIcon || IconComponent && /* @__PURE__ */ jsxRuntime.jsx(IconComponent, { className: "h-4 w-4" });
|
|
1127
1128
|
const showClearButton = clearable && value && String(value).length > 0;
|
|
1128
1129
|
const baseClassName = cn(
|
|
1129
|
-
"block w-full rounded-
|
|
1130
|
-
"border-[length:var(--border-width-thin)] border-
|
|
1130
|
+
"block w-full rounded-sm transition-all duration-[var(--transition-fast)]",
|
|
1131
|
+
"border-[length:var(--border-width-thin)] border-border",
|
|
1131
1132
|
"px-3 py-2 text-sm",
|
|
1132
|
-
"bg-
|
|
1133
|
-
"text-
|
|
1134
|
-
"focus:outline-none focus:ring-1 focus:ring-
|
|
1135
|
-
"disabled:opacity-50 disabled:cursor-not-allowed disabled:bg-
|
|
1136
|
-
error ? "border-
|
|
1133
|
+
"bg-card hover:bg-muted focus:bg-card",
|
|
1134
|
+
"text-foreground placeholder:text-muted-foreground",
|
|
1135
|
+
"focus:outline-none focus:ring-1 focus:ring-ring focus:border-ring",
|
|
1136
|
+
"disabled:opacity-50 disabled:cursor-not-allowed disabled:bg-muted",
|
|
1137
|
+
error ? "border-error focus:border-error focus:ring-error" : "",
|
|
1137
1138
|
resolvedLeftIcon && "pl-10",
|
|
1138
1139
|
(rightIcon || showClearButton) && "pr-10",
|
|
1139
1140
|
className
|
|
1140
1141
|
);
|
|
1141
1142
|
if (type === "select") {
|
|
1142
1143
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative", children: [
|
|
1143
|
-
resolvedLeftIcon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none text-
|
|
1144
|
+
resolvedLeftIcon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none text-muted-foreground", children: resolvedLeftIcon }),
|
|
1144
1145
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1145
1146
|
"select",
|
|
1146
1147
|
{
|
|
@@ -1155,7 +1156,7 @@ var Input = React110__namespace.default.forwardRef(
|
|
|
1155
1156
|
]
|
|
1156
1157
|
}
|
|
1157
1158
|
),
|
|
1158
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-y-0 right-0 pr-3 flex items-center pointer-events-none text-
|
|
1159
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-y-0 right-0 pr-3 flex items-center pointer-events-none text-muted-foreground", children: /* @__PURE__ */ jsxRuntime.jsx(LucideIcons.ChevronDown, { className: "h-4 w-4" }) })
|
|
1159
1160
|
] });
|
|
1160
1161
|
}
|
|
1161
1162
|
if (type === "textarea") {
|
|
@@ -1180,9 +1181,9 @@ var Input = React110__namespace.default.forwardRef(
|
|
|
1180
1181
|
checked: props.checked,
|
|
1181
1182
|
onChange,
|
|
1182
1183
|
className: cn(
|
|
1183
|
-
"h-4 w-4 rounded-
|
|
1184
|
-
"border-
|
|
1185
|
-
"text-
|
|
1184
|
+
"h-4 w-4 rounded-sm",
|
|
1185
|
+
"border-border",
|
|
1186
|
+
"text-primary focus:ring-ring",
|
|
1186
1187
|
"disabled:opacity-50 disabled:cursor-not-allowed",
|
|
1187
1188
|
className
|
|
1188
1189
|
),
|
|
@@ -1191,7 +1192,7 @@ var Input = React110__namespace.default.forwardRef(
|
|
|
1191
1192
|
);
|
|
1192
1193
|
}
|
|
1193
1194
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative", children: [
|
|
1194
|
-
resolvedLeftIcon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none text-
|
|
1195
|
+
resolvedLeftIcon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none text-muted-foreground", children: resolvedLeftIcon }),
|
|
1195
1196
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1196
1197
|
"input",
|
|
1197
1198
|
{
|
|
@@ -1208,11 +1209,11 @@ var Input = React110__namespace.default.forwardRef(
|
|
|
1208
1209
|
{
|
|
1209
1210
|
type: "button",
|
|
1210
1211
|
onClick: onClear,
|
|
1211
|
-
className: "absolute inset-y-0 right-0 pr-3 flex items-center text-
|
|
1212
|
+
className: "absolute inset-y-0 right-0 pr-3 flex items-center text-muted-foreground hover:text-foreground",
|
|
1212
1213
|
children: /* @__PURE__ */ jsxRuntime.jsx(LucideIcons.X, { className: "h-4 w-4" })
|
|
1213
1214
|
}
|
|
1214
1215
|
),
|
|
1215
|
-
rightIcon && !showClearButton && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-y-0 right-0 pr-3 flex items-center text-
|
|
1216
|
+
rightIcon && !showClearButton && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-y-0 right-0 pr-3 flex items-center text-muted-foreground", children: rightIcon })
|
|
1216
1217
|
] });
|
|
1217
1218
|
}
|
|
1218
1219
|
);
|
|
@@ -1224,13 +1225,13 @@ var Label = React110__namespace.default.forwardRef(
|
|
|
1224
1225
|
{
|
|
1225
1226
|
ref,
|
|
1226
1227
|
className: cn(
|
|
1227
|
-
"block text-sm font-bold text-
|
|
1228
|
+
"block text-sm font-bold text-foreground",
|
|
1228
1229
|
className
|
|
1229
1230
|
),
|
|
1230
1231
|
...props,
|
|
1231
1232
|
children: [
|
|
1232
1233
|
children,
|
|
1233
|
-
required && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-
|
|
1234
|
+
required && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-error ml-1", children: "*" })
|
|
1234
1235
|
]
|
|
1235
1236
|
}
|
|
1236
1237
|
);
|
|
@@ -1244,14 +1245,14 @@ var Textarea = React110__namespace.default.forwardRef(
|
|
|
1244
1245
|
{
|
|
1245
1246
|
ref,
|
|
1246
1247
|
className: cn(
|
|
1247
|
-
"block w-full border-[length:var(--border-width)] shadow-
|
|
1248
|
-
"px-3 py-2 text-sm text-
|
|
1249
|
-
"bg-
|
|
1248
|
+
"block w-full border-[length:var(--border-width)] shadow-sm",
|
|
1249
|
+
"px-3 py-2 text-sm text-foreground",
|
|
1250
|
+
"bg-card",
|
|
1250
1251
|
"placeholder:text-[var(--color-placeholder)]",
|
|
1251
|
-
"focus:outline-none focus:ring-2 focus:ring-offset-0 focus:ring-
|
|
1252
|
-
"disabled:bg-
|
|
1252
|
+
"focus:outline-none focus:ring-2 focus:ring-offset-0 focus:ring-ring",
|
|
1253
|
+
"disabled:bg-muted disabled:text-muted-foreground disabled:cursor-not-allowed",
|
|
1253
1254
|
"resize-y min-h-[80px]",
|
|
1254
|
-
error ? "border-
|
|
1255
|
+
error ? "border-error focus:border-error" : "border-border focus:border-primary",
|
|
1255
1256
|
className
|
|
1256
1257
|
),
|
|
1257
1258
|
...props
|
|
@@ -1268,12 +1269,12 @@ var Select = React110__namespace.default.forwardRef(
|
|
|
1268
1269
|
{
|
|
1269
1270
|
ref,
|
|
1270
1271
|
className: cn(
|
|
1271
|
-
"block w-full border-[length:var(--border-width)] shadow-
|
|
1272
|
-
"px-3 py-2 pr-10 text-sm text-
|
|
1273
|
-
"bg-
|
|
1274
|
-
"focus:outline-none focus:ring-2 focus:ring-offset-0 focus:ring-
|
|
1275
|
-
"disabled:bg-
|
|
1276
|
-
error ? "border-
|
|
1272
|
+
"block w-full border-[length:var(--border-width)] shadow-sm appearance-none",
|
|
1273
|
+
"px-3 py-2 pr-10 text-sm text-foreground font-medium",
|
|
1274
|
+
"bg-card",
|
|
1275
|
+
"focus:outline-none focus:ring-2 focus:ring-offset-0 focus:ring-ring",
|
|
1276
|
+
"disabled:bg-muted disabled:text-muted-foreground disabled:cursor-not-allowed",
|
|
1277
|
+
error ? "border-error focus:border-error" : "border-border focus:border-primary",
|
|
1277
1278
|
className
|
|
1278
1279
|
),
|
|
1279
1280
|
...props,
|
|
@@ -1291,7 +1292,7 @@ var Select = React110__namespace.default.forwardRef(
|
|
|
1291
1292
|
]
|
|
1292
1293
|
}
|
|
1293
1294
|
),
|
|
1294
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-y-0 right-0 pr-3 flex items-center pointer-events-none", children: /* @__PURE__ */ jsxRuntime.jsx(LucideIcons.ChevronDown, { className: "h-4 w-4 text-
|
|
1295
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-y-0 right-0 pr-3 flex items-center pointer-events-none", children: /* @__PURE__ */ jsxRuntime.jsx(LucideIcons.ChevronDown, { className: "h-4 w-4 text-foreground" }) })
|
|
1295
1296
|
] });
|
|
1296
1297
|
}
|
|
1297
1298
|
);
|
|
@@ -1307,9 +1308,9 @@ var Checkbox = React110__namespace.default.forwardRef(
|
|
|
1307
1308
|
type: "checkbox",
|
|
1308
1309
|
id: inputId,
|
|
1309
1310
|
className: cn(
|
|
1310
|
-
"peer h-4 w-4 border-[length:var(--border-width)] border-
|
|
1311
|
-
"accent-
|
|
1312
|
-
"bg-
|
|
1311
|
+
"peer h-4 w-4 border-[length:var(--border-width)] border-border",
|
|
1312
|
+
"accent-primary focus:ring-ring focus:ring-offset-0",
|
|
1313
|
+
"bg-card checked:bg-primary",
|
|
1313
1314
|
"disabled:opacity-50 disabled:cursor-not-allowed",
|
|
1314
1315
|
className
|
|
1315
1316
|
),
|
|
@@ -1320,7 +1321,7 @@ var Checkbox = React110__namespace.default.forwardRef(
|
|
|
1320
1321
|
"label",
|
|
1321
1322
|
{
|
|
1322
1323
|
htmlFor: inputId,
|
|
1323
|
-
className: "ml-2 text-sm text-
|
|
1324
|
+
className: "ml-2 text-sm text-foreground font-medium cursor-pointer select-none",
|
|
1324
1325
|
children: label
|
|
1325
1326
|
}
|
|
1326
1327
|
)
|
|
@@ -1330,32 +1331,34 @@ var Checkbox = React110__namespace.default.forwardRef(
|
|
|
1330
1331
|
Checkbox.displayName = "Checkbox";
|
|
1331
1332
|
var variantStyles4 = {
|
|
1332
1333
|
default: [
|
|
1333
|
-
"bg-
|
|
1334
|
+
"bg-card",
|
|
1335
|
+
"border-[length:var(--border-width)] border-border",
|
|
1336
|
+
"shadow-sm",
|
|
1334
1337
|
"transition-all duration-[var(--transition-normal)]",
|
|
1335
|
-
"hover:shadow-
|
|
1338
|
+
"hover:shadow-lg hover:-translate-y-0.5"
|
|
1336
1339
|
].join(" "),
|
|
1337
1340
|
bordered: [
|
|
1338
|
-
"bg-
|
|
1339
|
-
"border-[length:var(--border-width)] border-
|
|
1340
|
-
"shadow-
|
|
1341
|
+
"bg-card",
|
|
1342
|
+
"border-[length:var(--border-width)] border-border",
|
|
1343
|
+
"shadow-sm",
|
|
1341
1344
|
"transition-all duration-[var(--transition-normal)]",
|
|
1342
|
-
"hover:shadow-
|
|
1345
|
+
"hover:shadow-lg hover:-translate-y-0.5"
|
|
1343
1346
|
].join(" "),
|
|
1344
1347
|
elevated: [
|
|
1345
|
-
"bg-
|
|
1346
|
-
"border-[length:var(--border-width)] border-
|
|
1347
|
-
"shadow
|
|
1348
|
+
"bg-card",
|
|
1349
|
+
"border-[length:var(--border-width)] border-border",
|
|
1350
|
+
"shadow",
|
|
1348
1351
|
"transition-all duration-[var(--transition-normal)]",
|
|
1349
|
-
"hover:shadow-
|
|
1352
|
+
"hover:shadow-lg hover:-translate-y-0.5"
|
|
1350
1353
|
].join(" "),
|
|
1351
1354
|
// Interactive variant with theme-specific hover effects
|
|
1352
1355
|
interactive: [
|
|
1353
|
-
"bg-
|
|
1354
|
-
"border-[length:var(--border-width)] border-
|
|
1355
|
-
"shadow
|
|
1356
|
+
"bg-card",
|
|
1357
|
+
"border-[length:var(--border-width)] border-border",
|
|
1358
|
+
"shadow",
|
|
1356
1359
|
"cursor-pointer",
|
|
1357
1360
|
"transition-all duration-[var(--transition-normal)]",
|
|
1358
|
-
"hover:shadow-
|
|
1361
|
+
"hover:shadow-lg"
|
|
1359
1362
|
].join(" ")
|
|
1360
1363
|
};
|
|
1361
1364
|
var paddingStyles2 = {
|
|
@@ -1366,9 +1369,9 @@ var paddingStyles2 = {
|
|
|
1366
1369
|
};
|
|
1367
1370
|
var shadowStyles2 = {
|
|
1368
1371
|
none: "shadow-none",
|
|
1369
|
-
sm: "shadow-
|
|
1370
|
-
md: "shadow
|
|
1371
|
-
lg: "shadow-
|
|
1372
|
+
sm: "shadow-sm",
|
|
1373
|
+
md: "shadow",
|
|
1374
|
+
lg: "shadow-lg"
|
|
1372
1375
|
};
|
|
1373
1376
|
var Card = React110__namespace.default.forwardRef(
|
|
1374
1377
|
({
|
|
@@ -1386,7 +1389,7 @@ var Card = React110__namespace.default.forwardRef(
|
|
|
1386
1389
|
{
|
|
1387
1390
|
ref,
|
|
1388
1391
|
className: cn(
|
|
1389
|
-
"rounded-
|
|
1392
|
+
"rounded-md",
|
|
1390
1393
|
"transition-all duration-[var(--transition-normal)]",
|
|
1391
1394
|
variantStyles4[variant],
|
|
1392
1395
|
paddingStyles2[padding],
|
|
@@ -1396,8 +1399,8 @@ var Card = React110__namespace.default.forwardRef(
|
|
|
1396
1399
|
...props,
|
|
1397
1400
|
children: [
|
|
1398
1401
|
(title || subtitle) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-4", children: [
|
|
1399
|
-
title && /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-lg text-
|
|
1400
|
-
subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-
|
|
1402
|
+
title && /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-lg text-card-foreground font-[var(--font-weight-bold)]", children: title }),
|
|
1403
|
+
subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-muted-foreground mt-1", children: subtitle })
|
|
1401
1404
|
] }),
|
|
1402
1405
|
children
|
|
1403
1406
|
]
|
|
@@ -1413,7 +1416,7 @@ var CardTitle = React110__namespace.default.forwardRef(({ className, ...props },
|
|
|
1413
1416
|
{
|
|
1414
1417
|
ref,
|
|
1415
1418
|
className: cn(
|
|
1416
|
-
"text-lg text-
|
|
1419
|
+
"text-lg text-card-foreground",
|
|
1417
1420
|
"font-[var(--font-weight-bold)]",
|
|
1418
1421
|
className
|
|
1419
1422
|
),
|
|
@@ -1446,7 +1449,7 @@ var Spinner = React110__namespace.default.forwardRef(
|
|
|
1446
1449
|
"div",
|
|
1447
1450
|
{
|
|
1448
1451
|
ref,
|
|
1449
|
-
className: cn("text-
|
|
1452
|
+
className: cn("text-foreground", className),
|
|
1450
1453
|
...props,
|
|
1451
1454
|
children: /* @__PURE__ */ jsxRuntime.jsx(LucideIcons.Loader2, { className: cn("animate-spin", sizeStyles4[size]) })
|
|
1452
1455
|
}
|
|
@@ -1503,8 +1506,8 @@ var Radio = React110__namespace.default.forwardRef(
|
|
|
1503
1506
|
"flex items-center justify-center",
|
|
1504
1507
|
"border-[length:var(--border-width)] transition-all cursor-pointer",
|
|
1505
1508
|
sizeClasses6[size],
|
|
1506
|
-
hasError ? "border-
|
|
1507
|
-
checked ? hasError ? "border-
|
|
1509
|
+
hasError ? "border-error peer-focus:ring-error/20" : "border-border peer-focus:ring-ring/20",
|
|
1510
|
+
checked ? hasError ? "border-error" : "border-primary bg-primary" : "",
|
|
1508
1511
|
"peer-focus:outline-none peer-focus:ring-2 peer-focus:ring-offset-2",
|
|
1509
1512
|
disabled && "opacity-50 cursor-not-allowed",
|
|
1510
1513
|
!disabled && "hover:border-[var(--color-border-hover)]"
|
|
@@ -1515,7 +1518,7 @@ var Radio = React110__namespace.default.forwardRef(
|
|
|
1515
1518
|
className: cn(
|
|
1516
1519
|
"transition-all",
|
|
1517
1520
|
dotSizeClasses[size],
|
|
1518
|
-
hasError ? "bg-
|
|
1521
|
+
hasError ? "bg-error" : "bg-primary-foreground"
|
|
1519
1522
|
)
|
|
1520
1523
|
}
|
|
1521
1524
|
)
|
|
@@ -1528,7 +1531,7 @@ var Radio = React110__namespace.default.forwardRef(
|
|
|
1528
1531
|
htmlFor: radioId,
|
|
1529
1532
|
className: cn(
|
|
1530
1533
|
"block text-sm font-medium cursor-pointer select-none",
|
|
1531
|
-
hasError ? "text-
|
|
1534
|
+
hasError ? "text-error" : "text-foreground",
|
|
1532
1535
|
disabled && "opacity-50 cursor-not-allowed"
|
|
1533
1536
|
),
|
|
1534
1537
|
children: label
|
|
@@ -1540,7 +1543,7 @@ var Radio = React110__namespace.default.forwardRef(
|
|
|
1540
1543
|
"p",
|
|
1541
1544
|
{
|
|
1542
1545
|
id: `${radioId}-error`,
|
|
1543
|
-
className: "text-sm text-
|
|
1546
|
+
className: "text-sm text-error font-medium",
|
|
1544
1547
|
role: "alert",
|
|
1545
1548
|
children: error
|
|
1546
1549
|
}
|
|
@@ -1549,7 +1552,7 @@ var Radio = React110__namespace.default.forwardRef(
|
|
|
1549
1552
|
"p",
|
|
1550
1553
|
{
|
|
1551
1554
|
id: `${radioId}-helper`,
|
|
1552
|
-
className: "text-sm text-
|
|
1555
|
+
className: "text-sm text-muted-foreground",
|
|
1553
1556
|
children: helperText
|
|
1554
1557
|
}
|
|
1555
1558
|
)
|
|
@@ -1710,20 +1713,20 @@ var Stack = ({
|
|
|
1710
1713
|
var VStack = (props) => /* @__PURE__ */ jsxRuntime.jsx(Stack, { direction: "vertical", ...props });
|
|
1711
1714
|
var HStack = (props) => /* @__PURE__ */ jsxRuntime.jsx(Stack, { direction: "horizontal", ...props });
|
|
1712
1715
|
var statusColors = {
|
|
1713
|
-
online: "bg-
|
|
1714
|
-
offline: "bg-
|
|
1715
|
-
away: "bg-
|
|
1716
|
-
busy: "bg-
|
|
1717
|
-
warning: "bg-
|
|
1718
|
-
critical: "bg-
|
|
1716
|
+
online: "bg-success",
|
|
1717
|
+
offline: "bg-muted-foreground",
|
|
1718
|
+
away: "bg-warning",
|
|
1719
|
+
busy: "bg-error",
|
|
1720
|
+
warning: "bg-warning",
|
|
1721
|
+
critical: "bg-error"
|
|
1719
1722
|
};
|
|
1720
1723
|
var pulseRingColors = {
|
|
1721
|
-
online: "ring-
|
|
1722
|
-
offline: "ring-
|
|
1723
|
-
away: "ring-
|
|
1724
|
-
busy: "ring-
|
|
1725
|
-
warning: "ring-
|
|
1726
|
-
critical: "ring-
|
|
1724
|
+
online: "ring-success",
|
|
1725
|
+
offline: "ring-muted-foreground",
|
|
1726
|
+
away: "ring-warning",
|
|
1727
|
+
busy: "ring-error",
|
|
1728
|
+
warning: "ring-warning",
|
|
1729
|
+
critical: "ring-error"
|
|
1727
1730
|
};
|
|
1728
1731
|
var sizeStyles5 = {
|
|
1729
1732
|
sm: "w-2 h-2",
|
|
@@ -1767,10 +1770,10 @@ function resolveDirection(value, direction) {
|
|
|
1767
1770
|
return value > 0 ? "up" : "down";
|
|
1768
1771
|
}
|
|
1769
1772
|
function resolveColor(dir, invert) {
|
|
1770
|
-
if (dir === "flat") return "text-
|
|
1773
|
+
if (dir === "flat") return "text-muted-foreground";
|
|
1771
1774
|
const isPositive = dir === "up";
|
|
1772
1775
|
const isGood = invert ? !isPositive : isPositive;
|
|
1773
|
-
return isGood ? "text-
|
|
1776
|
+
return isGood ? "text-success" : "text-error";
|
|
1774
1777
|
}
|
|
1775
1778
|
var iconMap2 = {
|
|
1776
1779
|
up: LucideIcons.TrendingUp,
|
|
@@ -1888,7 +1891,7 @@ var RangeSlider = React110__namespace.default.forwardRef(
|
|
|
1888
1891
|
"div",
|
|
1889
1892
|
{
|
|
1890
1893
|
className: cn(
|
|
1891
|
-
"absolute inset-x-0 rounded-full bg-
|
|
1894
|
+
"absolute inset-x-0 rounded-full bg-muted",
|
|
1892
1895
|
trackSizes[size]
|
|
1893
1896
|
),
|
|
1894
1897
|
style: { top: "50%", transform: "translateY(-50%)" }
|
|
@@ -1898,7 +1901,7 @@ var RangeSlider = React110__namespace.default.forwardRef(
|
|
|
1898
1901
|
"div",
|
|
1899
1902
|
{
|
|
1900
1903
|
className: cn(
|
|
1901
|
-
"absolute rounded-full bg-
|
|
1904
|
+
"absolute rounded-full bg-muted-foreground opacity-30",
|
|
1902
1905
|
trackSizes[size]
|
|
1903
1906
|
),
|
|
1904
1907
|
style: {
|
|
@@ -1913,7 +1916,7 @@ var RangeSlider = React110__namespace.default.forwardRef(
|
|
|
1913
1916
|
"div",
|
|
1914
1917
|
{
|
|
1915
1918
|
className: cn(
|
|
1916
|
-
"absolute rounded-full bg-
|
|
1919
|
+
"absolute rounded-full bg-primary",
|
|
1917
1920
|
trackSizes[size]
|
|
1918
1921
|
),
|
|
1919
1922
|
style: {
|
|
@@ -1975,9 +1978,9 @@ var RangeSlider = React110__namespace.default.forwardRef(
|
|
|
1975
1978
|
"div",
|
|
1976
1979
|
{
|
|
1977
1980
|
className: cn(
|
|
1978
|
-
"absolute rounded-full bg-
|
|
1979
|
-
"border-2 border-
|
|
1980
|
-
"shadow-
|
|
1981
|
+
"absolute rounded-full bg-primary-foreground",
|
|
1982
|
+
"border-2 border-primary",
|
|
1983
|
+
"shadow-sm",
|
|
1981
1984
|
"pointer-events-none",
|
|
1982
1985
|
"transition-transform duration-100",
|
|
1983
1986
|
isDragging && "scale-110",
|
|
@@ -1995,7 +1998,7 @@ var RangeSlider = React110__namespace.default.forwardRef(
|
|
|
1995
1998
|
{
|
|
1996
1999
|
className: cn(
|
|
1997
2000
|
"absolute -top-8 px-2 py-0.5 rounded",
|
|
1998
|
-
"bg-
|
|
2001
|
+
"bg-foreground text-background",
|
|
1999
2002
|
"text-xs font-medium whitespace-nowrap",
|
|
2000
2003
|
"pointer-events-none"
|
|
2001
2004
|
),
|
|
@@ -2012,7 +2015,7 @@ var RangeSlider = React110__namespace.default.forwardRef(
|
|
|
2012
2015
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
2013
2016
|
"div",
|
|
2014
2017
|
{
|
|
2015
|
-
className: "absolute w-px h-1.5 bg-
|
|
2018
|
+
className: "absolute w-px h-1.5 bg-muted-foreground",
|
|
2016
2019
|
style: { left: `${tickPercent}%` }
|
|
2017
2020
|
},
|
|
2018
2021
|
i
|
|
@@ -2026,8 +2029,8 @@ var RangeSlider = React110__namespace.default.forwardRef(
|
|
|
2026
2029
|
RangeSlider.displayName = "RangeSlider";
|
|
2027
2030
|
var backgroundClasses = {
|
|
2028
2031
|
default: "",
|
|
2029
|
-
alt: "bg-
|
|
2030
|
-
dark: "bg-
|
|
2032
|
+
alt: "bg-surface",
|
|
2033
|
+
dark: "bg-foreground text-background",
|
|
2031
2034
|
gradient: [
|
|
2032
2035
|
"bg-gradient-to-b",
|
|
2033
2036
|
"from-[var(--color-primary)]/5",
|
|
@@ -2204,9 +2207,9 @@ var ErrorState = ({
|
|
|
2204
2207
|
className
|
|
2205
2208
|
),
|
|
2206
2209
|
children: [
|
|
2207
|
-
/* @__PURE__ */ jsxRuntime.jsx(Box, { className: "mb-4 rounded-
|
|
2208
|
-
/* @__PURE__ */ jsxRuntime.jsx(Typography, { variant: "h3", className: "text-lg font-medium text-
|
|
2209
|
-
/* @__PURE__ */ jsxRuntime.jsx(Typography, { variant: "small", className: "mt-1 text-
|
|
2210
|
+
/* @__PURE__ */ jsxRuntime.jsx(Box, { className: "mb-4 rounded-full bg-error/10 p-3", children: /* @__PURE__ */ jsxRuntime.jsx(LucideIcons.AlertCircle, { className: "h-8 w-8 text-error" }) }),
|
|
2211
|
+
/* @__PURE__ */ jsxRuntime.jsx(Typography, { variant: "h3", className: "text-lg font-medium text-foreground", children: resolvedTitle }),
|
|
2212
|
+
/* @__PURE__ */ jsxRuntime.jsx(Typography, { variant: "small", className: "mt-1 text-muted-foreground max-w-sm", children: resolvedMessage }),
|
|
2210
2213
|
(onRetry || retryEvent) && /* @__PURE__ */ jsxRuntime.jsx(Button, { variant: "secondary", className: "mt-4", onClick: handleRetry, children: t("error.retry") })
|
|
2211
2214
|
]
|
|
2212
2215
|
}
|
|
@@ -2641,29 +2644,41 @@ var defaultIcon = L__default.default.icon({
|
|
|
2641
2644
|
L__default.default.Marker.prototype.options.icon = defaultIcon;
|
|
2642
2645
|
|
|
2643
2646
|
// lib/verificationRegistry.ts
|
|
2644
|
-
var checks = /* @__PURE__ */ new Map();
|
|
2645
|
-
var transitions = [];
|
|
2646
2647
|
var MAX_TRANSITIONS = 500;
|
|
2647
|
-
|
|
2648
|
+
function getState() {
|
|
2649
|
+
if (typeof window !== "undefined") {
|
|
2650
|
+
const w = window;
|
|
2651
|
+
if (!w.__verificationRegistryState) {
|
|
2652
|
+
w.__verificationRegistryState = {
|
|
2653
|
+
checks: /* @__PURE__ */ new Map(),
|
|
2654
|
+
transitions: [],
|
|
2655
|
+
bridgeHealth: null,
|
|
2656
|
+
listeners: /* @__PURE__ */ new Set()
|
|
2657
|
+
};
|
|
2658
|
+
}
|
|
2659
|
+
return w.__verificationRegistryState;
|
|
2660
|
+
}
|
|
2661
|
+
return { checks: /* @__PURE__ */ new Map(), transitions: [], bridgeHealth: null, listeners: /* @__PURE__ */ new Set() };
|
|
2662
|
+
}
|
|
2648
2663
|
function notifyListeners() {
|
|
2649
|
-
listeners.forEach((l) => l());
|
|
2664
|
+
getState().listeners.forEach((l) => l());
|
|
2650
2665
|
exposeOnWindow();
|
|
2651
2666
|
}
|
|
2652
2667
|
function registerCheck(id, label, status = "pending", details) {
|
|
2653
|
-
checks.set(id, { id, label, status, details, updatedAt: Date.now() });
|
|
2668
|
+
getState().checks.set(id, { id, label, status, details, updatedAt: Date.now() });
|
|
2654
2669
|
notifyListeners();
|
|
2655
2670
|
}
|
|
2656
2671
|
function getAllChecks() {
|
|
2657
|
-
return Array.from(checks.values());
|
|
2672
|
+
return Array.from(getState().checks.values());
|
|
2658
2673
|
}
|
|
2659
2674
|
function recordTransition(trace) {
|
|
2660
2675
|
const entry = {
|
|
2661
2676
|
...trace,
|
|
2662
2677
|
id: `t-${Date.now()}-${Math.random().toString(36).slice(2, 9)}`
|
|
2663
2678
|
};
|
|
2664
|
-
transitions.push(entry);
|
|
2665
|
-
if (transitions.length > MAX_TRANSITIONS) {
|
|
2666
|
-
transitions.shift();
|
|
2679
|
+
getState().transitions.push(entry);
|
|
2680
|
+
if (getState().transitions.length > MAX_TRANSITIONS) {
|
|
2681
|
+
getState().transitions.shift();
|
|
2667
2682
|
}
|
|
2668
2683
|
if (entry.event === "INIT") {
|
|
2669
2684
|
const hasFetch = entry.effects.some((e) => e.type === "fetch");
|
|
@@ -2698,10 +2713,11 @@ function recordTransition(trace) {
|
|
|
2698
2713
|
notifyListeners();
|
|
2699
2714
|
}
|
|
2700
2715
|
function getTransitions() {
|
|
2701
|
-
return [...transitions];
|
|
2716
|
+
return [...getState().transitions];
|
|
2702
2717
|
}
|
|
2703
2718
|
function getBridgeHealth() {
|
|
2704
|
-
|
|
2719
|
+
const bh = getState().bridgeHealth;
|
|
2720
|
+
return bh ? { ...bh } : null;
|
|
2705
2721
|
}
|
|
2706
2722
|
function getSummary() {
|
|
2707
2723
|
const allChecks = getAllChecks();
|
|
@@ -2722,8 +2738,8 @@ function getSnapshot() {
|
|
|
2722
2738
|
};
|
|
2723
2739
|
}
|
|
2724
2740
|
function subscribeToVerification(listener) {
|
|
2725
|
-
listeners.add(listener);
|
|
2726
|
-
return () => listeners.delete(listener);
|
|
2741
|
+
getState().listeners.add(listener);
|
|
2742
|
+
return () => getState().listeners.delete(listener);
|
|
2727
2743
|
}
|
|
2728
2744
|
function exposeOnWindow() {
|
|
2729
2745
|
if (typeof window === "undefined") return;
|
|
@@ -2740,7 +2756,7 @@ function exposeOnWindow() {
|
|
|
2740
2756
|
}
|
|
2741
2757
|
function waitForTransition(event, timeoutMs = 1e4) {
|
|
2742
2758
|
return new Promise((resolve) => {
|
|
2743
|
-
const existing = transitions.find((t) => t.event === event);
|
|
2759
|
+
const existing = getState().transitions.find((t) => t.event === event);
|
|
2744
2760
|
if (existing) {
|
|
2745
2761
|
resolve(existing);
|
|
2746
2762
|
return;
|
|
@@ -2750,7 +2766,7 @@ function waitForTransition(event, timeoutMs = 1e4) {
|
|
|
2750
2766
|
resolve(null);
|
|
2751
2767
|
}, timeoutMs);
|
|
2752
2768
|
const unsub = subscribeToVerification(() => {
|
|
2753
|
-
const found = transitions.find((t) => t.event === event);
|
|
2769
|
+
const found = getState().transitions.find((t) => t.event === event);
|
|
2754
2770
|
if (found) {
|
|
2755
2771
|
clearTimeout(timeout);
|
|
2756
2772
|
unsub();
|
|
@@ -2880,7 +2896,7 @@ var MarkdownContent = React110__namespace.default.memo(
|
|
|
2880
2896
|
"blockquote",
|
|
2881
2897
|
{
|
|
2882
2898
|
...props,
|
|
2883
|
-
className: "border-l-4 border-blue-500 pl-4 italic text-
|
|
2899
|
+
className: "border-l-4 border-blue-500 pl-4 italic text-foreground my-4",
|
|
2884
2900
|
children
|
|
2885
2901
|
}
|
|
2886
2902
|
);
|
|
@@ -2955,7 +2971,7 @@ var CodeBlock = React110__namespace.default.memo(
|
|
|
2955
2971
|
variant: "ghost",
|
|
2956
2972
|
size: "sm",
|
|
2957
2973
|
onClick: handleCopy,
|
|
2958
|
-
className: "opacity-0 group-hover:opacity-100 focus:opacity-100 transition-opacity text-
|
|
2974
|
+
className: "opacity-0 group-hover:opacity-100 focus:opacity-100 transition-opacity text-muted-foreground hover:text-white",
|
|
2959
2975
|
"aria-label": "Copy code",
|
|
2960
2976
|
children: copied ? /* @__PURE__ */ jsxRuntime.jsx(LucideIcons.Check, { size: 16, className: "text-green-400" }) : /* @__PURE__ */ jsxRuntime.jsx(LucideIcons.Copy, { size: 16 })
|
|
2961
2977
|
}
|
|
@@ -3117,7 +3133,7 @@ function VerificationProvider({
|
|
|
3117
3133
|
})) : [];
|
|
3118
3134
|
recordTransition({
|
|
3119
3135
|
traitName: parsed.traitName,
|
|
3120
|
-
from: pending?.from ?? "unknown",
|
|
3136
|
+
from: pending?.from ?? (parsed.event === "INIT" ? "init" : "unknown"),
|
|
3121
3137
|
to: newState,
|
|
3122
3138
|
event: parsed.event,
|
|
3123
3139
|
effects,
|