@scattered-light/base-ui-theme 0.1.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/README.md +19 -0
- package/dist/index.d.ts +103 -0
- package/dist/index.js +313 -0
- package/dist/index.js.map +1 -0
- package/dist/styles/base/borders.css +26 -0
- package/dist/styles/base/breakpoints.css +26 -0
- package/dist/styles/base/colors.css +150 -0
- package/dist/styles/base/global.css +108 -0
- package/dist/styles/base/reset-accessibility.css +119 -0
- package/dist/styles/base/reset.css +451 -0
- package/dist/styles/base/shadows.css +42 -0
- package/dist/styles/base/spacing.css +62 -0
- package/dist/styles/base/transitions.css +29 -0
- package/dist/styles/base/typography.css +63 -0
- package/dist/styles/base/z-index.css +22 -0
- package/dist/styles/components/AGGrid.css +6 -0
- package/dist/styles/components/Accordion.css +184 -0
- package/dist/styles/components/AlertDialog.css +172 -0
- package/dist/styles/components/Autocomplete.css +261 -0
- package/dist/styles/components/Avatar.css +154 -0
- package/dist/styles/components/Button.css +164 -0
- package/dist/styles/components/Checkbox.css +199 -0
- package/dist/styles/components/CheckboxGroup.css +21 -0
- package/dist/styles/components/Collapsible.css +115 -0
- package/dist/styles/components/Combobox.css +514 -0
- package/dist/styles/components/ContextMenu.css +209 -0
- package/dist/styles/components/Dialog.css +159 -0
- package/dist/styles/components/Field.css +138 -0
- package/dist/styles/components/Fieldset.css +48 -0
- package/dist/styles/components/Form.css +22 -0
- package/dist/styles/components/Input.css +106 -0
- package/dist/styles/components/Menu.css +158 -0
- package/dist/styles/components/Menubar.css +201 -0
- package/dist/styles/components/Meter.css +104 -0
- package/dist/styles/components/NavigationMenu.css +469 -0
- package/dist/styles/components/NumberField.css +182 -0
- package/dist/styles/components/Popover.css +167 -0
- package/dist/styles/components/PreviewCard.css +148 -0
- package/dist/styles/components/Progress.css +130 -0
- package/dist/styles/components/Radio.css +178 -0
- package/dist/styles/components/ScrollArea.css +103 -0
- package/dist/styles/components/Select.css +297 -0
- package/dist/styles/components/Separator.css +34 -0
- package/dist/styles/components/Slider.css +163 -0
- package/dist/styles/components/Switch.css +197 -0
- package/dist/styles/components/Tabs.css +163 -0
- package/dist/styles/components/Toast.css +261 -0
- package/dist/styles/components/Toggle.css +103 -0
- package/dist/styles/components/ToggleGroup.css +19 -0
- package/dist/styles/components/Toolbar.css +78 -0
- package/dist/styles/components/Tooltip.css +87 -0
- package/dist/styles/index.css +103 -0
- package/dist/styles/semantic/accessibility.css +77 -0
- package/dist/styles/semantic/accordion.css +102 -0
- package/dist/styles/semantic/ag-grid.css +114 -0
- package/dist/styles/semantic/alert-dialog.css +78 -0
- package/dist/styles/semantic/autocomplete.css +162 -0
- package/dist/styles/semantic/avatar.css +96 -0
- package/dist/styles/semantic/badge.css +16 -0
- package/dist/styles/semantic/button.css +145 -0
- package/dist/styles/semantic/card.css +14 -0
- package/dist/styles/semantic/checkbox-group.css +18 -0
- package/dist/styles/semantic/checkbox.css +117 -0
- package/dist/styles/semantic/collapsible.css +123 -0
- package/dist/styles/semantic/combobox.css +325 -0
- package/dist/styles/semantic/context-menu.css +131 -0
- package/dist/styles/semantic/dialog.css +91 -0
- package/dist/styles/semantic/dropdown.css +16 -0
- package/dist/styles/semantic/field.css +73 -0
- package/dist/styles/semantic/fieldset.css +45 -0
- package/dist/styles/semantic/form.css +20 -0
- package/dist/styles/semantic/input.css +83 -0
- package/dist/styles/semantic/menu.css +104 -0
- package/dist/styles/semantic/menubar.css +70 -0
- package/dist/styles/semantic/meter.css +88 -0
- package/dist/styles/semantic/modal.css +14 -0
- package/dist/styles/semantic/navigation-menu.css +171 -0
- package/dist/styles/semantic/number-field.css +142 -0
- package/dist/styles/semantic/popover.css +113 -0
- package/dist/styles/semantic/preview-card.css +108 -0
- package/dist/styles/semantic/progress.css +85 -0
- package/dist/styles/semantic/radio.css +103 -0
- package/dist/styles/semantic/scroll-area.css +64 -0
- package/dist/styles/semantic/select.css +197 -0
- package/dist/styles/semantic/separator.css +37 -0
- package/dist/styles/semantic/slider.css +120 -0
- package/dist/styles/semantic/switch.css +158 -0
- package/dist/styles/semantic/tabs.css +150 -0
- package/dist/styles/semantic/toast.css +171 -0
- package/dist/styles/semantic/toggle-group.css +29 -0
- package/dist/styles/semantic/toggle.css +94 -0
- package/dist/styles/semantic/toolbar.css +47 -0
- package/dist/styles/semantic/tooltip.css +56 -0
- package/dist/styles/theme/README.md +179 -0
- package/dist/styles/theme/theme-accessibility.css +13 -0
- package/dist/styles/theme/theme-primitives.css +7 -0
- package/dist/styles/theme/theme-radius.css +12 -0
- package/dist/styles/theme/theme-roles.css +66 -0
- package/dist/styles/theme/theme-spacing.css +28 -0
- package/dist/styles/theme/theme-stroke.css +7 -0
- package/dist/styles/theme/theme-typography.css +218 -0
- package/dist/styles/utilities/color-styles.css +34 -0
- package/dist/styles/utilities/layout-styles.css +19 -0
- package/dist/styles/utilities/text-styles.css +102 -0
- package/package.json +75 -0
package/README.md
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# ux-style-library-wip
|
|
2
|
+
|
|
3
|
+
Public npm package name (adjust scope in `package.json` before first publish): **`@ux-style-library/base-ui-theme`**.
|
|
4
|
+
|
|
5
|
+
## Design-system components (`src/lib`)
|
|
6
|
+
|
|
7
|
+
Shared primitives (Base UI + theme CSS) live under **`src/lib`**. In this repo, import from the **`@/`** alias, for example `import { Button } from '@/lib'`. **Storybook** loads [src/styles/index.css](src/styles/index.css) globally; library source does not side-effect-import CSS so the same components are safe to publish.
|
|
8
|
+
|
|
9
|
+
In **Storybook**, wrapped components are grouped under **`Components → Lib`**. See [docs/component-coverage.md](docs/component-coverage.md).
|
|
10
|
+
|
|
11
|
+
### Other apps (e.g. Lovable)
|
|
12
|
+
|
|
13
|
+
- Consume: [docs/consuming.md](docs/consuming.md)
|
|
14
|
+
- Publish from this private repo: [docs/PUBLISHING.md](docs/PUBLISHING.md)
|
|
15
|
+
|
|
16
|
+
### Scripts
|
|
17
|
+
|
|
18
|
+
- **`npm run build:lib`** — ESM + types in `dist/`, CSS tree in `dist/styles/` (run before `npm pack` / CI publish).
|
|
19
|
+
- **`npm run build`** — Vite app build output in `dist-app/`.
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import * as _base_ui_react_field from '@base-ui/react/field';
|
|
3
|
+
import * as _base_ui_react_button from '@base-ui/react/button';
|
|
4
|
+
import { Button as Button$1 } from '@base-ui/react/button';
|
|
5
|
+
import * as _base_ui_react_input from '@base-ui/react/input';
|
|
6
|
+
import { Input as Input$1 } from '@base-ui/react/input';
|
|
7
|
+
import * as _base_ui_react_fieldset from '@base-ui/react/fieldset';
|
|
8
|
+
import { Fieldset as Fieldset$1 } from '@base-ui/react/fieldset';
|
|
9
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
10
|
+
import { Form as Form$1 } from '@base-ui/react/form';
|
|
11
|
+
import * as _base_ui_react_navigation_menu from '@base-ui/react/navigation-menu';
|
|
12
|
+
import { NavigationMenu as NavigationMenu$1 } from '@base-ui/react/navigation-menu';
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Base UI [Field](https://base-ui.com/react/components/field) with design-system field classes.
|
|
16
|
+
*/
|
|
17
|
+
declare const Field: {
|
|
18
|
+
Root: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_field.FieldRootProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
19
|
+
Label: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_field.FieldLabelProps, "ref"> & React.RefAttributes<HTMLElement>, "ref"> & React.RefAttributes<HTMLLabelElement>>;
|
|
20
|
+
Description: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_field.FieldDescriptionProps, "ref"> & React.RefAttributes<HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
21
|
+
Error: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_field.FieldErrorProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
22
|
+
Control: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_field.FieldControlProps, "ref"> & React.RefAttributes<HTMLElement>, "ref"> & React.RefAttributes<HTMLInputElement>>;
|
|
23
|
+
Validity: React.FC<_base_ui_react_field.FieldValidityProps>;
|
|
24
|
+
Item: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_field.FieldItemProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Merge class names (strings, arrays, conditional objects). No external deps.
|
|
29
|
+
*/
|
|
30
|
+
type ClassValue = string | number | boolean | undefined | null | Record<string, boolean | undefined> | ClassValue[];
|
|
31
|
+
declare function cn(...inputs: ClassValue[]): string;
|
|
32
|
+
/** Merge a static BEM block with Base UI `className` (string or state callback). */
|
|
33
|
+
declare function cnState<State>(base: string, className: string | ((state: State) => string | undefined) | undefined, state: State): string;
|
|
34
|
+
|
|
35
|
+
type ButtonProps = React.ComponentProps<typeof Button$1>;
|
|
36
|
+
/**
|
|
37
|
+
* Base UI [Button](https://base-ui.com/react/components/button) with design-system `Button` classes.
|
|
38
|
+
* Icon-only buttons must include a visible label for assistive tech (`aria-label` or `aria-labelledby`).
|
|
39
|
+
*/
|
|
40
|
+
declare const Button: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_button.ButtonProps, "ref"> & React.RefAttributes<HTMLElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
41
|
+
|
|
42
|
+
type InputProps = React.ComponentProps<typeof Input$1>;
|
|
43
|
+
/**
|
|
44
|
+
* Base UI [Input](https://base-ui.com/react/components/input) with design-system `Input` classes.
|
|
45
|
+
* Pairs with {@link Field} for labels, validation, and descriptions.
|
|
46
|
+
*/
|
|
47
|
+
declare const Input: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_input.InputProps, "ref"> & React.RefAttributes<HTMLElement>, "ref"> & React.RefAttributes<HTMLInputElement>>;
|
|
48
|
+
|
|
49
|
+
type FieldsetRootProps = React.ComponentProps<typeof Fieldset$1.Root>;
|
|
50
|
+
type FieldsetLegendProps = React.ComponentProps<typeof Fieldset$1.Legend>;
|
|
51
|
+
type FieldsetDescriptionProps = React.ComponentProps<'div'>;
|
|
52
|
+
/** Presentational helper — not a Base UI primitive. */
|
|
53
|
+
declare function FieldsetDescription({ className, ...props }: FieldsetDescriptionProps): react_jsx_runtime.JSX.Element;
|
|
54
|
+
/**
|
|
55
|
+
* Base UI [Fieldset](https://base-ui.com/react/components/fieldset) with design-system classes.
|
|
56
|
+
*/
|
|
57
|
+
declare const Fieldset: {
|
|
58
|
+
Root: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_fieldset.FieldsetRootProps, "ref"> & React.RefAttributes<HTMLElement>, "ref"> & React.RefAttributes<HTMLFieldSetElement>>;
|
|
59
|
+
Legend: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_fieldset.FieldsetLegendProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
type FormProps = React.ComponentProps<typeof Form$1>;
|
|
63
|
+
/**
|
|
64
|
+
* Base UI [Form](https://base-ui.com/react/components/form) with design-system `Form` classes.
|
|
65
|
+
*/
|
|
66
|
+
declare const Form: React.ForwardRefExoticComponent<Omit<Form$1.Props<Record<string, any>> & {
|
|
67
|
+
ref?: React.Ref<HTMLFormElement> | undefined;
|
|
68
|
+
}, "ref"> & React.RefAttributes<HTMLFormElement>>;
|
|
69
|
+
type FormActionsProps = React.ComponentProps<'div'>;
|
|
70
|
+
/** Layout helper for primary/secondary actions — not a Base UI primitive. */
|
|
71
|
+
declare function FormActions({ className, ...props }: FormActionsProps): react_jsx_runtime.JSX.Element;
|
|
72
|
+
|
|
73
|
+
type NavigationMenuRootProps = React.ComponentProps<typeof NavigationMenu$1.Root>;
|
|
74
|
+
type NavigationMenuListProps = React.ComponentProps<typeof NavigationMenu$1.List>;
|
|
75
|
+
/**
|
|
76
|
+
* Base UI [Navigation Menu](https://base-ui.com/react/components/navigation-menu) with design-system classes.
|
|
77
|
+
* Prefer `NavigationMenu.Link` with `render={<a />}` (or your router link) for correct semantics.
|
|
78
|
+
*/
|
|
79
|
+
declare const NavigationMenu: {
|
|
80
|
+
Root: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_navigation_menu.NavigationMenuRootProps, "ref"> & React.RefAttributes<HTMLElement>, "ref"> & React.RefAttributes<HTMLElement>>;
|
|
81
|
+
List: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_navigation_menu.NavigationMenuListProps, "ref"> & React.RefAttributes<HTMLUListElement>, "ref"> & React.RefAttributes<HTMLUListElement>>;
|
|
82
|
+
Item: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_navigation_menu.NavigationMenuItemProps, "ref"> & React.RefAttributes<HTMLLIElement>, "ref"> & React.RefAttributes<HTMLLIElement>>;
|
|
83
|
+
Content: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_navigation_menu.NavigationMenuContentProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
84
|
+
Trigger: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_navigation_menu.NavigationMenuTriggerProps, "ref"> & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
85
|
+
Icon: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_navigation_menu.NavigationMenuIconProps, "ref"> & React.RefAttributes<HTMLSpanElement>, "ref"> & React.RefAttributes<HTMLSpanElement>>;
|
|
86
|
+
Portal: React.ForwardRefExoticComponent<Omit<_base_ui_react_navigation_menu.NavigationMenuPortalProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
87
|
+
Positioner: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_navigation_menu.NavigationMenuPositionerProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
88
|
+
Popup: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_navigation_menu.NavigationMenuPopupProps, "ref"> & React.RefAttributes<HTMLElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
89
|
+
Arrow: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_navigation_menu.NavigationMenuArrowProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
90
|
+
Viewport: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_navigation_menu.NavigationMenuViewportProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
91
|
+
Link: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_navigation_menu.NavigationMenuLinkProps, "ref"> & React.RefAttributes<HTMLAnchorElement>, "ref"> & React.RefAttributes<HTMLAnchorElement>>;
|
|
92
|
+
Backdrop: React.ForwardRefExoticComponent<Omit<Omit<_base_ui_react_navigation_menu.NavigationMenuBackdropProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
type FieldRootProps = React.ComponentProps<typeof Field.Root>;
|
|
96
|
+
type FieldLabelProps = React.ComponentProps<typeof Field.Label>;
|
|
97
|
+
type FieldDescriptionProps = React.ComponentProps<typeof Field.Description>;
|
|
98
|
+
type FieldErrorProps = React.ComponentProps<typeof Field.Error>;
|
|
99
|
+
type FieldControlProps = React.ComponentProps<typeof Field.Control>;
|
|
100
|
+
type FieldValidityProps = React.ComponentProps<typeof Field.Validity>;
|
|
101
|
+
type FieldItemProps = React.ComponentProps<typeof Field.Item>;
|
|
102
|
+
|
|
103
|
+
export { Button, type ButtonProps, Field, type FieldControlProps, type FieldDescriptionProps, type FieldErrorProps, type FieldItemProps, type FieldLabelProps, type FieldRootProps, type FieldValidityProps, Fieldset, FieldsetDescription, type FieldsetDescriptionProps, type FieldsetLegendProps, type FieldsetRootProps, Form, FormActions, type FormActionsProps, type FormProps, Input, type InputProps, NavigationMenu, type NavigationMenuListProps, type NavigationMenuRootProps, cn, cnState };
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,313 @@
|
|
|
1
|
+
import * as React6 from 'react';
|
|
2
|
+
import { Button as Button$1 } from '@base-ui/react/button';
|
|
3
|
+
import { jsx } from 'react/jsx-runtime';
|
|
4
|
+
import { Input as Input$1 } from '@base-ui/react/input';
|
|
5
|
+
import { Field as Field$1 } from '@base-ui/react/field';
|
|
6
|
+
import { Fieldset as Fieldset$1 } from '@base-ui/react/fieldset';
|
|
7
|
+
import { Form as Form$1 } from '@base-ui/react/form';
|
|
8
|
+
import { NavigationMenu as NavigationMenu$1 } from '@base-ui/react/navigation-menu';
|
|
9
|
+
|
|
10
|
+
// src/lib/utils/cn.ts
|
|
11
|
+
function cn(...inputs) {
|
|
12
|
+
const out = [];
|
|
13
|
+
for (const input of inputs) {
|
|
14
|
+
if (input == null || input === false) continue;
|
|
15
|
+
if (typeof input === "string" || typeof input === "number") {
|
|
16
|
+
out.push(String(input));
|
|
17
|
+
} else if (Array.isArray(input)) {
|
|
18
|
+
const inner = cn(...input);
|
|
19
|
+
if (inner) out.push(inner);
|
|
20
|
+
} else if (typeof input === "object") {
|
|
21
|
+
for (const [k, v] of Object.entries(input)) {
|
|
22
|
+
if (v) out.push(k);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
return out.join(" ");
|
|
27
|
+
}
|
|
28
|
+
function cnState(base, className, state) {
|
|
29
|
+
return cn(base, typeof className === "function" ? className(state) : className);
|
|
30
|
+
}
|
|
31
|
+
var Button = React6.forwardRef(function Button2({ className, ...props }, ref) {
|
|
32
|
+
return /* @__PURE__ */ jsx(
|
|
33
|
+
Button$1,
|
|
34
|
+
{
|
|
35
|
+
ref,
|
|
36
|
+
...props,
|
|
37
|
+
className: (state) => cnState("Button", className, state)
|
|
38
|
+
}
|
|
39
|
+
);
|
|
40
|
+
});
|
|
41
|
+
Button.displayName = "Button";
|
|
42
|
+
var Input = React6.forwardRef(function Input2({ className, ...props }, ref) {
|
|
43
|
+
return /* @__PURE__ */ jsx(Input$1, { ref, ...props, className: (state) => cnState("Input", className, state) });
|
|
44
|
+
});
|
|
45
|
+
Input.displayName = "Input";
|
|
46
|
+
var Root = React6.forwardRef(
|
|
47
|
+
function FieldRoot({ className, ...props }, ref) {
|
|
48
|
+
return /* @__PURE__ */ jsx(
|
|
49
|
+
Field$1.Root,
|
|
50
|
+
{
|
|
51
|
+
ref,
|
|
52
|
+
...props,
|
|
53
|
+
className: (state) => cnState("FieldRoot", className, state)
|
|
54
|
+
}
|
|
55
|
+
);
|
|
56
|
+
}
|
|
57
|
+
);
|
|
58
|
+
var Label = React6.forwardRef(
|
|
59
|
+
function FieldLabel({ className, ...props }, ref) {
|
|
60
|
+
return /* @__PURE__ */ jsx(
|
|
61
|
+
Field$1.Label,
|
|
62
|
+
{
|
|
63
|
+
ref,
|
|
64
|
+
...props,
|
|
65
|
+
className: (state) => cnState("FieldLabel", className, state)
|
|
66
|
+
}
|
|
67
|
+
);
|
|
68
|
+
}
|
|
69
|
+
);
|
|
70
|
+
var Description = React6.forwardRef(function FieldDescription({ className, ...props }, ref) {
|
|
71
|
+
return /* @__PURE__ */ jsx(
|
|
72
|
+
Field$1.Description,
|
|
73
|
+
{
|
|
74
|
+
ref,
|
|
75
|
+
...props,
|
|
76
|
+
className: (state) => cnState("FieldDescription", className, state)
|
|
77
|
+
}
|
|
78
|
+
);
|
|
79
|
+
});
|
|
80
|
+
var Error = React6.forwardRef(
|
|
81
|
+
function FieldError({ className, ...props }, ref) {
|
|
82
|
+
return /* @__PURE__ */ jsx(
|
|
83
|
+
Field$1.Error,
|
|
84
|
+
{
|
|
85
|
+
ref,
|
|
86
|
+
...props,
|
|
87
|
+
className: (state) => cnState("FieldError", className, state)
|
|
88
|
+
}
|
|
89
|
+
);
|
|
90
|
+
}
|
|
91
|
+
);
|
|
92
|
+
var Control = React6.forwardRef(
|
|
93
|
+
function FieldControl({ className, ...props }, ref) {
|
|
94
|
+
return /* @__PURE__ */ jsx(
|
|
95
|
+
Field$1.Control,
|
|
96
|
+
{
|
|
97
|
+
ref,
|
|
98
|
+
...props,
|
|
99
|
+
className: (state) => cnState("FieldControl", className, state)
|
|
100
|
+
}
|
|
101
|
+
);
|
|
102
|
+
}
|
|
103
|
+
);
|
|
104
|
+
var Validity = Field$1.Validity;
|
|
105
|
+
var Item = React6.forwardRef(
|
|
106
|
+
function FieldItem({ className, ...props }, ref) {
|
|
107
|
+
return /* @__PURE__ */ jsx(
|
|
108
|
+
Field$1.Item,
|
|
109
|
+
{
|
|
110
|
+
ref,
|
|
111
|
+
...props,
|
|
112
|
+
className: (state) => cnState("", className, state)
|
|
113
|
+
}
|
|
114
|
+
);
|
|
115
|
+
}
|
|
116
|
+
);
|
|
117
|
+
var Field = {
|
|
118
|
+
Root,
|
|
119
|
+
Label,
|
|
120
|
+
Description,
|
|
121
|
+
Error,
|
|
122
|
+
Control,
|
|
123
|
+
Validity,
|
|
124
|
+
Item
|
|
125
|
+
};
|
|
126
|
+
var Root2 = React6.forwardRef(function FieldsetRoot({ className, ...props }, ref) {
|
|
127
|
+
return /* @__PURE__ */ jsx(
|
|
128
|
+
Fieldset$1.Root,
|
|
129
|
+
{
|
|
130
|
+
ref,
|
|
131
|
+
...props,
|
|
132
|
+
className: (state) => cnState("Fieldset", className, state)
|
|
133
|
+
}
|
|
134
|
+
);
|
|
135
|
+
});
|
|
136
|
+
var Legend = React6.forwardRef(function FieldsetLegend({ className, ...props }, ref) {
|
|
137
|
+
return /* @__PURE__ */ jsx(
|
|
138
|
+
Fieldset$1.Legend,
|
|
139
|
+
{
|
|
140
|
+
ref,
|
|
141
|
+
...props,
|
|
142
|
+
className: (state) => cnState("FieldsetLegend", className, state)
|
|
143
|
+
}
|
|
144
|
+
);
|
|
145
|
+
});
|
|
146
|
+
function FieldsetDescription({ className, ...props }) {
|
|
147
|
+
return /* @__PURE__ */ jsx("div", { className: cn("FieldsetDescription", className), ...props });
|
|
148
|
+
}
|
|
149
|
+
var Fieldset = {
|
|
150
|
+
Root: Root2,
|
|
151
|
+
Legend
|
|
152
|
+
};
|
|
153
|
+
var Form = React6.forwardRef(function Form2({ className, ...props }, ref) {
|
|
154
|
+
return /* @__PURE__ */ jsx(Form$1, { ref, ...props, className: (state) => cnState("Form", className, state) });
|
|
155
|
+
});
|
|
156
|
+
Form.displayName = "Form";
|
|
157
|
+
function FormActions({ className, ...props }) {
|
|
158
|
+
return /* @__PURE__ */ jsx("div", { className: cn("FormActions", className), ...props });
|
|
159
|
+
}
|
|
160
|
+
var Root3 = React6.forwardRef(
|
|
161
|
+
function NavigationMenuRoot({ className, ...props }, ref) {
|
|
162
|
+
return /* @__PURE__ */ jsx(
|
|
163
|
+
NavigationMenu$1.Root,
|
|
164
|
+
{
|
|
165
|
+
ref,
|
|
166
|
+
...props,
|
|
167
|
+
className: (state) => cnState("NavigationMenuRoot", className, state)
|
|
168
|
+
}
|
|
169
|
+
);
|
|
170
|
+
}
|
|
171
|
+
);
|
|
172
|
+
var List = React6.forwardRef(
|
|
173
|
+
function NavigationMenuList({ className, ...props }, ref) {
|
|
174
|
+
return /* @__PURE__ */ jsx(
|
|
175
|
+
NavigationMenu$1.List,
|
|
176
|
+
{
|
|
177
|
+
ref,
|
|
178
|
+
...props,
|
|
179
|
+
className: (state) => cnState("NavigationMenuList", className, state)
|
|
180
|
+
}
|
|
181
|
+
);
|
|
182
|
+
}
|
|
183
|
+
);
|
|
184
|
+
var Item2 = React6.forwardRef(
|
|
185
|
+
function NavigationMenuItem({ className, ...props }, ref) {
|
|
186
|
+
return /* @__PURE__ */ jsx(
|
|
187
|
+
NavigationMenu$1.Item,
|
|
188
|
+
{
|
|
189
|
+
ref,
|
|
190
|
+
...props,
|
|
191
|
+
className: (state) => cnState("", className, state)
|
|
192
|
+
}
|
|
193
|
+
);
|
|
194
|
+
}
|
|
195
|
+
);
|
|
196
|
+
var Content = React6.forwardRef(function NavigationMenuContent({ className, ...props }, ref) {
|
|
197
|
+
return /* @__PURE__ */ jsx(
|
|
198
|
+
NavigationMenu$1.Content,
|
|
199
|
+
{
|
|
200
|
+
ref,
|
|
201
|
+
...props,
|
|
202
|
+
className: (state) => cnState("NavigationMenuContent", className, state)
|
|
203
|
+
}
|
|
204
|
+
);
|
|
205
|
+
});
|
|
206
|
+
var Trigger = React6.forwardRef(function NavigationMenuTrigger({ className, ...props }, ref) {
|
|
207
|
+
return /* @__PURE__ */ jsx(
|
|
208
|
+
NavigationMenu$1.Trigger,
|
|
209
|
+
{
|
|
210
|
+
ref,
|
|
211
|
+
...props,
|
|
212
|
+
className: (state) => cnState("NavigationMenuTrigger", className, state)
|
|
213
|
+
}
|
|
214
|
+
);
|
|
215
|
+
});
|
|
216
|
+
var Icon = React6.forwardRef(
|
|
217
|
+
function NavigationMenuIcon({ className, ...props }, ref) {
|
|
218
|
+
return /* @__PURE__ */ jsx(
|
|
219
|
+
NavigationMenu$1.Icon,
|
|
220
|
+
{
|
|
221
|
+
ref,
|
|
222
|
+
...props,
|
|
223
|
+
className: (state) => cnState("NavigationMenuIcon", className, state)
|
|
224
|
+
}
|
|
225
|
+
);
|
|
226
|
+
}
|
|
227
|
+
);
|
|
228
|
+
var Portal = NavigationMenu$1.Portal;
|
|
229
|
+
var Positioner = React6.forwardRef(function NavigationMenuPositioner({ className, ...props }, ref) {
|
|
230
|
+
return /* @__PURE__ */ jsx(
|
|
231
|
+
NavigationMenu$1.Positioner,
|
|
232
|
+
{
|
|
233
|
+
ref,
|
|
234
|
+
...props,
|
|
235
|
+
className: (state) => cnState("NavigationMenuPositioner", className, state)
|
|
236
|
+
}
|
|
237
|
+
);
|
|
238
|
+
});
|
|
239
|
+
var Popup = React6.forwardRef(
|
|
240
|
+
function NavigationMenuPopup({ className, ...props }, ref) {
|
|
241
|
+
return /* @__PURE__ */ jsx(
|
|
242
|
+
NavigationMenu$1.Popup,
|
|
243
|
+
{
|
|
244
|
+
ref,
|
|
245
|
+
...props,
|
|
246
|
+
className: (state) => cnState("NavigationMenuPopup", className, state)
|
|
247
|
+
}
|
|
248
|
+
);
|
|
249
|
+
}
|
|
250
|
+
);
|
|
251
|
+
var Arrow = React6.forwardRef(
|
|
252
|
+
function NavigationMenuArrow({ className, ...props }, ref) {
|
|
253
|
+
return /* @__PURE__ */ jsx(
|
|
254
|
+
NavigationMenu$1.Arrow,
|
|
255
|
+
{
|
|
256
|
+
ref,
|
|
257
|
+
...props,
|
|
258
|
+
className: (state) => cnState("NavigationMenuArrow", className, state)
|
|
259
|
+
}
|
|
260
|
+
);
|
|
261
|
+
}
|
|
262
|
+
);
|
|
263
|
+
var Viewport = React6.forwardRef(function NavigationMenuViewport({ className, ...props }, ref) {
|
|
264
|
+
return /* @__PURE__ */ jsx(
|
|
265
|
+
NavigationMenu$1.Viewport,
|
|
266
|
+
{
|
|
267
|
+
ref,
|
|
268
|
+
...props,
|
|
269
|
+
className: (state) => cnState("NavigationMenuViewport", className, state)
|
|
270
|
+
}
|
|
271
|
+
);
|
|
272
|
+
});
|
|
273
|
+
var Link = React6.forwardRef(
|
|
274
|
+
function NavigationMenuLink({ className, ...props }, ref) {
|
|
275
|
+
return /* @__PURE__ */ jsx(
|
|
276
|
+
NavigationMenu$1.Link,
|
|
277
|
+
{
|
|
278
|
+
ref,
|
|
279
|
+
...props,
|
|
280
|
+
className: (state) => cnState("NavigationMenuLink", className, state)
|
|
281
|
+
}
|
|
282
|
+
);
|
|
283
|
+
}
|
|
284
|
+
);
|
|
285
|
+
var Backdrop = React6.forwardRef(function NavigationMenuBackdrop({ className, ...props }, ref) {
|
|
286
|
+
return /* @__PURE__ */ jsx(
|
|
287
|
+
NavigationMenu$1.Backdrop,
|
|
288
|
+
{
|
|
289
|
+
ref,
|
|
290
|
+
...props,
|
|
291
|
+
className: (state) => cnState("", className, state)
|
|
292
|
+
}
|
|
293
|
+
);
|
|
294
|
+
});
|
|
295
|
+
var NavigationMenu = {
|
|
296
|
+
Root: Root3,
|
|
297
|
+
List,
|
|
298
|
+
Item: Item2,
|
|
299
|
+
Content,
|
|
300
|
+
Trigger,
|
|
301
|
+
Icon,
|
|
302
|
+
Portal,
|
|
303
|
+
Positioner,
|
|
304
|
+
Popup,
|
|
305
|
+
Arrow,
|
|
306
|
+
Viewport,
|
|
307
|
+
Link,
|
|
308
|
+
Backdrop
|
|
309
|
+
};
|
|
310
|
+
|
|
311
|
+
export { Button, Field, Fieldset, FieldsetDescription, Form, FormActions, Input, NavigationMenu, cn, cnState };
|
|
312
|
+
//# sourceMappingURL=index.js.map
|
|
313
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/lib/utils/cn.ts","../src/lib/components/button.tsx","../src/lib/components/input.tsx","../src/lib/components/field.tsx","../src/lib/components/fieldset.tsx","../src/lib/components/form.tsx","../src/lib/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\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, ...props },\n ref,\n) {\n return (\n <BaseButton\n ref={ref}\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"]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/* Borders & Radii - Mojave Theme */
|
|
2
|
+
/* Modern border radius scale using custom properties */
|
|
3
|
+
|
|
4
|
+
:root {
|
|
5
|
+
/* ============================================
|
|
6
|
+
BORDER WIDTHS
|
|
7
|
+
============================================ */
|
|
8
|
+
|
|
9
|
+
--border-width-thin: 1px;
|
|
10
|
+
--border-width-medium: 2px;
|
|
11
|
+
--border-width-thick: 3px;
|
|
12
|
+
|
|
13
|
+
/* ============================================
|
|
14
|
+
BORDER RADIUS
|
|
15
|
+
============================================ */
|
|
16
|
+
|
|
17
|
+
--border-radius-none: 0;
|
|
18
|
+
--border-radius-sm: 0.125rem; /* 2px */
|
|
19
|
+
--border-radius-base: 0.25rem; /* 4px */
|
|
20
|
+
--border-radius-md: 0.375rem; /* 6px */
|
|
21
|
+
--border-radius-lg: 0.5rem; /* 8px */
|
|
22
|
+
--border-radius-xl: 0.75rem; /* 12px */
|
|
23
|
+
--border-radius-2xl: 1rem; /* 16px */
|
|
24
|
+
--border-radius-3xl: 1.5rem; /* 24px */
|
|
25
|
+
--border-radius-full: 9999px;
|
|
26
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/* Breakpoints - Mojave Theme */
|
|
2
|
+
/* Modern breakpoint scale using custom properties */
|
|
3
|
+
|
|
4
|
+
:root {
|
|
5
|
+
/* ============================================
|
|
6
|
+
BREAKPOINT SCALE
|
|
7
|
+
============================================ */
|
|
8
|
+
--breakpoint-sm: 30em; /* 480px */
|
|
9
|
+
--breakpoint-md: 48em; /* 768px */
|
|
10
|
+
--breakpoint-lg: 62em; /* 992px */
|
|
11
|
+
--breakpoint-xl: 80em; /* 1280px */
|
|
12
|
+
--breakpoint-2xl: 96em; /* 1536px */
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/* ============================================
|
|
16
|
+
RESPONSIVE CONTAINER SIZES
|
|
17
|
+
============================================ */
|
|
18
|
+
@supports (container-type: inline-size) {
|
|
19
|
+
:root {
|
|
20
|
+
--container-sm: 30rem;
|
|
21
|
+
--container-md: 48rem;
|
|
22
|
+
--container-lg: 62rem;
|
|
23
|
+
--container-xl: 80rem;
|
|
24
|
+
--container-2xl: 96rem;
|
|
25
|
+
}
|
|
26
|
+
}
|