baaz-custom-components 3.1.0 → 3.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.css +14 -3
- package/dist/index.d.mts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +318 -296
- package/dist/index.mjs +314 -292
- package/dist/styles.css +1 -1
- package/package.json +1 -2
package/dist/index.js
CHANGED
|
@@ -88,12 +88,14 @@ function useIsMobile() {
|
|
|
88
88
|
// src/components/custom/navbar/navbar.tsx
|
|
89
89
|
var import_react = require("react");
|
|
90
90
|
|
|
91
|
-
// src/components/custom/navbar/
|
|
92
|
-
var
|
|
91
|
+
// src/components/custom/navbar/menuList.tsx
|
|
92
|
+
var import_image2 = __toESM(require("next/image"));
|
|
93
93
|
|
|
94
|
-
// src/components/
|
|
95
|
-
var
|
|
96
|
-
|
|
94
|
+
// src/components/custom/navbar/user.tsx
|
|
95
|
+
var import_image = __toESM(require("next/image"));
|
|
96
|
+
|
|
97
|
+
// src/components/ui/dropdown-menu.tsx
|
|
98
|
+
var DropdownMenuPrimitive = __toESM(require("@radix-ui/react-dropdown-menu"));
|
|
97
99
|
var import_lucide_react = require("lucide-react");
|
|
98
100
|
|
|
99
101
|
// src/lib/utils.ts
|
|
@@ -103,175 +105,15 @@ function cn(...inputs) {
|
|
|
103
105
|
return (0, import_tailwind_merge.twMerge)((0, import_clsx.clsx)(inputs));
|
|
104
106
|
}
|
|
105
107
|
|
|
106
|
-
// src/components/ui/navigation-menu.tsx
|
|
107
|
-
var import_jsx_runtime = require("react/jsx-runtime");
|
|
108
|
-
function NavigationMenu(_a) {
|
|
109
|
-
var _b = _a, {
|
|
110
|
-
className,
|
|
111
|
-
children,
|
|
112
|
-
viewport = true
|
|
113
|
-
} = _b, props = __objRest(_b, [
|
|
114
|
-
"className",
|
|
115
|
-
"children",
|
|
116
|
-
"viewport"
|
|
117
|
-
]);
|
|
118
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
119
|
-
NavigationMenuPrimitive.Root,
|
|
120
|
-
__spreadProps(__spreadValues({
|
|
121
|
-
"data-slot": "navigation-menu",
|
|
122
|
-
"data-viewport": viewport,
|
|
123
|
-
className: cn(
|
|
124
|
-
"group/navigation-menu relative flex max-w-max flex-1 items-center justify-center",
|
|
125
|
-
className
|
|
126
|
-
)
|
|
127
|
-
}, props), {
|
|
128
|
-
children: [
|
|
129
|
-
children,
|
|
130
|
-
viewport && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(NavigationMenuViewport, {})
|
|
131
|
-
]
|
|
132
|
-
})
|
|
133
|
-
);
|
|
134
|
-
}
|
|
135
|
-
function NavigationMenuList(_a) {
|
|
136
|
-
var _b = _a, {
|
|
137
|
-
className
|
|
138
|
-
} = _b, props = __objRest(_b, [
|
|
139
|
-
"className"
|
|
140
|
-
]);
|
|
141
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
142
|
-
NavigationMenuPrimitive.List,
|
|
143
|
-
__spreadValues({
|
|
144
|
-
"data-slot": "navigation-menu-list",
|
|
145
|
-
className: cn(
|
|
146
|
-
"group flex flex-1 list-none items-center justify-center gap-1",
|
|
147
|
-
className
|
|
148
|
-
)
|
|
149
|
-
}, props)
|
|
150
|
-
);
|
|
151
|
-
}
|
|
152
|
-
function NavigationMenuItem(_a) {
|
|
153
|
-
var _b = _a, {
|
|
154
|
-
className
|
|
155
|
-
} = _b, props = __objRest(_b, [
|
|
156
|
-
"className"
|
|
157
|
-
]);
|
|
158
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
159
|
-
NavigationMenuPrimitive.Item,
|
|
160
|
-
__spreadValues({
|
|
161
|
-
"data-slot": "navigation-menu-item",
|
|
162
|
-
className: cn("relative", className)
|
|
163
|
-
}, props)
|
|
164
|
-
);
|
|
165
|
-
}
|
|
166
|
-
var navigationMenuTriggerStyle = (0, import_class_variance_authority.cva)(
|
|
167
|
-
"group inline-flex h-9 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=open]:hover:bg-accent data-[state=open]:text-accent-foreground data-[state=open]:focus:bg-accent data-[state=open]:bg-accent/50 focus-visible:ring-ring/50 outline-none transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1"
|
|
168
|
-
);
|
|
169
|
-
function NavigationMenuTrigger(_a) {
|
|
170
|
-
var _b = _a, {
|
|
171
|
-
className,
|
|
172
|
-
children
|
|
173
|
-
} = _b, props = __objRest(_b, [
|
|
174
|
-
"className",
|
|
175
|
-
"children"
|
|
176
|
-
]);
|
|
177
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
178
|
-
NavigationMenuPrimitive.Trigger,
|
|
179
|
-
__spreadProps(__spreadValues({
|
|
180
|
-
"data-slot": "navigation-menu-trigger",
|
|
181
|
-
className: cn(navigationMenuTriggerStyle(), "group", className)
|
|
182
|
-
}, props), {
|
|
183
|
-
children: [
|
|
184
|
-
children,
|
|
185
|
-
" ",
|
|
186
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
187
|
-
import_lucide_react.ChevronDownIcon,
|
|
188
|
-
{
|
|
189
|
-
className: "relative top-[1px] ml-1 size-3 transition duration-300 group-data-[state=open]:rotate-180",
|
|
190
|
-
"aria-hidden": "true"
|
|
191
|
-
}
|
|
192
|
-
)
|
|
193
|
-
]
|
|
194
|
-
})
|
|
195
|
-
);
|
|
196
|
-
}
|
|
197
|
-
function NavigationMenuContent(_a) {
|
|
198
|
-
var _b = _a, {
|
|
199
|
-
className
|
|
200
|
-
} = _b, props = __objRest(_b, [
|
|
201
|
-
"className"
|
|
202
|
-
]);
|
|
203
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
204
|
-
NavigationMenuPrimitive.Content,
|
|
205
|
-
__spreadValues({
|
|
206
|
-
"data-slot": "navigation-menu-content",
|
|
207
|
-
className: cn(
|
|
208
|
-
"data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52 data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52 top-0 left-0 w-full p-2 pr-2.5 md:absolute md:w-auto",
|
|
209
|
-
"group-data-[viewport=false]/navigation-menu:bg-popover group-data-[viewport=false]/navigation-menu:text-popover-foreground group-data-[viewport=false]/navigation-menu:data-[state=open]:animate-in group-data-[viewport=false]/navigation-menu:data-[state=closed]:animate-out group-data-[viewport=false]/navigation-menu:data-[state=closed]:zoom-out-95 group-data-[viewport=false]/navigation-menu:data-[state=open]:zoom-in-95 group-data-[viewport=false]/navigation-menu:data-[state=open]:fade-in-0 group-data-[viewport=false]/navigation-menu:data-[state=closed]:fade-out-0 group-data-[viewport=false]/navigation-menu:top-full group-data-[viewport=false]/navigation-menu:mt-1.5 group-data-[viewport=false]/navigation-menu:overflow-hidden group-data-[viewport=false]/navigation-menu:rounded-md group-data-[viewport=false]/navigation-menu:border group-data-[viewport=false]/navigation-menu:shadow group-data-[viewport=false]/navigation-menu:duration-200 **:data-[slot=navigation-menu-link]:focus:ring-0 **:data-[slot=navigation-menu-link]:focus:outline-none",
|
|
210
|
-
className
|
|
211
|
-
)
|
|
212
|
-
}, props)
|
|
213
|
-
);
|
|
214
|
-
}
|
|
215
|
-
function NavigationMenuViewport(_a) {
|
|
216
|
-
var _b = _a, {
|
|
217
|
-
className
|
|
218
|
-
} = _b, props = __objRest(_b, [
|
|
219
|
-
"className"
|
|
220
|
-
]);
|
|
221
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
222
|
-
"div",
|
|
223
|
-
{
|
|
224
|
-
className: cn(
|
|
225
|
-
"absolute top-full left-0 isolate z-50 flex justify-center"
|
|
226
|
-
),
|
|
227
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
228
|
-
NavigationMenuPrimitive.Viewport,
|
|
229
|
-
__spreadValues({
|
|
230
|
-
"data-slot": "navigation-menu-viewport",
|
|
231
|
-
className: cn(
|
|
232
|
-
"origin-top-center bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-90 relative mt-1.5 h-[var(--radix-navigation-menu-viewport-height)] w-full overflow-hidden rounded-md border shadow md:w-[var(--radix-navigation-menu-viewport-width)]",
|
|
233
|
-
className
|
|
234
|
-
)
|
|
235
|
-
}, props)
|
|
236
|
-
)
|
|
237
|
-
}
|
|
238
|
-
);
|
|
239
|
-
}
|
|
240
|
-
function NavigationMenuLink(_a) {
|
|
241
|
-
var _b = _a, {
|
|
242
|
-
className
|
|
243
|
-
} = _b, props = __objRest(_b, [
|
|
244
|
-
"className"
|
|
245
|
-
]);
|
|
246
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
247
|
-
NavigationMenuPrimitive.Link,
|
|
248
|
-
__spreadValues({
|
|
249
|
-
"data-slot": "navigation-menu-link",
|
|
250
|
-
className: cn(
|
|
251
|
-
"data-[active=true]:focus:bg-accent data-[active=true]:hover:bg-accent data-[active=true]:bg-accent/50 data-[active=true]:text-accent-foreground hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground focus-visible:ring-ring/50 [&_svg:not([class*='text-'])]:text-muted-foreground flex flex-col gap-1 rounded-sm p-2 text-sm transition-all outline-none focus-visible:ring-[3px] focus-visible:outline-1 [&_svg:not([class*='size-'])]:size-4",
|
|
252
|
-
className
|
|
253
|
-
)
|
|
254
|
-
}, props)
|
|
255
|
-
);
|
|
256
|
-
}
|
|
257
|
-
|
|
258
|
-
// src/components/custom/navbar/desktopNavbar.tsx
|
|
259
|
-
var import_image2 = __toESM(require("next/image"));
|
|
260
|
-
|
|
261
|
-
// src/components/custom/navbar/user.tsx
|
|
262
|
-
var import_image = __toESM(require("next/image"));
|
|
263
|
-
|
|
264
108
|
// src/components/ui/dropdown-menu.tsx
|
|
265
|
-
var
|
|
266
|
-
var import_lucide_react2 = require("lucide-react");
|
|
267
|
-
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
109
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
268
110
|
function DropdownMenu(_a) {
|
|
269
111
|
var props = __objRest(_a, []);
|
|
270
|
-
return /* @__PURE__ */ (0,
|
|
112
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DropdownMenuPrimitive.Root, __spreadValues({ "data-slot": "dropdown-menu" }, props));
|
|
271
113
|
}
|
|
272
114
|
function DropdownMenuTrigger(_a) {
|
|
273
115
|
var props = __objRest(_a, []);
|
|
274
|
-
return /* @__PURE__ */ (0,
|
|
116
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
275
117
|
DropdownMenuPrimitive.Trigger,
|
|
276
118
|
__spreadValues({
|
|
277
119
|
"data-slot": "dropdown-menu-trigger"
|
|
@@ -286,7 +128,7 @@ function DropdownMenuContent(_a) {
|
|
|
286
128
|
"className",
|
|
287
129
|
"sideOffset"
|
|
288
130
|
]);
|
|
289
|
-
return /* @__PURE__ */ (0,
|
|
131
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
290
132
|
DropdownMenuPrimitive.Content,
|
|
291
133
|
__spreadValues({
|
|
292
134
|
"data-slot": "dropdown-menu-content",
|
|
@@ -300,11 +142,11 @@ function DropdownMenuContent(_a) {
|
|
|
300
142
|
}
|
|
301
143
|
|
|
302
144
|
// src/components/custom/navbar/user.tsx
|
|
303
|
-
var
|
|
145
|
+
var import_lucide_react2 = require("lucide-react");
|
|
304
146
|
|
|
305
147
|
// src/components/ui/separator.tsx
|
|
306
148
|
var SeparatorPrimitive = __toESM(require("@radix-ui/react-separator"));
|
|
307
|
-
var
|
|
149
|
+
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
308
150
|
function Separator2(_a) {
|
|
309
151
|
var _b = _a, {
|
|
310
152
|
className,
|
|
@@ -315,7 +157,7 @@ function Separator2(_a) {
|
|
|
315
157
|
"orientation",
|
|
316
158
|
"decorative"
|
|
317
159
|
]);
|
|
318
|
-
return /* @__PURE__ */ (0,
|
|
160
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
319
161
|
SeparatorPrimitive.Root,
|
|
320
162
|
__spreadValues({
|
|
321
163
|
"data-slot": "separator",
|
|
@@ -331,9 +173,9 @@ function Separator2(_a) {
|
|
|
331
173
|
|
|
332
174
|
// src/components/ui/button.tsx
|
|
333
175
|
var import_react_slot = require("@radix-ui/react-slot");
|
|
334
|
-
var
|
|
335
|
-
var
|
|
336
|
-
var buttonVariants = (0,
|
|
176
|
+
var import_class_variance_authority = require("class-variance-authority");
|
|
177
|
+
var import_jsx_runtime3 = require("react/jsx-runtime");
|
|
178
|
+
var buttonVariants = (0, import_class_variance_authority.cva)(
|
|
337
179
|
"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
|
|
338
180
|
{
|
|
339
181
|
variants: {
|
|
@@ -371,7 +213,7 @@ function Button(_a) {
|
|
|
371
213
|
"asChild"
|
|
372
214
|
]);
|
|
373
215
|
const Comp = asChild ? import_react_slot.Slot : "button";
|
|
374
|
-
return /* @__PURE__ */ (0,
|
|
216
|
+
return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
375
217
|
Comp,
|
|
376
218
|
__spreadValues({
|
|
377
219
|
"data-slot": "button",
|
|
@@ -384,7 +226,7 @@ function Button(_a) {
|
|
|
384
226
|
var user_default = 'data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_3747_24298)">%0A<circle cx="12" cy="12" r="12" fill="%2348546B"/>%0A<path d="M7.5 9.5C7.5 11.981 9.519 14 12 14C14.481 14 16.5 11.981 16.5 9.5C16.5 7.019 14.481 5 12 5C9.519 5 7.5 7.019 7.5 9.5ZM20 24H21V23C21 19.141 17.859 16 14 16H10C6.14 16 3 19.141 3 23V24H20Z" fill="%236E7DFF"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_3747_24298">%0A<rect width="24" height="24" rx="12" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';
|
|
385
227
|
|
|
386
228
|
// src/components/custom/navbar/user.tsx
|
|
387
|
-
var
|
|
229
|
+
var import_jsx_runtime4 = require("react/jsx-runtime");
|
|
388
230
|
var User = ({ userData, onLogout }) => {
|
|
389
231
|
var _a;
|
|
390
232
|
const safeUserData = userData || {
|
|
@@ -404,29 +246,29 @@ var User = ({ userData, onLogout }) => {
|
|
|
404
246
|
"Logout clicked - please provide onLogout prop for custom behavior"
|
|
405
247
|
);
|
|
406
248
|
};
|
|
407
|
-
return /* @__PURE__ */ (0,
|
|
408
|
-
/* @__PURE__ */ (0,
|
|
409
|
-
/* @__PURE__ */ (0,
|
|
410
|
-
/* @__PURE__ */ (0,
|
|
411
|
-
/* @__PURE__ */ (0,
|
|
412
|
-
/* @__PURE__ */ (0,
|
|
249
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(DropdownMenu, { children: [
|
|
250
|
+
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(DropdownMenuTrigger, { className: "cursor-pointer", asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_image.default, { src: user_default, alt: "Profile", width: 32, height: 32 }) }),
|
|
251
|
+
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(DropdownMenuContent, { className: "w-56", align: "start", children: /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("div", { className: "p-4", children: [
|
|
252
|
+
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)("h1", { className: "font-semibold", children: safeUserData.name }),
|
|
253
|
+
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)("h3", { className: "text-primary text-sm", children: safeUserData.role }),
|
|
254
|
+
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Separator2, { className: "my-4" }),
|
|
413
255
|
(_a = [
|
|
414
|
-
{ icon:
|
|
415
|
-
{ icon:
|
|
416
|
-
{ icon:
|
|
417
|
-
]) == null ? void 0 : _a.map(({ icon: Icon, text }, i) => /* @__PURE__ */ (0,
|
|
256
|
+
{ icon: import_lucide_react2.Mail, text: safeUserData.email },
|
|
257
|
+
{ icon: import_lucide_react2.Phone, text: safeUserData.phone },
|
|
258
|
+
{ icon: import_lucide_react2.MapPin, text: safeUserData.location }
|
|
259
|
+
]) == null ? void 0 : _a.map(({ icon: Icon, text }, i) => /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(
|
|
418
260
|
"p",
|
|
419
261
|
{
|
|
420
262
|
className: "flex items-center gap-2 text-sm py-1",
|
|
421
263
|
children: [
|
|
422
|
-
/* @__PURE__ */ (0,
|
|
264
|
+
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Icon, { size: 12 }),
|
|
423
265
|
" ",
|
|
424
266
|
text
|
|
425
267
|
]
|
|
426
268
|
},
|
|
427
269
|
i
|
|
428
270
|
)),
|
|
429
|
-
/* @__PURE__ */ (0,
|
|
271
|
+
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Button, { className: "w-full mt-4", onClick: handleLogout, children: "Logout" })
|
|
430
272
|
] }) })
|
|
431
273
|
] });
|
|
432
274
|
};
|
|
@@ -435,66 +277,246 @@ var user_default2 = User;
|
|
|
435
277
|
// src/assets/svg/sidebarIcon.svg
|
|
436
278
|
var sidebarIcon_default = 'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="48" height="13" viewBox="0 0 48 13" fill="none">%0A <path d="M23.9953 12.5C27.3257 12.5 30.0255 9.81371 30.0255 6.5C30.0255 3.18629 27.3257 0.5 23.9953 0.5C20.6649 0.5 17.9651 3.18629 17.9651 6.5C17.9651 9.81371 20.6649 12.5 23.9953 12.5Z" fill="%23F7941D"/>%0A <path d="M15.2876 6.49978C15.2876 7.27496 15.3922 8.0248 15.584 8.73994C15.592 8.76796 15.5665 8.79331 15.5384 8.7853C10.428 7.39104 5.31906 5.99678 0.210065 4.60385C-0.11042 4.51579 -0.0473957 4.04614 0.285158 4.04614H15.5866C15.6135 4.04614 15.6296 4.06749 15.6229 4.09417C15.4432 4.74528 15.3654 5.28297 15.3292 5.65655C15.2903 6.05815 15.2876 6.38637 15.2876 6.49844V6.49978Z" fill="white"/>%0A <path d="M32.7098 6.49953C32.7098 7.27472 32.6052 8.02455 32.4135 8.7397C32.4054 8.76771 32.4309 8.79306 32.459 8.78506C37.568 7.39079 42.6784 5.99653 47.7874 4.6036C48.1078 4.51554 48.0448 4.0459 47.7123 4.0459H32.4108C32.384 4.0459 32.3679 4.06725 32.3746 4.09393C32.5543 4.74503 32.632 5.28272 32.6682 5.65631C32.7071 6.05791 32.7098 6.38613 32.7098 6.4982V6.49953Z" fill="white"/>%0A</svg>';
|
|
437
279
|
|
|
438
|
-
// src/components/
|
|
280
|
+
// src/components/ui/menubar.tsx
|
|
281
|
+
var MenubarPrimitive = __toESM(require("@radix-ui/react-menubar"));
|
|
282
|
+
var import_lucide_react3 = require("lucide-react");
|
|
283
|
+
var import_jsx_runtime5 = require("react/jsx-runtime");
|
|
284
|
+
function Menubar(_a) {
|
|
285
|
+
var _b = _a, {
|
|
286
|
+
className
|
|
287
|
+
} = _b, props = __objRest(_b, [
|
|
288
|
+
"className"
|
|
289
|
+
]);
|
|
290
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
291
|
+
MenubarPrimitive.Root,
|
|
292
|
+
__spreadValues({
|
|
293
|
+
"data-slot": "menubar",
|
|
294
|
+
className: cn(
|
|
295
|
+
"bg-background flex h-9 items-center gap-1 rounded-md border p-1 shadow-xs",
|
|
296
|
+
className
|
|
297
|
+
)
|
|
298
|
+
}, props)
|
|
299
|
+
);
|
|
300
|
+
}
|
|
301
|
+
function MenubarMenu(_a) {
|
|
302
|
+
var props = __objRest(_a, []);
|
|
303
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(MenubarPrimitive.Menu, __spreadValues({ "data-slot": "menubar-menu" }, props));
|
|
304
|
+
}
|
|
305
|
+
function MenubarPortal(_a) {
|
|
306
|
+
var props = __objRest(_a, []);
|
|
307
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(MenubarPrimitive.Portal, __spreadValues({ "data-slot": "menubar-portal" }, props));
|
|
308
|
+
}
|
|
309
|
+
function MenubarTrigger(_a) {
|
|
310
|
+
var _b = _a, {
|
|
311
|
+
className
|
|
312
|
+
} = _b, props = __objRest(_b, [
|
|
313
|
+
"className"
|
|
314
|
+
]);
|
|
315
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
316
|
+
MenubarPrimitive.Trigger,
|
|
317
|
+
__spreadValues({
|
|
318
|
+
"data-slot": "menubar-trigger",
|
|
319
|
+
className: cn(
|
|
320
|
+
"focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex items-center rounded-sm px-2 py-1 text-sm font-medium outline-hidden select-none",
|
|
321
|
+
className
|
|
322
|
+
)
|
|
323
|
+
}, props)
|
|
324
|
+
);
|
|
325
|
+
}
|
|
326
|
+
function MenubarContent(_a) {
|
|
327
|
+
var _b = _a, {
|
|
328
|
+
className,
|
|
329
|
+
align = "start",
|
|
330
|
+
alignOffset = -4,
|
|
331
|
+
sideOffset = 8
|
|
332
|
+
} = _b, props = __objRest(_b, [
|
|
333
|
+
"className",
|
|
334
|
+
"align",
|
|
335
|
+
"alignOffset",
|
|
336
|
+
"sideOffset"
|
|
337
|
+
]);
|
|
338
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(MenubarPortal, { children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
339
|
+
MenubarPrimitive.Content,
|
|
340
|
+
__spreadValues({
|
|
341
|
+
"data-slot": "menubar-content",
|
|
342
|
+
align,
|
|
343
|
+
alignOffset,
|
|
344
|
+
sideOffset,
|
|
345
|
+
className: cn(
|
|
346
|
+
"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[12rem] origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-md",
|
|
347
|
+
className
|
|
348
|
+
)
|
|
349
|
+
}, props)
|
|
350
|
+
) });
|
|
351
|
+
}
|
|
352
|
+
function MenubarItem(_a) {
|
|
353
|
+
var _b = _a, {
|
|
354
|
+
className,
|
|
355
|
+
inset,
|
|
356
|
+
variant = "default"
|
|
357
|
+
} = _b, props = __objRest(_b, [
|
|
358
|
+
"className",
|
|
359
|
+
"inset",
|
|
360
|
+
"variant"
|
|
361
|
+
]);
|
|
362
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
363
|
+
MenubarPrimitive.Item,
|
|
364
|
+
__spreadValues({
|
|
365
|
+
"data-slot": "menubar-item",
|
|
366
|
+
"data-inset": inset,
|
|
367
|
+
"data-variant": variant,
|
|
368
|
+
className: cn(
|
|
369
|
+
"focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
370
|
+
className
|
|
371
|
+
)
|
|
372
|
+
}, props)
|
|
373
|
+
);
|
|
374
|
+
}
|
|
375
|
+
function MenubarSub(_a) {
|
|
376
|
+
var props = __objRest(_a, []);
|
|
377
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(MenubarPrimitive.Sub, __spreadValues({ "data-slot": "menubar-sub" }, props));
|
|
378
|
+
}
|
|
379
|
+
function MenubarSubTrigger(_a) {
|
|
380
|
+
var _b = _a, {
|
|
381
|
+
className,
|
|
382
|
+
inset,
|
|
383
|
+
children
|
|
384
|
+
} = _b, props = __objRest(_b, [
|
|
385
|
+
"className",
|
|
386
|
+
"inset",
|
|
387
|
+
"children"
|
|
388
|
+
]);
|
|
389
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
|
|
390
|
+
MenubarPrimitive.SubTrigger,
|
|
391
|
+
__spreadProps(__spreadValues({
|
|
392
|
+
"data-slot": "menubar-sub-trigger",
|
|
393
|
+
"data-inset": inset,
|
|
394
|
+
className: cn(
|
|
395
|
+
"focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-none select-none data-[inset]:pl-8",
|
|
396
|
+
className
|
|
397
|
+
)
|
|
398
|
+
}, props), {
|
|
399
|
+
children: [
|
|
400
|
+
children,
|
|
401
|
+
/* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_lucide_react3.ChevronRightIcon, { className: "ml-auto h-4 w-4" })
|
|
402
|
+
]
|
|
403
|
+
})
|
|
404
|
+
);
|
|
405
|
+
}
|
|
406
|
+
function MenubarSubContent(_a) {
|
|
407
|
+
var _b = _a, {
|
|
408
|
+
className
|
|
409
|
+
} = _b, props = __objRest(_b, [
|
|
410
|
+
"className"
|
|
411
|
+
]);
|
|
412
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
413
|
+
MenubarPrimitive.SubContent,
|
|
414
|
+
__spreadValues({
|
|
415
|
+
"data-slot": "menubar-sub-content",
|
|
416
|
+
className: cn(
|
|
417
|
+
"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg",
|
|
418
|
+
className
|
|
419
|
+
)
|
|
420
|
+
}, props)
|
|
421
|
+
);
|
|
422
|
+
}
|
|
423
|
+
|
|
424
|
+
// src/components/custom/navbar/customMenu.tsx
|
|
425
|
+
var import_lucide_react4 = require("lucide-react");
|
|
426
|
+
var import_navigation = require("next/navigation");
|
|
439
427
|
var import_jsx_runtime6 = require("react/jsx-runtime");
|
|
428
|
+
function isLeaf(value) {
|
|
429
|
+
return typeof value === "string";
|
|
430
|
+
}
|
|
431
|
+
function MenuItems({ data }) {
|
|
432
|
+
const router = (0, import_navigation.useRouter)();
|
|
433
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_jsx_runtime6.Fragment, { children: Object.entries(data).map(([label, value]) => {
|
|
434
|
+
if (isLeaf(value)) {
|
|
435
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
436
|
+
MenubarItem,
|
|
437
|
+
{
|
|
438
|
+
onClick: () => router.push(`/${value}`),
|
|
439
|
+
children: label
|
|
440
|
+
},
|
|
441
|
+
label
|
|
442
|
+
);
|
|
443
|
+
}
|
|
444
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(MenubarSub, { children: [
|
|
445
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(MenubarSubTrigger, { children: label }),
|
|
446
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(MenubarSubContent, { children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(MenuItems, { data: value }) })
|
|
447
|
+
] }, label);
|
|
448
|
+
}) });
|
|
449
|
+
}
|
|
450
|
+
function MenuList({
|
|
451
|
+
menuKey,
|
|
452
|
+
menuData
|
|
453
|
+
}) {
|
|
454
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Menubar, { className: "bg-transparent border-none ", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(MenubarMenu, { children: [
|
|
455
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(MenubarTrigger, { className: "cursor-pointer group inline-flex items-center", children: [
|
|
456
|
+
menuKey,
|
|
457
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
458
|
+
import_lucide_react4.ChevronDown,
|
|
459
|
+
{
|
|
460
|
+
size: 16,
|
|
461
|
+
className: "ml-1 group-data-[state=open]:hidden"
|
|
462
|
+
}
|
|
463
|
+
),
|
|
464
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
465
|
+
import_lucide_react4.ChevronUp,
|
|
466
|
+
{
|
|
467
|
+
size: 16,
|
|
468
|
+
className: "ml-1 hidden group-data-[state=open]:inline"
|
|
469
|
+
}
|
|
470
|
+
)
|
|
471
|
+
] }),
|
|
472
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(MenubarContent, { children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(MenuItems, { data: menuData }) })
|
|
473
|
+
] }) });
|
|
474
|
+
}
|
|
475
|
+
|
|
476
|
+
// src/components/custom/navbar/menuList.tsx
|
|
477
|
+
var import_jsx_runtime7 = require("react/jsx-runtime");
|
|
440
478
|
function DesktopNavbar({
|
|
441
479
|
navbarData,
|
|
442
480
|
userData,
|
|
443
481
|
onLogout
|
|
444
482
|
}) {
|
|
445
|
-
return /* @__PURE__ */ (0,
|
|
446
|
-
/* @__PURE__ */ (0,
|
|
447
|
-
/* @__PURE__ */ (0,
|
|
448
|
-
|
|
483
|
+
return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("nav", { children: /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex justify-between px-10 py-2 bg-card items-center border-b-1", children: [
|
|
484
|
+
/* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "left flex gap-4 items-center", children: [
|
|
485
|
+
/* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_image2.default, { src: sidebarIcon_default, alt: "Logo", width: 72, height: 18 }),
|
|
486
|
+
Object.keys(navbarData).map((menuKey) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
|
|
487
|
+
MenuList,
|
|
449
488
|
{
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
),
|
|
456
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(NavigationMenu, { viewport: false, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(NavigationMenuList, { children: [
|
|
457
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(NavigationMenuItem, { children: [
|
|
458
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(NavigationMenuTrigger, { className: "bg-card-bg hover:bg-modal-bg", children: "Hub Tool" }),
|
|
459
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(NavigationMenuContent, { className: "bg-card-bg hover:bg-modal-bg", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("ul", { className: "grid w-[200px] gap-4", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("li", { children: [
|
|
460
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(NavigationMenuLink, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_link.default, { href: "#", children: "Components" }) }),
|
|
461
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(NavigationMenuLink, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_link.default, { href: "#", children: "Documentation" }) })
|
|
462
|
-
] }) }) })
|
|
463
|
-
] }),
|
|
464
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(NavigationMenuItem, { children: [
|
|
465
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(NavigationMenuTrigger, { className: "bg-card-bg hover:bg-modal-bg", children: "Admin" }),
|
|
466
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(NavigationMenuContent, { className: "bg-card-bg hover:bg-modal-bg", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("ul", { className: "grid w-[200px] gap-4", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("li", { children: [
|
|
467
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(NavigationMenuLink, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_link.default, { href: "#", children: "Components" }) }),
|
|
468
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(NavigationMenuLink, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_link.default, { href: "#", children: "Documentation" }) })
|
|
469
|
-
] }) }) })
|
|
470
|
-
] })
|
|
471
|
-
] }) })
|
|
489
|
+
menuKey,
|
|
490
|
+
menuData: navbarData[menuKey]
|
|
491
|
+
},
|
|
492
|
+
menuKey
|
|
493
|
+
))
|
|
472
494
|
] }),
|
|
473
|
-
/* @__PURE__ */ (0,
|
|
495
|
+
/* @__PURE__ */ (0, import_jsx_runtime7.jsx)(user_default2, { userData, onLogout })
|
|
474
496
|
] }) });
|
|
475
497
|
}
|
|
476
498
|
|
|
477
499
|
// src/components/custom/navbar/mobileNavbar.tsx
|
|
478
|
-
var
|
|
500
|
+
var import_link = __toESM(require("next/link"));
|
|
479
501
|
var import_image3 = __toESM(require("next/image"));
|
|
480
502
|
|
|
481
503
|
// src/components/ui/sidebar.tsx
|
|
482
504
|
var React2 = __toESM(require("react"));
|
|
483
505
|
var import_react_slot2 = require("@radix-ui/react-slot");
|
|
484
|
-
var
|
|
485
|
-
var
|
|
506
|
+
var import_class_variance_authority2 = require("class-variance-authority");
|
|
507
|
+
var import_lucide_react6 = require("lucide-react");
|
|
486
508
|
|
|
487
509
|
// src/components/ui/sheet.tsx
|
|
488
510
|
var SheetPrimitive = __toESM(require("@radix-ui/react-dialog"));
|
|
489
|
-
var
|
|
490
|
-
var
|
|
511
|
+
var import_lucide_react5 = require("lucide-react");
|
|
512
|
+
var import_jsx_runtime8 = require("react/jsx-runtime");
|
|
491
513
|
function Sheet(_a) {
|
|
492
514
|
var props = __objRest(_a, []);
|
|
493
|
-
return /* @__PURE__ */ (0,
|
|
515
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(SheetPrimitive.Root, __spreadValues({ "data-slot": "sheet" }, props));
|
|
494
516
|
}
|
|
495
517
|
function SheetPortal(_a) {
|
|
496
518
|
var props = __objRest(_a, []);
|
|
497
|
-
return /* @__PURE__ */ (0,
|
|
519
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(SheetPrimitive.Portal, __spreadValues({ "data-slot": "sheet-portal" }, props));
|
|
498
520
|
}
|
|
499
521
|
function SheetOverlay(_a) {
|
|
500
522
|
var _b = _a, {
|
|
@@ -502,7 +524,7 @@ function SheetOverlay(_a) {
|
|
|
502
524
|
} = _b, props = __objRest(_b, [
|
|
503
525
|
"className"
|
|
504
526
|
]);
|
|
505
|
-
return /* @__PURE__ */ (0,
|
|
527
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
506
528
|
SheetPrimitive.Overlay,
|
|
507
529
|
__spreadValues({
|
|
508
530
|
"data-slot": "sheet-overlay",
|
|
@@ -523,9 +545,9 @@ function SheetContent(_a) {
|
|
|
523
545
|
"children",
|
|
524
546
|
"side"
|
|
525
547
|
]);
|
|
526
|
-
return /* @__PURE__ */ (0,
|
|
527
|
-
/* @__PURE__ */ (0,
|
|
528
|
-
/* @__PURE__ */ (0,
|
|
548
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(SheetPortal, { children: [
|
|
549
|
+
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)(SheetOverlay, {}),
|
|
550
|
+
/* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
|
|
529
551
|
SheetPrimitive.Content,
|
|
530
552
|
__spreadProps(__spreadValues({
|
|
531
553
|
"data-slot": "sheet-content",
|
|
@@ -540,9 +562,9 @@ function SheetContent(_a) {
|
|
|
540
562
|
}, props), {
|
|
541
563
|
children: [
|
|
542
564
|
children,
|
|
543
|
-
/* @__PURE__ */ (0,
|
|
544
|
-
/* @__PURE__ */ (0,
|
|
545
|
-
/* @__PURE__ */ (0,
|
|
565
|
+
/* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(SheetPrimitive.Close, { className: "ring-offset-background focus:ring-ring data-[state=open]:bg-secondary absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none", children: [
|
|
566
|
+
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_lucide_react5.XIcon, { className: "size-4" }),
|
|
567
|
+
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { className: "sr-only", children: "Close" })
|
|
546
568
|
] })
|
|
547
569
|
]
|
|
548
570
|
})
|
|
@@ -551,7 +573,7 @@ function SheetContent(_a) {
|
|
|
551
573
|
}
|
|
552
574
|
function SheetHeader(_a) {
|
|
553
575
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
554
|
-
return /* @__PURE__ */ (0,
|
|
576
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
555
577
|
"div",
|
|
556
578
|
__spreadValues({
|
|
557
579
|
"data-slot": "sheet-header",
|
|
@@ -565,7 +587,7 @@ function SheetTitle(_a) {
|
|
|
565
587
|
} = _b, props = __objRest(_b, [
|
|
566
588
|
"className"
|
|
567
589
|
]);
|
|
568
|
-
return /* @__PURE__ */ (0,
|
|
590
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
569
591
|
SheetPrimitive.Title,
|
|
570
592
|
__spreadValues({
|
|
571
593
|
"data-slot": "sheet-title",
|
|
@@ -579,7 +601,7 @@ function SheetDescription(_a) {
|
|
|
579
601
|
} = _b, props = __objRest(_b, [
|
|
580
602
|
"className"
|
|
581
603
|
]);
|
|
582
|
-
return /* @__PURE__ */ (0,
|
|
604
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
583
605
|
SheetPrimitive.Description,
|
|
584
606
|
__spreadValues({
|
|
585
607
|
"data-slot": "sheet-description",
|
|
@@ -590,14 +612,14 @@ function SheetDescription(_a) {
|
|
|
590
612
|
|
|
591
613
|
// src/components/ui/tooltip.tsx
|
|
592
614
|
var TooltipPrimitive = __toESM(require("@radix-ui/react-tooltip"));
|
|
593
|
-
var
|
|
615
|
+
var import_jsx_runtime9 = require("react/jsx-runtime");
|
|
594
616
|
function TooltipProvider(_a) {
|
|
595
617
|
var _b = _a, {
|
|
596
618
|
delayDuration = 0
|
|
597
619
|
} = _b, props = __objRest(_b, [
|
|
598
620
|
"delayDuration"
|
|
599
621
|
]);
|
|
600
|
-
return /* @__PURE__ */ (0,
|
|
622
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
601
623
|
TooltipPrimitive.Provider,
|
|
602
624
|
__spreadValues({
|
|
603
625
|
"data-slot": "tooltip-provider",
|
|
@@ -607,11 +629,11 @@ function TooltipProvider(_a) {
|
|
|
607
629
|
}
|
|
608
630
|
function Tooltip(_a) {
|
|
609
631
|
var props = __objRest(_a, []);
|
|
610
|
-
return /* @__PURE__ */ (0,
|
|
632
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(TooltipProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(TooltipPrimitive.Root, __spreadValues({ "data-slot": "tooltip" }, props)) });
|
|
611
633
|
}
|
|
612
634
|
function TooltipTrigger(_a) {
|
|
613
635
|
var props = __objRest(_a, []);
|
|
614
|
-
return /* @__PURE__ */ (0,
|
|
636
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(TooltipPrimitive.Trigger, __spreadValues({ "data-slot": "tooltip-trigger" }, props));
|
|
615
637
|
}
|
|
616
638
|
function TooltipContent(_a) {
|
|
617
639
|
var _b = _a, {
|
|
@@ -623,7 +645,7 @@ function TooltipContent(_a) {
|
|
|
623
645
|
"sideOffset",
|
|
624
646
|
"children"
|
|
625
647
|
]);
|
|
626
|
-
return /* @__PURE__ */ (0,
|
|
648
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(TooltipPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
|
|
627
649
|
TooltipPrimitive.Content,
|
|
628
650
|
__spreadProps(__spreadValues({
|
|
629
651
|
"data-slot": "tooltip-content",
|
|
@@ -635,14 +657,14 @@ function TooltipContent(_a) {
|
|
|
635
657
|
}, props), {
|
|
636
658
|
children: [
|
|
637
659
|
children,
|
|
638
|
-
/* @__PURE__ */ (0,
|
|
660
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(TooltipPrimitive.Arrow, { className: "bg-primary fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })
|
|
639
661
|
]
|
|
640
662
|
})
|
|
641
663
|
) });
|
|
642
664
|
}
|
|
643
665
|
|
|
644
666
|
// src/components/ui/sidebar.tsx
|
|
645
|
-
var
|
|
667
|
+
var import_jsx_runtime10 = require("react/jsx-runtime");
|
|
646
668
|
var SIDEBAR_COOKIE_NAME = "sidebar_state";
|
|
647
669
|
var SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;
|
|
648
670
|
var SIDEBAR_WIDTH = "16rem";
|
|
@@ -723,7 +745,7 @@ function SidebarProvider(_a) {
|
|
|
723
745
|
toggleSidebar
|
|
724
746
|
]
|
|
725
747
|
);
|
|
726
|
-
return /* @__PURE__ */ (0,
|
|
748
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(SidebarContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
727
749
|
"div",
|
|
728
750
|
__spreadProps(__spreadValues({
|
|
729
751
|
"data-slot": "sidebar-wrapper",
|
|
@@ -756,7 +778,7 @@ function Sidebar(_a) {
|
|
|
756
778
|
]);
|
|
757
779
|
const { isMobile, state, openMobile, setOpenMobile } = useSidebar();
|
|
758
780
|
if (collapsible === "none") {
|
|
759
|
-
return /* @__PURE__ */ (0,
|
|
781
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
760
782
|
"div",
|
|
761
783
|
__spreadProps(__spreadValues({
|
|
762
784
|
"data-slot": "sidebar",
|
|
@@ -770,7 +792,7 @@ function Sidebar(_a) {
|
|
|
770
792
|
);
|
|
771
793
|
}
|
|
772
794
|
if (isMobile) {
|
|
773
|
-
return /* @__PURE__ */ (0,
|
|
795
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Sheet, __spreadProps(__spreadValues({ open: openMobile, onOpenChange: setOpenMobile }, props), { children: /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
|
|
774
796
|
SheetContent,
|
|
775
797
|
{
|
|
776
798
|
"data-sidebar": "sidebar",
|
|
@@ -782,16 +804,16 @@ function Sidebar(_a) {
|
|
|
782
804
|
},
|
|
783
805
|
side,
|
|
784
806
|
children: [
|
|
785
|
-
/* @__PURE__ */ (0,
|
|
786
|
-
/* @__PURE__ */ (0,
|
|
787
|
-
/* @__PURE__ */ (0,
|
|
807
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(SheetHeader, { className: "sr-only", children: [
|
|
808
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)(SheetTitle, { children: "Sidebar" }),
|
|
809
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)(SheetDescription, { children: "Displays the mobile sidebar." })
|
|
788
810
|
] }),
|
|
789
|
-
/* @__PURE__ */ (0,
|
|
811
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { className: "flex h-full w-full flex-col", children })
|
|
790
812
|
]
|
|
791
813
|
}
|
|
792
814
|
) }));
|
|
793
815
|
}
|
|
794
|
-
return /* @__PURE__ */ (0,
|
|
816
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
|
|
795
817
|
"div",
|
|
796
818
|
{
|
|
797
819
|
className: "group peer text-sidebar-foreground hidden md:block",
|
|
@@ -801,7 +823,7 @@ function Sidebar(_a) {
|
|
|
801
823
|
"data-side": side,
|
|
802
824
|
"data-slot": "sidebar",
|
|
803
825
|
children: [
|
|
804
|
-
/* @__PURE__ */ (0,
|
|
826
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
805
827
|
"div",
|
|
806
828
|
{
|
|
807
829
|
"data-slot": "sidebar-gap",
|
|
@@ -813,7 +835,7 @@ function Sidebar(_a) {
|
|
|
813
835
|
)
|
|
814
836
|
}
|
|
815
837
|
),
|
|
816
|
-
/* @__PURE__ */ (0,
|
|
838
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
817
839
|
"div",
|
|
818
840
|
__spreadProps(__spreadValues({
|
|
819
841
|
"data-slot": "sidebar-container",
|
|
@@ -825,7 +847,7 @@ function Sidebar(_a) {
|
|
|
825
847
|
className
|
|
826
848
|
)
|
|
827
849
|
}, props), {
|
|
828
|
-
children: /* @__PURE__ */ (0,
|
|
850
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
829
851
|
"div",
|
|
830
852
|
{
|
|
831
853
|
"data-sidebar": "sidebar",
|
|
@@ -849,7 +871,7 @@ function SidebarTrigger(_a) {
|
|
|
849
871
|
"onClick"
|
|
850
872
|
]);
|
|
851
873
|
const { toggleSidebar, openMobile } = useSidebar();
|
|
852
|
-
return /* @__PURE__ */ (0,
|
|
874
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
|
|
853
875
|
"button",
|
|
854
876
|
__spreadProps(__spreadValues({
|
|
855
877
|
"data-sidebar": "trigger",
|
|
@@ -864,15 +886,15 @@ function SidebarTrigger(_a) {
|
|
|
864
886
|
}
|
|
865
887
|
}, props), {
|
|
866
888
|
children: [
|
|
867
|
-
openMobile ? /* @__PURE__ */ (0,
|
|
868
|
-
/* @__PURE__ */ (0,
|
|
889
|
+
openMobile ? /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_lucide_react6.X, { className: "size-[clamp(1.5rem,1.5rem,1.5rem)]" }) : /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_lucide_react6.Menu, { className: "size-[clamp(1.5rem,1.5rem,1.5rem)]" }),
|
|
890
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)("span", { className: "sr-only", children: "Toggle Sidebar" })
|
|
869
891
|
]
|
|
870
892
|
})
|
|
871
893
|
);
|
|
872
894
|
}
|
|
873
895
|
function SidebarInset(_a) {
|
|
874
896
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
875
|
-
return /* @__PURE__ */ (0,
|
|
897
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
876
898
|
"main",
|
|
877
899
|
__spreadValues({
|
|
878
900
|
"data-slot": "sidebar-inset",
|
|
@@ -886,7 +908,7 @@ function SidebarInset(_a) {
|
|
|
886
908
|
}
|
|
887
909
|
function SidebarContent(_a) {
|
|
888
910
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
889
|
-
return /* @__PURE__ */ (0,
|
|
911
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
890
912
|
"div",
|
|
891
913
|
__spreadValues({
|
|
892
914
|
"data-slot": "sidebar-content",
|
|
@@ -900,7 +922,7 @@ function SidebarContent(_a) {
|
|
|
900
922
|
}
|
|
901
923
|
function SidebarGroup(_a) {
|
|
902
924
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
903
|
-
return /* @__PURE__ */ (0,
|
|
925
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
904
926
|
"div",
|
|
905
927
|
__spreadValues({
|
|
906
928
|
"data-slot": "sidebar-group",
|
|
@@ -914,7 +936,7 @@ function SidebarGroup(_a) {
|
|
|
914
936
|
}
|
|
915
937
|
function SidebarMenu(_a) {
|
|
916
938
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
917
|
-
return /* @__PURE__ */ (0,
|
|
939
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
918
940
|
"ul",
|
|
919
941
|
__spreadValues({
|
|
920
942
|
"data-slot": "sidebar-menu",
|
|
@@ -925,7 +947,7 @@ function SidebarMenu(_a) {
|
|
|
925
947
|
}
|
|
926
948
|
function SidebarMenuItem(_a) {
|
|
927
949
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
928
|
-
return /* @__PURE__ */ (0,
|
|
950
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
929
951
|
"li",
|
|
930
952
|
__spreadValues({
|
|
931
953
|
"data-slot": "sidebar-menu-item",
|
|
@@ -934,7 +956,7 @@ function SidebarMenuItem(_a) {
|
|
|
934
956
|
}, props)
|
|
935
957
|
);
|
|
936
958
|
}
|
|
937
|
-
var sidebarMenuButtonVariants = (0,
|
|
959
|
+
var sidebarMenuButtonVariants = (0, import_class_variance_authority2.cva)(
|
|
938
960
|
"peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-hidden ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-data-[sidebar=menu-action]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0",
|
|
939
961
|
{
|
|
940
962
|
variants: {
|
|
@@ -972,7 +994,7 @@ function SidebarMenuButton(_a) {
|
|
|
972
994
|
]);
|
|
973
995
|
const Comp = asChild ? import_react_slot2.Slot : "button";
|
|
974
996
|
const { isMobile, state } = useSidebar();
|
|
975
|
-
const button = /* @__PURE__ */ (0,
|
|
997
|
+
const button = /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
976
998
|
Comp,
|
|
977
999
|
__spreadValues({
|
|
978
1000
|
"data-slot": "sidebar-menu-button",
|
|
@@ -993,9 +1015,9 @@ function SidebarMenuButton(_a) {
|
|
|
993
1015
|
children: tooltip
|
|
994
1016
|
};
|
|
995
1017
|
}
|
|
996
|
-
return /* @__PURE__ */ (0,
|
|
997
|
-
/* @__PURE__ */ (0,
|
|
998
|
-
/* @__PURE__ */ (0,
|
|
1018
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(Tooltip, { children: [
|
|
1019
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)(TooltipTrigger, { asChild: true, children: button }),
|
|
1020
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
999
1021
|
TooltipContent,
|
|
1000
1022
|
__spreadValues({
|
|
1001
1023
|
side: "right",
|
|
@@ -1007,7 +1029,7 @@ function SidebarMenuButton(_a) {
|
|
|
1007
1029
|
}
|
|
1008
1030
|
function SidebarMenuSub(_a) {
|
|
1009
1031
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
1010
|
-
return /* @__PURE__ */ (0,
|
|
1032
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
1011
1033
|
"ul",
|
|
1012
1034
|
__spreadValues({
|
|
1013
1035
|
"data-slot": "sidebar-menu-sub",
|
|
@@ -1026,7 +1048,7 @@ function SidebarMenuSubItem(_a) {
|
|
|
1026
1048
|
} = _b, props = __objRest(_b, [
|
|
1027
1049
|
"className"
|
|
1028
1050
|
]);
|
|
1029
|
-
return /* @__PURE__ */ (0,
|
|
1051
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
1030
1052
|
"li",
|
|
1031
1053
|
__spreadValues({
|
|
1032
1054
|
"data-slot": "sidebar-menu-sub-item",
|
|
@@ -1048,7 +1070,7 @@ function SidebarMenuSubButton(_a) {
|
|
|
1048
1070
|
"className"
|
|
1049
1071
|
]);
|
|
1050
1072
|
const Comp = asChild ? import_react_slot2.Slot : "a";
|
|
1051
|
-
return /* @__PURE__ */ (0,
|
|
1073
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
1052
1074
|
Comp,
|
|
1053
1075
|
__spreadValues({
|
|
1054
1076
|
"data-slot": "sidebar-menu-sub-button",
|
|
@@ -1068,18 +1090,18 @@ function SidebarMenuSubButton(_a) {
|
|
|
1068
1090
|
}
|
|
1069
1091
|
|
|
1070
1092
|
// src/components/custom/navbar/nav-main.tsx
|
|
1071
|
-
var
|
|
1093
|
+
var import_lucide_react7 = require("lucide-react");
|
|
1072
1094
|
|
|
1073
1095
|
// src/components/ui/collapsible.tsx
|
|
1074
1096
|
var CollapsiblePrimitive = __toESM(require("@radix-ui/react-collapsible"));
|
|
1075
|
-
var
|
|
1097
|
+
var import_jsx_runtime11 = require("react/jsx-runtime");
|
|
1076
1098
|
function Collapsible(_a) {
|
|
1077
1099
|
var props = __objRest(_a, []);
|
|
1078
|
-
return /* @__PURE__ */ (0,
|
|
1100
|
+
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(CollapsiblePrimitive.Root, __spreadValues({ "data-slot": "collapsible" }, props));
|
|
1079
1101
|
}
|
|
1080
1102
|
function CollapsibleTrigger2(_a) {
|
|
1081
1103
|
var props = __objRest(_a, []);
|
|
1082
|
-
return /* @__PURE__ */ (0,
|
|
1104
|
+
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
1083
1105
|
CollapsiblePrimitive.CollapsibleTrigger,
|
|
1084
1106
|
__spreadValues({
|
|
1085
1107
|
"data-slot": "collapsible-trigger"
|
|
@@ -1088,7 +1110,7 @@ function CollapsibleTrigger2(_a) {
|
|
|
1088
1110
|
}
|
|
1089
1111
|
function CollapsibleContent2(_a) {
|
|
1090
1112
|
var props = __objRest(_a, []);
|
|
1091
|
-
return /* @__PURE__ */ (0,
|
|
1113
|
+
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
1092
1114
|
CollapsiblePrimitive.CollapsibleContent,
|
|
1093
1115
|
__spreadValues({
|
|
1094
1116
|
"data-slot": "collapsible-content"
|
|
@@ -1097,30 +1119,30 @@ function CollapsibleContent2(_a) {
|
|
|
1097
1119
|
}
|
|
1098
1120
|
|
|
1099
1121
|
// src/components/custom/navbar/nav-main.tsx
|
|
1100
|
-
var
|
|
1122
|
+
var import_jsx_runtime12 = require("react/jsx-runtime");
|
|
1101
1123
|
function NavMain({ items }) {
|
|
1102
|
-
return /* @__PURE__ */ (0,
|
|
1124
|
+
return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(SidebarGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(SidebarMenu, { children: renderMenu(items) }) });
|
|
1103
1125
|
}
|
|
1104
1126
|
function renderMenu(data) {
|
|
1105
1127
|
return Object.entries(data).map(([title, value]) => {
|
|
1106
1128
|
if (typeof value === "string") {
|
|
1107
|
-
return /* @__PURE__ */ (0,
|
|
1108
|
-
/* @__PURE__ */ (0,
|
|
1109
|
-
/* @__PURE__ */ (0,
|
|
1129
|
+
return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(SidebarMenuSubItem, { children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(SidebarMenuSubButton, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("a", { href: `/${value}`, children: [
|
|
1130
|
+
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react7.CornerDownRight, {}),
|
|
1131
|
+
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)("span", { className: "font-light text-sm", children: title })
|
|
1110
1132
|
] }) }) }, title);
|
|
1111
1133
|
}
|
|
1112
|
-
return /* @__PURE__ */ (0,
|
|
1134
|
+
return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
|
|
1113
1135
|
Collapsible,
|
|
1114
1136
|
{
|
|
1115
1137
|
asChild: true,
|
|
1116
1138
|
defaultOpen: false,
|
|
1117
1139
|
className: "group/collapsible group-data-[state=open]:bg-sidebar-accent group-data-[state=open]:text-sidebar-accent-foreground",
|
|
1118
|
-
children: /* @__PURE__ */ (0,
|
|
1119
|
-
/* @__PURE__ */ (0,
|
|
1120
|
-
/* @__PURE__ */ (0,
|
|
1121
|
-
/* @__PURE__ */ (0,
|
|
1140
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(SidebarMenuItem, { children: [
|
|
1141
|
+
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)(CollapsibleTrigger2, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(SidebarMenuButton, { tooltip: title, children: [
|
|
1142
|
+
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)("span", { className: "font-medium text-lg", children: title }),
|
|
1143
|
+
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react7.ChevronRight, { className: "ml-auto transition-transform duration-200 group-data-[state=open]/collapsible:rotate-90" })
|
|
1122
1144
|
] }) }),
|
|
1123
|
-
/* @__PURE__ */ (0,
|
|
1145
|
+
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)(CollapsibleContent2, { children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(SidebarMenuSub, { children: renderMenu(value) }) })
|
|
1124
1146
|
] })
|
|
1125
1147
|
},
|
|
1126
1148
|
title
|
|
@@ -1129,32 +1151,32 @@ function renderMenu(data) {
|
|
|
1129
1151
|
}
|
|
1130
1152
|
|
|
1131
1153
|
// src/components/custom/navbar/app-sidebar.tsx
|
|
1132
|
-
var
|
|
1154
|
+
var import_jsx_runtime13 = require("react/jsx-runtime");
|
|
1133
1155
|
function AppSidebar(_a) {
|
|
1134
1156
|
var _b = _a, { data } = _b, props = __objRest(_b, ["data"]);
|
|
1135
|
-
return /* @__PURE__ */ (0,
|
|
1157
|
+
return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Sidebar, __spreadProps(__spreadValues({ collapsible: "icon" }, props), { children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(SidebarContent, { children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(NavMain, { items: data }) }) }));
|
|
1136
1158
|
}
|
|
1137
1159
|
|
|
1138
1160
|
// src/components/custom/navbar/mobileNavbar.tsx
|
|
1139
|
-
var
|
|
1161
|
+
var import_jsx_runtime14 = require("react/jsx-runtime");
|
|
1140
1162
|
function MobileNavbar({
|
|
1141
1163
|
navbarData,
|
|
1142
1164
|
userData,
|
|
1143
1165
|
onLogout
|
|
1144
1166
|
}) {
|
|
1145
1167
|
const safeData = navbarData || {};
|
|
1146
|
-
return /* @__PURE__ */ (0,
|
|
1147
|
-
/* @__PURE__ */ (0,
|
|
1148
|
-
/* @__PURE__ */ (0,
|
|
1149
|
-
/* @__PURE__ */ (0,
|
|
1150
|
-
/* @__PURE__ */ (0,
|
|
1168
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(SidebarProvider, { className: "relative w-full", children: [
|
|
1169
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("header", { className: "fixed top-0 left-0 right-0 z-50 flex bg-card h-12 shrink-0 items-center gap-2 transition-[width,height] ease-linear group-has-data-[collapsible=icon]/sidebar-wrapper:h-12 justify-between px-4 w-full border-b-1", children: [
|
|
1170
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)(SidebarTrigger, {}),
|
|
1171
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_link.default, { href: "/", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_image3.default, { src: sidebarIcon_default, alt: "Logo", width: 72, height: 18 }) }),
|
|
1172
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)(user_default2, { userData, onLogout })
|
|
1151
1173
|
] }),
|
|
1152
|
-
/* @__PURE__ */ (0,
|
|
1174
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)(SidebarInset, { className: "pt-12", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(AppSidebar, { data: safeData }) })
|
|
1153
1175
|
] });
|
|
1154
1176
|
}
|
|
1155
1177
|
|
|
1156
1178
|
// src/components/custom/navbar/navbar.tsx
|
|
1157
|
-
var
|
|
1179
|
+
var import_jsx_runtime15 = require("react/jsx-runtime");
|
|
1158
1180
|
function Navbar({
|
|
1159
1181
|
navbarData,
|
|
1160
1182
|
userData,
|
|
@@ -1166,14 +1188,14 @@ function Navbar({
|
|
|
1166
1188
|
setMounted(true);
|
|
1167
1189
|
}, []);
|
|
1168
1190
|
if (!mounted) return null;
|
|
1169
|
-
return /* @__PURE__ */ (0,
|
|
1191
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_jsx_runtime15.Fragment, { children: isMobile ? /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
1170
1192
|
MobileNavbar,
|
|
1171
1193
|
{
|
|
1172
1194
|
navbarData,
|
|
1173
1195
|
userData,
|
|
1174
1196
|
onLogout
|
|
1175
1197
|
}
|
|
1176
|
-
) : /* @__PURE__ */ (0,
|
|
1198
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
1177
1199
|
DesktopNavbar,
|
|
1178
1200
|
{
|
|
1179
1201
|
navbarData,
|