@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
@@ -1 +1 @@
1
- {"version":3,"file":"Alert.js","sourceRoot":"","sources":["../../../../components/Alert/Alert.tsx"],"names":[],"mappings":";AACA,OAAO,aAAa,CAAC;AACrB,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAqC/B,oDAAoD;AACpD,MAAM,YAAY,GAAoC;IACpD,IAAI,EAAE,KAAC,IAAI,IAAC,IAAI,EAAC,aAAa,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,GAAG;IAC1D,OAAO,EAAE,KAAC,IAAI,IAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,GAAG;IACvD,OAAO,EAAE,KAAC,IAAI,IAAC,IAAI,EAAC,eAAe,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,GAAG;IAC/D,KAAK,EAAE,KAAC,IAAI,IAAC,IAAI,EAAC,eAAe,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,GAAG;CAC9D,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,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,eACE,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,eAAM,SAAS,EAAC,kBAAkB,iBAAa,MAAM,YAClD,WAAW,GACP,CACR,EAED,eAAK,SAAS,EAAC,qBAAqB,aACjC,KAAK,IAAI,cAAK,SAAS,EAAC,mBAAmB,YAAE,KAAK,GAAO,EAC1D,cAAK,SAAS,EAAC,qBAAqB,YAAE,QAAQ,GAAO,IACjD,EAEL,MAAM,IAAI,cAAK,SAAS,EAAC,oBAAoB,YAAE,MAAM,GAAO,EAE5D,WAAW,IAAI,CACd,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,qBAAqB,EAC/B,OAAO,EAAE,aAAa,gBACX,eAAe,YAE1B,KAAC,IAAI,IAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,GAAG,GACvC,CACV,IACG,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"Alert.js","sourceRoot":"","sources":["../../../../components/Alert/Alert.tsx"],"names":[],"mappings":";AACA,OAAO,aAAa,CAAC;AACrB,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAqC/B,oDAAoD;AACpD,MAAM,YAAY,GAAoC;IACpD,IAAI,EAAE,KAAC,IAAI,IAAC,IAAI,EAAC,aAAa,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,GAAG;IAC1D,OAAO,EAAE,KAAC,IAAI,IAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,GAAG;IACvD,OAAO,EAAE,KAAC,IAAI,IAAC,IAAI,EAAC,eAAe,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,GAAG;IAC/D,KAAK,EAAE,KAAC,IAAI,IAAC,IAAI,EAAC,eAAe,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,GAAG;CAC9D,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,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,eACE,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,eAAM,SAAS,EAAC,kBAAkB,iBAAa,MAAM,YAClD,WAAW,GACP,CACR,EAED,eAAK,SAAS,EAAC,qBAAqB,aACjC,KAAK,IAAI,cAAK,SAAS,EAAC,mBAAmB,YAAE,KAAK,GAAO,EAC1D,cAAK,SAAS,EAAC,qBAAqB,YAAE,QAAQ,GAAO,EACpD,MAAM,IAAI,cAAK,SAAS,EAAC,oBAAoB,YAAE,MAAM,GAAO,IACzD,EAEL,WAAW,IAAI,CACd,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,qBAAqB,EAC/B,OAAO,EAAE,aAAa,gBACX,eAAe,YAE1B,KAAC,IAAI,IAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,GAAG,GACvC,CACV,IACG,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,KAAK,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;
@@ -1,4 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { warnMissingA11yProp } from '../../utils/accessibility';
2
3
  import './Badge.css';
3
4
  /**
4
5
  * Badge Component
@@ -8,18 +9,26 @@ import './Badge.css';
8
9
  *
9
10
  * Variants: neutral, info, success, warning, error
10
11
  * Sizes: sm, md, lg
11
- * Features: optional leading icon or dot indicator
12
+ * Features: optional leading icon, icon-only, or dot indicator
12
13
  */
13
- export const Badge = ({ children, variant = 'neutral', size = 'md', icon, dot = false, className = '', 'aria-label': ariaLabel, ...props }) => {
14
+ export const Badge = ({ children, variant = 'neutral', size = 'md', icon, iconOnly = false, dot = false, className = '', 'aria-label': ariaLabel, ...props }) => {
15
+ warnMissingA11yProp('Badge', iconOnly && !ariaLabel, 'Icon-only badges require an aria-label for accessibility');
16
+ const showDot = !iconOnly && dot;
17
+ const showIcon = iconOnly ? Boolean(icon) : !dot && Boolean(icon);
18
+ const showLabel = !iconOnly && children != null && children !== false;
19
+ // `--has-icon` only exists to tighten leading padding for labelled badges;
20
+ // icon-only must stay square and centered, so skip that modifier.
21
+ const hasLeadingIcon = showIcon && !iconOnly;
14
22
  const badgeClasses = [
15
23
  'muka-badge',
16
24
  `muka-badge--${variant}`,
17
25
  `muka-badge--${size}`,
18
- dot && 'muka-badge--has-dot',
19
- !dot && icon && 'muka-badge--has-icon',
26
+ showDot && 'muka-badge--has-dot',
27
+ hasLeadingIcon && 'muka-badge--has-icon',
28
+ iconOnly && 'muka-badge--icon-only',
20
29
  className,
21
30
  ].filter(Boolean).join(' ');
22
- return (_jsxs("span", { className: badgeClasses, role: "status", "aria-label": ariaLabel, ...props, children: [dot && _jsx("span", { className: "muka-badge__dot", "aria-hidden": "true" }), !dot && icon && _jsx("span", { className: "muka-badge__icon", "aria-hidden": "true", children: icon }), _jsx("span", { className: "muka-badge__label", children: children })] }));
31
+ return (_jsxs("span", { className: badgeClasses, role: "status", "aria-label": ariaLabel, ...props, children: [showDot && _jsx("span", { className: "muka-badge__dot", "aria-hidden": "true" }), showIcon && _jsx("span", { className: "muka-badge__icon", "aria-hidden": "true", children: icon }), showLabel && _jsx("span", { className: "muka-badge__label", children: children })] }));
23
32
  };
24
33
  export default Badge;
25
34
  //# sourceMappingURL=Badge.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Badge.js","sourceRoot":"","sources":["../../../../components/Badge/Badge.tsx"],"names":[],"mappings":";AACA,OAAO,aAAa,CAAC;AAyBrB;;;;;;;;;GASG;AACH,MAAM,CAAC,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,gBACE,SAAS,EAAE,YAAY,EACvB,IAAI,EAAC,QAAQ,gBACD,SAAS,KACjB,KAAK,aAER,GAAG,IAAI,eAAM,SAAS,EAAC,iBAAiB,iBAAa,MAAM,GAAG,EAC9D,CAAC,GAAG,IAAI,IAAI,IAAI,eAAM,SAAS,EAAC,kBAAkB,iBAAa,MAAM,YAAE,IAAI,GAAQ,EACpF,eAAM,SAAS,EAAC,mBAAmB,YAAE,QAAQ,GAAQ,IAChD,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"Badge.js","sourceRoot":"","sources":["../../../../components/Badge/Badge.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,aAAa,CAAC;AA4BrB;;;;;;;;;GASG;AACH,MAAM,CAAC,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,mBAAmB,CACjB,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,gBACE,SAAS,EAAE,YAAY,EACvB,IAAI,EAAC,QAAQ,gBACD,SAAS,KACjB,KAAK,aAER,OAAO,IAAI,eAAM,SAAS,EAAC,iBAAiB,iBAAa,MAAM,GAAG,EAClE,QAAQ,IAAI,eAAM,SAAS,EAAC,kBAAkB,iBAAa,MAAM,YAAE,IAAI,GAAQ,EAC/E,SAAS,IAAI,eAAM,SAAS,EAAC,mBAAmB,YAAE,QAAQ,GAAQ,IAC9D,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,KAAK,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 ────────────────────────────────────────── */
@@ -16,16 +16,16 @@ function isImageFile(file) {
16
16
  /**
17
17
  * PhotoUploader Component
18
18
  *
19
- * A photo-first uploader: a primary "choose photos" button, a grid of
20
- * `Thumbnail` tiles for the selected photos, and a drop-zone card. Each
21
- * thumbnail shows a progress donut while uploading, a remove (×) button once
22
- * loaded, and — when `enableDialog` is set — opens the photo full-size in a
23
- * `Dialog` (original aspect ratio preserved) on click.
19
+ * A photo-first uploader: a drop-zone card with a secondary "Select photo’s"
20
+ * button and "or drop here" hint, plus a wrapping grid of `Thumbnail` tiles
21
+ * above the card once photos are added. Each thumbnail shows a progress donut
22
+ * while uploading, a remove (×) button once loaded, and — when `enableDialog`
23
+ * is set — opens the photo full-size in a `Dialog` on click.
24
24
  *
25
25
  * Photos can be supplied controlled (`files` + `onFilesChange`) or left
26
26
  * uncontrolled. Provide `uploadFn` to drive per-photo upload progress.
27
27
  */
28
- export const PhotoUploader = 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) => {
28
+ export const PhotoUploader = 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) => {
29
29
  const [internalFiles, setInternalFiles] = useState([]);
30
30
  const [isDragActive, setIsDragActive] = useState(false);
31
31
  const [activeId, setActiveId] = useState(null);
@@ -203,12 +203,6 @@ export const PhotoUploader = forwardRef(({ accept = 'image/*', multiple = true,
203
203
  if (dropped.length > 0)
204
204
  processFiles(dropped);
205
205
  }, [disabled, processFiles]);
206
- const handleDropzoneKeyDown = useCallback((e) => {
207
- if ((e.key === 'Enter' || e.key === ' ') && !disabled) {
208
- e.preventDefault();
209
- openPicker();
210
- }
211
- }, [disabled, openPicker]);
212
206
  const closeDialog = useCallback(() => setActiveId(null), []);
213
207
  const handleDialogRemove = useCallback(() => {
214
208
  if (activeId) {
@@ -234,9 +228,11 @@ export const PhotoUploader = forwardRef(({ accept = 'image/*', multiple = true,
234
228
  ]
235
229
  .filter(Boolean)
236
230
  .join(' ');
237
- return (_jsxs("div", { ref: ref, className: classes, ...props, children: [_jsx("input", { ref: inputRef, type: "file", accept: accept, multiple: multiple, disabled: disabled, onChange: handleInputChange, className: "muka-photo-uploader__input", tabIndex: -1, "aria-hidden": "true" }), _jsx(Button, { variant: "primary", size: "md", onClick: openPicker, disabled: disabled, iconLeft: _jsx(Icon, { name: "add", variant: "line" }), children: chooseLabel }), showAlert && (_jsx(Alert, { className: "muka-photo-uploader__alert", variant: "error", title: errorAlertTitle(errorCount), icon: _jsx(Icon, { name: "alert", variant: "fill", size: "md" }), dismissible: true, onDismiss: () => setAlertDismissed(true), children: errorAlertMessage })), files.length > 0 && (_jsx("ul", { className: "muka-photo-uploader__grid", "aria-label": "Selected photos", children: files.map((f) => {
238
- const isProcessing = f.status === 'processing';
239
- const isUploading = f.status === 'uploading' || f.status === 'pending';
231
+ return (_jsxs("div", { ref: ref, className: classes, ...props, children: [_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 && (_jsx(Alert, { className: "muka-photo-uploader__alert", variant: "error", title: errorAlertTitle(errorCount), icon: _jsx(Icon, { name: "alert", variant: "fill", size: "md" }), dismissible: true, onDismiss: () => setAlertDismissed(true), children: errorAlertMessage })), files.length > 0 && (_jsx("ul", { className: "muka-photo-uploader__grid", "aria-label": "Selected photos", children: files.map((f) => {
232
+ // Queued (pending) and pre-upload work share the indeterminate
233
+ // overlay; only active uploads drive the progress donut.
234
+ const isProcessing = f.status === 'processing' || f.status === 'pending';
235
+ const isUploading = f.status === 'uploading';
240
236
  const isError = f.status === 'error';
241
237
  const isBusy = isProcessing || isUploading;
242
238
  return (_jsx("li", { className: "muka-photo-uploader__grid-item", children: _jsx(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
@@ -247,7 +243,10 @@ export const PhotoUploader = forwardRef(({ accept = 'image/*', multiple = true,
247
243
  isDragActive && 'muka-photo-uploader__dropzone--active',
248
244
  ]
249
245
  .filter(Boolean)
250
- .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: [_jsx("span", { className: "muka-photo-uploader__dropzone-icon", "aria-hidden": "true", children: _jsx(Icon, { name: "image", variant: "line", size: "lg", colorVariant: "subtle" }) }), _jsx("span", { className: "muka-photo-uploader__dropzone-text", children: dropzoneLabel })] }), enableDialog && (_jsx(Dialog, { open: Boolean(activePhoto), onClose: closeDialog, modal: false, size: "md", title: dialogTitle, "aria-label": dialogTitle ?? activePhoto?.file.name ?? 'Photo preview', trailing: _jsx(Button, { variant: "secondary", size: "md", iconOnly: true, onClick: closeDialog, "aria-label": dialogCloseButtonLabel, children: _jsx(Icon, { name: "close", variant: "line" }) }), footerActions: _jsxs(_Fragment, { children: [_jsx(Button, { variant: "tertiary", size: "md", onClick: handleDialogRemove, children: dialogRemoveLabel }), _jsx(Button, { variant: "primary", size: "md", onClick: closeDialog, children: dialogCloseLabel })] }), children: activePhoto?.previewUrl && (_jsx("div", { className: "muka-photo-uploader__preview", children: _jsx("img", { className: "muka-photo-uploader__preview-image", src: activePhoto.previewUrl, alt: activePhoto.file.name }) })) }))] }));
246
+ .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: [_jsx(Button, { variant: "secondary", size: "md", onClick: (e) => {
247
+ e.stopPropagation();
248
+ openPicker();
249
+ }, disabled: disabled, iconLeft: _jsx(Icon, { name: "add", variant: "line" }), children: chooseLabel }), _jsx("span", { className: "muka-photo-uploader__dropzone-text", children: dropzoneLabel })] }), enableDialog && (_jsx(Dialog, { open: Boolean(activePhoto), onClose: closeDialog, modal: false, size: "md", title: dialogTitle, "aria-label": dialogTitle ?? activePhoto?.file.name ?? 'Photo preview', trailing: _jsx(Button, { variant: "secondary", size: "md", iconOnly: true, onClick: closeDialog, "aria-label": dialogCloseButtonLabel, children: _jsx(Icon, { name: "close", variant: "line" }) }), footerActions: _jsxs(_Fragment, { children: [_jsx(Button, { variant: "tertiary", size: "md", onClick: handleDialogRemove, children: dialogRemoveLabel }), _jsx(Button, { variant: "primary", size: "md", onClick: closeDialog, children: dialogCloseLabel })] }), children: activePhoto?.previewUrl && (_jsx("div", { className: "muka-photo-uploader__preview", children: _jsx("img", { className: "muka-photo-uploader__preview-image", src: activePhoto.previewUrl, alt: activePhoto.file.name }) })) }))] }));
251
250
  });
252
251
  PhotoUploader.displayName = 'PhotoUploader';
253
252
  export default 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) ─────────────────────── */
@@ -13,83 +13,92 @@ import './ProgressAccordeon.css';
13
13
  * content slot — visualising both progress and the work for a step.
14
14
  *
15
15
  * States:
16
- * - **past** — dark check indicator, heading, edit + chevron controls; the
17
- * content slot collapses/expands via `collapsed` + `onToggle`
18
- * - **current** — accent numbered indicator, heading, content slot, actions
16
+ * - **past** — dark check indicator, heading, optional header button + chevron;
17
+ * the content slot collapses/expands via `collapsed` + `onToggle`
18
+ * - **current** — accent numbered indicator, heading, content slot, optional
19
+ * actions; pass `onToggle` to make the active step expandable too
19
20
  * - **upcoming** — muted numbered indicator, heading; optional collapsible
20
- * content slot (same `collapsed` + `onToggle` as past) for empty-state
21
- * instructions or picking up a step out of order
21
+ * content slot for empty-state instructions or picking up a step out of order
22
22
  *
23
23
  * Content is passed as `children` (an optional slot) and rendered as-is — supply
24
24
  * your own `Card` or `EmptyState` when you want those surfaces. Composes the
25
25
  * Button, Icon and Divider primitives and is fully themed through the Muka
26
26
  * design token system.
27
27
  *
28
- * Tokens used:
29
- * - alias.color.accent.{default|contrast} — step indicator fills
30
- * - color.surface.sunken — upcoming indicator fill
31
- * - color.text.default.{default|inverse} — indicator glyphs
32
- * - text.heading.{md|sm} — step heading (responsive)
33
- * - text.body.base.regular — supporting description
34
- * - text.label.md.{bold|semibold} — indicator number
35
- * - spacing.{1|4|6|8} — vertical rhythm and gaps
36
- *
37
28
  * @accessibility
38
29
  * - Renders each step as a labelled group with `aria-current="step"` on the
39
30
  * active (current) step.
40
31
  * - The chevron toggle exposes `aria-expanded`.
41
32
  */
42
- export const ProgressAccordeon = ({ state, stepNumber, heading, description, children, divider = true, collapsed = false, onToggle, editLabel = 'Edit', onEdit, primaryAction, secondaryAction, className = '', }) => {
33
+ export const ProgressAccordeon = ({ state, stepNumber, heading, description, showDescription = false, children, divider = true, collapsed = false, onToggle, showHeaderButton, editLabel = 'Edit', onEdit, showActions = true, primaryAction, secondaryAction, className = '', }) => {
43
34
  const isPast = state === 'past';
44
35
  const isCurrent = state === 'current';
45
36
  const isUpcoming = state === 'upcoming';
46
- // Past and upcoming share the collapsible slot pattern so consumers can show
47
- // empty-state instructions on future steps and pick steps up independently.
48
- const isCollapsible = isPast || isUpcoming;
49
- const showToggle = isCollapsible && Boolean(onToggle);
50
- const showEdit = isPast && !collapsed && Boolean(onEdit);
51
- const showDescription = Boolean(description) && !(isCollapsible && collapsed);
52
- // Collapsible steps keep their content mounted regardless of `collapsed` so
53
- // the collapse/expand can be CSS-animated (you can't animate an unmounted node).
54
- const hasSlot = (isCollapsible || isCurrent) && Boolean(children);
55
- const hasActions = isCurrent && Boolean(primaryAction || secondaryAction);
56
- // Collapse modifiers only when the step can actually collapse — keeps
57
- // header-only upcoming spacing on the base `--upcoming` gap rule.
58
- const showCollapseModifiers = isPast || (isUpcoming && (Boolean(children) || Boolean(onToggle)));
37
+ // Arrow button is opt-in for every state via `onToggle`.
38
+ const showToggle = Boolean(onToggle);
39
+ // Past/upcoming can honour `collapsed` without a toggle. Current also honours
40
+ // it so demos can animate open/close without showing a chevron.
41
+ const canCollapse = showToggle || isPast || isUpcoming || isCurrent;
42
+ const isEffectivelyCollapsed = canCollapse && collapsed;
43
+ // Header button (Edit) — Figma “Button header”: opt-in via `onEdit`, overridable
44
+ // with `showHeaderButton`, and only visible while expanded on past steps.
45
+ const headerButtonEnabled = showHeaderButton ?? Boolean(onEdit);
46
+ const showEdit = headerButtonEnabled &&
47
+ isPast &&
48
+ !isEffectivelyCollapsed &&
49
+ Boolean(onEdit);
50
+ const descriptionVisible = showDescription && Boolean(description);
51
+ // Keep slot/actions mounted regardless of `collapsed` so height can animate
52
+ // (you can't animate an unmounted node).
53
+ const hasSlot = Boolean(children);
54
+ // Keep action buttons mounted while collapsing so they animate with the panel
55
+ // (they're aria-hidden/inert via the wrapper when collapsed).
56
+ const hasActionButtons = isCurrent && showActions && Boolean(primaryAction || secondaryAction);
57
+ // Collapse modifiers when the step can actually collapse — keeps header-only
58
+ // upcoming spacing on the base `--upcoming` gap rule.
59
+ const showCollapseModifiers = isPast ||
60
+ (isUpcoming && (Boolean(children) || showToggle)) ||
61
+ (isCurrent && (showToggle || Boolean(children) || hasActionButtons));
59
62
  const rootClasses = [
60
63
  'muka-progress-accordeon',
61
64
  `muka-progress-accordeon--${state}`,
62
65
  showCollapseModifiers &&
63
- `muka-progress-accordeon--${collapsed ? 'collapsed' : 'expanded'}`,
66
+ `muka-progress-accordeon--${isEffectivelyCollapsed ? 'collapsed' : 'expanded'}`,
64
67
  className,
65
68
  ].filter(Boolean).join(' ');
66
69
  const indicatorClasses = [
67
70
  'muka-progress-accordeon__indicator',
68
71
  `muka-progress-accordeon__indicator--${state}`,
69
72
  ].join(' ');
70
- const header = (_jsxs("div", { className: "muka-progress-accordeon__header", children: [_jsxs("div", { className: "muka-progress-accordeon__header-row", children: [_jsxs("div", { className: "muka-progress-accordeon__heading-group", children: [_jsx("div", { className: indicatorClasses, "aria-hidden": "true", children: isPast ? (_jsx(Icon, { name: "check", variant: "fill", size: "sm", className: "muka-progress-accordeon__check-icon" })) : (_jsx("span", { className: "muka-progress-accordeon__number", children: stepNumber })) }), _jsx("h3", { className: "muka-progress-accordeon__heading", children: heading })] }), (showEdit || showToggle) && (_jsxs("div", { className: "muka-progress-accordeon__controls", children: [showEdit && (_jsxs(_Fragment, { children: [_jsx(Button, { variant: "tertiary", size: "md", onClick: onEdit, iconLeft: _jsx(Icon, { name: "pencil", variant: "line", size: "md" }), className: "muka-progress-accordeon__edit muka-progress-accordeon__edit--wide", children: editLabel }), _jsx(Button, { variant: "tertiary", size: "md", iconOnly: true, onClick: onEdit, className: "muka-progress-accordeon__edit muka-progress-accordeon__edit--narrow", "aria-label": editLabel, children: _jsx(Icon, { name: "pencil", variant: "line", size: "md" }) })] })), showToggle && (_jsx(Button, { variant: "tertiary", size: "md", iconOnly: true, onClick: onToggle, className: "muka-progress-accordeon__toggle", "aria-label": collapsed ? 'Expand' : 'Collapse', "aria-expanded": !collapsed, children: _jsx(Icon, { name: collapsed ? 'arrow-down-s' : 'arrow-up-s', variant: "line", size: "md" }) }))] }))] }), showDescription && (_jsx("div", { className: "muka-progress-accordeon__description", children: description }))] }));
73
+ const header = (_jsxs("div", { className: "muka-progress-accordeon__header", children: [_jsxs("div", { className: "muka-progress-accordeon__header-row", children: [_jsxs("div", { className: "muka-progress-accordeon__heading-group", children: [_jsx("div", { className: indicatorClasses, "aria-hidden": "true", children: isPast ? (_jsx(Icon, { name: "check", variant: "fill", size: "sm", className: "muka-progress-accordeon__check-icon" })) : (_jsx("span", { className: "muka-progress-accordeon__number", children: stepNumber })) }), _jsx("h3", { className: "muka-progress-accordeon__heading", children: heading })] }), (showEdit || showToggle) && (_jsxs("div", { className: "muka-progress-accordeon__controls", children: [showEdit && (_jsxs(_Fragment, { children: [_jsx(Button, { variant: "secondary", size: "md", onClick: onEdit, iconLeft: _jsx(Icon, { name: "pencil", variant: "line", size: "md" }), className: "muka-progress-accordeon__edit muka-progress-accordeon__edit--wide", children: editLabel }), _jsx(Button, { variant: "secondary", size: "md", iconOnly: true, onClick: onEdit, className: "muka-progress-accordeon__edit muka-progress-accordeon__edit--narrow", "aria-label": editLabel, children: _jsx(Icon, { name: "pencil", variant: "line", size: "md" }) })] })), showToggle && (_jsx(Button, { variant: "secondary", size: "md", iconOnly: true, onClick: onToggle, className: "muka-progress-accordeon__toggle", "aria-label": isEffectivelyCollapsed ? 'Expand' : 'Collapse', "aria-expanded": !isEffectivelyCollapsed, children: _jsx(Icon, { name: isEffectivelyCollapsed ? 'arrow-down-s' : 'arrow-up-s', variant: "line", size: "md" }) }))] }))] }), descriptionVisible && (_jsx("div", { className: "muka-progress-accordeon__description", children: description }))] }));
71
74
  const slot = hasSlot ? (_jsx("div", { className: "muka-progress-accordeon__slot", children: children })) : null;
72
- // Collapsible steps wrap the (always-mounted) slot in a grid animation
73
- // container that collapses its height to zero. Marked inert + aria-hidden while
74
- // collapsed so the still-mounted content is skipped by keyboard focus and
75
- // assistive tech.
75
+ const actions = hasActionButtons ? (_jsxs("div", { className: "muka-progress-accordeon__actions", children: [secondaryAction && (_jsx(Button, { variant: "secondary", size: "md", onClick: secondaryAction.onClick, disabled: secondaryAction.disabled, className: "muka-progress-accordeon__action", children: secondaryAction.label })), primaryAction && (_jsx(Button, { variant: "primary", size: "md", onClick: primaryAction.onClick, disabled: primaryAction.disabled, className: "muka-progress-accordeon__action", children: primaryAction.label }))] })) : null;
76
+ // Collapsible steps wrap slot + actions in a grid animation container that
77
+ // collapses its height to zero. Marked inert + aria-hidden while collapsed so
78
+ // the still-mounted content is skipped by keyboard focus and assistive tech.
76
79
  // `inert` is set imperatively on the DOM node rather than via a React prop:
77
80
  // React 18 drops a boolean `inert` prop, while React 19 warns on the string
78
81
  // form — toggling the attribute directly works correctly under both.
79
- const slotWrapperRef = React.useRef(null);
82
+ const panelWrapperRef = React.useRef(null);
80
83
  React.useEffect(() => {
81
- const node = slotWrapperRef.current;
84
+ const node = panelWrapperRef.current;
82
85
  if (!node)
83
86
  return;
84
- if (collapsed) {
87
+ if (isEffectivelyCollapsed) {
85
88
  node.setAttribute('inert', '');
86
89
  }
87
90
  else {
88
91
  node.removeAttribute('inert');
89
92
  }
90
- }, [collapsed]);
91
- const collapsibleSlot = hasSlot ? (_jsx("div", { ref: slotWrapperRef, className: `muka-progress-accordeon__slot-wrapper${collapsed ? ' muka-progress-accordeon__slot-wrapper--collapsed' : ''}`, "aria-hidden": collapsed || undefined, children: _jsx("div", { className: "muka-progress-accordeon__slot-clip", children: slot }) })) : null;
92
- return (_jsxs("div", { className: rootClasses, role: "group", "aria-label": `Step ${stepNumber}: ${heading}`, "aria-current": isCurrent ? 'step' : undefined, children: [isCollapsible ? (_jsxs("div", { className: "muka-progress-accordeon__body", children: [header, collapsibleSlot] })) : (_jsxs(_Fragment, { children: [header, slot] })), hasActions && (_jsxs("div", { className: "muka-progress-accordeon__actions", children: [secondaryAction && (_jsx(Button, { variant: "secondary", size: "md", onClick: secondaryAction.onClick, disabled: secondaryAction.disabled, className: "muka-progress-accordeon__action", children: secondaryAction.label })), primaryAction && (_jsx(Button, { variant: "primary", size: "md", onClick: primaryAction.onClick, disabled: primaryAction.disabled, className: "muka-progress-accordeon__action", children: primaryAction.label }))] })), divider && _jsx(Divider, { className: "muka-progress-accordeon__divider" })] }));
93
+ }, [isEffectivelyCollapsed]);
94
+ // Always wrap content in the animated panel when present, including on the
95
+ // active step (no chevron), so Flow can animate collapse on “Next step”.
96
+ const hasCollapsiblePanel = hasSlot || hasActionButtons;
97
+ const collapsiblePanel = hasCollapsiblePanel ? (_jsx("div", { ref: panelWrapperRef, className: `muka-progress-accordeon__panel-wrapper${isEffectivelyCollapsed
98
+ ? ' muka-progress-accordeon__panel-wrapper--collapsed'
99
+ : ''}`, "aria-hidden": isEffectivelyCollapsed || undefined, children: _jsx("div", { className: "muka-progress-accordeon__panel-clip", children: _jsxs("div", { className: "muka-progress-accordeon__panel", children: [slot, actions] }) }) })) : null;
100
+ const useCollapsibleBody = hasCollapsiblePanel || showToggle || isPast || isUpcoming;
101
+ return (_jsxs("div", { className: rootClasses, role: "group", "aria-label": `Step ${stepNumber}: ${heading}`, "aria-current": isCurrent ? 'step' : undefined, children: [useCollapsibleBody ? (_jsxs("div", { className: "muka-progress-accordeon__body", children: [header, collapsiblePanel] })) : (_jsxs(_Fragment, { children: [header, slot, actions] })), divider && _jsx(Divider, { className: "muka-progress-accordeon__divider" })] }));
93
102
  };
94
103
  export default ProgressAccordeon;
95
104
  //# sourceMappingURL=ProgressAccordeon.js.map
@@ -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 */
@@ -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;
@@ -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 ────────────────────────────────────────── */