@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.
- package/dist/design-system/components/Accordion/README.md +1 -1
- package/dist/design-system/components/Accordion/preview.html +1 -1
- package/dist/design-system/components/AlertDialog/preview.html +1 -1
- package/dist/design-system/components/Autocomplete/preview.html +1 -1
- package/dist/design-system/components/Avatar/README.md +1 -1
- package/dist/design-system/components/Avatar/preview.html +1 -1
- package/dist/design-system/components/Button/README.md +1 -1
- package/dist/design-system/components/Button/preview.html +3 -3
- package/dist/design-system/components/Checkbox/preview.html +1 -1
- package/dist/design-system/components/CheckboxGroup/preview.html +1 -1
- package/dist/design-system/components/Collapsible/preview.html +1 -1
- package/dist/design-system/components/Combobox/preview.html +1 -1
- package/dist/design-system/components/ContextMenu/preview.html +1 -1
- package/dist/design-system/components/Dialog/README.md +1 -1
- package/dist/design-system/components/Dialog/preview.html +1 -1
- package/dist/design-system/components/Drawer/preview.html +1 -1
- package/dist/design-system/components/Field/preview.html +1 -1
- package/dist/design-system/components/Fieldset/preview.html +1 -1
- package/dist/design-system/components/Form/preview.html +1 -1
- package/dist/design-system/components/Input/preview.html +1 -1
- package/dist/design-system/components/Menu/preview.html +1 -1
- package/dist/design-system/components/Menubar/preview.html +1 -1
- package/dist/design-system/components/Meter/preview.html +1 -1
- package/dist/design-system/components/NavigationMenu/preview.html +1 -1
- package/dist/design-system/components/NumberField/preview.html +1 -1
- package/dist/design-system/components/OTPField/preview.html +1 -1
- package/dist/design-system/components/Popover/README.md +2 -2
- package/dist/design-system/components/Popover/preview.html +2 -2
- package/dist/design-system/components/PreviewCard/README.md +1 -1
- package/dist/design-system/components/PreviewCard/preview.html +1 -1
- package/dist/design-system/components/Progress/preview.html +1 -1
- package/dist/design-system/components/Radio/preview.html +1 -1
- package/dist/design-system/components/ScrollArea/preview.html +1 -1
- package/dist/design-system/components/Select/preview.html +1 -1
- package/dist/design-system/components/Separator/preview.html +1 -1
- package/dist/design-system/components/Slider/preview.html +1 -1
- package/dist/design-system/components/Switch/preview.html +1 -1
- package/dist/design-system/components/Table/README.md +50 -0
- package/dist/design-system/components/Table/preview.html +19 -0
- package/dist/design-system/components/Tabs/preview.html +1 -1
- package/dist/design-system/components/Toast/preview.html +1 -1
- package/dist/design-system/components/Toggle/README.md +1 -1
- package/dist/design-system/components/Toggle/preview.html +1 -1
- package/dist/design-system/components/ToggleGroup/preview.html +1 -1
- package/dist/design-system/components/Toolbar/preview.html +1 -1
- package/dist/design-system/components/Tooltip/preview.html +1 -1
- package/dist/design-system/components/bundle.js +5 -5
- package/dist/design-system/components/index.d.ts +2 -1
- package/dist/design-system/components/styles.css +687 -544
- package/dist/index.d.ts +2 -1
- package/dist/index.js +8 -2
- package/dist/index.js.map +1 -1
- package/dist/styles/components/Accordion.css +12 -12
- package/dist/styles/components/AlertDialog.css +1 -1
- package/dist/styles/components/Autocomplete.css +22 -22
- package/dist/styles/components/Avatar.css +15 -42
- package/dist/styles/components/Button.css +45 -25
- package/dist/styles/components/Checkbox.css +16 -16
- package/dist/styles/components/CheckboxGroup.css +1 -1
- package/dist/styles/components/Collapsible.css +16 -16
- package/dist/styles/components/Combobox.css +62 -62
- package/dist/styles/components/ContextMenu.css +12 -12
- package/dist/styles/components/Dialog.css +12 -12
- package/dist/styles/components/Drawer.css +11 -11
- package/dist/styles/components/Field.css +16 -16
- package/dist/styles/components/Fieldset.css +11 -11
- package/dist/styles/components/Form.css +1 -1
- package/dist/styles/components/Input.css +21 -21
- package/dist/styles/components/Menu.css +12 -12
- package/dist/styles/components/Menubar.css +17 -17
- package/dist/styles/components/Meter.css +11 -11
- package/dist/styles/components/NavigationMenu.css +22 -22
- package/dist/styles/components/NumberField.css +1 -1
- package/dist/styles/components/OTPField.css +11 -11
- package/dist/styles/components/Popover.css +15 -12
- package/dist/styles/components/PreviewCard.css +12 -12
- package/dist/styles/components/Progress.css +11 -11
- package/dist/styles/components/Radio.css +16 -16
- package/dist/styles/components/ScrollArea.css +1 -1
- package/dist/styles/components/Select.css +22 -22
- package/dist/styles/components/Separator.css +1 -1
- package/dist/styles/components/Slider.css +11 -11
- package/dist/styles/components/Switch.css +22 -22
- package/dist/styles/components/Table.css +144 -0
- package/dist/styles/components/Tabs.css +31 -31
- package/dist/styles/components/Toast.css +11 -11
- package/dist/styles/components/Toggle.css +24 -22
- package/dist/styles/components/ToggleGroup.css +1 -1
- package/dist/styles/components/Toolbar.css +6 -6
- package/dist/styles/components/Tooltip.css +6 -6
- package/dist/styles/index.css +2 -1
- package/dist/styles/reset/accessibility.css +1 -1
- package/dist/styles/reset/reset-accessibility.css +1 -1
- package/dist/styles/reset/reset-tailwind.css +1 -1
- package/dist/styles/reset/reset.css +1 -1
- package/dist/styles/tailwind.css +2 -1
- 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
|
-
*
|
|
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
|
-
|
|
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":"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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/**\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":";;;;;;;;;;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;ACzBA,SAAS,WAAW,QAAA,EAA2B;AAC7C,EAAA,MAAM,KAAA,GAAcA,MAAA,CAAA,QAAA,CAAS,OAAA,CAAQ,QAAQ,CAAA;AAC7C,EAAA,OAAO,MAAM,MAAA,KAAW,CAAA,IAAWA,MAAA,CAAA,cAAA,CAAe,KAAA,CAAM,CAAC,CAAC,CAAA;AAC5D;AAOO,IAAM,MAAA,GAAeA,MAAA,CAAA,UAAA,CAA2C,SAASC,OAAAA,CAC9E,EAAE,SAAA,EAAW,QAAA,EAAU,OAAA,EAAS,QAAA,EAAU,GAAG,KAAA,EAAM,EACnD,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,MACZ,gBAAA,EAAgB,UAAA,CAAW,QAAQ,CAAA,GAAI,EAAA,GAAK,MAAA;AAAA,MAC3C,GAAG,KAAA;AAAA,MACJ,WAAW,CAAC,KAAA,KAAU,OAAA,CAAQ,QAAA,EAAU,WAAW,KAAK,CAAA;AAAA,MAEvD;AAAA;AAAA,GACH;AAEJ,CAAC;AAED,MAAA,CAAO,WAAA,GAAc,QAAA;AC9Bd,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/** 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.
|
|
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
|
|
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-
|
|
29
|
-
font-size: var(--sl-font-
|
|
30
|
-
font-weight: var(--sl-font-
|
|
31
|
-
line-height: var(--sl-font-
|
|
32
|
-
letter-spacing: var(--sl-font-
|
|
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.
|
|
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.
|
|
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-
|
|
148
|
-
font-size: var(--sl-font-base-
|
|
149
|
-
font-weight: var(--sl-font-base-
|
|
150
|
-
line-height: var(--sl-font-base-
|
|
151
|
-
letter-spacing: var(--sl-font-base-
|
|
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-
|
|
168
|
-
font-size: var(--sl-font-condense-
|
|
169
|
-
font-weight: var(--sl-font-condense-
|
|
170
|
-
line-height: var(--sl-font-condense-
|
|
171
|
-
letter-spacing: var(--sl-font-condense-
|
|
172
|
-
text-transform: var(--sl-font-condense-
|
|
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.
|
|
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
|
|
6
|
-
*
|
|
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-
|
|
34
|
-
font-size: var(--sl-font-
|
|
35
|
-
font-weight: var(--sl-font-
|
|
36
|
-
line-height: var(--sl-font-
|
|
37
|
-
letter-spacing: var(--sl-font-
|
|
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-
|
|
44
|
-
color: var(--sl-
|
|
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.
|
|
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-
|
|
15
|
-
font-size: var(--sl-font-base-
|
|
16
|
-
font-weight: var(--sl-font-base-
|
|
17
|
-
line-height: var(--sl-font-base-
|
|
18
|
-
letter-spacing: var(--sl-font-base-
|
|
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-
|
|
86
|
-
font-size: var(--sl-font-minimize-
|
|
87
|
-
font-weight: var(--sl-font-minimize-
|
|
88
|
-
line-height: var(--sl-font-minimize-
|
|
89
|
-
letter-spacing: var(--sl-font-minimize-
|
|
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-
|
|
102
|
-
font-size: var(--sl-font-condense-
|
|
103
|
-
font-weight: var(--sl-font-condense-
|
|
104
|
-
line-height: var(--sl-font-condense-
|
|
105
|
-
letter-spacing: var(--sl-font-condense-
|
|
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-
|
|
118
|
-
font-size: var(--sl-font-magnify-
|
|
119
|
-
font-weight: var(--sl-font-magnify-
|
|
120
|
-
line-height: var(--sl-font-magnify-
|
|
121
|
-
letter-spacing: var(--sl-font-magnify-
|
|
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.
|
|
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.
|
|
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.
|
|
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-
|
|
17
|
-
font-size: var(--sl-font-base-
|
|
18
|
-
font-weight: var(--sl-font-base-
|
|
19
|
-
line-height: var(--sl-font-base-
|
|
20
|
-
letter-spacing: var(--sl-font-base-
|
|
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);
|