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.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/desktopNavbar.tsx
92
- var import_link = __toESM(require("next/link"));
91
+ // src/components/custom/navbar/menuList.tsx
92
+ var import_image2 = __toESM(require("next/image"));
93
93
 
94
- // src/components/ui/navigation-menu.tsx
95
- var NavigationMenuPrimitive = __toESM(require("@radix-ui/react-navigation-menu"));
96
- var import_class_variance_authority = require("class-variance-authority");
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 DropdownMenuPrimitive = __toESM(require("@radix-ui/react-dropdown-menu"));
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, import_jsx_runtime2.jsx)(DropdownMenuPrimitive.Root, __spreadValues({ "data-slot": "dropdown-menu" }, props));
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, import_jsx_runtime2.jsx)(
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, import_jsx_runtime2.jsx)(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
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 import_lucide_react3 = require("lucide-react");
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 import_jsx_runtime3 = require("react/jsx-runtime");
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, import_jsx_runtime3.jsx)(
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 import_class_variance_authority2 = require("class-variance-authority");
335
- var import_jsx_runtime4 = require("react/jsx-runtime");
336
- var buttonVariants = (0, import_class_variance_authority2.cva)(
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, import_jsx_runtime4.jsx)(
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 import_jsx_runtime5 = require("react/jsx-runtime");
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, import_jsx_runtime5.jsxs)(DropdownMenu, { children: [
408
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(DropdownMenuTrigger, { className: "cursor-pointer", asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_image.default, { src: user_default, alt: "Profile", width: 32, height: 32 }) }),
409
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(DropdownMenuContent, { className: "w-56", align: "start", children: /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "p-4", children: [
410
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("h1", { className: "font-semibold", children: safeUserData.name }),
411
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("h3", { className: "text-primary text-sm", children: safeUserData.role }),
412
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Separator2, { className: "my-4" }),
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: import_lucide_react3.Mail, text: safeUserData.email },
415
- { icon: import_lucide_react3.Phone, text: safeUserData.phone },
416
- { icon: import_lucide_react3.MapPin, text: safeUserData.location }
417
- ]) == null ? void 0 : _a.map(({ icon: Icon, text }, i) => /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
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, import_jsx_runtime5.jsx)(Icon, { size: 12 }),
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, import_jsx_runtime5.jsx)(Button, { className: "w-full mt-4", onClick: handleLogout, children: "Logout" })
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/custom/navbar/desktopNavbar.tsx
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, import_jsx_runtime6.jsx)("nav", { children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "flex justify-between px-10 py-2 bg-card items-center", children: [
446
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "left flex gap-2", children: [
447
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
448
- import_image2.default,
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
- src: sidebarIcon_default,
451
- alt: "Logo",
452
- width: 72,
453
- height: 18
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, import_jsx_runtime6.jsx)(user_default2, { userData, onLogout })
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 import_link2 = __toESM(require("next/link"));
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 import_class_variance_authority3 = require("class-variance-authority");
485
- var import_lucide_react5 = require("lucide-react");
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 import_lucide_react4 = require("lucide-react");
490
- var import_jsx_runtime7 = require("react/jsx-runtime");
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, import_jsx_runtime7.jsx)(SheetPrimitive.Root, __spreadValues({ "data-slot": "sheet" }, props));
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, import_jsx_runtime7.jsx)(SheetPrimitive.Portal, __spreadValues({ "data-slot": "sheet-portal" }, props));
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, import_jsx_runtime7.jsx)(
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, import_jsx_runtime7.jsxs)(SheetPortal, { children: [
527
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(SheetOverlay, {}),
528
- /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
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, import_jsx_runtime7.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: [
544
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react4.XIcon, { className: "size-4" }),
545
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("span", { className: "sr-only", children: "Close" })
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, import_jsx_runtime7.jsx)(
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, import_jsx_runtime7.jsx)(
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, import_jsx_runtime7.jsx)(
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 import_jsx_runtime8 = require("react/jsx-runtime");
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, import_jsx_runtime8.jsx)(
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, import_jsx_runtime8.jsx)(TooltipProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(TooltipPrimitive.Root, __spreadValues({ "data-slot": "tooltip" }, props)) });
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, import_jsx_runtime8.jsx)(TooltipPrimitive.Trigger, __spreadValues({ "data-slot": "tooltip-trigger" }, props));
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, import_jsx_runtime8.jsx)(TooltipPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
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, import_jsx_runtime8.jsx)(TooltipPrimitive.Arrow, { className: "bg-primary fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })
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 import_jsx_runtime9 = require("react/jsx-runtime");
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, import_jsx_runtime9.jsx)(SidebarContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
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, import_jsx_runtime9.jsx)(
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, import_jsx_runtime9.jsx)(Sheet, __spreadProps(__spreadValues({ open: openMobile, onOpenChange: setOpenMobile }, props), { children: /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
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, import_jsx_runtime9.jsxs)(SheetHeader, { className: "sr-only", children: [
786
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(SheetTitle, { children: "Sidebar" }),
787
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(SheetDescription, { children: "Displays the mobile sidebar." })
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, import_jsx_runtime9.jsx)("div", { className: "flex h-full w-full flex-col", children })
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, import_jsx_runtime9.jsxs)(
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, import_jsx_runtime9.jsx)(
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, import_jsx_runtime9.jsx)(
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, import_jsx_runtime9.jsx)(
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, import_jsx_runtime9.jsxs)(
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, import_jsx_runtime9.jsx)(import_lucide_react5.X, { className: "size-[clamp(1.5rem,1.5rem,1.5rem)]" }) : /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_lucide_react5.Menu, { className: "size-[clamp(1.5rem,1.5rem,1.5rem)]" }),
868
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("span", { className: "sr-only", children: "Toggle Sidebar" })
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, import_jsx_runtime9.jsx)(
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, import_jsx_runtime9.jsx)(
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, import_jsx_runtime9.jsx)(
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, import_jsx_runtime9.jsx)(
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, import_jsx_runtime9.jsx)(
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, import_class_variance_authority3.cva)(
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, import_jsx_runtime9.jsx)(
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, import_jsx_runtime9.jsxs)(Tooltip, { children: [
997
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(TooltipTrigger, { asChild: true, children: button }),
998
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
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, import_jsx_runtime9.jsx)(
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, import_jsx_runtime9.jsx)(
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, import_jsx_runtime9.jsx)(
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 import_lucide_react6 = require("lucide-react");
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 import_jsx_runtime10 = require("react/jsx-runtime");
1097
+ var import_jsx_runtime11 = require("react/jsx-runtime");
1076
1098
  function Collapsible(_a) {
1077
1099
  var props = __objRest(_a, []);
1078
- return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(CollapsiblePrimitive.Root, __spreadValues({ "data-slot": "collapsible" }, props));
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, import_jsx_runtime10.jsx)(
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, import_jsx_runtime10.jsx)(
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 import_jsx_runtime11 = require("react/jsx-runtime");
1122
+ var import_jsx_runtime12 = require("react/jsx-runtime");
1101
1123
  function NavMain({ items }) {
1102
- return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(SidebarGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(SidebarMenu, { children: renderMenu(items) }) });
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, import_jsx_runtime11.jsx)(SidebarMenuSubItem, { children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(SidebarMenuSubButton, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("a", { href: `/${value}`, children: [
1108
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(import_lucide_react6.CornerDownRight, {}),
1109
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("span", { className: "font-light text-sm", children: title })
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, import_jsx_runtime11.jsx)(
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, import_jsx_runtime11.jsxs)(SidebarMenuItem, { children: [
1119
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(CollapsibleTrigger2, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(SidebarMenuButton, { tooltip: title, children: [
1120
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("span", { className: "font-medium text-lg", children: title }),
1121
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(import_lucide_react6.ChevronRight, { className: "ml-auto transition-transform duration-200 group-data-[state=open]/collapsible:rotate-90" })
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, import_jsx_runtime11.jsx)(CollapsibleContent2, { children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(SidebarMenuSub, { children: renderMenu(value) }) })
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 import_jsx_runtime12 = require("react/jsx-runtime");
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, import_jsx_runtime12.jsx)(Sidebar, __spreadProps(__spreadValues({ collapsible: "icon" }, props), { children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(SidebarContent, { children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(NavMain, { items: data }) }) }));
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 import_jsx_runtime13 = require("react/jsx-runtime");
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, import_jsx_runtime13.jsxs)(SidebarProvider, { className: "relative w-full", children: [
1147
- /* @__PURE__ */ (0, import_jsx_runtime13.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: [
1148
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(SidebarTrigger, {}),
1149
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_link2.default, { href: "/", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_image3.default, { src: sidebarIcon_default, alt: "Logo", width: 72, height: 18 }) }),
1150
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(user_default2, { userData, onLogout })
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, import_jsx_runtime13.jsx)(SidebarInset, { className: "pt-12", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(AppSidebar, { data: safeData }) })
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 import_jsx_runtime14 = require("react/jsx-runtime");
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, import_jsx_runtime14.jsx)(import_jsx_runtime14.Fragment, { children: isMobile ? /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
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, import_jsx_runtime14.jsx)(
1198
+ ) : /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1177
1199
  DesktopNavbar,
1178
1200
  {
1179
1201
  navbarData,