@recursica/mui-adapter 0.21.0 → 0.22.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 (187) hide show
  1. package/ARCHITECTURE.md +3 -0
  2. package/CHANGELOG.md +58 -0
  3. package/dist/index.d.ts +2929 -2
  4. package/dist/mui-adapter.cjs +68 -68
  5. package/dist/mui-adapter.cjs.map +1 -1
  6. package/dist/mui-adapter.css +1 -1
  7. package/dist/mui-adapter.js +5660 -5582
  8. package/dist/mui-adapter.js.map +1 -1
  9. package/package.json +1 -1
  10. package/src/components/Accordion/ACCORDION_IMPLEMENTATION_NOTES.md +63 -0
  11. package/src/components/Accordion/Accordion.module.css +21 -2
  12. package/src/components/Accordion/Accordion.stories.tsx +38 -0
  13. package/src/components/Accordion/Accordion.tsx +27 -12
  14. package/src/components/AssistiveElement/ASSISTIVEELEMENT_IMPLEMENTATION_NOTES.md +59 -0
  15. package/src/components/AssistiveElement/AssistiveElement.module.css +8 -1
  16. package/src/components/AssistiveElement/AssistiveElement.tsx +17 -7
  17. package/src/components/Autocomplete/Autocomplete.tsx +18 -2
  18. package/src/components/Avatar/AVATAR_IMPLEMENTATION_NOTES.md +36 -0
  19. package/src/components/Avatar/Avatar.tsx +6 -9
  20. package/src/components/Badge/Badge.module.css +0 -12
  21. package/src/components/Badge/Badge.tsx +0 -4
  22. package/src/components/Card/Card.tsx +5 -5
  23. package/src/components/Checkbox/Checkbox.module.css +17 -21
  24. package/src/components/Checkbox/Checkbox.tsx +24 -18
  25. package/src/components/Chip/Chip.module.css +16 -7
  26. package/src/components/Chip/Chip.tsx +1 -1
  27. package/src/components/Flex/Flex.tsx +1 -1
  28. package/src/components/FormControlWrapper/FORMCONTROLWRAPPER_IMPLEMENTATION_NOTES.md +35 -0
  29. package/src/components/FormControlWrapper/FormControlWrapper.tsx +24 -8
  30. package/src/components/Grid/Grid.tsx +1 -1
  31. package/src/components/Group/Group.tsx +1 -1
  32. package/src/components/HoverCard/HoverCard.tsx +1 -1
  33. package/src/components/Label/Label.module.css +15 -2
  34. package/src/components/Label/Label.tsx +7 -6
  35. package/src/components/Menu/Menu.tsx +1 -1
  36. package/src/components/Modal/Modal.tsx +1 -1
  37. package/src/components/NumberInput/NumberInput.tsx +1 -1
  38. package/src/components/Pagination/Pagination.tsx +1 -1
  39. package/src/components/Panel/Panel.tsx +1 -1
  40. package/src/components/Radio/Radio.module.css +33 -38
  41. package/src/components/Radio/Radio.tsx +58 -44
  42. package/src/components/Radio/RadioGroup.tsx +5 -0
  43. package/src/components/SegmentedControl/SegmentedControl.module.css +0 -7
  44. package/src/components/SegmentedControl/SegmentedControl.tsx +4 -8
  45. package/src/components/Slider/Slider.tsx +1 -1
  46. package/src/components/Stack/Stack.tsx +1 -1
  47. package/src/components/Stepper/Stepper.tsx +3 -3
  48. package/src/components/Switch/SWITCH_IMPLEMENTATION_NOTES.md +123 -0
  49. package/src/components/Switch/Switch.module.css +152 -89
  50. package/src/components/Switch/Switch.tsx +140 -33
  51. package/src/components/Switch/SwitchGroup.tsx +37 -9
  52. package/src/components/Table/Table.tsx +1 -1
  53. package/src/components/Tabs/IMPLEMENTATION_NOTES.md +10 -0
  54. package/src/components/Tabs/Tabs.module.css +120 -43
  55. package/src/components/Tabs/Tabs.stories.tsx +5 -2
  56. package/src/components/Tabs/Tabs.tsx +1 -1
  57. package/src/components/Tabs/USAGE.md +27 -11
  58. package/src/components/TextField/TextField.tsx +1 -1
  59. package/src/components/TimePicker/TimePicker.tsx +1 -1
  60. package/src/components/Timeline/Timeline.tsx +1 -1
  61. package/src/components/Timeline/TimelineItem.tsx +2 -2
  62. package/src/components/Toast/Toast.tsx +4 -4
  63. package/src/components/Tooltip/Tooltip.tsx +1 -1
  64. package/src/components/Tree/Tree.tsx +1 -1
  65. package/dist/src/OverStyling.d.ts +0 -1
  66. package/dist/src/Version.d.ts +0 -1
  67. package/dist/src/components/Accordion/Accordion.d.ts +0 -77
  68. package/dist/src/components/Accordion/index.d.ts +0 -1
  69. package/dist/src/components/AssistiveElement/AssistiveElement.d.ts +0 -7
  70. package/dist/src/components/AssistiveElement/index.d.ts +0 -1
  71. package/dist/src/components/Autocomplete/Autocomplete.d.ts +0 -24
  72. package/dist/src/components/Autocomplete/index.d.ts +0 -1
  73. package/dist/src/components/Avatar/Avatar.d.ts +0 -25
  74. package/dist/src/components/Avatar/index.d.ts +0 -1
  75. package/dist/src/components/Badge/Badge.d.ts +0 -25
  76. package/dist/src/components/Badge/index.d.ts +0 -1
  77. package/dist/src/components/Box/Box.d.ts +0 -8
  78. package/dist/src/components/Box/index.d.ts +0 -1
  79. package/dist/src/components/Breadcrumb/Breadcrumb.d.ts +0 -20
  80. package/dist/src/components/Breadcrumb/index.d.ts +0 -1
  81. package/dist/src/components/Button/Button.d.ts +0 -37
  82. package/dist/src/components/Button/index.d.ts +0 -1
  83. package/dist/src/components/Card/Card.d.ts +0 -81
  84. package/dist/src/components/Card/index.d.ts +0 -1
  85. package/dist/src/components/Checkbox/Checkbox.d.ts +0 -14
  86. package/dist/src/components/Checkbox/CheckboxGroup.d.ts +0 -29
  87. package/dist/src/components/Checkbox/index.d.ts +0 -5
  88. package/dist/src/components/Chip/Chip.d.ts +0 -21
  89. package/dist/src/components/Chip/index.d.ts +0 -1
  90. package/dist/src/components/Container/Container.d.ts +0 -5
  91. package/dist/src/components/Container/index.d.ts +0 -1
  92. package/dist/src/components/DatePicker/DatePicker.d.ts +0 -20
  93. package/dist/src/components/DatePicker/index.d.ts +0 -1
  94. package/dist/src/components/Dropdown/BareDropdown.d.ts +0 -41
  95. package/dist/src/components/Dropdown/Dropdown.d.ts +0 -24
  96. package/dist/src/components/Dropdown/index.d.ts +0 -1
  97. package/dist/src/components/FileInput/FileInput.d.ts +0 -3
  98. package/dist/src/components/FileInput/index.d.ts +0 -1
  99. package/dist/src/components/FileUpload/FileUpload.d.ts +0 -3
  100. package/dist/src/components/FileUpload/index.d.ts +0 -1
  101. package/dist/src/components/Flex/Flex.d.ts +0 -5
  102. package/dist/src/components/Flex/index.d.ts +0 -1
  103. package/dist/src/components/FormControlLayout/FormControlLayout.d.ts +0 -6
  104. package/dist/src/components/FormControlLayout/index.d.ts +0 -1
  105. package/dist/src/components/FormControlWrapper/FormControlWrapper.d.ts +0 -11
  106. package/dist/src/components/FormControlWrapper/index.d.ts +0 -1
  107. package/dist/src/components/Grid/Grid.d.ts +0 -12
  108. package/dist/src/components/Grid/index.d.ts +0 -1
  109. package/dist/src/components/Group/Group.d.ts +0 -5
  110. package/dist/src/components/Group/index.d.ts +0 -1
  111. package/dist/src/components/HoverCard/HoverCard.d.ts +0 -29
  112. package/dist/src/components/HoverCard/index.d.ts +0 -1
  113. package/dist/src/components/Label/Label.d.ts +0 -7
  114. package/dist/src/components/Label/index.d.ts +0 -1
  115. package/dist/src/components/Link/Link.d.ts +0 -20
  116. package/dist/src/components/Link/index.d.ts +0 -1
  117. package/dist/src/components/Loader/Loader.d.ts +0 -5
  118. package/dist/src/components/Loader/index.d.ts +0 -1
  119. package/dist/src/components/Menu/Menu.d.ts +0 -54
  120. package/dist/src/components/Menu/index.d.ts +0 -1
  121. package/dist/src/components/Modal/Modal.d.ts +0 -78
  122. package/dist/src/components/Modal/index.d.ts +0 -1
  123. package/dist/src/components/NumberInput/NumberInput.d.ts +0 -24
  124. package/dist/src/components/NumberInput/index.d.ts +0 -1
  125. package/dist/src/components/Pagination/Pagination.d.ts +0 -23
  126. package/dist/src/components/Pagination/Pagination.icons.d.ts +0 -8
  127. package/dist/src/components/Pagination/index.d.ts +0 -1
  128. package/dist/src/components/Panel/Panel.d.ts +0 -52
  129. package/dist/src/components/Panel/index.d.ts +0 -1
  130. package/dist/src/components/Radio/Radio.d.ts +0 -13
  131. package/dist/src/components/Radio/RadioGroup.d.ts +0 -9
  132. package/dist/src/components/Radio/index.d.ts +0 -2
  133. package/dist/src/components/ReadOnlyField/ReadOnlyBooleanField.d.ts +0 -5
  134. package/dist/src/components/ReadOnlyField/ReadOnlyField.d.ts +0 -5
  135. package/dist/src/components/ReadOnlyField/ReadOnlySwitchField.d.ts +0 -5
  136. package/dist/src/components/ReadOnlyField/ReadOnlyTextField.d.ts +0 -8
  137. package/dist/src/components/ReadOnlyField/WithReadOnlyWrapper.d.ts +0 -28
  138. package/dist/src/components/ReadOnlyField/index.d.ts +0 -2
  139. package/dist/src/components/SegmentedControl/SegmentedControl.d.ts +0 -32
  140. package/dist/src/components/SegmentedControl/index.d.ts +0 -1
  141. package/dist/src/components/Slider/Slider.d.ts +0 -30
  142. package/dist/src/components/Slider/index.d.ts +0 -1
  143. package/dist/src/components/Stack/Stack.d.ts +0 -5
  144. package/dist/src/components/Stack/index.d.ts +0 -1
  145. package/dist/src/components/Stepper/Stepper.d.ts +0 -97
  146. package/dist/src/components/Stepper/index.d.ts +0 -1
  147. package/dist/src/components/Switch/Switch.d.ts +0 -10
  148. package/dist/src/components/Switch/SwitchGroup.d.ts +0 -24
  149. package/dist/src/components/Switch/index.d.ts +0 -2
  150. package/dist/src/components/Table/Table.d.ts +0 -154
  151. package/dist/src/components/Table/index.d.ts +0 -1
  152. package/dist/src/components/Tabs/Tabs.d.ts +0 -57
  153. package/dist/src/components/Tabs/index.d.ts +0 -1
  154. package/dist/src/components/Text/Text.d.ts +0 -20
  155. package/dist/src/components/Text/index.d.ts +0 -1
  156. package/dist/src/components/TextArea/TextArea.d.ts +0 -24
  157. package/dist/src/components/TextArea/index.d.ts +0 -1
  158. package/dist/src/components/TextField/TextField.d.ts +0 -24
  159. package/dist/src/components/TextField/index.d.ts +0 -1
  160. package/dist/src/components/TimePicker/TimePicker.d.ts +0 -17
  161. package/dist/src/components/TimePicker/index.d.ts +0 -1
  162. package/dist/src/components/Timeline/Timeline.d.ts +0 -16
  163. package/dist/src/components/Timeline/TimelineItem.d.ts +0 -29
  164. package/dist/src/components/Timeline/index.d.ts +0 -2
  165. package/dist/src/components/Title/Title.d.ts +0 -21
  166. package/dist/src/components/Title/index.d.ts +0 -1
  167. package/dist/src/components/Toast/Toast.d.ts +0 -32
  168. package/dist/src/components/Toast/index.d.ts +0 -1
  169. package/dist/src/components/Tooltip/Tooltip.d.ts +0 -28
  170. package/dist/src/components/Tooltip/index.d.ts +0 -1
  171. package/dist/src/components/TransferList/TransferList.d.ts +0 -4
  172. package/dist/src/components/TransferList/index.d.ts +0 -1
  173. package/dist/src/components/Tree/Tree.d.ts +0 -18
  174. package/dist/src/components/Tree/index.d.ts +0 -1
  175. package/dist/src/components/Typography/Typography.d.ts +0 -38
  176. package/dist/src/components/Typography/index.d.ts +0 -1
  177. package/dist/src/components/index.d.ts +0 -50
  178. package/dist/src/index.d.ts +0 -91
  179. package/dist/src/types/index.d.ts +0 -6
  180. package/dist/src/utils/ColorSchemeWrapper.d.ts +0 -3
  181. package/dist/src/utils/RequireAccessibleLabel.d.ts +0 -1
  182. package/dist/src/utils/copyToClipboard.d.ts +0 -8
  183. package/dist/src/utils/filterStylingProps.d.ts +0 -29
  184. package/dist/src/utils/index.d.ts +0 -1
  185. package/dist/vite.config.d.ts +0 -2
  186. package/dist/vitest.workspace.d.ts +0 -2
  187. package/src/types/mantine.d.ts +0 -7
@@ -221,10 +221,81 @@
221
221
  );
222
222
  }
223
223
 
224
+ /* ---------------------------------
225
+ SELECTION INDICATOR & BASELINE
226
+ Mantine draws the active-tab underline/side-border and the full-length baseline natively off
227
+ the shared --tabs-color/--tabs-border-color vars above. MUI has no equivalent built-in, so we
228
+ drive its own indicator slot (classes.indicator, wired in Tabs.tsx) and the list's baseline
229
+ border explicitly from the same vars. Pills has no baseline/indicator — selection is carried
230
+ entirely by the pill's own background/border (see COLORS & TYPOGRAPHY below).
231
+ --------------------------------- */
232
+ .root[data-variant="default"] .indicator,
233
+ .root[data-variant="outline"] .indicator {
234
+ background-color: var(--tabs-color) !important;
235
+ }
236
+ .root[data-variant="default"][data-orientation="horizontal"] .indicator,
237
+ .root[data-variant="outline"][data-orientation="horizontal"] .indicator {
238
+ height: var(--tabs-active-border-size) !important;
239
+ }
240
+ /* MUI's Tabs root has no border/padding of its own, so the list's margin-bottom (the
241
+ tabs-content-gap, used to space the panel below) collapses into the root's auto height instead
242
+ of stopping at the list's own border edge. The indicator is absolutely positioned against that
243
+ inflated root box, so without this offset it renders content-gap pixels below the baseline
244
+ instead of flush against it. */
245
+ .root[data-variant="default"][data-orientation="horizontal"]:not(
246
+ [data-inverted]
247
+ )
248
+ .indicator {
249
+ bottom: var(
250
+ --recursica_ui-kit_components_tabs_variants_styles_default_variants_orientation_horizontal_properties_tabs-content-gap
251
+ ) !important;
252
+ }
253
+ .root[data-variant="outline"][data-orientation="horizontal"]:not(
254
+ [data-inverted]
255
+ )
256
+ .indicator {
257
+ bottom: var(
258
+ --recursica_ui-kit_components_tabs_variants_styles_outline_variants_orientation_horizontal_properties_tabs-content-gap
259
+ ) !important;
260
+ }
261
+ .root[data-variant="default"][data-orientation="vertical"] .indicator,
262
+ .root[data-variant="outline"][data-orientation="vertical"] .indicator {
263
+ width: var(--tabs-active-border-size) !important;
264
+ }
265
+ .root[data-variant="default"][data-orientation="horizontal"][data-inverted]
266
+ .indicator,
267
+ .root[data-variant="outline"][data-orientation="horizontal"][data-inverted]
268
+ .indicator {
269
+ bottom: auto !important;
270
+ top: 0 !important;
271
+ }
272
+ .root[data-variant="pills"] .indicator {
273
+ display: none !important;
274
+ }
275
+
276
+ .root[data-variant="default"][data-orientation="horizontal"] .list,
277
+ .root[data-variant="outline"][data-orientation="horizontal"] .list {
278
+ border-bottom: var(--tabs-inactive-border-size) solid var(--tabs-border-color);
279
+ }
280
+ .root[data-variant="default"][data-orientation="horizontal"][data-inverted]
281
+ .list,
282
+ .root[data-variant="outline"][data-orientation="horizontal"][data-inverted]
283
+ .list {
284
+ border-bottom: none;
285
+ border-top: var(--tabs-inactive-border-size) solid var(--tabs-border-color);
286
+ }
287
+ .root[data-variant="default"][data-orientation="vertical"] .list,
288
+ .root[data-variant="outline"][data-orientation="vertical"] .list {
289
+ border-right: var(--tabs-inactive-border-size) solid var(--tabs-border-color);
290
+ }
291
+
224
292
  /* ---------------------------------
225
293
  TAB ELEMENT
226
294
  --------------------------------- */
227
295
  .root .tab {
296
+ /* MUI defaults icon+label tabs to a 72px min-height; Mantine's tab height is purely
297
+ content/padding-driven (auto), so without this reset MUI's row is visibly taller. */
298
+ min-height: auto !important;
228
299
  min-width: var(--tabs-min-width);
229
300
  max-width: var(--tabs-max-width);
230
301
  padding: var(--tabs-vertical-padding) var(--tabs-horizontal-padding);
@@ -334,43 +405,43 @@
334
405
  );
335
406
  }
336
407
 
337
- .root[data-variant="default"] .tab[data-active] {
408
+ .root[data-variant="default"] .tab:global(.Mui-selected) {
338
409
  background-color: var(
339
410
  --recursica_ui-kit_components_tabs-item_variants_styles_default_variants_selection-states_active_properties_colors_background-color
340
- );
411
+ ) !important;
341
412
  color: var(
342
413
  --recursica_ui-kit_components_tabs-item_variants_styles_default_variants_selection-states_active_properties_colors_text-color
343
- );
414
+ ) !important;
344
415
 
345
416
  font-family: var(
346
417
  --recursica_ui-kit_components_tabs-item_variants_styles_default_variants_selection-states_active_properties_text_font-family
347
- );
418
+ ) !important;
348
419
  font-size: var(
349
420
  --recursica_ui-kit_components_tabs-item_variants_styles_default_variants_selection-states_active_properties_text_font-size
350
- );
421
+ ) !important;
351
422
  font-style: var(
352
423
  --recursica_ui-kit_components_tabs-item_variants_styles_default_variants_selection-states_active_properties_text_font-style
353
- );
424
+ ) !important;
354
425
  font-weight: var(
355
426
  --recursica_ui-kit_components_tabs-item_variants_styles_default_variants_selection-states_active_properties_text_font-weight
356
- );
427
+ ) !important;
357
428
  letter-spacing: var(
358
429
  --recursica_ui-kit_components_tabs-item_variants_styles_default_variants_selection-states_active_properties_text_letter-spacing
359
- );
430
+ ) !important;
360
431
  line-height: var(
361
432
  --recursica_ui-kit_components_tabs-item_variants_styles_default_variants_selection-states_active_properties_text_line-height
362
- );
433
+ ) !important;
363
434
  text-decoration: var(
364
435
  --recursica_ui-kit_components_tabs-item_variants_styles_default_variants_selection-states_active_properties_text_text-decoration
365
- );
436
+ ) !important;
366
437
  text-transform: var(
367
438
  --recursica_ui-kit_components_tabs-item_variants_styles_default_variants_selection-states_active_properties_text_text-transform
368
- );
439
+ ) !important;
369
440
  }
370
- .root[data-variant="default"] .tab[data-active] svg {
441
+ .root[data-variant="default"] .tab:global(.Mui-selected) svg {
371
442
  color: var(
372
443
  --recursica_ui-kit_components_tabs-item_variants_styles_default_variants_selection-states_active_properties_colors_icon-color
373
- );
444
+ ) !important;
374
445
  }
375
446
 
376
447
  /* Outline Variant Colors & Typography */
@@ -413,43 +484,43 @@
413
484
  );
414
485
  }
415
486
 
416
- .root[data-variant="outline"] .tab[data-active] {
487
+ .root[data-variant="outline"] .tab:global(.Mui-selected) {
417
488
  background-color: var(
418
489
  --recursica_ui-kit_components_tabs-item_variants_styles_outline_variants_selection-states_active_properties_colors_background-color
419
- );
490
+ ) !important;
420
491
  color: var(
421
492
  --recursica_ui-kit_components_tabs-item_variants_styles_outline_variants_selection-states_active_properties_colors_text-color
422
- );
493
+ ) !important;
423
494
 
424
495
  font-family: var(
425
496
  --recursica_ui-kit_components_tabs-item_variants_styles_outline_variants_selection-states_active_properties_text_font-family
426
- );
497
+ ) !important;
427
498
  font-size: var(
428
499
  --recursica_ui-kit_components_tabs-item_variants_styles_outline_variants_selection-states_active_properties_text_font-size
429
- );
500
+ ) !important;
430
501
  font-style: var(
431
502
  --recursica_ui-kit_components_tabs-item_variants_styles_outline_variants_selection-states_active_properties_text_font-style
432
- );
503
+ ) !important;
433
504
  font-weight: var(
434
505
  --recursica_ui-kit_components_tabs-item_variants_styles_outline_variants_selection-states_active_properties_text_font-weight
435
- );
506
+ ) !important;
436
507
  letter-spacing: var(
437
508
  --recursica_ui-kit_components_tabs-item_variants_styles_outline_variants_selection-states_active_properties_text_letter-spacing
438
- );
509
+ ) !important;
439
510
  line-height: var(
440
511
  --recursica_ui-kit_components_tabs-item_variants_styles_outline_variants_selection-states_active_properties_text_line-height
441
- );
512
+ ) !important;
442
513
  text-decoration: var(
443
514
  --recursica_ui-kit_components_tabs-item_variants_styles_outline_variants_selection-states_active_properties_text_text-decoration
444
- );
515
+ ) !important;
445
516
  text-transform: var(
446
517
  --recursica_ui-kit_components_tabs-item_variants_styles_outline_variants_selection-states_active_properties_text_text-transform
447
- );
518
+ ) !important;
448
519
  }
449
- .root[data-variant="outline"] .tab[data-active] svg {
520
+ .root[data-variant="outline"] .tab:global(.Mui-selected) svg {
450
521
  color: var(
451
522
  --recursica_ui-kit_components_tabs-item_variants_styles_outline_variants_selection-states_active_properties_colors_icon-color
452
- );
523
+ ) !important;
453
524
  }
454
525
 
455
526
  /* Pills Variant Colors & Typography */
@@ -496,58 +567,64 @@
496
567
  );
497
568
  }
498
569
 
499
- .root[data-variant="pills"] .tab[data-active] {
570
+ .root[data-variant="pills"] .tab:global(.Mui-selected) {
500
571
  background-color: var(
501
572
  --recursica_ui-kit_components_tabs-item_variants_styles_pills_variants_selection-states_active_properties_colors_background-color
502
- );
573
+ ) !important;
503
574
  color: var(
504
575
  --recursica_ui-kit_components_tabs-item_variants_styles_pills_variants_selection-states_active_properties_colors_text-color
505
- );
576
+ ) !important;
506
577
  border: var(--tabs-active-border-size) solid
507
578
  var(
508
579
  --recursica_ui-kit_components_tabs-item_variants_styles_pills_variants_selection-states_active_properties_colors_border-color
509
- );
580
+ ) !important;
510
581
 
511
582
  font-family: var(
512
583
  --recursica_ui-kit_components_tabs-item_variants_styles_pills_variants_selection-states_active_properties_text_font-family
513
- );
584
+ ) !important;
514
585
  font-size: var(
515
586
  --recursica_ui-kit_components_tabs-item_variants_styles_pills_variants_selection-states_active_properties_text_font-size
516
- );
587
+ ) !important;
517
588
  font-style: var(
518
589
  --recursica_ui-kit_components_tabs-item_variants_styles_pills_variants_selection-states_active_properties_text_font-style
519
- );
590
+ ) !important;
520
591
  font-weight: var(
521
592
  --recursica_ui-kit_components_tabs-item_variants_styles_pills_variants_selection-states_active_properties_text_font-weight
522
- );
593
+ ) !important;
523
594
  letter-spacing: var(
524
595
  --recursica_ui-kit_components_tabs-item_variants_styles_pills_variants_selection-states_active_properties_text_letter-spacing
525
- );
596
+ ) !important;
526
597
  line-height: var(
527
598
  --recursica_ui-kit_components_tabs-item_variants_styles_pills_variants_selection-states_active_properties_text_line-height
528
- );
599
+ ) !important;
529
600
  text-decoration: var(
530
601
  --recursica_ui-kit_components_tabs-item_variants_styles_pills_variants_selection-states_active_properties_text_text-decoration
531
- );
602
+ ) !important;
532
603
  text-transform: var(
533
604
  --recursica_ui-kit_components_tabs-item_variants_styles_pills_variants_selection-states_active_properties_text_text-transform
534
- );
605
+ ) !important;
535
606
  }
536
- .root[data-variant="pills"] .tab[data-active] svg {
607
+ .root[data-variant="pills"] .tab:global(.Mui-selected) svg {
537
608
  color: var(
538
609
  --recursica_ui-kit_components_tabs-item_variants_styles_pills_variants_selection-states_active_properties_colors_icon-color
539
- );
610
+ ) !important;
540
611
  }
541
612
 
542
- /* Content panel */
543
- .root .panel {
613
+ /* Content panel
614
+ Note: unlike .list (MUI's internal flexContainer, a true descendant of .root), TabPanel
615
+ renders as a DOM sibling of <Tabs>, not nested inside it — `.root .panel` would never match.
616
+ Scope directly off the CSS-module-scoped class name instead. */
617
+ .panel {
544
618
  /* Recursica doesn't define panel colors intrinsically, leaves it to child content */
619
+ /* MUI's TabPanel defaults to theme.spacing(3) padding; Mantine's Tabs.Panel has none, and
620
+ the tab-to-content gap is already carried by the list's own margin (tabs-content-gap) */
621
+ padding: 0 !important;
545
622
  }
546
623
 
547
624
  /* Hover state uses a pseudo-element to apply opacity to the background without fading the text.
548
625
  No per-variant hover-color/hover-opacity tokens exist anymore; use the generic overlay tokens
549
626
  shared across components instead. */
550
- .root[data-variant] .tab:not([data-active]):hover::before {
627
+ .root[data-variant] .tab:not(:global(.Mui-selected)):hover::before {
551
628
  content: "";
552
629
  position: absolute;
553
630
  inset: 0;
@@ -48,9 +48,12 @@ const InteractiveTabs = (
48
48
  };
49
49
 
50
50
  return (
51
- <Flex style={{ width: 600, height: 300 }}>
51
+ <Flex
52
+ direction={args.orientation === "vertical" ? "row" : "column"}
53
+ style={{ width: 600, height: 300 }}
54
+ >
52
55
  <TabContext value={value}>
53
- <Tabs onChange={handleChange} {...args}>
56
+ <Tabs value={value} onChange={handleChange} {...args}>
54
57
  <Tab
55
58
  value="gallery"
56
59
  label="Gallery"
@@ -35,6 +35,7 @@ export const Tabs = forwardRef<HTMLDivElement, TabsProps>(
35
35
  return (
36
36
  <MuiTabs
37
37
  ref={ref}
38
+ {...(sanitizedProps as MuiTabsProps)}
38
39
  orientation={orientation}
39
40
  className={`${styles.root} ${className || ""}`}
40
41
  data-variant={variant}
@@ -44,7 +45,6 @@ export const Tabs = forwardRef<HTMLDivElement, TabsProps>(
44
45
  flexContainer: styles.list,
45
46
  indicator: styles.indicator,
46
47
  }}
47
- {...(sanitizedProps as MuiTabsProps)}
48
48
  />
49
49
  );
50
50
  },
@@ -7,27 +7,43 @@ This document describes how to integrate and use the `Tabs` component in your pr
7
7
  ## 1. Import Reference
8
8
 
9
9
  ```tsx
10
- import { Tabs } from "@recursica/mui-adapter";
10
+ import { Tabs, Tab, TabPanel } from "@recursica/mui-adapter";
11
11
  ```
12
12
 
13
13
  ---
14
14
 
15
15
  ## 2. Basic Example
16
16
 
17
+ Unlike the mantine-adapter, `Tabs` has no `.List`/`.Panel` compound API — it mirrors native
18
+ MUI's own `@mui/lab` split, where `Tabs`/`Tab` and `TabPanel` are separate elements coordinated
19
+ by `TabContext`. Because `TabPanel` renders as a sibling of `Tabs` (not nested inside it), wrap
20
+ both in a column-direction container yourself so the panel renders below the tab list instead of
21
+ beside it.
22
+
23
+ > [!WARNING] > `Tabs` wraps `@mui/material`'s `Tabs`, which does **not** read `TabContext` for its own
24
+ > selected state — only `TabPanel` (from `@mui/lab`) does that. You must pass `value` to `Tabs`
25
+ > explicitly, in addition to wrapping everything in `TabContext`. Omitting it silently leaves
26
+ > every tab unselected (no active styling, no indicator).
27
+
17
28
  ```tsx
18
- import React from "react";
19
- import { Tabs } from "@recursica/mui-adapter";
29
+ import React, { useState } from "react";
30
+ import { TabContext } from "@mui/lab";
31
+ import { Tabs, Tab, TabPanel, Flex } from "@recursica/mui-adapter";
20
32
 
21
33
  export default function Demo() {
34
+ const [value, setValue] = useState("home");
35
+
22
36
  return (
23
- <Tabs defaultValue="home">
24
- <Tabs.List>
25
- <Tabs.Tab value="home">Home</Tabs.Tab>
26
- <Tabs.Tab value="profile">Profile</Tabs.Tab>
27
- </Tabs.List>
28
- <Tabs.Panel value="home">Home content</Tabs.Panel>
29
- <Tabs.Panel value="profile">Profile content</Tabs.Panel>
30
- </Tabs>
37
+ <Flex direction="column">
38
+ <TabContext value={value}>
39
+ <Tabs value={value} onChange={(_e, v) => setValue(v)}>
40
+ <Tab value="home" label="Home" />
41
+ <Tab value="profile" label="Profile" />
42
+ </Tabs>
43
+ <TabPanel value="home">Home content</TabPanel>
44
+ <TabPanel value="profile">Profile content</TabPanel>
45
+ </TabContext>
46
+ </Flex>
31
47
  );
32
48
  }
33
49
  ```
@@ -153,6 +153,7 @@ export const TextField = forwardRef<HTMLInputElement, TextFieldProps>(
153
153
  /* Naked Input execution safely decoupled from MUI's macro FormControl DOM hooks */
154
154
  <InputBase
155
155
  inputRef={ref} // MUI specific forward ref mapping
156
+ {...(sanitizedProps as unknown as InputBaseProps)}
156
157
  classes={{
157
158
  root: mergedClassNames.wrapper,
158
159
  input: mergedClassNames.input,
@@ -167,7 +168,6 @@ export const TextField = forwardRef<HTMLInputElement, TextFieldProps>(
167
168
  data-error={error ? "true" : undefined}
168
169
  data-with-left-section={leftSection ? "true" : undefined}
169
170
  data-with-right-section={rightSection ? "true" : undefined}
170
- {...(sanitizedProps as unknown as InputBaseProps)}
171
171
  />
172
172
  }
173
173
  />
@@ -209,6 +209,7 @@ export const TimePicker = forwardRef<HTMLDivElement, TimePickerProps>(
209
209
  <div className={styles.root} data-error={error ? "true" : undefined}>
210
210
  <LocalizationProvider dateAdapter={AdapterDayjs}>
211
211
  <MuiTimePicker
212
+ {...(sanitizedProps as unknown as Partial<MuiTimePickerProps>)}
212
213
  value={internalValue}
213
214
  onChange={handleFieldChange}
214
215
  disabled={disabled}
@@ -231,7 +232,6 @@ export const TimePicker = forwardRef<HTMLDivElement, TimePickerProps>(
231
232
  className: styles.field,
232
233
  },
233
234
  }}
234
- {...(sanitizedProps as unknown as Partial<MuiTimePickerProps>)}
235
235
  />
236
236
  </LocalizationProvider>
237
237
  <BareDropdown
@@ -70,11 +70,11 @@ const TimelineInner = React.forwardRef<HTMLUListElement, TimelineProps>(
70
70
  return (
71
71
  <MuiTimeline
72
72
  ref={ref}
73
- classes={mergedClassNames}
74
73
  {...(sanitizedProps as unknown as Omit<
75
74
  MuiTimelineProps,
76
75
  "color" | "radius" | "bulletSize" | "lineWidth"
77
76
  >)}
77
+ classes={mergedClassNames}
78
78
  />
79
79
  );
80
80
  },
@@ -76,12 +76,12 @@ export const TimelineItem = React.forwardRef<HTMLDivElement, TimelineItemProps>(
76
76
  return (
77
77
  <MuiTimelineItem
78
78
  ref={ref}
79
- classes={mergedClassNames}
80
- data-variant={bulletVariant}
81
79
  {...(sanitizedProps as unknown as Omit<
82
80
  MuiTimelineItemProps,
83
81
  "radius" | "color" | "lineVariant"
84
82
  >)}
83
+ classes={mergedClassNames}
84
+ data-variant={bulletVariant}
85
85
  >
86
86
  {content}
87
87
  </MuiTimelineItem>
@@ -94,6 +94,10 @@ export const Toast = React.forwardRef<HTMLDivElement, ToastProps>(
94
94
  return (
95
95
  <MuiAlert
96
96
  ref={ref}
97
+ {...(sanitizedProps as unknown as Omit<
98
+ MuiAlertProps,
99
+ "color" | "radius" | "variant" | "onClose"
100
+ >)}
97
101
  icon={icon}
98
102
  data-variant={variant}
99
103
  className={`${className || ""}`}
@@ -110,10 +114,6 @@ export const Toast = React.forwardRef<HTMLDivElement, ToastProps>(
110
114
  </MuiIconButton>
111
115
  ) : undefined
112
116
  }
113
- {...(sanitizedProps as unknown as Omit<
114
- MuiAlertProps,
115
- "color" | "radius" | "variant" | "onClose"
116
- >)}
117
117
  >
118
118
  {title && (
119
119
  <MuiAlertTitle className={styles.title}>{title}</MuiAlertTitle>
@@ -77,12 +77,12 @@ const TooltipBase = function Tooltip({
77
77
 
78
78
  return (
79
79
  <MuiTooltip
80
+ {...(sanitizedProps as unknown as Omit<MuiTooltipProps, "title">)}
80
81
  title={label || title || ""}
81
82
  open={opened}
82
83
  placement="top" /* Recursica default; Mui defaults to "bottom" */
83
84
  arrow={resolvedWithArrow}
84
85
  classes={mergedClassNames}
85
- {...(sanitizedProps as unknown as Omit<MuiTooltipProps, "title">)}
86
86
  />
87
87
  );
88
88
  };
@@ -248,6 +248,7 @@ export const Tree = forwardRef<HTMLUListElement, TreeProps>(function Tree(
248
248
  return (
249
249
  <RichTreeView
250
250
  ref={ref}
251
+ {...(sanitizedProps as unknown as Record<string, unknown>)}
251
252
  items={data}
252
253
  getItemId={(item: RecursicaTreeNode) => item.value}
253
254
  getItemLabel={(item: RecursicaTreeNode) =>
@@ -284,7 +285,6 @@ export const Tree = forwardRef<HTMLUListElement, TreeProps>(function Tree(
284
285
  item: CustomTreeItem,
285
286
  }}
286
287
  classes={{ root: rootClass }}
287
- {...(sanitizedProps as unknown as Record<string, unknown>)}
288
288
  />
289
289
  );
290
290
  });
@@ -1 +0,0 @@
1
- export declare const OverStylingInfo: () => import("react/jsx-runtime").JSX.Element;
@@ -1 +0,0 @@
1
- export declare const VersionInfo: () => import("react/jsx-runtime").JSX.Element;
@@ -1,77 +0,0 @@
1
- import { default as React } from 'react';
2
- import { AccordionProps as MuiAccordionProps, AccordionSummaryProps as MuiAccordionSummaryProps, AccordionDetailsProps as MuiAccordionDetailsProps } from '@mui/material';
3
- import { RecursicaOverStyled } from '../../utils/filterStylingProps';
4
- import { RecursicaAccordionProps, RecursicaAccordionItemProps, RecursicaAccordionControlProps } from '@recursica/adapter-common';
5
- export type AccordionProps = RecursicaOverStyled<React.HTMLAttributes<HTMLDivElement> & RecursicaAccordionProps>;
6
- declare const AccordionBase: React.ForwardRefExoticComponent<AccordionProps & React.RefAttributes<HTMLDivElement>>;
7
- export type AccordionItemWrapperProps = RecursicaOverStyled<Omit<MuiAccordionProps, "children" | "value"> & {
8
- children?: React.ReactNode;
9
- value: string;
10
- } & RecursicaAccordionItemProps>;
11
- export declare const AccordionItem: React.ForwardRefExoticComponent<(Omit<Omit<import('@recursica/adapter-common').WithRecursicaSpacing<Omit<MuiAccordionProps, "value" | "children"> & {
12
- children?: React.ReactNode;
13
- value: string;
14
- } & RecursicaAccordionItemProps>, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
15
- overStyled?: false | undefined;
16
- }, "ref"> | Omit<Omit<Omit<MuiAccordionProps, "value" | "children"> & {
17
- children?: React.ReactNode;
18
- value: string;
19
- } & RecursicaAccordionItemProps, "m" | "my" | "mx" | "mt" | "mb" | "ml" | "mr" | "gap" | "rowGap" | "columnGap"> & {
20
- m?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
21
- mx?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
22
- my?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
23
- mt?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
24
- mb?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
25
- ml?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
26
- mr?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
27
- gap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
28
- rowGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
29
- columnGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
30
- } & {
31
- overStyled: true;
32
- }, "ref">) & React.RefAttributes<HTMLDivElement>>;
33
- export type AccordionControlWrapperProps = RecursicaOverStyled<MuiAccordionSummaryProps & RecursicaAccordionControlProps>;
34
- export declare const AccordionControl: React.ForwardRefExoticComponent<(Omit<Omit<import('@recursica/adapter-common').WithRecursicaSpacing<import('@mui/material').AccordionSummaryOwnProps & Omit<import('@mui/material').ButtonBaseOwnProps, "classes"> & import('@mui/material/OverridableComponent').CommonProps & Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "className" | "classes" | "style" | "sx" | "tabIndex" | "children" | "disabled" | "slots" | "slotProps" | "action" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "expandIcon"> & {
35
- component?: React.ElementType | undefined;
36
- } & RecursicaAccordionControlProps>, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
37
- overStyled?: false | undefined;
38
- }, "ref"> | Omit<Omit<import('@mui/material').AccordionSummaryOwnProps & Omit<import('@mui/material').ButtonBaseOwnProps, "classes"> & import('@mui/material/OverridableComponent').CommonProps & Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "className" | "classes" | "style" | "sx" | "tabIndex" | "children" | "disabled" | "slots" | "slotProps" | "action" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "expandIcon"> & {
39
- component?: React.ElementType | undefined;
40
- } & RecursicaAccordionControlProps, "m" | "my" | "mx" | "mt" | "mb" | "ml" | "mr" | "gap" | "rowGap" | "columnGap"> & {
41
- m?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
42
- mx?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
43
- my?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
44
- mt?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
45
- mb?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
46
- ml?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
47
- mr?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
48
- gap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
49
- rowGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
50
- columnGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
51
- } & {
52
- overStyled: true;
53
- }, "ref">) & React.RefAttributes<HTMLDivElement>>;
54
- export type AccordionPanelWrapperProps = RecursicaOverStyled<MuiAccordionDetailsProps>;
55
- export declare const AccordionPanel: React.ForwardRefExoticComponent<(Omit<Omit<import('@recursica/adapter-common').WithRecursicaSpacing<MuiAccordionDetailsProps>, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
56
- overStyled?: false | undefined;
57
- }, "ref"> | Omit<Omit<MuiAccordionDetailsProps, "m" | "my" | "mx" | "mt" | "mb" | "ml" | "mr" | "gap" | "rowGap" | "columnGap"> & {
58
- m?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
59
- mx?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
60
- my?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
61
- mt?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
62
- mb?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
63
- ml?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
64
- mr?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
65
- gap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
66
- rowGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
67
- columnGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
68
- } & {
69
- overStyled: true;
70
- }, "ref">) & React.RefAttributes<HTMLDivElement>>;
71
- type AccordionComponent = typeof AccordionBase & {
72
- Item: typeof AccordionItem;
73
- Control: typeof AccordionControl;
74
- Panel: typeof AccordionPanel;
75
- };
76
- export declare const Accordion: AccordionComponent;
77
- export {};
@@ -1 +0,0 @@
1
- export * from './Accordion';
@@ -1,7 +0,0 @@
1
- import { default as React } from 'react';
2
- import { FormHelperTextProps } from '@mui/material';
3
- import { RecursicaAssistiveElementProps } from '@recursica/adapter-common';
4
- export interface AssistiveElementProps extends FormHelperTextProps, RecursicaAssistiveElementProps {
5
- overStyled?: boolean;
6
- }
7
- export declare const AssistiveElement: React.ForwardRefExoticComponent<Omit<AssistiveElementProps, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
@@ -1 +0,0 @@
1
- export * from './AssistiveElement';
@@ -1,24 +0,0 @@
1
- import { default as React } from 'react';
2
- import { AutocompleteProps as MuiAutocompleteProps } from '@mui/material';
3
- import { ReadOnlyControlProps, RecursicaAutocompleteProps as BaseRecursicaAutocompleteProps } from '@recursica/adapter-common';
4
- import { RecursicaOverStyled } from '../../utils/filterStylingProps';
5
- import { RecursicaFormControlWrapperProps } from '../FormControlWrapper/FormControlWrapper';
6
- export interface RecursicaAutocompleteProps extends Omit<MuiAutocompleteProps<any, any, any, any, "div">, "variant" | "size" | "wrapperProps" | "radius" | "renderInput" | "classes" | "defaultValue">, Omit<RecursicaFormControlWrapperProps, "controlMaxWidth" | "controlMinWidth" | "error" | keyof MuiAutocompleteProps<any, any, any, any, "div">>, ReadOnlyControlProps, BaseRecursicaAutocompleteProps {
7
- }
8
- export type AutocompleteProps = RecursicaOverStyled<RecursicaAutocompleteProps>;
9
- export declare const Autocomplete: React.ForwardRefExoticComponent<(Omit<Omit<import('@recursica/adapter-common').WithRecursicaSpacing<RecursicaAutocompleteProps>, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
10
- overStyled?: false | undefined;
11
- }, "ref"> | Omit<Omit<RecursicaAutocompleteProps, "m" | "my" | "mx" | "mt" | "mb" | "ml" | "mr" | "gap" | "rowGap" | "columnGap"> & {
12
- m?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
13
- mx?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
14
- my?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
15
- mt?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
16
- mb?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
17
- ml?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
18
- mr?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
19
- gap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
20
- rowGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
21
- columnGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
22
- } & {
23
- overStyled: true;
24
- }, "ref">) & React.RefAttributes<HTMLInputElement>>;
@@ -1 +0,0 @@
1
- export * from './Autocomplete';
@@ -1,25 +0,0 @@
1
- import { AvatarProps as MuiAvatarProps } from '@mui/material';
2
- import { RecursicaOverStyled } from '../../utils/filterStylingProps';
3
- import { RecursicaAvatarProps } from '@recursica/adapter-common';
4
- export type AvatarProps = RecursicaOverStyled<Omit<MuiAvatarProps, "variant" | "size" | "color" | "radius"> & RecursicaAvatarProps>;
5
- /**
6
- * Recursica Avatar component wrapping Mui's Avatar.
7
- *
8
- * Supports polymorphism via the `component` prop or `renderRoot` for custom element rendering.
9
- */
10
- export declare const Avatar: import('react').ForwardRefExoticComponent<(Omit<Omit<import('@recursica/adapter-common').WithRecursicaSpacing<Omit<MuiAvatarProps, "color" | "variant" | "size" | "radius"> & RecursicaAvatarProps>, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
11
- overStyled?: false | undefined;
12
- }, "ref"> | Omit<Omit<Omit<MuiAvatarProps, "color" | "variant" | "size" | "radius"> & RecursicaAvatarProps, "m" | "my" | "mx" | "mt" | "mb" | "ml" | "mr" | "gap" | "rowGap" | "columnGap"> & {
13
- m?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
14
- mx?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
15
- my?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
16
- mt?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
17
- mb?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
18
- ml?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
19
- mr?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
20
- gap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
21
- rowGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
22
- columnGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
23
- } & {
24
- overStyled: true;
25
- }, "ref">) & import('react').RefAttributes<HTMLDivElement>>;
@@ -1 +0,0 @@
1
- export * from './Avatar';