@almadar/ui 5.26.0 → 5.26.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2533,18 +2533,22 @@ var init_SvgBranch = __esm({
2533
2533
  "components/core/atoms/svg/SvgBranch.tsx"() {
2534
2534
  "use client";
2535
2535
  SvgBranch = ({
2536
- x,
2537
- y,
2536
+ x = 5,
2537
+ y = 50,
2538
2538
  variant = "fork",
2539
2539
  branches = 2,
2540
2540
  size = 1,
2541
2541
  color = "var(--color-primary)",
2542
2542
  opacity = 1,
2543
- className
2543
+ className,
2544
+ asRoot = true,
2545
+ width = 100,
2546
+ height = 100
2544
2547
  }) => {
2548
+ let inner;
2545
2549
  if (variant === "diamond") {
2546
2550
  const points = buildDiamondPoints(x, y, size);
2547
- return /* @__PURE__ */ jsx("g", { className, opacity, children: /* @__PURE__ */ jsx(
2551
+ inner = /* @__PURE__ */ jsx("g", { className, opacity, children: /* @__PURE__ */ jsx(
2548
2552
  "polygon",
2549
2553
  {
2550
2554
  points,
@@ -2554,23 +2558,28 @@ var init_SvgBranch = __esm({
2554
2558
  strokeLinejoin: "round"
2555
2559
  }
2556
2560
  ) });
2561
+ } else {
2562
+ const paths = variant === "fork" ? buildForkPaths(x, y, branches, size) : buildMergePaths(x, y, branches, size);
2563
+ inner = /* @__PURE__ */ jsxs("g", { className, opacity, children: [
2564
+ paths.map((d, i) => /* @__PURE__ */ jsx(
2565
+ "path",
2566
+ {
2567
+ d,
2568
+ fill: "none",
2569
+ stroke: color,
2570
+ strokeWidth: 2,
2571
+ strokeLinecap: "round"
2572
+ },
2573
+ i
2574
+ )),
2575
+ variant === "fork" && /* @__PURE__ */ jsx("circle", { cx: x + 30 * size, cy: y, r: 3, fill: color }),
2576
+ variant === "merge" && /* @__PURE__ */ jsx("circle", { cx: x + 30 * size, cy: y, r: 3, fill: color })
2577
+ ] });
2557
2578
  }
2558
- const paths = variant === "fork" ? buildForkPaths(x, y, branches, size) : buildMergePaths(x, y, branches, size);
2559
- return /* @__PURE__ */ jsxs("g", { className, opacity, children: [
2560
- paths.map((d, i) => /* @__PURE__ */ jsx(
2561
- "path",
2562
- {
2563
- d,
2564
- fill: "none",
2565
- stroke: color,
2566
- strokeWidth: 2,
2567
- strokeLinecap: "round"
2568
- },
2569
- i
2570
- )),
2571
- variant === "fork" && /* @__PURE__ */ jsx("circle", { cx: x + 30 * size, cy: y, r: 3, fill: color }),
2572
- variant === "merge" && /* @__PURE__ */ jsx("circle", { cx: x + 30 * size, cy: y, r: 3, fill: color })
2573
- ] });
2579
+ if (asRoot) {
2580
+ return /* @__PURE__ */ jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
2581
+ }
2582
+ return /* @__PURE__ */ jsx(Fragment, { children: inner });
2574
2583
  };
2575
2584
  SvgBranch.displayName = "SvgBranch";
2576
2585
  }
@@ -2580,20 +2589,23 @@ var init_SvgConnection = __esm({
2580
2589
  "components/core/atoms/svg/SvgConnection.tsx"() {
2581
2590
  "use client";
2582
2591
  SvgConnection = ({
2583
- x1,
2584
- y1,
2585
- x2,
2586
- y2,
2592
+ x1 = 10,
2593
+ y1 = 50,
2594
+ x2 = 90,
2595
+ y2 = 50,
2587
2596
  variant = "solid",
2588
2597
  color = "var(--color-primary)",
2589
2598
  strokeWidth = 1.5,
2590
2599
  opacity = 1,
2591
- className
2600
+ className,
2601
+ asRoot = true,
2602
+ width = 100,
2603
+ height = 100
2592
2604
  }) => {
2593
2605
  const dashProps = variant === "solid" ? {} : {
2594
2606
  strokeDasharray: "8 6"
2595
2607
  };
2596
- return /* @__PURE__ */ jsx(
2608
+ const inner = /* @__PURE__ */ jsx(
2597
2609
  "line",
2598
2610
  {
2599
2611
  className: [
@@ -2611,22 +2623,30 @@ var init_SvgConnection = __esm({
2611
2623
  ...dashProps
2612
2624
  }
2613
2625
  );
2626
+ if (asRoot) {
2627
+ return /* @__PURE__ */ jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
2628
+ }
2629
+ return inner;
2614
2630
  };
2615
2631
  SvgConnection.displayName = "SvgConnection";
2616
2632
  }
2617
2633
  });
2618
- var flowIdCounter, SvgFlow;
2634
+ var flowIdCounter, DEFAULT_POINTS, SvgFlow;
2619
2635
  var init_SvgFlow = __esm({
2620
2636
  "components/core/atoms/svg/SvgFlow.tsx"() {
2621
2637
  "use client";
2622
2638
  flowIdCounter = 0;
2639
+ DEFAULT_POINTS = [[10, 50], [50, 20], [90, 50]];
2623
2640
  SvgFlow = ({
2624
- points,
2641
+ points = DEFAULT_POINTS,
2625
2642
  color = "var(--color-primary)",
2626
2643
  strokeWidth = 1.5,
2627
2644
  animated = false,
2628
2645
  opacity = 1,
2629
- className
2646
+ className,
2647
+ asRoot = true,
2648
+ width = 100,
2649
+ height = 100
2630
2650
  }) => {
2631
2651
  const markerId = React85__default.useMemo(() => {
2632
2652
  flowIdCounter += 1;
@@ -2636,7 +2656,7 @@ var init_SvgFlow = __esm({
2636
2656
  return null;
2637
2657
  }
2638
2658
  const pathData = points.map((pt, i) => `${i === 0 ? "M" : "L"}${pt[0]},${pt[1]}`).join(" ");
2639
- return /* @__PURE__ */ jsxs("g", { className, opacity, children: [
2659
+ const inner = /* @__PURE__ */ jsxs("g", { className, opacity, children: [
2640
2660
  /* @__PURE__ */ jsx("defs", { children: /* @__PURE__ */ jsx(
2641
2661
  "marker",
2642
2662
  {
@@ -2665,6 +2685,10 @@ var init_SvgFlow = __esm({
2665
2685
  }
2666
2686
  )
2667
2687
  ] });
2688
+ if (asRoot) {
2689
+ return /* @__PURE__ */ jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
2690
+ }
2691
+ return inner;
2668
2692
  };
2669
2693
  SvgFlow.displayName = "SvgFlow";
2670
2694
  }
@@ -2674,8 +2698,8 @@ var init_SvgGrid = __esm({
2674
2698
  "components/core/atoms/svg/SvgGrid.tsx"() {
2675
2699
  "use client";
2676
2700
  SvgGrid = ({
2677
- x,
2678
- y,
2701
+ x = 10,
2702
+ y = 10,
2679
2703
  cols = 4,
2680
2704
  rows: rows2 = 3,
2681
2705
  spacing = 20,
@@ -2683,10 +2707,13 @@ var init_SvgGrid = __esm({
2683
2707
  color = "var(--color-primary)",
2684
2708
  opacity = 1,
2685
2709
  className,
2686
- highlights = []
2710
+ highlights = [],
2711
+ asRoot = true,
2712
+ width = 100,
2713
+ height = 100
2687
2714
  }) => {
2688
2715
  const highlightSet = new Set(highlights);
2689
- return /* @__PURE__ */ jsx("g", { className, opacity, children: Array.from({ length: rows2 }).map(
2716
+ const inner = /* @__PURE__ */ jsx("g", { className, opacity, children: Array.from({ length: rows2 }).map(
2690
2717
  (_, row) => Array.from({ length: cols }).map((_2, col) => {
2691
2718
  const index = row * cols + col;
2692
2719
  const isHighlighted = highlightSet.has(index);
@@ -2705,6 +2732,10 @@ var init_SvgGrid = __esm({
2705
2732
  );
2706
2733
  })
2707
2734
  ) });
2735
+ if (asRoot) {
2736
+ return /* @__PURE__ */ jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
2737
+ }
2738
+ return inner;
2708
2739
  };
2709
2740
  SvgGrid.displayName = "SvgGrid";
2710
2741
  }
@@ -2714,15 +2745,18 @@ var init_SvgLobe = __esm({
2714
2745
  "components/core/atoms/svg/SvgLobe.tsx"() {
2715
2746
  "use client";
2716
2747
  SvgLobe = ({
2717
- cx,
2718
- cy,
2748
+ cx = 50,
2749
+ cy = 50,
2719
2750
  rx = 14,
2720
2751
  ry = 20,
2721
2752
  rotation = 0,
2722
2753
  shells = 2,
2723
2754
  color = "var(--color-primary)",
2724
2755
  opacity = 1,
2725
- className
2756
+ className,
2757
+ asRoot = true,
2758
+ width = 100,
2759
+ height = 100
2726
2760
  }) => {
2727
2761
  const clampedShells = Math.max(1, Math.min(3, shells));
2728
2762
  const renderShell = (shellIndex) => {
@@ -2757,7 +2791,7 @@ var init_SvgLobe = __esm({
2757
2791
  )
2758
2792
  ] }, shellIndex);
2759
2793
  };
2760
- return /* @__PURE__ */ jsx(
2794
+ const inner = /* @__PURE__ */ jsx(
2761
2795
  "g",
2762
2796
  {
2763
2797
  className,
@@ -2766,6 +2800,10 @@ var init_SvgLobe = __esm({
2766
2800
  children: Array.from({ length: clampedShells }, (_, i) => renderShell(i))
2767
2801
  }
2768
2802
  );
2803
+ if (asRoot) {
2804
+ return /* @__PURE__ */ jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
2805
+ }
2806
+ return inner;
2769
2807
  };
2770
2808
  SvgLobe.displayName = "SvgLobe";
2771
2809
  }
@@ -2794,18 +2832,21 @@ var init_SvgMesh = __esm({
2794
2832
  "components/core/atoms/svg/SvgMesh.tsx"() {
2795
2833
  "use client";
2796
2834
  SvgMesh = ({
2797
- cx,
2798
- cy,
2835
+ cx = 60,
2836
+ cy = 60,
2799
2837
  nodes = 6,
2800
2838
  radius = 50,
2801
2839
  color = "var(--color-primary)",
2802
2840
  connectionDensity = 0.5,
2803
2841
  opacity = 1,
2804
- className
2842
+ className,
2843
+ asRoot = true,
2844
+ width = 120,
2845
+ height = 120
2805
2846
  }) => {
2806
2847
  const positions = getNodePositions(cx, cy, nodes, radius);
2807
2848
  const connections = getConnections(nodes, connectionDensity);
2808
- return /* @__PURE__ */ jsxs("g", { className, opacity, children: [
2849
+ const inner = /* @__PURE__ */ jsxs("g", { className, opacity, children: [
2809
2850
  connections.map(([a, b]) => /* @__PURE__ */ jsx(
2810
2851
  "line",
2811
2852
  {
@@ -2830,6 +2871,10 @@ var init_SvgMesh = __esm({
2830
2871
  i
2831
2872
  ))
2832
2873
  ] });
2874
+ if (asRoot) {
2875
+ return /* @__PURE__ */ jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
2876
+ }
2877
+ return inner;
2833
2878
  };
2834
2879
  SvgMesh.displayName = "SvgMesh";
2835
2880
  }
@@ -2971,74 +3016,82 @@ var init_SvgMorph = __esm({
2971
3016
  };
2972
3017
  FlowArrow.displayName = "FlowArrow";
2973
3018
  SvgMorph = ({
2974
- x,
2975
- y,
3019
+ x = 5,
3020
+ y = 10,
2976
3021
  size = 1,
2977
3022
  variant = "generic",
2978
3023
  color = "var(--color-primary)",
2979
3024
  opacity = 1,
2980
- className
3025
+ className,
3026
+ asRoot = true,
3027
+ width = 130,
3028
+ height = 50
2981
3029
  }) => {
2982
3030
  const gap = 40 * size;
2983
3031
  const midY = y + 10 * size;
3032
+ let inner;
2984
3033
  if (variant === "text-to-code") {
2985
3034
  const leftEnd = x + 30 * size;
2986
3035
  const rightStart = leftEnd + gap;
2987
- return /* @__PURE__ */ jsxs("g", { className, opacity, children: [
3036
+ inner = /* @__PURE__ */ jsxs("g", { className, opacity, children: [
2988
3037
  /* @__PURE__ */ jsx(TextLines, { x, y, scale: size, color }),
2989
3038
  /* @__PURE__ */ jsx(FlowArrow, { x1: leftEnd, y: midY, x2: rightStart, scale: size, color }),
2990
3039
  /* @__PURE__ */ jsx(CodeBrackets, { x: rightStart, y, scale: size, color })
2991
3040
  ] });
2992
- }
2993
- if (variant === "code-to-app") {
3041
+ } else if (variant === "code-to-app") {
2994
3042
  const leftEnd = x + 26 * size;
2995
3043
  const rightStart = leftEnd + gap;
2996
- return /* @__PURE__ */ jsxs("g", { className, opacity, children: [
3044
+ inner = /* @__PURE__ */ jsxs("g", { className, opacity, children: [
2997
3045
  /* @__PURE__ */ jsx(CodeBrackets, { x, y, scale: size, color }),
2998
3046
  /* @__PURE__ */ jsx(FlowArrow, { x1: leftEnd, y: midY, x2: rightStart, scale: size, color }),
2999
3047
  /* @__PURE__ */ jsx(AppRect, { x: rightStart, y, scale: size, color })
3000
3048
  ] });
3049
+ } else {
3050
+ const circleR = 10 * size;
3051
+ const circleX = x + circleR;
3052
+ const squareStart = x + circleR * 2 + gap;
3053
+ const squareSize = circleR * 2;
3054
+ inner = /* @__PURE__ */ jsxs("g", { className, opacity, children: [
3055
+ /* @__PURE__ */ jsx(
3056
+ "circle",
3057
+ {
3058
+ cx: circleX,
3059
+ cy: midY,
3060
+ r: circleR,
3061
+ fill: "none",
3062
+ stroke: color,
3063
+ strokeWidth: 2 * size
3064
+ }
3065
+ ),
3066
+ /* @__PURE__ */ jsx(
3067
+ FlowArrow,
3068
+ {
3069
+ x1: circleX + circleR + 2 * size,
3070
+ y: midY,
3071
+ x2: squareStart,
3072
+ scale: size,
3073
+ color
3074
+ }
3075
+ ),
3076
+ /* @__PURE__ */ jsx(
3077
+ "rect",
3078
+ {
3079
+ x: squareStart,
3080
+ y: midY - circleR,
3081
+ width: squareSize,
3082
+ height: squareSize,
3083
+ rx: 3 * size,
3084
+ fill: "none",
3085
+ stroke: color,
3086
+ strokeWidth: 2 * size
3087
+ }
3088
+ )
3089
+ ] });
3001
3090
  }
3002
- const circleR = 10 * size;
3003
- const circleX = x + circleR;
3004
- const squareStart = x + circleR * 2 + gap;
3005
- const squareSize = circleR * 2;
3006
- return /* @__PURE__ */ jsxs("g", { className, opacity, children: [
3007
- /* @__PURE__ */ jsx(
3008
- "circle",
3009
- {
3010
- cx: circleX,
3011
- cy: midY,
3012
- r: circleR,
3013
- fill: "none",
3014
- stroke: color,
3015
- strokeWidth: 2 * size
3016
- }
3017
- ),
3018
- /* @__PURE__ */ jsx(
3019
- FlowArrow,
3020
- {
3021
- x1: circleX + circleR + 2 * size,
3022
- y: midY,
3023
- x2: squareStart,
3024
- scale: size,
3025
- color
3026
- }
3027
- ),
3028
- /* @__PURE__ */ jsx(
3029
- "rect",
3030
- {
3031
- x: squareStart,
3032
- y: midY - circleR,
3033
- width: squareSize,
3034
- height: squareSize,
3035
- rx: 3 * size,
3036
- fill: "none",
3037
- stroke: color,
3038
- strokeWidth: 2 * size
3039
- }
3040
- )
3041
- ] });
3091
+ if (asRoot) {
3092
+ return /* @__PURE__ */ jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
3093
+ }
3094
+ return /* @__PURE__ */ jsx(Fragment, { children: inner });
3042
3095
  };
3043
3096
  SvgMorph.displayName = "SvgMorph";
3044
3097
  }
@@ -3048,16 +3101,19 @@ var init_SvgNode = __esm({
3048
3101
  "components/core/atoms/svg/SvgNode.tsx"() {
3049
3102
  "use client";
3050
3103
  SvgNode = ({
3051
- x,
3052
- y,
3104
+ x = 50,
3105
+ y = 50,
3053
3106
  r = 6,
3054
3107
  variant = "filled",
3055
3108
  color = "var(--color-primary)",
3056
3109
  opacity = 1,
3057
3110
  className,
3058
- label
3111
+ label,
3112
+ asRoot = true,
3113
+ width = 100,
3114
+ height = 100
3059
3115
  }) => {
3060
- return /* @__PURE__ */ jsxs("g", { className, opacity, children: [
3116
+ const inner = /* @__PURE__ */ jsxs("g", { className, opacity, children: [
3061
3117
  variant === "pulse" && /* @__PURE__ */ jsx(
3062
3118
  "circle",
3063
3119
  {
@@ -3095,6 +3151,10 @@ var init_SvgNode = __esm({
3095
3151
  }
3096
3152
  )
3097
3153
  ] });
3154
+ if (asRoot) {
3155
+ return /* @__PURE__ */ jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
3156
+ }
3157
+ return inner;
3098
3158
  };
3099
3159
  SvgNode.displayName = "SvgNode";
3100
3160
  }
@@ -3116,16 +3176,19 @@ var init_SvgPulse = __esm({
3116
3176
  }
3117
3177
  `;
3118
3178
  SvgPulse = ({
3119
- cx,
3120
- cy,
3179
+ cx = 70,
3180
+ cy = 70,
3121
3181
  rings = 3,
3122
3182
  maxRadius = 60,
3123
3183
  color = "var(--color-primary)",
3124
3184
  animated = true,
3125
3185
  opacity = 1,
3126
- className
3186
+ className,
3187
+ asRoot = true,
3188
+ width = 140,
3189
+ height = 140
3127
3190
  }) => {
3128
- return /* @__PURE__ */ jsxs("g", { className, opacity, children: [
3191
+ const inner = /* @__PURE__ */ jsxs("g", { className, opacity, children: [
3129
3192
  animated && /* @__PURE__ */ jsx("style", { children: PULSE_KEYFRAMES }),
3130
3193
  Array.from({ length: rings }).map((_, i) => {
3131
3194
  const ringRadius = (i + 1) / rings * maxRadius;
@@ -3151,6 +3214,10 @@ var init_SvgPulse = __esm({
3151
3214
  }),
3152
3215
  /* @__PURE__ */ jsx("circle", { cx, cy, r: 3, fill: color })
3153
3216
  ] });
3217
+ if (asRoot) {
3218
+ return /* @__PURE__ */ jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
3219
+ }
3220
+ return inner;
3154
3221
  };
3155
3222
  SvgPulse.displayName = "SvgPulse";
3156
3223
  }
@@ -3161,21 +3228,24 @@ var init_SvgRing = __esm({
3161
3228
  "use client";
3162
3229
  ringIdCounter = 0;
3163
3230
  SvgRing = ({
3164
- cx,
3165
- cy,
3231
+ cx = 50,
3232
+ cy = 50,
3166
3233
  r = 40,
3167
3234
  variant = "solid",
3168
3235
  color = "var(--color-primary)",
3169
3236
  strokeWidth = 1.5,
3170
3237
  opacity = 1,
3171
3238
  className,
3172
- label
3239
+ label,
3240
+ asRoot = true,
3241
+ width = 100,
3242
+ height = 100
3173
3243
  }) => {
3174
3244
  const gradientId = React85__default.useMemo(() => {
3175
3245
  ringIdCounter += 1;
3176
3246
  return `almadar-ring-glow-${ringIdCounter}`;
3177
3247
  }, []);
3178
- return /* @__PURE__ */ jsxs("g", { className, opacity, children: [
3248
+ const inner = /* @__PURE__ */ jsxs("g", { className, opacity, children: [
3179
3249
  variant === "glow" && /* @__PURE__ */ jsxs(Fragment, { children: [
3180
3250
  /* @__PURE__ */ jsx("defs", { children: /* @__PURE__ */ jsxs("radialGradient", { id: gradientId, cx: "50%", cy: "50%", r: "50%", children: [
3181
3251
  /* @__PURE__ */ jsx("stop", { offset: "0%", stopColor: color, stopOpacity: 0.15 }),
@@ -3208,6 +3278,10 @@ var init_SvgRing = __esm({
3208
3278
  }
3209
3279
  )
3210
3280
  ] });
3281
+ if (asRoot) {
3282
+ return /* @__PURE__ */ jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
3283
+ }
3284
+ return inner;
3211
3285
  };
3212
3286
  SvgRing.displayName = "SvgRing";
3213
3287
  }
@@ -3219,15 +3293,18 @@ var init_SvgShield = __esm({
3219
3293
  SHIELD_PATH = "M15,2 C15,2 5,5 2,6 C2,6 2,18 5,24 C8,30 15,34 15,34 C15,34 22,30 25,24 C28,18 28,6 28,6 C25,5 15,2 15,2 Z";
3220
3294
  CHECK_PATH = "M10,18 L14,22 L21,13";
3221
3295
  SvgShield = ({
3222
- x,
3223
- y,
3296
+ x = 50,
3297
+ y = 50,
3224
3298
  size = 1,
3225
3299
  variant = "outline",
3226
3300
  color = "var(--color-primary)",
3227
3301
  opacity = 1,
3228
- className
3302
+ className,
3303
+ asRoot = true,
3304
+ width = 100,
3305
+ height = 100
3229
3306
  }) => {
3230
- return /* @__PURE__ */ jsxs(
3307
+ const inner = /* @__PURE__ */ jsxs(
3231
3308
  "g",
3232
3309
  {
3233
3310
  className,
@@ -3258,6 +3335,10 @@ var init_SvgShield = __esm({
3258
3335
  ]
3259
3336
  }
3260
3337
  );
3338
+ if (asRoot) {
3339
+ return /* @__PURE__ */ jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
3340
+ }
3341
+ return inner;
3261
3342
  };
3262
3343
  SvgShield.displayName = "SvgShield";
3263
3344
  }
@@ -3267,20 +3348,23 @@ var init_SvgStack = __esm({
3267
3348
  "components/core/atoms/svg/SvgStack.tsx"() {
3268
3349
  "use client";
3269
3350
  SvgStack = ({
3270
- x,
3271
- y,
3351
+ x = 10,
3352
+ y = 40,
3272
3353
  layers: rawLayers = 3,
3273
3354
  width = 60,
3274
3355
  height = 40,
3275
3356
  color = "var(--color-primary)",
3276
3357
  opacity = 1,
3277
3358
  className,
3278
- labels
3359
+ labels,
3360
+ asRoot = true,
3361
+ svgWidth = 90,
3362
+ svgHeight = 80
3279
3363
  }) => {
3280
3364
  const layers = Math.max(2, Math.min(4, rawLayers));
3281
3365
  const verticalOffset = 8;
3282
3366
  const horizontalOffset = 4;
3283
- return /* @__PURE__ */ jsx("g", { className, opacity, children: Array.from({ length: layers }).map((_, i) => {
3367
+ const inner = /* @__PURE__ */ jsx("g", { className, opacity, children: Array.from({ length: layers }).map((_, i) => {
3284
3368
  const layerIndex = layers - 1 - i;
3285
3369
  const layerX = x + layerIndex * horizontalOffset;
3286
3370
  const layerY = y - layerIndex * verticalOffset;
@@ -3318,6 +3402,10 @@ var init_SvgStack = __esm({
3318
3402
  )
3319
3403
  ] }, layerIndex);
3320
3404
  }) });
3405
+ if (asRoot) {
3406
+ return /* @__PURE__ */ jsx("svg", { viewBox: `0 0 ${svgWidth} ${svgHeight}`, width: svgWidth, height: svgHeight, children: inner });
3407
+ }
3408
+ return inner;
3321
3409
  };
3322
3410
  SvgStack.displayName = "SvgStack";
3323
3411
  }
@@ -4154,10 +4242,11 @@ var init_ProgressBar = __esm({
4154
4242
  const effectiveColor = color ?? variant;
4155
4243
  const effectiveShowPercentage = showPercentage || showLabel;
4156
4244
  if (progressType === "linear") {
4245
+ const showHeader = label || effectiveShowPercentage;
4157
4246
  return /* @__PURE__ */ jsxs("div", { className: cn("w-full", className), children: [
4158
- label && /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between mb-1.5", children: [
4159
- /* @__PURE__ */ jsx("span", { className: "text-sm font-bold text-foreground", children: label }),
4160
- effectiveShowPercentage && /* @__PURE__ */ jsxs("span", { className: "text-sm text-foreground font-medium", children: [
4247
+ showHeader && /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between mb-1.5", children: [
4248
+ label && /* @__PURE__ */ jsx("span", { className: "text-sm font-bold text-foreground", children: label }),
4249
+ effectiveShowPercentage && /* @__PURE__ */ jsxs("span", { className: cn("text-sm text-foreground font-medium", !label && "ml-auto"), children: [
4161
4250
  Math.round(percentage),
4162
4251
  "%"
4163
4252
  ] })
@@ -4242,10 +4331,11 @@ var init_ProgressBar = __esm({
4242
4331
  const stepValue = max / steps;
4243
4332
  const activeSteps = Math.floor(value / stepValue);
4244
4333
  const partialStep = value % stepValue / stepValue;
4334
+ const showStepHeader = label || effectiveShowPercentage;
4245
4335
  return /* @__PURE__ */ jsxs("div", { className: cn("w-full", className), children: [
4246
- label && /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between mb-2", children: [
4247
- /* @__PURE__ */ jsx("span", { className: "text-sm font-medium text-foreground", children: label }),
4248
- effectiveShowPercentage && /* @__PURE__ */ jsxs("span", { className: "text-sm text-muted-foreground", children: [
4336
+ showStepHeader && /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between mb-2", children: [
4337
+ label && /* @__PURE__ */ jsx("span", { className: "text-sm font-medium text-foreground", children: label }),
4338
+ effectiveShowPercentage && /* @__PURE__ */ jsxs("span", { className: cn("text-sm text-muted-foreground", !label && "ml-auto"), children: [
4249
4339
  Math.round(percentage),
4250
4340
  "%"
4251
4341
  ] })
@@ -10947,7 +11037,7 @@ var init_AuthLayout = __esm({
10947
11037
  init_Stack();
10948
11038
  init_Typography();
10949
11039
  AuthLayout = ({
10950
- appName = "{{APP_TITLE}}",
11040
+ appName = "My App",
10951
11041
  logo,
10952
11042
  backgroundImage,
10953
11043
  showBranding = true,
@@ -14659,7 +14749,7 @@ var init_MarkdownContent = __esm({
14659
14749
  init_CodeBlock();
14660
14750
  init_cn();
14661
14751
  MarkdownContent = React85__default.memo(
14662
- ({ content, direction, className }) => {
14752
+ ({ content, direction = "ltr", className }) => {
14663
14753
  const { t: _t } = useTranslate();
14664
14754
  const safeContent = typeof content === "string" ? content : String(content ?? "");
14665
14755
  return /* @__PURE__ */ jsx(
@@ -46626,6 +46716,7 @@ var init_component_registry_generated = __esm({
46626
46716
  init_StatDisplay();
46627
46717
  init_StateArchitectBoard();
46628
46718
  init_StateIndicator();
46719
+ init_StateJsonView();
46629
46720
  init_StateMachineView();
46630
46721
  init_StateNode();
46631
46722
  init_StatsGrid();
@@ -46940,6 +47031,7 @@ var init_component_registry_generated = __esm({
46940
47031
  "StatDisplay": StatDisplay,
46941
47032
  "StateArchitectBoard": StateArchitectBoard,
46942
47033
  "StateIndicator": StateIndicator,
47034
+ "StateJsonView": StateJsonView,
46943
47035
  "StateMachineView": StateMachineView,
46944
47036
  "StateNode": StateNode2,
46945
47037
  "StatsGrid": StatsGrid,