@auronui/styles 1.2.2 → 1.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/components/context-menu.css +44 -0
- package/components/editable.css +136 -0
- package/components/hover-card.css +68 -0
- package/components/index.css +9 -0
- package/components/input.css +53 -10
- package/components/menubar.css +80 -0
- package/components/month-range-picker.css +154 -0
- package/components/navigation-menu.css +144 -0
- package/components/time-picker.css +95 -0
- package/components/time-range-field.css +543 -0
- package/components/year-range-picker.css +155 -0
- package/dist/components/context-menu/context-menu.styles.d.ts +40 -0
- package/dist/components/context-menu/context-menu.styles.d.ts.map +1 -0
- package/dist/components/context-menu/context-menu.styles.js +11 -0
- package/dist/components/context-menu/context-menu.styles.js.map +1 -0
- package/dist/components/context-menu/index.d.ts +2 -0
- package/dist/components/context-menu/index.d.ts.map +1 -0
- package/dist/components/context-menu/index.js +2 -0
- package/dist/components/dropdown/dropdown.styles.d.ts +3 -3
- package/dist/components/editable/editable.styles.d.ts +85 -0
- package/dist/components/editable/editable.styles.d.ts.map +1 -0
- package/dist/components/editable/editable.styles.js +15 -0
- package/dist/components/editable/editable.styles.js.map +1 -0
- package/dist/components/editable/index.d.ts +2 -0
- package/dist/components/editable/index.d.ts.map +1 -0
- package/dist/components/editable/index.js +2 -0
- package/dist/components/hover-card/hover-card.styles.d.ts +34 -0
- package/dist/components/hover-card/hover-card.styles.d.ts.map +1 -0
- package/dist/components/hover-card/hover-card.styles.js +10 -0
- package/dist/components/hover-card/hover-card.styles.js.map +1 -0
- package/dist/components/hover-card/index.d.ts +2 -0
- package/dist/components/hover-card/index.d.ts.map +1 -0
- package/dist/components/hover-card/index.js +2 -0
- package/dist/components/index.d.ts +9 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/menubar/index.d.ts +2 -0
- package/dist/components/menubar/index.d.ts.map +1 -0
- package/dist/components/menubar/index.js +2 -0
- package/dist/components/menubar/menubar.styles.d.ts +40 -0
- package/dist/components/menubar/menubar.styles.d.ts.map +1 -0
- package/dist/components/menubar/menubar.styles.js +11 -0
- package/dist/components/menubar/menubar.styles.js.map +1 -0
- package/dist/components/month-range-picker/index.d.ts +2 -0
- package/dist/components/month-range-picker/index.d.ts.map +1 -0
- package/dist/components/month-range-picker/index.js +2 -0
- package/dist/components/month-range-picker/month-range-picker.styles.d.ts +61 -0
- package/dist/components/month-range-picker/month-range-picker.styles.d.ts.map +1 -0
- package/dist/components/month-range-picker/month-range-picker.styles.js +21 -0
- package/dist/components/month-range-picker/month-range-picker.styles.js.map +1 -0
- package/dist/components/navigation-menu/index.d.ts +2 -0
- package/dist/components/navigation-menu/index.d.ts.map +1 -0
- package/dist/components/navigation-menu/index.js +2 -0
- package/dist/components/navigation-menu/navigation-menu.styles.d.ts +76 -0
- package/dist/components/navigation-menu/navigation-menu.styles.d.ts.map +1 -0
- package/dist/components/navigation-menu/navigation-menu.styles.js +17 -0
- package/dist/components/navigation-menu/navigation-menu.styles.js.map +1 -0
- package/dist/components/time-picker/index.d.ts +2 -0
- package/dist/components/time-picker/index.d.ts.map +1 -0
- package/dist/components/time-picker/index.js +2 -0
- package/dist/components/time-picker/time-picker.styles.d.ts +82 -0
- package/dist/components/time-picker/time-picker.styles.d.ts.map +1 -0
- package/dist/components/time-picker/time-picker.styles.js +35 -0
- package/dist/components/time-picker/time-picker.styles.js.map +1 -0
- package/dist/components/time-range-field/index.d.ts +2 -0
- package/dist/components/time-range-field/index.d.ts.map +1 -0
- package/dist/components/time-range-field/index.js +2 -0
- package/dist/components/time-range-field/time-range-field.styles.d.ts +310 -0
- package/dist/components/time-range-field/time-range-field.styles.d.ts.map +1 -0
- package/dist/components/time-range-field/time-range-field.styles.js +94 -0
- package/dist/components/time-range-field/time-range-field.styles.js.map +1 -0
- package/dist/components/year-range-picker/index.d.ts +2 -0
- package/dist/components/year-range-picker/index.d.ts.map +1 -0
- package/dist/components/year-range-picker/index.js +2 -0
- package/dist/components/year-range-picker/year-range-picker.styles.d.ts +61 -0
- package/dist/components/year-range-picker/year-range-picker.styles.d.ts.map +1 -0
- package/dist/components/year-range-picker/year-range-picker.styles.js +21 -0
- package/dist/components/year-range-picker/year-range-picker.styles.js.map +1 -0
- package/dist/index.js +10 -1
- package/package.json +33 -1
- package/src/components/context-menu/context-menu.styles.ts +13 -0
- package/src/components/context-menu/index.ts +1 -0
- package/src/components/editable/editable.styles.ts +24 -0
- package/src/components/editable/index.ts +1 -0
- package/src/components/hover-card/hover-card.styles.ts +12 -0
- package/src/components/hover-card/index.ts +1 -0
- package/src/components/index.ts +9 -0
- package/src/components/menubar/index.ts +1 -0
- package/src/components/menubar/menubar.styles.ts +13 -0
- package/src/components/month-range-picker/index.ts +1 -0
- package/src/components/month-range-picker/month-range-picker.styles.ts +30 -0
- package/src/components/navigation-menu/index.ts +1 -0
- package/src/components/navigation-menu/navigation-menu.styles.ts +19 -0
- package/src/components/time-picker/index.ts +1 -0
- package/src/components/time-picker/time-picker.styles.ts +35 -0
- package/src/components/time-range-field/index.ts +1 -0
- package/src/components/time-range-field/time-range-field.styles.ts +87 -0
- package/src/components/year-range-picker/index.ts +1 -0
- package/src/components/year-range-picker/year-range-picker.styles.ts +30 -0
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
/* ==========================================================================
|
|
2
|
+
NavigationMenu
|
|
3
|
+
|
|
4
|
+
Horizontal top-level site navigation with hoverable/clickable flyout
|
|
5
|
+
panels. Structurally unlike Dropdown/ContextMenu/Menubar: content is not
|
|
6
|
+
positioned via floating-ui — NavigationMenuContent teleports either into a
|
|
7
|
+
shared NavigationMenuViewport (measured/positioned by Reka via CSS custom
|
|
8
|
+
properties: --reka-navigation-menu-viewport-{width,height,left,top}) or to
|
|
9
|
+
document.body with no positioning at all. This stylesheet is responsible
|
|
10
|
+
for consuming those custom properties to actually place and animate the
|
|
11
|
+
viewport panel — Reka does not do this for you. The small active-trigger
|
|
12
|
+
tracking caret (Indicator) is positioned the same way, via
|
|
13
|
+
--reka-navigation-menu-indicator-{position,size}.
|
|
14
|
+
|
|
15
|
+
Link styling for NavigationMenuLink is NOT defined here — it reuses
|
|
16
|
+
linkVariants (.link) directly, per the design spec.
|
|
17
|
+
========================================================================== */
|
|
18
|
+
|
|
19
|
+
.navigation-menu {
|
|
20
|
+
@apply relative z-1 flex max-w-max flex-1 items-center justify-center;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/* -----------------------------------------------------------------------------
|
|
24
|
+
* List — the horizontal row of top-level items; also the Indicator's
|
|
25
|
+
* teleport target (Reka registers the List's own root element as the
|
|
26
|
+
* indicator track), so it must be position: relative.
|
|
27
|
+
* -------------------------------------------------------------------------- */
|
|
28
|
+
.navigation-menu__list {
|
|
29
|
+
@apply relative flex list-none items-center justify-center gap-1;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/* -----------------------------------------------------------------------------
|
|
33
|
+
* Trigger
|
|
34
|
+
* -------------------------------------------------------------------------- */
|
|
35
|
+
.navigation-menu__trigger {
|
|
36
|
+
@apply inline-flex h-9 items-center gap-1 rounded-md bg-transparent px-4 text-sm font-medium text-foreground outline-none select-none;
|
|
37
|
+
|
|
38
|
+
cursor: var(--cursor-interactive);
|
|
39
|
+
|
|
40
|
+
transition:
|
|
41
|
+
background-color 300ms var(--ease-smooth),
|
|
42
|
+
color 300ms var(--ease-smooth);
|
|
43
|
+
@apply motion-reduce:transition-none;
|
|
44
|
+
|
|
45
|
+
@media (hover: hover) {
|
|
46
|
+
&:hover {
|
|
47
|
+
@apply bg-default;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
&:focus-visible,
|
|
52
|
+
&[data-focus-visible="true"] {
|
|
53
|
+
@apply status-focused;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
&[data-state="open"] {
|
|
57
|
+
@apply bg-default;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
&:disabled,
|
|
61
|
+
&[data-disabled] {
|
|
62
|
+
@apply status-disabled;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.navigation-menu__chevron {
|
|
67
|
+
@apply relative top-px transition-transform duration-200 ease-smooth;
|
|
68
|
+
@apply motion-reduce:transition-none;
|
|
69
|
+
|
|
70
|
+
.navigation-menu__trigger[data-state="open"] & {
|
|
71
|
+
@apply rotate-180;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
/* -----------------------------------------------------------------------------
|
|
76
|
+
* Content — the flyout panel's own inner layout. No position/animation here;
|
|
77
|
+
* NavigationMenuContent itself has no data-side/floating-ui positioning to
|
|
78
|
+
* animate against (unlike Menu-family Content components). Position and
|
|
79
|
+
* open/close animation live on the Viewport instead, since Content always
|
|
80
|
+
* renders inside it (or inside document.body with no positioning, in the
|
|
81
|
+
* rare case no Viewport is used).
|
|
82
|
+
* -------------------------------------------------------------------------- */
|
|
83
|
+
.navigation-menu__content {
|
|
84
|
+
@apply w-full p-4 outline-none select-none sm:w-(--reka-navigation-menu-viewport-width);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/* -----------------------------------------------------------------------------
|
|
88
|
+
* Viewport — the shared animated container that displays the active panel.
|
|
89
|
+
* Sized and positioned entirely from the CSS custom properties Reka exposes.
|
|
90
|
+
* -------------------------------------------------------------------------- */
|
|
91
|
+
.navigation-menu__viewport-wrapper {
|
|
92
|
+
@apply absolute top-full left-0 flex justify-center;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
.navigation-menu__viewport {
|
|
96
|
+
z-index: var(--z-popover);
|
|
97
|
+
@apply relative mt-1.5 overflow-hidden rounded-lg surface-card;
|
|
98
|
+
@apply origin-top will-change-[opacity,transform,width,height];
|
|
99
|
+
|
|
100
|
+
width: var(--reka-navigation-menu-viewport-width, 100%);
|
|
101
|
+
height: var(--reka-navigation-menu-viewport-height, auto);
|
|
102
|
+
|
|
103
|
+
transition:
|
|
104
|
+
width 200ms var(--ease-smooth),
|
|
105
|
+
height 200ms var(--ease-smooth);
|
|
106
|
+
@apply motion-reduce:transition-none;
|
|
107
|
+
|
|
108
|
+
&[data-state="open"] {
|
|
109
|
+
@apply animate-in duration-200 ease-smooth fade-in-0 zoom-in-95;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
&[data-state="closed"] {
|
|
113
|
+
@apply animate-out duration-150 ease-smooth zoom-out-95 fade-out;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
/* -----------------------------------------------------------------------------
|
|
118
|
+
* Indicator — small caret tracking the active trigger, teleported into the
|
|
119
|
+
* List. Positioned via --reka-navigation-menu-indicator-{position,size}.
|
|
120
|
+
* -------------------------------------------------------------------------- */
|
|
121
|
+
.navigation-menu__indicator {
|
|
122
|
+
@apply absolute top-full z-1 flex h-2 items-end justify-center overflow-hidden;
|
|
123
|
+
@apply will-change-[transform,opacity];
|
|
124
|
+
|
|
125
|
+
width: var(--reka-navigation-menu-indicator-size, 0);
|
|
126
|
+
transform: translateX(var(--reka-navigation-menu-indicator-position, 0));
|
|
127
|
+
|
|
128
|
+
transition:
|
|
129
|
+
width 200ms var(--ease-smooth),
|
|
130
|
+
transform 200ms var(--ease-smooth);
|
|
131
|
+
@apply motion-reduce:transition-none;
|
|
132
|
+
|
|
133
|
+
&[data-state="visible"] {
|
|
134
|
+
@apply animate-in duration-200 ease-smooth fade-in-0;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
&[data-state="hidden"] {
|
|
138
|
+
@apply animate-out duration-150 ease-smooth fade-out;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
.navigation-menu__indicator-arrow {
|
|
143
|
+
@apply relative top-1/2 size-2.5 rotate-45 rounded-tl-[2px] bg-border;
|
|
144
|
+
}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
/* ==========================================================================
|
|
2
|
+
TimePicker — TimeField trigger + wheel-scroller popover
|
|
3
|
+
========================================================================== */
|
|
4
|
+
|
|
5
|
+
.time-picker {
|
|
6
|
+
@apply inline-flex flex-col gap-1;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.time-picker--full-width {
|
|
10
|
+
@apply w-full;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.time-picker--invalid {
|
|
14
|
+
/* invalid state propagated to child TimeField via isInvalid prop */
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.time-picker--disabled {
|
|
18
|
+
@apply opacity-60 cursor-not-allowed pointer-events-none;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/* ─── Trigger (clock icon button) ─────────────────────────────────────── */
|
|
22
|
+
|
|
23
|
+
.time-picker__trigger {
|
|
24
|
+
@apply inline-flex items-center justify-center rounded-field p-1 no-highlight bg-transparent border-0 cursor-pointer outline-none shrink-0;
|
|
25
|
+
color: var(--color-field-placeholder);
|
|
26
|
+
cursor: var(--cursor-interactive);
|
|
27
|
+
|
|
28
|
+
transition: box-shadow 300ms var(--ease-out);
|
|
29
|
+
@apply motion-reduce:transition-none;
|
|
30
|
+
|
|
31
|
+
&:focus-visible:not(:focus),
|
|
32
|
+
&[data-focus-visible="true"] {
|
|
33
|
+
@apply status-focused;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
&:disabled,
|
|
37
|
+
&[data-disabled],
|
|
38
|
+
&[aria-disabled="true"] {
|
|
39
|
+
@apply status-disabled;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.time-picker__trigger-indicator {
|
|
44
|
+
@apply inline-flex size-4 items-center justify-center text-field-placeholder;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/* ─── Popover shell ───────────────────────────────────────────────────────── */
|
|
48
|
+
|
|
49
|
+
.time-picker__popover {
|
|
50
|
+
z-index: var(--z-popover);
|
|
51
|
+
@apply origin-(--trigger-anchor-point) overflow-hidden bg-overlay p-0;
|
|
52
|
+
min-width: 8rem;
|
|
53
|
+
box-shadow: var(--shadow-overlay);
|
|
54
|
+
border-radius: calc(var(--radius) * 2.5);
|
|
55
|
+
|
|
56
|
+
&:focus-visible:not(:focus),
|
|
57
|
+
&[data-focus-visible="true"] {
|
|
58
|
+
@apply outline-none;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
& {
|
|
62
|
+
@apply animate-in duration-300 ease-smooth fade-in-0 zoom-in-95;
|
|
63
|
+
|
|
64
|
+
&[data-placement^="top"] {
|
|
65
|
+
@apply slide-in-from-bottom-1;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
&[data-placement^="bottom"] {
|
|
69
|
+
@apply slide-in-from-top-1;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
&[data-placement^="left"] {
|
|
73
|
+
@apply slide-in-from-right-1;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
&[data-placement^="right"] {
|
|
77
|
+
@apply slide-in-from-left-1;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
&,
|
|
82
|
+
& {
|
|
83
|
+
@apply will-change-[opacity,transform];
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/* ─── Panel (wheels stacked above the Done button) ───────────────────────── */
|
|
88
|
+
|
|
89
|
+
.time-picker__panel {
|
|
90
|
+
@apply flex flex-col;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.time-picker__time-done {
|
|
94
|
+
@apply flex justify-end px-3 pb-3 pt-1;
|
|
95
|
+
}
|