@ecopages/radiant-ui 0.1.0-beta.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 +70 -0
- package/dist/components/ui/alert/alert.css +27 -0
- package/dist/components/ui/alert/alert.d.ts +4 -0
- package/dist/components/ui/alert/alert.script.d.ts +25 -0
- package/dist/components/ui/alert/index.d.ts +2 -0
- package/dist/components/ui/alert/index.js +2 -0
- package/dist/components/ui/alert/index.js.map +7 -0
- package/dist/components/ui/breadcrumb/breadcrumb.css +41 -0
- package/dist/components/ui/breadcrumb/breadcrumb.d.ts +59 -0
- package/dist/components/ui/breadcrumb/breadcrumb.script.d.ts +40 -0
- package/dist/components/ui/breadcrumb/index.d.ts +2 -0
- package/dist/components/ui/breadcrumb/index.js +2 -0
- package/dist/components/ui/breadcrumb/index.js.map +7 -0
- package/dist/components/ui/button/button.d.ts +37 -0
- package/dist/components/ui/button/index.d.ts +1 -0
- package/dist/components/ui/button/index.js +2 -0
- package/dist/components/ui/button/index.js.map +7 -0
- package/dist/components/ui/carousel/carousel.css +170 -0
- package/dist/components/ui/carousel/carousel.d.ts +39 -0
- package/dist/components/ui/carousel/carousel.script.d.ts +113 -0
- package/dist/components/ui/carousel/index.d.ts +2 -0
- package/dist/components/ui/carousel/index.js +2 -0
- package/dist/components/ui/carousel/index.js.map +7 -0
- package/dist/components/ui/checkbox/checkbox.css +55 -0
- package/dist/components/ui/checkbox/checkbox.d.ts +4 -0
- package/dist/components/ui/checkbox/checkbox.script.d.ts +58 -0
- package/dist/components/ui/checkbox/index.d.ts +2 -0
- package/dist/components/ui/checkbox/index.js +2 -0
- package/dist/components/ui/checkbox/index.js.map +7 -0
- package/dist/components/ui/combobox/combobox.css +65 -0
- package/dist/components/ui/combobox/combobox.d.ts +53 -0
- package/dist/components/ui/combobox/combobox.script.d.ts +89 -0
- package/dist/components/ui/combobox/index.d.ts +2 -0
- package/dist/components/ui/combobox/index.js +2 -0
- package/dist/components/ui/combobox/index.js.map +7 -0
- package/dist/components/ui/dialog/dialog-registry.d.ts +34 -0
- package/dist/components/ui/dialog/dialog-registry.test.d.ts +1 -0
- package/dist/components/ui/dialog/dialog-types.d.ts +55 -0
- package/dist/components/ui/dialog/dialog.css +53 -0
- package/dist/components/ui/dialog/dialog.d.ts +36 -0
- package/dist/components/ui/dialog/dialog.script.d.ts +61 -0
- package/dist/components/ui/dialog/index.d.ts +4 -0
- package/dist/components/ui/dialog/index.js +2 -0
- package/dist/components/ui/dialog/index.js.map +7 -0
- package/dist/components/ui/disclosure/disclosure-group.script.d.ts +31 -0
- package/dist/components/ui/disclosure/disclosure.css +105 -0
- package/dist/components/ui/disclosure/disclosure.d.ts +35 -0
- package/dist/components/ui/disclosure/disclosure.script.d.ts +38 -0
- package/dist/components/ui/disclosure/index.d.ts +3 -0
- package/dist/components/ui/disclosure/index.js +2 -0
- package/dist/components/ui/disclosure/index.js.map +7 -0
- package/dist/components/ui/feed/feed.css +14 -0
- package/dist/components/ui/feed/feed.d.ts +12 -0
- package/dist/components/ui/feed/feed.script.d.ts +22 -0
- package/dist/components/ui/feed/index.d.ts +2 -0
- package/dist/components/ui/feed/index.js +2 -0
- package/dist/components/ui/feed/index.js.map +7 -0
- package/dist/components/ui/field/field-context.d.ts +20 -0
- package/dist/components/ui/field/field-description.d.ts +8 -0
- package/dist/components/ui/field/field-error.d.ts +9 -0
- package/dist/components/ui/field/field-ssr-hydration.test.d.ts +1 -0
- package/dist/components/ui/field/field.css +26 -0
- package/dist/components/ui/field/field.d.ts +4 -0
- package/dist/components/ui/field/field.script.d.ts +68 -0
- package/dist/components/ui/field/index.d.ts +5 -0
- package/dist/components/ui/field/index.js +2 -0
- package/dist/components/ui/field/index.js.map +7 -0
- package/dist/components/ui/form/control-protocol.d.ts +19 -0
- package/dist/components/ui/form/form-context.d.ts +27 -0
- package/dist/components/ui/form/form-field.test.d.ts +3 -0
- package/dist/components/ui/form/form-store.d.ts +53 -0
- package/dist/components/ui/form/form-store.test.d.ts +1 -0
- package/dist/components/ui/form/form.css +12 -0
- package/dist/components/ui/form/form.d.ts +5 -0
- package/dist/components/ui/form/form.script.d.ts +67 -0
- package/dist/components/ui/form/index.d.ts +7 -0
- package/dist/components/ui/form/index.js +2 -0
- package/dist/components/ui/form/index.js.map +7 -0
- package/dist/components/ui/form/resolvers.d.ts +3 -0
- package/dist/components/ui/form/types.d.ts +72 -0
- package/dist/components/ui/grid/grid.css +47 -0
- package/dist/components/ui/grid/grid.d.ts +7 -0
- package/dist/components/ui/grid/grid.script.d.ts +26 -0
- package/dist/components/ui/grid/index.d.ts +2 -0
- package/dist/components/ui/grid/index.js +2 -0
- package/dist/components/ui/grid/index.js.map +7 -0
- package/dist/components/ui/input/index.d.ts +1 -0
- package/dist/components/ui/input/index.js +2 -0
- package/dist/components/ui/input/index.js.map +7 -0
- package/dist/components/ui/input/input.css +32 -0
- package/dist/components/ui/input/input.d.ts +23 -0
- package/dist/components/ui/label/index.d.ts +1 -0
- package/dist/components/ui/label/index.js +2 -0
- package/dist/components/ui/label/index.js.map +7 -0
- package/dist/components/ui/label/label.css +8 -0
- package/dist/components/ui/label/label.d.ts +9 -0
- package/dist/components/ui/listbox/index.d.ts +2 -0
- package/dist/components/ui/listbox/index.js +2 -0
- package/dist/components/ui/listbox/index.js.map +7 -0
- package/dist/components/ui/listbox/listbox.css +23 -0
- package/dist/components/ui/listbox/listbox.d.ts +12 -0
- package/dist/components/ui/listbox/listbox.script.d.ts +40 -0
- package/dist/components/ui/menu-button/index.d.ts +2 -0
- package/dist/components/ui/menu-button/index.js +2 -0
- package/dist/components/ui/menu-button/index.js.map +7 -0
- package/dist/components/ui/menu-button/menu-button.css +43 -0
- package/dist/components/ui/menu-button/menu-button.d.ts +13 -0
- package/dist/components/ui/menu-button/menu-button.script.d.ts +64 -0
- package/dist/components/ui/menubar/index.d.ts +2 -0
- package/dist/components/ui/menubar/index.js +2 -0
- package/dist/components/ui/menubar/index.js.map +7 -0
- package/dist/components/ui/menubar/menubar.css +45 -0
- package/dist/components/ui/menubar/menubar.d.ts +16 -0
- package/dist/components/ui/menubar/menubar.script.d.ts +52 -0
- package/dist/components/ui/meter/index.d.ts +2 -0
- package/dist/components/ui/meter/index.js +2 -0
- package/dist/components/ui/meter/index.js.map +7 -0
- package/dist/components/ui/meter/meter.css +17 -0
- package/dist/components/ui/meter/meter.d.ts +4 -0
- package/dist/components/ui/meter/meter.script.d.ts +33 -0
- package/dist/components/ui/navigation-menu/index.d.ts +2 -0
- package/dist/components/ui/navigation-menu/index.js +2 -0
- package/dist/components/ui/navigation-menu/index.js.map +7 -0
- package/dist/components/ui/navigation-menu/navigation-menu.css +90 -0
- package/dist/components/ui/navigation-menu/navigation-menu.d.ts +28 -0
- package/dist/components/ui/navigation-menu/navigation-menu.script.d.ts +49 -0
- package/dist/components/ui/radio-group/index.d.ts +2 -0
- package/dist/components/ui/radio-group/index.js +2 -0
- package/dist/components/ui/radio-group/index.js.map +7 -0
- package/dist/components/ui/radio-group/radio-group.css +44 -0
- package/dist/components/ui/radio-group/radio-group.d.ts +12 -0
- package/dist/components/ui/radio-group/radio-group.script.d.ts +52 -0
- package/dist/components/ui/sidebar/index.d.ts +3 -0
- package/dist/components/ui/sidebar/index.js +2 -0
- package/dist/components/ui/sidebar/index.js.map +7 -0
- package/dist/components/ui/sidebar/sidebar-trigger.script.d.ts +53 -0
- package/dist/components/ui/sidebar/sidebar.css +362 -0
- package/dist/components/ui/sidebar/sidebar.d.ts +141 -0
- package/dist/components/ui/sidebar/sidebar.script.d.ts +140 -0
- package/dist/components/ui/sidebar/sidebar.test.d.ts +1 -0
- package/dist/components/ui/slider/index.d.ts +2 -0
- package/dist/components/ui/slider/index.js +2 -0
- package/dist/components/ui/slider/index.js.map +7 -0
- package/dist/components/ui/slider/slider.css +51 -0
- package/dist/components/ui/slider/slider.d.ts +7 -0
- package/dist/components/ui/slider/slider.script.d.ts +102 -0
- package/dist/components/ui/spinbutton/index.d.ts +2 -0
- package/dist/components/ui/spinbutton/index.js +2 -0
- package/dist/components/ui/spinbutton/index.js.map +7 -0
- package/dist/components/ui/spinbutton/spinbutton.css +19 -0
- package/dist/components/ui/spinbutton/spinbutton.d.ts +4 -0
- package/dist/components/ui/spinbutton/spinbutton.script.d.ts +64 -0
- package/dist/components/ui/switch/index.d.ts +2 -0
- package/dist/components/ui/switch/index.js +2 -0
- package/dist/components/ui/switch/index.js.map +7 -0
- package/dist/components/ui/switch/switch.css +47 -0
- package/dist/components/ui/switch/switch.d.ts +4 -0
- package/dist/components/ui/switch/switch.script.d.ts +51 -0
- package/dist/components/ui/tabs/index.d.ts +2 -0
- package/dist/components/ui/tabs/index.js +2 -0
- package/dist/components/ui/tabs/index.js.map +7 -0
- package/dist/components/ui/tabs/tabs.css +28 -0
- package/dist/components/ui/tabs/tabs.d.ts +12 -0
- package/dist/components/ui/tabs/tabs.script.d.ts +54 -0
- package/dist/components/ui/textarea/index.d.ts +1 -0
- package/dist/components/ui/textarea/index.js +2 -0
- package/dist/components/ui/textarea/index.js.map +7 -0
- package/dist/components/ui/textarea/textarea.css +33 -0
- package/dist/components/ui/textarea/textarea.d.ts +23 -0
- package/dist/components/ui/toast/index.d.ts +5 -0
- package/dist/components/ui/toast/index.js +2 -0
- package/dist/components/ui/toast/index.js.map +7 -0
- package/dist/components/ui/toast/toast-api.d.ts +29 -0
- package/dist/components/ui/toast/toast-context.d.ts +59 -0
- package/dist/components/ui/toast/toast-state.d.ts +25 -0
- package/dist/components/ui/toast/toast.css +315 -0
- package/dist/components/ui/toast/toast.d.ts +8 -0
- package/dist/components/ui/toast/toast.script.d.ts +91 -0
- package/dist/components/ui/toast/toast.test.d.ts +2 -0
- package/dist/components/ui/toast/toaster.script.d.ts +79 -0
- package/dist/components/ui/toolbar/index.d.ts +2 -0
- package/dist/components/ui/toolbar/index.js +2 -0
- package/dist/components/ui/toolbar/index.js.map +7 -0
- package/dist/components/ui/toolbar/toolbar.css +16 -0
- package/dist/components/ui/toolbar/toolbar.d.ts +4 -0
- package/dist/components/ui/toolbar/toolbar.script.d.ts +30 -0
- package/dist/components/ui/tooltip/index.d.ts +2 -0
- package/dist/components/ui/tooltip/index.js +2 -0
- package/dist/components/ui/tooltip/index.js.map +7 -0
- package/dist/components/ui/tooltip/tooltip.css +25 -0
- package/dist/components/ui/tooltip/tooltip.d.ts +4 -0
- package/dist/components/ui/tooltip/tooltip.script.d.ts +70 -0
- package/dist/components/ui/tree/index.d.ts +2 -0
- package/dist/components/ui/tree/index.js +2 -0
- package/dist/components/ui/tree/index.js.map +7 -0
- package/dist/components/ui/tree/tree.css +54 -0
- package/dist/components/ui/tree/tree.d.ts +13 -0
- package/dist/components/ui/tree/tree.script.d.ts +45 -0
- package/dist/components/ui/treegrid/index.d.ts +2 -0
- package/dist/components/ui/treegrid/index.js +2 -0
- package/dist/components/ui/treegrid/index.js.map +7 -0
- package/dist/components/ui/treegrid/treegrid.css +77 -0
- package/dist/components/ui/treegrid/treegrid.d.ts +14 -0
- package/dist/components/ui/treegrid/treegrid.script.d.ts +49 -0
- package/dist/components/ui/window-splitter/index.d.ts +2 -0
- package/dist/components/ui/window-splitter/index.js +2 -0
- package/dist/components/ui/window-splitter/index.js.map +7 -0
- package/dist/components/ui/window-splitter/window-splitter.css +35 -0
- package/dist/components/ui/window-splitter/window-splitter.d.ts +8 -0
- package/dist/components/ui/window-splitter/window-splitter.script.d.ts +49 -0
- package/dist/index.d.ts +36 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +7 -0
- package/dist/lib/focusable-elements.d.ts +2 -0
- package/dist/lib/radiant-view.d.ts +17 -0
- package/dist/lib/roving-tabindex.d.ts +27 -0
- package/dist/styles/components/button.css +115 -0
- package/dist/styles/radiant-ui-core.css +7 -0
- package/dist/styles/radiant-ui.css +10 -0
- package/dist/styles/styles.css +36 -0
- package/dist/styles/tailwind.css +41 -0
- package/dist/styles/themes/aurora.css +19 -0
- package/dist/styles/themes/default-compact-soft.css +19 -0
- package/dist/styles/themes/default.css +2 -0
- package/dist/styles/themes/glacier.css +19 -0
- package/dist/styles/tokens/colors/aurora.css +73 -0
- package/dist/styles/tokens/colors/basalt.css +36 -0
- package/dist/styles/tokens/colors/glacier.css +45 -0
- package/dist/styles/tokens/colors/palettes.css +3 -0
- package/dist/styles/tokens/elevation/default.css +22 -0
- package/dist/styles/tokens/elevation/flat.css +22 -0
- package/dist/styles/tokens/motion/default.css +19 -0
- package/dist/styles/tokens/motion/snappy.css +19 -0
- package/dist/styles/tokens/presets/colors/aurora.css +126 -0
- package/dist/styles/tokens/presets/colors/basalt.css +126 -0
- package/dist/styles/tokens/presets/colors/ember.css +134 -0
- package/dist/styles/tokens/presets/colors/glacier.css +130 -0
- package/dist/styles/tokens/presets/colors/index.css +4 -0
- package/dist/styles/tokens/presets/radius.css +45 -0
- package/dist/styles/tokens/presets/spacing.css +57 -0
- package/dist/styles/tokens/radius/default.css +34 -0
- package/dist/styles/tokens/radius/edgy.css +35 -0
- package/dist/styles/tokens/radius/sharp.css +2 -0
- package/dist/styles/tokens/radius/soft.css +34 -0
- package/dist/styles/tokens/semantic.css +80 -0
- package/dist/styles/tokens/spacing/compact.css +23 -0
- package/dist/styles/tokens/spacing/default.css +23 -0
- package/dist/styles/tokens/spacing/scale-bridge.css +17 -0
- package/dist/styles/tokens/spacing/wide.css +23 -0
- package/dist/styles/tokens/system.css +36 -0
- package/dist/styles/tokens/typography/default.css +37 -0
- package/dist/styles/utilities/sheen.css +7 -0
- package/dist/types.d.ts +14 -0
- package/package.json +371 -0
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { JsxRenderable } from '@ecopages/jsx';
|
|
2
|
+
declare const RADIANT_VIEW_ELEMENT: unique symbol;
|
|
3
|
+
declare const RADIANT_SCRIPT_MODULE: unique symbol;
|
|
4
|
+
declare const RADIANT_SCRIPT_EXPORT: unique symbol;
|
|
5
|
+
export type RadiantViewComponent<TArgs = unknown> = ((args: TArgs) => JsxRenderable) & {
|
|
6
|
+
[RADIANT_VIEW_ELEMENT]?: CustomElementConstructor;
|
|
7
|
+
[RADIANT_SCRIPT_MODULE]?: string;
|
|
8
|
+
[RADIANT_SCRIPT_EXPORT]?: string;
|
|
9
|
+
};
|
|
10
|
+
/** Link a JSX view export to its RadiantElement class (same symbols as the Storybook framework). */
|
|
11
|
+
export declare function defineRadiantView<TArgs>(element: CustomElementConstructor & {
|
|
12
|
+
[RADIANT_SCRIPT_MODULE]?: string;
|
|
13
|
+
[RADIANT_SCRIPT_EXPORT]?: string;
|
|
14
|
+
}, render: (args: TArgs) => JsxRenderable): RadiantViewComponent<TArgs>;
|
|
15
|
+
/** Re-copy SSR metadata from the linked element (e.g. after HMR). */
|
|
16
|
+
export declare function syncRadiantViewMetadata(view: RadiantViewComponent): void;
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export type RovingOrientation = 'horizontal' | 'vertical';
|
|
2
|
+
export type RovingNavResult = {
|
|
3
|
+
handled: false;
|
|
4
|
+
} | {
|
|
5
|
+
handled: true;
|
|
6
|
+
index: number;
|
|
7
|
+
item: HTMLElement;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Apply the APG roving-tabindex pattern: one item is tabbable, the rest are `-1`.
|
|
11
|
+
*/
|
|
12
|
+
export declare function applyRovingTabindex(items: HTMLElement[], activeIndex: number): void;
|
|
13
|
+
/**
|
|
14
|
+
* Focus `items[index]` and update tabindexes. Returns the focused item, or null.
|
|
15
|
+
*/
|
|
16
|
+
export declare function focusRovingItem(items: HTMLElement[], index: number): HTMLElement | null;
|
|
17
|
+
/**
|
|
18
|
+
* Handle arrow / Home / End navigation for a flat roving-tabindex collection.
|
|
19
|
+
* Does not activate the item — callers decide whether to select on move.
|
|
20
|
+
*/
|
|
21
|
+
export declare function navigateRovingTabindex(options: {
|
|
22
|
+
items: HTMLElement[];
|
|
23
|
+
current: HTMLElement | null;
|
|
24
|
+
key: string;
|
|
25
|
+
orientation?: RovingOrientation;
|
|
26
|
+
wrap?: boolean;
|
|
27
|
+
}): RovingNavResult;
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
@reference 'tailwindcss';
|
|
2
|
+
@reference '../themes/default.css';
|
|
3
|
+
|
|
4
|
+
@layer components {
|
|
5
|
+
.rui-button {
|
|
6
|
+
@apply inline-flex items-center justify-center h-fit w-fit gap-2;
|
|
7
|
+
@apply font-medium text-sm rounded-button border border-transparent;
|
|
8
|
+
@apply transition-[background-color,color,box-shadow] duration-300 ease-out;
|
|
9
|
+
@apply cursor-pointer;
|
|
10
|
+
@apply whitespace-nowrap;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.rui-button > svg {
|
|
14
|
+
@apply pointer-events-none;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.rui-button:focus-visible {
|
|
18
|
+
@apply ring-2 ring-focus-ring outline-hidden;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.rui-button:disabled {
|
|
22
|
+
@apply opacity-50 cursor-not-allowed;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
/* Variants */
|
|
26
|
+
.rui-button--filled {
|
|
27
|
+
@apply bg-primary text-on-primary rui-sheen;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.rui-button--filled:hover:not(:disabled) {
|
|
31
|
+
@apply bg-primary/90;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.rui-button--filled:active:not(:disabled) {
|
|
35
|
+
@apply bg-primary-dark;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.rui-button--filled[aria-pressed='true'] {
|
|
39
|
+
@apply bg-primary-dark ring-2 ring-focus-ring;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.rui-button--outline {
|
|
43
|
+
@apply bg-transparent text-on-background border-border;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.rui-button--outline:hover:not(:disabled) {
|
|
47
|
+
@apply bg-surface rui-sheen;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.rui-button--outline:active:not(:disabled) {
|
|
51
|
+
@apply bg-surface/80 rui-sheen;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.rui-button--outline[aria-pressed='true'] {
|
|
55
|
+
@apply bg-background font-medium text-on-background shadow-sm ring-2 ring-focus-ring rui-sheen;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
.rui-button--ghost {
|
|
59
|
+
@apply bg-transparent text-on-surface;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.rui-button--ghost:hover:not(:disabled) {
|
|
63
|
+
@apply bg-surface-container-low rui-sheen;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.rui-button--ghost:active:not(:disabled) {
|
|
67
|
+
@apply bg-surface-container;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
.rui-button--ghost[aria-pressed='true'] {
|
|
71
|
+
@apply bg-background font-medium text-on-background shadow-sm ring-2 ring-inset ring-border;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.rui-button--destructive {
|
|
75
|
+
@apply bg-error text-on-error rui-sheen;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.rui-button--destructive:hover:not(:disabled) {
|
|
79
|
+
@apply bg-error/90;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.rui-button--destructive:active:not(:disabled) {
|
|
83
|
+
@apply bg-error-dark;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
/* Sizes */
|
|
87
|
+
.rui-button--sm {
|
|
88
|
+
@apply text-xs py-1 px-2;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
.rui-button--md {
|
|
92
|
+
@apply text-sm py-2 px-4;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
.rui-button--lg {
|
|
96
|
+
@apply text-base py-3 px-6;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
.rui-button--icon {
|
|
100
|
+
@apply text-sm p-2;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
/* Back-compat aliases used by earlier stories */
|
|
104
|
+
.rui-button--primary {
|
|
105
|
+
@apply bg-primary text-on-primary rui-sheen;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
.rui-button--secondary {
|
|
109
|
+
@apply bg-secondary text-on-secondary rui-sheen;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
.rui-button--error {
|
|
113
|
+
@apply bg-error text-on-error rui-sheen;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* All component styles (no theme). Import `@ecopages/radiant-ui/themes/default` separately.
|
|
3
|
+
* Generated by scripts/generate-exports.ts — do not edit by hand.
|
|
4
|
+
*/
|
|
5
|
+
@import './components/button.css';
|
|
6
|
+
@import '../components/ui/alert/alert.css';
|
|
7
|
+
@import '../components/ui/breadcrumb/breadcrumb.css';
|
|
8
|
+
@import '../components/ui/carousel/carousel.css';
|
|
9
|
+
@import '../components/ui/checkbox/checkbox.css';
|
|
10
|
+
@import '../components/ui/combobox/combobox.css';
|
|
11
|
+
@import '../components/ui/dialog/dialog.css';
|
|
12
|
+
@import '../components/ui/disclosure/disclosure.css';
|
|
13
|
+
@import '../components/ui/feed/feed.css';
|
|
14
|
+
@import '../components/ui/field/field.css';
|
|
15
|
+
@import '../components/ui/form/form.css';
|
|
16
|
+
@import '../components/ui/grid/grid.css';
|
|
17
|
+
@import '../components/ui/input/input.css';
|
|
18
|
+
@import '../components/ui/label/label.css';
|
|
19
|
+
@import '../components/ui/listbox/listbox.css';
|
|
20
|
+
@import '../components/ui/menu-button/menu-button.css';
|
|
21
|
+
@import '../components/ui/menubar/menubar.css';
|
|
22
|
+
@import '../components/ui/meter/meter.css';
|
|
23
|
+
@import '../components/ui/navigation-menu/navigation-menu.css';
|
|
24
|
+
@import '../components/ui/radio-group/radio-group.css';
|
|
25
|
+
@import '../components/ui/sidebar/sidebar.css';
|
|
26
|
+
@import '../components/ui/slider/slider.css';
|
|
27
|
+
@import '../components/ui/spinbutton/spinbutton.css';
|
|
28
|
+
@import '../components/ui/switch/switch.css';
|
|
29
|
+
@import '../components/ui/tabs/tabs.css';
|
|
30
|
+
@import '../components/ui/textarea/textarea.css';
|
|
31
|
+
@import '../components/ui/toast/toast.css';
|
|
32
|
+
@import '../components/ui/toolbar/toolbar.css';
|
|
33
|
+
@import '../components/ui/tooltip/tooltip.css';
|
|
34
|
+
@import '../components/ui/tree/tree.css';
|
|
35
|
+
@import '../components/ui/treegrid/treegrid.css';
|
|
36
|
+
@import '../components/ui/window-splitter/window-splitter.css';
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Storybook preview stylesheet.
|
|
3
|
+
* Keep canvas chrome here — do not put app layout (`container`, body padding, `main` gaps).
|
|
4
|
+
* Those fight Storybook's `layout: 'fullscreen' | 'padded'` and break `h-full` / `h-svh` stories.
|
|
5
|
+
*/
|
|
6
|
+
@import './radiant-ui.css';
|
|
7
|
+
@import './tokens/presets/spacing.css';
|
|
8
|
+
@import './tokens/presets/radius.css';
|
|
9
|
+
|
|
10
|
+
html,
|
|
11
|
+
body,
|
|
12
|
+
#storybook-root {
|
|
13
|
+
height: 100%;
|
|
14
|
+
margin: 0;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
body {
|
|
18
|
+
@apply bg-background text-on-background;
|
|
19
|
+
font-family: var(--font-sans);
|
|
20
|
+
-webkit-font-smoothing: antialiased;
|
|
21
|
+
-moz-osx-font-smoothing: grayscale;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/* Mount wrappers from @ecopages/storybook-radiant-vite — pass height through to stories. */
|
|
25
|
+
#storybook-root,
|
|
26
|
+
#root-inner,
|
|
27
|
+
.radiant-ssr-mount {
|
|
28
|
+
min-height: 100%;
|
|
29
|
+
height: 100%;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
a,
|
|
33
|
+
button,
|
|
34
|
+
input,
|
|
35
|
+
select,
|
|
36
|
+
textarea {
|
|
37
|
+
&:focus,
|
|
38
|
+
&:focus-visible {
|
|
39
|
+
@apply outline-2 outline-focus-ring;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Aurora — vivid palette (formerly the default color pack).
|
|
3
|
+
*/
|
|
4
|
+
@import '../tokens/colors/palettes.css';
|
|
5
|
+
@import '../tokens/spacing/default.css';
|
|
6
|
+
@import '../tokens/radius/default.css';
|
|
7
|
+
@import '../tokens/elevation/default.css';
|
|
8
|
+
@import '../tokens/typography/default.css';
|
|
9
|
+
@import '../tokens/motion/default.css';
|
|
10
|
+
@import '../tokens/system.css';
|
|
11
|
+
@import '../tokens/semantic.css';
|
|
12
|
+
|
|
13
|
+
:root {
|
|
14
|
+
color-scheme: light;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.dark {
|
|
18
|
+
color-scheme: dark;
|
|
19
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Composed theme: default colors + compact spacing + soft radius.
|
|
3
|
+
*/
|
|
4
|
+
@import '../tokens/colors/aurora.css';
|
|
5
|
+
@import '../tokens/spacing/compact.css';
|
|
6
|
+
@import '../tokens/radius/soft.css';
|
|
7
|
+
@import '../tokens/elevation/default.css';
|
|
8
|
+
@import '../tokens/typography/default.css';
|
|
9
|
+
@import '../tokens/motion/default.css';
|
|
10
|
+
@import '../tokens/system.css';
|
|
11
|
+
@import '../tokens/semantic.css';
|
|
12
|
+
|
|
13
|
+
:root {
|
|
14
|
+
color-scheme: light;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.dark {
|
|
18
|
+
color-scheme: dark;
|
|
19
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Glacier — default brand (aligned with apps/docs).
|
|
3
|
+
*/
|
|
4
|
+
@import '../tokens/colors/palettes.css';
|
|
5
|
+
@import '../tokens/spacing/default.css';
|
|
6
|
+
@import '../tokens/radius/default.css';
|
|
7
|
+
@import '../tokens/elevation/default.css';
|
|
8
|
+
@import '../tokens/typography/default.css';
|
|
9
|
+
@import '../tokens/motion/default.css';
|
|
10
|
+
@import '../tokens/system.css';
|
|
11
|
+
@import '../tokens/semantic.css';
|
|
12
|
+
|
|
13
|
+
:root {
|
|
14
|
+
color-scheme: light;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.dark {
|
|
18
|
+
color-scheme: dark;
|
|
19
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Default color pack — raw OKLCH scales only (mode-agnostic).
|
|
3
|
+
* Semantic roles live in semantic.css.
|
|
4
|
+
*/
|
|
5
|
+
@theme {
|
|
6
|
+
--color-black: oklch(0% 0 0);
|
|
7
|
+
--color-white: oklch(100% 0 0);
|
|
8
|
+
|
|
9
|
+
--color-havelock-blue-50: oklch(97.6% 0.013 233.68);
|
|
10
|
+
--color-havelock-blue-100: oklch(94.6% 0.031 234.4);
|
|
11
|
+
--color-havelock-blue-200: oklch(88.9% 0.061 238.79);
|
|
12
|
+
--color-havelock-blue-300: oklch(83.3% 0.093 239.72);
|
|
13
|
+
--color-havelock-blue-400: oklch(77.1% 0.129 241.58);
|
|
14
|
+
--color-havelock-blue-500: oklch(70% 0.17 243.34);
|
|
15
|
+
--color-havelock-blue-600: oklch(60.7% 0.156 249.36);
|
|
16
|
+
--color-havelock-blue-700: oklch(49.4% 0.14 256.99);
|
|
17
|
+
--color-havelock-blue-800: oklch(36.7% 0.121 265.27);
|
|
18
|
+
--color-havelock-blue-900: oklch(24% 0.104 273.88);
|
|
19
|
+
--color-havelock-blue-950: oklch(17.9% 0.097 278.01);
|
|
20
|
+
--color-havelock-blue-975: oklch(15.1% 0.091 280.16);
|
|
21
|
+
|
|
22
|
+
--color-hit-pink-50: oklch(97.4% 0.015 54.97);
|
|
23
|
+
--color-hit-pink-100: oklch(95.7% 0.026 58.31);
|
|
24
|
+
--color-hit-pink-200: oklch(92.4% 0.045 57.5);
|
|
25
|
+
--color-hit-pink-300: oklch(89.2% 0.065 55.42);
|
|
26
|
+
--color-hit-pink-400: oklch(85.2% 0.088 52.7);
|
|
27
|
+
--color-hit-pink-500: oklch(80.1% 0.118 50.17);
|
|
28
|
+
--color-hit-pink-600: oklch(71.2% 0.109 47.02);
|
|
29
|
+
--color-hit-pink-700: oklch(57.8% 0.095 42.51);
|
|
30
|
+
--color-hit-pink-800: oklch(42.1% 0.078 38.8);
|
|
31
|
+
--color-hit-pink-900: oklch(26.1% 0.062 33.39);
|
|
32
|
+
--color-hit-pink-950: oklch(18.5% 0.054 30.65);
|
|
33
|
+
--color-hit-pink-975: oklch(15.2% 0.049 32.96);
|
|
34
|
+
|
|
35
|
+
--color-fruit-salad-50: oklch(97.6% 0.009 150.47);
|
|
36
|
+
--color-fruit-salad-100: oklch(93.9% 0.02 154.79);
|
|
37
|
+
--color-fruit-salad-200: oklch(87.1% 0.046 152.04);
|
|
38
|
+
--color-fruit-salad-300: oklch(79.9% 0.071 150.42);
|
|
39
|
+
--color-fruit-salad-400: oklch(72.7% 0.098 149.08);
|
|
40
|
+
--color-fruit-salad-500: oklch(64.7% 0.127 147.75);
|
|
41
|
+
--color-fruit-salad-600: oklch(55.4% 0.111 147.11);
|
|
42
|
+
--color-fruit-salad-700: oklch(45.1% 0.092 146.25);
|
|
43
|
+
--color-fruit-salad-800: oklch(33.9% 0.071 144.89);
|
|
44
|
+
--color-fruit-salad-900: oklch(23.3% 0.054 144.32);
|
|
45
|
+
--color-fruit-salad-950: oklch(17.4% 0.044 143.42);
|
|
46
|
+
--color-fruit-salad-975: oklch(14.9% 0.04 143.25);
|
|
47
|
+
|
|
48
|
+
--color-pale-sky-50: oklch(97.5% 0.002 228.43);
|
|
49
|
+
--color-pale-sky-100: oklch(93% 0.003 247.81);
|
|
50
|
+
--color-pale-sky-200: oklch(84% 0.009 247.91);
|
|
51
|
+
--color-pale-sky-300: oklch(74.9% 0.013 255.53);
|
|
52
|
+
--color-pale-sky-400: oklch(66% 0.016 251.22);
|
|
53
|
+
--color-pale-sky-500: oklch(56.9% 0.021 255.6);
|
|
54
|
+
--color-pale-sky-600: oklch(48.2% 0.022 255.62);
|
|
55
|
+
--color-pale-sky-700: oklch(39.2% 0.023 258.37);
|
|
56
|
+
--color-pale-sky-800: oklch(30.4% 0.024 261.16);
|
|
57
|
+
--color-pale-sky-900: oklch(21.6% 0.024 259.28);
|
|
58
|
+
--color-pale-sky-950: oklch(17.2% 0.026 259.11);
|
|
59
|
+
--color-pale-sky-975: oklch(15% 0.026 263.06);
|
|
60
|
+
|
|
61
|
+
--color-cardinal-50: oklch(97.4% 0.01 17.5);
|
|
62
|
+
--color-cardinal-100: oklch(92.2% 0.03 20.31);
|
|
63
|
+
--color-cardinal-200: oklch(81.3% 0.072 19.84);
|
|
64
|
+
--color-cardinal-300: oklch(70.4% 0.115 19.71);
|
|
65
|
+
--color-cardinal-400: oklch(59.9% 0.155 20.64);
|
|
66
|
+
--color-cardinal-500: oklch(50.6% 0.19 21.41);
|
|
67
|
+
--color-cardinal-600: oklch(42.2% 0.16 23.24);
|
|
68
|
+
--color-cardinal-700: oklch(34.8% 0.132 24.75);
|
|
69
|
+
--color-cardinal-800: oklch(27.5% 0.106 26.2);
|
|
70
|
+
--color-cardinal-900: oklch(20.4% 0.081 26.95);
|
|
71
|
+
--color-cardinal-950: oklch(16.9% 0.069 26.47);
|
|
72
|
+
--color-cardinal-975: oklch(15% 0.062 29.23);
|
|
73
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Basalt color pack — cool neutrals + Carbon-like blue accent (IBM Carbon inspired).
|
|
3
|
+
*/
|
|
4
|
+
@theme {
|
|
5
|
+
--color-basalt-50: oklch(98.2% 0.004 265);
|
|
6
|
+
--color-basalt-100: oklch(96% 0.006 265);
|
|
7
|
+
--color-basalt-200: oklch(91.5% 0.008 265);
|
|
8
|
+
--color-basalt-300: oklch(85% 0.01 265);
|
|
9
|
+
--color-basalt-400: oklch(74% 0.012 265);
|
|
10
|
+
--color-basalt-500: oklch(62% 0.014 265);
|
|
11
|
+
--color-basalt-600: oklch(50% 0.014 265);
|
|
12
|
+
--color-basalt-700: oklch(40% 0.012 265);
|
|
13
|
+
--color-basalt-800: oklch(30% 0.01 265);
|
|
14
|
+
--color-basalt-900: oklch(22% 0.008 265);
|
|
15
|
+
--color-basalt-950: oklch(16% 0.006 265);
|
|
16
|
+
--color-basalt-975: oklch(13% 0.005 265);
|
|
17
|
+
|
|
18
|
+
--color-carbon-blue-50: oklch(97% 0.02 264);
|
|
19
|
+
--color-carbon-blue-100: oklch(93% 0.04 264);
|
|
20
|
+
--color-carbon-blue-200: oklch(86% 0.08 264);
|
|
21
|
+
--color-carbon-blue-300: oklch(76% 0.12 264);
|
|
22
|
+
--color-carbon-blue-400: oklch(64% 0.16 264);
|
|
23
|
+
--color-carbon-blue-500: oklch(52% 0.19 264);
|
|
24
|
+
--color-carbon-blue-600: oklch(45% 0.17 264);
|
|
25
|
+
--color-carbon-blue-700: oklch(38% 0.14 264);
|
|
26
|
+
--color-carbon-blue-800: oklch(30% 0.11 264);
|
|
27
|
+
--color-carbon-blue-900: oklch(22% 0.08 264);
|
|
28
|
+
|
|
29
|
+
--color-carbon-teal-400: oklch(72% 0.1 195);
|
|
30
|
+
--color-carbon-teal-600: oklch(55% 0.09 195);
|
|
31
|
+
|
|
32
|
+
--color-carbon-red-500: oklch(52% 0.2 25);
|
|
33
|
+
--color-carbon-red-600: oklch(45% 0.18 25);
|
|
34
|
+
--color-carbon-red-100: oklch(92% 0.04 25);
|
|
35
|
+
--color-carbon-red-800: oklch(32% 0.12 25);
|
|
36
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Glacier color pack — matches apps/docs `theme.css` scales.
|
|
3
|
+
*/
|
|
4
|
+
@theme {
|
|
5
|
+
--color-night-sky-50: hsl(225 100% 98%);
|
|
6
|
+
--color-night-sky-100: hsl(225 100% 95%);
|
|
7
|
+
--color-night-sky-200: hsl(225 100% 90%);
|
|
8
|
+
--color-night-sky-300: hsl(225 90% 80%);
|
|
9
|
+
--color-night-sky-400: hsl(225 90% 70%);
|
|
10
|
+
--color-night-sky-500: hsl(225 85% 55%);
|
|
11
|
+
--color-night-sky-600: hsl(225 85% 45%);
|
|
12
|
+
--color-night-sky-700: hsl(225 90% 35%);
|
|
13
|
+
--color-night-sky-800: hsl(225 90% 25%);
|
|
14
|
+
--color-night-sky-900: hsl(225 80% 15%);
|
|
15
|
+
--color-night-sky-950: hsl(225 80% 10%);
|
|
16
|
+
|
|
17
|
+
--color-scarlet-100: hsl(353 100% 89%);
|
|
18
|
+
--color-scarlet-200: hsl(351 100% 81%);
|
|
19
|
+
--color-scarlet-300: hsl(350 100% 72%);
|
|
20
|
+
--color-scarlet-400: hsl(350 100% 63%);
|
|
21
|
+
--color-scarlet-500: hsl(350 100% 54%);
|
|
22
|
+
--color-scarlet-600: hsl(350 84% 44%);
|
|
23
|
+
--color-scarlet-700: hsl(351 83% 35%);
|
|
24
|
+
--color-scarlet-800: hsl(351 81% 25%);
|
|
25
|
+
--color-scarlet-900: hsl(353 76% 15%);
|
|
26
|
+
--color-scarlet-950: hsl(8 60% 5%);
|
|
27
|
+
|
|
28
|
+
--color-glacier-white-50: hsl(220 20% 99%);
|
|
29
|
+
--color-glacier-white-100: hsl(220 20% 97%);
|
|
30
|
+
--color-glacier-white-200: hsl(220 20% 94%);
|
|
31
|
+
--color-glacier-white-300: hsl(220 15% 90%);
|
|
32
|
+
--color-glacier-white-400: hsl(220 12% 80%);
|
|
33
|
+
--color-glacier-white-500: hsl(220 10% 72%);
|
|
34
|
+
--color-glacier-white-600: hsl(220 8% 58%);
|
|
35
|
+
--color-glacier-white-700: hsl(220 10% 35%);
|
|
36
|
+
--color-glacier-white-800: hsl(220 12% 25%);
|
|
37
|
+
--color-glacier-white-900: hsl(225 15% 5%);
|
|
38
|
+
--color-glacier-white-950: hsl(225 20% 2%);
|
|
39
|
+
|
|
40
|
+
--color-laser-lemon-300: hsl(60 100% 69%);
|
|
41
|
+
--color-laser-lemon-800: hsl(59 93% 23%);
|
|
42
|
+
|
|
43
|
+
--color-navy-blue-400: hsl(212 67% 58%);
|
|
44
|
+
--color-navy-blue-700: hsl(212 71% 30%);
|
|
45
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Default elevation pack.
|
|
3
|
+
*/
|
|
4
|
+
:root {
|
|
5
|
+
--shadow-control: 0 1px 2px 0 rgb(0 0 0 / 0.05);
|
|
6
|
+
--shadow-overlay: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
|
|
7
|
+
--shadow-modal: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
|
|
8
|
+
|
|
9
|
+
--sheen-highlight: color-mix(in oklab, white 8%, transparent);
|
|
10
|
+
--sheen-shade: color-mix(in oklab, black 7%, transparent);
|
|
11
|
+
--sheen-image: linear-gradient(to bottom, var(--sheen-highlight), transparent 55%, var(--sheen-shade));
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
@theme {
|
|
15
|
+
--shadow-control: var(--shadow-control);
|
|
16
|
+
--shadow-overlay: var(--shadow-overlay);
|
|
17
|
+
--shadow-modal: var(--shadow-modal);
|
|
18
|
+
--shadow-sm: var(--shadow-control);
|
|
19
|
+
--shadow-md: var(--shadow-overlay);
|
|
20
|
+
--shadow-lg: var(--shadow-overlay);
|
|
21
|
+
--shadow-xl: var(--shadow-modal);
|
|
22
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Flat elevation pack — no drop shadows.
|
|
3
|
+
*/
|
|
4
|
+
:root {
|
|
5
|
+
--shadow-control: none;
|
|
6
|
+
--shadow-overlay: none;
|
|
7
|
+
--shadow-modal: none;
|
|
8
|
+
|
|
9
|
+
--sheen-highlight: color-mix(in oklab, white 14%, transparent);
|
|
10
|
+
--sheen-shade: color-mix(in oklab, black 7%, transparent);
|
|
11
|
+
--sheen-image: linear-gradient(to bottom, var(--sheen-highlight), transparent 55%, var(--sheen-shade));
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
@theme {
|
|
15
|
+
--shadow-control: var(--shadow-control);
|
|
16
|
+
--shadow-overlay: var(--shadow-overlay);
|
|
17
|
+
--shadow-modal: var(--shadow-modal);
|
|
18
|
+
--shadow-sm: var(--shadow-control);
|
|
19
|
+
--shadow-md: var(--shadow-overlay);
|
|
20
|
+
--shadow-lg: var(--shadow-overlay);
|
|
21
|
+
--shadow-xl: var(--shadow-modal);
|
|
22
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Default motion pack.
|
|
3
|
+
*/
|
|
4
|
+
:root {
|
|
5
|
+
--duration-fast: 150ms;
|
|
6
|
+
--duration-normal: 200ms;
|
|
7
|
+
--duration-slow: 300ms;
|
|
8
|
+
--ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
|
|
9
|
+
--ease-out: cubic-bezier(0, 0, 0.2, 1);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
@theme {
|
|
13
|
+
--transition-duration-fast: var(--duration-fast);
|
|
14
|
+
--transition-duration-normal: var(--duration-normal);
|
|
15
|
+
--transition-duration-slow: var(--duration-slow);
|
|
16
|
+
--duration-150: var(--duration-fast);
|
|
17
|
+
--duration-200: var(--duration-normal);
|
|
18
|
+
--duration-300: var(--duration-slow);
|
|
19
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Snappy motion pack.
|
|
3
|
+
*/
|
|
4
|
+
:root {
|
|
5
|
+
--duration-fast: 100ms;
|
|
6
|
+
--duration-normal: 150ms;
|
|
7
|
+
--duration-slow: 200ms;
|
|
8
|
+
--ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
|
|
9
|
+
--ease-out: cubic-bezier(0, 0, 0.2, 1);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
@theme {
|
|
13
|
+
--transition-duration-fast: var(--duration-fast);
|
|
14
|
+
--transition-duration-normal: var(--duration-normal);
|
|
15
|
+
--transition-duration-slow: var(--duration-slow);
|
|
16
|
+
--duration-150: var(--duration-fast);
|
|
17
|
+
--duration-200: var(--duration-normal);
|
|
18
|
+
--duration-300: var(--duration-slow);
|
|
19
|
+
}
|