@digilogiclabs/saas-factory-ui 2.8.1 → 2.8.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.
@@ -5148,9 +5148,10 @@ declare function TiltCard({ accent, accentSecondary, topLabel, icon, title, subt
5148
5148
  * Features:
5149
5149
  * - 1 to 6 dice; d6 renders as a full 3D cube (six faces, CSS
5150
5150
  * transforms, standard layout — opposite faces sum to 7); d4/d8/
5151
- * d10/d12/d20 render as two-sided 3D polyhedron cards (numeral
5152
- * front + shaded back, hidden backfaces) that tumble on every
5153
- * axis with the same chaos-snap-then-settle motion as the cube
5151
+ * d10/d12/d20 render as extruded 3D polyhedron slabs (numeral
5152
+ * front + shaded back + stacked edge layers for real thickness)
5153
+ * that tumble on every axis with the same chaos-snap-then-settle
5154
+ * motion as the cube
5154
5155
  * - Displayed face is structurally guaranteed to match the recorded
5155
5156
  * value: the d6 landing rotation is DERIVED as the inverse of the
5156
5157
  * face placement (one source of truth), and non-cube dice render
@@ -5148,9 +5148,10 @@ declare function TiltCard({ accent, accentSecondary, topLabel, icon, title, subt
5148
5148
  * Features:
5149
5149
  * - 1 to 6 dice; d6 renders as a full 3D cube (six faces, CSS
5150
5150
  * transforms, standard layout — opposite faces sum to 7); d4/d8/
5151
- * d10/d12/d20 render as two-sided 3D polyhedron cards (numeral
5152
- * front + shaded back, hidden backfaces) that tumble on every
5153
- * axis with the same chaos-snap-then-settle motion as the cube
5151
+ * d10/d12/d20 render as extruded 3D polyhedron slabs (numeral
5152
+ * front + shaded back + stacked edge layers for real thickness)
5153
+ * that tumble on every axis with the same chaos-snap-then-settle
5154
+ * motion as the cube
5154
5155
  * - Displayed face is structurally guaranteed to match the recorded
5155
5156
  * value: the d6 landing rotation is DERIVED as the inverse of the
5156
5157
  * face placement (one source of truth), and non-cube dice render
package/dist/web/index.js CHANGED
@@ -30983,6 +30983,8 @@ function DiceRoller({
30983
30983
  )) : (() => {
30984
30984
  const shape = POLY_SHAPES[sides];
30985
30985
  const shown = results?.[d] ?? sides;
30986
+ const depth = effectiveSize * 0.18;
30987
+ const edgeLayers = 16;
30986
30988
  const cardFaceStyle = {
30987
30989
  position: "absolute",
30988
30990
  inset: 0,
@@ -30991,13 +30993,53 @@ function DiceRoller({
30991
30993
  backfaceVisibility: "hidden"
30992
30994
  };
30993
30995
  return /* @__PURE__ */ (0, import_jsx_runtime113.jsxs)(import_jsx_runtime113.Fragment, { children: [
30996
+ Array.from({ length: edgeLayers }, (_2, li) => {
30997
+ const z = -depth / 2 + depth * (li + 0.5) / edgeLayers;
30998
+ return /* @__PURE__ */ (0, import_jsx_runtime113.jsxs)(
30999
+ "svg",
31000
+ {
31001
+ viewBox: "0 0 100 100",
31002
+ width: "100%",
31003
+ height: "100%",
31004
+ style: {
31005
+ position: "absolute",
31006
+ inset: 0,
31007
+ display: "block",
31008
+ overflow: "visible",
31009
+ transform: `translateZ(${z}px)`
31010
+ },
31011
+ "aria-hidden": "true",
31012
+ children: [
31013
+ /* @__PURE__ */ (0, import_jsx_runtime113.jsx)(
31014
+ "polygon",
31015
+ {
31016
+ points: shape.points,
31017
+ fill: colors.face
31018
+ }
31019
+ ),
31020
+ /* @__PURE__ */ (0, import_jsx_runtime113.jsx)(
31021
+ "polygon",
31022
+ {
31023
+ points: shape.points,
31024
+ fill: "#000",
31025
+ opacity: 0.22
31026
+ }
31027
+ )
31028
+ ]
31029
+ },
31030
+ li
31031
+ );
31032
+ }),
30994
31033
  /* @__PURE__ */ (0, import_jsx_runtime113.jsxs)(
30995
31034
  "svg",
30996
31035
  {
30997
31036
  viewBox: "0 0 100 100",
30998
31037
  width: "100%",
30999
31038
  height: "100%",
31000
- style: cardFaceStyle,
31039
+ style: {
31040
+ ...cardFaceStyle,
31041
+ transform: `translateZ(${depth / 2}px)`
31042
+ },
31001
31043
  "aria-hidden": "true",
31002
31044
  children: [
31003
31045
  /* @__PURE__ */ (0, import_jsx_runtime113.jsx)(
@@ -31053,7 +31095,7 @@ function DiceRoller({
31053
31095
  height: "100%",
31054
31096
  style: {
31055
31097
  ...cardFaceStyle,
31056
- transform: "rotateY(180deg)"
31098
+ transform: `rotateY(180deg) translateZ(${depth / 2}px)`
31057
31099
  },
31058
31100
  "aria-hidden": "true",
31059
31101
  children: [