@moduix/react 2.2.5 → 2.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.
@@ -0,0 +1,139 @@
1
+ "use client";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import { NavigationMenu, useNavigationMenu, useNavigationMenuContext } from "@ark-ui/react/navigation-menu";
4
+ import { clsx } from "clsx";
5
+ import { Children, forwardRef, isValidElement } from "react";
6
+ import { normalizeClassName } from "../../internal/normalizeClassName.js";
7
+ import NavigationMenu_module from "./NavigationMenu.module.js";
8
+ const NavigationMenu_NavigationMenuRoot = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
9
+ return /*#__PURE__*/ jsx(NavigationMenu.Root, {
10
+ ref: ref,
11
+ "data-slot": "navigation-menu-root",
12
+ className: clsx(NavigationMenu_module.root, normalizeClassName(className)),
13
+ ...props
14
+ });
15
+ });
16
+ const NavigationMenu_NavigationMenuRootProvider = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
17
+ return /*#__PURE__*/ jsx(NavigationMenu.RootProvider, {
18
+ ref: ref,
19
+ "data-slot": "navigation-menu-root-provider",
20
+ className: clsx(NavigationMenu_module.root, normalizeClassName(className)),
21
+ ...props
22
+ });
23
+ });
24
+ const NavigationMenu_NavigationMenuList = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
25
+ return /*#__PURE__*/ jsx(NavigationMenu.List, {
26
+ ref: ref,
27
+ "data-slot": "navigation-menu-list",
28
+ className: clsx(NavigationMenu_module.list, normalizeClassName(className)),
29
+ ...props
30
+ });
31
+ });
32
+ const NavigationMenu_NavigationMenuItem = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
33
+ return /*#__PURE__*/ jsx(NavigationMenu.Item, {
34
+ ref: ref,
35
+ "data-slot": "navigation-menu-item",
36
+ className: clsx(NavigationMenu_module.item, normalizeClassName(className)),
37
+ ...props
38
+ });
39
+ });
40
+ const NavigationMenu_NavigationMenuTrigger = /*#__PURE__*/ forwardRef(function({ asChild, className, ...props }, ref) {
41
+ return /*#__PURE__*/ jsx(NavigationMenu.Trigger, {
42
+ ref: ref,
43
+ asChild: asChild,
44
+ "data-slot": "navigation-menu-trigger",
45
+ className: clsx(!asChild && NavigationMenu_module.trigger, normalizeClassName(className)),
46
+ ...props
47
+ });
48
+ });
49
+ const NavigationMenu_NavigationMenuContent = /*#__PURE__*/ forwardRef(function({ asChild, className, children, ...props }, ref) {
50
+ if (asChild) return /*#__PURE__*/ jsx(NavigationMenu.Content, {
51
+ ref: ref,
52
+ asChild: true,
53
+ "data-slot": "navigation-menu-content",
54
+ className: clsx(NavigationMenu_module.content, normalizeClassName(className)),
55
+ ...props,
56
+ children: children
57
+ });
58
+ const childrenArray = Children.toArray(children);
59
+ const indicators = childrenArray.filter((child)=>/*#__PURE__*/ isValidElement(child) && child.type === NavigationMenu_NavigationMenuIndicator);
60
+ const content = childrenArray.filter((child)=>!/*#__PURE__*/ isValidElement(child) || child.type !== NavigationMenu_NavigationMenuIndicator);
61
+ return /*#__PURE__*/ jsxs(NavigationMenu.Content, {
62
+ ref: ref,
63
+ "data-slot": "navigation-menu-content",
64
+ className: clsx(NavigationMenu_module.content, normalizeClassName(className)),
65
+ ...props,
66
+ children: [
67
+ indicators,
68
+ /*#__PURE__*/ jsx("div", {
69
+ className: NavigationMenu_module.contentViewport,
70
+ children: content
71
+ })
72
+ ]
73
+ });
74
+ });
75
+ const NavigationMenu_NavigationMenuLink = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
76
+ return /*#__PURE__*/ jsx(NavigationMenu.Link, {
77
+ ref: ref,
78
+ "data-slot": "navigation-menu-link",
79
+ className: clsx(NavigationMenu_module.link, normalizeClassName(className)),
80
+ ...props
81
+ });
82
+ });
83
+ const NavigationMenu_NavigationMenuIndicator = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
84
+ return /*#__PURE__*/ jsx(NavigationMenu.Indicator, {
85
+ ref: ref,
86
+ "data-slot": "navigation-menu-indicator",
87
+ className: clsx(NavigationMenu_module.indicator, normalizeClassName(className)),
88
+ ...props
89
+ });
90
+ });
91
+ const NavigationMenu_NavigationMenuItemIndicator = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
92
+ return /*#__PURE__*/ jsx(NavigationMenu.ItemIndicator, {
93
+ ref: ref,
94
+ "data-slot": "navigation-menu-item-indicator",
95
+ className: clsx(NavigationMenu_module.itemIndicator, normalizeClassName(className)),
96
+ ...props
97
+ });
98
+ });
99
+ const NavigationMenu_NavigationMenuArrow = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
100
+ return /*#__PURE__*/ jsx(NavigationMenu.Arrow, {
101
+ ref: ref,
102
+ "data-slot": "navigation-menu-arrow",
103
+ className: clsx(NavigationMenu_module.arrow, normalizeClassName(className)),
104
+ ...props
105
+ });
106
+ });
107
+ const NavigationMenu_NavigationMenuViewportPositioner = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
108
+ return /*#__PURE__*/ jsx(NavigationMenu.ViewportPositioner, {
109
+ ref: ref,
110
+ "data-slot": "navigation-menu-viewport-positioner",
111
+ className: clsx(NavigationMenu_module.viewportPositioner, normalizeClassName(className)),
112
+ ...props
113
+ });
114
+ });
115
+ const NavigationMenu_NavigationMenuViewport = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
116
+ return /*#__PURE__*/ jsx(NavigationMenu.Viewport, {
117
+ ref: ref,
118
+ "data-slot": "navigation-menu-viewport",
119
+ className: clsx(NavigationMenu_module.viewport, normalizeClassName(className)),
120
+ ...props
121
+ });
122
+ });
123
+ const NavigationMenu_NavigationMenu = Object.assign(NavigationMenu_NavigationMenuRoot, {
124
+ Root: NavigationMenu_NavigationMenuRoot,
125
+ RootProvider: NavigationMenu_NavigationMenuRootProvider,
126
+ Context: NavigationMenu.Context,
127
+ List: NavigationMenu_NavigationMenuList,
128
+ Item: NavigationMenu_NavigationMenuItem,
129
+ Trigger: NavigationMenu_NavigationMenuTrigger,
130
+ Content: NavigationMenu_NavigationMenuContent,
131
+ Link: NavigationMenu_NavigationMenuLink,
132
+ Indicator: NavigationMenu_NavigationMenuIndicator,
133
+ ItemIndicator: NavigationMenu_NavigationMenuItemIndicator,
134
+ Arrow: NavigationMenu_NavigationMenuArrow,
135
+ ViewportPositioner: NavigationMenu_NavigationMenuViewportPositioner,
136
+ Viewport: NavigationMenu_NavigationMenuViewport,
137
+ useNavigationMenu: useNavigationMenu
138
+ });
139
+ export { NavigationMenu_NavigationMenu as NavigationMenu, useNavigationMenu, useNavigationMenuContext };
@@ -0,0 +1,36 @@
1
+ import "./NavigationMenu_module.css";
2
+ const NavigationMenu_module = {
3
+ root: "root-l1uCDR",
4
+ list: "list-vJ6fy3",
5
+ item: "item-LmKKOe",
6
+ viewportPositioner: "viewportPositioner-hUgOWA",
7
+ viewport: "viewport-Gtf85E",
8
+ trigger: "trigger-Qt8Wrp",
9
+ link: "link-HFA7O5",
10
+ content: "content-dvfEnJ",
11
+ "navigation-menu-content-in": "navigation-menu-content-in-z6oz3S",
12
+ navigationMenuContentIn: "navigation-menu-content-in-z6oz3S",
13
+ "navigation-menu-content-out": "navigation-menu-content-out-PRe3xI",
14
+ navigationMenuContentOut: "navigation-menu-content-out-PRe3xI",
15
+ contentViewport: "contentViewport-MCA9d7",
16
+ indicator: "indicator-f9Famp",
17
+ "navigation-menu-indicator-in": "navigation-menu-indicator-in-CVxbn2",
18
+ navigationMenuIndicatorIn: "navigation-menu-indicator-in-CVxbn2",
19
+ "navigation-menu-indicator-out": "navigation-menu-indicator-out-rEIfTV",
20
+ navigationMenuIndicatorOut: "navigation-menu-indicator-out-rEIfTV",
21
+ arrow: "arrow-oIu4Ws",
22
+ itemIndicator: "itemIndicator-EcfjBL",
23
+ "navigation-menu-viewport-in": "navigation-menu-viewport-in-GyosQZ",
24
+ navigationMenuViewportIn: "navigation-menu-viewport-in-GyosQZ",
25
+ "navigation-menu-viewport-out": "navigation-menu-viewport-out-Z8eoY1",
26
+ navigationMenuViewportOut: "navigation-menu-viewport-out-Z8eoY1",
27
+ "navigation-menu-viewport-content-from-start": "navigation-menu-viewport-content-from-start-pOKtKn",
28
+ navigationMenuViewportContentFromStart: "navigation-menu-viewport-content-from-start-pOKtKn",
29
+ "navigation-menu-viewport-content-from-end": "navigation-menu-viewport-content-from-end-USOntt",
30
+ navigationMenuViewportContentFromEnd: "navigation-menu-viewport-content-from-end-USOntt",
31
+ "navigation-menu-viewport-content-to-start": "navigation-menu-viewport-content-to-start-sbgu7Q",
32
+ navigationMenuViewportContentToStart: "navigation-menu-viewport-content-to-start-sbgu7Q",
33
+ "navigation-menu-viewport-content-to-end": "navigation-menu-viewport-content-to-end-f0My8W",
34
+ navigationMenuViewportContentToEnd: "navigation-menu-viewport-content-to-end-f0My8W"
35
+ };
36
+ export default NavigationMenu_module;
@@ -0,0 +1,469 @@
1
+ @layer moduix.components {
2
+ .root-l1uCDR {
3
+ box-sizing: border-box;
4
+ inline-size: -moz-fit-content;
5
+ inline-size: fit-content;
6
+ min-inline-size: 0;
7
+ max-inline-size: 100%;
8
+ color: var(--moduix-navigation-menu-color, var(--moduix-color-foreground));
9
+ justify-content: center;
10
+ display: flex;
11
+ position: relative;
12
+ }
13
+
14
+ .list-vJ6fy3 {
15
+ box-sizing: border-box;
16
+ align-items: center;
17
+ gap: var(--moduix-navigation-menu-list-gap, var(--moduix-spacing-1));
18
+ max-inline-size: 100%;
19
+ margin: 0;
20
+ padding: 0;
21
+ list-style: none;
22
+ display: flex;
23
+ position: relative;
24
+ }
25
+
26
+ .list-vJ6fy3[data-orientation="vertical"] {
27
+ flex-direction: column;
28
+ align-items: stretch;
29
+ }
30
+
31
+ .item-LmKKOe {
32
+ position: relative;
33
+ }
34
+
35
+ .root-l1uCDR:has( > .viewportPositioner-hUgOWA > .viewport-Gtf85E) .item-LmKKOe {
36
+ position: static;
37
+ }
38
+
39
+ .trigger-Qt8Wrp, .link-HFA7O5 {
40
+ box-sizing: border-box;
41
+ min-block-size: var(--moduix-navigation-menu-trigger-height, var(--moduix-size-md));
42
+ justify-content: center;
43
+ align-items: center;
44
+ gap: var(--moduix-navigation-menu-trigger-gap, var(--moduix-spacing-2));
45
+ border-radius: var(--moduix-navigation-menu-trigger-radius, var(--moduix-radius-md));
46
+ padding: var(--moduix-navigation-menu-trigger-padding-y, var(--moduix-spacing-1))
47
+ var(--moduix-navigation-menu-trigger-padding-x, var(--moduix-spacing-3));
48
+ color: var(--moduix-navigation-menu-trigger-color, currentColor);
49
+ font: inherit;
50
+ font-size: var(--moduix-navigation-menu-trigger-font-size, var(--moduix-text-sm));
51
+ font-weight: var(--moduix-navigation-menu-trigger-font-weight, var(--moduix-weight-medium));
52
+ line-height: var(--moduix-navigation-menu-trigger-line-height, var(--moduix-line-height-text-sm));
53
+ -webkit-user-select: none;
54
+ user-select: none;
55
+ white-space: nowrap;
56
+ transition: background-color var(--moduix-navigation-menu-transition, var(--moduix-transition-default)),
57
+ color var(--moduix-navigation-menu-transition, var(--moduix-transition-default));
58
+ background: none;
59
+ border: 0;
60
+ outline: 0;
61
+ margin: 0;
62
+ text-decoration: none;
63
+ display: inline-flex;
64
+ }
65
+
66
+ :is(.trigger-Qt8Wrp, .link-HFA7O5) > svg {
67
+ inline-size: var(--moduix-navigation-menu-trigger-icon-size, var(--moduix-spacing-4));
68
+ block-size: var(--moduix-navigation-menu-trigger-icon-size, var(--moduix-spacing-4));
69
+ transition: rotate var(--moduix-navigation-menu-transition, var(--moduix-transition-default));
70
+ flex: none;
71
+ }
72
+
73
+ :is(.trigger-Qt8Wrp, .link-HFA7O5):focus-visible {
74
+ outline: var(--moduix-navigation-menu-focus-ring-width, var(--moduix-focus-ring-inset-width, var(--moduix-border-width-sm)))
75
+ solid var(--moduix-navigation-menu-focus-ring-color, var(--moduix-color-ring));
76
+ outline-offset: var(--moduix-navigation-menu-focus-ring-offset, var(--moduix-focus-ring-offset, 0));
77
+ }
78
+
79
+ :is(.trigger-Qt8Wrp, .link-HFA7O5)[data-disabled], :is(.trigger-Qt8Wrp, .link-HFA7O5):disabled {
80
+ cursor: default;
81
+ opacity: var(--moduix-navigation-menu-disabled-opacity, var(--moduix-opacity-disabled));
82
+ pointer-events: none;
83
+ }
84
+
85
+ @media (hover: hover) {
86
+ :is(.trigger-Qt8Wrp, .link-HFA7O5):hover:not([data-disabled], :disabled) {
87
+ background-color: var(--moduix-navigation-menu-trigger-bg-hover, var(--moduix-color-muted));
88
+ }
89
+ }
90
+
91
+ .trigger-Qt8Wrp[data-state="open"] {
92
+ background-color: var(--moduix-navigation-menu-trigger-bg-active, var(--moduix-navigation-menu-trigger-bg-hover, var(--moduix-color-muted)));
93
+ }
94
+
95
+ .trigger-Qt8Wrp[data-state="open"] > svg {
96
+ rotate: 180deg;
97
+ }
98
+
99
+ .link-HFA7O5[data-current] {
100
+ background-color: var(--moduix-navigation-menu-link-current-bg, transparent);
101
+ color: var(--moduix-navigation-menu-link-current-color, var(--moduix-color-primary));
102
+ }
103
+
104
+ .content-dvfEnJ {
105
+ box-sizing: border-box;
106
+ z-index: var(--moduix-navigation-menu-content-z-index, var(--moduix-z-popup));
107
+ inline-size: max-content;
108
+ min-inline-size: min(max(var(--trigger-width, 0px), var(--moduix-navigation-menu-content-min-width, 12rem)),
109
+ calc(100vw - var(--moduix-spacing-6)));
110
+ max-inline-size: min(var(--moduix-navigation-menu-content-max-width, 20rem),
111
+ calc(100vw - var(--moduix-spacing-6)));
112
+ outline: var(--moduix-navigation-menu-content-border-width, var(--moduix-border-width-sm)) solid
113
+ var(--moduix-navigation-menu-content-border-color, var(--moduix-color-border));
114
+ border-radius: var(--moduix-navigation-menu-content-radius, var(--moduix-radius-md));
115
+ padding: var(--moduix-navigation-menu-content-padding, var(--moduix-popup-list-padding-y, var(--moduix-spacing-1)) 0);
116
+ background-color: var(--moduix-navigation-menu-content-bg, var(--moduix-color-popover));
117
+ color: var(--moduix-navigation-menu-content-color, var(--moduix-color-popover-foreground));
118
+ box-shadow: var(--moduix-navigation-menu-content-shadow, var(--moduix-shadow-lg));
119
+ transform-origin: 0 0;
120
+ overscroll-behavior: contain;
121
+ flex-direction: column;
122
+ display: flex;
123
+ position: absolute;
124
+ inset-block-start: calc(100% + var(--moduix-navigation-menu-content-offset, var(--moduix-spacing-2)));
125
+ inset-inline-start: 0;
126
+ overflow: visible;
127
+ }
128
+
129
+ .content-dvfEnJ[dir="rtl"] {
130
+ transform-origin: 100% 0;
131
+ }
132
+
133
+ .content-dvfEnJ[data-state="open"] {
134
+ animation: navigation-menu-content-in-z6oz3S
135
+ var(--moduix-navigation-menu-transition, var(--moduix-popup-motion-duration, var(--moduix-duration-normal))
136
+ var(--moduix-popup-motion-easing, var(--moduix-ease-in-out)))
137
+ both;
138
+ }
139
+
140
+ .content-dvfEnJ[data-state="closed"] {
141
+ animation: navigation-menu-content-out-PRe3xI
142
+ var(--moduix-navigation-menu-transition, var(--moduix-popup-motion-duration, var(--moduix-duration-normal))
143
+ var(--moduix-popup-motion-easing, var(--moduix-ease-in-out)))
144
+ both;
145
+ pointer-events: none;
146
+ }
147
+
148
+ .contentViewport-MCA9d7 {
149
+ z-index: 1;
150
+ max-block-size: min(var(--moduix-navigation-menu-content-max-height, 24rem),
151
+ calc(100dvh - var(--moduix-spacing-6)));
152
+ flex-direction: column;
153
+ display: flex;
154
+ position: relative;
155
+ overflow: auto;
156
+ }
157
+
158
+ .content-dvfEnJ .link-HFA7O5 {
159
+ margin-inline: var(--moduix-popup-highlight-inset-x, var(--moduix-spacing-1));
160
+ border-radius: var(--moduix-navigation-menu-content-link-radius, var(--moduix-radius-sm));
161
+ padding-inline: var(--moduix-navigation-menu-content-link-padding-x, var(--moduix-spacing-2));
162
+ justify-content: flex-start;
163
+ }
164
+
165
+ .indicator-f9Famp {
166
+ inset-block-start: calc(-1 * var(--moduix-navigation-menu-indicator-size, var(--moduix-spacing-2-5)));
167
+ inline-size: var(--trigger-width, 0);
168
+ block-size: var(--moduix-navigation-menu-indicator-size, var(--moduix-spacing-2-5));
169
+ pointer-events: none;
170
+ translate: var(--trigger-x, 0) 0;
171
+ transition: translate var(--moduix-navigation-menu-transition, var(--moduix-transition-default)),
172
+ inline-size var(--moduix-navigation-menu-transition, var(--moduix-transition-default));
173
+ justify-content: center;
174
+ display: flex;
175
+ position: absolute;
176
+ left: 0;
177
+ }
178
+
179
+ .indicator-f9Famp[data-state="open"] {
180
+ animation: navigation-menu-indicator-in-CVxbn2
181
+ var(--moduix-navigation-menu-transition, var(--moduix-transition-default)) both;
182
+ }
183
+
184
+ .indicator-f9Famp[data-state="closed"] {
185
+ animation: navigation-menu-indicator-out-rEIfTV
186
+ var(--moduix-navigation-menu-transition, var(--moduix-transition-default)) both;
187
+ }
188
+
189
+ .list-vJ6fy3 > .indicator-f9Famp {
190
+ inset-block-start: auto;
191
+ inset-block-end: calc(-1 * var(--moduix-navigation-menu-indicator-size, var(--moduix-spacing-2-5)));
192
+ }
193
+
194
+ .arrow-oIu4Ws {
195
+ inline-size: var(--moduix-navigation-menu-arrow-size, var(--moduix-spacing-2-5));
196
+ block-size: var(--moduix-navigation-menu-arrow-size, var(--moduix-spacing-2-5));
197
+ border-block-start: var(--moduix-navigation-menu-content-border-width, var(--moduix-border-width-sm))
198
+ solid
199
+ var(--moduix-navigation-menu-arrow-stroke-color, var(--moduix-navigation-menu-content-border-color, var(--moduix-color-border)));
200
+ border-inline-start: var(--moduix-navigation-menu-content-border-width, var(--moduix-border-width-sm))
201
+ solid
202
+ var(--moduix-navigation-menu-arrow-stroke-color, var(--moduix-navigation-menu-content-border-color, var(--moduix-color-border)));
203
+ background-color: var(--moduix-navigation-menu-content-bg, var(--moduix-color-popover));
204
+ position: relative;
205
+ inset-block-start: var(--moduix-spacing-1);
206
+ rotate: 45deg;
207
+ }
208
+
209
+ .itemIndicator-EcfjBL {
210
+ inset-inline: var(--moduix-navigation-menu-item-indicator-inset, var(--moduix-spacing-2));
211
+ block-size: var(--moduix-navigation-menu-item-indicator-size, var(--moduix-border-width-md));
212
+ border-radius: var(--moduix-radius-full);
213
+ background-color: var(--moduix-navigation-menu-item-indicator-bg, var(--moduix-color-foreground));
214
+ position: absolute;
215
+ inset-block-end: 0;
216
+ }
217
+
218
+ .viewportPositioner-hUgOWA {
219
+ z-index: var(--moduix-navigation-menu-viewport-z-index, var(--moduix-z-popup));
220
+ translate: var(--viewport-x, 0px) 0;
221
+ display: flex;
222
+ position: absolute;
223
+ inset-block-start: 100%;
224
+ inset-inline-start: 0;
225
+ }
226
+
227
+ .viewportPositioner-hUgOWA[data-orientation="vertical"] {
228
+ inset-block-start: var(--viewport-y, 0px);
229
+ inset-inline-start: 100%;
230
+ translate: 0;
231
+ }
232
+
233
+ .viewportPositioner-hUgOWA > .indicator-f9Famp {
234
+ z-index: 1;
235
+ translate: calc(var(--trigger-x, 0px) - var(--viewport-x, 0px)) 0;
236
+ inset-block-start: calc(var(--moduix-navigation-menu-viewport-offset, var(--moduix-spacing-2)) -
237
+ var(--moduix-navigation-menu-indicator-size, var(--moduix-spacing-2-5)));
238
+ }
239
+
240
+ .viewportPositioner-hUgOWA[data-orientation="horizontal"] > .indicator-f9Famp {
241
+ overflow: hidden;
242
+ }
243
+
244
+ .viewport-Gtf85E {
245
+ box-sizing: border-box;
246
+ inline-size: var(--viewport-width);
247
+ max-inline-size: min(var(--moduix-navigation-menu-viewport-max-width, 40rem),
248
+ calc(100vw - var(--moduix-spacing-6)));
249
+ block-size: var(--viewport-height);
250
+ max-block-size: min(var(--moduix-navigation-menu-viewport-max-height, 32rem),
251
+ calc(100dvh - var(--moduix-spacing-6)));
252
+ outline: var(--moduix-navigation-menu-content-border-width, var(--moduix-border-width-sm)) solid
253
+ var(--moduix-navigation-menu-content-border-color, var(--moduix-color-border));
254
+ border-radius: var(--moduix-navigation-menu-viewport-radius, var(--moduix-radius-md));
255
+ background-color: var(--moduix-navigation-menu-content-bg, var(--moduix-color-popover));
256
+ color: var(--moduix-navigation-menu-content-color, var(--moduix-color-popover-foreground));
257
+ box-shadow: var(--moduix-navigation-menu-content-shadow, var(--moduix-shadow-lg));
258
+ transform-origin: top;
259
+ transition: inline-size
260
+ var(--moduix-navigation-menu-viewport-transition, var(--moduix-popup-motion-duration, var(--moduix-duration-normal))
261
+ var(--moduix-popup-motion-easing, var(--moduix-ease-in-out))),
262
+ block-size
263
+ var(--moduix-navigation-menu-viewport-transition, var(--moduix-popup-motion-duration, var(--moduix-duration-normal))
264
+ var(--moduix-popup-motion-easing, var(--moduix-ease-in-out)));
265
+ margin-block-start: var(--moduix-navigation-menu-viewport-offset, var(--moduix-spacing-2));
266
+ position: relative;
267
+ overflow: hidden;
268
+ }
269
+
270
+ .viewport-Gtf85E[data-state="open"] {
271
+ animation: navigation-menu-viewport-in-GyosQZ
272
+ var(--moduix-navigation-menu-transition, var(--moduix-popup-motion-duration, var(--moduix-duration-normal))
273
+ var(--moduix-popup-motion-easing, var(--moduix-ease-in-out)))
274
+ both;
275
+ }
276
+
277
+ .viewport-Gtf85E[data-state="closed"] {
278
+ animation: navigation-menu-viewport-out-Z8eoY1
279
+ var(--moduix-navigation-menu-transition, var(--moduix-popup-motion-duration, var(--moduix-duration-normal))
280
+ var(--moduix-popup-motion-easing, var(--moduix-ease-in-out)))
281
+ both;
282
+ pointer-events: none;
283
+ }
284
+
285
+ .viewportPositioner-hUgOWA[data-orientation="vertical"] .viewport-Gtf85E {
286
+ margin-block-start: 0;
287
+ margin-inline-start: var(--moduix-navigation-menu-viewport-offset, var(--moduix-spacing-2));
288
+ }
289
+
290
+ .viewport-Gtf85E .content-dvfEnJ {
291
+ box-shadow: none;
292
+ transform-origin: center;
293
+ will-change: translate, opacity;
294
+ background: none;
295
+ border-radius: 0;
296
+ outline: 0;
297
+ margin: 0;
298
+ position: absolute;
299
+ inset: 0 auto auto 0;
300
+ }
301
+
302
+ .viewport-Gtf85E .contentViewport-MCA9d7 {
303
+ z-index: 2;
304
+ max-block-size: none;
305
+ }
306
+
307
+ .viewport-Gtf85E .content-dvfEnJ[data-state] {
308
+ animation: none;
309
+ }
310
+
311
+ .viewport-Gtf85E .content-dvfEnJ[data-motion="from-start"] {
312
+ animation: navigation-menu-viewport-content-from-start-pOKtKn
313
+ var(--moduix-navigation-menu-transition, var(--moduix-popup-motion-duration, var(--moduix-duration-normal))
314
+ var(--moduix-popup-motion-easing, var(--moduix-ease-in-out)))
315
+ both;
316
+ }
317
+
318
+ .viewport-Gtf85E .content-dvfEnJ[data-motion="from-end"] {
319
+ animation: navigation-menu-viewport-content-from-end-USOntt
320
+ var(--moduix-navigation-menu-transition, var(--moduix-popup-motion-duration, var(--moduix-duration-normal))
321
+ var(--moduix-popup-motion-easing, var(--moduix-ease-in-out)))
322
+ both;
323
+ }
324
+
325
+ .viewport-Gtf85E .content-dvfEnJ[data-motion="to-start"] {
326
+ animation: navigation-menu-viewport-content-to-start-sbgu7Q
327
+ var(--moduix-navigation-menu-transition, var(--moduix-popup-motion-duration, var(--moduix-duration-normal))
328
+ var(--moduix-popup-motion-easing, var(--moduix-ease-in-out)))
329
+ both;
330
+ }
331
+
332
+ .viewport-Gtf85E .content-dvfEnJ[data-motion="to-end"] {
333
+ animation: navigation-menu-viewport-content-to-end-f0My8W
334
+ var(--moduix-navigation-menu-transition, var(--moduix-popup-motion-duration, var(--moduix-duration-normal))
335
+ var(--moduix-popup-motion-easing, var(--moduix-ease-in-out)))
336
+ both;
337
+ }
338
+
339
+ @keyframes navigation-menu-content-in-z6oz3S {
340
+ from {
341
+ opacity: var(--moduix-navigation-menu-content-starting-opacity, var(--moduix-popup-motion-starting-opacity, 0));
342
+ translate: var(--moduix-navigation-menu-content-starting-translate-x, var(--moduix-popup-motion-starting-translate-x, 0))
343
+ var(--moduix-navigation-menu-content-starting-translate-y, var(--moduix-popup-motion-starting-translate-y, 0));
344
+ transform: scale(var(--moduix-navigation-menu-content-starting-scale, var(--moduix-popup-motion-starting-scale, var(--moduix-scale-popup))));
345
+ }
346
+
347
+ to {
348
+ opacity: 1;
349
+ transform: scale(1);
350
+ }
351
+ }
352
+
353
+ @keyframes navigation-menu-content-out-PRe3xI {
354
+ from {
355
+ opacity: 1;
356
+ transform: scale(1);
357
+ }
358
+
359
+ to {
360
+ opacity: var(--moduix-navigation-menu-content-ending-opacity, var(--moduix-popup-motion-ending-opacity, 0));
361
+ translate: var(--moduix-navigation-menu-content-ending-translate-x, var(--moduix-popup-motion-ending-translate-x, 0))
362
+ var(--moduix-navigation-menu-content-ending-translate-y, var(--moduix-popup-motion-ending-translate-y, 0));
363
+ transform: scale(var(--moduix-navigation-menu-content-ending-scale, var(--moduix-popup-motion-ending-scale, var(--moduix-scale-popup))));
364
+ }
365
+ }
366
+
367
+ @keyframes navigation-menu-indicator-in-CVxbn2 {
368
+ from {
369
+ opacity: 0;
370
+ }
371
+
372
+ to {
373
+ opacity: 1;
374
+ }
375
+ }
376
+
377
+ @keyframes navigation-menu-indicator-out-rEIfTV {
378
+ from {
379
+ opacity: 1;
380
+ }
381
+
382
+ to {
383
+ opacity: 0;
384
+ }
385
+ }
386
+
387
+ @keyframes navigation-menu-viewport-in-GyosQZ {
388
+ from {
389
+ opacity: 0;
390
+ transform: rotateX(-30deg) scale(.9);
391
+ }
392
+
393
+ to {
394
+ opacity: 1;
395
+ transform: scale(1);
396
+ }
397
+ }
398
+
399
+ @keyframes navigation-menu-viewport-out-Z8eoY1 {
400
+ from {
401
+ opacity: 1;
402
+ transform: scale(1);
403
+ }
404
+
405
+ to {
406
+ opacity: 0;
407
+ transform: rotateX(-10deg) scale(.95);
408
+ }
409
+ }
410
+
411
+ @keyframes navigation-menu-viewport-content-from-start-pOKtKn {
412
+ from {
413
+ opacity: 0;
414
+ translate: calc(-1 * var(--moduix-navigation-menu-viewport-motion-distance, 12.5rem)) 0;
415
+ }
416
+
417
+ to {
418
+ opacity: 1;
419
+ translate: 0;
420
+ }
421
+ }
422
+
423
+ @keyframes navigation-menu-viewport-content-from-end-USOntt {
424
+ from {
425
+ opacity: 0;
426
+ translate: var(--moduix-navigation-menu-viewport-motion-distance, 12.5rem) 0;
427
+ }
428
+
429
+ to {
430
+ opacity: 1;
431
+ translate: 0;
432
+ }
433
+ }
434
+
435
+ @keyframes navigation-menu-viewport-content-to-start-sbgu7Q {
436
+ from {
437
+ opacity: 1;
438
+ translate: 0;
439
+ }
440
+
441
+ to {
442
+ opacity: 0;
443
+ translate: calc(-1 * var(--moduix-navigation-menu-viewport-motion-distance, 12.5rem)) 0;
444
+ }
445
+ }
446
+
447
+ @keyframes navigation-menu-viewport-content-to-end-f0My8W {
448
+ from {
449
+ opacity: 1;
450
+ translate: 0;
451
+ }
452
+
453
+ to {
454
+ opacity: 0;
455
+ translate: var(--moduix-navigation-menu-viewport-motion-distance, 12.5rem) 0;
456
+ }
457
+ }
458
+
459
+ @media (prefers-reduced-motion: reduce) {
460
+ .trigger-Qt8Wrp, .link-HFA7O5, .indicator-f9Famp, .viewport-Gtf85E {
461
+ transition: none;
462
+ }
463
+
464
+ .content-dvfEnJ[data-state], .content-dvfEnJ[data-motion], .indicator-f9Famp[data-state], .viewport-Gtf85E[data-state] {
465
+ animation: none;
466
+ }
467
+ }
468
+ }
469
+
@@ -0,0 +1 @@
1
+ export { NavigationMenu, useNavigationMenu, useNavigationMenuContext } from './NavigationMenu.js';
@@ -0,0 +1 @@
1
+ export { NavigationMenu, useNavigationMenu, useNavigationMenuContext } from "./NavigationMenu.js";
@@ -2,6 +2,7 @@
2
2
  .root-HI0WAX {
3
3
  box-sizing: border-box;
4
4
  overscroll-behavior-inline: contain;
5
+ scrollbar-width: none;
5
6
  --moduix-toggle-color: var(--moduix-toggle-group-color, var(--moduix-color-foreground));
6
7
  align-items: center;
7
8
  gap: var(--moduix-toggle-group-gap, var(--moduix-border-width-sm));
@@ -16,6 +17,10 @@
16
17
  overflow-x: auto;
17
18
  }
18
19
 
20
+ .root-HI0WAX::-webkit-scrollbar {
21
+ display: none;
22
+ }
23
+
19
24
  .root-HI0WAX[data-orientation="vertical"] {
20
25
  flex-direction: column;
21
26
  align-items: stretch;