@digilogiclabs/saas-factory-ui 1.16.5 → 1.16.7

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/index.js CHANGED
@@ -29370,7 +29370,6 @@ var DEFAULT_GRADIENT = {
29370
29370
  endCycle: "#1a4d52;#3a7a7f;#c45e2e;#f16c25;#c45e2e;#3a7a7f;#1a4d52",
29371
29371
  cycleDuration: 4
29372
29372
  };
29373
- var STYLE_ID3 = "dll-brand-loader-styles";
29374
29373
  var BRAND_LOADER_CSS = `
29375
29374
  .brand-loader-wrapper {
29376
29375
  display: inline-flex;
@@ -29483,14 +29482,6 @@ var BRAND_LOADER_CSS = `
29483
29482
  .brand-loader-label { animation: none; opacity: 1; }
29484
29483
  }
29485
29484
  `;
29486
- function ensureStylesInjected3() {
29487
- if (typeof document === "undefined") return;
29488
- if (document.getElementById(STYLE_ID3)) return;
29489
- const el = document.createElement("style");
29490
- el.id = STYLE_ID3;
29491
- el.textContent = BRAND_LOADER_CSS;
29492
- document.head.appendChild(el);
29493
- }
29494
29485
  function BrandLoader({
29495
29486
  mode = "draw",
29496
29487
  paths,
@@ -29511,7 +29502,6 @@ function BrandLoader({
29511
29502
  }) {
29512
29503
  const rawId = (0, import_react64.useId)().replace(/:/g, "");
29513
29504
  if (!loading) return null;
29514
- ensureStylesInjected3();
29515
29505
  const uid = `brand-${rawId}`;
29516
29506
  const px = typeof size === "number" ? size : SIZES[size] ?? SIZES.md;
29517
29507
  const effectiveDuration = duration ?? (mode === "pulse" ? 2 : 4);
@@ -29540,6 +29530,7 @@ function BrandLoader({
29540
29530
  "aria-live": "polite",
29541
29531
  "aria-label": ariaLabel ?? label ?? "Loading",
29542
29532
  children: [
29533
+ /* @__PURE__ */ (0, import_jsx_runtime112.jsx)("style", { href: "dll-brand-loader", precedence: "default", children: BRAND_LOADER_CSS }),
29543
29534
  mode === "pulse" ? /* @__PURE__ */ (0, import_jsx_runtime112.jsx)(
29544
29535
  "div",
29545
29536
  {
@@ -29742,7 +29733,7 @@ var STAGGER_STEP_MS = 35;
29742
29733
  var STAGGER_CAP = 14;
29743
29734
  var TILT_MAX_DEG = 12;
29744
29735
  var SCALE_HOVER = 1.04;
29745
- var STYLE_ID4 = "dll-tilt-card-styles";
29736
+ var STYLE_ID3 = "dll-tilt-card-styles";
29746
29737
  var TILT_CARD_CSS = `
29747
29738
  .tc-root {
29748
29739
  --tc-accent: #3b82f6;
@@ -30047,11 +30038,11 @@ var TILT_CARD_CSS = `
30047
30038
  }
30048
30039
  }
30049
30040
  `;
30050
- function ensureStylesInjected4() {
30041
+ function ensureStylesInjected3() {
30051
30042
  if (typeof document === "undefined") return;
30052
- if (document.getElementById(STYLE_ID4)) return;
30043
+ if (document.getElementById(STYLE_ID3)) return;
30053
30044
  const el = document.createElement("style");
30054
- el.id = STYLE_ID4;
30045
+ el.id = STYLE_ID3;
30055
30046
  el.textContent = TILT_CARD_CSS;
30056
30047
  document.head.appendChild(el);
30057
30048
  }
@@ -30078,7 +30069,7 @@ function TiltCard({
30078
30069
  const uid = (0, import_react65.useId)().replace(/:/g, "");
30079
30070
  const rootRef = (0, import_react65.useRef)(null);
30080
30071
  const [hovered, setHovered] = (0, import_react65.useState)(false);
30081
- ensureStylesInjected4();
30072
+ ensureStylesInjected3();
30082
30073
  const handleMove = (0, import_react65.useCallback)(
30083
30074
  (e) => {
30084
30075
  if (disableTilt && disableShine) return;
@@ -30704,38 +30695,13 @@ function DiceRoller({
30704
30695
  clampedCount,
30705
30696
  effectiveSize,
30706
30697
  starts,
30698
+ reducedMotion,
30707
30699
  refs: {
30708
30700
  die: dieWrapperRefs.current.map((el) => !!el),
30709
30701
  cube: cubeRefs.current.map((el) => !!el)
30710
30702
  }
30711
30703
  });
30712
30704
  }
30713
- if (reducedMotion) {
30714
- const final = defaultPositions(w, h, clampedCount);
30715
- currentPositionsRef.current = final;
30716
- for (let i = 0; i < clampedCount; i++) {
30717
- const p = final[i];
30718
- const el = dieWrapperRefs.current[i];
30719
- if (el) {
30720
- el.style.transition = "transform 0.2s ease-out";
30721
- el.style.setProperty("--dice-x", `${p.x - half}px`);
30722
- el.style.setProperty("--dice-y", `${p.y - half}px`);
30723
- el.style.setProperty("--dice-sx", "1");
30724
- el.style.setProperty("--dice-sy", "1");
30725
- }
30726
- const tgt = SHOW_ROT[vals[i]];
30727
- writeCubeRotation(i, tgt.x, tgt.y, 0, true);
30728
- }
30729
- setResults(vals);
30730
- setRolling(false);
30731
- rollingRef.current = false;
30732
- const total2 = vals.reduce((a, b) => a + b, 0);
30733
- onRoll?.(vals, total2);
30734
- if (showHistory) {
30735
- setHistory((prev) => [{ vals, total: total2 }, ...prev].slice(0, historyMax));
30736
- }
30737
- return;
30738
- }
30739
30705
  const frames = simulateDice(w, h, effectiveSize, starts, clampedCount);
30740
30706
  for (let i = 0; i < clampedCount; i++) {
30741
30707
  writeCubeRotation(
@@ -30904,72 +30870,64 @@ function DiceRoller({
30904
30870
  "--dice-sx": "1",
30905
30871
  "--dice-sy": "1"
30906
30872
  };
30907
- return /* @__PURE__ */ (0, import_jsx_runtime114.jsxs)(
30908
- "div",
30909
- {
30910
- ref: getDieSetter(d),
30911
- style: wrapperStyle,
30912
- children: [
30913
- /* @__PURE__ */ (0, import_jsx_runtime114.jsx)(
30873
+ return /* @__PURE__ */ (0, import_jsx_runtime114.jsxs)("div", { ref: getDieSetter(d), style: wrapperStyle, children: [
30874
+ /* @__PURE__ */ (0, import_jsx_runtime114.jsx)(
30875
+ "div",
30876
+ {
30877
+ ref: getShadowSetter(d),
30878
+ style: {
30879
+ position: "absolute",
30880
+ bottom: -6,
30881
+ left: "12%",
30882
+ width: "76%",
30883
+ height: 10,
30884
+ background: `radial-gradient(ellipse,${colors.shadow} 0%,transparent 70%)`,
30885
+ borderRadius: "50%",
30886
+ pointerEvents: "none",
30887
+ opacity: 0.85,
30888
+ transition: "opacity 0.3s"
30889
+ }
30890
+ }
30891
+ ),
30892
+ /* @__PURE__ */ (0, import_jsx_runtime114.jsx)(
30893
+ "div",
30894
+ {
30895
+ ref: getCubeSetter(d),
30896
+ style: {
30897
+ width: "100%",
30898
+ height: "100%",
30899
+ position: "relative",
30900
+ transformStyle: "preserve-3d",
30901
+ willChange: "transform"
30902
+ },
30903
+ children: [1, 2, 3, 4, 5, 6].map((val, fi) => /* @__PURE__ */ (0, import_jsx_runtime114.jsx)(
30914
30904
  "div",
30915
30905
  {
30916
- ref: getShadowSetter(d),
30917
30906
  style: {
30918
30907
  position: "absolute",
30919
- bottom: -6,
30920
- left: "12%",
30921
- width: "76%",
30922
- height: 10,
30923
- background: `radial-gradient(ellipse,${colors.shadow} 0%,transparent 70%)`,
30924
- borderRadius: "50%",
30925
- pointerEvents: "none",
30926
- opacity: 0.85,
30927
- transition: "opacity 0.3s"
30928
- }
30929
- }
30930
- ),
30931
- /* @__PURE__ */ (0, import_jsx_runtime114.jsx)(
30932
- "div",
30933
- {
30934
- ref: getCubeSetter(d),
30935
- style: {
30936
- width: "100%",
30937
- height: "100%",
30938
- position: "relative",
30939
- transformStyle: "preserve-3d",
30940
- willChange: "transform"
30908
+ width: effectiveSize,
30909
+ height: effectiveSize,
30910
+ background: colors.face,
30911
+ border: `1px solid ${colors.faceBorder}`,
30912
+ borderRadius: faceRadius,
30913
+ transform: faceTransforms[fi],
30914
+ transition: "background 0.3s, border-color 0.3s"
30941
30915
  },
30942
- children: [1, 2, 3, 4, 5, 6].map((val, fi) => /* @__PURE__ */ (0, import_jsx_runtime114.jsx)(
30943
- "div",
30916
+ children: /* @__PURE__ */ (0, import_jsx_runtime114.jsx)(
30917
+ Face,
30944
30918
  {
30945
- style: {
30946
- position: "absolute",
30947
- width: effectiveSize,
30948
- height: effectiveSize,
30949
- background: colors.face,
30950
- border: `1px solid ${colors.faceBorder}`,
30951
- borderRadius: faceRadius,
30952
- transform: faceTransforms[fi],
30953
- transition: "background 0.3s, border-color 0.3s"
30954
- },
30955
- children: /* @__PURE__ */ (0, import_jsx_runtime114.jsx)(
30956
- Face,
30957
- {
30958
- value: val,
30959
- pipColor: colors.pip,
30960
- pipShadow: colors.pipShadow,
30961
- pipDiameter
30962
- }
30963
- )
30964
- },
30965
- val
30966
- ))
30967
- }
30968
- )
30969
- ]
30970
- },
30971
- d
30972
- );
30919
+ value: val,
30920
+ pipColor: colors.pip,
30921
+ pipShadow: colors.pipShadow,
30922
+ pipDiameter
30923
+ }
30924
+ )
30925
+ },
30926
+ val
30927
+ ))
30928
+ }
30929
+ )
30930
+ ] }, d);
30973
30931
  })
30974
30932
  }
30975
30933
  ),
@@ -31100,7 +31058,7 @@ DiceRoller.displayName = "DiceRoller";
31100
31058
  // src/components/ui/step-wizard/index.tsx
31101
31059
  var import_react67 = require("react");
31102
31060
  var import_jsx_runtime115 = require("react/jsx-runtime");
31103
- var STYLE_ID5 = "dll-step-wizard-styles";
31061
+ var STYLE_ID4 = "dll-step-wizard-styles";
31104
31062
  var STEP_WIZARD_CSS = `
31105
31063
  .sw-root {
31106
31064
  --sw-accent: var(--primary, #3b82f6);
@@ -31258,11 +31216,11 @@ var STEP_WIZARD_CSS = `
31258
31216
  box-shadow: 0 4px 20px rgba(34, 197, 94, 0.25);
31259
31217
  }
31260
31218
  `;
31261
- function ensureStylesInjected5() {
31219
+ function ensureStylesInjected4() {
31262
31220
  if (typeof document === "undefined") return;
31263
- if (document.getElementById(STYLE_ID5)) return;
31221
+ if (document.getElementById(STYLE_ID4)) return;
31264
31222
  const el = document.createElement("style");
31265
- el.id = STYLE_ID5;
31223
+ el.id = STYLE_ID4;
31266
31224
  el.textContent = STEP_WIZARD_CSS;
31267
31225
  document.head.appendChild(el);
31268
31226
  }
@@ -31272,7 +31230,7 @@ function StepProgress({
31272
31230
  onJump,
31273
31231
  className = ""
31274
31232
  }) {
31275
- ensureStylesInjected5();
31233
+ ensureStylesInjected4();
31276
31234
  const currentIdx = Math.max(
31277
31235
  0,
31278
31236
  steps.findIndex((s) => s.key === current)
@@ -31328,7 +31286,7 @@ function StepWizard({
31328
31286
  nextLabel = "Continue",
31329
31287
  className = ""
31330
31288
  }) {
31331
- ensureStylesInjected5();
31289
+ ensureStylesInjected4();
31332
31290
  const currentIdx = steps.findIndex((s) => s.key === current);
31333
31291
  const safeIdx = currentIdx < 0 ? 0 : currentIdx;
31334
31292
  const isFirst = safeIdx === 0;
@@ -31393,7 +31351,7 @@ function StepWizard({
31393
31351
 
31394
31352
  // src/components/ui/pill-toggle/index.tsx
31395
31353
  var import_jsx_runtime116 = require("react/jsx-runtime");
31396
- var STYLE_ID6 = "dll-pill-toggle-styles";
31354
+ var STYLE_ID5 = "dll-pill-toggle-styles";
31397
31355
  var PILL_TOGGLE_CSS = `
31398
31356
  .pt-root {
31399
31357
  --pt-accent: var(--primary, #3b82f6);
@@ -31442,16 +31400,16 @@ var PILL_TOGGLE_CSS = `
31442
31400
  line-height: 1;
31443
31401
  }
31444
31402
  `;
31445
- function ensureStylesInjected6() {
31403
+ function ensureStylesInjected5() {
31446
31404
  if (typeof document === "undefined") return;
31447
- if (document.getElementById(STYLE_ID6)) return;
31405
+ if (document.getElementById(STYLE_ID5)) return;
31448
31406
  const el = document.createElement("style");
31449
- el.id = STYLE_ID6;
31407
+ el.id = STYLE_ID5;
31450
31408
  el.textContent = PILL_TOGGLE_CSS;
31451
31409
  document.head.appendChild(el);
31452
31410
  }
31453
31411
  function PillToggle(props) {
31454
- ensureStylesInjected6();
31412
+ ensureStylesInjected5();
31455
31413
  const { options, ariaLabel, className = "" } = props;
31456
31414
  const isActive = (value) => {
31457
31415
  if (props.multi) return props.value.includes(value);
@@ -31503,7 +31461,7 @@ function PillToggle(props) {
31503
31461
  // src/components/ui/tag-input/index.tsx
31504
31462
  var import_react68 = require("react");
31505
31463
  var import_jsx_runtime117 = require("react/jsx-runtime");
31506
- var STYLE_ID7 = "dll-tag-input-styles";
31464
+ var STYLE_ID6 = "dll-tag-input-styles";
31507
31465
  var TAG_INPUT_CSS = `
31508
31466
  .ti-root {
31509
31467
  --ti-accent: var(--primary, #3b82f6);
@@ -31612,11 +31570,11 @@ var TAG_INPUT_CSS = `
31612
31570
  font-variant-numeric: tabular-nums;
31613
31571
  }
31614
31572
  `;
31615
- function ensureStylesInjected7() {
31573
+ function ensureStylesInjected6() {
31616
31574
  if (typeof document === "undefined") return;
31617
- if (document.getElementById(STYLE_ID7)) return;
31575
+ if (document.getElementById(STYLE_ID6)) return;
31618
31576
  const el = document.createElement("style");
31619
- el.id = STYLE_ID7;
31577
+ el.id = STYLE_ID6;
31620
31578
  el.textContent = TAG_INPUT_CSS;
31621
31579
  document.head.appendChild(el);
31622
31580
  }
@@ -31639,7 +31597,7 @@ function TagInput({
31639
31597
  onInputChange,
31640
31598
  className = ""
31641
31599
  }) {
31642
- ensureStylesInjected7();
31600
+ ensureStylesInjected6();
31643
31601
  const [internalInput, setInternalInput] = (0, import_react68.useState)("");
31644
31602
  const isControlled = inputValue !== void 0;
31645
31603
  const input = isControlled ? inputValue : internalInput;
@@ -31754,7 +31712,7 @@ function TagInput({
31754
31712
  // src/components/ui/sectioned-list-editor/index.tsx
31755
31713
  var import_react69 = require("react");
31756
31714
  var import_jsx_runtime118 = require("react/jsx-runtime");
31757
- var STYLE_ID8 = "dll-sectioned-list-editor-styles";
31715
+ var STYLE_ID7 = "dll-sectioned-list-editor-styles";
31758
31716
  var SECTIONED_LIST_CSS = `
31759
31717
  .sle-root {
31760
31718
  --sle-accent: var(--primary, #3b82f6);
@@ -31967,11 +31925,11 @@ var SECTIONED_LIST_CSS = `
31967
31925
  font-variant-numeric: tabular-nums;
31968
31926
  }
31969
31927
  `;
31970
- function ensureStylesInjected8() {
31928
+ function ensureStylesInjected7() {
31971
31929
  if (typeof document === "undefined") return;
31972
- if (document.getElementById(STYLE_ID8)) return;
31930
+ if (document.getElementById(STYLE_ID7)) return;
31973
31931
  const el = document.createElement("style");
31974
- el.id = STYLE_ID8;
31932
+ el.id = STYLE_ID7;
31975
31933
  el.textContent = SECTIONED_LIST_CSS;
31976
31934
  document.head.appendChild(el);
31977
31935
  }
@@ -31985,7 +31943,7 @@ function SectionedListEditor({
31985
31943
  renderSummary,
31986
31944
  className = ""
31987
31945
  }) {
31988
- ensureStylesInjected8();
31946
+ ensureStylesInjected7();
31989
31947
  const [activeKey, setActiveKey] = (0, import_react69.useState)(sections[0]?.key ?? "");
31990
31948
  const [input, setInput] = (0, import_react69.useState)("");
31991
31949
  const [customName, setCustomName] = (0, import_react69.useState)("");