@almadar/ui 5.26.0 → 5.26.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2318,18 +2318,22 @@ var init_SvgBranch = __esm({
2318
2318
  "components/core/atoms/svg/SvgBranch.tsx"() {
2319
2319
  "use client";
2320
2320
  SvgBranch = ({
2321
- x,
2322
- y,
2321
+ x = 5,
2322
+ y = 50,
2323
2323
  variant = "fork",
2324
2324
  branches = 2,
2325
2325
  size = 1,
2326
2326
  color = "var(--color-primary)",
2327
2327
  opacity = 1,
2328
- className
2328
+ className,
2329
+ asRoot = true,
2330
+ width = 100,
2331
+ height = 100
2329
2332
  }) => {
2333
+ let inner;
2330
2334
  if (variant === "diamond") {
2331
2335
  const points = buildDiamondPoints(x, y, size);
2332
- return /* @__PURE__ */ jsxRuntime.jsx("g", { className, opacity, children: /* @__PURE__ */ jsxRuntime.jsx(
2336
+ inner = /* @__PURE__ */ jsxRuntime.jsx("g", { className, opacity, children: /* @__PURE__ */ jsxRuntime.jsx(
2333
2337
  "polygon",
2334
2338
  {
2335
2339
  points,
@@ -2339,23 +2343,28 @@ var init_SvgBranch = __esm({
2339
2343
  strokeLinejoin: "round"
2340
2344
  }
2341
2345
  ) });
2346
+ } else {
2347
+ const paths = variant === "fork" ? buildForkPaths(x, y, branches, size) : buildMergePaths(x, y, branches, size);
2348
+ inner = /* @__PURE__ */ jsxRuntime.jsxs("g", { className, opacity, children: [
2349
+ paths.map((d, i) => /* @__PURE__ */ jsxRuntime.jsx(
2350
+ "path",
2351
+ {
2352
+ d,
2353
+ fill: "none",
2354
+ stroke: color,
2355
+ strokeWidth: 2,
2356
+ strokeLinecap: "round"
2357
+ },
2358
+ i
2359
+ )),
2360
+ variant === "fork" && /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: x + 30 * size, cy: y, r: 3, fill: color }),
2361
+ variant === "merge" && /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: x + 30 * size, cy: y, r: 3, fill: color })
2362
+ ] });
2342
2363
  }
2343
- const paths = variant === "fork" ? buildForkPaths(x, y, branches, size) : buildMergePaths(x, y, branches, size);
2344
- return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, opacity, children: [
2345
- paths.map((d, i) => /* @__PURE__ */ jsxRuntime.jsx(
2346
- "path",
2347
- {
2348
- d,
2349
- fill: "none",
2350
- stroke: color,
2351
- strokeWidth: 2,
2352
- strokeLinecap: "round"
2353
- },
2354
- i
2355
- )),
2356
- variant === "fork" && /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: x + 30 * size, cy: y, r: 3, fill: color }),
2357
- variant === "merge" && /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: x + 30 * size, cy: y, r: 3, fill: color })
2358
- ] });
2364
+ if (asRoot) {
2365
+ return /* @__PURE__ */ jsxRuntime.jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
2366
+ }
2367
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: inner });
2359
2368
  };
2360
2369
  SvgBranch.displayName = "SvgBranch";
2361
2370
  }
@@ -2365,20 +2374,23 @@ var init_SvgConnection = __esm({
2365
2374
  "components/core/atoms/svg/SvgConnection.tsx"() {
2366
2375
  "use client";
2367
2376
  SvgConnection = ({
2368
- x1,
2369
- y1,
2370
- x2,
2371
- y2,
2377
+ x1 = 10,
2378
+ y1 = 50,
2379
+ x2 = 90,
2380
+ y2 = 50,
2372
2381
  variant = "solid",
2373
2382
  color = "var(--color-primary)",
2374
2383
  strokeWidth = 1.5,
2375
2384
  opacity = 1,
2376
- className
2385
+ className,
2386
+ asRoot = true,
2387
+ width = 100,
2388
+ height = 100
2377
2389
  }) => {
2378
2390
  const dashProps = variant === "solid" ? {} : {
2379
2391
  strokeDasharray: "8 6"
2380
2392
  };
2381
- return /* @__PURE__ */ jsxRuntime.jsx(
2393
+ const inner = /* @__PURE__ */ jsxRuntime.jsx(
2382
2394
  "line",
2383
2395
  {
2384
2396
  className: [
@@ -2396,22 +2408,30 @@ var init_SvgConnection = __esm({
2396
2408
  ...dashProps
2397
2409
  }
2398
2410
  );
2411
+ if (asRoot) {
2412
+ return /* @__PURE__ */ jsxRuntime.jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
2413
+ }
2414
+ return inner;
2399
2415
  };
2400
2416
  SvgConnection.displayName = "SvgConnection";
2401
2417
  }
2402
2418
  });
2403
- var flowIdCounter, SvgFlow;
2419
+ var flowIdCounter, DEFAULT_POINTS, SvgFlow;
2404
2420
  var init_SvgFlow = __esm({
2405
2421
  "components/core/atoms/svg/SvgFlow.tsx"() {
2406
2422
  "use client";
2407
2423
  flowIdCounter = 0;
2424
+ DEFAULT_POINTS = [[10, 50], [50, 20], [90, 50]];
2408
2425
  SvgFlow = ({
2409
- points,
2426
+ points = DEFAULT_POINTS,
2410
2427
  color = "var(--color-primary)",
2411
2428
  strokeWidth = 1.5,
2412
2429
  animated = false,
2413
2430
  opacity = 1,
2414
- className
2431
+ className,
2432
+ asRoot = true,
2433
+ width = 100,
2434
+ height = 100
2415
2435
  }) => {
2416
2436
  const markerId = React84__namespace.default.useMemo(() => {
2417
2437
  flowIdCounter += 1;
@@ -2421,7 +2441,7 @@ var init_SvgFlow = __esm({
2421
2441
  return null;
2422
2442
  }
2423
2443
  const pathData = points.map((pt, i) => `${i === 0 ? "M" : "L"}${pt[0]},${pt[1]}`).join(" ");
2424
- return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, opacity, children: [
2444
+ const inner = /* @__PURE__ */ jsxRuntime.jsxs("g", { className, opacity, children: [
2425
2445
  /* @__PURE__ */ jsxRuntime.jsx("defs", { children: /* @__PURE__ */ jsxRuntime.jsx(
2426
2446
  "marker",
2427
2447
  {
@@ -2450,6 +2470,10 @@ var init_SvgFlow = __esm({
2450
2470
  }
2451
2471
  )
2452
2472
  ] });
2473
+ if (asRoot) {
2474
+ return /* @__PURE__ */ jsxRuntime.jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
2475
+ }
2476
+ return inner;
2453
2477
  };
2454
2478
  SvgFlow.displayName = "SvgFlow";
2455
2479
  }
@@ -2459,8 +2483,8 @@ var init_SvgGrid = __esm({
2459
2483
  "components/core/atoms/svg/SvgGrid.tsx"() {
2460
2484
  "use client";
2461
2485
  SvgGrid = ({
2462
- x,
2463
- y,
2486
+ x = 10,
2487
+ y = 10,
2464
2488
  cols = 4,
2465
2489
  rows: rows2 = 3,
2466
2490
  spacing = 20,
@@ -2468,10 +2492,13 @@ var init_SvgGrid = __esm({
2468
2492
  color = "var(--color-primary)",
2469
2493
  opacity = 1,
2470
2494
  className,
2471
- highlights = []
2495
+ highlights = [],
2496
+ asRoot = true,
2497
+ width = 100,
2498
+ height = 100
2472
2499
  }) => {
2473
2500
  const highlightSet = new Set(highlights);
2474
- return /* @__PURE__ */ jsxRuntime.jsx("g", { className, opacity, children: Array.from({ length: rows2 }).map(
2501
+ const inner = /* @__PURE__ */ jsxRuntime.jsx("g", { className, opacity, children: Array.from({ length: rows2 }).map(
2475
2502
  (_, row) => Array.from({ length: cols }).map((_2, col) => {
2476
2503
  const index = row * cols + col;
2477
2504
  const isHighlighted = highlightSet.has(index);
@@ -2490,6 +2517,10 @@ var init_SvgGrid = __esm({
2490
2517
  );
2491
2518
  })
2492
2519
  ) });
2520
+ if (asRoot) {
2521
+ return /* @__PURE__ */ jsxRuntime.jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
2522
+ }
2523
+ return inner;
2493
2524
  };
2494
2525
  SvgGrid.displayName = "SvgGrid";
2495
2526
  }
@@ -2499,15 +2530,18 @@ var init_SvgLobe = __esm({
2499
2530
  "components/core/atoms/svg/SvgLobe.tsx"() {
2500
2531
  "use client";
2501
2532
  SvgLobe = ({
2502
- cx,
2503
- cy,
2533
+ cx = 50,
2534
+ cy = 50,
2504
2535
  rx = 14,
2505
2536
  ry = 20,
2506
2537
  rotation = 0,
2507
2538
  shells = 2,
2508
2539
  color = "var(--color-primary)",
2509
2540
  opacity = 1,
2510
- className
2541
+ className,
2542
+ asRoot = true,
2543
+ width = 100,
2544
+ height = 100
2511
2545
  }) => {
2512
2546
  const clampedShells = Math.max(1, Math.min(3, shells));
2513
2547
  const renderShell = (shellIndex) => {
@@ -2542,7 +2576,7 @@ var init_SvgLobe = __esm({
2542
2576
  )
2543
2577
  ] }, shellIndex);
2544
2578
  };
2545
- return /* @__PURE__ */ jsxRuntime.jsx(
2579
+ const inner = /* @__PURE__ */ jsxRuntime.jsx(
2546
2580
  "g",
2547
2581
  {
2548
2582
  className,
@@ -2551,6 +2585,10 @@ var init_SvgLobe = __esm({
2551
2585
  children: Array.from({ length: clampedShells }, (_, i) => renderShell(i))
2552
2586
  }
2553
2587
  );
2588
+ if (asRoot) {
2589
+ return /* @__PURE__ */ jsxRuntime.jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
2590
+ }
2591
+ return inner;
2554
2592
  };
2555
2593
  SvgLobe.displayName = "SvgLobe";
2556
2594
  }
@@ -2579,18 +2617,21 @@ var init_SvgMesh = __esm({
2579
2617
  "components/core/atoms/svg/SvgMesh.tsx"() {
2580
2618
  "use client";
2581
2619
  SvgMesh = ({
2582
- cx,
2583
- cy,
2620
+ cx = 60,
2621
+ cy = 60,
2584
2622
  nodes = 6,
2585
2623
  radius = 50,
2586
2624
  color = "var(--color-primary)",
2587
2625
  connectionDensity = 0.5,
2588
2626
  opacity = 1,
2589
- className
2627
+ className,
2628
+ asRoot = true,
2629
+ width = 120,
2630
+ height = 120
2590
2631
  }) => {
2591
2632
  const positions = getNodePositions(cx, cy, nodes, radius);
2592
2633
  const connections = getConnections(nodes, connectionDensity);
2593
- return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, opacity, children: [
2634
+ const inner = /* @__PURE__ */ jsxRuntime.jsxs("g", { className, opacity, children: [
2594
2635
  connections.map(([a, b]) => /* @__PURE__ */ jsxRuntime.jsx(
2595
2636
  "line",
2596
2637
  {
@@ -2615,6 +2656,10 @@ var init_SvgMesh = __esm({
2615
2656
  i
2616
2657
  ))
2617
2658
  ] });
2659
+ if (asRoot) {
2660
+ return /* @__PURE__ */ jsxRuntime.jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
2661
+ }
2662
+ return inner;
2618
2663
  };
2619
2664
  SvgMesh.displayName = "SvgMesh";
2620
2665
  }
@@ -2756,74 +2801,82 @@ var init_SvgMorph = __esm({
2756
2801
  };
2757
2802
  FlowArrow.displayName = "FlowArrow";
2758
2803
  SvgMorph = ({
2759
- x,
2760
- y,
2804
+ x = 5,
2805
+ y = 10,
2761
2806
  size = 1,
2762
2807
  variant = "generic",
2763
2808
  color = "var(--color-primary)",
2764
2809
  opacity = 1,
2765
- className
2810
+ className,
2811
+ asRoot = true,
2812
+ width = 130,
2813
+ height = 50
2766
2814
  }) => {
2767
2815
  const gap = 40 * size;
2768
2816
  const midY = y + 10 * size;
2817
+ let inner;
2769
2818
  if (variant === "text-to-code") {
2770
2819
  const leftEnd = x + 30 * size;
2771
2820
  const rightStart = leftEnd + gap;
2772
- return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, opacity, children: [
2821
+ inner = /* @__PURE__ */ jsxRuntime.jsxs("g", { className, opacity, children: [
2773
2822
  /* @__PURE__ */ jsxRuntime.jsx(TextLines, { x, y, scale: size, color }),
2774
2823
  /* @__PURE__ */ jsxRuntime.jsx(FlowArrow, { x1: leftEnd, y: midY, x2: rightStart, scale: size, color }),
2775
2824
  /* @__PURE__ */ jsxRuntime.jsx(CodeBrackets, { x: rightStart, y, scale: size, color })
2776
2825
  ] });
2777
- }
2778
- if (variant === "code-to-app") {
2826
+ } else if (variant === "code-to-app") {
2779
2827
  const leftEnd = x + 26 * size;
2780
2828
  const rightStart = leftEnd + gap;
2781
- return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, opacity, children: [
2829
+ inner = /* @__PURE__ */ jsxRuntime.jsxs("g", { className, opacity, children: [
2782
2830
  /* @__PURE__ */ jsxRuntime.jsx(CodeBrackets, { x, y, scale: size, color }),
2783
2831
  /* @__PURE__ */ jsxRuntime.jsx(FlowArrow, { x1: leftEnd, y: midY, x2: rightStart, scale: size, color }),
2784
2832
  /* @__PURE__ */ jsxRuntime.jsx(AppRect, { x: rightStart, y, scale: size, color })
2785
2833
  ] });
2834
+ } else {
2835
+ const circleR = 10 * size;
2836
+ const circleX = x + circleR;
2837
+ const squareStart = x + circleR * 2 + gap;
2838
+ const squareSize = circleR * 2;
2839
+ inner = /* @__PURE__ */ jsxRuntime.jsxs("g", { className, opacity, children: [
2840
+ /* @__PURE__ */ jsxRuntime.jsx(
2841
+ "circle",
2842
+ {
2843
+ cx: circleX,
2844
+ cy: midY,
2845
+ r: circleR,
2846
+ fill: "none",
2847
+ stroke: color,
2848
+ strokeWidth: 2 * size
2849
+ }
2850
+ ),
2851
+ /* @__PURE__ */ jsxRuntime.jsx(
2852
+ FlowArrow,
2853
+ {
2854
+ x1: circleX + circleR + 2 * size,
2855
+ y: midY,
2856
+ x2: squareStart,
2857
+ scale: size,
2858
+ color
2859
+ }
2860
+ ),
2861
+ /* @__PURE__ */ jsxRuntime.jsx(
2862
+ "rect",
2863
+ {
2864
+ x: squareStart,
2865
+ y: midY - circleR,
2866
+ width: squareSize,
2867
+ height: squareSize,
2868
+ rx: 3 * size,
2869
+ fill: "none",
2870
+ stroke: color,
2871
+ strokeWidth: 2 * size
2872
+ }
2873
+ )
2874
+ ] });
2786
2875
  }
2787
- const circleR = 10 * size;
2788
- const circleX = x + circleR;
2789
- const squareStart = x + circleR * 2 + gap;
2790
- const squareSize = circleR * 2;
2791
- return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, opacity, children: [
2792
- /* @__PURE__ */ jsxRuntime.jsx(
2793
- "circle",
2794
- {
2795
- cx: circleX,
2796
- cy: midY,
2797
- r: circleR,
2798
- fill: "none",
2799
- stroke: color,
2800
- strokeWidth: 2 * size
2801
- }
2802
- ),
2803
- /* @__PURE__ */ jsxRuntime.jsx(
2804
- FlowArrow,
2805
- {
2806
- x1: circleX + circleR + 2 * size,
2807
- y: midY,
2808
- x2: squareStart,
2809
- scale: size,
2810
- color
2811
- }
2812
- ),
2813
- /* @__PURE__ */ jsxRuntime.jsx(
2814
- "rect",
2815
- {
2816
- x: squareStart,
2817
- y: midY - circleR,
2818
- width: squareSize,
2819
- height: squareSize,
2820
- rx: 3 * size,
2821
- fill: "none",
2822
- stroke: color,
2823
- strokeWidth: 2 * size
2824
- }
2825
- )
2826
- ] });
2876
+ if (asRoot) {
2877
+ return /* @__PURE__ */ jsxRuntime.jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
2878
+ }
2879
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: inner });
2827
2880
  };
2828
2881
  SvgMorph.displayName = "SvgMorph";
2829
2882
  }
@@ -2833,16 +2886,19 @@ var init_SvgNode = __esm({
2833
2886
  "components/core/atoms/svg/SvgNode.tsx"() {
2834
2887
  "use client";
2835
2888
  SvgNode = ({
2836
- x,
2837
- y,
2889
+ x = 50,
2890
+ y = 50,
2838
2891
  r = 6,
2839
2892
  variant = "filled",
2840
2893
  color = "var(--color-primary)",
2841
2894
  opacity = 1,
2842
2895
  className,
2843
- label
2896
+ label,
2897
+ asRoot = true,
2898
+ width = 100,
2899
+ height = 100
2844
2900
  }) => {
2845
- return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, opacity, children: [
2901
+ const inner = /* @__PURE__ */ jsxRuntime.jsxs("g", { className, opacity, children: [
2846
2902
  variant === "pulse" && /* @__PURE__ */ jsxRuntime.jsx(
2847
2903
  "circle",
2848
2904
  {
@@ -2880,6 +2936,10 @@ var init_SvgNode = __esm({
2880
2936
  }
2881
2937
  )
2882
2938
  ] });
2939
+ if (asRoot) {
2940
+ return /* @__PURE__ */ jsxRuntime.jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
2941
+ }
2942
+ return inner;
2883
2943
  };
2884
2944
  SvgNode.displayName = "SvgNode";
2885
2945
  }
@@ -2901,16 +2961,19 @@ var init_SvgPulse = __esm({
2901
2961
  }
2902
2962
  `;
2903
2963
  SvgPulse = ({
2904
- cx,
2905
- cy,
2964
+ cx = 70,
2965
+ cy = 70,
2906
2966
  rings = 3,
2907
2967
  maxRadius = 60,
2908
2968
  color = "var(--color-primary)",
2909
2969
  animated = true,
2910
2970
  opacity = 1,
2911
- className
2971
+ className,
2972
+ asRoot = true,
2973
+ width = 140,
2974
+ height = 140
2912
2975
  }) => {
2913
- return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, opacity, children: [
2976
+ const inner = /* @__PURE__ */ jsxRuntime.jsxs("g", { className, opacity, children: [
2914
2977
  animated && /* @__PURE__ */ jsxRuntime.jsx("style", { children: PULSE_KEYFRAMES }),
2915
2978
  Array.from({ length: rings }).map((_, i) => {
2916
2979
  const ringRadius = (i + 1) / rings * maxRadius;
@@ -2936,6 +2999,10 @@ var init_SvgPulse = __esm({
2936
2999
  }),
2937
3000
  /* @__PURE__ */ jsxRuntime.jsx("circle", { cx, cy, r: 3, fill: color })
2938
3001
  ] });
3002
+ if (asRoot) {
3003
+ return /* @__PURE__ */ jsxRuntime.jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
3004
+ }
3005
+ return inner;
2939
3006
  };
2940
3007
  SvgPulse.displayName = "SvgPulse";
2941
3008
  }
@@ -2946,21 +3013,24 @@ var init_SvgRing = __esm({
2946
3013
  "use client";
2947
3014
  ringIdCounter = 0;
2948
3015
  SvgRing = ({
2949
- cx,
2950
- cy,
3016
+ cx = 50,
3017
+ cy = 50,
2951
3018
  r = 40,
2952
3019
  variant = "solid",
2953
3020
  color = "var(--color-primary)",
2954
3021
  strokeWidth = 1.5,
2955
3022
  opacity = 1,
2956
3023
  className,
2957
- label
3024
+ label,
3025
+ asRoot = true,
3026
+ width = 100,
3027
+ height = 100
2958
3028
  }) => {
2959
3029
  const gradientId = React84__namespace.default.useMemo(() => {
2960
3030
  ringIdCounter += 1;
2961
3031
  return `almadar-ring-glow-${ringIdCounter}`;
2962
3032
  }, []);
2963
- return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, opacity, children: [
3033
+ const inner = /* @__PURE__ */ jsxRuntime.jsxs("g", { className, opacity, children: [
2964
3034
  variant === "glow" && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2965
3035
  /* @__PURE__ */ jsxRuntime.jsx("defs", { children: /* @__PURE__ */ jsxRuntime.jsxs("radialGradient", { id: gradientId, cx: "50%", cy: "50%", r: "50%", children: [
2966
3036
  /* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "0%", stopColor: color, stopOpacity: 0.15 }),
@@ -2993,6 +3063,10 @@ var init_SvgRing = __esm({
2993
3063
  }
2994
3064
  )
2995
3065
  ] });
3066
+ if (asRoot) {
3067
+ return /* @__PURE__ */ jsxRuntime.jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
3068
+ }
3069
+ return inner;
2996
3070
  };
2997
3071
  SvgRing.displayName = "SvgRing";
2998
3072
  }
@@ -3004,15 +3078,18 @@ var init_SvgShield = __esm({
3004
3078
  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";
3005
3079
  CHECK_PATH = "M10,18 L14,22 L21,13";
3006
3080
  SvgShield = ({
3007
- x,
3008
- y,
3081
+ x = 50,
3082
+ y = 50,
3009
3083
  size = 1,
3010
3084
  variant = "outline",
3011
3085
  color = "var(--color-primary)",
3012
3086
  opacity = 1,
3013
- className
3087
+ className,
3088
+ asRoot = true,
3089
+ width = 100,
3090
+ height = 100
3014
3091
  }) => {
3015
- return /* @__PURE__ */ jsxRuntime.jsxs(
3092
+ const inner = /* @__PURE__ */ jsxRuntime.jsxs(
3016
3093
  "g",
3017
3094
  {
3018
3095
  className,
@@ -3043,6 +3120,10 @@ var init_SvgShield = __esm({
3043
3120
  ]
3044
3121
  }
3045
3122
  );
3123
+ if (asRoot) {
3124
+ return /* @__PURE__ */ jsxRuntime.jsx("svg", { viewBox: `0 0 ${width} ${height}`, width, height, children: inner });
3125
+ }
3126
+ return inner;
3046
3127
  };
3047
3128
  SvgShield.displayName = "SvgShield";
3048
3129
  }
@@ -3052,20 +3133,23 @@ var init_SvgStack = __esm({
3052
3133
  "components/core/atoms/svg/SvgStack.tsx"() {
3053
3134
  "use client";
3054
3135
  SvgStack = ({
3055
- x,
3056
- y,
3136
+ x = 10,
3137
+ y = 40,
3057
3138
  layers: rawLayers = 3,
3058
3139
  width = 60,
3059
3140
  height = 40,
3060
3141
  color = "var(--color-primary)",
3061
3142
  opacity = 1,
3062
3143
  className,
3063
- labels
3144
+ labels,
3145
+ asRoot = true,
3146
+ svgWidth = 90,
3147
+ svgHeight = 80
3064
3148
  }) => {
3065
3149
  const layers = Math.max(2, Math.min(4, rawLayers));
3066
3150
  const verticalOffset = 8;
3067
3151
  const horizontalOffset = 4;
3068
- return /* @__PURE__ */ jsxRuntime.jsx("g", { className, opacity, children: Array.from({ length: layers }).map((_, i) => {
3152
+ const inner = /* @__PURE__ */ jsxRuntime.jsx("g", { className, opacity, children: Array.from({ length: layers }).map((_, i) => {
3069
3153
  const layerIndex = layers - 1 - i;
3070
3154
  const layerX = x + layerIndex * horizontalOffset;
3071
3155
  const layerY = y - layerIndex * verticalOffset;
@@ -3103,6 +3187,10 @@ var init_SvgStack = __esm({
3103
3187
  )
3104
3188
  ] }, layerIndex);
3105
3189
  }) });
3190
+ if (asRoot) {
3191
+ return /* @__PURE__ */ jsxRuntime.jsx("svg", { viewBox: `0 0 ${svgWidth} ${svgHeight}`, width: svgWidth, height: svgHeight, children: inner });
3192
+ }
3193
+ return inner;
3106
3194
  };
3107
3195
  SvgStack.displayName = "SvgStack";
3108
3196
  }
@@ -3939,10 +4027,11 @@ var init_ProgressBar = __esm({
3939
4027
  const effectiveColor = color ?? variant;
3940
4028
  const effectiveShowPercentage = showPercentage || showLabel;
3941
4029
  if (progressType === "linear") {
4030
+ const showHeader = label || effectiveShowPercentage;
3942
4031
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("w-full", className), children: [
3943
- label && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between mb-1.5", children: [
3944
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-bold text-foreground", children: label }),
3945
- effectiveShowPercentage && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-sm text-foreground font-medium", children: [
4032
+ showHeader && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between mb-1.5", children: [
4033
+ label && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-bold text-foreground", children: label }),
4034
+ effectiveShowPercentage && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: cn("text-sm text-foreground font-medium", !label && "ml-auto"), children: [
3946
4035
  Math.round(percentage),
3947
4036
  "%"
3948
4037
  ] })
@@ -4027,10 +4116,11 @@ var init_ProgressBar = __esm({
4027
4116
  const stepValue = max / steps;
4028
4117
  const activeSteps = Math.floor(value / stepValue);
4029
4118
  const partialStep = value % stepValue / stepValue;
4119
+ const showStepHeader = label || effectiveShowPercentage;
4030
4120
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("w-full", className), children: [
4031
- label && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between mb-2", children: [
4032
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-medium text-foreground", children: label }),
4033
- effectiveShowPercentage && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-sm text-muted-foreground", children: [
4121
+ showStepHeader && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between mb-2", children: [
4122
+ label && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-medium text-foreground", children: label }),
4123
+ effectiveShowPercentage && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: cn("text-sm text-muted-foreground", !label && "ml-auto"), children: [
4034
4124
  Math.round(percentage),
4035
4125
  "%"
4036
4126
  ] })
@@ -10551,7 +10641,7 @@ var init_AuthLayout = __esm({
10551
10641
  init_Stack();
10552
10642
  init_Typography();
10553
10643
  AuthLayout = ({
10554
- appName = "{{APP_TITLE}}",
10644
+ appName = "My App",
10555
10645
  logo,
10556
10646
  backgroundImage,
10557
10647
  showBranding = true,
@@ -14275,7 +14365,7 @@ var init_MarkdownContent = __esm({
14275
14365
  init_CodeBlock();
14276
14366
  init_cn();
14277
14367
  MarkdownContent = React84__namespace.default.memo(
14278
- ({ content, direction, className }) => {
14368
+ ({ content, direction = "ltr", className }) => {
14279
14369
  const { t: _t } = hooks.useTranslate();
14280
14370
  const safeContent = typeof content === "string" ? content : String(content ?? "");
14281
14371
  return /* @__PURE__ */ jsxRuntime.jsx(