@revikornmann/muka-ui 0.28.1 → 0.29.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.
Files changed (42) hide show
  1. package/dist/cjs/components/Alert/Alert.css +4 -3
  2. package/dist/cjs/components/Alert/Alert.js +1 -1
  3. package/dist/cjs/components/Alert/Alert.js.map +1 -1
  4. package/dist/cjs/components/Badge/Badge.css +27 -0
  5. package/dist/cjs/components/Badge/Badge.js +14 -5
  6. package/dist/cjs/components/Badge/Badge.js.map +1 -1
  7. package/dist/cjs/components/PhotoUploader/PhotoUploader.css +6 -18
  8. package/dist/cjs/components/PhotoUploader/PhotoUploader.js +15 -16
  9. package/dist/cjs/components/PhotoUploader/PhotoUploader.js.map +1 -1
  10. package/dist/cjs/components/ProgressAccordeon/ProgressAccordeon.css +26 -12
  11. package/dist/cjs/components/ProgressAccordeon/ProgressAccordeon.js +49 -40
  12. package/dist/cjs/components/ProgressAccordeon/ProgressAccordeon.js.map +1 -1
  13. package/dist/esm/components/Alert/Alert.css +4 -3
  14. package/dist/esm/components/Alert/Alert.js +1 -1
  15. package/dist/esm/components/Alert/Alert.js.map +1 -1
  16. package/dist/esm/components/Badge/Badge.css +27 -0
  17. package/dist/esm/components/Badge/Badge.js +14 -5
  18. package/dist/esm/components/Badge/Badge.js.map +1 -1
  19. package/dist/esm/components/PhotoUploader/PhotoUploader.css +6 -18
  20. package/dist/esm/components/PhotoUploader/PhotoUploader.js +15 -16
  21. package/dist/esm/components/PhotoUploader/PhotoUploader.js.map +1 -1
  22. package/dist/esm/components/ProgressAccordeon/ProgressAccordeon.css +26 -12
  23. package/dist/esm/components/ProgressAccordeon/ProgressAccordeon.js +49 -40
  24. package/dist/esm/components/ProgressAccordeon/ProgressAccordeon.js.map +1 -1
  25. package/dist/styles/components/Alert.css +4 -3
  26. package/dist/styles/components/Badge.css +27 -0
  27. package/dist/styles/components/PhotoUploader.css +6 -18
  28. package/dist/styles/components/ProgressAccordeon.css +26 -12
  29. package/dist/styles/index.css +1947 -1917
  30. package/dist/styles/muka-dark.css +1947 -1917
  31. package/dist/styles/muka-light.css +1947 -1917
  32. package/dist/styles/wireframe-dark.css +1947 -1917
  33. package/dist/styles/wireframe-light.css +1947 -1917
  34. package/dist/types/components/Alert/Alert.d.ts +1 -1
  35. package/dist/types/components/Alert/Alert.d.ts.map +1 -1
  36. package/dist/types/components/Badge/Badge.d.ts +7 -5
  37. package/dist/types/components/Badge/Badge.d.ts.map +1 -1
  38. package/dist/types/components/PhotoUploader/PhotoUploader.d.ts +8 -8
  39. package/dist/types/components/PhotoUploader/PhotoUploader.d.ts.map +1 -1
  40. package/dist/types/components/ProgressAccordeon/ProgressAccordeon.d.ts +36 -29
  41. package/dist/types/components/ProgressAccordeon/ProgressAccordeon.d.ts.map +1 -1
  42. package/package.json +1 -1
@@ -158,11 +158,12 @@
158
158
  line-height: var(--text-body-base-regular-lineHeight);
159
159
  }
160
160
 
161
- /* Action slot */
161
+ /* Action slot — TextLink (or similar) below the message, matching Figma */
162
162
  .muka-alert__action {
163
163
  display: flex;
164
- align-items: center;
165
- flex-shrink: 0;
164
+ flex-direction: column;
165
+ align-items: flex-start;
166
+ padding-top: var(--spacing-1);
166
167
  }
167
168
 
168
169
  /* Dismiss button - uses accent color per variant, aligned with icon row */
@@ -38,7 +38,7 @@ const Alert = ({ children, variant = 'info', size = 'md', title, icon, hideIcon
38
38
  const handleDismiss = () => {
39
39
  onDismiss?.();
40
40
  };
41
- return ((0, jsx_runtime_1.jsxs)("div", { className: alertClasses, role: role === 'none' ? undefined : role, "aria-live": role === 'alert' ? 'assertive' : 'polite', ...props, children: [displayIcon && ((0, jsx_runtime_1.jsx)("span", { className: "muka-alert__icon", "aria-hidden": "true", children: displayIcon })), (0, jsx_runtime_1.jsxs)("div", { className: "muka-alert__content", children: [title && (0, jsx_runtime_1.jsx)("div", { className: "muka-alert__title", children: title }), (0, jsx_runtime_1.jsx)("div", { className: "muka-alert__message", children: children })] }), action && (0, jsx_runtime_1.jsx)("div", { className: "muka-alert__action", children: action }), dismissible && ((0, jsx_runtime_1.jsx)("button", { type: "button", className: "muka-alert__dismiss", onClick: handleDismiss, "aria-label": "Dismiss alert", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "close", variant: "line", size: "sm" }) }))] }));
41
+ return ((0, jsx_runtime_1.jsxs)("div", { className: alertClasses, role: role === 'none' ? undefined : role, "aria-live": role === 'alert' ? 'assertive' : 'polite', ...props, children: [displayIcon && ((0, jsx_runtime_1.jsx)("span", { className: "muka-alert__icon", "aria-hidden": "true", children: displayIcon })), (0, jsx_runtime_1.jsxs)("div", { className: "muka-alert__content", children: [title && (0, jsx_runtime_1.jsx)("div", { className: "muka-alert__title", children: title }), (0, jsx_runtime_1.jsx)("div", { className: "muka-alert__message", children: children }), action && (0, jsx_runtime_1.jsx)("div", { className: "muka-alert__action", children: action })] }), dismissible && ((0, jsx_runtime_1.jsx)("button", { type: "button", className: "muka-alert__dismiss", onClick: handleDismiss, "aria-label": "Dismiss alert", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "close", variant: "line", size: "sm" }) }))] }));
42
42
  };
43
43
  exports.Alert = Alert;
44
44
  exports.default = exports.Alert;
@@ -1 +1 @@
1
- {"version":3,"file":"Alert.js","sourceRoot":"","sources":["../../../../components/Alert/Alert.tsx"],"names":[],"mappings":";;;;AACA,uBAAqB;AACrB,kCAA+B;AAqC/B,oDAAoD;AACpD,MAAM,YAAY,GAAoC;IACpD,IAAI,EAAE,uBAAC,WAAI,IAAC,IAAI,EAAC,aAAa,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,GAAG;IAC1D,OAAO,EAAE,uBAAC,WAAI,IAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,GAAG;IACvD,OAAO,EAAE,uBAAC,WAAI,IAAC,IAAI,EAAC,eAAe,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,GAAG;IAC/D,KAAK,EAAE,uBAAC,WAAI,IAAC,IAAI,EAAC,eAAe,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,GAAG;CAC9D,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACI,MAAM,KAAK,GAAyB,CAAC,EAC1C,QAAQ,EACR,OAAO,GAAG,MAAM,EAChB,IAAI,GAAG,IAAI,EACX,KAAK,EACL,IAAI,EACJ,QAAQ,GAAG,KAAK,EAChB,WAAW,GAAG,KAAK,EACnB,SAAS,EACT,MAAM,EACN,SAAS,GAAG,EAAE,EACd,IAAI,EAAE,QAAQ,EACd,GAAG,KAAK,EACT,EAAE,EAAE;IACH,MAAM,YAAY,GAAG;QACnB,YAAY;QACZ,eAAe,OAAO,EAAE;QACxB,eAAe,IAAI,EAAE;QACrB,SAAS;KACV,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE5B,qFAAqF;IACrF,MAAM,IAAI,GAAG,QAAQ,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAEpE,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;IAEtE,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,SAAS,EAAE,EAAE,CAAC;IAChB,CAAC,CAAC;IAEF,OAAO,CACL,iCACE,SAAS,EAAE,YAAY,EACvB,IAAI,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,eAC7B,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,KAChD,KAAK,aAER,WAAW,IAAI,CACd,iCAAM,SAAS,EAAC,kBAAkB,iBAAa,MAAM,YAClD,WAAW,GACP,CACR,EAED,iCAAK,SAAS,EAAC,qBAAqB,aACjC,KAAK,IAAI,gCAAK,SAAS,EAAC,mBAAmB,YAAE,KAAK,GAAO,EAC1D,gCAAK,SAAS,EAAC,qBAAqB,YAAE,QAAQ,GAAO,IACjD,EAEL,MAAM,IAAI,gCAAK,SAAS,EAAC,oBAAoB,YAAE,MAAM,GAAO,EAE5D,WAAW,IAAI,CACd,mCACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,qBAAqB,EAC/B,OAAO,EAAE,aAAa,gBACX,eAAe,YAE1B,uBAAC,WAAI,IAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,GAAG,GACvC,CACV,IACG,CACP,CAAC;AACJ,CAAC,CAAC;AA9DW,QAAA,KAAK,SA8DhB;AAEF,kBAAe,aAAK,CAAC"}
1
+ {"version":3,"file":"Alert.js","sourceRoot":"","sources":["../../../../components/Alert/Alert.tsx"],"names":[],"mappings":";;;;AACA,uBAAqB;AACrB,kCAA+B;AAqC/B,oDAAoD;AACpD,MAAM,YAAY,GAAoC;IACpD,IAAI,EAAE,uBAAC,WAAI,IAAC,IAAI,EAAC,aAAa,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,GAAG;IAC1D,OAAO,EAAE,uBAAC,WAAI,IAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,GAAG;IACvD,OAAO,EAAE,uBAAC,WAAI,IAAC,IAAI,EAAC,eAAe,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,GAAG;IAC/D,KAAK,EAAE,uBAAC,WAAI,IAAC,IAAI,EAAC,eAAe,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,GAAG;CAC9D,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACI,MAAM,KAAK,GAAyB,CAAC,EAC1C,QAAQ,EACR,OAAO,GAAG,MAAM,EAChB,IAAI,GAAG,IAAI,EACX,KAAK,EACL,IAAI,EACJ,QAAQ,GAAG,KAAK,EAChB,WAAW,GAAG,KAAK,EACnB,SAAS,EACT,MAAM,EACN,SAAS,GAAG,EAAE,EACd,IAAI,EAAE,QAAQ,EACd,GAAG,KAAK,EACT,EAAE,EAAE;IACH,MAAM,YAAY,GAAG;QACnB,YAAY;QACZ,eAAe,OAAO,EAAE;QACxB,eAAe,IAAI,EAAE;QACrB,SAAS;KACV,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE5B,qFAAqF;IACrF,MAAM,IAAI,GAAG,QAAQ,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAEpE,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;IAEtE,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,SAAS,EAAE,EAAE,CAAC;IAChB,CAAC,CAAC;IAEF,OAAO,CACL,iCACE,SAAS,EAAE,YAAY,EACvB,IAAI,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,eAC7B,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,KAChD,KAAK,aAER,WAAW,IAAI,CACd,iCAAM,SAAS,EAAC,kBAAkB,iBAAa,MAAM,YAClD,WAAW,GACP,CACR,EAED,iCAAK,SAAS,EAAC,qBAAqB,aACjC,KAAK,IAAI,gCAAK,SAAS,EAAC,mBAAmB,YAAE,KAAK,GAAO,EAC1D,gCAAK,SAAS,EAAC,qBAAqB,YAAE,QAAQ,GAAO,EACpD,MAAM,IAAI,gCAAK,SAAS,EAAC,oBAAoB,YAAE,MAAM,GAAO,IACzD,EAEL,WAAW,IAAI,CACd,mCACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,qBAAqB,EAC/B,OAAO,EAAE,aAAa,gBACX,eAAe,YAE1B,uBAAC,WAAI,IAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,GAAG,GACvC,CACV,IACG,CACP,CAAC;AACJ,CAAC,CAAC;AA7DW,QAAA,KAAK,SA6DhB;AAEF,kBAAe,aAAK,CAAC"}
@@ -60,6 +60,33 @@
60
60
  padding-left: var(--badge-padding-leading-lg);
61
61
  }
62
62
 
63
+ /* Icon-only — square, sized to the badge height (Figma: 24 / 32 / 40).
64
+ * Padding resets at size+icon-only specificity so `--has-icon` leading padding
65
+ * cannot win and shift the icon off-center. */
66
+ .muka-badge--icon-only {
67
+ justify-content: center;
68
+ align-items: center;
69
+ gap: 0;
70
+ }
71
+
72
+ .muka-badge--sm.muka-badge--icon-only,
73
+ .muka-badge--md.muka-badge--icon-only,
74
+ .muka-badge--lg.muka-badge--icon-only {
75
+ padding: 0;
76
+ }
77
+
78
+ .muka-badge--sm.muka-badge--icon-only {
79
+ width: var(--badge-size-height-sm);
80
+ }
81
+
82
+ .muka-badge--md.muka-badge--icon-only {
83
+ width: var(--badge-size-height-md);
84
+ }
85
+
86
+ .muka-badge--lg.muka-badge--icon-only {
87
+ width: var(--badge-size-height-lg);
88
+ }
89
+
63
90
  /* Leading icon slot — Figma icon sizes: sm 16, md 20, lg 24 (matches Chip) */
64
91
  .muka-badge__icon {
65
92
  display: inline-flex;
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Badge = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const accessibility_1 = require("../../utils/accessibility");
5
6
  require("./Badge.css");
6
7
  /**
7
8
  * Badge Component
@@ -11,18 +12,26 @@ require("./Badge.css");
11
12
  *
12
13
  * Variants: neutral, info, success, warning, error
13
14
  * Sizes: sm, md, lg
14
- * Features: optional leading icon or dot indicator
15
+ * Features: optional leading icon, icon-only, or dot indicator
15
16
  */
16
- const Badge = ({ children, variant = 'neutral', size = 'md', icon, dot = false, className = '', 'aria-label': ariaLabel, ...props }) => {
17
+ const Badge = ({ children, variant = 'neutral', size = 'md', icon, iconOnly = false, dot = false, className = '', 'aria-label': ariaLabel, ...props }) => {
18
+ (0, accessibility_1.warnMissingA11yProp)('Badge', iconOnly && !ariaLabel, 'Icon-only badges require an aria-label for accessibility');
19
+ const showDot = !iconOnly && dot;
20
+ const showIcon = iconOnly ? Boolean(icon) : !dot && Boolean(icon);
21
+ const showLabel = !iconOnly && children != null && children !== false;
22
+ // `--has-icon` only exists to tighten leading padding for labelled badges;
23
+ // icon-only must stay square and centered, so skip that modifier.
24
+ const hasLeadingIcon = showIcon && !iconOnly;
17
25
  const badgeClasses = [
18
26
  'muka-badge',
19
27
  `muka-badge--${variant}`,
20
28
  `muka-badge--${size}`,
21
- dot && 'muka-badge--has-dot',
22
- !dot && icon && 'muka-badge--has-icon',
29
+ showDot && 'muka-badge--has-dot',
30
+ hasLeadingIcon && 'muka-badge--has-icon',
31
+ iconOnly && 'muka-badge--icon-only',
23
32
  className,
24
33
  ].filter(Boolean).join(' ');
25
- return ((0, jsx_runtime_1.jsxs)("span", { className: badgeClasses, role: "status", "aria-label": ariaLabel, ...props, children: [dot && (0, jsx_runtime_1.jsx)("span", { className: "muka-badge__dot", "aria-hidden": "true" }), !dot && icon && (0, jsx_runtime_1.jsx)("span", { className: "muka-badge__icon", "aria-hidden": "true", children: icon }), (0, jsx_runtime_1.jsx)("span", { className: "muka-badge__label", children: children })] }));
34
+ return ((0, jsx_runtime_1.jsxs)("span", { className: badgeClasses, role: "status", "aria-label": ariaLabel, ...props, children: [showDot && (0, jsx_runtime_1.jsx)("span", { className: "muka-badge__dot", "aria-hidden": "true" }), showIcon && (0, jsx_runtime_1.jsx)("span", { className: "muka-badge__icon", "aria-hidden": "true", children: icon }), showLabel && (0, jsx_runtime_1.jsx)("span", { className: "muka-badge__label", children: children })] }));
26
35
  };
27
36
  exports.Badge = Badge;
28
37
  exports.default = exports.Badge;
@@ -1 +1 @@
1
- {"version":3,"file":"Badge.js","sourceRoot":"","sources":["../../../../components/Badge/Badge.tsx"],"names":[],"mappings":";;;;AACA,uBAAqB;AAyBrB;;;;;;;;;GASG;AACI,MAAM,KAAK,GAAyB,CAAC,EAC1C,QAAQ,EACR,OAAO,GAAG,SAAS,EACnB,IAAI,GAAG,IAAI,EACX,IAAI,EACJ,GAAG,GAAG,KAAK,EACX,SAAS,GAAG,EAAE,EACd,YAAY,EAAE,SAAS,EACvB,GAAG,KAAK,EACT,EAAE,EAAE;IACH,MAAM,YAAY,GAAG;QACnB,YAAY;QACZ,eAAe,OAAO,EAAE;QACxB,eAAe,IAAI,EAAE;QACrB,GAAG,IAAI,qBAAqB;QAC5B,CAAC,GAAG,IAAI,IAAI,IAAI,sBAAsB;QACtC,SAAS;KACV,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE5B,OAAO,CACL,kCACE,SAAS,EAAE,YAAY,EACvB,IAAI,EAAC,QAAQ,gBACD,SAAS,KACjB,KAAK,aAER,GAAG,IAAI,iCAAM,SAAS,EAAC,iBAAiB,iBAAa,MAAM,GAAG,EAC9D,CAAC,GAAG,IAAI,IAAI,IAAI,iCAAM,SAAS,EAAC,kBAAkB,iBAAa,MAAM,YAAE,IAAI,GAAQ,EACpF,iCAAM,SAAS,EAAC,mBAAmB,YAAE,QAAQ,GAAQ,IAChD,CACR,CAAC;AACJ,CAAC,CAAC;AA/BW,QAAA,KAAK,SA+BhB;AAEF,kBAAe,aAAK,CAAC"}
1
+ {"version":3,"file":"Badge.js","sourceRoot":"","sources":["../../../../components/Badge/Badge.tsx"],"names":[],"mappings":";;;;AACA,6DAAgE;AAChE,uBAAqB;AA4BrB;;;;;;;;;GASG;AACI,MAAM,KAAK,GAAyB,CAAC,EAC1C,QAAQ,EACR,OAAO,GAAG,SAAS,EACnB,IAAI,GAAG,IAAI,EACX,IAAI,EACJ,QAAQ,GAAG,KAAK,EAChB,GAAG,GAAG,KAAK,EACX,SAAS,GAAG,EAAE,EACd,YAAY,EAAE,SAAS,EACvB,GAAG,KAAK,EACT,EAAE,EAAE;IACH,IAAA,mCAAmB,EACjB,OAAO,EACP,QAAQ,IAAI,CAAC,SAAS,EACtB,0DAA0D,CAC3D,CAAC;IAEF,MAAM,OAAO,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC;IACjC,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,CAAC,QAAQ,IAAI,QAAQ,IAAI,IAAI,IAAI,QAAQ,KAAK,KAAK,CAAC;IACtE,2EAA2E;IAC3E,kEAAkE;IAClE,MAAM,cAAc,GAAG,QAAQ,IAAI,CAAC,QAAQ,CAAC;IAE7C,MAAM,YAAY,GAAG;QACnB,YAAY;QACZ,eAAe,OAAO,EAAE;QACxB,eAAe,IAAI,EAAE;QACrB,OAAO,IAAI,qBAAqB;QAChC,cAAc,IAAI,sBAAsB;QACxC,QAAQ,IAAI,uBAAuB;QACnC,SAAS;KACV,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE5B,OAAO,CACL,kCACE,SAAS,EAAE,YAAY,EACvB,IAAI,EAAC,QAAQ,gBACD,SAAS,KACjB,KAAK,aAER,OAAO,IAAI,iCAAM,SAAS,EAAC,iBAAiB,iBAAa,MAAM,GAAG,EAClE,QAAQ,IAAI,iCAAM,SAAS,EAAC,kBAAkB,iBAAa,MAAM,YAAE,IAAI,GAAQ,EAC/E,SAAS,IAAI,iCAAM,SAAS,EAAC,mBAAmB,YAAE,QAAQ,GAAQ,IAC9D,CACR,CAAC;AACJ,CAAC,CAAC;AA9CW,QAAA,KAAK,SA8ChB;AAEF,kBAAe,aAAK,CAAC"}
@@ -42,7 +42,7 @@
42
42
  padding: 0;
43
43
  }
44
44
 
45
- /* ─── Drop zone card ──────────────────────────────────── */
45
+ /* ─── Drop zone card (button + "or drop here") ────────── */
46
46
  .muka-photo-uploader__dropzone {
47
47
  display: flex;
48
48
  flex-direction: column;
@@ -66,24 +66,12 @@
66
66
  background-color: var(--color-surface-level1);
67
67
  }
68
68
 
69
- .muka-photo-uploader__dropzone:focus-visible {
70
- outline: 2px solid var(--color-border-focus);
71
- outline-offset: 2px;
72
- }
73
-
74
- .muka-photo-uploader__dropzone-icon {
75
- display: flex;
76
- align-items: center;
77
- justify-content: center;
78
- color: var(--color-icon-subtle-default);
79
- }
80
-
81
69
  .muka-photo-uploader__dropzone-text {
82
- font-family: var(--text-body-base-regular-fontFamily);
83
- font-size: var(--text-body-base-regular-fontSize);
84
- font-weight: var(--text-body-base-regular-fontWeight);
85
- line-height: var(--text-body-base-regular-lineHeight);
86
- color: var(--color-text-subtle-default);
70
+ font-family: var(--text-subheading-sm-fontFamily);
71
+ font-size: var(--text-subheading-sm-fontSize);
72
+ font-weight: var(--text-subheading-sm-fontWeight);
73
+ line-height: var(--text-subheading-sm-lineHeight);
74
+ color: var(--color-text-default-default);
87
75
  }
88
76
 
89
77
  /* ─── Disabled ────────────────────────────────────────── */
@@ -19,16 +19,16 @@ function isImageFile(file) {
19
19
  /**
20
20
  * PhotoUploader Component
21
21
  *
22
- * A photo-first uploader: a primary "choose photos" button, a grid of
23
- * `Thumbnail` tiles for the selected photos, and a drop-zone card. Each
24
- * thumbnail shows a progress donut while uploading, a remove (×) button once
25
- * loaded, and — when `enableDialog` is set — opens the photo full-size in a
26
- * `Dialog` (original aspect ratio preserved) on click.
22
+ * A photo-first uploader: a drop-zone card with a secondary "Select photo’s"
23
+ * button and "or drop here" hint, plus a wrapping grid of `Thumbnail` tiles
24
+ * above the card once photos are added. Each thumbnail shows a progress donut
25
+ * while uploading, a remove (×) button once loaded, and — when `enableDialog`
26
+ * is set — opens the photo full-size in a `Dialog` on click.
27
27
  *
28
28
  * Photos can be supplied controlled (`files` + `onFilesChange`) or left
29
29
  * uncontrolled. Provide `uploadFn` to drive per-photo upload progress.
30
30
  */
31
- exports.PhotoUploader = (0, react_1.forwardRef)(({ accept = 'image/*', multiple = true, maxSize, maxFiles, disabled = false, files: controlledFiles, onFilesChange, onError, uploadFn, processFile, shape = '4:3', chooseLabel = 'Choose photos', dropzoneLabel = 'Or drag photos here', dialogTitle, enableDialog = true, dialogCloseButtonLabel = 'Close', dialogRemoveLabel = 'Delete photo', dialogCloseLabel = 'Close', showErrorAlert = true, errorAlertTitle = (count) => `${count} photo${count === 1 ? '' : 's'} couldn’t be added`, errorAlertMessage = 'Check if photos are fully downloaded and try again', className = '', 'aria-label': ariaLabel, ...props }, ref) => {
31
+ exports.PhotoUploader = (0, react_1.forwardRef)(({ accept = 'image/*', multiple = true, maxSize, maxFiles, disabled = false, files: controlledFiles, onFilesChange, onError, uploadFn, processFile, shape = '1:1', chooseLabel = 'Select photo’s', dropzoneLabel = 'or drop here', dialogTitle, enableDialog = true, dialogCloseButtonLabel = 'Close', dialogRemoveLabel = 'Delete photo', dialogCloseLabel = 'Close', showErrorAlert = true, errorAlertTitle = (count) => `${count} photo${count === 1 ? '' : 's'} couldn’t be added`, errorAlertMessage = 'Check if photos are fully downloaded and try again', className = '', 'aria-label': ariaLabel, ...props }, ref) => {
32
32
  const [internalFiles, setInternalFiles] = (0, react_1.useState)([]);
33
33
  const [isDragActive, setIsDragActive] = (0, react_1.useState)(false);
34
34
  const [activeId, setActiveId] = (0, react_1.useState)(null);
@@ -206,12 +206,6 @@ exports.PhotoUploader = (0, react_1.forwardRef)(({ accept = 'image/*', multiple
206
206
  if (dropped.length > 0)
207
207
  processFiles(dropped);
208
208
  }, [disabled, processFiles]);
209
- const handleDropzoneKeyDown = (0, react_1.useCallback)((e) => {
210
- if ((e.key === 'Enter' || e.key === ' ') && !disabled) {
211
- e.preventDefault();
212
- openPicker();
213
- }
214
- }, [disabled, openPicker]);
215
209
  const closeDialog = (0, react_1.useCallback)(() => setActiveId(null), []);
216
210
  const handleDialogRemove = (0, react_1.useCallback)(() => {
217
211
  if (activeId) {
@@ -237,9 +231,11 @@ exports.PhotoUploader = (0, react_1.forwardRef)(({ accept = 'image/*', multiple
237
231
  ]
238
232
  .filter(Boolean)
239
233
  .join(' ');
240
- return ((0, jsx_runtime_1.jsxs)("div", { ref: ref, className: classes, ...props, children: [(0, jsx_runtime_1.jsx)("input", { ref: inputRef, type: "file", accept: accept, multiple: multiple, disabled: disabled, onChange: handleInputChange, className: "muka-photo-uploader__input", tabIndex: -1, "aria-hidden": "true" }), (0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "primary", size: "md", onClick: openPicker, disabled: disabled, iconLeft: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "add", variant: "line" }), children: chooseLabel }), showAlert && ((0, jsx_runtime_1.jsx)(Alert_1.Alert, { className: "muka-photo-uploader__alert", variant: "error", title: errorAlertTitle(errorCount), icon: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "alert", variant: "fill", size: "md" }), dismissible: true, onDismiss: () => setAlertDismissed(true), children: errorAlertMessage })), files.length > 0 && ((0, jsx_runtime_1.jsx)("ul", { className: "muka-photo-uploader__grid", "aria-label": "Selected photos", children: files.map((f) => {
241
- const isProcessing = f.status === 'processing';
242
- const isUploading = f.status === 'uploading' || f.status === 'pending';
234
+ return ((0, jsx_runtime_1.jsxs)("div", { ref: ref, className: classes, ...props, children: [(0, jsx_runtime_1.jsx)("input", { ref: inputRef, type: "file", accept: accept, multiple: multiple, disabled: disabled, onChange: handleInputChange, className: "muka-photo-uploader__input", tabIndex: -1, "aria-hidden": "true" }), showAlert && ((0, jsx_runtime_1.jsx)(Alert_1.Alert, { className: "muka-photo-uploader__alert", variant: "error", title: errorAlertTitle(errorCount), icon: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "alert", variant: "fill", size: "md" }), dismissible: true, onDismiss: () => setAlertDismissed(true), children: errorAlertMessage })), files.length > 0 && ((0, jsx_runtime_1.jsx)("ul", { className: "muka-photo-uploader__grid", "aria-label": "Selected photos", children: files.map((f) => {
235
+ // Queued (pending) and pre-upload work share the indeterminate
236
+ // overlay; only active uploads drive the progress donut.
237
+ const isProcessing = f.status === 'processing' || f.status === 'pending';
238
+ const isUploading = f.status === 'uploading';
243
239
  const isError = f.status === 'error';
244
240
  const isBusy = isProcessing || isUploading;
245
241
  return ((0, jsx_runtime_1.jsx)("li", { className: "muka-photo-uploader__grid-item", children: (0, jsx_runtime_1.jsx)(Thumbnail_1.Thumbnail, { src: f.previewUrl ?? '', alt: f.file.name, shape: shape, processing: isProcessing, loading: isUploading, error: isError, caption: isError ? f.file.name : undefined, errorReason: f.error, progress: f.progress ?? 0, onRemove: disabled ? undefined : () => handleRemove(f.id), onClick: enableDialog && !isBusy && !isError && f.previewUrl
@@ -250,7 +246,10 @@ exports.PhotoUploader = (0, react_1.forwardRef)(({ accept = 'image/*', multiple
250
246
  isDragActive && 'muka-photo-uploader__dropzone--active',
251
247
  ]
252
248
  .filter(Boolean)
253
- .join(' '), onClick: openPicker, onKeyDown: handleDropzoneKeyDown, onDragEnter: handleDragEnter, onDragLeave: handleDragLeave, onDragOver: handleDragOver, onDrop: handleDrop, role: "button", tabIndex: disabled ? -1 : 0, "aria-label": ariaLabel ?? 'Upload photos', "aria-disabled": disabled, "aria-dropeffect": "copy", children: [(0, jsx_runtime_1.jsx)("span", { className: "muka-photo-uploader__dropzone-icon", "aria-hidden": "true", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "image", variant: "line", size: "lg", colorVariant: "subtle" }) }), (0, jsx_runtime_1.jsx)("span", { className: "muka-photo-uploader__dropzone-text", children: dropzoneLabel })] }), enableDialog && ((0, jsx_runtime_1.jsx)(Dialog_1.Dialog, { open: Boolean(activePhoto), onClose: closeDialog, modal: false, size: "md", title: dialogTitle, "aria-label": dialogTitle ?? activePhoto?.file.name ?? 'Photo preview', trailing: (0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "secondary", size: "md", iconOnly: true, onClick: closeDialog, "aria-label": dialogCloseButtonLabel, children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "close", variant: "line" }) }), footerActions: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "tertiary", size: "md", onClick: handleDialogRemove, children: dialogRemoveLabel }), (0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "primary", size: "md", onClick: closeDialog, children: dialogCloseLabel })] }), children: activePhoto?.previewUrl && ((0, jsx_runtime_1.jsx)("div", { className: "muka-photo-uploader__preview", children: (0, jsx_runtime_1.jsx)("img", { className: "muka-photo-uploader__preview-image", src: activePhoto.previewUrl, alt: activePhoto.file.name }) })) }))] }));
249
+ .join(' '), onClick: disabled ? undefined : openPicker, onDragEnter: handleDragEnter, onDragLeave: handleDragLeave, onDragOver: handleDragOver, onDrop: handleDrop, role: "group", "aria-label": ariaLabel ?? 'Upload photos', "aria-disabled": disabled || undefined, "aria-dropeffect": "copy", children: [(0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "secondary", size: "md", onClick: (e) => {
250
+ e.stopPropagation();
251
+ openPicker();
252
+ }, disabled: disabled, iconLeft: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "add", variant: "line" }), children: chooseLabel }), (0, jsx_runtime_1.jsx)("span", { className: "muka-photo-uploader__dropzone-text", children: dropzoneLabel })] }), enableDialog && ((0, jsx_runtime_1.jsx)(Dialog_1.Dialog, { open: Boolean(activePhoto), onClose: closeDialog, modal: false, size: "md", title: dialogTitle, "aria-label": dialogTitle ?? activePhoto?.file.name ?? 'Photo preview', trailing: (0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "secondary", size: "md", iconOnly: true, onClick: closeDialog, "aria-label": dialogCloseButtonLabel, children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "close", variant: "line" }) }), footerActions: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "tertiary", size: "md", onClick: handleDialogRemove, children: dialogRemoveLabel }), (0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "primary", size: "md", onClick: closeDialog, children: dialogCloseLabel })] }), children: activePhoto?.previewUrl && ((0, jsx_runtime_1.jsx)("div", { className: "muka-photo-uploader__preview", children: (0, jsx_runtime_1.jsx)("img", { className: "muka-photo-uploader__preview-image", src: activePhoto.previewUrl, alt: activePhoto.file.name }) })) }))] }));
254
253
  });
255
254
  exports.PhotoUploader.displayName = 'PhotoUploader';
256
255
  exports.default = exports.PhotoUploader;
@@ -1 +1 @@
1
- {"version":3,"file":"PhotoUploader.js","sourceRoot":"","sources":["../../../../components/PhotoUploader/PhotoUploader.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PhotoUploader.js","sourceRoot":"","sources":["../../../../components/PhotoUploader/PhotoUploader.tsx"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@
13
13
 
14
14
  /* Per-state gap: content-bearing steps are tighter, header-only steps looser */
15
15
  .muka-progress-accordeon--current,
16
+ .muka-progress-accordeon--current.muka-progress-accordeon--expanded,
16
17
  .muka-progress-accordeon--past.muka-progress-accordeon--expanded,
17
18
  .muka-progress-accordeon--upcoming.muka-progress-accordeon--expanded {
18
19
  gap: var(--spacing-6);
@@ -20,7 +21,8 @@
20
21
 
21
22
  .muka-progress-accordeon--upcoming,
22
23
  .muka-progress-accordeon--past.muka-progress-accordeon--collapsed,
23
- .muka-progress-accordeon--upcoming.muka-progress-accordeon--collapsed {
24
+ .muka-progress-accordeon--upcoming.muka-progress-accordeon--collapsed,
25
+ .muka-progress-accordeon--current.muka-progress-accordeon--collapsed {
24
26
  gap: var(--spacing-8);
25
27
  }
26
28
 
@@ -165,32 +167,44 @@
165
167
  width: 100%;
166
168
  }
167
169
 
168
- /* ─── Collapse/expand animation (past & upcoming steps) ──────
169
- The grid-template-rows 1fr → 0fr technique animates the content to/from its
170
- intrinsic (auto) height with no magic max-height. Under prefers-reduced-motion
171
- --motion-duration-view resolves to 0ms, so the toggle stays instant. */
172
- .muka-progress-accordeon__slot-wrapper {
170
+ /* ─── Collapse/expand animation (any expandable step) ──────
171
+ Animates grid-template-rows 1fr ↔ 0fr so the panel (slot + actions) grows and
172
+ shrinks to its intrinsic height. Opacity fades with the same duration.
173
+ Under prefers-reduced-motion, --motion-duration-view is 0ms. */
174
+ .muka-progress-accordeon__panel-wrapper {
173
175
  display: grid;
174
176
  grid-template-rows: 1fr;
175
- transition: grid-template-rows var(--motion-duration-view) var(--motion-easing-enter);
177
+ opacity: 1;
178
+ transition:
179
+ grid-template-rows var(--motion-duration-view) var(--motion-easing-enter),
180
+ opacity var(--motion-duration-view) var(--motion-easing-enter);
176
181
  }
177
182
 
178
- .muka-progress-accordeon__slot-wrapper--collapsed {
183
+ .muka-progress-accordeon__panel-wrapper--collapsed {
179
184
  grid-template-rows: 0fr;
185
+ opacity: 0;
186
+ transition:
187
+ grid-template-rows var(--motion-duration-view) var(--motion-easing-exit),
188
+ opacity calc(var(--motion-duration-view) * 0.6) var(--motion-easing-exit);
180
189
  }
181
190
 
182
191
  /* The direct grid child clips and must have NO padding/border of its own —
183
192
  min-height:0 lets it shrink, and with no padding the 0fr track reaches a true
184
193
  0 height (padding on the item would leave a residual gap when collapsed). */
185
- .muka-progress-accordeon__slot-clip {
194
+ .muka-progress-accordeon__panel-clip {
186
195
  overflow: hidden;
187
196
  min-height: 0;
188
197
  }
189
198
 
190
- /* The header↔content spacing lives on the inner slot (inside the clip region)
191
- so it collapses together with the content. */
192
- .muka-progress-accordeon__slot-wrapper .muka-progress-accordeon__slot {
199
+ /* Header↔content spacing + slot/actions gap live inside the clip so they
200
+ collapse together with the panel. */
201
+ .muka-progress-accordeon__panel {
202
+ display: flex;
203
+ flex-direction: column;
204
+ align-items: stretch;
205
+ gap: var(--spacing-6);
193
206
  padding-top: var(--spacing-4);
207
+ width: 100%;
194
208
  }
195
209
 
196
210
  /* ─── Action buttons (current state) ─────────────────────── */
@@ -19,83 +19,92 @@ require("./ProgressAccordeon.css");
19
19
  * content slot — visualising both progress and the work for a step.
20
20
  *
21
21
  * States:
22
- * - **past** — dark check indicator, heading, edit + chevron controls; the
23
- * content slot collapses/expands via `collapsed` + `onToggle`
24
- * - **current** — accent numbered indicator, heading, content slot, actions
22
+ * - **past** — dark check indicator, heading, optional header button + chevron;
23
+ * the content slot collapses/expands via `collapsed` + `onToggle`
24
+ * - **current** — accent numbered indicator, heading, content slot, optional
25
+ * actions; pass `onToggle` to make the active step expandable too
25
26
  * - **upcoming** — muted numbered indicator, heading; optional collapsible
26
- * content slot (same `collapsed` + `onToggle` as past) for empty-state
27
- * instructions or picking up a step out of order
27
+ * content slot for empty-state instructions or picking up a step out of order
28
28
  *
29
29
  * Content is passed as `children` (an optional slot) and rendered as-is — supply
30
30
  * your own `Card` or `EmptyState` when you want those surfaces. Composes the
31
31
  * Button, Icon and Divider primitives and is fully themed through the Muka
32
32
  * design token system.
33
33
  *
34
- * Tokens used:
35
- * - alias.color.accent.{default|contrast} — step indicator fills
36
- * - color.surface.sunken — upcoming indicator fill
37
- * - color.text.default.{default|inverse} — indicator glyphs
38
- * - text.heading.{md|sm} — step heading (responsive)
39
- * - text.body.base.regular — supporting description
40
- * - text.label.md.{bold|semibold} — indicator number
41
- * - spacing.{1|4|6|8} — vertical rhythm and gaps
42
- *
43
34
  * @accessibility
44
35
  * - Renders each step as a labelled group with `aria-current="step"` on the
45
36
  * active (current) step.
46
37
  * - The chevron toggle exposes `aria-expanded`.
47
38
  */
48
- const ProgressAccordeon = ({ state, stepNumber, heading, description, children, divider = true, collapsed = false, onToggle, editLabel = 'Edit', onEdit, primaryAction, secondaryAction, className = '', }) => {
39
+ const ProgressAccordeon = ({ state, stepNumber, heading, description, showDescription = false, children, divider = true, collapsed = false, onToggle, showHeaderButton, editLabel = 'Edit', onEdit, showActions = true, primaryAction, secondaryAction, className = '', }) => {
49
40
  const isPast = state === 'past';
50
41
  const isCurrent = state === 'current';
51
42
  const isUpcoming = state === 'upcoming';
52
- // Past and upcoming share the collapsible slot pattern so consumers can show
53
- // empty-state instructions on future steps and pick steps up independently.
54
- const isCollapsible = isPast || isUpcoming;
55
- const showToggle = isCollapsible && Boolean(onToggle);
56
- const showEdit = isPast && !collapsed && Boolean(onEdit);
57
- const showDescription = Boolean(description) && !(isCollapsible && collapsed);
58
- // Collapsible steps keep their content mounted regardless of `collapsed` so
59
- // the collapse/expand can be CSS-animated (you can't animate an unmounted node).
60
- const hasSlot = (isCollapsible || isCurrent) && Boolean(children);
61
- const hasActions = isCurrent && Boolean(primaryAction || secondaryAction);
62
- // Collapse modifiers only when the step can actually collapse — keeps
63
- // header-only upcoming spacing on the base `--upcoming` gap rule.
64
- const showCollapseModifiers = isPast || (isUpcoming && (Boolean(children) || Boolean(onToggle)));
43
+ // Arrow button is opt-in for every state via `onToggle`.
44
+ const showToggle = Boolean(onToggle);
45
+ // Past/upcoming can honour `collapsed` without a toggle. Current also honours
46
+ // it so demos can animate open/close without showing a chevron.
47
+ const canCollapse = showToggle || isPast || isUpcoming || isCurrent;
48
+ const isEffectivelyCollapsed = canCollapse && collapsed;
49
+ // Header button (Edit) — Figma “Button header”: opt-in via `onEdit`, overridable
50
+ // with `showHeaderButton`, and only visible while expanded on past steps.
51
+ const headerButtonEnabled = showHeaderButton ?? Boolean(onEdit);
52
+ const showEdit = headerButtonEnabled &&
53
+ isPast &&
54
+ !isEffectivelyCollapsed &&
55
+ Boolean(onEdit);
56
+ const descriptionVisible = showDescription && Boolean(description);
57
+ // Keep slot/actions mounted regardless of `collapsed` so height can animate
58
+ // (you can't animate an unmounted node).
59
+ const hasSlot = Boolean(children);
60
+ // Keep action buttons mounted while collapsing so they animate with the panel
61
+ // (they're aria-hidden/inert via the wrapper when collapsed).
62
+ const hasActionButtons = isCurrent && showActions && Boolean(primaryAction || secondaryAction);
63
+ // Collapse modifiers when the step can actually collapse — keeps header-only
64
+ // upcoming spacing on the base `--upcoming` gap rule.
65
+ const showCollapseModifiers = isPast ||
66
+ (isUpcoming && (Boolean(children) || showToggle)) ||
67
+ (isCurrent && (showToggle || Boolean(children) || hasActionButtons));
65
68
  const rootClasses = [
66
69
  'muka-progress-accordeon',
67
70
  `muka-progress-accordeon--${state}`,
68
71
  showCollapseModifiers &&
69
- `muka-progress-accordeon--${collapsed ? 'collapsed' : 'expanded'}`,
72
+ `muka-progress-accordeon--${isEffectivelyCollapsed ? 'collapsed' : 'expanded'}`,
70
73
  className,
71
74
  ].filter(Boolean).join(' ');
72
75
  const indicatorClasses = [
73
76
  'muka-progress-accordeon__indicator',
74
77
  `muka-progress-accordeon__indicator--${state}`,
75
78
  ].join(' ');
76
- const header = ((0, jsx_runtime_1.jsxs)("div", { className: "muka-progress-accordeon__header", children: [(0, jsx_runtime_1.jsxs)("div", { className: "muka-progress-accordeon__header-row", children: [(0, jsx_runtime_1.jsxs)("div", { className: "muka-progress-accordeon__heading-group", children: [(0, jsx_runtime_1.jsx)("div", { className: indicatorClasses, "aria-hidden": "true", children: isPast ? ((0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "check", variant: "fill", size: "sm", className: "muka-progress-accordeon__check-icon" })) : ((0, jsx_runtime_1.jsx)("span", { className: "muka-progress-accordeon__number", children: stepNumber })) }), (0, jsx_runtime_1.jsx)("h3", { className: "muka-progress-accordeon__heading", children: heading })] }), (showEdit || showToggle) && ((0, jsx_runtime_1.jsxs)("div", { className: "muka-progress-accordeon__controls", children: [showEdit && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "tertiary", size: "md", onClick: onEdit, iconLeft: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "pencil", variant: "line", size: "md" }), className: "muka-progress-accordeon__edit muka-progress-accordeon__edit--wide", children: editLabel }), (0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "tertiary", size: "md", iconOnly: true, onClick: onEdit, className: "muka-progress-accordeon__edit muka-progress-accordeon__edit--narrow", "aria-label": editLabel, children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "pencil", variant: "line", size: "md" }) })] })), showToggle && ((0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "tertiary", size: "md", iconOnly: true, onClick: onToggle, className: "muka-progress-accordeon__toggle", "aria-label": collapsed ? 'Expand' : 'Collapse', "aria-expanded": !collapsed, children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: collapsed ? 'arrow-down-s' : 'arrow-up-s', variant: "line", size: "md" }) }))] }))] }), showDescription && ((0, jsx_runtime_1.jsx)("div", { className: "muka-progress-accordeon__description", children: description }))] }));
79
+ const header = ((0, jsx_runtime_1.jsxs)("div", { className: "muka-progress-accordeon__header", children: [(0, jsx_runtime_1.jsxs)("div", { className: "muka-progress-accordeon__header-row", children: [(0, jsx_runtime_1.jsxs)("div", { className: "muka-progress-accordeon__heading-group", children: [(0, jsx_runtime_1.jsx)("div", { className: indicatorClasses, "aria-hidden": "true", children: isPast ? ((0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "check", variant: "fill", size: "sm", className: "muka-progress-accordeon__check-icon" })) : ((0, jsx_runtime_1.jsx)("span", { className: "muka-progress-accordeon__number", children: stepNumber })) }), (0, jsx_runtime_1.jsx)("h3", { className: "muka-progress-accordeon__heading", children: heading })] }), (showEdit || showToggle) && ((0, jsx_runtime_1.jsxs)("div", { className: "muka-progress-accordeon__controls", children: [showEdit && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "secondary", size: "md", onClick: onEdit, iconLeft: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "pencil", variant: "line", size: "md" }), className: "muka-progress-accordeon__edit muka-progress-accordeon__edit--wide", children: editLabel }), (0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "secondary", size: "md", iconOnly: true, onClick: onEdit, className: "muka-progress-accordeon__edit muka-progress-accordeon__edit--narrow", "aria-label": editLabel, children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "pencil", variant: "line", size: "md" }) })] })), showToggle && ((0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "secondary", size: "md", iconOnly: true, onClick: onToggle, className: "muka-progress-accordeon__toggle", "aria-label": isEffectivelyCollapsed ? 'Expand' : 'Collapse', "aria-expanded": !isEffectivelyCollapsed, children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: isEffectivelyCollapsed ? 'arrow-down-s' : 'arrow-up-s', variant: "line", size: "md" }) }))] }))] }), descriptionVisible && ((0, jsx_runtime_1.jsx)("div", { className: "muka-progress-accordeon__description", children: description }))] }));
77
80
  const slot = hasSlot ? ((0, jsx_runtime_1.jsx)("div", { className: "muka-progress-accordeon__slot", children: children })) : null;
78
- // Collapsible steps wrap the (always-mounted) slot in a grid animation
79
- // container that collapses its height to zero. Marked inert + aria-hidden while
80
- // collapsed so the still-mounted content is skipped by keyboard focus and
81
- // assistive tech.
81
+ const actions = hasActionButtons ? ((0, jsx_runtime_1.jsxs)("div", { className: "muka-progress-accordeon__actions", children: [secondaryAction && ((0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "secondary", size: "md", onClick: secondaryAction.onClick, disabled: secondaryAction.disabled, className: "muka-progress-accordeon__action", children: secondaryAction.label })), primaryAction && ((0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "primary", size: "md", onClick: primaryAction.onClick, disabled: primaryAction.disabled, className: "muka-progress-accordeon__action", children: primaryAction.label }))] })) : null;
82
+ // Collapsible steps wrap slot + actions in a grid animation container that
83
+ // collapses its height to zero. Marked inert + aria-hidden while collapsed so
84
+ // the still-mounted content is skipped by keyboard focus and assistive tech.
82
85
  // `inert` is set imperatively on the DOM node rather than via a React prop:
83
86
  // React 18 drops a boolean `inert` prop, while React 19 warns on the string
84
87
  // form — toggling the attribute directly works correctly under both.
85
- const slotWrapperRef = react_1.default.useRef(null);
88
+ const panelWrapperRef = react_1.default.useRef(null);
86
89
  react_1.default.useEffect(() => {
87
- const node = slotWrapperRef.current;
90
+ const node = panelWrapperRef.current;
88
91
  if (!node)
89
92
  return;
90
- if (collapsed) {
93
+ if (isEffectivelyCollapsed) {
91
94
  node.setAttribute('inert', '');
92
95
  }
93
96
  else {
94
97
  node.removeAttribute('inert');
95
98
  }
96
- }, [collapsed]);
97
- const collapsibleSlot = hasSlot ? ((0, jsx_runtime_1.jsx)("div", { ref: slotWrapperRef, className: `muka-progress-accordeon__slot-wrapper${collapsed ? ' muka-progress-accordeon__slot-wrapper--collapsed' : ''}`, "aria-hidden": collapsed || undefined, children: (0, jsx_runtime_1.jsx)("div", { className: "muka-progress-accordeon__slot-clip", children: slot }) })) : null;
98
- return ((0, jsx_runtime_1.jsxs)("div", { className: rootClasses, role: "group", "aria-label": `Step ${stepNumber}: ${heading}`, "aria-current": isCurrent ? 'step' : undefined, children: [isCollapsible ? ((0, jsx_runtime_1.jsxs)("div", { className: "muka-progress-accordeon__body", children: [header, collapsibleSlot] })) : ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [header, slot] })), hasActions && ((0, jsx_runtime_1.jsxs)("div", { className: "muka-progress-accordeon__actions", children: [secondaryAction && ((0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "secondary", size: "md", onClick: secondaryAction.onClick, disabled: secondaryAction.disabled, className: "muka-progress-accordeon__action", children: secondaryAction.label })), primaryAction && ((0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "primary", size: "md", onClick: primaryAction.onClick, disabled: primaryAction.disabled, className: "muka-progress-accordeon__action", children: primaryAction.label }))] })), divider && (0, jsx_runtime_1.jsx)(Divider_1.Divider, { className: "muka-progress-accordeon__divider" })] }));
99
+ }, [isEffectivelyCollapsed]);
100
+ // Always wrap content in the animated panel when present, including on the
101
+ // active step (no chevron), so Flow can animate collapse on “Next step”.
102
+ const hasCollapsiblePanel = hasSlot || hasActionButtons;
103
+ const collapsiblePanel = hasCollapsiblePanel ? ((0, jsx_runtime_1.jsx)("div", { ref: panelWrapperRef, className: `muka-progress-accordeon__panel-wrapper${isEffectivelyCollapsed
104
+ ? ' muka-progress-accordeon__panel-wrapper--collapsed'
105
+ : ''}`, "aria-hidden": isEffectivelyCollapsed || undefined, children: (0, jsx_runtime_1.jsx)("div", { className: "muka-progress-accordeon__panel-clip", children: (0, jsx_runtime_1.jsxs)("div", { className: "muka-progress-accordeon__panel", children: [slot, actions] }) }) })) : null;
106
+ const useCollapsibleBody = hasCollapsiblePanel || showToggle || isPast || isUpcoming;
107
+ return ((0, jsx_runtime_1.jsxs)("div", { className: rootClasses, role: "group", "aria-label": `Step ${stepNumber}: ${heading}`, "aria-current": isCurrent ? 'step' : undefined, children: [useCollapsibleBody ? ((0, jsx_runtime_1.jsxs)("div", { className: "muka-progress-accordeon__body", children: [header, collapsiblePanel] })) : ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [header, slot, actions] })), divider && (0, jsx_runtime_1.jsx)(Divider_1.Divider, { className: "muka-progress-accordeon__divider" })] }));
99
108
  };
100
109
  exports.ProgressAccordeon = ProgressAccordeon;
101
110
  exports.default = exports.ProgressAccordeon;
@@ -1 +1 @@
1
- {"version":3,"file":"ProgressAccordeon.js","sourceRoot":"","sources":["../../../../components/ProgressAccordeon/ProgressAccordeon.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProgressAccordeon.js","sourceRoot":"","sources":["../../../../components/ProgressAccordeon/ProgressAccordeon.tsx"],"names":[],"mappings":"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"}
@@ -158,11 +158,12 @@
158
158
  line-height: var(--text-body-base-regular-lineHeight);
159
159
  }
160
160
 
161
- /* Action slot */
161
+ /* Action slot — TextLink (or similar) below the message, matching Figma */
162
162
  .muka-alert__action {
163
163
  display: flex;
164
- align-items: center;
165
- flex-shrink: 0;
164
+ flex-direction: column;
165
+ align-items: flex-start;
166
+ padding-top: var(--spacing-1);
166
167
  }
167
168
 
168
169
  /* Dismiss button - uses accent color per variant, aligned with icon row */
@@ -35,7 +35,7 @@ export const Alert = ({ children, variant = 'info', size = 'md', title, icon, hi
35
35
  const handleDismiss = () => {
36
36
  onDismiss?.();
37
37
  };
38
- return (_jsxs("div", { className: alertClasses, role: role === 'none' ? undefined : role, "aria-live": role === 'alert' ? 'assertive' : 'polite', ...props, children: [displayIcon && (_jsx("span", { className: "muka-alert__icon", "aria-hidden": "true", children: displayIcon })), _jsxs("div", { className: "muka-alert__content", children: [title && _jsx("div", { className: "muka-alert__title", children: title }), _jsx("div", { className: "muka-alert__message", children: children })] }), action && _jsx("div", { className: "muka-alert__action", children: action }), dismissible && (_jsx("button", { type: "button", className: "muka-alert__dismiss", onClick: handleDismiss, "aria-label": "Dismiss alert", children: _jsx(Icon, { name: "close", variant: "line", size: "sm" }) }))] }));
38
+ return (_jsxs("div", { className: alertClasses, role: role === 'none' ? undefined : role, "aria-live": role === 'alert' ? 'assertive' : 'polite', ...props, children: [displayIcon && (_jsx("span", { className: "muka-alert__icon", "aria-hidden": "true", children: displayIcon })), _jsxs("div", { className: "muka-alert__content", children: [title && _jsx("div", { className: "muka-alert__title", children: title }), _jsx("div", { className: "muka-alert__message", children: children }), action && _jsx("div", { className: "muka-alert__action", children: action })] }), dismissible && (_jsx("button", { type: "button", className: "muka-alert__dismiss", onClick: handleDismiss, "aria-label": "Dismiss alert", children: _jsx(Icon, { name: "close", variant: "line", size: "sm" }) }))] }));
39
39
  };
40
40
  export default Alert;
41
41
  //# sourceMappingURL=Alert.js.map