@almadar/ui 4.13.0 → 4.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/avl/index.cjs +1354 -1485
- package/dist/avl/index.js +262 -393
- package/dist/components/index.cjs +1061 -1062
- package/dist/components/index.js +160 -161
- package/dist/providers/index.cjs +914 -915
- package/dist/providers/index.js +158 -159
- package/dist/runtime/index.cjs +1037 -1179
- package/dist/runtime/index.d.ts +1 -1
- package/dist/runtime/index.js +259 -397
- package/dist/runtime/ui/slot-types.d.ts +48 -0
- package/dist/runtime/useTraitStateMachine.d.ts +20 -2
- package/package.json +1 -1
- package/dist/runtime/ui/SlotsContext.d.ts +0 -114
package/dist/providers/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import * as
|
|
2
|
-
import
|
|
1
|
+
import * as React115 from 'react';
|
|
2
|
+
import React115__default, { createContext, useContext, useMemo, useRef, useEffect, useCallback, Suspense, useState, useLayoutEffect, lazy, useId } from 'react';
|
|
3
3
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
4
4
|
import { EventBusContext, useTraitScope, TraitScopeProvider } from '@almadar/ui/providers';
|
|
5
5
|
import { clsx } from 'clsx';
|
|
@@ -729,7 +729,7 @@ var init_Box = __esm({
|
|
|
729
729
|
fixed: "fixed",
|
|
730
730
|
sticky: "sticky"
|
|
731
731
|
};
|
|
732
|
-
Box =
|
|
732
|
+
Box = React115__default.forwardRef(
|
|
733
733
|
({
|
|
734
734
|
padding,
|
|
735
735
|
paddingX,
|
|
@@ -1428,7 +1428,7 @@ function resolveIconProp(value, sizeClass) {
|
|
|
1428
1428
|
const IconComp = value;
|
|
1429
1429
|
return /* @__PURE__ */ jsx(IconComp, { className: sizeClass });
|
|
1430
1430
|
}
|
|
1431
|
-
if (
|
|
1431
|
+
if (React115__default.isValidElement(value)) {
|
|
1432
1432
|
return value;
|
|
1433
1433
|
}
|
|
1434
1434
|
if (typeof value === "object" && value !== null && "render" in value) {
|
|
@@ -1504,7 +1504,7 @@ var init_Button = __esm({
|
|
|
1504
1504
|
md: "h-4 w-4",
|
|
1505
1505
|
lg: "h-5 w-5"
|
|
1506
1506
|
};
|
|
1507
|
-
Button =
|
|
1507
|
+
Button = React115__default.forwardRef(
|
|
1508
1508
|
({
|
|
1509
1509
|
className,
|
|
1510
1510
|
variant = "primary",
|
|
@@ -1607,7 +1607,7 @@ var init_Badge = __esm({
|
|
|
1607
1607
|
md: "px-2.5 py-1 text-sm",
|
|
1608
1608
|
lg: "px-3 py-1.5 text-base"
|
|
1609
1609
|
};
|
|
1610
|
-
Badge =
|
|
1610
|
+
Badge = React115__default.forwardRef(
|
|
1611
1611
|
({ className, variant = "default", size = "sm", amount, label, icon, children, ...props }, ref) => {
|
|
1612
1612
|
const iconSizes2 = { sm: "w-3 h-3", md: "w-3.5 h-3.5", lg: "w-4 h-4" };
|
|
1613
1613
|
const resolvedIcon = typeof icon === "string" ? (() => {
|
|
@@ -1744,6 +1744,8 @@ var init_Toast = __esm({
|
|
|
1744
1744
|
Toast.displayName = "Toast";
|
|
1745
1745
|
}
|
|
1746
1746
|
});
|
|
1747
|
+
|
|
1748
|
+
// runtime/ui/slot-types.ts
|
|
1747
1749
|
function refId(obj) {
|
|
1748
1750
|
if (obj === null || obj === void 0 || typeof obj !== "object") return null;
|
|
1749
1751
|
const existing = refIds.get(obj);
|
|
@@ -1753,22 +1755,19 @@ function refId(obj) {
|
|
|
1753
1755
|
return id;
|
|
1754
1756
|
}
|
|
1755
1757
|
var slotLog, refIds, nextRefId;
|
|
1756
|
-
var
|
|
1757
|
-
"runtime/ui/
|
|
1758
|
+
var init_slot_types = __esm({
|
|
1759
|
+
"runtime/ui/slot-types.ts"() {
|
|
1758
1760
|
init_logger();
|
|
1759
1761
|
slotLog = createLogger("almadar:ui:slot-render");
|
|
1760
|
-
createLogger("almadar:runtime:cross-orbital");
|
|
1761
1762
|
refIds = /* @__PURE__ */ new WeakMap();
|
|
1762
1763
|
nextRefId = 1;
|
|
1763
|
-
createContext({});
|
|
1764
|
-
createContext(null);
|
|
1765
1764
|
}
|
|
1766
1765
|
});
|
|
1767
1766
|
var Input;
|
|
1768
1767
|
var init_Input = __esm({
|
|
1769
1768
|
"components/atoms/Input.tsx"() {
|
|
1770
1769
|
init_cn();
|
|
1771
|
-
Input =
|
|
1770
|
+
Input = React115__default.forwardRef(
|
|
1772
1771
|
({
|
|
1773
1772
|
className,
|
|
1774
1773
|
inputType,
|
|
@@ -1886,7 +1885,7 @@ var Label;
|
|
|
1886
1885
|
var init_Label = __esm({
|
|
1887
1886
|
"components/atoms/Label.tsx"() {
|
|
1888
1887
|
init_cn();
|
|
1889
|
-
Label =
|
|
1888
|
+
Label = React115__default.forwardRef(
|
|
1890
1889
|
({ className, required, children, ...props }, ref) => {
|
|
1891
1890
|
return /* @__PURE__ */ jsxs(
|
|
1892
1891
|
"label",
|
|
@@ -1912,7 +1911,7 @@ var Textarea;
|
|
|
1912
1911
|
var init_Textarea = __esm({
|
|
1913
1912
|
"components/atoms/Textarea.tsx"() {
|
|
1914
1913
|
init_cn();
|
|
1915
|
-
Textarea =
|
|
1914
|
+
Textarea = React115__default.forwardRef(
|
|
1916
1915
|
({ className, error, ...props }, ref) => {
|
|
1917
1916
|
return /* @__PURE__ */ jsx(
|
|
1918
1917
|
"textarea",
|
|
@@ -1941,7 +1940,7 @@ var Select;
|
|
|
1941
1940
|
var init_Select = __esm({
|
|
1942
1941
|
"components/atoms/Select.tsx"() {
|
|
1943
1942
|
init_cn();
|
|
1944
|
-
Select =
|
|
1943
|
+
Select = React115__default.forwardRef(
|
|
1945
1944
|
({ className, options, placeholder, error, ...props }, ref) => {
|
|
1946
1945
|
return /* @__PURE__ */ jsxs("div", { className: "relative", children: [
|
|
1947
1946
|
/* @__PURE__ */ jsxs(
|
|
@@ -1983,7 +1982,7 @@ var Checkbox;
|
|
|
1983
1982
|
var init_Checkbox = __esm({
|
|
1984
1983
|
"components/atoms/Checkbox.tsx"() {
|
|
1985
1984
|
init_cn();
|
|
1986
|
-
Checkbox =
|
|
1985
|
+
Checkbox = React115__default.forwardRef(
|
|
1987
1986
|
({ className, label, id, ...props }, ref) => {
|
|
1988
1987
|
const inputId = id || `checkbox-${Math.random().toString(36).substr(2, 9)}`;
|
|
1989
1988
|
return /* @__PURE__ */ jsxs("div", { className: "flex items-center", children: [
|
|
@@ -2065,7 +2064,7 @@ var init_Card = __esm({
|
|
|
2065
2064
|
md: "shadow",
|
|
2066
2065
|
lg: "shadow-lg"
|
|
2067
2066
|
};
|
|
2068
|
-
Card =
|
|
2067
|
+
Card = React115__default.forwardRef(
|
|
2069
2068
|
({
|
|
2070
2069
|
className,
|
|
2071
2070
|
variant = "bordered",
|
|
@@ -2101,9 +2100,9 @@ var init_Card = __esm({
|
|
|
2101
2100
|
}
|
|
2102
2101
|
);
|
|
2103
2102
|
Card.displayName = "Card";
|
|
2104
|
-
CardHeader =
|
|
2103
|
+
CardHeader = React115__default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", { ref, className: cn("mb-4", className), ...props }));
|
|
2105
2104
|
CardHeader.displayName = "CardHeader";
|
|
2106
|
-
CardTitle =
|
|
2105
|
+
CardTitle = React115__default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
2107
2106
|
"h3",
|
|
2108
2107
|
{
|
|
2109
2108
|
ref,
|
|
@@ -2116,11 +2115,11 @@ var init_Card = __esm({
|
|
|
2116
2115
|
}
|
|
2117
2116
|
));
|
|
2118
2117
|
CardTitle.displayName = "CardTitle";
|
|
2119
|
-
CardContent =
|
|
2118
|
+
CardContent = React115__default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", { ref, className: cn("", className), ...props }));
|
|
2120
2119
|
CardContent.displayName = "CardContent";
|
|
2121
2120
|
CardBody = CardContent;
|
|
2122
2121
|
CardBody.displayName = "CardBody";
|
|
2123
|
-
CardFooter =
|
|
2122
|
+
CardFooter = React115__default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
2124
2123
|
"div",
|
|
2125
2124
|
{
|
|
2126
2125
|
ref,
|
|
@@ -2141,7 +2140,7 @@ var init_Spinner = __esm({
|
|
|
2141
2140
|
md: "h-6 w-6",
|
|
2142
2141
|
lg: "h-8 w-8"
|
|
2143
2142
|
};
|
|
2144
|
-
Spinner =
|
|
2143
|
+
Spinner = React115__default.forwardRef(
|
|
2145
2144
|
({ className, size = "md", ...props }, ref) => {
|
|
2146
2145
|
return /* @__PURE__ */ jsx(
|
|
2147
2146
|
"div",
|
|
@@ -2589,7 +2588,7 @@ var Radio;
|
|
|
2589
2588
|
var init_Radio = __esm({
|
|
2590
2589
|
"components/atoms/Radio.tsx"() {
|
|
2591
2590
|
init_cn();
|
|
2592
|
-
Radio =
|
|
2591
|
+
Radio = React115__default.forwardRef(
|
|
2593
2592
|
({
|
|
2594
2593
|
label,
|
|
2595
2594
|
helperText,
|
|
@@ -2700,7 +2699,7 @@ var init_Switch = __esm({
|
|
|
2700
2699
|
"components/atoms/Switch.tsx"() {
|
|
2701
2700
|
"use client";
|
|
2702
2701
|
init_cn();
|
|
2703
|
-
Switch =
|
|
2702
|
+
Switch = React115.forwardRef(
|
|
2704
2703
|
({
|
|
2705
2704
|
checked,
|
|
2706
2705
|
defaultChecked = false,
|
|
@@ -2711,10 +2710,10 @@ var init_Switch = __esm({
|
|
|
2711
2710
|
name,
|
|
2712
2711
|
className
|
|
2713
2712
|
}, ref) => {
|
|
2714
|
-
const [isChecked, setIsChecked] =
|
|
2713
|
+
const [isChecked, setIsChecked] = React115.useState(
|
|
2715
2714
|
checked !== void 0 ? checked : defaultChecked
|
|
2716
2715
|
);
|
|
2717
|
-
|
|
2716
|
+
React115.useEffect(() => {
|
|
2718
2717
|
if (checked !== void 0) {
|
|
2719
2718
|
setIsChecked(checked);
|
|
2720
2719
|
}
|
|
@@ -3140,8 +3139,8 @@ var init_LawReferenceTooltip = __esm({
|
|
|
3140
3139
|
position = "top",
|
|
3141
3140
|
className
|
|
3142
3141
|
}) => {
|
|
3143
|
-
const [isVisible, setIsVisible] =
|
|
3144
|
-
const timeoutRef =
|
|
3142
|
+
const [isVisible, setIsVisible] = React115__default.useState(false);
|
|
3143
|
+
const timeoutRef = React115__default.useRef(null);
|
|
3145
3144
|
const handleMouseEnter = () => {
|
|
3146
3145
|
if (timeoutRef.current) clearTimeout(timeoutRef.current);
|
|
3147
3146
|
timeoutRef.current = setTimeout(() => setIsVisible(true), 200);
|
|
@@ -3150,7 +3149,7 @@ var init_LawReferenceTooltip = __esm({
|
|
|
3150
3149
|
if (timeoutRef.current) clearTimeout(timeoutRef.current);
|
|
3151
3150
|
setIsVisible(false);
|
|
3152
3151
|
};
|
|
3153
|
-
|
|
3152
|
+
React115__default.useEffect(() => {
|
|
3154
3153
|
return () => {
|
|
3155
3154
|
if (timeoutRef.current) clearTimeout(timeoutRef.current);
|
|
3156
3155
|
};
|
|
@@ -3360,7 +3359,7 @@ var init_StatusDot = __esm({
|
|
|
3360
3359
|
md: "w-2.5 h-2.5",
|
|
3361
3360
|
lg: "w-3 h-3"
|
|
3362
3361
|
};
|
|
3363
|
-
StatusDot =
|
|
3362
|
+
StatusDot = React115__default.forwardRef(
|
|
3364
3363
|
({ className, status = "offline", pulse = false, size = "md", label, ...props }, ref) => {
|
|
3365
3364
|
return /* @__PURE__ */ jsx(
|
|
3366
3365
|
"span",
|
|
@@ -3413,7 +3412,7 @@ var init_TrendIndicator = __esm({
|
|
|
3413
3412
|
down: TrendingDown,
|
|
3414
3413
|
flat: ArrowRight
|
|
3415
3414
|
};
|
|
3416
|
-
TrendIndicator =
|
|
3415
|
+
TrendIndicator = React115__default.forwardRef(
|
|
3417
3416
|
({
|
|
3418
3417
|
className,
|
|
3419
3418
|
value,
|
|
@@ -3480,7 +3479,7 @@ var init_RangeSlider = __esm({
|
|
|
3480
3479
|
md: "w-4 h-4",
|
|
3481
3480
|
lg: "w-5 h-5"
|
|
3482
3481
|
};
|
|
3483
|
-
RangeSlider =
|
|
3482
|
+
RangeSlider = React115__default.forwardRef(
|
|
3484
3483
|
({
|
|
3485
3484
|
className,
|
|
3486
3485
|
min = 0,
|
|
@@ -4076,7 +4075,7 @@ var init_ContentSection = __esm({
|
|
|
4076
4075
|
md: "py-16",
|
|
4077
4076
|
lg: "py-24"
|
|
4078
4077
|
};
|
|
4079
|
-
ContentSection =
|
|
4078
|
+
ContentSection = React115__default.forwardRef(
|
|
4080
4079
|
({ children, background = "default", padding = "lg", id, className }, ref) => {
|
|
4081
4080
|
return /* @__PURE__ */ jsx(
|
|
4082
4081
|
Box,
|
|
@@ -4610,7 +4609,7 @@ var init_AnimatedReveal = __esm({
|
|
|
4610
4609
|
"scale-up": { opacity: 1, transform: "scale(1) translateY(0)" },
|
|
4611
4610
|
"none": {}
|
|
4612
4611
|
};
|
|
4613
|
-
AnimatedReveal =
|
|
4612
|
+
AnimatedReveal = React115__default.forwardRef(
|
|
4614
4613
|
({
|
|
4615
4614
|
trigger = "scroll",
|
|
4616
4615
|
animation = "fade-up",
|
|
@@ -4770,7 +4769,7 @@ var init_AnimatedGraphic = __esm({
|
|
|
4770
4769
|
"components/atoms/AnimatedGraphic.tsx"() {
|
|
4771
4770
|
"use client";
|
|
4772
4771
|
init_cn();
|
|
4773
|
-
AnimatedGraphic =
|
|
4772
|
+
AnimatedGraphic = React115__default.forwardRef(
|
|
4774
4773
|
({
|
|
4775
4774
|
src,
|
|
4776
4775
|
svgContent,
|
|
@@ -4793,7 +4792,7 @@ var init_AnimatedGraphic = __esm({
|
|
|
4793
4792
|
const fetchedSvg = useFetchedSvg(svgContent ? void 0 : src);
|
|
4794
4793
|
const resolvedSvg = svgContent ?? fetchedSvg;
|
|
4795
4794
|
const prevAnimateRef = useRef(animate);
|
|
4796
|
-
const setRef =
|
|
4795
|
+
const setRef = React115__default.useCallback(
|
|
4797
4796
|
(node) => {
|
|
4798
4797
|
containerRef.current = node;
|
|
4799
4798
|
if (typeof ref === "function") ref(node);
|
|
@@ -5011,9 +5010,9 @@ function ScoreDisplay({
|
|
|
5011
5010
|
...rest
|
|
5012
5011
|
}) {
|
|
5013
5012
|
const resolvedValue = typeof value === "number" && !Number.isNaN(value) ? value : typeof rest.score === "number" && !Number.isNaN(rest.score) ? rest.score : 0;
|
|
5014
|
-
const [displayValue, setDisplayValue] =
|
|
5015
|
-
const [isAnimating, setIsAnimating] =
|
|
5016
|
-
|
|
5013
|
+
const [displayValue, setDisplayValue] = React115.useState(resolvedValue);
|
|
5014
|
+
const [isAnimating, setIsAnimating] = React115.useState(false);
|
|
5015
|
+
React115.useEffect(() => {
|
|
5017
5016
|
if (!animated || displayValue === resolvedValue) {
|
|
5018
5017
|
setDisplayValue(resolvedValue);
|
|
5019
5018
|
return;
|
|
@@ -5083,9 +5082,9 @@ function ControlButton({
|
|
|
5083
5082
|
className
|
|
5084
5083
|
}) {
|
|
5085
5084
|
const eventBus = useEventBus();
|
|
5086
|
-
const [isPressed, setIsPressed] =
|
|
5085
|
+
const [isPressed, setIsPressed] = React115.useState(false);
|
|
5087
5086
|
const actualPressed = pressed ?? isPressed;
|
|
5088
|
-
const handlePointerDown =
|
|
5087
|
+
const handlePointerDown = React115.useCallback(
|
|
5089
5088
|
(e) => {
|
|
5090
5089
|
e.preventDefault();
|
|
5091
5090
|
if (disabled) return;
|
|
@@ -5095,7 +5094,7 @@ function ControlButton({
|
|
|
5095
5094
|
},
|
|
5096
5095
|
[disabled, pressEvent, eventBus, onPress]
|
|
5097
5096
|
);
|
|
5098
|
-
const handlePointerUp =
|
|
5097
|
+
const handlePointerUp = React115.useCallback(
|
|
5099
5098
|
(e) => {
|
|
5100
5099
|
e.preventDefault();
|
|
5101
5100
|
if (disabled) return;
|
|
@@ -5105,7 +5104,7 @@ function ControlButton({
|
|
|
5105
5104
|
},
|
|
5106
5105
|
[disabled, releaseEvent, eventBus, onRelease]
|
|
5107
5106
|
);
|
|
5108
|
-
const handlePointerLeave =
|
|
5107
|
+
const handlePointerLeave = React115.useCallback(
|
|
5109
5108
|
(e) => {
|
|
5110
5109
|
if (isPressed) {
|
|
5111
5110
|
setIsPressed(false);
|
|
@@ -6003,9 +6002,9 @@ function MiniMap({
|
|
|
6003
6002
|
viewportRect,
|
|
6004
6003
|
className
|
|
6005
6004
|
}) {
|
|
6006
|
-
const canvasRef =
|
|
6007
|
-
const frameRef =
|
|
6008
|
-
|
|
6005
|
+
const canvasRef = React115.useRef(null);
|
|
6006
|
+
const frameRef = React115.useRef(0);
|
|
6007
|
+
React115.useEffect(() => {
|
|
6009
6008
|
const canvas = canvasRef.current;
|
|
6010
6009
|
if (!canvas) return;
|
|
6011
6010
|
const ctx = canvas.getContext("2d");
|
|
@@ -6344,7 +6343,7 @@ var init_ErrorBoundary = __esm({
|
|
|
6344
6343
|
"use client";
|
|
6345
6344
|
init_cn();
|
|
6346
6345
|
init_ErrorState();
|
|
6347
|
-
ErrorBoundary = class extends
|
|
6346
|
+
ErrorBoundary = class extends React115__default.Component {
|
|
6348
6347
|
constructor(props) {
|
|
6349
6348
|
super(props);
|
|
6350
6349
|
__publicField(this, "reset", () => {
|
|
@@ -7168,8 +7167,8 @@ var init_Tooltip = __esm({
|
|
|
7168
7167
|
if (hideTimeoutRef.current) clearTimeout(hideTimeoutRef.current);
|
|
7169
7168
|
};
|
|
7170
7169
|
}, []);
|
|
7171
|
-
const triggerElement =
|
|
7172
|
-
const trigger =
|
|
7170
|
+
const triggerElement = React115__default.isValidElement(children) ? children : /* @__PURE__ */ jsx("span", { children });
|
|
7171
|
+
const trigger = React115__default.cloneElement(triggerElement, {
|
|
7173
7172
|
ref: triggerRef,
|
|
7174
7173
|
onMouseEnter: handleMouseEnter,
|
|
7175
7174
|
onMouseLeave: handleMouseLeave,
|
|
@@ -7290,8 +7289,8 @@ var init_Popover = __esm({
|
|
|
7290
7289
|
onMouseEnter: handleOpen,
|
|
7291
7290
|
onMouseLeave: handleClose
|
|
7292
7291
|
};
|
|
7293
|
-
const childElement =
|
|
7294
|
-
const triggerElement =
|
|
7292
|
+
const childElement = React115__default.isValidElement(children) ? children : /* @__PURE__ */ jsx("span", { children });
|
|
7293
|
+
const triggerElement = React115__default.cloneElement(
|
|
7295
7294
|
childElement,
|
|
7296
7295
|
{
|
|
7297
7296
|
ref: triggerRef,
|
|
@@ -7408,8 +7407,8 @@ var init_Menu = __esm({
|
|
|
7408
7407
|
"bottom-start": "top-full left-0 mt-2",
|
|
7409
7408
|
"bottom-end": "top-full right-0 mt-2"
|
|
7410
7409
|
};
|
|
7411
|
-
const triggerChild =
|
|
7412
|
-
const triggerElement =
|
|
7410
|
+
const triggerChild = React115__default.isValidElement(trigger) ? trigger : /* @__PURE__ */ jsx("span", { children: trigger });
|
|
7411
|
+
const triggerElement = React115__default.cloneElement(
|
|
7413
7412
|
triggerChild,
|
|
7414
7413
|
{
|
|
7415
7414
|
ref: triggerRef,
|
|
@@ -7928,12 +7927,12 @@ var init_MapView = __esm({
|
|
|
7928
7927
|
shadowSize: [41, 41]
|
|
7929
7928
|
});
|
|
7930
7929
|
L.Marker.prototype.options.icon = defaultIcon;
|
|
7931
|
-
const { useEffect: useEffect63, useRef:
|
|
7930
|
+
const { useEffect: useEffect63, useRef: useRef62, useCallback: useCallback94, useState: useState86 } = React115__default;
|
|
7932
7931
|
const { Typography: Typography2 } = await Promise.resolve().then(() => (init_Typography(), Typography_exports));
|
|
7933
7932
|
const { useEventBus: useEventBus2 } = await Promise.resolve().then(() => (init_useEventBus(), useEventBus_exports));
|
|
7934
7933
|
function MapUpdater({ centerLat, centerLng, zoom }) {
|
|
7935
7934
|
const map = useMap();
|
|
7936
|
-
const prevRef =
|
|
7935
|
+
const prevRef = useRef62({ centerLat, centerLng, zoom });
|
|
7937
7936
|
useEffect63(() => {
|
|
7938
7937
|
const prev = prevRef.current;
|
|
7939
7938
|
if (prev.centerLat !== centerLat || prev.centerLng !== centerLng || prev.zoom !== zoom) {
|
|
@@ -7972,8 +7971,8 @@ var init_MapView = __esm({
|
|
|
7972
7971
|
showAttribution = true
|
|
7973
7972
|
}) {
|
|
7974
7973
|
const eventBus = useEventBus2();
|
|
7975
|
-
const [clickedPosition, setClickedPosition] =
|
|
7976
|
-
const handleMapClick =
|
|
7974
|
+
const [clickedPosition, setClickedPosition] = useState86(null);
|
|
7975
|
+
const handleMapClick = useCallback94((lat, lng) => {
|
|
7977
7976
|
if (showClickedPin) {
|
|
7978
7977
|
setClickedPosition({ lat, lng });
|
|
7979
7978
|
}
|
|
@@ -7982,7 +7981,7 @@ var init_MapView = __esm({
|
|
|
7982
7981
|
eventBus.emit(`UI:${mapClickEvent}`, { latitude: lat, longitude: lng });
|
|
7983
7982
|
}
|
|
7984
7983
|
}, [onMapClick, mapClickEvent, eventBus, showClickedPin]);
|
|
7985
|
-
const handleMarkerClick =
|
|
7984
|
+
const handleMarkerClick = useCallback94((marker) => {
|
|
7986
7985
|
onMarkerClick?.(marker);
|
|
7987
7986
|
if (markerClickEvent) {
|
|
7988
7987
|
eventBus.emit(`UI:${markerClickEvent}`, { ...marker });
|
|
@@ -8159,7 +8158,7 @@ function InputPattern({
|
|
|
8159
8158
|
fieldName
|
|
8160
8159
|
}) {
|
|
8161
8160
|
const { emit } = useEventBus();
|
|
8162
|
-
const [localValue, setLocalValue] =
|
|
8161
|
+
const [localValue, setLocalValue] = React115__default.useState(value);
|
|
8163
8162
|
const handleChange = (e) => {
|
|
8164
8163
|
setLocalValue(e.target.value);
|
|
8165
8164
|
if (onChange) {
|
|
@@ -8197,7 +8196,7 @@ function TextareaPattern({
|
|
|
8197
8196
|
fieldName
|
|
8198
8197
|
}) {
|
|
8199
8198
|
const { emit } = useEventBus();
|
|
8200
|
-
const [localValue, setLocalValue] =
|
|
8199
|
+
const [localValue, setLocalValue] = React115__default.useState(value);
|
|
8201
8200
|
const handleChange = (e) => {
|
|
8202
8201
|
setLocalValue(e.target.value);
|
|
8203
8202
|
if (onChange) {
|
|
@@ -8229,7 +8228,7 @@ function SelectPattern({
|
|
|
8229
8228
|
fieldName
|
|
8230
8229
|
}) {
|
|
8231
8230
|
const { emit } = useEventBus();
|
|
8232
|
-
const [localValue, setLocalValue] =
|
|
8231
|
+
const [localValue, setLocalValue] = React115__default.useState(value);
|
|
8233
8232
|
const handleChange = (e) => {
|
|
8234
8233
|
setLocalValue(e.target.value);
|
|
8235
8234
|
if (onChange) {
|
|
@@ -8258,7 +8257,7 @@ function CheckboxPattern({
|
|
|
8258
8257
|
className
|
|
8259
8258
|
}) {
|
|
8260
8259
|
const { emit } = useEventBus();
|
|
8261
|
-
const [localChecked, setLocalChecked] =
|
|
8260
|
+
const [localChecked, setLocalChecked] = React115__default.useState(checked);
|
|
8262
8261
|
const handleChange = (e) => {
|
|
8263
8262
|
setLocalChecked(e.target.checked);
|
|
8264
8263
|
if (onChange) {
|
|
@@ -8489,8 +8488,8 @@ function ActionButtons({
|
|
|
8489
8488
|
disabled
|
|
8490
8489
|
}) {
|
|
8491
8490
|
const eventBus = useEventBus();
|
|
8492
|
-
const [activeButtons, setActiveButtons] =
|
|
8493
|
-
const handlePress =
|
|
8491
|
+
const [activeButtons, setActiveButtons] = React115.useState(/* @__PURE__ */ new Set());
|
|
8492
|
+
const handlePress = React115.useCallback(
|
|
8494
8493
|
(id) => {
|
|
8495
8494
|
setActiveButtons((prev) => new Set(prev).add(id));
|
|
8496
8495
|
if (actionEvent) eventBus.emit(`UI:${actionEvent}`, { id, pressed: true });
|
|
@@ -8498,7 +8497,7 @@ function ActionButtons({
|
|
|
8498
8497
|
},
|
|
8499
8498
|
[actionEvent, eventBus, onAction]
|
|
8500
8499
|
);
|
|
8501
|
-
const handleRelease =
|
|
8500
|
+
const handleRelease = React115.useCallback(
|
|
8502
8501
|
(id) => {
|
|
8503
8502
|
setActiveButtons((prev) => {
|
|
8504
8503
|
const next = new Set(prev);
|
|
@@ -10522,7 +10521,7 @@ var init_MarkdownContent = __esm({
|
|
|
10522
10521
|
init_Box();
|
|
10523
10522
|
init_useTranslate();
|
|
10524
10523
|
init_cn();
|
|
10525
|
-
MarkdownContent =
|
|
10524
|
+
MarkdownContent = React115__default.memo(
|
|
10526
10525
|
({ content, direction, className }) => {
|
|
10527
10526
|
const { t: _t } = useTranslate();
|
|
10528
10527
|
const safeContent = typeof content === "string" ? content : String(content ?? "");
|
|
@@ -10739,7 +10738,7 @@ var init_CodeBlock = __esm({
|
|
|
10739
10738
|
loloStyle = { ...dark, ...loloStyleOverrides };
|
|
10740
10739
|
LINE_PROPS_FN = (n) => ({ "data-line": String(n - 1) });
|
|
10741
10740
|
HIDDEN_LINE_NUMBERS = { display: "none" };
|
|
10742
|
-
CodeBlock =
|
|
10741
|
+
CodeBlock = React115__default.memo(
|
|
10743
10742
|
({
|
|
10744
10743
|
code: rawCode,
|
|
10745
10744
|
language = "text",
|
|
@@ -12048,7 +12047,7 @@ var init_StateMachineView = __esm({
|
|
|
12048
12047
|
style: { top: title ? 30 : 0 },
|
|
12049
12048
|
children: [
|
|
12050
12049
|
entity && /* @__PURE__ */ jsx(EntityBox, { entity, config }),
|
|
12051
|
-
states.map((state) => renderStateNode ? /* @__PURE__ */ jsx(
|
|
12050
|
+
states.map((state) => renderStateNode ? /* @__PURE__ */ jsx(React115__default.Fragment, { children: renderStateNode(state, config) }, state.id) : /* @__PURE__ */ jsx(
|
|
12052
12051
|
StateNode,
|
|
12053
12052
|
{
|
|
12054
12053
|
state,
|
|
@@ -17831,7 +17830,7 @@ function CraftingRecipe({
|
|
|
17831
17830
|
className
|
|
17832
17831
|
}) {
|
|
17833
17832
|
const eventBus = useEventBus();
|
|
17834
|
-
const handleCraft =
|
|
17833
|
+
const handleCraft = React115.useCallback(() => {
|
|
17835
17834
|
onCraft?.();
|
|
17836
17835
|
if (craftEvent) {
|
|
17837
17836
|
eventBus.emit(craftEvent, { output: output.label });
|
|
@@ -17848,7 +17847,7 @@ function CraftingRecipe({
|
|
|
17848
17847
|
children: [
|
|
17849
17848
|
/* @__PURE__ */ jsx(HStack, { gap: "xs", className: "flex-wrap items-center", children: inputs.map((ingredient, index) => {
|
|
17850
17849
|
const hasSufficient = ingredient.available >= ingredient.required;
|
|
17851
|
-
return /* @__PURE__ */ jsxs(
|
|
17850
|
+
return /* @__PURE__ */ jsxs(React115.Fragment, { children: [
|
|
17852
17851
|
/* @__PURE__ */ jsx(Box, { className: "relative", children: /* @__PURE__ */ jsx(
|
|
17853
17852
|
ItemSlot,
|
|
17854
17853
|
{
|
|
@@ -18142,8 +18141,8 @@ function DPad({
|
|
|
18142
18141
|
}) {
|
|
18143
18142
|
const eventBus = useEventBus();
|
|
18144
18143
|
const sizes = sizeMap15[size];
|
|
18145
|
-
const [activeDirections, setActiveDirections] =
|
|
18146
|
-
const handlePress =
|
|
18144
|
+
const [activeDirections, setActiveDirections] = React115.useState(/* @__PURE__ */ new Set());
|
|
18145
|
+
const handlePress = React115.useCallback(
|
|
18147
18146
|
(direction) => {
|
|
18148
18147
|
setActiveDirections((prev) => new Set(prev).add(direction));
|
|
18149
18148
|
if (directionEvent) eventBus.emit(`UI:${directionEvent}`, { direction, pressed: true });
|
|
@@ -18151,7 +18150,7 @@ function DPad({
|
|
|
18151
18150
|
},
|
|
18152
18151
|
[directionEvent, eventBus, onDirection]
|
|
18153
18152
|
);
|
|
18154
|
-
const handleRelease =
|
|
18153
|
+
const handleRelease = React115.useCallback(
|
|
18155
18154
|
(direction) => {
|
|
18156
18155
|
setActiveDirections((prev) => {
|
|
18157
18156
|
const next = new Set(prev);
|
|
@@ -19051,7 +19050,7 @@ function DataList({
|
|
|
19051
19050
|
}) {
|
|
19052
19051
|
const eventBus = useEventBus();
|
|
19053
19052
|
const { t } = useTranslate();
|
|
19054
|
-
const [visibleCount, setVisibleCount] =
|
|
19053
|
+
const [visibleCount, setVisibleCount] = React115__default.useState(pageSize || Infinity);
|
|
19055
19054
|
const allData = Array.isArray(entity) ? entity : entity ? [entity] : [];
|
|
19056
19055
|
const data = pageSize > 0 ? allData.slice(0, visibleCount) : allData;
|
|
19057
19056
|
const hasMoreLocal = pageSize > 0 && visibleCount < allData.length;
|
|
@@ -19091,7 +19090,7 @@ function DataList({
|
|
|
19091
19090
|
const items2 = data.map((item) => item);
|
|
19092
19091
|
const groups2 = groupBy ? groupData(items2, groupBy) : [{ label: "", items: items2 }];
|
|
19093
19092
|
const contentField = titleField?.name ?? fields[0]?.name ?? "";
|
|
19094
|
-
return /* @__PURE__ */ jsx(VStack, { gap: "sm", className: cn("py-2", className), children: groups2.map((group, gi) => /* @__PURE__ */ jsxs(
|
|
19093
|
+
return /* @__PURE__ */ jsx(VStack, { gap: "sm", className: cn("py-2", className), children: groups2.map((group, gi) => /* @__PURE__ */ jsxs(React115__default.Fragment, { children: [
|
|
19095
19094
|
group.label && /* @__PURE__ */ jsx(Divider, { label: group.label, className: "my-2" }),
|
|
19096
19095
|
group.items.map((itemData, index) => {
|
|
19097
19096
|
const id = itemData.id || `${gi}-${index}`;
|
|
@@ -19138,7 +19137,7 @@ function DataList({
|
|
|
19138
19137
|
] }, gi)) });
|
|
19139
19138
|
}
|
|
19140
19139
|
const hasRenderProp = typeof children === "function";
|
|
19141
|
-
|
|
19140
|
+
React115__default.useEffect(() => {
|
|
19142
19141
|
const renderItemTypeOf = typeof schemaRenderItem;
|
|
19143
19142
|
const childrenTypeOf = typeof children;
|
|
19144
19143
|
if (data.length > 0 && !hasRenderProp) {
|
|
@@ -19303,7 +19302,7 @@ function DataList({
|
|
|
19303
19302
|
className
|
|
19304
19303
|
),
|
|
19305
19304
|
children: [
|
|
19306
|
-
groups.map((group, gi) => /* @__PURE__ */ jsxs(
|
|
19305
|
+
groups.map((group, gi) => /* @__PURE__ */ jsxs(React115__default.Fragment, { children: [
|
|
19307
19306
|
group.label && /* @__PURE__ */ jsx(Divider, { label: group.label, className: gi > 0 ? "mt-4" : "mt-0" }),
|
|
19308
19307
|
group.items.map(
|
|
19309
19308
|
(itemData, index) => renderItem(itemData, index, gi === groups.length - 1 && index === group.items.length - 1)
|
|
@@ -20579,7 +20578,7 @@ var init_WizardProgress = __esm({
|
|
|
20579
20578
|
children: /* @__PURE__ */ jsx("div", { className: "flex items-center gap-2", children: normalizedSteps.map((step, index) => {
|
|
20580
20579
|
const isActive = index === currentStep;
|
|
20581
20580
|
const isCompleted = index < currentStep;
|
|
20582
|
-
return /* @__PURE__ */ jsxs(
|
|
20581
|
+
return /* @__PURE__ */ jsxs(React115__default.Fragment, { children: [
|
|
20583
20582
|
/* @__PURE__ */ jsx(
|
|
20584
20583
|
"button",
|
|
20585
20584
|
{
|
|
@@ -21490,7 +21489,7 @@ function InventoryGrid({
|
|
|
21490
21489
|
const eventBus = useEventBus();
|
|
21491
21490
|
const slotCount = totalSlots ?? items.length;
|
|
21492
21491
|
const emptySlotCount = Math.max(0, slotCount - items.length);
|
|
21493
|
-
const handleSelect =
|
|
21492
|
+
const handleSelect = React115.useCallback(
|
|
21494
21493
|
(id) => {
|
|
21495
21494
|
onSelect?.(id);
|
|
21496
21495
|
if (selectEvent) {
|
|
@@ -21703,15 +21702,15 @@ function GameCanvas2D({
|
|
|
21703
21702
|
fps = 60,
|
|
21704
21703
|
className
|
|
21705
21704
|
}) {
|
|
21706
|
-
const canvasRef =
|
|
21707
|
-
const rafRef =
|
|
21708
|
-
const frameRef =
|
|
21709
|
-
const lastTimeRef =
|
|
21710
|
-
const onDrawRef =
|
|
21705
|
+
const canvasRef = React115.useRef(null);
|
|
21706
|
+
const rafRef = React115.useRef(0);
|
|
21707
|
+
const frameRef = React115.useRef(0);
|
|
21708
|
+
const lastTimeRef = React115.useRef(0);
|
|
21709
|
+
const onDrawRef = React115.useRef(onDraw);
|
|
21711
21710
|
onDrawRef.current = onDraw;
|
|
21712
|
-
const onTickRef =
|
|
21711
|
+
const onTickRef = React115.useRef(onTick);
|
|
21713
21712
|
onTickRef.current = onTick;
|
|
21714
|
-
|
|
21713
|
+
React115.useEffect(() => {
|
|
21715
21714
|
const canvas = canvasRef.current;
|
|
21716
21715
|
if (!canvas) return;
|
|
21717
21716
|
const ctx = canvas.getContext("2d");
|
|
@@ -22000,7 +21999,7 @@ function TurnPanel({
|
|
|
22000
21999
|
className
|
|
22001
22000
|
}) {
|
|
22002
22001
|
const eventBus = useEventBus();
|
|
22003
|
-
const handleAction =
|
|
22002
|
+
const handleAction = React115.useCallback(
|
|
22004
22003
|
(event) => {
|
|
22005
22004
|
if (event) {
|
|
22006
22005
|
eventBus.emit(event, { turn: currentTurn, phase, activeTeam });
|
|
@@ -22146,7 +22145,7 @@ function UnitCommandBar({
|
|
|
22146
22145
|
className
|
|
22147
22146
|
}) {
|
|
22148
22147
|
const eventBus = useEventBus();
|
|
22149
|
-
const handleCommand =
|
|
22148
|
+
const handleCommand = React115.useCallback(
|
|
22150
22149
|
(event) => {
|
|
22151
22150
|
if (event) {
|
|
22152
22151
|
eventBus.emit(event, { unitId: selectedUnitId });
|
|
@@ -22631,7 +22630,7 @@ function GameMenu({
|
|
|
22631
22630
|
} catch {
|
|
22632
22631
|
}
|
|
22633
22632
|
const eventBus = eventBusProp || eventBusFromHook;
|
|
22634
|
-
const handleOptionClick =
|
|
22633
|
+
const handleOptionClick = React115.useCallback(
|
|
22635
22634
|
(option) => {
|
|
22636
22635
|
if (option.event && eventBus) {
|
|
22637
22636
|
eventBus.emit(`UI:${option.event}`, { option });
|
|
@@ -22745,7 +22744,7 @@ function GameOverScreen({
|
|
|
22745
22744
|
} catch {
|
|
22746
22745
|
}
|
|
22747
22746
|
const eventBus = eventBusProp || eventBusFromHook;
|
|
22748
|
-
const handleActionClick =
|
|
22747
|
+
const handleActionClick = React115.useCallback(
|
|
22749
22748
|
(action) => {
|
|
22750
22749
|
if (action.event && eventBus) {
|
|
22751
22750
|
eventBus.emit(`UI:${action.event}`, { action });
|
|
@@ -25849,7 +25848,7 @@ var init_StepFlow = __esm({
|
|
|
25849
25848
|
className
|
|
25850
25849
|
}) => {
|
|
25851
25850
|
if (orientation === "vertical") {
|
|
25852
|
-
return /* @__PURE__ */ jsx(VStack, { gap: "none", className: cn("w-full", className), children: steps.map((step, index) => /* @__PURE__ */ jsx(
|
|
25851
|
+
return /* @__PURE__ */ jsx(VStack, { gap: "none", className: cn("w-full", className), children: steps.map((step, index) => /* @__PURE__ */ jsx(React115__default.Fragment, { children: /* @__PURE__ */ jsxs(HStack, { gap: "md", align: "start", className: "w-full", children: [
|
|
25853
25852
|
/* @__PURE__ */ jsxs(VStack, { gap: "none", align: "center", children: [
|
|
25854
25853
|
/* @__PURE__ */ jsx(StepCircle, { step, index }),
|
|
25855
25854
|
showConnectors && index < steps.length - 1 && /* @__PURE__ */ jsx(Box, { className: "w-px h-8 bg-border" })
|
|
@@ -25860,7 +25859,7 @@ var init_StepFlow = __esm({
|
|
|
25860
25859
|
] })
|
|
25861
25860
|
] }) }, index)) });
|
|
25862
25861
|
}
|
|
25863
|
-
return /* @__PURE__ */ jsx(Box, { className: cn("w-full flex flex-col md:flex-row items-start gap-0", className), children: steps.map((step, index) => /* @__PURE__ */ jsxs(
|
|
25862
|
+
return /* @__PURE__ */ jsx(Box, { className: cn("w-full flex flex-col md:flex-row items-start gap-0", className), children: steps.map((step, index) => /* @__PURE__ */ jsxs(React115__default.Fragment, { children: [
|
|
25864
25863
|
/* @__PURE__ */ jsxs(VStack, { gap: "sm", align: "center", className: "flex-1 w-full md:w-auto", children: [
|
|
25865
25864
|
/* @__PURE__ */ jsx(StepCircle, { step, index }),
|
|
25866
25865
|
/* @__PURE__ */ jsx(Typography, { variant: "h4", className: "text-center", children: step.title }),
|
|
@@ -27974,7 +27973,7 @@ var init_DocumentViewer = __esm({
|
|
|
27974
27973
|
}
|
|
27975
27974
|
});
|
|
27976
27975
|
function extractTitle(children) {
|
|
27977
|
-
if (!
|
|
27976
|
+
if (!React115__default.isValidElement(children)) return void 0;
|
|
27978
27977
|
const props = children.props;
|
|
27979
27978
|
if (typeof props.title === "string") {
|
|
27980
27979
|
return props.title;
|
|
@@ -28029,7 +28028,7 @@ function LinearView({
|
|
|
28029
28028
|
/* @__PURE__ */ jsx(HStack, { className: "flex-wrap items-center", gap: "xs", children: trait.states.map((state, i) => {
|
|
28030
28029
|
const isDone = i < currentIdx;
|
|
28031
28030
|
const isCurrent = i === currentIdx;
|
|
28032
|
-
return /* @__PURE__ */ jsxs(
|
|
28031
|
+
return /* @__PURE__ */ jsxs(React115__default.Fragment, { children: [
|
|
28033
28032
|
i > 0 && /* @__PURE__ */ jsx(
|
|
28034
28033
|
Typography,
|
|
28035
28034
|
{
|
|
@@ -28813,12 +28812,12 @@ var init_Form = __esm({
|
|
|
28813
28812
|
const isSchemaEntity = isOrbitalEntitySchema(entity);
|
|
28814
28813
|
const resolvedEntity = isSchemaEntity ? entity : void 0;
|
|
28815
28814
|
const entityName = typeof entity === "string" ? entity : resolvedEntity?.name;
|
|
28816
|
-
const normalizedInitialData =
|
|
28815
|
+
const normalizedInitialData = React115__default.useMemo(() => {
|
|
28817
28816
|
const entityRowAsInitial = isPlainEntityRow(entity) ? entity : void 0;
|
|
28818
28817
|
const callerInitial = initialData !== null && typeof initialData === "object" && !Array.isArray(initialData) ? initialData : {};
|
|
28819
28818
|
return entityRowAsInitial !== void 0 ? { ...entityRowAsInitial, ...callerInitial } : callerInitial;
|
|
28820
28819
|
}, [entity, initialData]);
|
|
28821
|
-
const entityDerivedFields =
|
|
28820
|
+
const entityDerivedFields = React115__default.useMemo(() => {
|
|
28822
28821
|
if (fields && fields.length > 0) return void 0;
|
|
28823
28822
|
if (!resolvedEntity) return void 0;
|
|
28824
28823
|
return resolvedEntity.fields.map(
|
|
@@ -28837,14 +28836,14 @@ var init_Form = __esm({
|
|
|
28837
28836
|
const conditionalFields = typeof conditionalFieldsRaw === "boolean" ? {} : conditionalFieldsRaw;
|
|
28838
28837
|
const hiddenCalculations = typeof hiddenCalculationsRaw === "boolean" ? [] : hiddenCalculationsRaw;
|
|
28839
28838
|
const violationTriggers = typeof violationTriggersRaw === "boolean" ? [] : violationTriggersRaw;
|
|
28840
|
-
const [formData, setFormData] =
|
|
28839
|
+
const [formData, setFormData] = React115__default.useState(
|
|
28841
28840
|
normalizedInitialData
|
|
28842
28841
|
);
|
|
28843
|
-
const [collapsedSections, setCollapsedSections] =
|
|
28842
|
+
const [collapsedSections, setCollapsedSections] = React115__default.useState(
|
|
28844
28843
|
/* @__PURE__ */ new Set()
|
|
28845
28844
|
);
|
|
28846
28845
|
const formMode = props.mode;
|
|
28847
|
-
const mountedRef =
|
|
28846
|
+
const mountedRef = React115__default.useRef(false);
|
|
28848
28847
|
if (!mountedRef.current) {
|
|
28849
28848
|
mountedRef.current = true;
|
|
28850
28849
|
debug("forms", "mount", {
|
|
@@ -28857,7 +28856,7 @@ var init_Form = __esm({
|
|
|
28857
28856
|
});
|
|
28858
28857
|
}
|
|
28859
28858
|
const shouldShowCancel = showCancel ?? (fields && fields.length > 0);
|
|
28860
|
-
const evalContext =
|
|
28859
|
+
const evalContext = React115__default.useMemo(
|
|
28861
28860
|
() => ({
|
|
28862
28861
|
formValues: formData,
|
|
28863
28862
|
globalVariables: externalContext?.globalVariables ?? {},
|
|
@@ -28866,7 +28865,7 @@ var init_Form = __esm({
|
|
|
28866
28865
|
}),
|
|
28867
28866
|
[formData, externalContext]
|
|
28868
28867
|
);
|
|
28869
|
-
|
|
28868
|
+
React115__default.useEffect(() => {
|
|
28870
28869
|
debug("forms", "initialData-sync", {
|
|
28871
28870
|
mode: formMode,
|
|
28872
28871
|
normalizedInitialData,
|
|
@@ -28877,7 +28876,7 @@ var init_Form = __esm({
|
|
|
28877
28876
|
setFormData(normalizedInitialData);
|
|
28878
28877
|
}
|
|
28879
28878
|
}, [normalizedInitialData]);
|
|
28880
|
-
const processCalculations =
|
|
28879
|
+
const processCalculations = React115__default.useCallback(
|
|
28881
28880
|
(changedFieldId, newFormData) => {
|
|
28882
28881
|
if (!hiddenCalculations.length) return;
|
|
28883
28882
|
const context = {
|
|
@@ -28902,7 +28901,7 @@ var init_Form = __esm({
|
|
|
28902
28901
|
},
|
|
28903
28902
|
[hiddenCalculations, externalContext, eventBus]
|
|
28904
28903
|
);
|
|
28905
|
-
const checkViolations =
|
|
28904
|
+
const checkViolations = React115__default.useCallback(
|
|
28906
28905
|
(changedFieldId, newFormData) => {
|
|
28907
28906
|
if (!violationTriggers.length) return;
|
|
28908
28907
|
const context = {
|
|
@@ -28940,7 +28939,7 @@ var init_Form = __esm({
|
|
|
28940
28939
|
processCalculations(name, newFormData);
|
|
28941
28940
|
checkViolations(name, newFormData);
|
|
28942
28941
|
};
|
|
28943
|
-
const isFieldVisible =
|
|
28942
|
+
const isFieldVisible = React115__default.useCallback(
|
|
28944
28943
|
(fieldName) => {
|
|
28945
28944
|
const condition = conditionalFields[fieldName];
|
|
28946
28945
|
if (!condition) return true;
|
|
@@ -28948,7 +28947,7 @@ var init_Form = __esm({
|
|
|
28948
28947
|
},
|
|
28949
28948
|
[conditionalFields, evalContext]
|
|
28950
28949
|
);
|
|
28951
|
-
const isSectionVisible =
|
|
28950
|
+
const isSectionVisible = React115__default.useCallback(
|
|
28952
28951
|
(section) => {
|
|
28953
28952
|
if (!section.condition) return true;
|
|
28954
28953
|
return Boolean(evaluateFormExpression(section.condition, evalContext));
|
|
@@ -28992,7 +28991,7 @@ var init_Form = __esm({
|
|
|
28992
28991
|
eventBus.emit(`UI:${onCancel}`);
|
|
28993
28992
|
}
|
|
28994
28993
|
};
|
|
28995
|
-
const renderField =
|
|
28994
|
+
const renderField = React115__default.useCallback(
|
|
28996
28995
|
(field) => {
|
|
28997
28996
|
const fieldName = field.name || field.field;
|
|
28998
28997
|
if (!fieldName) return null;
|
|
@@ -29013,7 +29012,7 @@ var init_Form = __esm({
|
|
|
29013
29012
|
[formData, isFieldVisible, relationsData, relationsLoading, isLoading]
|
|
29014
29013
|
);
|
|
29015
29014
|
const effectiveFields = entityDerivedFields ?? fields;
|
|
29016
|
-
const normalizedFields =
|
|
29015
|
+
const normalizedFields = React115__default.useMemo(() => {
|
|
29017
29016
|
if (!effectiveFields || effectiveFields.length === 0) return [];
|
|
29018
29017
|
return effectiveFields.map((field) => {
|
|
29019
29018
|
if (typeof field === "string") {
|
|
@@ -29035,7 +29034,7 @@ var init_Form = __esm({
|
|
|
29035
29034
|
return field;
|
|
29036
29035
|
});
|
|
29037
29036
|
}, [effectiveFields, resolvedEntity]);
|
|
29038
|
-
const schemaFields =
|
|
29037
|
+
const schemaFields = React115__default.useMemo(() => {
|
|
29039
29038
|
if (normalizedFields.length === 0) return null;
|
|
29040
29039
|
if (isDebugEnabled()) {
|
|
29041
29040
|
debugGroup(`Form: ${entityName || "unknown"}`);
|
|
@@ -29045,7 +29044,7 @@ var init_Form = __esm({
|
|
|
29045
29044
|
}
|
|
29046
29045
|
return normalizedFields.map(renderField).filter(Boolean);
|
|
29047
29046
|
}, [normalizedFields, renderField, entityName, conditionalFields]);
|
|
29048
|
-
const sectionElements =
|
|
29047
|
+
const sectionElements = React115__default.useMemo(() => {
|
|
29049
29048
|
if (!sections || sections.length === 0) return null;
|
|
29050
29049
|
return sections.map((section) => {
|
|
29051
29050
|
if (!isSectionVisible(section)) {
|
|
@@ -30569,7 +30568,7 @@ var init_List = __esm({
|
|
|
30569
30568
|
if (entity && typeof entity === "object" && "id" in entity) return [entity];
|
|
30570
30569
|
return [];
|
|
30571
30570
|
}, [entity]);
|
|
30572
|
-
const getItemActions =
|
|
30571
|
+
const getItemActions = React115__default.useCallback(
|
|
30573
30572
|
(item) => {
|
|
30574
30573
|
if (!itemActions) return [];
|
|
30575
30574
|
if (typeof itemActions === "function") {
|
|
@@ -31006,7 +31005,7 @@ var init_MediaGallery = __esm({
|
|
|
31006
31005
|
[selectable, selectedItems, selectionEvent, eventBus]
|
|
31007
31006
|
);
|
|
31008
31007
|
const entityData = Array.isArray(entity) ? entity : [];
|
|
31009
|
-
const items =
|
|
31008
|
+
const items = React115__default.useMemo(() => {
|
|
31010
31009
|
if (propItems) return propItems;
|
|
31011
31010
|
if (entityData.length === 0) return [];
|
|
31012
31011
|
return entityData.map((record, idx) => ({
|
|
@@ -31170,7 +31169,7 @@ var init_MediaGallery = __esm({
|
|
|
31170
31169
|
}
|
|
31171
31170
|
});
|
|
31172
31171
|
function extractTitle2(children) {
|
|
31173
|
-
if (!
|
|
31172
|
+
if (!React115__default.isValidElement(children)) return void 0;
|
|
31174
31173
|
const props = children.props;
|
|
31175
31174
|
if (typeof props.title === "string") {
|
|
31176
31175
|
return props.title;
|
|
@@ -31883,7 +31882,7 @@ var init_PageHeader = __esm({
|
|
|
31883
31882
|
info: "bg-info/10 text-info"
|
|
31884
31883
|
};
|
|
31885
31884
|
return /* @__PURE__ */ jsxs(Box, { className: cn("mb-6", className), children: [
|
|
31886
|
-
breadcrumbs && breadcrumbs.length > 0 && /* @__PURE__ */ jsx(Box, { as: "nav", className: "mb-4", children: /* @__PURE__ */ jsx(Box, { as: "ol", className: "flex items-center gap-2 text-sm", children: breadcrumbs.map((crumb, idx) => /* @__PURE__ */ jsxs(
|
|
31885
|
+
breadcrumbs && breadcrumbs.length > 0 && /* @__PURE__ */ jsx(Box, { as: "nav", className: "mb-4", children: /* @__PURE__ */ jsx(Box, { as: "ol", className: "flex items-center gap-2 text-sm", children: breadcrumbs.map((crumb, idx) => /* @__PURE__ */ jsxs(React115__default.Fragment, { children: [
|
|
31887
31886
|
idx > 0 && /* @__PURE__ */ jsx(Typography, { variant: "small", color: "muted", children: "/" }),
|
|
31888
31887
|
crumb.href ? /* @__PURE__ */ jsx(
|
|
31889
31888
|
"a",
|
|
@@ -32057,7 +32056,7 @@ var init_debugRegistry = __esm({
|
|
|
32057
32056
|
}
|
|
32058
32057
|
});
|
|
32059
32058
|
function useDebugData() {
|
|
32060
|
-
const [data, setData] =
|
|
32059
|
+
const [data, setData] = React115.useState(() => ({
|
|
32061
32060
|
traits: [],
|
|
32062
32061
|
ticks: [],
|
|
32063
32062
|
guards: [],
|
|
@@ -32071,7 +32070,7 @@ function useDebugData() {
|
|
|
32071
32070
|
},
|
|
32072
32071
|
lastUpdate: Date.now()
|
|
32073
32072
|
}));
|
|
32074
|
-
|
|
32073
|
+
React115.useEffect(() => {
|
|
32075
32074
|
const updateData = () => {
|
|
32076
32075
|
setData({
|
|
32077
32076
|
traits: getAllTraits(),
|
|
@@ -32180,12 +32179,12 @@ function layoutGraph(states, transitions, initialState, width, height) {
|
|
|
32180
32179
|
return positions;
|
|
32181
32180
|
}
|
|
32182
32181
|
function WalkMinimap() {
|
|
32183
|
-
const [walkStep, setWalkStep] =
|
|
32184
|
-
const [traits2, setTraits] =
|
|
32185
|
-
const [coveredEdges, setCoveredEdges] =
|
|
32186
|
-
const [completedTraits, setCompletedTraits] =
|
|
32187
|
-
const prevTraitRef =
|
|
32188
|
-
|
|
32182
|
+
const [walkStep, setWalkStep] = React115.useState(null);
|
|
32183
|
+
const [traits2, setTraits] = React115.useState([]);
|
|
32184
|
+
const [coveredEdges, setCoveredEdges] = React115.useState([]);
|
|
32185
|
+
const [completedTraits, setCompletedTraits] = React115.useState(/* @__PURE__ */ new Set());
|
|
32186
|
+
const prevTraitRef = React115.useRef(null);
|
|
32187
|
+
React115.useEffect(() => {
|
|
32189
32188
|
const interval = setInterval(() => {
|
|
32190
32189
|
const w = window;
|
|
32191
32190
|
const step = w.__orbitalWalkStep;
|
|
@@ -32632,15 +32631,15 @@ var init_EntitiesTab = __esm({
|
|
|
32632
32631
|
}
|
|
32633
32632
|
});
|
|
32634
32633
|
function EventFlowTab({ events: events2 }) {
|
|
32635
|
-
const [filter, setFilter] =
|
|
32636
|
-
const containerRef =
|
|
32637
|
-
const [autoScroll, setAutoScroll] =
|
|
32638
|
-
|
|
32634
|
+
const [filter, setFilter] = React115.useState("all");
|
|
32635
|
+
const containerRef = React115.useRef(null);
|
|
32636
|
+
const [autoScroll, setAutoScroll] = React115.useState(true);
|
|
32637
|
+
React115.useEffect(() => {
|
|
32639
32638
|
if (autoScroll && containerRef.current) {
|
|
32640
32639
|
containerRef.current.scrollTop = containerRef.current.scrollHeight;
|
|
32641
32640
|
}
|
|
32642
32641
|
}, [events2.length, autoScroll]);
|
|
32643
|
-
const filteredEvents =
|
|
32642
|
+
const filteredEvents = React115.useMemo(() => {
|
|
32644
32643
|
if (filter === "all") return events2;
|
|
32645
32644
|
return events2.filter((e) => e.type === filter);
|
|
32646
32645
|
}, [events2, filter]);
|
|
@@ -32759,7 +32758,7 @@ var init_EventFlowTab = __esm({
|
|
|
32759
32758
|
}
|
|
32760
32759
|
});
|
|
32761
32760
|
function GuardsPanel({ guards }) {
|
|
32762
|
-
const [filter, setFilter] =
|
|
32761
|
+
const [filter, setFilter] = React115.useState("all");
|
|
32763
32762
|
if (guards.length === 0) {
|
|
32764
32763
|
return /* @__PURE__ */ jsx(
|
|
32765
32764
|
EmptyState,
|
|
@@ -32772,7 +32771,7 @@ function GuardsPanel({ guards }) {
|
|
|
32772
32771
|
}
|
|
32773
32772
|
const passedCount = guards.filter((g) => g.result).length;
|
|
32774
32773
|
const failedCount = guards.length - passedCount;
|
|
32775
|
-
const filteredGuards =
|
|
32774
|
+
const filteredGuards = React115.useMemo(() => {
|
|
32776
32775
|
if (filter === "all") return guards;
|
|
32777
32776
|
if (filter === "passed") return guards.filter((g) => g.result);
|
|
32778
32777
|
return guards.filter((g) => !g.result);
|
|
@@ -32933,10 +32932,10 @@ function EffectBadge({ effect }) {
|
|
|
32933
32932
|
] });
|
|
32934
32933
|
}
|
|
32935
32934
|
function TransitionTimeline({ transitions }) {
|
|
32936
|
-
const containerRef =
|
|
32937
|
-
const [autoScroll, setAutoScroll] =
|
|
32938
|
-
const [expandedId, setExpandedId] =
|
|
32939
|
-
|
|
32935
|
+
const containerRef = React115.useRef(null);
|
|
32936
|
+
const [autoScroll, setAutoScroll] = React115.useState(true);
|
|
32937
|
+
const [expandedId, setExpandedId] = React115.useState(null);
|
|
32938
|
+
React115.useEffect(() => {
|
|
32940
32939
|
if (autoScroll && containerRef.current) {
|
|
32941
32940
|
containerRef.current.scrollTop = containerRef.current.scrollHeight;
|
|
32942
32941
|
}
|
|
@@ -33222,9 +33221,9 @@ function getAllEvents(traits2) {
|
|
|
33222
33221
|
}
|
|
33223
33222
|
function EventDispatcherTab({ traits: traits2, schema }) {
|
|
33224
33223
|
const eventBus = useEventBus();
|
|
33225
|
-
const [log4, setLog] =
|
|
33226
|
-
const prevStatesRef =
|
|
33227
|
-
|
|
33224
|
+
const [log4, setLog] = React115.useState([]);
|
|
33225
|
+
const prevStatesRef = React115.useRef(/* @__PURE__ */ new Map());
|
|
33226
|
+
React115.useEffect(() => {
|
|
33228
33227
|
for (const trait of traits2) {
|
|
33229
33228
|
const prev = prevStatesRef.current.get(trait.id);
|
|
33230
33229
|
if (prev && prev !== trait.currentState) {
|
|
@@ -33394,10 +33393,10 @@ function VerifyModePanel({
|
|
|
33394
33393
|
serverCount,
|
|
33395
33394
|
localCount
|
|
33396
33395
|
}) {
|
|
33397
|
-
const [expanded, setExpanded] =
|
|
33398
|
-
const scrollRef =
|
|
33399
|
-
const prevCountRef =
|
|
33400
|
-
|
|
33396
|
+
const [expanded, setExpanded] = React115.useState(true);
|
|
33397
|
+
const scrollRef = React115.useRef(null);
|
|
33398
|
+
const prevCountRef = React115.useRef(0);
|
|
33399
|
+
React115.useEffect(() => {
|
|
33401
33400
|
if (expanded && transitions.length > prevCountRef.current && scrollRef.current) {
|
|
33402
33401
|
scrollRef.current.scrollTop = scrollRef.current.scrollHeight;
|
|
33403
33402
|
}
|
|
@@ -33463,10 +33462,10 @@ function RuntimeDebugger({
|
|
|
33463
33462
|
defaultTab,
|
|
33464
33463
|
schema
|
|
33465
33464
|
}) {
|
|
33466
|
-
const [isCollapsed, setIsCollapsed] =
|
|
33467
|
-
const [isVisible, setIsVisible] =
|
|
33465
|
+
const [isCollapsed, setIsCollapsed] = React115.useState(mode === "verify" ? true : defaultCollapsed);
|
|
33466
|
+
const [isVisible, setIsVisible] = React115.useState(mode === "inline" || mode === "verify" || isDebugEnabled2());
|
|
33468
33467
|
const debugData = useDebugData();
|
|
33469
|
-
|
|
33468
|
+
React115.useEffect(() => {
|
|
33470
33469
|
if (mode === "inline") return;
|
|
33471
33470
|
return onDebugToggle((enabled) => {
|
|
33472
33471
|
setIsVisible(enabled);
|
|
@@ -33475,7 +33474,7 @@ function RuntimeDebugger({
|
|
|
33475
33474
|
}
|
|
33476
33475
|
});
|
|
33477
33476
|
}, [mode]);
|
|
33478
|
-
|
|
33477
|
+
React115.useEffect(() => {
|
|
33479
33478
|
if (mode === "inline") return;
|
|
33480
33479
|
const handleKeyDown = (e) => {
|
|
33481
33480
|
if (e.key === "`" && isVisible) {
|
|
@@ -34024,7 +34023,7 @@ function SequenceBar({
|
|
|
34024
34023
|
onSlotRemove(index);
|
|
34025
34024
|
}, [onSlotRemove, playing]);
|
|
34026
34025
|
const paddedSlots = Array.from({ length: maxSlots }, (_, i) => slots[i]);
|
|
34027
|
-
return /* @__PURE__ */ jsx(HStack, { className: cn("items-center", className), gap: "sm", children: paddedSlots.map((slot, i) => /* @__PURE__ */ jsxs(
|
|
34026
|
+
return /* @__PURE__ */ jsx(HStack, { className: cn("items-center", className), gap: "sm", children: paddedSlots.map((slot, i) => /* @__PURE__ */ jsxs(React115__default.Fragment, { children: [
|
|
34028
34027
|
i > 0 && /* @__PURE__ */ jsx(
|
|
34029
34028
|
Typography,
|
|
34030
34029
|
{
|
|
@@ -35369,7 +35368,7 @@ var init_StatCard2 = __esm({
|
|
|
35369
35368
|
const labelToUse = propLabel ?? propTitle;
|
|
35370
35369
|
const eventBus = useEventBus();
|
|
35371
35370
|
const { t } = useTranslate();
|
|
35372
|
-
const handleActionClick =
|
|
35371
|
+
const handleActionClick = React115__default.useCallback(() => {
|
|
35373
35372
|
if (action?.event) {
|
|
35374
35373
|
eventBus.emit(`UI:${action.event}`, {});
|
|
35375
35374
|
}
|
|
@@ -35380,7 +35379,7 @@ var init_StatCard2 = __esm({
|
|
|
35380
35379
|
const data = Array.isArray(entity) ? entity : entity ? [entity] : [];
|
|
35381
35380
|
const isLoading = externalLoading ?? false;
|
|
35382
35381
|
const error = externalError;
|
|
35383
|
-
const computeMetricValue =
|
|
35382
|
+
const computeMetricValue = React115__default.useCallback(
|
|
35384
35383
|
(metric, items) => {
|
|
35385
35384
|
if (metric.value !== void 0) {
|
|
35386
35385
|
return metric.value;
|
|
@@ -35419,7 +35418,7 @@ var init_StatCard2 = __esm({
|
|
|
35419
35418
|
},
|
|
35420
35419
|
[]
|
|
35421
35420
|
);
|
|
35422
|
-
const schemaStats =
|
|
35421
|
+
const schemaStats = React115__default.useMemo(() => {
|
|
35423
35422
|
if (!metrics || metrics.length === 0) return null;
|
|
35424
35423
|
return metrics.map((metric) => ({
|
|
35425
35424
|
label: metric.label,
|
|
@@ -35427,7 +35426,7 @@ var init_StatCard2 = __esm({
|
|
|
35427
35426
|
format: metric.format
|
|
35428
35427
|
}));
|
|
35429
35428
|
}, [metrics, data, computeMetricValue]);
|
|
35430
|
-
const calculatedTrend =
|
|
35429
|
+
const calculatedTrend = React115__default.useMemo(() => {
|
|
35431
35430
|
if (manualTrend !== void 0) return manualTrend;
|
|
35432
35431
|
if (previousValue === void 0 || currentValue === void 0)
|
|
35433
35432
|
return void 0;
|
|
@@ -36411,7 +36410,7 @@ var init_Timeline = __esm({
|
|
|
36411
36410
|
}) => {
|
|
36412
36411
|
const { t } = useTranslate();
|
|
36413
36412
|
const entityData = Array.isArray(entity) ? entity : [];
|
|
36414
|
-
const items =
|
|
36413
|
+
const items = React115__default.useMemo(() => {
|
|
36415
36414
|
if (propItems) return propItems;
|
|
36416
36415
|
if (entityData.length === 0) return [];
|
|
36417
36416
|
return entityData.map((record, idx) => {
|
|
@@ -36518,7 +36517,7 @@ var init_Timeline = __esm({
|
|
|
36518
36517
|
}
|
|
36519
36518
|
});
|
|
36520
36519
|
function extractToastProps(children) {
|
|
36521
|
-
if (!
|
|
36520
|
+
if (!React115__default.isValidElement(children)) {
|
|
36522
36521
|
if (typeof children === "string") {
|
|
36523
36522
|
return { message: children };
|
|
36524
36523
|
}
|
|
@@ -36556,7 +36555,7 @@ var init_ToastSlot = __esm({
|
|
|
36556
36555
|
eventBus.emit("UI:CLOSE");
|
|
36557
36556
|
};
|
|
36558
36557
|
if (!isVisible) return null;
|
|
36559
|
-
const isCustomContent =
|
|
36558
|
+
const isCustomContent = React115__default.isValidElement(children) && !message;
|
|
36560
36559
|
return /* @__PURE__ */ jsx(Box, { className: "fixed bottom-4 right-4 z-50", children: isCustomContent ? children : /* @__PURE__ */ jsx(
|
|
36561
36560
|
Toast,
|
|
36562
36561
|
{
|
|
@@ -36825,7 +36824,7 @@ var init_WizardContainer = __esm({
|
|
|
36825
36824
|
const isCompleted = index < currentStep;
|
|
36826
36825
|
const stepKey = step.id ?? step.tabId ?? `step-${index}`;
|
|
36827
36826
|
const stepTitle = step.title ?? step.name ?? `Step ${index + 1}`;
|
|
36828
|
-
return /* @__PURE__ */ jsxs(
|
|
36827
|
+
return /* @__PURE__ */ jsxs(React115__default.Fragment, { children: [
|
|
36829
36828
|
/* @__PURE__ */ jsx(
|
|
36830
36829
|
Button,
|
|
36831
36830
|
{
|
|
@@ -37207,12 +37206,12 @@ var init_WorldMapTemplate = __esm({
|
|
|
37207
37206
|
}
|
|
37208
37207
|
});
|
|
37209
37208
|
function lazyThree(name, loader) {
|
|
37210
|
-
const Lazy =
|
|
37209
|
+
const Lazy = React115__default.lazy(() => loader().then((m) => ({ default: m[name] })));
|
|
37211
37210
|
function ThreeWrapper(props) {
|
|
37212
|
-
return
|
|
37213
|
-
|
|
37211
|
+
return React115__default.createElement(
|
|
37212
|
+
React115__default.Suspense,
|
|
37214
37213
|
{ fallback: null },
|
|
37215
|
-
|
|
37214
|
+
React115__default.createElement(Lazy, props)
|
|
37216
37215
|
);
|
|
37217
37216
|
}
|
|
37218
37217
|
ThreeWrapper.displayName = `Lazy(${name})`;
|
|
@@ -37700,7 +37699,7 @@ function SuspenseConfigProvider({
|
|
|
37700
37699
|
config,
|
|
37701
37700
|
children
|
|
37702
37701
|
}) {
|
|
37703
|
-
return
|
|
37702
|
+
return React115__default.createElement(
|
|
37704
37703
|
SuspenseConfigContext.Provider,
|
|
37705
37704
|
{ value: config },
|
|
37706
37705
|
children
|
|
@@ -38183,7 +38182,7 @@ function renderPatternChildren(children, onDismiss, parentId = "root", parentPat
|
|
|
38183
38182
|
const key = `${parentId}-${index}-trait:${traitName}`;
|
|
38184
38183
|
return /* @__PURE__ */ jsx(TraitFrame, { traitName }, key);
|
|
38185
38184
|
}
|
|
38186
|
-
return /* @__PURE__ */ jsx(
|
|
38185
|
+
return /* @__PURE__ */ jsx(React115__default.Fragment, { children: child }, `${parentId}-${index}`);
|
|
38187
38186
|
}
|
|
38188
38187
|
if (!child || typeof child !== "object") return null;
|
|
38189
38188
|
const childId = `${parentId}-${index}`;
|
|
@@ -38396,7 +38395,7 @@ var init_UISlotRenderer = __esm({
|
|
|
38396
38395
|
init_Box();
|
|
38397
38396
|
init_Typography();
|
|
38398
38397
|
init_useEventBus();
|
|
38399
|
-
|
|
38398
|
+
init_slot_types();
|
|
38400
38399
|
init_cn();
|
|
38401
38400
|
init_ErrorBoundary();
|
|
38402
38401
|
init_logger();
|