@revikornmann/muka-ui 0.19.0 → 0.21.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 (124) hide show
  1. package/dist/cjs/components/ActionSheet/ActionSheet.css +4 -4
  2. package/dist/cjs/components/BottomBar/BottomBar.css +0 -3
  3. package/dist/cjs/components/Breadcrumb/Breadcrumb.css +26 -2
  4. package/dist/cjs/components/Combobox/Combobox.css +2 -2
  5. package/dist/cjs/components/ContextSelect/ContextSelect.css +4 -4
  6. package/dist/cjs/components/DocumentViewer/DocumentToolbar.js +1 -1
  7. package/dist/cjs/components/DocumentViewer/DocumentToolbar.js.map +1 -1
  8. package/dist/cjs/components/DocumentViewer/DocumentViewer.css +2 -2
  9. package/dist/cjs/components/DropdownSelect/DropdownSelect.css +3 -3
  10. package/dist/cjs/components/EmptyState/EmptyState.css +8 -8
  11. package/dist/cjs/components/FAB/FAB.css +1 -1
  12. package/dist/cjs/components/FileUpload/FileUpload.css +10 -10
  13. package/dist/cjs/components/Icon/Icon.js +17 -7
  14. package/dist/cjs/components/Icon/Icon.js.map +1 -1
  15. package/dist/cjs/components/Icon/iconRegistry.js +143 -111
  16. package/dist/cjs/components/Icon/iconRegistry.js.map +1 -1
  17. package/dist/cjs/components/Icon/index.js +4 -1
  18. package/dist/cjs/components/Icon/index.js.map +1 -1
  19. package/dist/cjs/components/Input/Input.css +2 -2
  20. package/dist/cjs/components/Label/Label.css +1 -1
  21. package/dist/cjs/components/LicensePlateInput/LicensePlateInput.css +1 -1
  22. package/dist/cjs/components/Menu/Menu.css +1 -1
  23. package/dist/cjs/components/Pagination/Pagination.css +15 -15
  24. package/dist/cjs/components/PhotoUploader/PhotoUploader.css +4 -4
  25. package/dist/cjs/components/ProgressAccordeon/ProgressAccordeon.css +10 -6
  26. package/dist/cjs/components/ProgressAccordeon/ProgressAccordeon.js +27 -16
  27. package/dist/cjs/components/ProgressAccordeon/ProgressAccordeon.js.map +1 -1
  28. package/dist/cjs/components/SearchInput/SearchInput.css +4 -4
  29. package/dist/cjs/components/Select/Select.css +2 -2
  30. package/dist/cjs/components/SmsOtpField/SmsOtpField.css +2 -2
  31. package/dist/cjs/components/SpecList/SpecList.css +8 -8
  32. package/dist/cjs/components/Spinner/Spinner.css +1 -1
  33. package/dist/cjs/components/SwipeActions/SwipeActions.css +6 -6
  34. package/dist/cjs/components/Table/Table.css +3 -3
  35. package/dist/cjs/components/Table/TablePagination.css +1 -1
  36. package/dist/cjs/components/Tabs/Tabs.css +6 -6
  37. package/dist/cjs/components/Textarea/Textarea.css +2 -2
  38. package/dist/cjs/components/Waveform/Waveform.css +1 -1
  39. package/dist/cjs/components/index.js +5 -3
  40. package/dist/cjs/components/index.js.map +1 -1
  41. package/dist/esm/components/ActionSheet/ActionSheet.css +4 -4
  42. package/dist/esm/components/BottomBar/BottomBar.css +0 -3
  43. package/dist/esm/components/Breadcrumb/Breadcrumb.css +26 -2
  44. package/dist/esm/components/Combobox/Combobox.css +2 -2
  45. package/dist/esm/components/ContextSelect/ContextSelect.css +4 -4
  46. package/dist/esm/components/DocumentViewer/DocumentToolbar.js +1 -1
  47. package/dist/esm/components/DocumentViewer/DocumentToolbar.js.map +1 -1
  48. package/dist/esm/components/DocumentViewer/DocumentViewer.css +2 -2
  49. package/dist/esm/components/DropdownSelect/DropdownSelect.css +3 -3
  50. package/dist/esm/components/EmptyState/EmptyState.css +8 -8
  51. package/dist/esm/components/FAB/FAB.css +1 -1
  52. package/dist/esm/components/FileUpload/FileUpload.css +10 -10
  53. package/dist/esm/components/Icon/Icon.js +14 -7
  54. package/dist/esm/components/Icon/Icon.js.map +1 -1
  55. package/dist/esm/components/Icon/iconRegistry.js +141 -78
  56. package/dist/esm/components/Icon/iconRegistry.js.map +1 -1
  57. package/dist/esm/components/Icon/index.js +1 -1
  58. package/dist/esm/components/Icon/index.js.map +1 -1
  59. package/dist/esm/components/Input/Input.css +2 -2
  60. package/dist/esm/components/Label/Label.css +1 -1
  61. package/dist/esm/components/LicensePlateInput/LicensePlateInput.css +1 -1
  62. package/dist/esm/components/Menu/Menu.css +1 -1
  63. package/dist/esm/components/Pagination/Pagination.css +15 -15
  64. package/dist/esm/components/PhotoUploader/PhotoUploader.css +4 -4
  65. package/dist/esm/components/ProgressAccordeon/ProgressAccordeon.css +10 -6
  66. package/dist/esm/components/ProgressAccordeon/ProgressAccordeon.js +27 -16
  67. package/dist/esm/components/ProgressAccordeon/ProgressAccordeon.js.map +1 -1
  68. package/dist/esm/components/SearchInput/SearchInput.css +4 -4
  69. package/dist/esm/components/Select/Select.css +2 -2
  70. package/dist/esm/components/SmsOtpField/SmsOtpField.css +2 -2
  71. package/dist/esm/components/SpecList/SpecList.css +8 -8
  72. package/dist/esm/components/Spinner/Spinner.css +1 -1
  73. package/dist/esm/components/SwipeActions/SwipeActions.css +6 -6
  74. package/dist/esm/components/Table/Table.css +3 -3
  75. package/dist/esm/components/Table/TablePagination.css +1 -1
  76. package/dist/esm/components/Tabs/Tabs.css +6 -6
  77. package/dist/esm/components/Textarea/Textarea.css +2 -2
  78. package/dist/esm/components/Waveform/Waveform.css +1 -1
  79. package/dist/esm/components/index.js +1 -1
  80. package/dist/esm/components/index.js.map +1 -1
  81. package/dist/styles/components/ActionSheet.css +4 -4
  82. package/dist/styles/components/BottomBar.css +0 -3
  83. package/dist/styles/components/Breadcrumb.css +26 -2
  84. package/dist/styles/components/Combobox.css +2 -2
  85. package/dist/styles/components/ContextSelect.css +4 -4
  86. package/dist/styles/components/DocumentViewer.css +2 -2
  87. package/dist/styles/components/DropdownSelect.css +3 -3
  88. package/dist/styles/components/EmptyState.css +8 -8
  89. package/dist/styles/components/FAB.css +1 -1
  90. package/dist/styles/components/FileUpload.css +10 -10
  91. package/dist/styles/components/Input.css +2 -2
  92. package/dist/styles/components/Label.css +1 -1
  93. package/dist/styles/components/LicensePlateInput.css +1 -1
  94. package/dist/styles/components/Menu.css +1 -1
  95. package/dist/styles/components/Pagination.css +15 -15
  96. package/dist/styles/components/PhotoUploader.css +4 -4
  97. package/dist/styles/components/ProgressAccordeon.css +10 -6
  98. package/dist/styles/components/SearchInput.css +4 -4
  99. package/dist/styles/components/Select.css +2 -2
  100. package/dist/styles/components/SmsOtpField.css +2 -2
  101. package/dist/styles/components/SpecList.css +8 -8
  102. package/dist/styles/components/Spinner.css +1 -1
  103. package/dist/styles/components/SwipeActions.css +6 -6
  104. package/dist/styles/components/Table.css +3 -3
  105. package/dist/styles/components/Tabs.css +6 -6
  106. package/dist/styles/components/Textarea.css +2 -2
  107. package/dist/styles/components/Waveform.css +1 -1
  108. package/dist/styles/index.css +1253 -1228
  109. package/dist/styles/muka-dark.css +1253 -1228
  110. package/dist/styles/muka-light.css +1253 -1228
  111. package/dist/styles/wireframe-dark.css +1253 -1228
  112. package/dist/styles/wireframe-light.css +1253 -1228
  113. package/dist/types/components/Icon/Icon.d.ts +20 -7
  114. package/dist/types/components/Icon/Icon.d.ts.map +1 -1
  115. package/dist/types/components/Icon/iconRegistry.d.ts +109 -14
  116. package/dist/types/components/Icon/iconRegistry.d.ts.map +1 -1
  117. package/dist/types/components/Icon/index.d.ts +1 -1
  118. package/dist/types/components/Icon/index.d.ts.map +1 -1
  119. package/dist/types/components/ProgressAccordeon/ProgressAccordeon.d.ts +17 -12
  120. package/dist/types/components/ProgressAccordeon/ProgressAccordeon.d.ts.map +1 -1
  121. package/dist/types/components/index.d.ts +1 -1
  122. package/dist/types/components/index.d.ts.map +1 -1
  123. package/package.json +3 -1
  124. package/skills/figma-to-code/SKILL.md +17 -2
@@ -56,10 +56,10 @@
56
56
  cursor: pointer;
57
57
  text-align: left;
58
58
  color: var(--color-text-default-default);
59
- font-family: var(--text-body-md-regular-fontFamily);
60
- font-weight: var(--text-body-md-regular-fontWeight);
61
- font-size: var(--text-body-md-regular-fontSize);
62
- line-height: var(--text-body-md-regular-lineHeight);
59
+ font-family: var(--text-body-base-regular-fontFamily);
60
+ font-weight: var(--text-body-base-regular-fontWeight);
61
+ font-size: var(--text-body-base-regular-fontSize);
62
+ line-height: var(--text-body-base-regular-lineHeight);
63
63
  -webkit-tap-highlight-color: transparent;
64
64
  transition: background-color 0.12s ease;
65
65
  }
@@ -141,7 +141,6 @@
141
141
  font-weight: var(--text-label-sm-regular-fontWeight);
142
142
  font-size: var(--text-label-sm-regular-fontSize);
143
143
  line-height: var(--text-label-sm-regular-lineHeight);
144
- letter-spacing: var(--text-label-sm-regular-letterSpacing);
145
144
  }
146
145
 
147
146
  /* ─── Floating modifier ───────────────────────────────── */
@@ -227,7 +226,6 @@
227
226
  font-weight: var(--text-label-md-regular-fontWeight);
228
227
  font-size: var(--text-label-md-regular-fontSize);
229
228
  line-height: var(--text-label-md-regular-lineHeight);
230
- letter-spacing: var(--text-label-md-regular-letterSpacing);
231
229
  }
232
230
 
233
231
  /* When floating and sidebar, remove the floating card styles */
@@ -292,7 +290,6 @@
292
290
  font-weight: var(--text-label-md-regular-fontWeight);
293
291
  font-size: var(--text-label-md-regular-fontSize);
294
292
  line-height: var(--text-label-md-regular-lineHeight);
295
- letter-spacing: var(--text-label-md-regular-letterSpacing);
296
293
  }
297
294
 
298
295
  /* When floating and topnav, remove the floating card styles */
@@ -16,19 +16,36 @@
16
16
  gap: var(--spacing-1);
17
17
  }
18
18
 
19
+ .muka-breadcrumb__item:has(.muka-breadcrumb__icon) {
20
+ padding-left: var(--spacing-1);
21
+ }
22
+
19
23
  .muka-breadcrumb__icon {
20
24
  display: inline-flex;
21
25
  align-items: center;
22
26
  color: var(--color-text-subtle-default);
23
27
  }
24
28
 
29
+ .muka-breadcrumb__icon .muka-icon {
30
+ color: inherit;
31
+ }
32
+
33
+ .muka-breadcrumb__item:has(.muka-breadcrumb__current) .muka-breadcrumb__icon {
34
+ color: var(--color-text-default-default);
35
+ }
36
+
37
+ .muka-breadcrumb__item:has(.muka-breadcrumb__link:hover) .muka-breadcrumb__icon {
38
+ color: var(--color-text-action-default);
39
+ }
40
+
25
41
  /* Link styles */
26
42
  .muka-breadcrumb__link {
27
43
  color: var(--color-text-subtle-default);
28
44
  text-decoration: none;
29
45
  border: none;
30
46
  background: none;
31
- padding: 0;
47
+ padding-inline: var(--spacing-2);
48
+ padding-block: 0;
32
49
  cursor: pointer;
33
50
  font: inherit;
34
51
  transition: color 0.15s ease;
@@ -39,10 +56,17 @@
39
56
  text-decoration: underline;
40
57
  }
41
58
 
42
- /* Current page (last item) */
59
+ /* Tighter gap after leading icon */
60
+ .muka-breadcrumb__item:has(.muka-breadcrumb__icon) .muka-breadcrumb__link,
61
+ .muka-breadcrumb__item:has(.muka-breadcrumb__icon) .muka-breadcrumb__current {
62
+ padding-left: var(--spacing-1);
63
+ }
64
+
65
+ /* Current page (last item, no context switcher) */
43
66
  .muka-breadcrumb__current {
44
67
  color: var(--color-text-default-default);
45
68
  font-weight: 600;
69
+ padding-inline: var(--spacing-2);
46
70
  }
47
71
 
48
72
  /* Separator */
@@ -84,7 +84,7 @@
84
84
  }
85
85
 
86
86
  .muka-combobox__field--error:not(.muka-combobox__field--disabled) {
87
- border-color: var(--color-state-error-border, var(--color-state-error-foreground));
87
+ border-color: var(--color-state-error-contrast);
88
88
  }
89
89
 
90
90
  .muka-combobox__field--disabled {
@@ -141,7 +141,7 @@
141
141
 
142
142
  .muka-combobox__error {
143
143
  margin: 0;
144
- color: var(--color-state-error-foreground);
144
+ color: var(--color-state-error-default);
145
145
  font-family: var(--text-label-sm-regular-fontFamily);
146
146
  font-size: var(--text-label-sm-regular-fontSize);
147
147
  font-weight: var(--text-label-sm-regular-fontWeight);
@@ -71,10 +71,10 @@
71
71
  }
72
72
 
73
73
  .muka-context-select__label {
74
- font-family: var(--text-label-sm-regular-font-family);
75
- font-size: var(--text-label-sm-regular-font-size);
76
- font-weight: var(--text-label-sm-regular-font-weight);
77
- line-height: var(--text-label-sm-regular-line-height);
74
+ font-family: var(--text-label-sm-regular-fontFamily);
75
+ font-size: var(--text-label-sm-regular-fontSize);
76
+ font-weight: var(--text-label-sm-regular-fontWeight);
77
+ line-height: var(--text-label-sm-regular-lineHeight);
78
78
  white-space: nowrap;
79
79
  }
80
80
 
@@ -88,7 +88,7 @@ const DocumentToolbar = ({ currentPage, totalPages, zoom, onPageChange, onZoomCh
88
88
  setPageInput(currentPage.toString());
89
89
  }, [currentPage]);
90
90
  const zoomPercentage = Math.round(zoom * 100);
91
- return ((0, jsx_runtime_1.jsxs)("div", { className: "muka-documentviewer__toolbar", role: "toolbar", "aria-label": "Document controls", children: [(0, jsx_runtime_1.jsxs)("div", { className: "muka-documentviewer__toolbar-section", children: [(0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "ghost", size: "sm", iconOnly: true, onClick: handlePrevPage, disabled: currentPage <= 1, "aria-label": "Previous page", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "RiArrowLeftSLine" }) }), (0, jsx_runtime_1.jsxs)("div", { className: "muka-documentviewer__page-input", children: [(0, jsx_runtime_1.jsx)("input", { type: "text", className: "muka-documentviewer__page-number", value: pageInput, onChange: handlePageInputChange, onBlur: handlePageInputBlur, onKeyDown: handlePageInputKeyDown, "aria-label": "Current page", size: 3 }), (0, jsx_runtime_1.jsxs)("span", { className: "muka-documentviewer__page-total", children: ["/ ", totalPages] })] }), (0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "ghost", size: "sm", iconOnly: true, onClick: handleNextPage, disabled: currentPage >= totalPages, "aria-label": "Next page", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "RiArrowRightSLine" }) })] }), (0, jsx_runtime_1.jsxs)("div", { className: "muka-documentviewer__toolbar-section muka-documentviewer__toolbar-section--center", children: [(0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "ghost", size: "sm", iconOnly: true, onClick: handleZoomOut, disabled: zoom <= 0.25, "aria-label": "Zoom out", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "RiZoomOutLine" }) }), (0, jsx_runtime_1.jsxs)("button", { className: "muka-documentviewer__zoom-display", onClick: handleResetZoom, "aria-label": `Zoom level ${zoomPercentage}%, click to reset to 100%`, children: [zoomPercentage, "%"] }), (0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "ghost", size: "sm", iconOnly: true, onClick: handleZoomIn, disabled: zoom >= 5, "aria-label": "Zoom in", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "RiZoomInLine" }) })] }), (0, jsx_runtime_1.jsxs)("div", { className: "muka-documentviewer__toolbar-section muka-documentviewer__toolbar-section--end", children: [onDownload && ((0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "ghost", size: "sm", iconOnly: true, onClick: onDownload, "aria-label": "Download document", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "RiDownloadLine" }) })), onPrint && ((0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "ghost", size: "sm", iconOnly: true, onClick: onPrint, "aria-label": "Print document", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "RiPrinterLine" }) })), onFullscreen && ((0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "ghost", size: "sm", iconOnly: true, onClick: onFullscreen, "aria-label": "Toggle fullscreen", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "RiFullscreenLine" }) }))] })] }));
91
+ return ((0, jsx_runtime_1.jsxs)("div", { className: "muka-documentviewer__toolbar", role: "toolbar", "aria-label": "Document controls", children: [(0, jsx_runtime_1.jsxs)("div", { className: "muka-documentviewer__toolbar-section", children: [(0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "ghost", size: "sm", iconOnly: true, onClick: handlePrevPage, disabled: currentPage <= 1, "aria-label": "Previous page", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "arrow-left-s" }) }), (0, jsx_runtime_1.jsxs)("div", { className: "muka-documentviewer__page-input", children: [(0, jsx_runtime_1.jsx)("input", { type: "text", className: "muka-documentviewer__page-number", value: pageInput, onChange: handlePageInputChange, onBlur: handlePageInputBlur, onKeyDown: handlePageInputKeyDown, "aria-label": "Current page", size: 3 }), (0, jsx_runtime_1.jsxs)("span", { className: "muka-documentviewer__page-total", children: ["/ ", totalPages] })] }), (0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "ghost", size: "sm", iconOnly: true, onClick: handleNextPage, disabled: currentPage >= totalPages, "aria-label": "Next page", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "arrow-right-s" }) })] }), (0, jsx_runtime_1.jsxs)("div", { className: "muka-documentviewer__toolbar-section muka-documentviewer__toolbar-section--center", children: [(0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "ghost", size: "sm", iconOnly: true, onClick: handleZoomOut, disabled: zoom <= 0.25, "aria-label": "Zoom out", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "zoom-out" }) }), (0, jsx_runtime_1.jsxs)("button", { className: "muka-documentviewer__zoom-display", onClick: handleResetZoom, "aria-label": `Zoom level ${zoomPercentage}%, click to reset to 100%`, children: [zoomPercentage, "%"] }), (0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "ghost", size: "sm", iconOnly: true, onClick: handleZoomIn, disabled: zoom >= 5, "aria-label": "Zoom in", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "zoom-in" }) })] }), (0, jsx_runtime_1.jsxs)("div", { className: "muka-documentviewer__toolbar-section muka-documentviewer__toolbar-section--end", children: [onDownload && ((0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "ghost", size: "sm", iconOnly: true, onClick: onDownload, "aria-label": "Download document", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "download" }) })), onPrint && ((0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "ghost", size: "sm", iconOnly: true, onClick: onPrint, "aria-label": "Print document", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "printer" }) })), onFullscreen && ((0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "ghost", size: "sm", iconOnly: true, onClick: onFullscreen, "aria-label": "Toggle fullscreen", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "fullscreen" }) }))] })] }));
92
92
  };
93
93
  exports.DocumentToolbar = DocumentToolbar;
94
94
  exports.default = exports.DocumentToolbar;
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentToolbar.js","sourceRoot":"","sources":["../../../../components/DocumentViewer/DocumentToolbar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DocumentToolbar.js","sourceRoot":"","sources":["../../../../components/DocumentViewer/DocumentToolbar.tsx"],"names":[],"mappings":"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"}
@@ -65,7 +65,7 @@
65
65
  line-height: var(--text-label-sm-lineHeight);
66
66
  border: 1px solid var(--color-border-default);
67
67
  border-radius: var(--border-radius-md);
68
- background-color: var(--color-surface-default);
68
+ background-color: var(--color-surface-level0);
69
69
  color: var(--color-text-default-default);
70
70
  }
71
71
 
@@ -210,7 +210,7 @@
210
210
 
211
211
  .muka-documentviewer__thumbnail-label {
212
212
  font-family: var(--alias-font-brand-family);
213
- font-size: var(--text-label-xs-fontSize);
213
+ font-size: var(--text-label-xs-regular-fontSize);
214
214
  color: var(--color-text-default-default);
215
215
  font-weight: var(--alias-font-brand-weight-medium);
216
216
  }
@@ -38,7 +38,7 @@
38
38
  }
39
39
 
40
40
  .muka-dropdown-select__required {
41
- color: var(--color-state-error-foreground);
41
+ color: var(--color-state-error-default);
42
42
  }
43
43
 
44
44
  .muka-dropdown-select__field {
@@ -98,7 +98,7 @@
98
98
  }
99
99
 
100
100
  .muka-dropdown-select__field--error:not(.muka-dropdown-select__field--disabled) {
101
- border-color: var(--color-state-error-border, var(--color-state-error-foreground));
101
+ border-color: var(--color-state-error-contrast);
102
102
  }
103
103
 
104
104
  .muka-dropdown-select__field--disabled {
@@ -213,7 +213,7 @@
213
213
 
214
214
  .muka-dropdown-select__error {
215
215
  margin: 0;
216
- color: var(--color-state-error-foreground);
216
+ color: var(--color-state-error-default);
217
217
  font-family: var(--text-label-sm-regular-fontFamily);
218
218
  font-size: var(--text-label-sm-regular-fontSize);
219
219
  font-weight: var(--text-label-sm-regular-fontWeight);
@@ -80,10 +80,10 @@
80
80
  .muka-emptystate__title {
81
81
  color: var(--emptystate-title-color);
82
82
  margin: 0;
83
- font-family: var(--text-heading-h4-fontFamily);
84
- font-weight: var(--text-heading-h4-fontWeight);
85
- font-size: var(--text-heading-h4-fontSize);
86
- line-height: var(--text-heading-h4-lineHeight);
83
+ font-family: var(--text-heading-sm-fontFamily);
84
+ font-weight: var(--text-heading-sm-fontWeight);
85
+ font-size: var(--text-heading-sm-fontSize);
86
+ line-height: var(--text-heading-sm-lineHeight);
87
87
  }
88
88
 
89
89
  .muka-emptystate--sm .muka-emptystate__title {
@@ -94,10 +94,10 @@
94
94
  }
95
95
 
96
96
  .muka-emptystate--lg .muka-emptystate__title {
97
- font-family: var(--text-heading-h3-fontFamily);
98
- font-weight: var(--text-heading-h3-fontWeight);
99
- font-size: var(--text-heading-h3-fontSize);
100
- line-height: var(--text-heading-h3-lineHeight);
97
+ font-family: var(--text-heading-md-fontFamily);
98
+ font-weight: var(--text-heading-md-fontWeight);
99
+ font-size: var(--text-heading-md-fontSize);
100
+ line-height: var(--text-heading-md-lineHeight);
101
101
  }
102
102
 
103
103
  /* Description */
@@ -38,7 +38,7 @@
38
38
 
39
39
  .muka-fab--primary {
40
40
  background-color: var(--color-action-default);
41
- color: var(--color-text-inverse-default);
41
+ color: var(--color-text-default-inverse);
42
42
  }
43
43
 
44
44
  .muka-fab--primary:hover:not(:disabled) {
@@ -118,10 +118,10 @@
118
118
 
119
119
  /* Text */
120
120
  .muka-fileupload__text {
121
- font-family: var(--text-body-md-regular-fontFamily);
122
- font-size: var(--text-body-md-regular-fontSize);
123
- font-weight: var(--text-body-md-regular-fontWeight);
124
- line-height: var(--text-body-md-regular-lineHeight);
121
+ font-family: var(--text-body-base-regular-fontFamily);
122
+ font-size: var(--text-body-base-regular-fontSize);
123
+ font-weight: var(--text-body-base-regular-fontWeight);
124
+ line-height: var(--text-body-base-regular-lineHeight);
125
125
  color: var(--color-text-default-default);
126
126
  }
127
127
 
@@ -204,10 +204,10 @@
204
204
  }
205
205
 
206
206
  .muka-fileupload-item__name {
207
- font-family: var(--text-body-sm-medium-fontFamily);
208
- font-size: var(--text-body-sm-medium-fontSize);
209
- font-weight: var(--text-body-sm-medium-fontWeight);
210
- line-height: var(--text-body-sm-medium-lineHeight);
207
+ font-family: var(--text-body-sm-regular-fontFamily);
208
+ font-size: var(--text-body-sm-regular-fontSize);
209
+ font-weight: var(--text-body-sm-regular-fontWeight);
210
+ line-height: var(--text-body-sm-regular-lineHeight);
211
211
  color: var(--fileupload-item-color-default-foreground);
212
212
  white-space: nowrap;
213
213
  overflow: hidden;
@@ -243,11 +243,11 @@
243
243
  }
244
244
 
245
245
  .muka-fileupload-item__status-icon--success {
246
- color: var(--color-state-success-foreground);
246
+ color: var(--fileupload-item-color-success-foreground);
247
247
  }
248
248
 
249
249
  .muka-fileupload-item__status-icon--error {
250
- color: var(--color-state-error-foreground);
250
+ color: var(--fileupload-item-color-error-foreground);
251
251
  }
252
252
 
253
253
  .muka-fileupload-item__remove {
@@ -1,20 +1,27 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Icon = void 0;
3
+ exports.Icon = exports.iconRegistry = exports.listRegisteredIcons = exports.registerIcon = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  require("./Icon.css");
6
6
  const iconRegistry_1 = require("./iconRegistry");
7
+ var iconRegistry_2 = require("./iconRegistry");
8
+ Object.defineProperty(exports, "registerIcon", { enumerable: true, get: function () { return iconRegistry_2.registerIcon; } });
9
+ Object.defineProperty(exports, "listRegisteredIcons", { enumerable: true, get: function () { return iconRegistry_2.listRegisteredIcons; } });
10
+ Object.defineProperty(exports, "iconRegistry", { enumerable: true, get: function () { return iconRegistry_2.iconRegistry; } });
7
11
  /**
8
12
  * Icon Component
9
13
  *
10
14
  * Wrapper that enforces consistent sizing and color inheritance.
11
- * Supports two modes: name (RemixIcon from registry) or children (custom SVG).
12
- * Provide exactly one of name or children.
15
+ *
16
+ * Three ways to supply a glyph:
17
+ * 1. `name` — curated muka registry (Tier 1 / Tier 2)
18
+ * 2. `icon` — pass a Remix component (`import { RiWifiOffLine } from '@remixicon/react'`)
19
+ * 3. `children` — any custom SVG / node
13
20
  *
14
21
  * Tokens used:
15
22
  * - icon.size.{xs|sm|default|lg}
16
23
  */
17
- const Icon = ({ name, variant = 'line', children, size = 'md', colorVariant, color, label, className = '', ...props }) => {
24
+ const Icon = ({ name, icon: IconGlyph, variant = 'line', children, size = 'md', colorVariant, color, label, className = '', ...props }) => {
18
25
  const iconClasses = [
19
26
  'muka-icon',
20
27
  `muka-icon--${size}`,
@@ -22,9 +29,12 @@ const Icon = ({ name, variant = 'line', children, size = 'md', colorVariant, col
22
29
  className,
23
30
  ].filter(Boolean).join(' ');
24
31
  let content;
25
- if (name) {
26
- const IconComponent = (0, iconRegistry_1.getIconComponent)(name, variant);
27
- content = (0, jsx_runtime_1.jsx)(IconComponent, {});
32
+ if (IconGlyph) {
33
+ content = (0, jsx_runtime_1.jsx)(IconGlyph, {});
34
+ }
35
+ else if (name) {
36
+ const NamedIcon = (0, iconRegistry_1.getIconComponent)(name, variant);
37
+ content = (0, jsx_runtime_1.jsx)(NamedIcon, {});
28
38
  }
29
39
  else if (children !== undefined && children !== null) {
30
40
  content = children;
@@ -1 +1 @@
1
- {"version":3,"file":"Icon.js","sourceRoot":"","sources":["../../../../components/Icon/Icon.tsx"],"names":[],"mappings":";;;;AACA,sBAAoB;AACpB,iDAAiE;AA8BjE;;;;;;;;;GASG;AACI,MAAM,IAAI,GAAwB,CAAC,EACxC,IAAI,EACJ,OAAO,GAAG,MAAM,EAChB,QAAQ,EACR,IAAI,GAAG,IAAI,EACX,YAAY,EACZ,KAAK,EACL,KAAK,EACL,SAAS,GAAG,EAAE,EACd,GAAG,KAAK,EACT,EAAE,EAAE;IACH,MAAM,WAAW,GAAG;QAClB,WAAW;QACX,cAAc,IAAI,EAAE;QACpB,YAAY,IAAI,YAAY,KAAK,SAAS,IAAI,cAAc,YAAY,EAAE;QAC1E,SAAS;KACV,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE5B,IAAI,OAAwB,CAAC;IAC7B,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,aAAa,GAAG,IAAA,+BAAgB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACtD,OAAO,GAAG,uBAAC,aAAa,KAAG,CAAC;IAC9B,CAAC;SAAM,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACvD,OAAO,GAAG,QAAQ,CAAC;IACrB,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;IAED,OAAO,CACL,iCACE,SAAS,EAAE,WAAW,EACtB,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,EACpC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,gBACxB,KAAK,iBACJ,CAAC,KAAK,KACf,KAAK,YAER,OAAO,GACH,CACR,CAAC;AACJ,CAAC,CAAC;AAxCW,QAAA,IAAI,QAwCf;AAEF,kBAAe,YAAI,CAAC"}
1
+ {"version":3,"file":"Icon.js","sourceRoot":"","sources":["../../../../components/Icon/Icon.tsx"],"names":[],"mappings":";;;;AACA,sBAAoB;AACpB,iDAIwB;AAGxB,+CAKwB;AAJtB,4GAAA,YAAY,OAAA;AACZ,mHAAA,mBAAmB,OAAA;AACnB,4GAAA,YAAY,OAAA;AAwCd;;;;;;;;;;;;GAYG;AACI,MAAM,IAAI,GAAwB,CAAC,EACxC,IAAI,EACJ,IAAI,EAAE,SAAS,EACf,OAAO,GAAG,MAAM,EAChB,QAAQ,EACR,IAAI,GAAG,IAAI,EACX,YAAY,EACZ,KAAK,EACL,KAAK,EACL,SAAS,GAAG,EAAE,EACd,GAAG,KAAK,EACT,EAAE,EAAE;IACH,MAAM,WAAW,GAAG;QAClB,WAAW;QACX,cAAc,IAAI,EAAE;QACpB,YAAY,IAAI,YAAY,KAAK,SAAS,IAAI,cAAc,YAAY,EAAE;QAC1E,SAAS;KACV,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE5B,IAAI,OAAwB,CAAC;IAC7B,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,GAAG,uBAAC,SAAS,KAAG,CAAC;IAC1B,CAAC;SAAM,IAAI,IAAI,EAAE,CAAC;QAChB,MAAM,SAAS,GAAG,IAAA,+BAAgB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAClD,OAAO,GAAG,uBAAC,SAAS,KAAG,CAAC;IAC1B,CAAC;SAAM,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACvD,OAAO,GAAG,QAAQ,CAAC;IACrB,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;IAED,OAAO,CACL,iCACE,SAAS,EAAE,WAAW,EACtB,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,EACpC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,gBACxB,KAAK,iBACJ,CAAC,KAAK,KACf,KAAK,YAER,OAAO,GACH,CACR,CAAC;AACJ,CAAC,CAAC;AA3CW,QAAA,IAAI,QA2Cf;AAEF,kBAAe,YAAI,CAAC"}
@@ -1,131 +1,163 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
2
  Object.defineProperty(exports, "__esModule", { value: true });
36
3
  exports.iconRegistry = void 0;
37
4
  exports.getIconComponent = getIconComponent;
38
- const RemixIcons = __importStar(require("@remixicon/react"));
5
+ exports.registerIcon = registerIcon;
6
+ exports.listRegisteredIcons = listRegisteredIcons;
7
+ const react_1 = require("@remixicon/react");
39
8
  const ArrowDropUpDownIcon_1 = require("./custom/ArrowDropUpDownIcon");
40
9
  const ArrowReturnIcon_1 = require("./custom/ArrowReturnIcon");
41
- /**
42
- * Convert PascalCase to kebab-case
43
- * e.g., "ArrowLeftS" -> "arrow-left-s"
44
- */
45
- function toKebabCase(str) {
46
- return str
47
- .replace(/([a-z0-9])([A-Z])/g, '$1-$2')
48
- .replace(/([A-Z])([A-Z][a-z])/g, '$1-$2')
49
- .toLowerCase();
50
- }
51
10
  const NullComponent = function NullIcon() {
52
11
  return null;
53
12
  };
13
+ function entry(line, fill = line, tier = 1) {
14
+ return { line, fill, tier };
15
+ }
54
16
  /**
55
- * Auto-generated registry of all RemixIcon components.
56
- * Icons are keyed by kebab-case name (e.g., "arrow-left", "delete-bin-2", "more-2").
17
+ * Curated RemixIcon registry (Tier 1 + Tier 2).
57
18
  *
58
- * Usage: <Icon name="arrow-left" variant="line" />
19
+ * - Tier 1: glyphs Muka production components hardcode via `name=`
20
+ * - Tier 2: shared shell chrome most consumer apps need via `name=`
59
21
  *
60
- * Note: This includes all ~2,800 RemixIcons for development convenience.
61
- * Before production release, consider trimming to only used icons for smaller bundles.
22
+ * App/domain icons: use `<Icon icon={Ri…} />` or `registerIcon` — do not expand
23
+ * this map for one-off Figma glyphs (keeps consumer bundles small).
62
24
  */
63
- exports.iconRegistry = {};
64
- // Build registry from all RemixIcon exports
65
- // Pattern: Ri{Name}Line, Ri{Name}Fill, or Ri{Name} (single-variant)
66
- const iconExports = RemixIcons;
67
- const exportNames = Object.keys(iconExports);
68
- for (let i = 0; i < exportNames.length; i++) {
69
- const exportName = exportNames[i];
70
- const Component = iconExports[exportName];
71
- if (!exportName.startsWith('Ri'))
72
- continue;
73
- if (typeof Component !== 'function')
74
- continue;
75
- const isLine = exportName.endsWith('Line');
76
- const isFill = exportName.endsWith('Fill');
77
- let baseName;
78
- if (isLine || isFill) {
79
- // Extract name: "RiArrowLeftLine" -> "ArrowLeft"
80
- baseName = exportName.slice(2, -4);
81
- }
82
- else {
83
- // Single-variant icon: "RiSortDesc" -> "SortDesc"
84
- baseName = exportName.slice(2);
85
- }
86
- const kebabName = toKebabCase(baseName);
87
- if (!exports.iconRegistry[kebabName]) {
88
- exports.iconRegistry[kebabName] = {
89
- line: NullComponent,
90
- fill: NullComponent,
91
- };
92
- }
93
- if (isLine) {
94
- exports.iconRegistry[kebabName].line = Component;
95
- }
96
- else if (isFill) {
97
- exports.iconRegistry[kebabName].fill = Component;
98
- }
99
- else {
100
- // Single-variant icons use the same component for both
101
- exports.iconRegistry[kebabName].line = Component;
102
- exports.iconRegistry[kebabName].fill = Component;
103
- }
25
+ const canonicalRegistry = {
26
+ // ── Tier 1: required by Muka components ──────────────────────────────────
27
+ add: entry(react_1.RiAddLine, react_1.RiAddFill, 1),
28
+ alert: entry(react_1.RiAlertLine, react_1.RiAlertFill, 1),
29
+ 'arrow-down': entry(react_1.RiArrowDownLine, react_1.RiArrowDownFill, 1),
30
+ 'arrow-down-s': entry(react_1.RiArrowDownSLine, react_1.RiArrowDownSFill, 1),
31
+ 'arrow-drop-up-down': entry(ArrowDropUpDownIcon_1.ArrowDropUpDownIcon, ArrowDropUpDownIcon_1.ArrowDropUpDownIcon, 1),
32
+ 'arrow-left': entry(react_1.RiArrowLeftLine, react_1.RiArrowLeftFill, 1),
33
+ 'arrow-left-s': entry(react_1.RiArrowLeftSLine, react_1.RiArrowLeftSFill, 1),
34
+ 'arrow-return': entry(ArrowReturnIcon_1.ArrowReturnIcon, ArrowReturnIcon_1.ArrowReturnIcon, 1),
35
+ 'arrow-right': entry(react_1.RiArrowRightLine, react_1.RiArrowRightFill, 1),
36
+ 'arrow-right-s': entry(react_1.RiArrowRightSLine, react_1.RiArrowRightSFill, 1),
37
+ 'arrow-up-s': entry(react_1.RiArrowUpSLine, react_1.RiArrowUpSFill, 1),
38
+ attachment: entry(react_1.RiAttachmentLine, react_1.RiAttachmentFill, 1),
39
+ check: entry(react_1.RiCheckLine, react_1.RiCheckFill, 1),
40
+ 'checkbox-circle': entry(react_1.RiCheckboxCircleLine, react_1.RiCheckboxCircleFill, 1),
41
+ close: entry(react_1.RiCloseLine, react_1.RiCloseFill, 1),
42
+ 'delete-bin': entry(react_1.RiDeleteBinLine, react_1.RiDeleteBinFill, 1),
43
+ download: entry(react_1.RiDownloadLine, react_1.RiDownloadFill, 1),
44
+ 'emotion-happy': entry(react_1.RiEmotionHappyLine, react_1.RiEmotionHappyFill, 1),
45
+ 'error-warning': entry(react_1.RiErrorWarningLine, react_1.RiErrorWarningFill, 1),
46
+ file: entry(react_1.RiFileLine, react_1.RiFileFill, 1),
47
+ 'file-copy': entry(react_1.RiFileCopyLine, react_1.RiFileCopyFill, 1),
48
+ 'file-pdf': entry(react_1.RiFilePdfLine, react_1.RiFilePdfFill, 1),
49
+ 'file-text': entry(react_1.RiFileTextLine, react_1.RiFileTextFill, 1),
50
+ 'filter-3': entry(react_1.RiFilter3Line, react_1.RiFilter3Fill, 1),
51
+ fullscreen: entry(react_1.RiFullscreenLine, react_1.RiFullscreenFill, 1),
52
+ image: entry(react_1.RiImageLine, react_1.RiImageFill, 1),
53
+ information: entry(react_1.RiInformationLine, react_1.RiInformationFill, 1),
54
+ mic: entry(react_1.RiMicLine, react_1.RiMicFill, 1),
55
+ pause: entry(react_1.RiPauseLine, react_1.RiPauseFill, 1),
56
+ 'pause-circle': entry(react_1.RiPauseCircleLine, react_1.RiPauseCircleFill, 1),
57
+ pencil: entry(react_1.RiPencilLine, react_1.RiPencilFill, 1),
58
+ play: entry(react_1.RiPlayLine, react_1.RiPlayFill, 1),
59
+ printer: entry(react_1.RiPrinterLine, react_1.RiPrinterFill, 1),
60
+ restart: entry(react_1.RiRestartLine, react_1.RiRestartFill, 1),
61
+ search: entry(react_1.RiSearchLine, react_1.RiSearchFill, 1),
62
+ 'send-plane2': entry(react_1.RiSendPlane2Line, react_1.RiSendPlane2Fill, 1),
63
+ 'sort-asc': entry(react_1.RiSortAsc, react_1.RiSortAsc, 1),
64
+ 'sort-desc': entry(react_1.RiSortDesc, react_1.RiSortDesc, 1),
65
+ 'thumb-down': entry(react_1.RiThumbDownLine, react_1.RiThumbDownFill, 1),
66
+ 'thumb-up': entry(react_1.RiThumbUpLine, react_1.RiThumbUpFill, 1),
67
+ 'zoom-in': entry(react_1.RiZoomInLine, react_1.RiZoomInLine, 1),
68
+ 'zoom-out': entry(react_1.RiZoomOutLine, react_1.RiZoomOutLine, 1),
69
+ // ── Tier 2: common consumer chrome ───────────────────────────────────────
70
+ bell: entry(react_1.RiBellLine, react_1.RiBellFill, 2),
71
+ building: entry(react_1.RiBuildingLine, react_1.RiBuildingFill, 2),
72
+ 'close-large': entry(react_1.RiCloseLargeLine, react_1.RiCloseLargeFill, 2),
73
+ contrast: entry(react_1.RiContrastLine, react_1.RiContrastFill, 2),
74
+ edit: entry(react_1.RiEditLine, react_1.RiEditFill, 2),
75
+ eye: entry(react_1.RiEyeLine, react_1.RiEyeFill, 2),
76
+ 'eye-off': entry(react_1.RiEyeOffLine, react_1.RiEyeOffFill, 2),
77
+ google: entry(react_1.RiGoogleLine, react_1.RiGoogleFill, 2),
78
+ home: entry(react_1.RiHomeLine, react_1.RiHomeFill, 2),
79
+ 'home-4': entry(react_1.RiHome4Line, react_1.RiHome4Fill, 2),
80
+ lock: entry(react_1.RiLockLine, react_1.RiLockFill, 2),
81
+ mail: entry(react_1.RiMailLine, react_1.RiMailFill, 2),
82
+ moon: entry(react_1.RiMoonLine, react_1.RiMoonFill, 2),
83
+ 'more-2': entry(react_1.RiMore2Line, react_1.RiMore2Fill, 2),
84
+ settings: entry(react_1.RiSettingsLine, react_1.RiSettingsFill, 2),
85
+ 'settings-3': entry(react_1.RiSettings3Line, react_1.RiSettings3Fill, 2),
86
+ share: entry(react_1.RiShareLine, react_1.RiShareFill, 2),
87
+ translate: entry(react_1.RiTranslate, react_1.RiTranslate, 2),
88
+ 'translate-2': entry(react_1.RiTranslate2, react_1.RiTranslate2, 2),
89
+ upload: entry(react_1.RiUploadLine, react_1.RiUploadFill, 2),
90
+ 'upload-2': entry(react_1.RiUpload2Line, react_1.RiUpload2Fill, 2),
91
+ user: entry(react_1.RiUserLine, react_1.RiUserFill, 2),
92
+ 'wifi-off': entry(react_1.RiWifiOffLine, react_1.RiWifiOffFill, 2),
93
+ };
94
+ exports.iconRegistry = {
95
+ ...canonicalRegistry,
96
+ };
97
+ function alias(from, to) {
98
+ const target = exports.iconRegistry[to];
99
+ if (!target)
100
+ return;
101
+ exports.iconRegistry[from] = { ...target, aliasOf: to };
104
102
  }
105
- // For icons without both variants, use the available one for both
106
- const registryKeys = Object.keys(exports.iconRegistry);
107
- for (let i = 0; i < registryKeys.length; i++) {
108
- const entry = exports.iconRegistry[registryKeys[i]];
109
- if (entry.line === NullComponent && entry.fill !== NullComponent) {
110
- entry.line = entry.fill;
111
- }
112
- else if (entry.fill === NullComponent && entry.line !== NullComponent) {
113
- entry.fill = entry.line;
103
+ // Digit-compact aliases (home-4 → home4)
104
+ for (const key of Object.keys(canonicalRegistry)) {
105
+ const compact = key.replace(/-(\d+)/g, '$1');
106
+ if (compact !== key && !exports.iconRegistry[compact]) {
107
+ alias(compact, key);
114
108
  }
115
109
  }
116
- // Custom icons from Figma that are not a single Remix export
117
- exports.iconRegistry['arrow-drop-up-down'] = {
118
- line: ArrowDropUpDownIcon_1.ArrowDropUpDownIcon,
119
- fill: ArrowDropUpDownIcon_1.ArrowDropUpDownIcon,
120
- };
121
- exports.iconRegistry['arrow-return'] = {
122
- line: ArrowReturnIcon_1.ArrowReturnIcon,
123
- fill: ArrowReturnIcon_1.ArrowReturnIcon,
124
- };
110
+ // Compatibility aliases used by consumers / older call sites
111
+ alias('x', 'close');
112
+ alias('chevron-down', 'arrow-down-s');
113
+ alias('filter3', 'filter-3');
114
+ alias('translate2', 'translate-2');
115
+ alias('more2', 'more-2');
116
+ alias('dots-vertical', 'more-2');
125
117
  function getIconComponent(name, variant) {
126
- const entry = exports.iconRegistry[name];
127
- if (!entry)
118
+ const registryEntry = exports.iconRegistry[name];
119
+ if (!registryEntry)
128
120
  return NullComponent;
129
- return variant === 'fill' ? entry.fill : entry.line;
121
+ return variant === 'fill' ? registryEntry.fill : registryEntry.line;
122
+ }
123
+ /**
124
+ * Register an app-local icon nickname without a muka release.
125
+ * Prefer `<Icon icon={Ri…} />` for one-offs; use this when many call sites
126
+ * need the same string `name=`.
127
+ */
128
+ function registerIcon(name, registryEntry) {
129
+ exports.iconRegistry[name] = {
130
+ line: registryEntry.line,
131
+ fill: registryEntry.fill,
132
+ tier: registryEntry.tier ?? 2,
133
+ aliasOf: registryEntry.aliasOf,
134
+ };
135
+ }
136
+ /**
137
+ * List icons for Storybook grids / tooling.
138
+ * By default lists only the muka curated set (not runtime `registerIcon` demos)
139
+ * and omits aliases so designers see one primary kebab name per glyph.
140
+ */
141
+ function listRegisteredIcons(options) {
142
+ const { tier, includeAliases = false, includeRuntime = false } = options ?? {};
143
+ const names = includeRuntime
144
+ ? Object.keys(exports.iconRegistry)
145
+ : Object.keys(canonicalRegistry);
146
+ const result = [];
147
+ for (const name of names.sort()) {
148
+ const registryEntry = exports.iconRegistry[name];
149
+ if (!registryEntry)
150
+ continue;
151
+ if (tier !== undefined && registryEntry.tier !== tier)
152
+ continue;
153
+ if (!includeAliases && registryEntry.aliasOf)
154
+ continue;
155
+ result.push({
156
+ name,
157
+ tier: registryEntry.tier,
158
+ aliasOf: registryEntry.aliasOf,
159
+ });
160
+ }
161
+ return result;
130
162
  }
131
163
  //# sourceMappingURL=iconRegistry.js.map