@scattered-light/loomiere-base-ui 0.2.0 → 0.4.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 (97) hide show
  1. package/dist/design-system/components/Accordion/README.md +1 -1
  2. package/dist/design-system/components/Accordion/preview.html +1 -1
  3. package/dist/design-system/components/AlertDialog/preview.html +1 -1
  4. package/dist/design-system/components/Autocomplete/preview.html +1 -1
  5. package/dist/design-system/components/Avatar/README.md +1 -1
  6. package/dist/design-system/components/Avatar/preview.html +1 -1
  7. package/dist/design-system/components/Button/README.md +1 -1
  8. package/dist/design-system/components/Button/preview.html +3 -3
  9. package/dist/design-system/components/Checkbox/preview.html +1 -1
  10. package/dist/design-system/components/CheckboxGroup/preview.html +1 -1
  11. package/dist/design-system/components/Collapsible/preview.html +1 -1
  12. package/dist/design-system/components/Combobox/preview.html +1 -1
  13. package/dist/design-system/components/ContextMenu/preview.html +1 -1
  14. package/dist/design-system/components/Dialog/README.md +1 -1
  15. package/dist/design-system/components/Dialog/preview.html +1 -1
  16. package/dist/design-system/components/Drawer/preview.html +1 -1
  17. package/dist/design-system/components/Field/preview.html +1 -1
  18. package/dist/design-system/components/Fieldset/preview.html +1 -1
  19. package/dist/design-system/components/Form/preview.html +1 -1
  20. package/dist/design-system/components/Input/preview.html +1 -1
  21. package/dist/design-system/components/Menu/preview.html +1 -1
  22. package/dist/design-system/components/Menubar/preview.html +1 -1
  23. package/dist/design-system/components/Meter/preview.html +1 -1
  24. package/dist/design-system/components/NavigationMenu/preview.html +1 -1
  25. package/dist/design-system/components/NumberField/preview.html +1 -1
  26. package/dist/design-system/components/OTPField/preview.html +1 -1
  27. package/dist/design-system/components/Popover/README.md +2 -2
  28. package/dist/design-system/components/Popover/preview.html +2 -2
  29. package/dist/design-system/components/PreviewCard/README.md +1 -1
  30. package/dist/design-system/components/PreviewCard/preview.html +1 -1
  31. package/dist/design-system/components/Progress/preview.html +1 -1
  32. package/dist/design-system/components/Radio/preview.html +1 -1
  33. package/dist/design-system/components/ScrollArea/preview.html +1 -1
  34. package/dist/design-system/components/Select/preview.html +1 -1
  35. package/dist/design-system/components/Separator/preview.html +1 -1
  36. package/dist/design-system/components/Slider/preview.html +1 -1
  37. package/dist/design-system/components/Switch/preview.html +1 -1
  38. package/dist/design-system/components/Table/README.md +50 -0
  39. package/dist/design-system/components/Table/preview.html +19 -0
  40. package/dist/design-system/components/Tabs/preview.html +1 -1
  41. package/dist/design-system/components/Toast/preview.html +1 -1
  42. package/dist/design-system/components/Toggle/README.md +1 -1
  43. package/dist/design-system/components/Toggle/preview.html +1 -1
  44. package/dist/design-system/components/ToggleGroup/preview.html +1 -1
  45. package/dist/design-system/components/Toolbar/preview.html +1 -1
  46. package/dist/design-system/components/Tooltip/preview.html +1 -1
  47. package/dist/design-system/components/bundle.js +5 -5
  48. package/dist/design-system/components/index.d.ts +2 -1
  49. package/dist/design-system/components/styles.css +687 -544
  50. package/dist/index.d.ts +2 -1
  51. package/dist/index.js +8 -2
  52. package/dist/index.js.map +1 -1
  53. package/dist/styles/components/Accordion.css +12 -12
  54. package/dist/styles/components/AlertDialog.css +1 -1
  55. package/dist/styles/components/Autocomplete.css +22 -22
  56. package/dist/styles/components/Avatar.css +15 -42
  57. package/dist/styles/components/Button.css +45 -25
  58. package/dist/styles/components/Checkbox.css +16 -16
  59. package/dist/styles/components/CheckboxGroup.css +1 -1
  60. package/dist/styles/components/Collapsible.css +16 -16
  61. package/dist/styles/components/Combobox.css +62 -62
  62. package/dist/styles/components/ContextMenu.css +12 -12
  63. package/dist/styles/components/Dialog.css +12 -12
  64. package/dist/styles/components/Drawer.css +11 -11
  65. package/dist/styles/components/Field.css +16 -16
  66. package/dist/styles/components/Fieldset.css +11 -11
  67. package/dist/styles/components/Form.css +1 -1
  68. package/dist/styles/components/Input.css +21 -21
  69. package/dist/styles/components/Menu.css +12 -12
  70. package/dist/styles/components/Menubar.css +17 -17
  71. package/dist/styles/components/Meter.css +11 -11
  72. package/dist/styles/components/NavigationMenu.css +22 -22
  73. package/dist/styles/components/NumberField.css +1 -1
  74. package/dist/styles/components/OTPField.css +11 -11
  75. package/dist/styles/components/Popover.css +15 -12
  76. package/dist/styles/components/PreviewCard.css +12 -12
  77. package/dist/styles/components/Progress.css +11 -11
  78. package/dist/styles/components/Radio.css +16 -16
  79. package/dist/styles/components/ScrollArea.css +1 -1
  80. package/dist/styles/components/Select.css +22 -22
  81. package/dist/styles/components/Separator.css +1 -1
  82. package/dist/styles/components/Slider.css +11 -11
  83. package/dist/styles/components/Switch.css +22 -22
  84. package/dist/styles/components/Table.css +144 -0
  85. package/dist/styles/components/Tabs.css +31 -31
  86. package/dist/styles/components/Toast.css +11 -11
  87. package/dist/styles/components/Toggle.css +24 -22
  88. package/dist/styles/components/ToggleGroup.css +1 -1
  89. package/dist/styles/components/Toolbar.css +6 -6
  90. package/dist/styles/components/Tooltip.css +6 -6
  91. package/dist/styles/index.css +2 -1
  92. package/dist/styles/reset/accessibility.css +1 -1
  93. package/dist/styles/reset/reset-accessibility.css +1 -1
  94. package/dist/styles/reset/reset-tailwind.css +1 -1
  95. package/dist/styles/reset/reset.css +1 -1
  96. package/dist/styles/tailwind.css +2 -1
  97. package/package.json +2 -2
package/dist/index.d.ts CHANGED
@@ -39,7 +39,8 @@ type ButtonProps = React.ComponentProps<typeof Button$1> & {
39
39
  };
40
40
  /**
41
41
  * Base UI [Button](https://base-ui.com/react/components/button) with design-system `Button` classes.
42
- * Icon-only buttons must include a visible label for assistive tech (`aria-label` or `aria-labelledby`).
42
+ * A button holding only an icon gets `data-icon-only` and is drawn square (a circle, with the pill
43
+ * corners). Icon-only buttons must include a label for assistive tech (`aria-label` or `aria-labelledby`).
43
44
  */
44
45
  declare const Button: React.ForwardRefExoticComponent<Omit<ButtonProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
45
46
 
package/dist/index.js CHANGED
@@ -28,15 +28,21 @@ function cn(...inputs) {
28
28
  function cnState(base, className, state) {
29
29
  return cn(base, typeof className === "function" ? className(state) : className);
30
30
  }
31
- var Button = React6.forwardRef(function Button2({ className, emphasis, palette, ...props }, ref) {
31
+ function isIconOnly(children) {
32
+ const items = React6.Children.toArray(children);
33
+ return items.length === 1 && React6.isValidElement(items[0]);
34
+ }
35
+ var Button = React6.forwardRef(function Button2({ className, emphasis, palette, children, ...props }, ref) {
32
36
  return /* @__PURE__ */ jsx(
33
37
  Button$1,
34
38
  {
35
39
  ref,
36
40
  "data-emphasis": emphasis,
37
41
  "data-color": palette,
42
+ "data-icon-only": isIconOnly(children) ? "" : void 0,
38
43
  ...props,
39
- className: (state) => cnState("Button", className, state)
44
+ className: (state) => cnState("Button", className, state),
45
+ children
40
46
  }
41
47
  );
42
48
  });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/utils/cn.ts","../src/components/button.tsx","../src/components/input.tsx","../src/components/field.tsx","../src/components/fieldset.tsx","../src/components/form.tsx","../src/components/navigation-menu.tsx"],"names":["React","Button","BaseButton","React2","Input","jsx","BaseInput","React3","BaseField","Root","React4","BaseFieldset","React5","Form","BaseForm","BaseNavigationMenu","Item"],"mappings":";;;;;;;;;;AAYO,SAAS,MAAM,MAAA,EAA8B;AAClD,EAAA,MAAM,MAAgB,EAAC;AACvB,EAAA,KAAA,MAAW,SAAS,MAAA,EAAQ;AAC1B,IAAA,IAAI,KAAA,IAAS,IAAA,IAAQ,KAAA,KAAU,KAAA,EAAO;AACtC,IAAA,IAAI,OAAO,KAAA,KAAU,QAAA,IAAY,OAAO,UAAU,QAAA,EAAU;AAC1D,MAAA,GAAA,CAAI,IAAA,CAAK,MAAA,CAAO,KAAK,CAAC,CAAA;AAAA,IACxB,CAAA,MAAA,IAAW,KAAA,CAAM,OAAA,CAAQ,KAAK,CAAA,EAAG;AAC/B,MAAA,MAAM,KAAA,GAAQ,EAAA,CAAG,GAAG,KAAK,CAAA;AACzB,MAAA,IAAI,KAAA,EAAO,GAAA,CAAI,IAAA,CAAK,KAAK,CAAA;AAAA,IAC3B,CAAA,MAAA,IAAW,OAAO,KAAA,KAAU,QAAA,EAAU;AACpC,MAAA,KAAA,MAAW,CAAC,CAAA,EAAG,CAAC,KAAK,MAAA,CAAO,OAAA,CAAQ,KAAK,CAAA,EAAG;AAC1C,QAAA,IAAI,CAAA,EAAG,GAAA,CAAI,IAAA,CAAK,CAAC,CAAA;AAAA,MACnB;AAAA,IACF;AAAA,EACF;AACA,EAAA,OAAO,GAAA,CAAI,KAAK,GAAG,CAAA;AACrB;AAGO,SAAS,OAAA,CACd,IAAA,EACA,SAAA,EACA,KAAA,EACQ;AACR,EAAA,OAAO,EAAA,CAAG,MAAM,OAAO,SAAA,KAAc,aAAa,SAAA,CAAU,KAAK,IAAI,SAAS,CAAA;AAChF;ACtBO,IAAM,MAAA,GAAeA,MAAA,CAAA,UAAA,CAA2C,SAASC,OAAAA,CAC9E,EAAE,SAAA,EAAW,QAAA,EAAU,OAAA,EAAS,GAAG,KAAA,EAAM,EACzC,GAAA,EACA;AACA,EAAA,uBACE,GAAA;AAAA,IAACC,QAAA;AAAA,IAAA;AAAA,MACC,GAAA;AAAA,MACA,eAAA,EAAe,QAAA;AAAA,MACf,YAAA,EAAY,OAAA;AAAA,MACX,GAAG,KAAA;AAAA,MACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,QAAA,EAAU,WAAW,KAAK;AAAA;AAAA,GAC1D;AAEJ,CAAC;AAED,MAAA,CAAO,WAAA,GAAc,QAAA;ACpBd,IAAM,KAAA,GAAcC,kBAAyC,SAASC,MAAAA,CAC3E,EAAE,SAAA,EAAW,GAAG,KAAA,EAAM,EACtB,GAAA,EACA;AACA,EAAA,uBACEC,GAAAA,CAACC,OAAA,EAAA,EAAU,GAAA,EAAW,GAAG,KAAA,EAAO,SAAA,EAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,OAAA,EAAS,SAAA,EAAW,KAAK,CAAA,EAAG,CAAA;AAE9F,CAAC;AAED,KAAA,CAAM,WAAA,GAAc,OAAA;ACfpB,IAAM,IAAA,GAAaC,MAAA,CAAA,UAAA;AAAA,EACjB,SAAS,SAAA,CAAU,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,EAAK;AAC/C,IAAA,uBACEF,GAAAA;AAAA,MAACG,OAAA,CAAU,IAAA;AAAA,MAAV;AAAA,QACC,GAAA;AAAA,QACC,GAAG,KAAA;AAAA,QACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,WAAA,EAAa,WAAW,KAAK;AAAA;AAAA,KAC7D;AAAA,EAEJ;AACF,CAAA;AAEA,IAAM,KAAA,GAAcD,MAAA,CAAA,UAAA;AAAA,EAClB,SAAS,UAAA,CAAW,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,EAAK;AAChD,IAAA,uBACEF,GAAAA;AAAA,MAACG,OAAA,CAAU,KAAA;AAAA,MAAV;AAAA,QACC,GAAA;AAAA,QACC,GAAG,KAAA;AAAA,QACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,YAAA,EAAc,WAAW,KAAK;AAAA;AAAA,KAC9D;AAAA,EAEJ;AACF,CAAA;AAEA,IAAM,WAAA,GAAoBD,kBAGxB,SAAS,gBAAA,CAAiB,EAAE,SAAA,EAAW,GAAG,KAAA,EAAM,EAAG,GAAA,EAAK;AACxD,EAAA,uBACEF,GAAAA;AAAA,IAACG,OAAA,CAAU,WAAA;AAAA,IAAV;AAAA,MACC,GAAA;AAAA,MACC,GAAG,KAAA;AAAA,MACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,kBAAA,EAAoB,WAAW,KAAK;AAAA;AAAA,GACpE;AAEJ,CAAC,CAAA;AAED,IAAM,KAAA,GAAcD,MAAA,CAAA,UAAA;AAAA,EAClB,SAAS,UAAA,CAAW,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,EAAK;AAChD,IAAA,uBACEF,GAAAA;AAAA,MAACG,OAAA,CAAU,KAAA;AAAA,MAAV;AAAA,QACC,GAAA;AAAA,QACC,GAAG,KAAA;AAAA,QACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,YAAA,EAAc,WAAW,KAAK;AAAA;AAAA,KAC9D;AAAA,EAEJ;AACF,CAAA;AAEA,IAAM,OAAA,GAAgBD,MAAA,CAAA,UAAA;AAAA,EACpB,SAAS,YAAA,CAAa,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,EAAK;AAClD,IAAA,uBACEF,GAAAA;AAAA,MAACG,OAAA,CAAU,OAAA;AAAA,MAAV;AAAA,QACC,GAAA;AAAA,QACC,GAAG,KAAA;AAAA,QACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,cAAA,EAAgB,WAAW,KAAK;AAAA;AAAA,KAChE;AAAA,EAEJ;AACF,CAAA;AAGA,IAAM,WAAWA,OAAA,CAAU,QAAA;AAE3B,IAAM,IAAA,GAAaD,MAAA,CAAA,UAAA;AAAA,EACjB,SAAS,SAAA,CAAU,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,EAAK;AAC/C,IAAA,uBACEF,GAAAA;AAAA,MAACG,OAAA,CAAU,IAAA;AAAA,MAAV;AAAA,QACC,GAAA;AAAA,QACC,GAAG,KAAA;AAAA,QACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,EAAA,EAAI,WAAW,KAAK;AAAA;AAAA,KACpD;AAAA,EAEJ;AACF,CAAA;AAKO,IAAM,KAAA,GAAQ;AAAA,EACnB,IAAA;AAAA,EACA,KAAA;AAAA,EACA,WAAA;AAAA,EACA,KAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA;AACF;ACpFA,IAAMC,KAAAA,GAAaC,kBAAmD,SAAS,YAAA,CAC7E,EAAE,SAAA,EAAW,GAAG,KAAA,EAAM,EACtB,GAAA,EACA;AACA,EAAA,uBACEL,GAAAA;AAAA,IAACM,UAAA,CAAa,IAAA;AAAA,IAAb;AAAA,MACC,GAAA;AAAA,MACC,GAAG,KAAA;AAAA,MACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,UAAA,EAAY,WAAW,KAAK;AAAA;AAAA,GAC5D;AAEJ,CAAC,CAAA;AAED,IAAM,MAAA,GAAeD,kBAAgD,SAAS,cAAA,CAC5E,EAAE,SAAA,EAAW,GAAG,KAAA,EAAM,EACtB,GAAA,EACA;AACA,EAAA,uBACEL,GAAAA;AAAA,IAACM,UAAA,CAAa,MAAA;AAAA,IAAb;AAAA,MACC,GAAA;AAAA,MACC,GAAG,KAAA;AAAA,MACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,gBAAA,EAAkB,WAAW,KAAK;AAAA;AAAA,GAClE;AAEJ,CAAC,CAAA;AAKM,SAAS,mBAAA,CAAoB,EAAE,SAAA,EAAW,GAAG,OAAM,EAA6B;AACrF,EAAA,uBAAON,IAAC,KAAA,EAAA,EAAI,SAAA,EAAW,GAAG,qBAAA,EAAuB,SAAS,CAAA,EAAI,GAAG,KAAA,EAAO,CAAA;AAC1E;AAKO,IAAM,QAAA,GAAW;AAAA,EACtB,IAAA,EAAAI,KAAAA;AAAA,EACA;AACF;ACrCO,IAAM,IAAA,GAAaG,kBAAuC,SAASC,KAAAA,CACxE,EAAE,SAAA,EAAW,GAAG,KAAA,EAAM,EACtB,GAAA,EACA;AACA,EAAA,uBACER,GAAAA,CAACS,MAAA,EAAA,EAAS,GAAA,EAAW,GAAG,KAAA,EAAO,SAAA,EAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,MAAA,EAAQ,SAAA,EAAW,KAAK,CAAA,EAAG,CAAA;AAE5F,CAAC;AAED,IAAA,CAAK,WAAA,GAAc,MAAA;AAKZ,SAAS,WAAA,CAAY,EAAE,SAAA,EAAW,GAAG,OAAM,EAAqB;AACrE,EAAA,uBAAOT,IAAC,KAAA,EAAA,EAAI,SAAA,EAAW,GAAG,aAAA,EAAe,SAAS,CAAA,EAAI,GAAG,KAAA,EAAO,CAAA;AAClE;AChBA,IAAMI,KAAAA,GAAa,MAAA,CAAA,UAAA;AAAA,EACjB,SAAS,kBAAA,CAAmB,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,EAAK;AACxD,IAAA,uBACEJ,GAAAA;AAAA,MAACU,gBAAA,CAAmB,IAAA;AAAA,MAAnB;AAAA,QACC,GAAA;AAAA,QACC,GAAG,KAAA;AAAA,QACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,oBAAA,EAAsB,WAAW,KAAK;AAAA;AAAA,KACtE;AAAA,EAEJ;AACF,CAAA;AAEA,IAAM,IAAA,GAAa,MAAA,CAAA,UAAA;AAAA,EACjB,SAAS,kBAAA,CAAmB,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,EAAK;AACxD,IAAA,uBACEV,GAAAA;AAAA,MAACU,gBAAA,CAAmB,IAAA;AAAA,MAAnB;AAAA,QACC,GAAA;AAAA,QACC,GAAG,KAAA;AAAA,QACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,oBAAA,EAAsB,WAAW,KAAK;AAAA;AAAA,KACtE;AAAA,EAEJ;AACF,CAAA;AAEA,IAAMC,KAAAA,GAAa,MAAA,CAAA,UAAA;AAAA,EACjB,SAAS,kBAAA,CAAmB,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,EAAK;AACxD,IAAA,uBACEX,GAAAA;AAAA,MAACU,gBAAA,CAAmB,IAAA;AAAA,MAAnB;AAAA,QACC,GAAA;AAAA,QACC,GAAG,KAAA;AAAA,QACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,EAAA,EAAI,WAAW,KAAK;AAAA;AAAA,KACpD;AAAA,EAEJ;AACF,CAAA;AAEA,IAAM,OAAA,GAAgB,kBAGpB,SAAS,qBAAA,CAAsB,EAAE,SAAA,EAAW,GAAG,KAAA,EAAM,EAAG,GAAA,EAAK;AAC7D,EAAA,uBACEV,GAAAA;AAAA,IAACU,gBAAA,CAAmB,OAAA;AAAA,IAAnB;AAAA,MACC,GAAA;AAAA,MACC,GAAG,KAAA;AAAA,MACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,uBAAA,EAAyB,WAAW,KAAK;AAAA;AAAA,GACzE;AAEJ,CAAC,CAAA;AAED,IAAM,OAAA,GAAgB,kBAGpB,SAAS,qBAAA,CAAsB,EAAE,SAAA,EAAW,GAAG,KAAA,EAAM,EAAG,GAAA,EAAK;AAC7D,EAAA,uBACEV,GAAAA;AAAA,IAACU,gBAAA,CAAmB,OAAA;AAAA,IAAnB;AAAA,MACC,GAAA;AAAA,MACC,GAAG,KAAA;AAAA,MACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,uBAAA,EAAyB,WAAW,KAAK;AAAA;AAAA,GACzE;AAEJ,CAAC,CAAA;AAED,IAAM,IAAA,GAAa,MAAA,CAAA,UAAA;AAAA,EACjB,SAAS,kBAAA,CAAmB,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,EAAK;AACxD,IAAA,uBACEV,GAAAA;AAAA,MAACU,gBAAA,CAAmB,IAAA;AAAA,MAAnB;AAAA,QACC,GAAA;AAAA,QACC,GAAG,KAAA;AAAA,QACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,oBAAA,EAAsB,WAAW,KAAK;AAAA;AAAA,KACtE;AAAA,EAEJ;AACF,CAAA;AAEA,IAAM,SAASA,gBAAA,CAAmB,MAAA;AAElC,IAAM,UAAA,GAAmB,kBAGvB,SAAS,wBAAA,CAAyB,EAAE,SAAA,EAAW,GAAG,KAAA,EAAM,EAAG,GAAA,EAAK;AAChE,EAAA,uBACEV,GAAAA;AAAA,IAACU,gBAAA,CAAmB,UAAA;AAAA,IAAnB;AAAA,MACC,GAAA;AAAA,MACC,GAAG,KAAA;AAAA,MACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,0BAAA,EAA4B,WAAW,KAAK;AAAA;AAAA,GAC5E;AAEJ,CAAC,CAAA;AAED,IAAM,KAAA,GAAc,MAAA,CAAA,UAAA;AAAA,EAClB,SAAS,mBAAA,CAAoB,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,EAAK;AACzD,IAAA,uBACEV,GAAAA;AAAA,MAACU,gBAAA,CAAmB,KAAA;AAAA,MAAnB;AAAA,QACC,GAAA;AAAA,QACC,GAAG,KAAA;AAAA,QACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,qBAAA,EAAuB,WAAW,KAAK;AAAA;AAAA,KACvE;AAAA,EAEJ;AACF,CAAA;AAEA,IAAM,KAAA,GAAc,MAAA,CAAA,UAAA;AAAA,EAClB,SAAS,mBAAA,CAAoB,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,EAAK;AACzD,IAAA,uBACEV,GAAAA;AAAA,MAACU,gBAAA,CAAmB,KAAA;AAAA,MAAnB;AAAA,QACC,GAAA;AAAA,QACC,GAAG,KAAA;AAAA,QACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,qBAAA,EAAuB,WAAW,KAAK;AAAA;AAAA,KACvE;AAAA,EAEJ;AACF,CAAA;AAEA,IAAM,QAAA,GAAiB,kBAGrB,SAAS,sBAAA,CAAuB,EAAE,SAAA,EAAW,GAAG,KAAA,EAAM,EAAG,GAAA,EAAK;AAC9D,EAAA,uBACEV,GAAAA;AAAA,IAACU,gBAAA,CAAmB,QAAA;AAAA,IAAnB;AAAA,MACC,GAAA;AAAA,MACC,GAAG,KAAA;AAAA,MACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,wBAAA,EAA0B,WAAW,KAAK;AAAA;AAAA,GAC1E;AAEJ,CAAC,CAAA;AAED,IAAM,IAAA,GAAa,MAAA,CAAA,UAAA;AAAA,EACjB,SAAS,kBAAA,CAAmB,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,EAAK;AACxD,IAAA,uBACEV,GAAAA;AAAA,MAACU,gBAAA,CAAmB,IAAA;AAAA,MAAnB;AAAA,QACC,GAAA;AAAA,QACC,GAAG,KAAA;AAAA,QACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,oBAAA,EAAsB,WAAW,KAAK;AAAA;AAAA,KACtE;AAAA,EAEJ;AACF,CAAA;AAEA,IAAM,QAAA,GAAiB,kBAGrB,SAAS,sBAAA,CAAuB,EAAE,SAAA,EAAW,GAAG,KAAA,EAAM,EAAG,GAAA,EAAK;AAC9D,EAAA,uBACEV,GAAAA;AAAA,IAACU,gBAAA,CAAmB,QAAA;AAAA,IAAnB;AAAA,MACC,GAAA;AAAA,MACC,GAAG,KAAA;AAAA,MACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,EAAA,EAAI,WAAW,KAAK;AAAA;AAAA,GACpD;AAEJ,CAAC,CAAA;AAMM,IAAM,cAAA,GAAiB;AAAA,EAC5B,IAAA,EAAAN,KAAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA,EAAAO,KAAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,IAAA;AAAA,EACA,MAAA;AAAA,EACA,UAAA;AAAA,EACA,KAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EACA,IAAA;AAAA,EACA;AACF","file":"index.js","sourcesContent":["/**\n * Merge class names (strings, arrays, conditional objects). No external deps.\n */\ntype ClassValue =\n | string\n | number\n | boolean\n | undefined\n | null\n | Record<string, boolean | undefined>\n | ClassValue[];\n\nexport function cn(...inputs: ClassValue[]): string {\n const out: string[] = [];\n for (const input of inputs) {\n if (input == null || input === false) continue;\n if (typeof input === 'string' || typeof input === 'number') {\n out.push(String(input));\n } else if (Array.isArray(input)) {\n const inner = cn(...input);\n if (inner) out.push(inner);\n } else if (typeof input === 'object') {\n for (const [k, v] of Object.entries(input)) {\n if (v) out.push(k);\n }\n }\n }\n return out.join(' ');\n}\n\n/** Merge a static BEM block with Base UI `className` (string or state callback). */\nexport function cnState<State>(\n base: string,\n className: string | ((state: State) => string | undefined) | undefined,\n state: State,\n): string {\n return cn(base, typeof className === 'function' ? className(state) : className);\n}\n","import * as React from 'react';\nimport { Button as BaseButton } from '@base-ui/react/button';\nimport { cnState } from '../utils/cn';\n\nexport type ButtonProps = React.ComponentProps<typeof BaseButton> & {\n /** How loud the button is. The brand's roles decide what each level looks like. */\n emphasis?: 'bold' | 'standard' | 'subtle' | 'quiet';\n /** Paint the level in another palette instead of the level's own color (e.g. \"secondary\", \"error\"). */\n palette?: string;\n};\n\n/**\n * Base UI [Button](https://base-ui.com/react/components/button) with design-system `Button` classes.\n * Icon-only buttons must include a visible label for assistive tech (`aria-label` or `aria-labelledby`).\n */\nexport const Button = React.forwardRef<HTMLButtonElement, ButtonProps>(function Button(\n { className, emphasis, palette, ...props },\n ref,\n) {\n return (\n <BaseButton\n ref={ref}\n data-emphasis={emphasis}\n data-color={palette}\n {...props}\n className={(state) => cnState('Button', className, state)}\n />\n );\n});\n\nButton.displayName = 'Button';\n","import * as React from 'react';\nimport { Input as BaseInput } from '@base-ui/react/input';\nimport { cnState } from '../utils/cn';\n\nexport type InputProps = React.ComponentProps<typeof BaseInput>;\n\n/**\n * Base UI [Input](https://base-ui.com/react/components/input) with design-system `Input` classes.\n * Pairs with {@link Field} for labels, validation, and descriptions.\n */\nexport const Input = React.forwardRef<HTMLInputElement, InputProps>(function Input(\n { className, ...props },\n ref,\n) {\n return (\n <BaseInput ref={ref} {...props} className={(state) => cnState('Input', className, state)} />\n );\n});\n\nInput.displayName = 'Input';\n","import * as React from 'react';\nimport { Field as BaseField } from '@base-ui/react/field';\nimport { cnState } from '../utils/cn';\n\nconst Root = React.forwardRef<HTMLDivElement, React.ComponentProps<typeof BaseField.Root>>(\n function FieldRoot({ className, ...props }, ref) {\n return (\n <BaseField.Root\n ref={ref}\n {...props}\n className={(state) => cnState('FieldRoot', className, state)}\n />\n );\n },\n);\n\nconst Label = React.forwardRef<HTMLLabelElement, React.ComponentProps<typeof BaseField.Label>>(\n function FieldLabel({ className, ...props }, ref) {\n return (\n <BaseField.Label\n ref={ref}\n {...props}\n className={(state) => cnState('FieldLabel', className, state)}\n />\n );\n },\n);\n\nconst Description = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<typeof BaseField.Description>\n>(function FieldDescription({ className, ...props }, ref) {\n return (\n <BaseField.Description\n ref={ref}\n {...props}\n className={(state) => cnState('FieldDescription', className, state)}\n />\n );\n});\n\nconst Error = React.forwardRef<HTMLDivElement, React.ComponentProps<typeof BaseField.Error>>(\n function FieldError({ className, ...props }, ref) {\n return (\n <BaseField.Error\n ref={ref}\n {...props}\n className={(state) => cnState('FieldError', className, state)}\n />\n );\n },\n);\n\nconst Control = React.forwardRef<HTMLInputElement, React.ComponentProps<typeof BaseField.Control>>(\n function FieldControl({ className, ...props }, ref) {\n return (\n <BaseField.Control\n ref={ref}\n {...props}\n className={(state) => cnState('FieldControl', className, state)}\n />\n );\n },\n);\n\n/** Only accepts `children` as a render function — no `className` in Base UI’s API. */\nconst Validity = BaseField.Validity;\n\nconst Item = React.forwardRef<HTMLDivElement, React.ComponentProps<typeof BaseField.Item>>(\n function FieldItem({ className, ...props }, ref) {\n return (\n <BaseField.Item\n ref={ref}\n {...props}\n className={(state) => cnState('', className, state)}\n />\n );\n },\n);\n\n/**\n * Base UI [Field](https://base-ui.com/react/components/field) with design-system field classes.\n */\nexport const Field = {\n Root,\n Label,\n Description,\n Error,\n Control,\n Validity,\n Item,\n};\n","import * as React from 'react';\nimport { Fieldset as BaseFieldset } from '@base-ui/react/fieldset';\nimport { cn, cnState } from '../utils/cn';\n\nexport type FieldsetRootProps = React.ComponentProps<typeof BaseFieldset.Root>;\nexport type FieldsetLegendProps = React.ComponentProps<typeof BaseFieldset.Legend>;\n\nconst Root = React.forwardRef<HTMLFieldSetElement, FieldsetRootProps>(function FieldsetRoot(\n { className, ...props },\n ref,\n) {\n return (\n <BaseFieldset.Root\n ref={ref}\n {...props}\n className={(state) => cnState('Fieldset', className, state)}\n />\n );\n});\n\nconst Legend = React.forwardRef<HTMLDivElement, FieldsetLegendProps>(function FieldsetLegend(\n { className, ...props },\n ref,\n) {\n return (\n <BaseFieldset.Legend\n ref={ref}\n {...props}\n className={(state) => cnState('FieldsetLegend', className, state)}\n />\n );\n});\n\nexport type FieldsetDescriptionProps = React.ComponentProps<'div'>;\n\n/** Presentational helper — not a Base UI primitive. */\nexport function FieldsetDescription({ className, ...props }: FieldsetDescriptionProps) {\n return <div className={cn('FieldsetDescription', className)} {...props} />;\n}\n\n/**\n * Base UI [Fieldset](https://base-ui.com/react/components/fieldset) with design-system classes.\n */\nexport const Fieldset = {\n Root,\n Legend,\n};\n","import * as React from 'react';\nimport { Form as BaseForm } from '@base-ui/react/form';\nimport { cn, cnState } from '../utils/cn';\n\nexport type FormProps = React.ComponentProps<typeof BaseForm>;\n\n/**\n * Base UI [Form](https://base-ui.com/react/components/form) with design-system `Form` classes.\n */\nexport const Form = React.forwardRef<HTMLFormElement, FormProps>(function Form(\n { className, ...props },\n ref,\n) {\n return (\n <BaseForm ref={ref} {...props} className={(state) => cnState('Form', className, state)} />\n );\n});\n\nForm.displayName = 'Form';\n\nexport type FormActionsProps = React.ComponentProps<'div'>;\n\n/** Layout helper for primary/secondary actions — not a Base UI primitive. */\nexport function FormActions({ className, ...props }: FormActionsProps) {\n return <div className={cn('FormActions', className)} {...props} />;\n}\n","import * as React from 'react';\nimport {\n NavigationMenu as BaseNavigationMenu,\n} from '@base-ui/react/navigation-menu';\nimport { cnState } from '../utils/cn';\n\nexport type NavigationMenuRootProps = React.ComponentProps<typeof BaseNavigationMenu.Root>;\nexport type NavigationMenuListProps = React.ComponentProps<typeof BaseNavigationMenu.List>;\n\nconst Root = React.forwardRef<HTMLElement, React.ComponentProps<typeof BaseNavigationMenu.Root>>(\n function NavigationMenuRoot({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Root\n ref={ref}\n {...props}\n className={(state) => cnState('NavigationMenuRoot', className, state)}\n />\n );\n },\n);\n\nconst List = React.forwardRef<HTMLUListElement, React.ComponentProps<typeof BaseNavigationMenu.List>>(\n function NavigationMenuList({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.List\n ref={ref}\n {...props}\n className={(state) => cnState('NavigationMenuList', className, state)}\n />\n );\n },\n);\n\nconst Item = React.forwardRef<HTMLLIElement, React.ComponentProps<typeof BaseNavigationMenu.Item>>(\n function NavigationMenuItem({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Item\n ref={ref}\n {...props}\n className={(state) => cnState('', className, state)}\n />\n );\n },\n);\n\nconst Content = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<typeof BaseNavigationMenu.Content>\n>(function NavigationMenuContent({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Content\n ref={ref}\n {...props}\n className={(state) => cnState('NavigationMenuContent', className, state)}\n />\n );\n});\n\nconst Trigger = React.forwardRef<\n HTMLButtonElement,\n React.ComponentProps<typeof BaseNavigationMenu.Trigger>\n>(function NavigationMenuTrigger({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Trigger\n ref={ref}\n {...props}\n className={(state) => cnState('NavigationMenuTrigger', className, state)}\n />\n );\n});\n\nconst Icon = React.forwardRef<HTMLSpanElement, React.ComponentProps<typeof BaseNavigationMenu.Icon>>(\n function NavigationMenuIcon({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Icon\n ref={ref}\n {...props}\n className={(state) => cnState('NavigationMenuIcon', className, state)}\n />\n );\n },\n);\n\nconst Portal = BaseNavigationMenu.Portal;\n\nconst Positioner = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<typeof BaseNavigationMenu.Positioner>\n>(function NavigationMenuPositioner({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Positioner\n ref={ref}\n {...props}\n className={(state) => cnState('NavigationMenuPositioner', className, state)}\n />\n );\n});\n\nconst Popup = React.forwardRef<HTMLDivElement, React.ComponentProps<typeof BaseNavigationMenu.Popup>>(\n function NavigationMenuPopup({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Popup\n ref={ref}\n {...props}\n className={(state) => cnState('NavigationMenuPopup', className, state)}\n />\n );\n },\n);\n\nconst Arrow = React.forwardRef<HTMLDivElement, React.ComponentProps<typeof BaseNavigationMenu.Arrow>>(\n function NavigationMenuArrow({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Arrow\n ref={ref}\n {...props}\n className={(state) => cnState('NavigationMenuArrow', className, state)}\n />\n );\n },\n);\n\nconst Viewport = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<typeof BaseNavigationMenu.Viewport>\n>(function NavigationMenuViewport({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Viewport\n ref={ref}\n {...props}\n className={(state) => cnState('NavigationMenuViewport', className, state)}\n />\n );\n});\n\nconst Link = React.forwardRef<HTMLAnchorElement, React.ComponentProps<typeof BaseNavigationMenu.Link>>(\n function NavigationMenuLink({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Link\n ref={ref}\n {...props}\n className={(state) => cnState('NavigationMenuLink', className, state)}\n />\n );\n },\n);\n\nconst Backdrop = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<typeof BaseNavigationMenu.Backdrop>\n>(function NavigationMenuBackdrop({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Backdrop\n ref={ref}\n {...props}\n className={(state) => cnState('', className, state)}\n />\n );\n});\n\n/**\n * Base UI [Navigation Menu](https://base-ui.com/react/components/navigation-menu) with design-system classes.\n * Prefer `NavigationMenu.Link` with `render={<a />}` (or your router link) for correct semantics.\n */\nexport const NavigationMenu = {\n Root,\n List,\n Item,\n Content,\n Trigger,\n Icon,\n Portal,\n Positioner,\n Popup,\n Arrow,\n Viewport,\n Link,\n Backdrop,\n};\n"]}
1
+ {"version":3,"sources":["../src/utils/cn.ts","../src/components/button.tsx","../src/components/input.tsx","../src/components/field.tsx","../src/components/fieldset.tsx","../src/components/form.tsx","../src/components/navigation-menu.tsx"],"names":["React","Button","BaseButton","React2","Input","jsx","BaseInput","React3","BaseField","Root","React4","BaseFieldset","React5","Form","BaseForm","BaseNavigationMenu","Item"],"mappings":"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","file":"index.js","sourcesContent":["/**\n * Merge class names (strings, arrays, conditional objects). No external deps.\n */\ntype ClassValue =\n | string\n | number\n | boolean\n | undefined\n | null\n | Record<string, boolean | undefined>\n | ClassValue[];\n\nexport function cn(...inputs: ClassValue[]): string {\n const out: string[] = [];\n for (const input of inputs) {\n if (input == null || input === false) continue;\n if (typeof input === 'string' || typeof input === 'number') {\n out.push(String(input));\n } else if (Array.isArray(input)) {\n const inner = cn(...input);\n if (inner) out.push(inner);\n } else if (typeof input === 'object') {\n for (const [k, v] of Object.entries(input)) {\n if (v) out.push(k);\n }\n }\n }\n return out.join(' ');\n}\n\n/** Merge a static BEM block with Base UI `className` (string or state callback). */\nexport function cnState<State>(\n base: string,\n className: string | ((state: State) => string | undefined) | undefined,\n state: State,\n): string {\n return cn(base, typeof className === 'function' ? className(state) : className);\n}\n","import * as React from 'react';\nimport { Button as BaseButton } from '@base-ui/react/button';\nimport { cnState } from '../utils/cn';\n\nexport type ButtonProps = React.ComponentProps<typeof BaseButton> & {\n /** How loud the button is. The brand's roles decide what each level looks like. */\n emphasis?: 'bold' | 'standard' | 'subtle' | 'quiet';\n /** Paint the level in another palette instead of the level's own color (e.g. \"secondary\", \"error\"). */\n palette?: string;\n};\n\n/** True when the children are one element and no text: an icon on its own. */\nfunction isIconOnly(children: React.ReactNode) {\n const items = React.Children.toArray(children);\n return items.length === 1 && React.isValidElement(items[0]);\n}\n\n/**\n * Base UI [Button](https://base-ui.com/react/components/button) with design-system `Button` classes.\n * A button holding only an icon gets `data-icon-only` and is drawn square (a circle, with the pill\n * corners). Icon-only buttons must include a label for assistive tech (`aria-label` or `aria-labelledby`).\n */\nexport const Button = React.forwardRef<HTMLButtonElement, ButtonProps>(function Button(\n { className, emphasis, palette, children, ...props },\n ref,\n) {\n return (\n <BaseButton\n ref={ref}\n data-emphasis={emphasis}\n data-color={palette}\n data-icon-only={isIconOnly(children) ? '' : undefined}\n {...props}\n className={(state) => cnState('Button', className, state)}\n >\n {children}\n </BaseButton>\n );\n});\n\nButton.displayName = 'Button';\n","import * as React from 'react';\nimport { Input as BaseInput } from '@base-ui/react/input';\nimport { cnState } from '../utils/cn';\n\nexport type InputProps = React.ComponentProps<typeof BaseInput>;\n\n/**\n * Base UI [Input](https://base-ui.com/react/components/input) with design-system `Input` classes.\n * Pairs with {@link Field} for labels, validation, and descriptions.\n */\nexport const Input = React.forwardRef<HTMLInputElement, InputProps>(function Input(\n { className, ...props },\n ref,\n) {\n return (\n <BaseInput ref={ref} {...props} className={(state) => cnState('Input', className, state)} />\n );\n});\n\nInput.displayName = 'Input';\n","import * as React from 'react';\nimport { Field as BaseField } from '@base-ui/react/field';\nimport { cnState } from '../utils/cn';\n\nconst Root = React.forwardRef<HTMLDivElement, React.ComponentProps<typeof BaseField.Root>>(\n function FieldRoot({ className, ...props }, ref) {\n return (\n <BaseField.Root\n ref={ref}\n {...props}\n className={(state) => cnState('FieldRoot', className, state)}\n />\n );\n },\n);\n\nconst Label = React.forwardRef<HTMLLabelElement, React.ComponentProps<typeof BaseField.Label>>(\n function FieldLabel({ className, ...props }, ref) {\n return (\n <BaseField.Label\n ref={ref}\n {...props}\n className={(state) => cnState('FieldLabel', className, state)}\n />\n );\n },\n);\n\nconst Description = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<typeof BaseField.Description>\n>(function FieldDescription({ className, ...props }, ref) {\n return (\n <BaseField.Description\n ref={ref}\n {...props}\n className={(state) => cnState('FieldDescription', className, state)}\n />\n );\n});\n\nconst Error = React.forwardRef<HTMLDivElement, React.ComponentProps<typeof BaseField.Error>>(\n function FieldError({ className, ...props }, ref) {\n return (\n <BaseField.Error\n ref={ref}\n {...props}\n className={(state) => cnState('FieldError', className, state)}\n />\n );\n },\n);\n\nconst Control = React.forwardRef<HTMLInputElement, React.ComponentProps<typeof BaseField.Control>>(\n function FieldControl({ className, ...props }, ref) {\n return (\n <BaseField.Control\n ref={ref}\n {...props}\n className={(state) => cnState('FieldControl', className, state)}\n />\n );\n },\n);\n\n/** Only accepts `children` as a render function — no `className` in Base UI’s API. */\nconst Validity = BaseField.Validity;\n\nconst Item = React.forwardRef<HTMLDivElement, React.ComponentProps<typeof BaseField.Item>>(\n function FieldItem({ className, ...props }, ref) {\n return (\n <BaseField.Item\n ref={ref}\n {...props}\n className={(state) => cnState('', className, state)}\n />\n );\n },\n);\n\n/**\n * Base UI [Field](https://base-ui.com/react/components/field) with design-system field classes.\n */\nexport const Field = {\n Root,\n Label,\n Description,\n Error,\n Control,\n Validity,\n Item,\n};\n","import * as React from 'react';\nimport { Fieldset as BaseFieldset } from '@base-ui/react/fieldset';\nimport { cn, cnState } from '../utils/cn';\n\nexport type FieldsetRootProps = React.ComponentProps<typeof BaseFieldset.Root>;\nexport type FieldsetLegendProps = React.ComponentProps<typeof BaseFieldset.Legend>;\n\nconst Root = React.forwardRef<HTMLFieldSetElement, FieldsetRootProps>(function FieldsetRoot(\n { className, ...props },\n ref,\n) {\n return (\n <BaseFieldset.Root\n ref={ref}\n {...props}\n className={(state) => cnState('Fieldset', className, state)}\n />\n );\n});\n\nconst Legend = React.forwardRef<HTMLDivElement, FieldsetLegendProps>(function FieldsetLegend(\n { className, ...props },\n ref,\n) {\n return (\n <BaseFieldset.Legend\n ref={ref}\n {...props}\n className={(state) => cnState('FieldsetLegend', className, state)}\n />\n );\n});\n\nexport type FieldsetDescriptionProps = React.ComponentProps<'div'>;\n\n/** Presentational helper — not a Base UI primitive. */\nexport function FieldsetDescription({ className, ...props }: FieldsetDescriptionProps) {\n return <div className={cn('FieldsetDescription', className)} {...props} />;\n}\n\n/**\n * Base UI [Fieldset](https://base-ui.com/react/components/fieldset) with design-system classes.\n */\nexport const Fieldset = {\n Root,\n Legend,\n};\n","import * as React from 'react';\nimport { Form as BaseForm } from '@base-ui/react/form';\nimport { cn, cnState } from '../utils/cn';\n\nexport type FormProps = React.ComponentProps<typeof BaseForm>;\n\n/**\n * Base UI [Form](https://base-ui.com/react/components/form) with design-system `Form` classes.\n */\nexport const Form = React.forwardRef<HTMLFormElement, FormProps>(function Form(\n { className, ...props },\n ref,\n) {\n return (\n <BaseForm ref={ref} {...props} className={(state) => cnState('Form', className, state)} />\n );\n});\n\nForm.displayName = 'Form';\n\nexport type FormActionsProps = React.ComponentProps<'div'>;\n\n/** Layout helper for primary/secondary actions — not a Base UI primitive. */\nexport function FormActions({ className, ...props }: FormActionsProps) {\n return <div className={cn('FormActions', className)} {...props} />;\n}\n","import * as React from 'react';\nimport {\n NavigationMenu as BaseNavigationMenu,\n} from '@base-ui/react/navigation-menu';\nimport { cnState } from '../utils/cn';\n\nexport type NavigationMenuRootProps = React.ComponentProps<typeof BaseNavigationMenu.Root>;\nexport type NavigationMenuListProps = React.ComponentProps<typeof BaseNavigationMenu.List>;\n\nconst Root = React.forwardRef<HTMLElement, React.ComponentProps<typeof BaseNavigationMenu.Root>>(\n function NavigationMenuRoot({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Root\n ref={ref}\n {...props}\n className={(state) => cnState('NavigationMenuRoot', className, state)}\n />\n );\n },\n);\n\nconst List = React.forwardRef<HTMLUListElement, React.ComponentProps<typeof BaseNavigationMenu.List>>(\n function NavigationMenuList({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.List\n ref={ref}\n {...props}\n className={(state) => cnState('NavigationMenuList', className, state)}\n />\n );\n },\n);\n\nconst Item = React.forwardRef<HTMLLIElement, React.ComponentProps<typeof BaseNavigationMenu.Item>>(\n function NavigationMenuItem({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Item\n ref={ref}\n {...props}\n className={(state) => cnState('', className, state)}\n />\n );\n },\n);\n\nconst Content = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<typeof BaseNavigationMenu.Content>\n>(function NavigationMenuContent({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Content\n ref={ref}\n {...props}\n className={(state) => cnState('NavigationMenuContent', className, state)}\n />\n );\n});\n\nconst Trigger = React.forwardRef<\n HTMLButtonElement,\n React.ComponentProps<typeof BaseNavigationMenu.Trigger>\n>(function NavigationMenuTrigger({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Trigger\n ref={ref}\n {...props}\n className={(state) => cnState('NavigationMenuTrigger', className, state)}\n />\n );\n});\n\nconst Icon = React.forwardRef<HTMLSpanElement, React.ComponentProps<typeof BaseNavigationMenu.Icon>>(\n function NavigationMenuIcon({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Icon\n ref={ref}\n {...props}\n className={(state) => cnState('NavigationMenuIcon', className, state)}\n />\n );\n },\n);\n\nconst Portal = BaseNavigationMenu.Portal;\n\nconst Positioner = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<typeof BaseNavigationMenu.Positioner>\n>(function NavigationMenuPositioner({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Positioner\n ref={ref}\n {...props}\n className={(state) => cnState('NavigationMenuPositioner', className, state)}\n />\n );\n});\n\nconst Popup = React.forwardRef<HTMLDivElement, React.ComponentProps<typeof BaseNavigationMenu.Popup>>(\n function NavigationMenuPopup({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Popup\n ref={ref}\n {...props}\n className={(state) => cnState('NavigationMenuPopup', className, state)}\n />\n );\n },\n);\n\nconst Arrow = React.forwardRef<HTMLDivElement, React.ComponentProps<typeof BaseNavigationMenu.Arrow>>(\n function NavigationMenuArrow({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Arrow\n ref={ref}\n {...props}\n className={(state) => cnState('NavigationMenuArrow', className, state)}\n />\n );\n },\n);\n\nconst Viewport = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<typeof BaseNavigationMenu.Viewport>\n>(function NavigationMenuViewport({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Viewport\n ref={ref}\n {...props}\n className={(state) => cnState('NavigationMenuViewport', className, state)}\n />\n );\n});\n\nconst Link = React.forwardRef<HTMLAnchorElement, React.ComponentProps<typeof BaseNavigationMenu.Link>>(\n function NavigationMenuLink({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Link\n ref={ref}\n {...props}\n className={(state) => cnState('NavigationMenuLink', className, state)}\n />\n );\n },\n);\n\nconst Backdrop = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<typeof BaseNavigationMenu.Backdrop>\n>(function NavigationMenuBackdrop({ className, ...props }, ref) {\n return (\n <BaseNavigationMenu.Backdrop\n ref={ref}\n {...props}\n className={(state) => cnState('', className, state)}\n />\n );\n});\n\n/**\n * Base UI [Navigation Menu](https://base-ui.com/react/components/navigation-menu) with design-system classes.\n * Prefer `NavigationMenu.Link` with `render={<a />}` (or your router link) for correct semantics.\n */\nexport const NavigationMenu = {\n Root,\n List,\n Item,\n Content,\n Trigger,\n Icon,\n Portal,\n Positioner,\n Popup,\n Arrow,\n Viewport,\n Link,\n Backdrop,\n};\n"]}
@@ -1,8 +1,8 @@
1
- /* @scattered-light/loomiere-base-ui 0.2.0 · styles for @base-ui/react 1.9.0 */
1
+ /* @scattered-light/loomiere-base-ui 0.4.0 · styles for @base-ui/react 1.9.0 */
2
2
  /* Accordion - Mojave Theme
3
3
  *
4
4
  * No component tokens. Hover, press, chevron, divider and motion are the disclosure
5
- * concept (tokens/semantic/disclosure.json); the trigger is the maximize-md heading and
5
+ * concept (tokens/semantic/disclosure.json); the trigger is the title-base heading and
6
6
  * the panel is base text. The accordion sits on whatever surface holds it.
7
7
  */
8
8
 
@@ -25,11 +25,11 @@
25
25
 
26
26
  .AccordionTrigger {
27
27
  all: unset;
28
- font-family: var(--sl-font-maximize-md-font-family);
29
- font-size: var(--sl-font-maximize-md-font-size);
30
- font-weight: var(--sl-font-maximize-md-font-weight);
31
- line-height: var(--sl-font-maximize-md-line-height);
32
- letter-spacing: var(--sl-font-maximize-md-letter-spacing);
28
+ font-family: var(--sl-font-title-base-font-family);
29
+ font-size: var(--sl-font-title-base-font-size);
30
+ font-weight: var(--sl-font-title-base-font-weight);
31
+ line-height: var(--sl-font-title-base-line-height);
32
+ letter-spacing: var(--sl-font-title-base-letter-spacing);
33
33
  box-sizing: border-box;
34
34
  width: 100%;
35
35
  display: flex;
@@ -91,11 +91,11 @@
91
91
  }
92
92
 
93
93
  .AccordionContent {
94
- font-family: var(--sl-font-base-font-family);
95
- font-size: var(--sl-font-base-font-size);
96
- font-weight: var(--sl-font-base-font-weight);
97
- line-height: var(--sl-font-base-line-height);
98
- letter-spacing: var(--sl-font-base-letter-spacing);
94
+ font-family: var(--sl-font-body-base-font-family);
95
+ font-size: var(--sl-font-body-base-font-size);
96
+ font-weight: var(--sl-font-body-base-font-weight);
97
+ line-height: var(--sl-font-body-base-line-height);
98
+ letter-spacing: var(--sl-font-body-base-letter-spacing);
99
99
  padding: 0 var(--sl-space-6) var(--sl-space-4);
100
100
  color: var(--sl-disclosure-content-color);
101
101
  }
@@ -1,4 +1,4 @@
1
- /* @scattered-light/loomiere-base-ui 0.2.0 · styles for @base-ui/react 1.9.0 */
1
+ /* @scattered-light/loomiere-base-ui 0.4.0 · styles for @base-ui/react 1.9.0 */
2
2
  /* Alert Dialog - Mojave Theme
3
3
  *
4
4
  * No component tokens and no rules of its own. An alert dialog looks exactly like a
@@ -1,4 +1,4 @@
1
- /* @scattered-light/loomiere-base-ui 0.2.0 · styles for @base-ui/react 1.9.0 */
1
+ /* @scattered-light/loomiere-base-ui 0.4.0 · styles for @base-ui/react 1.9.0 */
2
2
  /* Autocomplete - Mojave Theme
3
3
  *
4
4
  * No component tokens. The input is Input (Input.css), the clear button is an icon
@@ -128,11 +128,11 @@
128
128
  user-select: none;
129
129
  outline: none;
130
130
  transition: var(--sl-item-transition);
131
- font-family: var(--sl-font-base-font-family);
132
- font-size: var(--sl-font-base-font-size);
133
- font-weight: var(--sl-font-base-font-weight);
134
- line-height: var(--sl-font-base-line-height);
135
- letter-spacing: var(--sl-font-base-letter-spacing);
131
+ font-family: var(--sl-font-body-base-font-family);
132
+ font-size: var(--sl-font-body-base-font-size);
133
+ font-weight: var(--sl-font-body-base-font-weight);
134
+ line-height: var(--sl-font-body-base-line-height);
135
+ letter-spacing: var(--sl-font-body-base-letter-spacing);
136
136
  cursor: pointer;
137
137
  list-style: none;
138
138
  }
@@ -144,11 +144,11 @@
144
144
  }
145
145
 
146
146
  .AutocompleteItem[data-selected] {
147
- font-family: var(--sl-font-base-selected-font-family);
148
- font-size: var(--sl-font-base-selected-font-size);
149
- font-weight: var(--sl-font-base-selected-font-weight);
150
- line-height: var(--sl-font-base-selected-line-height);
151
- letter-spacing: var(--sl-font-base-selected-letter-spacing);
147
+ font-family: var(--sl-font-selected-base-font-family);
148
+ font-size: var(--sl-font-selected-base-font-size);
149
+ font-weight: var(--sl-font-selected-base-font-weight);
150
+ line-height: var(--sl-font-selected-base-line-height);
151
+ letter-spacing: var(--sl-font-selected-base-letter-spacing);
152
152
  background: var(--sl-item-background-selected);
153
153
  color: var(--sl-item-color-selected);
154
154
  }
@@ -164,12 +164,12 @@
164
164
  ============================================ */
165
165
 
166
166
  .AutocompleteGroupLabel {
167
- font-family: var(--sl-font-condense-subtitle-label-font-family);
168
- font-size: var(--sl-font-condense-subtitle-label-font-size);
169
- font-weight: var(--sl-font-condense-subtitle-label-font-weight);
170
- line-height: var(--sl-font-condense-subtitle-label-line-height);
171
- letter-spacing: var(--sl-font-condense-subtitle-label-letter-spacing);
172
- text-transform: var(--sl-font-condense-subtitle-label-text-transform);
167
+ font-family: var(--sl-font-eyebrow-condense-font-family);
168
+ font-size: var(--sl-font-eyebrow-condense-font-size);
169
+ font-weight: var(--sl-font-eyebrow-condense-font-weight);
170
+ line-height: var(--sl-font-eyebrow-condense-line-height);
171
+ letter-spacing: var(--sl-font-eyebrow-condense-letter-spacing);
172
+ text-transform: var(--sl-font-eyebrow-condense-text-transform);
173
173
  padding-block: var(--sl-popup-group-label-padding-top) var(--sl-popup-group-label-padding-bottom);
174
174
  padding-inline: var(--sl-item-padding-inline);
175
175
  color: var(--sl-text-secondary);
@@ -183,11 +183,11 @@
183
183
  }
184
184
 
185
185
  .AutocompleteEmpty {
186
- font-family: var(--sl-font-condense-font-family);
187
- font-size: var(--sl-font-condense-font-size);
188
- font-weight: var(--sl-font-condense-font-weight);
189
- line-height: var(--sl-font-condense-line-height);
190
- letter-spacing: var(--sl-font-condense-letter-spacing);
186
+ font-family: var(--sl-font-body-condense-font-family);
187
+ font-size: var(--sl-font-body-condense-font-size);
188
+ font-weight: var(--sl-font-body-condense-font-weight);
189
+ line-height: var(--sl-font-body-condense-line-height);
190
+ letter-spacing: var(--sl-font-body-condense-letter-spacing);
191
191
  padding-block: var(--sl-popup-empty-padding-block);
192
192
  padding-inline: var(--sl-item-padding-inline);
193
193
  color: var(--sl-text-tertiary);
@@ -1,9 +1,9 @@
1
- /* @scattered-light/loomiere-base-ui 0.2.0 · styles for @base-ui/react 1.9.0 */
1
+ /* @scattered-light/loomiere-base-ui 0.4.0 · styles for @base-ui/react 1.9.0 */
2
2
  /* Avatar - Mojave Theme
3
3
  *
4
4
  * A round picture with a ring in the page color, so avatars in a group cut out of each other in
5
- * both themes. Initials sit on the scope's solid fill in its on-solid text (the bold emphasis
6
- * colors), so data-color re-colors them. Initials use the heading text style one tier per size.
5
+ * both themes. Initials paint with the avatar's emphasis level (bold unless data-emphasis says
6
+ * otherwise), so data-color re-colors them and the brand's ladder sets how loud they are. Initials use the heading text style one tier per size.
7
7
  * Only the sizes are avatar tokens.
8
8
  */
9
9
 
@@ -30,18 +30,19 @@
30
30
  }
31
31
 
32
32
  .AvatarFallback {
33
- font-family: var(--sl-font-maximize-md-font-family);
34
- font-size: var(--sl-font-maximize-md-font-size);
35
- font-weight: var(--sl-font-maximize-md-font-weight);
36
- line-height: var(--sl-font-maximize-md-line-height);
37
- letter-spacing: var(--sl-font-maximize-md-letter-spacing);
33
+ font-family: var(--sl-font-title-base-font-family);
34
+ font-size: var(--sl-font-title-base-font-size);
35
+ font-weight: var(--sl-font-title-base-font-weight);
36
+ line-height: var(--sl-font-title-base-line-height);
37
+ letter-spacing: var(--sl-font-title-base-letter-spacing);
38
+ font-size: var(--avatar-initials-size, var(--sl-avatar-initials-font-size-md));
38
39
  display: flex;
39
40
  align-items: center;
40
41
  justify-content: center;
41
42
  width: 100%;
42
43
  height: 100%;
43
- background: var(--sl-scope-solid);
44
- color: var(--sl-scope-on-solid);
44
+ background: var(--sl-e-bg);
45
+ color: var(--sl-e-fg);
45
46
  text-transform: uppercase;
46
47
  user-select: none;
47
48
  }
@@ -52,50 +53,22 @@
52
53
 
53
54
  .AvatarRoot[data-size='xs'] {
54
55
  --avatar-size: var(--sl-avatar-size-xs);
55
- }
56
-
57
- .AvatarRoot[data-size='xs'] .AvatarFallback {
58
- font-family: var(--sl-font-maximize-xs-font-family);
59
- font-size: var(--sl-font-maximize-xs-font-size);
60
- font-weight: var(--sl-font-maximize-xs-font-weight);
61
- line-height: var(--sl-font-maximize-xs-line-height);
62
- letter-spacing: var(--sl-font-maximize-xs-letter-spacing);
56
+ --avatar-initials-size: var(--sl-avatar-initials-font-size-xs);
63
57
  }
64
58
 
65
59
  .AvatarRoot[data-size='sm'] {
66
60
  --avatar-size: var(--sl-avatar-size-sm);
67
- }
68
-
69
- .AvatarRoot[data-size='sm'] .AvatarFallback {
70
- font-family: var(--sl-font-maximize-sm-font-family);
71
- font-size: var(--sl-font-maximize-sm-font-size);
72
- font-weight: var(--sl-font-maximize-sm-font-weight);
73
- line-height: var(--sl-font-maximize-sm-line-height);
74
- letter-spacing: var(--sl-font-maximize-sm-letter-spacing);
61
+ --avatar-initials-size: var(--sl-avatar-initials-font-size-sm);
75
62
  }
76
63
 
77
64
  .AvatarRoot[data-size='lg'] {
78
65
  --avatar-size: var(--sl-avatar-size-lg);
79
- }
80
-
81
- .AvatarRoot[data-size='lg'] .AvatarFallback {
82
- font-family: var(--sl-font-maximize-lg-font-family);
83
- font-size: var(--sl-font-maximize-lg-font-size);
84
- font-weight: var(--sl-font-maximize-lg-font-weight);
85
- line-height: var(--sl-font-maximize-lg-line-height);
86
- letter-spacing: var(--sl-font-maximize-lg-letter-spacing);
66
+ --avatar-initials-size: var(--sl-avatar-initials-font-size-lg);
87
67
  }
88
68
 
89
69
  .AvatarRoot[data-size='xl'] {
90
70
  --avatar-size: var(--sl-avatar-size-xl);
91
- }
92
-
93
- .AvatarRoot[data-size='xl'] .AvatarFallback {
94
- font-family: var(--sl-font-maximize-2xl-font-family);
95
- font-size: var(--sl-font-maximize-2xl-font-size);
96
- font-weight: var(--sl-font-maximize-2xl-font-weight);
97
- line-height: var(--sl-font-maximize-2xl-line-height);
98
- letter-spacing: var(--sl-font-maximize-2xl-letter-spacing);
71
+ --avatar-initials-size: var(--sl-avatar-initials-font-size-xl);
99
72
  }
100
73
 
101
74
  /* ============================================
@@ -1,4 +1,4 @@
1
- /* @scattered-light/loomiere-base-ui 0.2.0 · styles for @base-ui/react 1.9.0 */
1
+ /* @scattered-light/loomiere-base-ui 0.4.0 · styles for @base-ui/react 1.9.0 */
2
2
  /* Button - Mojave Theme
3
3
  *
4
4
  * Colors are the brand's emphasis levels, sizes are control.*, text is the trigger
@@ -11,11 +11,11 @@
11
11
  ============================================ */
12
12
 
13
13
  .Button {
14
- font-family: var(--sl-font-base-trigger-font-family);
15
- font-size: var(--sl-font-base-trigger-font-size);
16
- font-weight: var(--sl-font-base-trigger-font-weight);
17
- line-height: var(--sl-font-base-trigger-line-height);
18
- letter-spacing: var(--sl-font-base-trigger-letter-spacing);
14
+ font-family: var(--sl-font-trigger-base-font-family);
15
+ font-size: var(--sl-font-trigger-base-font-size);
16
+ font-weight: var(--sl-font-trigger-base-font-weight);
17
+ line-height: var(--sl-font-trigger-base-line-height);
18
+ letter-spacing: var(--sl-font-trigger-base-letter-spacing);
19
19
  display: inline-flex;
20
20
  align-items: center;
21
21
  justify-content: center;
@@ -32,9 +32,23 @@
32
32
  user-select: none;
33
33
  }
34
34
 
35
- .Button svg {
35
+ .Button svg,
36
+ .Button .material-symbols-outlined {
36
37
  width: var(--sl-icon-size-magnify);
37
38
  height: var(--sl-icon-size-magnify);
39
+ font-size: var(--sl-icon-size-magnify);
40
+ line-height: 1;
41
+ }
42
+
43
+ /* Icon only: square, so the pill corners make a circle instead of a wide oval. The Button
44
+ wrapper sets data-icon-only when its only child is an icon. A plain .Button (a Popover or
45
+ Toolbar trigger) qualifies on its own with an aria-label and a single icon inside, since an
46
+ icon-only button needs the label anyway; CSS can't see text, so the label is the signal. */
47
+ .Button[data-icon-only],
48
+ .Button[aria-label]:has(> svg:only-child),
49
+ .Button[aria-label]:has(> .material-symbols-outlined:only-child) {
50
+ aspect-ratio: 1;
51
+ padding-inline: 0;
38
52
  }
39
53
 
40
54
  /* ============================================
@@ -82,48 +96,54 @@
82
96
  ============================================ */
83
97
 
84
98
  .Button[data-size='xs'] {
85
- font-family: var(--sl-font-minimize-trigger-font-family);
86
- font-size: var(--sl-font-minimize-trigger-font-size);
87
- font-weight: var(--sl-font-minimize-trigger-font-weight);
88
- line-height: var(--sl-font-minimize-trigger-line-height);
89
- letter-spacing: var(--sl-font-minimize-trigger-letter-spacing);
99
+ font-family: var(--sl-font-trigger-minimize-font-family);
100
+ font-size: var(--sl-font-trigger-minimize-font-size);
101
+ font-weight: var(--sl-font-trigger-minimize-font-weight);
102
+ line-height: var(--sl-font-trigger-minimize-line-height);
103
+ letter-spacing: var(--sl-font-trigger-minimize-letter-spacing);
90
104
  gap: var(--sl-gap-control-xs);
91
105
  height: var(--sl-control-height-xs);
92
106
  padding-inline: var(--sl-control-padding-inline-xs);
93
107
  }
94
108
 
95
- .Button[data-size='xs'] svg {
109
+ .Button[data-size='xs'] svg,
110
+ .Button[data-size='xs'] .material-symbols-outlined {
96
111
  width: var(--sl-icon-size-condense);
97
112
  height: var(--sl-icon-size-condense);
113
+ font-size: var(--sl-icon-size-condense);
98
114
  }
99
115
 
100
116
  .Button[data-size='sm'] {
101
- font-family: var(--sl-font-condense-trigger-font-family);
102
- font-size: var(--sl-font-condense-trigger-font-size);
103
- font-weight: var(--sl-font-condense-trigger-font-weight);
104
- line-height: var(--sl-font-condense-trigger-line-height);
105
- letter-spacing: var(--sl-font-condense-trigger-letter-spacing);
117
+ font-family: var(--sl-font-trigger-condense-font-family);
118
+ font-size: var(--sl-font-trigger-condense-font-size);
119
+ font-weight: var(--sl-font-trigger-condense-font-weight);
120
+ line-height: var(--sl-font-trigger-condense-line-height);
121
+ letter-spacing: var(--sl-font-trigger-condense-letter-spacing);
106
122
  gap: var(--sl-gap-control-sm);
107
123
  height: var(--sl-control-height-sm);
108
124
  padding-inline: var(--sl-control-padding-inline-sm);
109
125
  }
110
126
 
111
- .Button[data-size='sm'] svg {
127
+ .Button[data-size='sm'] svg,
128
+ .Button[data-size='sm'] .material-symbols-outlined {
112
129
  width: var(--sl-icon-size-base);
113
130
  height: var(--sl-icon-size-base);
131
+ font-size: var(--sl-icon-size-base);
114
132
  }
115
133
 
116
134
  .Button[data-size='lg'] {
117
- font-family: var(--sl-font-magnify-trigger-font-family);
118
- font-size: var(--sl-font-magnify-trigger-font-size);
119
- font-weight: var(--sl-font-magnify-trigger-font-weight);
120
- line-height: var(--sl-font-magnify-trigger-line-height);
121
- letter-spacing: var(--sl-font-magnify-trigger-letter-spacing);
135
+ font-family: var(--sl-font-trigger-magnify-font-family);
136
+ font-size: var(--sl-font-trigger-magnify-font-size);
137
+ font-weight: var(--sl-font-trigger-magnify-font-weight);
138
+ line-height: var(--sl-font-trigger-magnify-line-height);
139
+ letter-spacing: var(--sl-font-trigger-magnify-letter-spacing);
122
140
  height: var(--sl-control-height-lg);
123
141
  padding-inline: var(--sl-control-padding-inline-lg);
124
142
  }
125
143
 
126
- .Button[data-size='lg'] svg {
144
+ .Button[data-size='lg'] svg,
145
+ .Button[data-size='lg'] .material-symbols-outlined {
127
146
  width: var(--sl-icon-size-maximize);
128
147
  height: var(--sl-icon-size-maximize);
148
+ font-size: var(--sl-icon-size-maximize);
129
149
  }
@@ -1,4 +1,4 @@
1
- /* @scattered-light/loomiere-base-ui 0.2.0 · styles for @base-ui/react 1.9.0 */
1
+ /* @scattered-light/loomiere-base-ui 0.4.0 · styles for @base-ui/react 1.9.0 */
2
2
  /* Checkbox - Mojave Theme
3
3
  * Sizes follow the label: the box is the icon size one tier above the label's text
4
4
  * tier (like a button's icon) and the check mark one tier below it.
@@ -15,28 +15,28 @@
15
15
  color: var(--sl-text-primary);
16
16
  cursor: pointer;
17
17
  user-select: none;
18
- font-family: var(--sl-font-base-font-family);
19
- font-size: var(--sl-font-base-font-size);
20
- font-weight: var(--sl-font-base-font-weight);
21
- line-height: var(--sl-font-base-line-height);
22
- letter-spacing: var(--sl-font-base-letter-spacing);
18
+ font-family: var(--sl-font-body-base-font-family);
19
+ font-size: var(--sl-font-body-base-font-size);
20
+ font-weight: var(--sl-font-body-base-font-weight);
21
+ line-height: var(--sl-font-body-base-line-height);
22
+ letter-spacing: var(--sl-font-body-base-letter-spacing);
23
23
  min-height: var(--sl-control-height-md); /* Tap target */
24
24
  }
25
25
 
26
26
  .CheckboxLabel:has(.CheckboxRoot[data-size='sm']) {
27
- font-family: var(--sl-font-condense-font-family);
28
- font-size: var(--sl-font-condense-font-size);
29
- font-weight: var(--sl-font-condense-font-weight);
30
- line-height: var(--sl-font-condense-line-height);
31
- letter-spacing: var(--sl-font-condense-letter-spacing);
27
+ font-family: var(--sl-font-body-condense-font-family);
28
+ font-size: var(--sl-font-body-condense-font-size);
29
+ font-weight: var(--sl-font-body-condense-font-weight);
30
+ line-height: var(--sl-font-body-condense-line-height);
31
+ letter-spacing: var(--sl-font-body-condense-letter-spacing);
32
32
  }
33
33
 
34
34
  .CheckboxLabel:has(.CheckboxRoot[data-size='lg']) {
35
- font-family: var(--sl-font-magnify-font-family);
36
- font-size: var(--sl-font-magnify-font-size);
37
- font-weight: var(--sl-font-magnify-font-weight);
38
- line-height: var(--sl-font-magnify-line-height);
39
- letter-spacing: var(--sl-font-magnify-letter-spacing);
35
+ font-family: var(--sl-font-body-magnify-font-family);
36
+ font-size: var(--sl-font-body-magnify-font-size);
37
+ font-weight: var(--sl-font-body-magnify-font-weight);
38
+ line-height: var(--sl-font-body-magnify-line-height);
39
+ letter-spacing: var(--sl-font-body-magnify-letter-spacing);
40
40
  }
41
41
 
42
42
  .CheckboxLabel:has(.CheckboxRoot[data-disabled]) {
@@ -1,4 +1,4 @@
1
- /* @scattered-light/loomiere-base-ui 0.2.0 · styles for @base-ui/react 1.9.0 */
1
+ /* @scattered-light/loomiere-base-ui 0.4.0 · styles for @base-ui/react 1.9.0 */
2
2
  /* Checkbox Group - Mojave Theme */
3
3
 
4
4
  /* Each checkbox row is already a full tap target tall, so the rows sit close. */
@@ -1,4 +1,4 @@
1
- /* @scattered-light/loomiere-base-ui 0.2.0 · styles for @base-ui/react 1.9.0 */
1
+ /* @scattered-light/loomiere-base-ui 0.4.0 · styles for @base-ui/react 1.9.0 */
2
2
  /* Collapsible - Mojave Theme
3
3
  *
4
4
  * No component tokens. Hover, press, chevron and motion are the disclosure concept
@@ -13,11 +13,11 @@
13
13
 
14
14
  .CollapsibleTrigger {
15
15
  all: unset;
16
- font-family: var(--sl-font-base-subtitle-font-family);
17
- font-size: var(--sl-font-base-subtitle-font-size);
18
- font-weight: var(--sl-font-base-subtitle-font-weight);
19
- line-height: var(--sl-font-base-subtitle-line-height);
20
- letter-spacing: var(--sl-font-base-subtitle-letter-spacing);
16
+ font-family: var(--sl-font-subtitle-base-font-family);
17
+ font-size: var(--sl-font-subtitle-base-font-size);
18
+ font-weight: var(--sl-font-subtitle-base-font-weight);
19
+ line-height: var(--sl-font-subtitle-base-line-height);
20
+ letter-spacing: var(--sl-font-subtitle-base-letter-spacing);
21
21
  box-sizing: border-box;
22
22
  display: flex;
23
23
  align-items: center;
@@ -81,11 +81,11 @@
81
81
 
82
82
  /* Content starts under the trigger's text: its padding, the chevron and the gap. */
83
83
  .CollapsibleContent {
84
- font-family: var(--sl-font-base-font-family);
85
- font-size: var(--sl-font-base-font-size);
86
- font-weight: var(--sl-font-base-font-weight);
87
- line-height: var(--sl-font-base-line-height);
88
- letter-spacing: var(--sl-font-base-letter-spacing);
84
+ font-family: var(--sl-font-body-base-font-family);
85
+ font-size: var(--sl-font-body-base-font-size);
86
+ font-weight: var(--sl-font-body-base-font-weight);
87
+ line-height: var(--sl-font-body-base-line-height);
88
+ letter-spacing: var(--sl-font-body-base-letter-spacing);
89
89
  display: flex;
90
90
  flex-direction: column;
91
91
  gap: var(--sl-space-2);
@@ -102,11 +102,11 @@
102
102
  }
103
103
 
104
104
  .CollapsibleContent code {
105
- font-family: var(--sl-font-code-font-family);
106
- font-size: var(--sl-font-code-font-size);
107
- font-weight: var(--sl-font-code-font-weight);
108
- line-height: var(--sl-font-code-line-height);
109
- letter-spacing: var(--sl-font-code-letter-spacing);
105
+ font-family: var(--sl-font-code-condense-font-family);
106
+ font-size: var(--sl-font-code-condense-font-size);
107
+ font-weight: var(--sl-font-code-condense-font-weight);
108
+ line-height: var(--sl-font-code-condense-line-height);
109
+ letter-spacing: var(--sl-font-code-condense-letter-spacing);
110
110
  display: block;
111
111
  margin-top: var(--sl-space-2);
112
112
  padding: var(--sl-space-2);