@onesaz/ui 0.3.22 → 0.3.23

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
@@ -3752,7 +3752,7 @@ function OptionItem({
3752
3752
  disabled: option.disabled,
3753
3753
  onClick: onSelect,
3754
3754
  className: cn(
3755
- "relative flex w-full cursor-pointer select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none",
3755
+ "relative flex w-full cursor-pointer select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm text-left outline-none",
3756
3756
  "hover:bg-muted hover:text-foreground",
3757
3757
  "focus:bg-muted focus:text-foreground",
3758
3758
  "disabled:pointer-events-none disabled:opacity-50",
@@ -4531,20 +4531,18 @@ var DataGridPagination = ({
4531
4531
  const pageSize = table.getState().pagination.pageSize;
4532
4532
  const getPageNumbers = () => {
4533
4533
  const pages = [];
4534
- const maxVisible = 5;
4534
+ const maxVisible = 3;
4535
4535
  if (pageCount <= maxVisible) {
4536
4536
  for (let i = 0; i < pageCount; i++) pages.push(i);
4537
4537
  } else {
4538
4538
  pages.push(0);
4539
- if (currentPage > 2) {
4539
+ if (currentPage > 1) {
4540
4540
  pages.push("ellipsis");
4541
4541
  }
4542
- const start = Math.max(1, currentPage - 1);
4543
- const end = Math.min(pageCount - 2, currentPage + 1);
4544
- for (let i = start; i <= end; i++) {
4545
- if (!pages.includes(i)) pages.push(i);
4542
+ if (currentPage !== 0 && currentPage !== pageCount - 1) {
4543
+ pages.push(currentPage);
4546
4544
  }
4547
- if (currentPage < pageCount - 3) {
4545
+ if (currentPage < pageCount - 2) {
4548
4546
  pages.push("ellipsis");
4549
4547
  }
4550
4548
  if (!pages.includes(pageCount - 1)) {
@@ -4555,27 +4553,29 @@ var DataGridPagination = ({
4555
4553
  };
4556
4554
  const startRow = currentPage * pageSize + 1;
4557
4555
  const endRow = Math.min((currentPage + 1) * pageSize, totalRows);
4558
- return /* @__PURE__ */ jsxs22("div", { className: "flex items-center justify-end gap-4 px-4 py-3 border-t border-border bg-background", children: [
4559
- /* @__PURE__ */ jsxs22("div", { className: "flex items-center gap-2 text-xs text-muted-foreground whitespace-nowrap", children: [
4560
- /* @__PURE__ */ jsx36("span", { children: "Rows per page:" }),
4561
- /* @__PURE__ */ jsx36(
4562
- "select",
4563
- {
4564
- value: pageSize,
4565
- onChange: (e) => table.setPageSize(Number(e.target.value)),
4566
- className: "h-8 rounded-md border border-border bg-background px-2 text-xs text-foreground focus:outline-none focus:ring-2 focus:ring-ring",
4567
- children: pageSizeOptions.map((size) => /* @__PURE__ */ jsx36("option", { value: size, children: size }, size))
4568
- }
4569
- )
4570
- ] }),
4571
- /* @__PURE__ */ jsxs22("span", { className: "text-xs text-muted-foreground whitespace-nowrap", children: [
4572
- startRow,
4573
- "-",
4574
- endRow,
4575
- " of ",
4576
- totalRows
4556
+ return /* @__PURE__ */ jsxs22("div", { className: "flex flex-col gap-1 px-4 py-2 border-t border-border bg-background", children: [
4557
+ /* @__PURE__ */ jsxs22("div", { className: "flex items-center justify-end gap-4 flex-wrap", children: [
4558
+ /* @__PURE__ */ jsxs22("div", { className: "flex items-center gap-2 text-xs text-muted-foreground whitespace-nowrap", children: [
4559
+ /* @__PURE__ */ jsx36("span", { children: "Rows per page:" }),
4560
+ /* @__PURE__ */ jsx36(
4561
+ "select",
4562
+ {
4563
+ value: pageSize,
4564
+ onChange: (e) => table.setPageSize(Number(e.target.value)),
4565
+ className: "h-8 rounded-md border border-border bg-background px-2 text-xs text-foreground focus:outline-none focus:ring-2 focus:ring-ring",
4566
+ children: pageSizeOptions.map((size) => /* @__PURE__ */ jsx36("option", { value: size, children: size }, size))
4567
+ }
4568
+ )
4569
+ ] }),
4570
+ /* @__PURE__ */ jsxs22("span", { className: "text-xs text-muted-foreground whitespace-nowrap", children: [
4571
+ startRow,
4572
+ "\u2013",
4573
+ endRow,
4574
+ " of ",
4575
+ totalRows
4576
+ ] })
4577
4577
  ] }),
4578
- /* @__PURE__ */ jsx36(PaginationNamespace, { className: "mx-0 w-auto", children: /* @__PURE__ */ jsxs22(PaginationContent, { children: [
4578
+ /* @__PURE__ */ jsx36("div", { className: "flex items-center justify-end", children: /* @__PURE__ */ jsx36(PaginationNamespace, { className: "mx-0 w-auto", children: /* @__PURE__ */ jsxs22(PaginationContent, { children: [
4579
4579
  /* @__PURE__ */ jsx36(PaginationItem, { children: /* @__PURE__ */ jsx36(
4580
4580
  Button,
4581
4581
  {
@@ -4630,7 +4630,7 @@ var DataGridPagination = ({
4630
4630
  children: /* @__PURE__ */ jsx36("svg", { className: "h-4 w-4", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: /* @__PURE__ */ jsx36("path", { d: "M13 17l5-5-5-5M6 17l5-5-5-5" }) })
4631
4631
  }
4632
4632
  ) })
4633
- ] }) })
4633
+ ] }) }) })
4634
4634
  ] });
4635
4635
  };
4636
4636
  var ExportDropdown = ({
@@ -4809,16 +4809,16 @@ var DataGridToolbar = ({
4809
4809
  customButtons,
4810
4810
  moreOptions = []
4811
4811
  }) => {
4812
- return /* @__PURE__ */ jsxs22("div", { className: "flex items-center justify-between px-4 py-3 border-b border-border bg-background", children: [
4813
- title && /* @__PURE__ */ jsx36("h3", { className: "text-lg font-semibold text-foreground", children: title }),
4814
- /* @__PURE__ */ jsxs22("div", { className: "flex items-center gap-2 ml-auto", children: [
4812
+ return /* @__PURE__ */ jsxs22("div", { className: "flex flex-wrap items-center gap-2 px-4 py-3 border-b border-border bg-background", children: [
4813
+ title && /* @__PURE__ */ jsx36("h3", { className: "text-sm font-semibold text-foreground shrink-0", children: title }),
4814
+ /* @__PURE__ */ jsxs22("div", { className: "flex flex-wrap items-center gap-2 ml-auto", children: [
4815
4815
  showQuickFilter && /* @__PURE__ */ jsx36(
4816
4816
  Input,
4817
4817
  {
4818
4818
  placeholder: "Search...",
4819
4819
  value: globalFilter ?? "",
4820
4820
  onChange: (e) => setGlobalFilter(e.target.value),
4821
- className: "h-9 w-64"
4821
+ className: "h-9 min-w-[120px] flex-1"
4822
4822
  }
4823
4823
  ),
4824
4824
  showColumnSelector && /* @__PURE__ */ jsx36(ColumnVisibilityDropdown, { table }),
@@ -4904,7 +4904,9 @@ var RowRenderer = ({
4904
4904
  pinnedColumnOffsets,
4905
4905
  isPinnedRow = false,
4906
4906
  rowSpanMap,
4907
- gridColumns
4907
+ gridColumns,
4908
+ measureRef,
4909
+ dataIndex
4908
4910
  }) => {
4909
4911
  const customClassName = getRowClassName?.({ row: row.original, rowIndex });
4910
4912
  const visibleCells = row.getVisibleCells();
@@ -4935,6 +4937,8 @@ var RowRenderer = ({
4935
4937
  return /* @__PURE__ */ jsx36(
4936
4938
  "tr",
4937
4939
  {
4940
+ ref: measureRef,
4941
+ "data-index": dataIndex,
4938
4942
  className: cn(
4939
4943
  "border-b border-border transition-colors hover:bg-muted/50",
4940
4944
  row.getIsSelected() && "bg-accent/10",
@@ -5056,6 +5060,9 @@ var VirtualizedTableBody = ({
5056
5060
  count: rows.length,
5057
5061
  getScrollElement: () => parentRef.current,
5058
5062
  estimateSize: () => rowHeight,
5063
+ // measureElement lets the virtualizer read actual rendered row heights,
5064
+ // which makes variable-height rows (wrapText, JSX cells) work correctly.
5065
+ measureElement: (el) => el.getBoundingClientRect().height,
5059
5066
  overscan
5060
5067
  });
5061
5068
  const virtualRows = virtualizer.getVirtualItems();
@@ -5095,7 +5102,9 @@ var VirtualizedTableBody = ({
5095
5102
  columnWidths,
5096
5103
  pinnedColumnOffsets,
5097
5104
  rowSpanMap,
5098
- gridColumns
5105
+ gridColumns,
5106
+ measureRef: virtualizer.measureElement,
5107
+ dataIndex: virtualRow.index
5099
5108
  },
5100
5109
  row.id
5101
5110
  );
@@ -7187,10 +7196,93 @@ var PackedBubbleChart = ({
7187
7196
  );
7188
7197
  };
7189
7198
 
7190
- // src/components/breadcrumbs.tsx
7199
+ // src/components/bottom-navigation.tsx
7191
7200
  import * as React39 from "react";
7192
7201
  import { jsx as jsx39, jsxs as jsxs25 } from "react/jsx-runtime";
7193
- var Breadcrumbs = React39.forwardRef(
7202
+ var BottomNavigationContext = React39.createContext({
7203
+ value: null,
7204
+ onChange: () => {
7205
+ },
7206
+ showLabels: false
7207
+ });
7208
+ var BottomNavigation = React39.forwardRef(
7209
+ ({ className, value, onChange = () => {
7210
+ }, showLabels = false, children, ...props }, ref) => {
7211
+ return /* @__PURE__ */ jsx39(BottomNavigationContext.Provider, { value: { value, onChange, showLabels }, children: /* @__PURE__ */ jsx39(
7212
+ "div",
7213
+ {
7214
+ ref,
7215
+ role: "navigation",
7216
+ className: cn(
7217
+ "flex h-14 w-full items-stretch bg-background border-t border-border",
7218
+ className
7219
+ ),
7220
+ ...props,
7221
+ children
7222
+ }
7223
+ ) });
7224
+ }
7225
+ );
7226
+ BottomNavigation.displayName = "BottomNavigation";
7227
+ var BottomNavigationAction = React39.forwardRef(
7228
+ ({ className, label, icon, value, showLabel, disabled, onClick, ...props }, ref) => {
7229
+ const ctx = React39.useContext(BottomNavigationContext);
7230
+ const selected = ctx.value !== void 0 && ctx.value !== null && ctx.value === value;
7231
+ const labelVisible = showLabel ?? ctx.showLabels ?? selected;
7232
+ const handleClick = (e) => {
7233
+ ctx.onChange(e, value);
7234
+ onClick?.(e);
7235
+ };
7236
+ return /* @__PURE__ */ jsxs25(
7237
+ "button",
7238
+ {
7239
+ ref,
7240
+ type: "button",
7241
+ role: "tab",
7242
+ "aria-selected": selected,
7243
+ disabled,
7244
+ onClick: handleClick,
7245
+ className: cn(
7246
+ "flex flex-1 flex-col items-center justify-center gap-0.5 px-2 py-1",
7247
+ "text-xs font-medium transition-colors duration-150",
7248
+ "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset",
7249
+ "disabled:pointer-events-none disabled:opacity-40",
7250
+ selected ? "text-accent" : "text-muted-foreground hover:text-foreground",
7251
+ className
7252
+ ),
7253
+ ...props,
7254
+ children: [
7255
+ icon && /* @__PURE__ */ jsx39(
7256
+ "span",
7257
+ {
7258
+ className: cn(
7259
+ "transition-transform duration-150",
7260
+ selected && "scale-110"
7261
+ ),
7262
+ children: icon
7263
+ }
7264
+ ),
7265
+ label !== void 0 && /* @__PURE__ */ jsx39(
7266
+ "span",
7267
+ {
7268
+ className: cn(
7269
+ "transition-all duration-150 leading-none",
7270
+ labelVisible ? "opacity-100 max-h-4" : "opacity-0 max-h-0 overflow-hidden"
7271
+ ),
7272
+ children: label
7273
+ }
7274
+ )
7275
+ ]
7276
+ }
7277
+ );
7278
+ }
7279
+ );
7280
+ BottomNavigationAction.displayName = "BottomNavigationAction";
7281
+
7282
+ // src/components/breadcrumbs.tsx
7283
+ import * as React40 from "react";
7284
+ import { jsx as jsx40, jsxs as jsxs26 } from "react/jsx-runtime";
7285
+ var Breadcrumbs = React40.forwardRef(
7194
7286
  ({
7195
7287
  separator,
7196
7288
  maxItems,
@@ -7200,9 +7292,9 @@ var Breadcrumbs = React39.forwardRef(
7200
7292
  children,
7201
7293
  ...props
7202
7294
  }, ref) => {
7203
- const childArray = React39.Children.toArray(children);
7295
+ const childArray = React40.Children.toArray(children);
7204
7296
  const totalItems = childArray.length;
7205
- const separatorElement = separator ?? /* @__PURE__ */ jsx39(
7297
+ const separatorElement = separator ?? /* @__PURE__ */ jsx40(
7206
7298
  "svg",
7207
7299
  {
7208
7300
  xmlns: "http://www.w3.org/2000/svg",
@@ -7215,7 +7307,7 @@ var Breadcrumbs = React39.forwardRef(
7215
7307
  strokeLinecap: "round",
7216
7308
  strokeLinejoin: "round",
7217
7309
  className: "text-muted-foreground",
7218
- children: /* @__PURE__ */ jsx39("path", { d: "m9 18 6-6-6-6" })
7310
+ children: /* @__PURE__ */ jsx40("path", { d: "m9 18 6-6-6-6" })
7219
7311
  }
7220
7312
  );
7221
7313
  const shouldCollapse = maxItems && totalItems > maxItems;
@@ -7225,20 +7317,20 @@ var Breadcrumbs = React39.forwardRef(
7225
7317
  const endItems = childArray.slice(-itemsAfterCollapse);
7226
7318
  displayedItems = [
7227
7319
  ...startItems,
7228
- /* @__PURE__ */ jsx39(BreadcrumbEllipsis, {}, "ellipsis"),
7320
+ /* @__PURE__ */ jsx40(BreadcrumbEllipsis, {}, "ellipsis"),
7229
7321
  ...endItems
7230
7322
  ];
7231
7323
  } else {
7232
7324
  displayedItems = childArray;
7233
7325
  }
7234
- return /* @__PURE__ */ jsx39("nav", { ref, "aria-label": "Breadcrumb", className, ...props, children: /* @__PURE__ */ jsx39("ol", { className: "flex items-center gap-1.5 flex-wrap", children: displayedItems.map((child, index) => /* @__PURE__ */ jsxs25("li", { className: "flex items-center gap-1.5", children: [
7235
- index > 0 && /* @__PURE__ */ jsx39("span", { className: "flex items-center", "aria-hidden": "true", children: separatorElement }),
7326
+ return /* @__PURE__ */ jsx40("nav", { ref, "aria-label": "Breadcrumb", className, ...props, children: /* @__PURE__ */ jsx40("ol", { className: "flex items-center gap-1.5 flex-wrap", children: displayedItems.map((child, index) => /* @__PURE__ */ jsxs26("li", { className: "flex items-center gap-1.5", children: [
7327
+ index > 0 && /* @__PURE__ */ jsx40("span", { className: "flex items-center", "aria-hidden": "true", children: separatorElement }),
7236
7328
  child
7237
7329
  ] }, index)) }) });
7238
7330
  }
7239
7331
  );
7240
7332
  Breadcrumbs.displayName = "Breadcrumbs";
7241
- var BreadcrumbItem = React39.forwardRef(
7333
+ var BreadcrumbItem = React40.forwardRef(
7242
7334
  ({ current = false, href, onClick, className, children, ...props }, ref) => {
7243
7335
  const baseClasses = cn(
7244
7336
  "text-sm transition-colors",
@@ -7247,7 +7339,7 @@ var BreadcrumbItem = React39.forwardRef(
7247
7339
  className
7248
7340
  );
7249
7341
  if (current) {
7250
- return /* @__PURE__ */ jsx39(
7342
+ return /* @__PURE__ */ jsx40(
7251
7343
  "span",
7252
7344
  {
7253
7345
  ref,
@@ -7259,7 +7351,7 @@ var BreadcrumbItem = React39.forwardRef(
7259
7351
  );
7260
7352
  }
7261
7353
  if (href) {
7262
- return /* @__PURE__ */ jsx39(
7354
+ return /* @__PURE__ */ jsx40(
7263
7355
  "a",
7264
7356
  {
7265
7357
  href,
@@ -7269,7 +7361,7 @@ var BreadcrumbItem = React39.forwardRef(
7269
7361
  }
7270
7362
  );
7271
7363
  }
7272
- return /* @__PURE__ */ jsx39(
7364
+ return /* @__PURE__ */ jsx40(
7273
7365
  "span",
7274
7366
  {
7275
7367
  ref,
@@ -7290,8 +7382,8 @@ var BreadcrumbItem = React39.forwardRef(
7290
7382
  }
7291
7383
  );
7292
7384
  BreadcrumbItem.displayName = "BreadcrumbItem";
7293
- var BreadcrumbLink = React39.forwardRef(
7294
- ({ className, ...props }, ref) => /* @__PURE__ */ jsx39(
7385
+ var BreadcrumbLink = React40.forwardRef(
7386
+ ({ className, ...props }, ref) => /* @__PURE__ */ jsx40(
7295
7387
  "a",
7296
7388
  {
7297
7389
  ref,
@@ -7304,8 +7396,8 @@ var BreadcrumbLink = React39.forwardRef(
7304
7396
  )
7305
7397
  );
7306
7398
  BreadcrumbLink.displayName = "BreadcrumbLink";
7307
- var BreadcrumbSeparator = React39.forwardRef(
7308
- ({ className, children, ...props }, ref) => /* @__PURE__ */ jsx39(
7399
+ var BreadcrumbSeparator = React40.forwardRef(
7400
+ ({ className, children, ...props }, ref) => /* @__PURE__ */ jsx40(
7309
7401
  "span",
7310
7402
  {
7311
7403
  ref,
@@ -7313,7 +7405,7 @@ var BreadcrumbSeparator = React39.forwardRef(
7313
7405
  "aria-hidden": "true",
7314
7406
  className: cn("text-muted-foreground", className),
7315
7407
  ...props,
7316
- children: children ?? /* @__PURE__ */ jsx39(
7408
+ children: children ?? /* @__PURE__ */ jsx40(
7317
7409
  "svg",
7318
7410
  {
7319
7411
  xmlns: "http://www.w3.org/2000/svg",
@@ -7325,15 +7417,15 @@ var BreadcrumbSeparator = React39.forwardRef(
7325
7417
  strokeWidth: "2",
7326
7418
  strokeLinecap: "round",
7327
7419
  strokeLinejoin: "round",
7328
- children: /* @__PURE__ */ jsx39("path", { d: "m9 18 6-6-6-6" })
7420
+ children: /* @__PURE__ */ jsx40("path", { d: "m9 18 6-6-6-6" })
7329
7421
  }
7330
7422
  )
7331
7423
  }
7332
7424
  )
7333
7425
  );
7334
7426
  BreadcrumbSeparator.displayName = "BreadcrumbSeparator";
7335
- var BreadcrumbEllipsis = React39.forwardRef(
7336
- ({ className, ...props }, ref) => /* @__PURE__ */ jsx39(
7427
+ var BreadcrumbEllipsis = React40.forwardRef(
7428
+ ({ className, ...props }, ref) => /* @__PURE__ */ jsx40(
7337
7429
  "span",
7338
7430
  {
7339
7431
  ref,
@@ -7341,7 +7433,7 @@ var BreadcrumbEllipsis = React39.forwardRef(
7341
7433
  "aria-hidden": "true",
7342
7434
  className: cn("text-sm text-muted-foreground", className),
7343
7435
  ...props,
7344
- children: /* @__PURE__ */ jsxs25(
7436
+ children: /* @__PURE__ */ jsxs26(
7345
7437
  "svg",
7346
7438
  {
7347
7439
  xmlns: "http://www.w3.org/2000/svg",
@@ -7354,9 +7446,9 @@ var BreadcrumbEllipsis = React39.forwardRef(
7354
7446
  strokeLinecap: "round",
7355
7447
  strokeLinejoin: "round",
7356
7448
  children: [
7357
- /* @__PURE__ */ jsx39("circle", { cx: "12", cy: "12", r: "1" }),
7358
- /* @__PURE__ */ jsx39("circle", { cx: "19", cy: "12", r: "1" }),
7359
- /* @__PURE__ */ jsx39("circle", { cx: "5", cy: "12", r: "1" })
7449
+ /* @__PURE__ */ jsx40("circle", { cx: "12", cy: "12", r: "1" }),
7450
+ /* @__PURE__ */ jsx40("circle", { cx: "19", cy: "12", r: "1" }),
7451
+ /* @__PURE__ */ jsx40("circle", { cx: "5", cy: "12", r: "1" })
7360
7452
  ]
7361
7453
  }
7362
7454
  )
@@ -7364,8 +7456,8 @@ var BreadcrumbEllipsis = React39.forwardRef(
7364
7456
  )
7365
7457
  );
7366
7458
  BreadcrumbEllipsis.displayName = "BreadcrumbEllipsis";
7367
- var BreadcrumbPage = React39.forwardRef(
7368
- ({ className, ...props }, ref) => /* @__PURE__ */ jsx39(
7459
+ var BreadcrumbPage = React40.forwardRef(
7460
+ ({ className, ...props }, ref) => /* @__PURE__ */ jsx40(
7369
7461
  "span",
7370
7462
  {
7371
7463
  ref,
@@ -7378,16 +7470,16 @@ var BreadcrumbPage = React39.forwardRef(
7378
7470
  BreadcrumbPage.displayName = "BreadcrumbPage";
7379
7471
 
7380
7472
  // src/components/dropdown-menu.tsx
7381
- import * as React40 from "react";
7473
+ import * as React41 from "react";
7382
7474
  import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
7383
- import { jsx as jsx40, jsxs as jsxs26 } from "react/jsx-runtime";
7475
+ import { jsx as jsx41, jsxs as jsxs27 } from "react/jsx-runtime";
7384
7476
  var DropdownMenu = DropdownMenuPrimitive.Root;
7385
7477
  var DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;
7386
7478
  var DropdownMenuGroup = DropdownMenuPrimitive.Group;
7387
7479
  var DropdownMenuPortal = DropdownMenuPrimitive.Portal;
7388
7480
  var DropdownMenuSub = DropdownMenuPrimitive.Sub;
7389
7481
  var DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;
7390
- var DropdownMenuSubTrigger = React40.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs26(
7482
+ var DropdownMenuSubTrigger = React41.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs27(
7391
7483
  DropdownMenuPrimitive.SubTrigger,
7392
7484
  {
7393
7485
  ref,
@@ -7401,7 +7493,7 @@ var DropdownMenuSubTrigger = React40.forwardRef(({ className, inset, children, .
7401
7493
  ...props,
7402
7494
  children: [
7403
7495
  children,
7404
- /* @__PURE__ */ jsx40(
7496
+ /* @__PURE__ */ jsx41(
7405
7497
  "svg",
7406
7498
  {
7407
7499
  className: "ml-auto h-4 w-4",
@@ -7412,14 +7504,14 @@ var DropdownMenuSubTrigger = React40.forwardRef(({ className, inset, children, .
7412
7504
  strokeWidth: "2",
7413
7505
  strokeLinecap: "round",
7414
7506
  strokeLinejoin: "round",
7415
- children: /* @__PURE__ */ jsx40("path", { d: "m9 18 6-6-6-6" })
7507
+ children: /* @__PURE__ */ jsx41("path", { d: "m9 18 6-6-6-6" })
7416
7508
  }
7417
7509
  )
7418
7510
  ]
7419
7511
  }
7420
7512
  ));
7421
7513
  DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
7422
- var DropdownMenuSubContent = React40.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx40(
7514
+ var DropdownMenuSubContent = React41.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx41(
7423
7515
  DropdownMenuPrimitive.SubContent,
7424
7516
  {
7425
7517
  ref,
@@ -7436,7 +7528,7 @@ var DropdownMenuSubContent = React40.forwardRef(({ className, ...props }, ref) =
7436
7528
  }
7437
7529
  ));
7438
7530
  DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
7439
- var DropdownMenuContent = React40.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx40(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx40(
7531
+ var DropdownMenuContent = React41.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx41(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx41(
7440
7532
  DropdownMenuPrimitive.Content,
7441
7533
  {
7442
7534
  ref,
@@ -7454,7 +7546,7 @@ var DropdownMenuContent = React40.forwardRef(({ className, sideOffset = 4, ...pr
7454
7546
  }
7455
7547
  ) }));
7456
7548
  DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
7457
- var DropdownMenuItem = React40.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx40(
7549
+ var DropdownMenuItem = React41.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx41(
7458
7550
  DropdownMenuPrimitive.Item,
7459
7551
  {
7460
7552
  ref,
@@ -7470,7 +7562,7 @@ var DropdownMenuItem = React40.forwardRef(({ className, inset, ...props }, ref)
7470
7562
  }
7471
7563
  ));
7472
7564
  DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
7473
- var DropdownMenuCheckboxItem = React40.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs26(
7565
+ var DropdownMenuCheckboxItem = React41.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs27(
7474
7566
  DropdownMenuPrimitive.CheckboxItem,
7475
7567
  {
7476
7568
  ref,
@@ -7483,7 +7575,7 @@ var DropdownMenuCheckboxItem = React40.forwardRef(({ className, children, checke
7483
7575
  checked,
7484
7576
  ...props,
7485
7577
  children: [
7486
- /* @__PURE__ */ jsx40("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx40(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx40(
7578
+ /* @__PURE__ */ jsx41("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx41(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx41(
7487
7579
  "svg",
7488
7580
  {
7489
7581
  className: "h-4 w-4",
@@ -7494,7 +7586,7 @@ var DropdownMenuCheckboxItem = React40.forwardRef(({ className, children, checke
7494
7586
  strokeWidth: "2",
7495
7587
  strokeLinecap: "round",
7496
7588
  strokeLinejoin: "round",
7497
- children: /* @__PURE__ */ jsx40("path", { d: "M20 6 9 17l-5-5" })
7589
+ children: /* @__PURE__ */ jsx41("path", { d: "M20 6 9 17l-5-5" })
7498
7590
  }
7499
7591
  ) }) }),
7500
7592
  children
@@ -7502,7 +7594,7 @@ var DropdownMenuCheckboxItem = React40.forwardRef(({ className, children, checke
7502
7594
  }
7503
7595
  ));
7504
7596
  DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
7505
- var DropdownMenuRadioItem = React40.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs26(
7597
+ var DropdownMenuRadioItem = React41.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs27(
7506
7598
  DropdownMenuPrimitive.RadioItem,
7507
7599
  {
7508
7600
  ref,
@@ -7514,13 +7606,13 @@ var DropdownMenuRadioItem = React40.forwardRef(({ className, children, ...props
7514
7606
  ),
7515
7607
  ...props,
7516
7608
  children: [
7517
- /* @__PURE__ */ jsx40("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx40(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx40(
7609
+ /* @__PURE__ */ jsx41("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx41(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx41(
7518
7610
  "svg",
7519
7611
  {
7520
7612
  className: "h-2 w-2 fill-current",
7521
7613
  xmlns: "http://www.w3.org/2000/svg",
7522
7614
  viewBox: "0 0 24 24",
7523
- children: /* @__PURE__ */ jsx40("circle", { cx: "12", cy: "12", r: "10" })
7615
+ children: /* @__PURE__ */ jsx41("circle", { cx: "12", cy: "12", r: "10" })
7524
7616
  }
7525
7617
  ) }) }),
7526
7618
  children
@@ -7528,7 +7620,7 @@ var DropdownMenuRadioItem = React40.forwardRef(({ className, children, ...props
7528
7620
  }
7529
7621
  ));
7530
7622
  DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
7531
- var DropdownMenuLabel = React40.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx40(
7623
+ var DropdownMenuLabel = React41.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx41(
7532
7624
  DropdownMenuPrimitive.Label,
7533
7625
  {
7534
7626
  ref,
@@ -7541,7 +7633,7 @@ var DropdownMenuLabel = React40.forwardRef(({ className, inset, ...props }, ref)
7541
7633
  }
7542
7634
  ));
7543
7635
  DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
7544
- var DropdownMenuSeparator = React40.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx40(
7636
+ var DropdownMenuSeparator = React41.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx41(
7545
7637
  DropdownMenuPrimitive.Separator,
7546
7638
  {
7547
7639
  ref,
@@ -7554,7 +7646,7 @@ var DropdownMenuShortcut = ({
7554
7646
  className,
7555
7647
  ...props
7556
7648
  }) => {
7557
- return /* @__PURE__ */ jsx40(
7649
+ return /* @__PURE__ */ jsx41(
7558
7650
  "span",
7559
7651
  {
7560
7652
  className: cn("ml-auto text-xs tracking-widest text-muted-foreground", className),
@@ -7565,14 +7657,14 @@ var DropdownMenuShortcut = ({
7565
7657
  DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
7566
7658
 
7567
7659
  // src/components/drawer.tsx
7568
- import * as React41 from "react";
7660
+ import * as React42 from "react";
7569
7661
  import * as DialogPrimitive2 from "@radix-ui/react-dialog";
7570
- import { jsx as jsx41, jsxs as jsxs27 } from "react/jsx-runtime";
7662
+ import { jsx as jsx42, jsxs as jsxs28 } from "react/jsx-runtime";
7571
7663
  var Drawer = DialogPrimitive2.Root;
7572
7664
  var DrawerTrigger = DialogPrimitive2.Trigger;
7573
7665
  var DrawerClose = DialogPrimitive2.Close;
7574
7666
  var DrawerPortal = DialogPrimitive2.Portal;
7575
- var DrawerOverlay = React41.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx41(
7667
+ var DrawerOverlay = React42.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx42(
7576
7668
  DialogPrimitive2.Overlay,
7577
7669
  {
7578
7670
  ref,
@@ -7592,9 +7684,9 @@ var slideVariants = {
7592
7684
  top: "inset-x-0 top-0 w-full data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",
7593
7685
  bottom: "inset-x-0 bottom-0 w-full data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom"
7594
7686
  };
7595
- var DrawerContent = React41.forwardRef(({ side = "right", showClose = true, className, children, ...props }, ref) => /* @__PURE__ */ jsxs27(DrawerPortal, { children: [
7596
- /* @__PURE__ */ jsx41(DrawerOverlay, {}),
7597
- /* @__PURE__ */ jsxs27(
7687
+ var DrawerContent = React42.forwardRef(({ side = "right", showClose = true, className, children, ...props }, ref) => /* @__PURE__ */ jsxs28(DrawerPortal, { children: [
7688
+ /* @__PURE__ */ jsx42(DrawerOverlay, {}),
7689
+ /* @__PURE__ */ jsxs28(
7598
7690
  DialogPrimitive2.Content,
7599
7691
  {
7600
7692
  ref,
@@ -7608,7 +7700,7 @@ var DrawerContent = React41.forwardRef(({ side = "right", showClose = true, clas
7608
7700
  ...props,
7609
7701
  children: [
7610
7702
  children,
7611
- showClose && /* @__PURE__ */ jsxs27(
7703
+ showClose && /* @__PURE__ */ jsxs28(
7612
7704
  DrawerClose,
7613
7705
  {
7614
7706
  className: cn(
@@ -7618,7 +7710,7 @@ var DrawerContent = React41.forwardRef(({ side = "right", showClose = true, clas
7618
7710
  "disabled:pointer-events-none"
7619
7711
  ),
7620
7712
  children: [
7621
- /* @__PURE__ */ jsx41(
7713
+ /* @__PURE__ */ jsx42(
7622
7714
  "svg",
7623
7715
  {
7624
7716
  xmlns: "http://www.w3.org/2000/svg",
@@ -7631,10 +7723,10 @@ var DrawerContent = React41.forwardRef(({ side = "right", showClose = true, clas
7631
7723
  strokeLinecap: "round",
7632
7724
  strokeLinejoin: "round",
7633
7725
  className: "h-4 w-4",
7634
- children: /* @__PURE__ */ jsx41("path", { d: "M18 6 6 18M6 6l12 12" })
7726
+ children: /* @__PURE__ */ jsx42("path", { d: "M18 6 6 18M6 6l12 12" })
7635
7727
  }
7636
7728
  ),
7637
- /* @__PURE__ */ jsx41("span", { className: "sr-only", children: "Close" })
7729
+ /* @__PURE__ */ jsx42("span", { className: "sr-only", children: "Close" })
7638
7730
  ]
7639
7731
  }
7640
7732
  )
@@ -7643,8 +7735,8 @@ var DrawerContent = React41.forwardRef(({ side = "right", showClose = true, clas
7643
7735
  )
7644
7736
  ] }));
7645
7737
  DrawerContent.displayName = "DrawerContent";
7646
- var DrawerHeader = React41.forwardRef(
7647
- ({ className, ...props }, ref) => /* @__PURE__ */ jsx41(
7738
+ var DrawerHeader = React42.forwardRef(
7739
+ ({ className, ...props }, ref) => /* @__PURE__ */ jsx42(
7648
7740
  "div",
7649
7741
  {
7650
7742
  ref,
@@ -7654,7 +7746,7 @@ var DrawerHeader = React41.forwardRef(
7654
7746
  )
7655
7747
  );
7656
7748
  DrawerHeader.displayName = "DrawerHeader";
7657
- var DrawerTitle = React41.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx41(
7749
+ var DrawerTitle = React42.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx42(
7658
7750
  DialogPrimitive2.Title,
7659
7751
  {
7660
7752
  ref,
@@ -7663,7 +7755,7 @@ var DrawerTitle = React41.forwardRef(({ className, ...props }, ref) => /* @__PUR
7663
7755
  }
7664
7756
  ));
7665
7757
  DrawerTitle.displayName = DialogPrimitive2.Title.displayName;
7666
- var DrawerDescription = React41.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx41(
7758
+ var DrawerDescription = React42.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx42(
7667
7759
  DialogPrimitive2.Description,
7668
7760
  {
7669
7761
  ref,
@@ -7672,8 +7764,8 @@ var DrawerDescription = React41.forwardRef(({ className, ...props }, ref) => /*
7672
7764
  }
7673
7765
  ));
7674
7766
  DrawerDescription.displayName = DialogPrimitive2.Description.displayName;
7675
- var DrawerBody = React41.forwardRef(
7676
- ({ className, ...props }, ref) => /* @__PURE__ */ jsx41(
7767
+ var DrawerBody = React42.forwardRef(
7768
+ ({ className, ...props }, ref) => /* @__PURE__ */ jsx42(
7677
7769
  "div",
7678
7770
  {
7679
7771
  ref,
@@ -7683,8 +7775,8 @@ var DrawerBody = React41.forwardRef(
7683
7775
  )
7684
7776
  );
7685
7777
  DrawerBody.displayName = "DrawerBody";
7686
- var DrawerFooter = React41.forwardRef(
7687
- ({ className, ...props }, ref) => /* @__PURE__ */ jsx41(
7778
+ var DrawerFooter = React42.forwardRef(
7779
+ ({ className, ...props }, ref) => /* @__PURE__ */ jsx42(
7688
7780
  "div",
7689
7781
  {
7690
7782
  ref,
@@ -7710,16 +7802,16 @@ var SheetBody = DrawerBody;
7710
7802
  var SheetFooter = DrawerFooter;
7711
7803
 
7712
7804
  // src/components/topbar.tsx
7713
- import * as React42 from "react";
7714
- import { Fragment as Fragment6, jsx as jsx42, jsxs as jsxs28 } from "react/jsx-runtime";
7805
+ import * as React43 from "react";
7806
+ import { Fragment as Fragment6, jsx as jsx43, jsxs as jsxs29 } from "react/jsx-runtime";
7715
7807
  var sizeClasses5 = {
7716
7808
  sm: "h-12",
7717
7809
  md: "h-14",
7718
7810
  lg: "h-16"
7719
7811
  };
7720
- var TopBar = React42.forwardRef(
7812
+ var TopBar = React43.forwardRef(
7721
7813
  ({ className, bordered = true, sticky = false, size = "md", children, ...props }, ref) => {
7722
- return /* @__PURE__ */ jsx42(
7814
+ return /* @__PURE__ */ jsx43(
7723
7815
  "header",
7724
7816
  {
7725
7817
  ref,
@@ -7737,23 +7829,23 @@ var TopBar = React42.forwardRef(
7737
7829
  }
7738
7830
  );
7739
7831
  TopBar.displayName = "TopBar";
7740
- var TopBarBrand = React42.forwardRef(
7832
+ var TopBarBrand = React43.forwardRef(
7741
7833
  ({ className, logo, name, href, children, ...props }, ref) => {
7742
- const content = /* @__PURE__ */ jsxs28(Fragment6, { children: [
7743
- logo && /* @__PURE__ */ jsx42("span", { className: "shrink-0", children: logo }),
7744
- name && /* @__PURE__ */ jsx42("span", { className: "font-semibold text-lg", children: name }),
7834
+ const content = /* @__PURE__ */ jsxs29(Fragment6, { children: [
7835
+ logo && /* @__PURE__ */ jsx43("span", { className: "shrink-0", children: logo }),
7836
+ name && /* @__PURE__ */ jsx43("span", { className: "font-semibold text-lg", children: name }),
7745
7837
  children
7746
7838
  ] });
7747
7839
  if (href) {
7748
- return /* @__PURE__ */ jsx42("div", { ref, className: cn("flex items-center gap-2", className), ...props, children: /* @__PURE__ */ jsx42("a", { href, className: "flex items-center gap-2 hover:opacity-80 transition-opacity", children: content }) });
7840
+ return /* @__PURE__ */ jsx43("div", { ref, className: cn("flex items-center gap-2", className), ...props, children: /* @__PURE__ */ jsx43("a", { href, className: "flex items-center gap-2 hover:opacity-80 transition-opacity", children: content }) });
7749
7841
  }
7750
- return /* @__PURE__ */ jsx42("div", { ref, className: cn("flex items-center gap-2", className), ...props, children: content });
7842
+ return /* @__PURE__ */ jsx43("div", { ref, className: cn("flex items-center gap-2", className), ...props, children: content });
7751
7843
  }
7752
7844
  );
7753
7845
  TopBarBrand.displayName = "TopBarBrand";
7754
- var TopBarNav = React42.forwardRef(
7846
+ var TopBarNav = React43.forwardRef(
7755
7847
  ({ className, children, ...props }, ref) => {
7756
- return /* @__PURE__ */ jsx42(
7848
+ return /* @__PURE__ */ jsx43(
7757
7849
  "nav",
7758
7850
  {
7759
7851
  ref,
@@ -7765,9 +7857,9 @@ var TopBarNav = React42.forwardRef(
7765
7857
  }
7766
7858
  );
7767
7859
  TopBarNav.displayName = "TopBarNav";
7768
- var TopBarNavItem = React42.forwardRef(
7860
+ var TopBarNavItem = React43.forwardRef(
7769
7861
  ({ className, active, children, ...props }, ref) => {
7770
- return /* @__PURE__ */ jsx42(
7862
+ return /* @__PURE__ */ jsx43(
7771
7863
  "a",
7772
7864
  {
7773
7865
  ref,
@@ -7783,9 +7875,9 @@ var TopBarNavItem = React42.forwardRef(
7783
7875
  }
7784
7876
  );
7785
7877
  TopBarNavItem.displayName = "TopBarNavItem";
7786
- var TopBarSection = React42.forwardRef(
7878
+ var TopBarSection = React43.forwardRef(
7787
7879
  ({ className, align = "left", children, ...props }, ref) => {
7788
- return /* @__PURE__ */ jsx42(
7880
+ return /* @__PURE__ */ jsx43(
7789
7881
  "div",
7790
7882
  {
7791
7883
  ref,
@@ -7805,9 +7897,9 @@ var TopBarSection = React42.forwardRef(
7805
7897
  }
7806
7898
  );
7807
7899
  TopBarSection.displayName = "TopBarSection";
7808
- var TopBarDivider = React42.forwardRef(
7900
+ var TopBarDivider = React43.forwardRef(
7809
7901
  ({ className, ...props }, ref) => {
7810
- return /* @__PURE__ */ jsx42(
7902
+ return /* @__PURE__ */ jsx43(
7811
7903
  "div",
7812
7904
  {
7813
7905
  ref,
@@ -7820,17 +7912,17 @@ var TopBarDivider = React42.forwardRef(
7820
7912
  TopBarDivider.displayName = "TopBarDivider";
7821
7913
 
7822
7914
  // src/components/sidebar.tsx
7823
- import * as React43 from "react";
7824
- import { Fragment as Fragment7, jsx as jsx43, jsxs as jsxs29 } from "react/jsx-runtime";
7825
- var SidebarContext = React43.createContext(void 0);
7915
+ import * as React44 from "react";
7916
+ import { Fragment as Fragment7, jsx as jsx44, jsxs as jsxs30 } from "react/jsx-runtime";
7917
+ var SidebarContext = React44.createContext(void 0);
7826
7918
  var useSidebar = () => {
7827
- const context = React43.useContext(SidebarContext);
7919
+ const context = React44.useContext(SidebarContext);
7828
7920
  if (!context) {
7829
7921
  throw new Error("useSidebar must be used within a Sidebar");
7830
7922
  }
7831
7923
  return context;
7832
7924
  };
7833
- var Sidebar = React43.forwardRef(
7925
+ var Sidebar = React44.forwardRef(
7834
7926
  ({
7835
7927
  className,
7836
7928
  collapsed: controlledCollapsed,
@@ -7842,10 +7934,10 @@ var Sidebar = React43.forwardRef(
7842
7934
  children,
7843
7935
  ...props
7844
7936
  }, ref) => {
7845
- const [uncontrolledCollapsed, setUncontrolledCollapsed] = React43.useState(defaultCollapsed);
7937
+ const [uncontrolledCollapsed, setUncontrolledCollapsed] = React44.useState(defaultCollapsed);
7846
7938
  const isControlled = controlledCollapsed !== void 0;
7847
7939
  const collapsed = isControlled ? controlledCollapsed : uncontrolledCollapsed;
7848
- const setCollapsed = React43.useCallback(
7940
+ const setCollapsed = React44.useCallback(
7849
7941
  (value) => {
7850
7942
  if (!isControlled) {
7851
7943
  setUncontrolledCollapsed(value);
@@ -7854,7 +7946,7 @@ var Sidebar = React43.forwardRef(
7854
7946
  },
7855
7947
  [isControlled, onCollapsedChange]
7856
7948
  );
7857
- return /* @__PURE__ */ jsx43(SidebarContext.Provider, { value: { collapsed, setCollapsed }, children: /* @__PURE__ */ jsx43(
7949
+ return /* @__PURE__ */ jsx44(SidebarContext.Provider, { value: { collapsed, setCollapsed }, children: /* @__PURE__ */ jsx44(
7858
7950
  "aside",
7859
7951
  {
7860
7952
  ref,
@@ -7874,9 +7966,9 @@ var Sidebar = React43.forwardRef(
7874
7966
  }
7875
7967
  );
7876
7968
  Sidebar.displayName = "Sidebar";
7877
- var SidebarHeader = React43.forwardRef(
7969
+ var SidebarHeader = React44.forwardRef(
7878
7970
  ({ className, children, ...props }, ref) => {
7879
- return /* @__PURE__ */ jsx43(
7971
+ return /* @__PURE__ */ jsx44(
7880
7972
  "div",
7881
7973
  {
7882
7974
  ref,
@@ -7888,9 +7980,9 @@ var SidebarHeader = React43.forwardRef(
7888
7980
  }
7889
7981
  );
7890
7982
  SidebarHeader.displayName = "SidebarHeader";
7891
- var SidebarContent = React43.forwardRef(
7983
+ var SidebarContent = React44.forwardRef(
7892
7984
  ({ className, children, ...props }, ref) => {
7893
- return /* @__PURE__ */ jsx43(
7985
+ return /* @__PURE__ */ jsx44(
7894
7986
  "div",
7895
7987
  {
7896
7988
  ref,
@@ -7902,9 +7994,9 @@ var SidebarContent = React43.forwardRef(
7902
7994
  }
7903
7995
  );
7904
7996
  SidebarContent.displayName = "SidebarContent";
7905
- var SidebarFooter = React43.forwardRef(
7997
+ var SidebarFooter = React44.forwardRef(
7906
7998
  ({ className, children, ...props }, ref) => {
7907
- return /* @__PURE__ */ jsx43(
7999
+ return /* @__PURE__ */ jsx44(
7908
8000
  "div",
7909
8001
  {
7910
8002
  ref,
@@ -7916,25 +8008,25 @@ var SidebarFooter = React43.forwardRef(
7916
8008
  }
7917
8009
  );
7918
8010
  SidebarFooter.displayName = "SidebarFooter";
7919
- var SidebarGroup = React43.forwardRef(
8011
+ var SidebarGroup = React44.forwardRef(
7920
8012
  ({ className, label, children, ...props }, ref) => {
7921
8013
  const { collapsed } = useSidebar();
7922
- return /* @__PURE__ */ jsxs29("div", { ref, className: cn("px-2 py-2", className), ...props, children: [
7923
- label && !collapsed && /* @__PURE__ */ jsx43("div", { className: "px-2 py-1.5 text-xs font-semibold text-muted-foreground uppercase tracking-wider", children: label }),
7924
- label && collapsed && /* @__PURE__ */ jsx43("div", { className: "flex justify-center py-1.5", children: /* @__PURE__ */ jsx43("div", { className: "h-px w-4 bg-border" }) }),
7925
- /* @__PURE__ */ jsx43("div", { className: "space-y-1", children })
8014
+ return /* @__PURE__ */ jsxs30("div", { ref, className: cn("px-2 py-2", className), ...props, children: [
8015
+ label && !collapsed && /* @__PURE__ */ jsx44("div", { className: "px-2 py-1.5 text-xs font-semibold text-muted-foreground uppercase tracking-wider", children: label }),
8016
+ label && collapsed && /* @__PURE__ */ jsx44("div", { className: "flex justify-center py-1.5", children: /* @__PURE__ */ jsx44("div", { className: "h-px w-4 bg-border" }) }),
8017
+ /* @__PURE__ */ jsx44("div", { className: "space-y-1", children })
7926
8018
  ] });
7927
8019
  }
7928
8020
  );
7929
8021
  SidebarGroup.displayName = "SidebarGroup";
7930
- var SidebarItem = React43.forwardRef(
8022
+ var SidebarItem = React44.forwardRef(
7931
8023
  ({ className, icon, active, disabled, badge, onClick, href, children, ...props }, ref) => {
7932
8024
  const { collapsed } = useSidebar();
7933
- const content = /* @__PURE__ */ jsxs29(Fragment7, { children: [
7934
- icon && /* @__PURE__ */ jsx43("span", { className: cn("shrink-0", collapsed ? "mx-auto" : ""), children: icon }),
7935
- !collapsed && /* @__PURE__ */ jsxs29(Fragment7, { children: [
7936
- /* @__PURE__ */ jsx43("span", { className: "flex-1 truncate", children }),
7937
- badge && /* @__PURE__ */ jsx43("span", { className: "shrink-0", children: badge })
8025
+ const content = /* @__PURE__ */ jsxs30(Fragment7, { children: [
8026
+ icon && /* @__PURE__ */ jsx44("span", { className: cn("shrink-0", collapsed ? "mx-auto" : ""), children: icon }),
8027
+ !collapsed && /* @__PURE__ */ jsxs30(Fragment7, { children: [
8028
+ /* @__PURE__ */ jsx44("span", { className: "flex-1 truncate", children }),
8029
+ badge && /* @__PURE__ */ jsx44("span", { className: "shrink-0", children: badge })
7938
8030
  ] })
7939
8031
  ] });
7940
8032
  const itemClasses = cn(
@@ -7945,9 +8037,9 @@ var SidebarItem = React43.forwardRef(
7945
8037
  className
7946
8038
  );
7947
8039
  if (href) {
7948
- return /* @__PURE__ */ jsx43("div", { ref, ...props, children: /* @__PURE__ */ jsx43("a", { href, className: itemClasses, children: content }) });
8040
+ return /* @__PURE__ */ jsx44("div", { ref, ...props, children: /* @__PURE__ */ jsx44("a", { href, className: itemClasses, children: content }) });
7949
8041
  }
7950
- return /* @__PURE__ */ jsx43(
8042
+ return /* @__PURE__ */ jsx44(
7951
8043
  "div",
7952
8044
  {
7953
8045
  ref,
@@ -7962,20 +8054,20 @@ var SidebarItem = React43.forwardRef(
7962
8054
  }
7963
8055
  );
7964
8056
  SidebarItem.displayName = "SidebarItem";
7965
- var SidebarSubMenu = React43.forwardRef(
8057
+ var SidebarSubMenu = React44.forwardRef(
7966
8058
  ({ className, icon, label, defaultOpen = false, children, ...props }, ref) => {
7967
- const [open, setOpen] = React43.useState(defaultOpen);
8059
+ const [open, setOpen] = React44.useState(defaultOpen);
7968
8060
  const { collapsed } = useSidebar();
7969
- React43.useEffect(() => {
8061
+ React44.useEffect(() => {
7970
8062
  if (collapsed) {
7971
8063
  setOpen(false);
7972
8064
  }
7973
8065
  }, [collapsed]);
7974
8066
  if (collapsed) {
7975
- return /* @__PURE__ */ jsx43(SidebarItem, { icon, className, children: label });
8067
+ return /* @__PURE__ */ jsx44(SidebarItem, { icon, className, children: label });
7976
8068
  }
7977
- return /* @__PURE__ */ jsxs29("div", { ref, className, ...props, children: [
7978
- /* @__PURE__ */ jsxs29(
8069
+ return /* @__PURE__ */ jsxs30("div", { ref, className, ...props, children: [
8070
+ /* @__PURE__ */ jsxs30(
7979
8071
  "div",
7980
8072
  {
7981
8073
  className: cn(
@@ -7986,9 +8078,9 @@ var SidebarSubMenu = React43.forwardRef(
7986
8078
  role: "button",
7987
8079
  tabIndex: 0,
7988
8080
  children: [
7989
- icon && /* @__PURE__ */ jsx43("span", { className: "shrink-0", children: icon }),
7990
- /* @__PURE__ */ jsx43("span", { className: "flex-1 truncate", children: label }),
7991
- /* @__PURE__ */ jsx43(
8081
+ icon && /* @__PURE__ */ jsx44("span", { className: "shrink-0", children: icon }),
8082
+ /* @__PURE__ */ jsx44("span", { className: "flex-1 truncate", children: label }),
8083
+ /* @__PURE__ */ jsx44(
7992
8084
  "svg",
7993
8085
  {
7994
8086
  className: cn("h-4 w-4 shrink-0 transition-transform", open && "rotate-90"),
@@ -7999,21 +8091,21 @@ var SidebarSubMenu = React43.forwardRef(
7999
8091
  strokeWidth: "2",
8000
8092
  strokeLinecap: "round",
8001
8093
  strokeLinejoin: "round",
8002
- children: /* @__PURE__ */ jsx43("path", { d: "m9 18 6-6-6-6" })
8094
+ children: /* @__PURE__ */ jsx44("path", { d: "m9 18 6-6-6-6" })
8003
8095
  }
8004
8096
  )
8005
8097
  ]
8006
8098
  }
8007
8099
  ),
8008
- open && /* @__PURE__ */ jsx43("div", { className: "ml-4 pl-3 border-l border-border space-y-1 mt-1", children })
8100
+ open && /* @__PURE__ */ jsx44("div", { className: "ml-4 pl-3 border-l border-border space-y-1 mt-1", children })
8009
8101
  ] });
8010
8102
  }
8011
8103
  );
8012
8104
  SidebarSubMenu.displayName = "SidebarSubMenu";
8013
- var SidebarToggle = React43.forwardRef(
8105
+ var SidebarToggle = React44.forwardRef(
8014
8106
  ({ className, children, ...props }, ref) => {
8015
8107
  const { collapsed, setCollapsed } = useSidebar();
8016
- return /* @__PURE__ */ jsx43(
8108
+ return /* @__PURE__ */ jsx44(
8017
8109
  "button",
8018
8110
  {
8019
8111
  ref,
@@ -8027,7 +8119,7 @@ var SidebarToggle = React43.forwardRef(
8027
8119
  ),
8028
8120
  "aria-label": collapsed ? "Expand sidebar" : "Collapse sidebar",
8029
8121
  ...props,
8030
- children: children || /* @__PURE__ */ jsxs29(
8122
+ children: children || /* @__PURE__ */ jsxs30(
8031
8123
  "svg",
8032
8124
  {
8033
8125
  className: cn("h-5 w-5 transition-transform", collapsed && "rotate-180"),
@@ -8039,9 +8131,9 @@ var SidebarToggle = React43.forwardRef(
8039
8131
  strokeLinecap: "round",
8040
8132
  strokeLinejoin: "round",
8041
8133
  children: [
8042
- /* @__PURE__ */ jsx43("rect", { width: "18", height: "18", x: "3", y: "3", rx: "2" }),
8043
- /* @__PURE__ */ jsx43("path", { d: "M9 3v18" }),
8044
- /* @__PURE__ */ jsx43("path", { d: "m14 9 3 3-3 3" })
8134
+ /* @__PURE__ */ jsx44("rect", { width: "18", height: "18", x: "3", y: "3", rx: "2" }),
8135
+ /* @__PURE__ */ jsx44("path", { d: "M9 3v18" }),
8136
+ /* @__PURE__ */ jsx44("path", { d: "m14 9 3 3-3 3" })
8045
8137
  ]
8046
8138
  }
8047
8139
  )
@@ -8052,17 +8144,17 @@ var SidebarToggle = React43.forwardRef(
8052
8144
  SidebarToggle.displayName = "SidebarToggle";
8053
8145
 
8054
8146
  // src/components/sidebar-rail.tsx
8055
- import * as React44 from "react";
8056
- import { Fragment as Fragment8, jsx as jsx44, jsxs as jsxs30 } from "react/jsx-runtime";
8057
- var SidebarRailContext = React44.createContext(void 0);
8147
+ import * as React45 from "react";
8148
+ import { Fragment as Fragment8, jsx as jsx45, jsxs as jsxs31 } from "react/jsx-runtime";
8149
+ var SidebarRailContext = React45.createContext(void 0);
8058
8150
  var useSidebarRail = () => {
8059
- const context = React44.useContext(SidebarRailContext);
8151
+ const context = React45.useContext(SidebarRailContext);
8060
8152
  if (!context) {
8061
8153
  throw new Error("useSidebarRail must be used within a SidebarRail");
8062
8154
  }
8063
8155
  return context;
8064
8156
  };
8065
- var SidebarRail = React44.forwardRef(
8157
+ var SidebarRail = React45.forwardRef(
8066
8158
  ({
8067
8159
  className,
8068
8160
  defaultActiveRail = null,
@@ -8080,14 +8172,14 @@ var SidebarRail = React44.forwardRef(
8080
8172
  children,
8081
8173
  ...props
8082
8174
  }, ref) => {
8083
- const [uncontrolledActiveRail, setUncontrolledActiveRail] = React44.useState(defaultActiveRail);
8084
- const [expanded, setExpanded] = React44.useState(!!defaultActiveRail);
8085
- const [uncontrolledRailExpanded, setUncontrolledRailExpanded] = React44.useState(defaultRailExpanded);
8175
+ const [uncontrolledActiveRail, setUncontrolledActiveRail] = React45.useState(defaultActiveRail);
8176
+ const [expanded, setExpanded] = React45.useState(!!defaultActiveRail);
8177
+ const [uncontrolledRailExpanded, setUncontrolledRailExpanded] = React45.useState(defaultRailExpanded);
8086
8178
  const isControlled = controlledActiveRail !== void 0;
8087
8179
  const activeRail = isControlled ? controlledActiveRail : uncontrolledActiveRail;
8088
8180
  const isRailControlled = controlledRailExpanded !== void 0;
8089
8181
  const railExpanded = isRailControlled ? controlledRailExpanded : uncontrolledRailExpanded;
8090
- const setActiveRail = React44.useCallback(
8182
+ const setActiveRail = React45.useCallback(
8091
8183
  (rail) => {
8092
8184
  if (!isControlled) {
8093
8185
  setUncontrolledActiveRail(rail);
@@ -8097,7 +8189,7 @@ var SidebarRail = React44.forwardRef(
8097
8189
  },
8098
8190
  [isControlled, onActiveRailChange]
8099
8191
  );
8100
- const setRailExpanded = React44.useCallback(
8192
+ const setRailExpanded = React45.useCallback(
8101
8193
  (value) => {
8102
8194
  if (!isRailControlled) {
8103
8195
  setUncontrolledRailExpanded(value);
@@ -8106,7 +8198,7 @@ var SidebarRail = React44.forwardRef(
8106
8198
  },
8107
8199
  [isRailControlled, onRailExpandedChange]
8108
8200
  );
8109
- return /* @__PURE__ */ jsx44(
8201
+ return /* @__PURE__ */ jsx45(
8110
8202
  SidebarRailContext.Provider,
8111
8203
  {
8112
8204
  value: {
@@ -8120,7 +8212,7 @@ var SidebarRail = React44.forwardRef(
8120
8212
  overlayRail: overlayRail && expandableRail,
8121
8213
  expandableRail
8122
8214
  },
8123
- children: /* @__PURE__ */ jsx44(
8215
+ children: /* @__PURE__ */ jsx45(
8124
8216
  "div",
8125
8217
  {
8126
8218
  ref,
@@ -8143,11 +8235,11 @@ var SidebarRail = React44.forwardRef(
8143
8235
  }
8144
8236
  );
8145
8237
  SidebarRail.displayName = "SidebarRail";
8146
- var IconRail = React44.forwardRef(
8238
+ var IconRail = React45.forwardRef(
8147
8239
  ({ className, children, ...props }, ref) => {
8148
8240
  const { railExpanded, overlayRail, expandableRail } = useSidebarRail();
8149
8241
  const isExpanded = expandableRail && railExpanded;
8150
- return /* @__PURE__ */ jsx44(
8242
+ return /* @__PURE__ */ jsx45(
8151
8243
  "div",
8152
8244
  {
8153
8245
  ref,
@@ -8156,7 +8248,7 @@ var IconRail = React44.forwardRef(
8156
8248
  isExpanded && !overlayRail ? "w-[var(--rail-expanded-width)]" : "w-[var(--rail-width)]"
8157
8249
  ),
8158
8250
  ...props,
8159
- children: /* @__PURE__ */ jsx44(
8251
+ children: /* @__PURE__ */ jsx45(
8160
8252
  "div",
8161
8253
  {
8162
8254
  className: cn(
@@ -8173,9 +8265,9 @@ var IconRail = React44.forwardRef(
8173
8265
  }
8174
8266
  );
8175
8267
  IconRail.displayName = "IconRail";
8176
- var IconRailHeader = React44.forwardRef(
8268
+ var IconRailHeader = React45.forwardRef(
8177
8269
  ({ className, children, ...props }, ref) => {
8178
- return /* @__PURE__ */ jsx44(
8270
+ return /* @__PURE__ */ jsx45(
8179
8271
  "div",
8180
8272
  {
8181
8273
  ref,
@@ -8190,9 +8282,9 @@ var IconRailHeader = React44.forwardRef(
8190
8282
  }
8191
8283
  );
8192
8284
  IconRailHeader.displayName = "IconRailHeader";
8193
- var IconRailContent = React44.forwardRef(
8285
+ var IconRailContent = React45.forwardRef(
8194
8286
  ({ className, children, ...props }, ref) => {
8195
- return /* @__PURE__ */ jsx44(
8287
+ return /* @__PURE__ */ jsx45(
8196
8288
  "div",
8197
8289
  {
8198
8290
  ref,
@@ -8204,9 +8296,9 @@ var IconRailContent = React44.forwardRef(
8204
8296
  }
8205
8297
  );
8206
8298
  IconRailContent.displayName = "IconRailContent";
8207
- var IconRailFooter = React44.forwardRef(
8299
+ var IconRailFooter = React45.forwardRef(
8208
8300
  ({ className, children, ...props }, ref) => {
8209
- return /* @__PURE__ */ jsx44(
8301
+ return /* @__PURE__ */ jsx45(
8210
8302
  "div",
8211
8303
  {
8212
8304
  ref,
@@ -8221,7 +8313,7 @@ var IconRailFooter = React44.forwardRef(
8221
8313
  }
8222
8314
  );
8223
8315
  IconRailFooter.displayName = "IconRailFooter";
8224
- var IconRailItem = React44.forwardRef(
8316
+ var IconRailItem = React45.forwardRef(
8225
8317
  ({ className, railId, icon, label, asButton = false, toggleRail = false, onClick, ...props }, ref) => {
8226
8318
  const {
8227
8319
  activeRail,
@@ -8247,7 +8339,7 @@ var IconRailItem = React44.forwardRef(
8247
8339
  setActiveRail(railId);
8248
8340
  }
8249
8341
  };
8250
- return /* @__PURE__ */ jsxs30(
8342
+ return /* @__PURE__ */ jsxs31(
8251
8343
  "button",
8252
8344
  {
8253
8345
  ref,
@@ -8266,14 +8358,14 @@ var IconRailItem = React44.forwardRef(
8266
8358
  ...props,
8267
8359
  children: [
8268
8360
  icon,
8269
- isRailExpanded && label && /* @__PURE__ */ jsx44("span", { className: "text-sm font-medium truncate", children: label })
8361
+ isRailExpanded && label && /* @__PURE__ */ jsx45("span", { className: "text-sm font-medium truncate", children: label })
8270
8362
  ]
8271
8363
  }
8272
8364
  );
8273
8365
  }
8274
8366
  );
8275
8367
  IconRailItem.displayName = "IconRailItem";
8276
- var RailPanel = React44.forwardRef(
8368
+ var RailPanel = React45.forwardRef(
8277
8369
  ({ className, railId, title, children, ...props }, ref) => {
8278
8370
  const { activeRail, setActiveRail, hoverExpand } = useSidebarRail();
8279
8371
  const isVisible = activeRail === railId;
@@ -8283,7 +8375,7 @@ var RailPanel = React44.forwardRef(
8283
8375
  }
8284
8376
  };
8285
8377
  if (!isVisible) return null;
8286
- return /* @__PURE__ */ jsxs30(
8378
+ return /* @__PURE__ */ jsxs31(
8287
8379
  "div",
8288
8380
  {
8289
8381
  ref,
@@ -8296,16 +8388,16 @@ var RailPanel = React44.forwardRef(
8296
8388
  onMouseLeave: handleMouseLeave,
8297
8389
  ...props,
8298
8390
  children: [
8299
- title && /* @__PURE__ */ jsxs30("div", { className: "flex items-center justify-between h-14 px-4 border-b border-border shrink-0", children: [
8300
- /* @__PURE__ */ jsx44("span", { className: "font-semibold text-sm", children: title }),
8301
- /* @__PURE__ */ jsx44(
8391
+ title && /* @__PURE__ */ jsxs31("div", { className: "flex items-center justify-between h-14 px-4 border-b border-border shrink-0", children: [
8392
+ /* @__PURE__ */ jsx45("span", { className: "font-semibold text-sm", children: title }),
8393
+ /* @__PURE__ */ jsx45(
8302
8394
  "button",
8303
8395
  {
8304
8396
  type: "button",
8305
8397
  onClick: () => setActiveRail(null),
8306
8398
  className: "p-1 rounded hover:bg-muted text-muted-foreground hover:text-foreground cursor-pointer",
8307
8399
  "aria-label": "Close panel",
8308
- children: /* @__PURE__ */ jsxs30(
8400
+ children: /* @__PURE__ */ jsxs31(
8309
8401
  "svg",
8310
8402
  {
8311
8403
  className: "h-4 w-4",
@@ -8317,36 +8409,36 @@ var RailPanel = React44.forwardRef(
8317
8409
  strokeLinecap: "round",
8318
8410
  strokeLinejoin: "round",
8319
8411
  children: [
8320
- /* @__PURE__ */ jsx44("path", { d: "M18 6 6 18" }),
8321
- /* @__PURE__ */ jsx44("path", { d: "m6 6 12 12" })
8412
+ /* @__PURE__ */ jsx45("path", { d: "M18 6 6 18" }),
8413
+ /* @__PURE__ */ jsx45("path", { d: "m6 6 12 12" })
8322
8414
  ]
8323
8415
  }
8324
8416
  )
8325
8417
  }
8326
8418
  )
8327
8419
  ] }),
8328
- /* @__PURE__ */ jsx44("div", { className: "flex-1 overflow-y-auto", children })
8420
+ /* @__PURE__ */ jsx45("div", { className: "flex-1 overflow-y-auto", children })
8329
8421
  ]
8330
8422
  }
8331
8423
  );
8332
8424
  }
8333
8425
  );
8334
8426
  RailPanel.displayName = "RailPanel";
8335
- var RailPanelGroup = React44.forwardRef(
8427
+ var RailPanelGroup = React45.forwardRef(
8336
8428
  ({ className, label, children, ...props }, ref) => {
8337
- return /* @__PURE__ */ jsxs30("div", { ref, className: cn("px-2 py-2", className), ...props, children: [
8338
- label && /* @__PURE__ */ jsx44("div", { className: "px-2 py-1.5 text-xs font-semibold text-muted-foreground uppercase tracking-wider", children: label }),
8339
- /* @__PURE__ */ jsx44("div", { className: "space-y-1", children })
8429
+ return /* @__PURE__ */ jsxs31("div", { ref, className: cn("px-2 py-2", className), ...props, children: [
8430
+ label && /* @__PURE__ */ jsx45("div", { className: "px-2 py-1.5 text-xs font-semibold text-muted-foreground uppercase tracking-wider", children: label }),
8431
+ /* @__PURE__ */ jsx45("div", { className: "space-y-1", children })
8340
8432
  ] });
8341
8433
  }
8342
8434
  );
8343
8435
  RailPanelGroup.displayName = "RailPanelGroup";
8344
- var RailPanelItem = React44.forwardRef(
8436
+ var RailPanelItem = React45.forwardRef(
8345
8437
  ({ className, icon, active, disabled, badge, href, children, onClick, ...props }, ref) => {
8346
- const content = /* @__PURE__ */ jsxs30(Fragment8, { children: [
8347
- icon && /* @__PURE__ */ jsx44("span", { className: "shrink-0", children: icon }),
8348
- /* @__PURE__ */ jsx44("span", { className: "flex-1 truncate", children }),
8349
- badge && /* @__PURE__ */ jsx44("span", { className: "shrink-0", children: badge })
8438
+ const content = /* @__PURE__ */ jsxs31(Fragment8, { children: [
8439
+ icon && /* @__PURE__ */ jsx45("span", { className: "shrink-0", children: icon }),
8440
+ /* @__PURE__ */ jsx45("span", { className: "flex-1 truncate", children }),
8441
+ badge && /* @__PURE__ */ jsx45("span", { className: "shrink-0", children: badge })
8350
8442
  ] });
8351
8443
  const itemClasses = cn(
8352
8444
  "flex items-center gap-3 px-3 py-2 rounded-md text-sm transition-colors cursor-pointer",
@@ -8355,9 +8447,9 @@ var RailPanelItem = React44.forwardRef(
8355
8447
  className
8356
8448
  );
8357
8449
  if (href) {
8358
- return /* @__PURE__ */ jsx44("div", { ref, ...props, children: /* @__PURE__ */ jsx44("a", { href, className: itemClasses, children: content }) });
8450
+ return /* @__PURE__ */ jsx45("div", { ref, ...props, children: /* @__PURE__ */ jsx45("a", { href, className: itemClasses, children: content }) });
8359
8451
  }
8360
- return /* @__PURE__ */ jsx44(
8452
+ return /* @__PURE__ */ jsx45(
8361
8453
  "div",
8362
8454
  {
8363
8455
  ref,
@@ -8374,34 +8466,34 @@ var RailPanelItem = React44.forwardRef(
8374
8466
  RailPanelItem.displayName = "RailPanelItem";
8375
8467
 
8376
8468
  // src/playground.tsx
8377
- import * as React45 from "react";
8378
- import { jsx as jsx45, jsxs as jsxs31 } from "react/jsx-runtime";
8379
- var Section = ({ title, children }) => /* @__PURE__ */ jsxs31("div", { className: "mb-8", children: [
8380
- /* @__PURE__ */ jsx45("h2", { className: "text-xl font-semibold mb-4 text-foreground", children: title }),
8381
- /* @__PURE__ */ jsx45("div", { className: "p-4 border border-border rounded-lg bg-background", children })
8469
+ import * as React46 from "react";
8470
+ import { jsx as jsx46, jsxs as jsxs32 } from "react/jsx-runtime";
8471
+ var Section = ({ title, children }) => /* @__PURE__ */ jsxs32("div", { className: "mb-8", children: [
8472
+ /* @__PURE__ */ jsx46("h2", { className: "text-xl font-semibold mb-4 text-foreground", children: title }),
8473
+ /* @__PURE__ */ jsx46("div", { className: "p-4 border border-border rounded-lg bg-background", children })
8382
8474
  ] });
8383
8475
  var ThemeToggle = () => {
8384
8476
  const { theme, setTheme } = useTheme();
8385
- return /* @__PURE__ */ jsxs31("div", { className: "flex items-center gap-2", children: [
8386
- /* @__PURE__ */ jsx45(Label, { children: "Theme:" }),
8387
- /* @__PURE__ */ jsxs31(SelectNamespace, { value: theme, onValueChange: (value) => setTheme(value), children: [
8388
- /* @__PURE__ */ jsx45(SelectTrigger, { className: "w-32", children: /* @__PURE__ */ jsx45(SelectValue, { placeholder: "Select theme" }) }),
8389
- /* @__PURE__ */ jsxs31(SelectContent, { children: [
8390
- /* @__PURE__ */ jsx45(SelectItem, { value: "light", children: "Light" }),
8391
- /* @__PURE__ */ jsx45(SelectItem, { value: "dark", children: "Dark" }),
8392
- /* @__PURE__ */ jsx45(SelectItem, { value: "system", children: "System" })
8477
+ return /* @__PURE__ */ jsxs32("div", { className: "flex items-center gap-2", children: [
8478
+ /* @__PURE__ */ jsx46(Label, { children: "Theme:" }),
8479
+ /* @__PURE__ */ jsxs32(SelectNamespace, { value: theme, onValueChange: (value) => setTheme(value), children: [
8480
+ /* @__PURE__ */ jsx46(SelectTrigger, { className: "w-32", children: /* @__PURE__ */ jsx46(SelectValue, { placeholder: "Select theme" }) }),
8481
+ /* @__PURE__ */ jsxs32(SelectContent, { children: [
8482
+ /* @__PURE__ */ jsx46(SelectItem, { value: "light", children: "Light" }),
8483
+ /* @__PURE__ */ jsx46(SelectItem, { value: "dark", children: "Dark" }),
8484
+ /* @__PURE__ */ jsx46(SelectItem, { value: "system", children: "System" })
8393
8485
  ] })
8394
8486
  ] })
8395
8487
  ] });
8396
8488
  };
8397
8489
  var PlaygroundContent = () => {
8398
- const [dialogOpen, setDialogOpen] = React45.useState(false);
8399
- const [checkboxChecked, setCheckboxChecked] = React45.useState(false);
8400
- const [switchChecked, setSwitchChecked] = React45.useState(false);
8401
- const [inputValue, setInputValue] = React45.useState("");
8402
- const [textareaValue, setTextareaValue] = React45.useState("");
8403
- const [selectValue, setSelectValue] = React45.useState("");
8404
- const [comboboxValue, setComboboxValue] = React45.useState(null);
8490
+ const [dialogOpen, setDialogOpen] = React46.useState(false);
8491
+ const [checkboxChecked, setCheckboxChecked] = React46.useState(false);
8492
+ const [switchChecked, setSwitchChecked] = React46.useState(false);
8493
+ const [inputValue, setInputValue] = React46.useState("");
8494
+ const [textareaValue, setTextareaValue] = React46.useState("");
8495
+ const [selectValue, setSelectValue] = React46.useState("");
8496
+ const [comboboxValue, setComboboxValue] = React46.useState(null);
8405
8497
  const comboboxOptions = [
8406
8498
  { value: "react", label: "React" },
8407
8499
  { value: "vue", label: "Vue" },
@@ -8409,35 +8501,35 @@ var PlaygroundContent = () => {
8409
8501
  { value: "svelte", label: "Svelte" },
8410
8502
  { value: "solid", label: "SolidJS" }
8411
8503
  ];
8412
- return /* @__PURE__ */ jsx45("div", { className: "min-h-screen bg-background p-8", children: /* @__PURE__ */ jsxs31("div", { className: "max-w-4xl mx-auto", children: [
8413
- /* @__PURE__ */ jsxs31("div", { className: "flex items-center justify-between mb-8", children: [
8414
- /* @__PURE__ */ jsx45("h1", { className: "text-3xl font-bold text-foreground", children: "@onesaz/ui Playground" }),
8415
- /* @__PURE__ */ jsx45(ThemeToggle, {})
8504
+ return /* @__PURE__ */ jsx46("div", { className: "min-h-screen bg-background p-8", children: /* @__PURE__ */ jsxs32("div", { className: "max-w-4xl mx-auto", children: [
8505
+ /* @__PURE__ */ jsxs32("div", { className: "flex items-center justify-between mb-8", children: [
8506
+ /* @__PURE__ */ jsx46("h1", { className: "text-3xl font-bold text-foreground", children: "@onesaz/ui Playground" }),
8507
+ /* @__PURE__ */ jsx46(ThemeToggle, {})
8416
8508
  ] }),
8417
- /* @__PURE__ */ jsxs31(Section, { title: "Button", children: [
8418
- /* @__PURE__ */ jsxs31("div", { className: "flex flex-wrap gap-4", children: [
8419
- /* @__PURE__ */ jsx45(Button, { variant: "default", children: "Default" }),
8420
- /* @__PURE__ */ jsx45(Button, { variant: "destructive", children: "Destructive" }),
8421
- /* @__PURE__ */ jsx45(Button, { variant: "outline", children: "Outline" }),
8422
- /* @__PURE__ */ jsx45(Button, { variant: "secondary", children: "Secondary" }),
8423
- /* @__PURE__ */ jsx45(Button, { variant: "ghost", children: "Ghost" }),
8424
- /* @__PURE__ */ jsx45(Button, { variant: "link", children: "Link" })
8509
+ /* @__PURE__ */ jsxs32(Section, { title: "Button", children: [
8510
+ /* @__PURE__ */ jsxs32("div", { className: "flex flex-wrap gap-4", children: [
8511
+ /* @__PURE__ */ jsx46(Button, { variant: "default", children: "Default" }),
8512
+ /* @__PURE__ */ jsx46(Button, { variant: "destructive", children: "Destructive" }),
8513
+ /* @__PURE__ */ jsx46(Button, { variant: "outline", children: "Outline" }),
8514
+ /* @__PURE__ */ jsx46(Button, { variant: "secondary", children: "Secondary" }),
8515
+ /* @__PURE__ */ jsx46(Button, { variant: "ghost", children: "Ghost" }),
8516
+ /* @__PURE__ */ jsx46(Button, { variant: "link", children: "Link" })
8425
8517
  ] }),
8426
- /* @__PURE__ */ jsxs31("div", { className: "flex flex-wrap gap-4 mt-4", children: [
8427
- /* @__PURE__ */ jsx45(Button, { size: "sm", children: "Small" }),
8428
- /* @__PURE__ */ jsx45(Button, { size: "default", children: "Default" }),
8429
- /* @__PURE__ */ jsx45(Button, { size: "lg", children: "Large" }),
8430
- /* @__PURE__ */ jsx45(Button, { size: "icon", children: "\u{1F514}" })
8518
+ /* @__PURE__ */ jsxs32("div", { className: "flex flex-wrap gap-4 mt-4", children: [
8519
+ /* @__PURE__ */ jsx46(Button, { size: "sm", children: "Small" }),
8520
+ /* @__PURE__ */ jsx46(Button, { size: "default", children: "Default" }),
8521
+ /* @__PURE__ */ jsx46(Button, { size: "lg", children: "Large" }),
8522
+ /* @__PURE__ */ jsx46(Button, { size: "icon", children: "\u{1F514}" })
8431
8523
  ] }),
8432
- /* @__PURE__ */ jsxs31("div", { className: "flex flex-wrap gap-4 mt-4", children: [
8433
- /* @__PURE__ */ jsx45(Button, { disabled: true, children: "Disabled" }),
8434
- /* @__PURE__ */ jsx45(Button, { variant: "outline", disabled: true, children: "Disabled Outline" })
8524
+ /* @__PURE__ */ jsxs32("div", { className: "flex flex-wrap gap-4 mt-4", children: [
8525
+ /* @__PURE__ */ jsx46(Button, { disabled: true, children: "Disabled" }),
8526
+ /* @__PURE__ */ jsx46(Button, { variant: "outline", disabled: true, children: "Disabled Outline" })
8435
8527
  ] })
8436
8528
  ] }),
8437
- /* @__PURE__ */ jsx45(Section, { title: "Input", children: /* @__PURE__ */ jsxs31("div", { className: "space-y-4 max-w-md", children: [
8438
- /* @__PURE__ */ jsxs31("div", { children: [
8439
- /* @__PURE__ */ jsx45(Label, { htmlFor: "input-default", children: "Default Input" }),
8440
- /* @__PURE__ */ jsx45(
8529
+ /* @__PURE__ */ jsx46(Section, { title: "Input", children: /* @__PURE__ */ jsxs32("div", { className: "space-y-4 max-w-md", children: [
8530
+ /* @__PURE__ */ jsxs32("div", { children: [
8531
+ /* @__PURE__ */ jsx46(Label, { htmlFor: "input-default", children: "Default Input" }),
8532
+ /* @__PURE__ */ jsx46(
8441
8533
  Input,
8442
8534
  {
8443
8535
  id: "input-default",
@@ -8447,19 +8539,19 @@ var PlaygroundContent = () => {
8447
8539
  }
8448
8540
  )
8449
8541
  ] }),
8450
- /* @__PURE__ */ jsxs31("div", { children: [
8451
- /* @__PURE__ */ jsx45(Label, { htmlFor: "input-disabled", children: "Disabled Input" }),
8452
- /* @__PURE__ */ jsx45(Input, { id: "input-disabled", placeholder: "Disabled...", disabled: true })
8542
+ /* @__PURE__ */ jsxs32("div", { children: [
8543
+ /* @__PURE__ */ jsx46(Label, { htmlFor: "input-disabled", children: "Disabled Input" }),
8544
+ /* @__PURE__ */ jsx46(Input, { id: "input-disabled", placeholder: "Disabled...", disabled: true })
8453
8545
  ] }),
8454
- /* @__PURE__ */ jsxs31("div", { children: [
8455
- /* @__PURE__ */ jsx45(Label, { htmlFor: "input-type", children: "Email Input" }),
8456
- /* @__PURE__ */ jsx45(Input, { id: "input-type", type: "email", placeholder: "email@example.com" })
8546
+ /* @__PURE__ */ jsxs32("div", { children: [
8547
+ /* @__PURE__ */ jsx46(Label, { htmlFor: "input-type", children: "Email Input" }),
8548
+ /* @__PURE__ */ jsx46(Input, { id: "input-type", type: "email", placeholder: "email@example.com" })
8457
8549
  ] })
8458
8550
  ] }) }),
8459
- /* @__PURE__ */ jsx45(Section, { title: "Textarea", children: /* @__PURE__ */ jsxs31("div", { className: "space-y-4 max-w-md", children: [
8460
- /* @__PURE__ */ jsxs31("div", { children: [
8461
- /* @__PURE__ */ jsx45(Label, { htmlFor: "textarea-default", children: "Default Textarea" }),
8462
- /* @__PURE__ */ jsx45(
8551
+ /* @__PURE__ */ jsx46(Section, { title: "Textarea", children: /* @__PURE__ */ jsxs32("div", { className: "space-y-4 max-w-md", children: [
8552
+ /* @__PURE__ */ jsxs32("div", { children: [
8553
+ /* @__PURE__ */ jsx46(Label, { htmlFor: "textarea-default", children: "Default Textarea" }),
8554
+ /* @__PURE__ */ jsx46(
8463
8555
  Textarea,
8464
8556
  {
8465
8557
  id: "textarea-default",
@@ -8469,52 +8561,52 @@ var PlaygroundContent = () => {
8469
8561
  }
8470
8562
  )
8471
8563
  ] }),
8472
- /* @__PURE__ */ jsxs31("div", { children: [
8473
- /* @__PURE__ */ jsx45(Label, { htmlFor: "textarea-disabled", children: "Disabled Textarea" }),
8474
- /* @__PURE__ */ jsx45(Textarea, { id: "textarea-disabled", placeholder: "Disabled...", disabled: true })
8564
+ /* @__PURE__ */ jsxs32("div", { children: [
8565
+ /* @__PURE__ */ jsx46(Label, { htmlFor: "textarea-disabled", children: "Disabled Textarea" }),
8566
+ /* @__PURE__ */ jsx46(Textarea, { id: "textarea-disabled", placeholder: "Disabled...", disabled: true })
8475
8567
  ] })
8476
8568
  ] }) }),
8477
- /* @__PURE__ */ jsx45(Section, { title: "Select", children: /* @__PURE__ */ jsxs31("div", { className: "space-y-4 max-w-md", children: [
8478
- /* @__PURE__ */ jsxs31("div", { children: [
8479
- /* @__PURE__ */ jsx45(Label, { children: "Default Select" }),
8480
- /* @__PURE__ */ jsxs31(SelectNamespace, { value: selectValue, onValueChange: setSelectValue, children: [
8481
- /* @__PURE__ */ jsx45(SelectTrigger, { className: "w-full", children: /* @__PURE__ */ jsx45(SelectValue, { placeholder: "Select an option..." }) }),
8482
- /* @__PURE__ */ jsxs31(SelectContent, { children: [
8483
- /* @__PURE__ */ jsx45(SelectItem, { value: "option1", children: "Option 1" }),
8484
- /* @__PURE__ */ jsx45(SelectItem, { value: "option2", children: "Option 2" }),
8485
- /* @__PURE__ */ jsx45(SelectItem, { value: "option3", children: "Option 3" })
8569
+ /* @__PURE__ */ jsx46(Section, { title: "Select", children: /* @__PURE__ */ jsxs32("div", { className: "space-y-4 max-w-md", children: [
8570
+ /* @__PURE__ */ jsxs32("div", { children: [
8571
+ /* @__PURE__ */ jsx46(Label, { children: "Default Select" }),
8572
+ /* @__PURE__ */ jsxs32(SelectNamespace, { value: selectValue, onValueChange: setSelectValue, children: [
8573
+ /* @__PURE__ */ jsx46(SelectTrigger, { className: "w-full", children: /* @__PURE__ */ jsx46(SelectValue, { placeholder: "Select an option..." }) }),
8574
+ /* @__PURE__ */ jsxs32(SelectContent, { children: [
8575
+ /* @__PURE__ */ jsx46(SelectItem, { value: "option1", children: "Option 1" }),
8576
+ /* @__PURE__ */ jsx46(SelectItem, { value: "option2", children: "Option 2" }),
8577
+ /* @__PURE__ */ jsx46(SelectItem, { value: "option3", children: "Option 3" })
8486
8578
  ] })
8487
8579
  ] })
8488
8580
  ] }),
8489
- /* @__PURE__ */ jsxs31("div", { children: [
8490
- /* @__PURE__ */ jsx45(Label, { children: "Grouped Select" }),
8491
- /* @__PURE__ */ jsxs31(SelectNamespace, { children: [
8492
- /* @__PURE__ */ jsx45(SelectTrigger, { className: "w-full", children: /* @__PURE__ */ jsx45(SelectValue, { placeholder: "Select a food..." }) }),
8493
- /* @__PURE__ */ jsxs31(SelectContent, { children: [
8494
- /* @__PURE__ */ jsxs31(SelectGroup, { children: [
8495
- /* @__PURE__ */ jsx45(SelectLabel, { children: "Fruits" }),
8496
- /* @__PURE__ */ jsx45(SelectItem, { value: "apple", children: "Apple" }),
8497
- /* @__PURE__ */ jsx45(SelectItem, { value: "banana", children: "Banana" })
8581
+ /* @__PURE__ */ jsxs32("div", { children: [
8582
+ /* @__PURE__ */ jsx46(Label, { children: "Grouped Select" }),
8583
+ /* @__PURE__ */ jsxs32(SelectNamespace, { children: [
8584
+ /* @__PURE__ */ jsx46(SelectTrigger, { className: "w-full", children: /* @__PURE__ */ jsx46(SelectValue, { placeholder: "Select a food..." }) }),
8585
+ /* @__PURE__ */ jsxs32(SelectContent, { children: [
8586
+ /* @__PURE__ */ jsxs32(SelectGroup, { children: [
8587
+ /* @__PURE__ */ jsx46(SelectLabel, { children: "Fruits" }),
8588
+ /* @__PURE__ */ jsx46(SelectItem, { value: "apple", children: "Apple" }),
8589
+ /* @__PURE__ */ jsx46(SelectItem, { value: "banana", children: "Banana" })
8498
8590
  ] }),
8499
- /* @__PURE__ */ jsxs31(SelectGroup, { children: [
8500
- /* @__PURE__ */ jsx45(SelectLabel, { children: "Vegetables" }),
8501
- /* @__PURE__ */ jsx45(SelectItem, { value: "carrot", children: "Carrot" }),
8502
- /* @__PURE__ */ jsx45(SelectItem, { value: "potato", children: "Potato" })
8591
+ /* @__PURE__ */ jsxs32(SelectGroup, { children: [
8592
+ /* @__PURE__ */ jsx46(SelectLabel, { children: "Vegetables" }),
8593
+ /* @__PURE__ */ jsx46(SelectItem, { value: "carrot", children: "Carrot" }),
8594
+ /* @__PURE__ */ jsx46(SelectItem, { value: "potato", children: "Potato" })
8503
8595
  ] })
8504
8596
  ] })
8505
8597
  ] })
8506
8598
  ] }),
8507
- /* @__PURE__ */ jsxs31("div", { children: [
8508
- /* @__PURE__ */ jsx45(Label, { children: "Disabled Select" }),
8509
- /* @__PURE__ */ jsxs31(SelectNamespace, { disabled: true, children: [
8510
- /* @__PURE__ */ jsx45(SelectTrigger, { className: "w-full", children: /* @__PURE__ */ jsx45(SelectValue, { placeholder: "Disabled..." }) }),
8511
- /* @__PURE__ */ jsx45(SelectContent, { children: /* @__PURE__ */ jsx45(SelectItem, { value: "none", children: "None" }) })
8599
+ /* @__PURE__ */ jsxs32("div", { children: [
8600
+ /* @__PURE__ */ jsx46(Label, { children: "Disabled Select" }),
8601
+ /* @__PURE__ */ jsxs32(SelectNamespace, { disabled: true, children: [
8602
+ /* @__PURE__ */ jsx46(SelectTrigger, { className: "w-full", children: /* @__PURE__ */ jsx46(SelectValue, { placeholder: "Disabled..." }) }),
8603
+ /* @__PURE__ */ jsx46(SelectContent, { children: /* @__PURE__ */ jsx46(SelectItem, { value: "none", children: "None" }) })
8512
8604
  ] })
8513
8605
  ] })
8514
8606
  ] }) }),
8515
- /* @__PURE__ */ jsx45(Section, { title: "Combobox (Searchable Select)", children: /* @__PURE__ */ jsx45("div", { className: "space-y-4 max-w-md", children: /* @__PURE__ */ jsxs31("div", { children: [
8516
- /* @__PURE__ */ jsx45(Label, { children: "Framework" }),
8517
- /* @__PURE__ */ jsx45(
8607
+ /* @__PURE__ */ jsx46(Section, { title: "Combobox (Searchable Select)", children: /* @__PURE__ */ jsx46("div", { className: "space-y-4 max-w-md", children: /* @__PURE__ */ jsxs32("div", { children: [
8608
+ /* @__PURE__ */ jsx46(Label, { children: "Framework" }),
8609
+ /* @__PURE__ */ jsx46(
8518
8610
  Combobox,
8519
8611
  {
8520
8612
  options: comboboxOptions,
@@ -8526,9 +8618,9 @@ var PlaygroundContent = () => {
8526
8618
  }
8527
8619
  )
8528
8620
  ] }) }) }),
8529
- /* @__PURE__ */ jsx45(Section, { title: "Checkbox & Switch", children: /* @__PURE__ */ jsxs31("div", { className: "space-y-4", children: [
8530
- /* @__PURE__ */ jsxs31("div", { className: "flex items-center gap-2", children: [
8531
- /* @__PURE__ */ jsx45(
8621
+ /* @__PURE__ */ jsx46(Section, { title: "Checkbox & Switch", children: /* @__PURE__ */ jsxs32("div", { className: "space-y-4", children: [
8622
+ /* @__PURE__ */ jsxs32("div", { className: "flex items-center gap-2", children: [
8623
+ /* @__PURE__ */ jsx46(
8532
8624
  Checkbox,
8533
8625
  {
8534
8626
  id: "checkbox",
@@ -8536,15 +8628,15 @@ var PlaygroundContent = () => {
8536
8628
  onChange: (e) => setCheckboxChecked(e.target.checked)
8537
8629
  }
8538
8630
  ),
8539
- /* @__PURE__ */ jsx45(Label, { htmlFor: "checkbox", children: "Accept terms and conditions" })
8631
+ /* @__PURE__ */ jsx46(Label, { htmlFor: "checkbox", children: "Accept terms and conditions" })
8540
8632
  ] }),
8541
- /* @__PURE__ */ jsxs31("div", { className: "flex items-center gap-2", children: [
8542
- /* @__PURE__ */ jsx45(Checkbox, { id: "checkbox-disabled", disabled: true }),
8543
- /* @__PURE__ */ jsx45(Label, { htmlFor: "checkbox-disabled", children: "Disabled checkbox" })
8633
+ /* @__PURE__ */ jsxs32("div", { className: "flex items-center gap-2", children: [
8634
+ /* @__PURE__ */ jsx46(Checkbox, { id: "checkbox-disabled", disabled: true }),
8635
+ /* @__PURE__ */ jsx46(Label, { htmlFor: "checkbox-disabled", children: "Disabled checkbox" })
8544
8636
  ] }),
8545
- /* @__PURE__ */ jsx45(Separator, {}),
8546
- /* @__PURE__ */ jsxs31("div", { className: "flex items-center gap-2", children: [
8547
- /* @__PURE__ */ jsx45(
8637
+ /* @__PURE__ */ jsx46(Separator, {}),
8638
+ /* @__PURE__ */ jsxs32("div", { className: "flex items-center gap-2", children: [
8639
+ /* @__PURE__ */ jsx46(
8548
8640
  Switch,
8549
8641
  {
8550
8642
  id: "switch",
@@ -8552,160 +8644,160 @@ var PlaygroundContent = () => {
8552
8644
  onChange: (e) => setSwitchChecked(e.target.checked)
8553
8645
  }
8554
8646
  ),
8555
- /* @__PURE__ */ jsx45(Label, { htmlFor: "switch", children: "Enable notifications" })
8647
+ /* @__PURE__ */ jsx46(Label, { htmlFor: "switch", children: "Enable notifications" })
8556
8648
  ] }),
8557
- /* @__PURE__ */ jsxs31("div", { className: "flex items-center gap-2", children: [
8558
- /* @__PURE__ */ jsx45(Switch, { id: "switch-disabled", disabled: true }),
8559
- /* @__PURE__ */ jsx45(Label, { htmlFor: "switch-disabled", children: "Disabled switch" })
8649
+ /* @__PURE__ */ jsxs32("div", { className: "flex items-center gap-2", children: [
8650
+ /* @__PURE__ */ jsx46(Switch, { id: "switch-disabled", disabled: true }),
8651
+ /* @__PURE__ */ jsx46(Label, { htmlFor: "switch-disabled", children: "Disabled switch" })
8560
8652
  ] })
8561
8653
  ] }) }),
8562
- /* @__PURE__ */ jsx45(Section, { title: "Badge", children: /* @__PURE__ */ jsxs31("div", { className: "flex flex-wrap gap-4", children: [
8563
- /* @__PURE__ */ jsx45(Badge, { children: "Default" }),
8564
- /* @__PURE__ */ jsx45(Badge, { variant: "secondary", children: "Secondary" }),
8565
- /* @__PURE__ */ jsx45(Badge, { variant: "destructive", children: "Destructive" }),
8566
- /* @__PURE__ */ jsx45(Badge, { variant: "outline", children: "Outline" })
8654
+ /* @__PURE__ */ jsx46(Section, { title: "Badge", children: /* @__PURE__ */ jsxs32("div", { className: "flex flex-wrap gap-4", children: [
8655
+ /* @__PURE__ */ jsx46(Badge, { children: "Default" }),
8656
+ /* @__PURE__ */ jsx46(Badge, { variant: "secondary", children: "Secondary" }),
8657
+ /* @__PURE__ */ jsx46(Badge, { variant: "destructive", children: "Destructive" }),
8658
+ /* @__PURE__ */ jsx46(Badge, { variant: "outline", children: "Outline" })
8567
8659
  ] }) }),
8568
- /* @__PURE__ */ jsx45(Section, { title: "Card", children: /* @__PURE__ */ jsxs31("div", { className: "grid gap-4 md:grid-cols-2", children: [
8569
- /* @__PURE__ */ jsxs31(Card, { children: [
8570
- /* @__PURE__ */ jsxs31(CardHeader, { children: [
8571
- /* @__PURE__ */ jsx45(CardTitle, { children: "Card Title" }),
8572
- /* @__PURE__ */ jsx45(CardDescription, { children: "Card description goes here" })
8660
+ /* @__PURE__ */ jsx46(Section, { title: "Card", children: /* @__PURE__ */ jsxs32("div", { className: "grid gap-4 md:grid-cols-2", children: [
8661
+ /* @__PURE__ */ jsxs32(Card, { children: [
8662
+ /* @__PURE__ */ jsxs32(CardHeader, { children: [
8663
+ /* @__PURE__ */ jsx46(CardTitle, { children: "Card Title" }),
8664
+ /* @__PURE__ */ jsx46(CardDescription, { children: "Card description goes here" })
8573
8665
  ] }),
8574
- /* @__PURE__ */ jsx45(CardContent, { children: /* @__PURE__ */ jsx45("p", { className: "text-foreground", children: "This is the card content area." }) }),
8575
- /* @__PURE__ */ jsxs31(CardFooter, { children: [
8576
- /* @__PURE__ */ jsx45(Button, { variant: "outline", className: "mr-2", children: "Cancel" }),
8577
- /* @__PURE__ */ jsx45(Button, { children: "Submit" })
8666
+ /* @__PURE__ */ jsx46(CardContent, { children: /* @__PURE__ */ jsx46("p", { className: "text-foreground", children: "This is the card content area." }) }),
8667
+ /* @__PURE__ */ jsxs32(CardFooter, { children: [
8668
+ /* @__PURE__ */ jsx46(Button, { variant: "outline", className: "mr-2", children: "Cancel" }),
8669
+ /* @__PURE__ */ jsx46(Button, { children: "Submit" })
8578
8670
  ] })
8579
8671
  ] }),
8580
- /* @__PURE__ */ jsxs31(Card, { children: [
8581
- /* @__PURE__ */ jsxs31(CardHeader, { children: [
8582
- /* @__PURE__ */ jsx45(CardTitle, { children: "Another Card" }),
8583
- /* @__PURE__ */ jsx45(CardDescription, { children: "With different content" })
8672
+ /* @__PURE__ */ jsxs32(Card, { children: [
8673
+ /* @__PURE__ */ jsxs32(CardHeader, { children: [
8674
+ /* @__PURE__ */ jsx46(CardTitle, { children: "Another Card" }),
8675
+ /* @__PURE__ */ jsx46(CardDescription, { children: "With different content" })
8584
8676
  ] }),
8585
- /* @__PURE__ */ jsx45(CardContent, { children: /* @__PURE__ */ jsxs31("div", { className: "space-y-2", children: [
8586
- /* @__PURE__ */ jsx45(Label, { htmlFor: "card-input", children: "Name" }),
8587
- /* @__PURE__ */ jsx45(Input, { id: "card-input", placeholder: "Enter name..." })
8677
+ /* @__PURE__ */ jsx46(CardContent, { children: /* @__PURE__ */ jsxs32("div", { className: "space-y-2", children: [
8678
+ /* @__PURE__ */ jsx46(Label, { htmlFor: "card-input", children: "Name" }),
8679
+ /* @__PURE__ */ jsx46(Input, { id: "card-input", placeholder: "Enter name..." })
8588
8680
  ] }) }),
8589
- /* @__PURE__ */ jsx45(CardFooter, { children: /* @__PURE__ */ jsx45(Button, { className: "w-full", children: "Save" }) })
8681
+ /* @__PURE__ */ jsx46(CardFooter, { children: /* @__PURE__ */ jsx46(Button, { className: "w-full", children: "Save" }) })
8590
8682
  ] })
8591
8683
  ] }) }),
8592
- /* @__PURE__ */ jsxs31(Section, { title: "Dialog", children: [
8593
- /* @__PURE__ */ jsx45(Button, { onClick: () => setDialogOpen(true), children: "Open Dialog" }),
8594
- /* @__PURE__ */ jsx45(DialogNamespace, { open: dialogOpen, onOpenChange: setDialogOpen, children: /* @__PURE__ */ jsxs31(DialogContent, { children: [
8595
- /* @__PURE__ */ jsxs31(DialogHeader, { children: [
8596
- /* @__PURE__ */ jsx45(DialogTitle, { children: "Create New Zone" }),
8597
- /* @__PURE__ */ jsx45(DialogDescription, { children: "Fill in the details below to create a new zone." })
8684
+ /* @__PURE__ */ jsxs32(Section, { title: "Dialog", children: [
8685
+ /* @__PURE__ */ jsx46(Button, { onClick: () => setDialogOpen(true), children: "Open Dialog" }),
8686
+ /* @__PURE__ */ jsx46(DialogNamespace, { open: dialogOpen, onOpenChange: setDialogOpen, children: /* @__PURE__ */ jsxs32(DialogContent, { children: [
8687
+ /* @__PURE__ */ jsxs32(DialogHeader, { children: [
8688
+ /* @__PURE__ */ jsx46(DialogTitle, { children: "Create New Zone" }),
8689
+ /* @__PURE__ */ jsx46(DialogDescription, { children: "Fill in the details below to create a new zone." })
8598
8690
  ] }),
8599
- /* @__PURE__ */ jsxs31("div", { className: "space-y-4 py-4", children: [
8600
- /* @__PURE__ */ jsxs31("div", { className: "grid grid-cols-2 gap-4", children: [
8601
- /* @__PURE__ */ jsxs31("div", { children: [
8602
- /* @__PURE__ */ jsx45(Label, { htmlFor: "zone-name", children: "Zone Name *" }),
8603
- /* @__PURE__ */ jsx45(Input, { id: "zone-name", placeholder: "eg:hyderabad" })
8691
+ /* @__PURE__ */ jsxs32("div", { className: "space-y-4 py-4", children: [
8692
+ /* @__PURE__ */ jsxs32("div", { className: "grid grid-cols-2 gap-4", children: [
8693
+ /* @__PURE__ */ jsxs32("div", { children: [
8694
+ /* @__PURE__ */ jsx46(Label, { htmlFor: "zone-name", children: "Zone Name *" }),
8695
+ /* @__PURE__ */ jsx46(Input, { id: "zone-name", placeholder: "eg:hyderabad" })
8604
8696
  ] }),
8605
- /* @__PURE__ */ jsxs31("div", { children: [
8606
- /* @__PURE__ */ jsx45(Label, { htmlFor: "zone-code", children: "Zone Code *" }),
8607
- /* @__PURE__ */ jsx45(Input, { id: "zone-code", placeholder: "eg :hyd022" })
8697
+ /* @__PURE__ */ jsxs32("div", { children: [
8698
+ /* @__PURE__ */ jsx46(Label, { htmlFor: "zone-code", children: "Zone Code *" }),
8699
+ /* @__PURE__ */ jsx46(Input, { id: "zone-code", placeholder: "eg :hyd022" })
8608
8700
  ] })
8609
8701
  ] }),
8610
- /* @__PURE__ */ jsxs31("div", { className: "grid grid-cols-2 gap-4", children: [
8611
- /* @__PURE__ */ jsxs31("div", { children: [
8612
- /* @__PURE__ */ jsx45(Label, { children: "State *" }),
8613
- /* @__PURE__ */ jsxs31(SelectNamespace, { children: [
8614
- /* @__PURE__ */ jsx45(SelectTrigger, { className: "w-full", children: /* @__PURE__ */ jsx45(SelectValue, { placeholder: "Select state" }) }),
8615
- /* @__PURE__ */ jsxs31(SelectContent, { children: [
8616
- /* @__PURE__ */ jsx45(SelectItem, { value: "telangana", children: "TELANGANA" }),
8617
- /* @__PURE__ */ jsx45(SelectItem, { value: "andhra", children: "ANDHRA PRADESH" })
8702
+ /* @__PURE__ */ jsxs32("div", { className: "grid grid-cols-2 gap-4", children: [
8703
+ /* @__PURE__ */ jsxs32("div", { children: [
8704
+ /* @__PURE__ */ jsx46(Label, { children: "State *" }),
8705
+ /* @__PURE__ */ jsxs32(SelectNamespace, { children: [
8706
+ /* @__PURE__ */ jsx46(SelectTrigger, { className: "w-full", children: /* @__PURE__ */ jsx46(SelectValue, { placeholder: "Select state" }) }),
8707
+ /* @__PURE__ */ jsxs32(SelectContent, { children: [
8708
+ /* @__PURE__ */ jsx46(SelectItem, { value: "telangana", children: "TELANGANA" }),
8709
+ /* @__PURE__ */ jsx46(SelectItem, { value: "andhra", children: "ANDHRA PRADESH" })
8618
8710
  ] })
8619
8711
  ] })
8620
8712
  ] }),
8621
- /* @__PURE__ */ jsxs31("div", { children: [
8622
- /* @__PURE__ */ jsx45(Label, { children: "District *" }),
8623
- /* @__PURE__ */ jsxs31(SelectNamespace, { children: [
8624
- /* @__PURE__ */ jsx45(SelectTrigger, { className: "w-full", children: /* @__PURE__ */ jsx45(SelectValue, { placeholder: "Select District" }) }),
8625
- /* @__PURE__ */ jsxs31(SelectContent, { children: [
8626
- /* @__PURE__ */ jsx45(SelectItem, { value: "hyderabad", children: "HYDERABAD" }),
8627
- /* @__PURE__ */ jsx45(SelectItem, { value: "rangareddy", children: "RANGAREDDY" })
8713
+ /* @__PURE__ */ jsxs32("div", { children: [
8714
+ /* @__PURE__ */ jsx46(Label, { children: "District *" }),
8715
+ /* @__PURE__ */ jsxs32(SelectNamespace, { children: [
8716
+ /* @__PURE__ */ jsx46(SelectTrigger, { className: "w-full", children: /* @__PURE__ */ jsx46(SelectValue, { placeholder: "Select District" }) }),
8717
+ /* @__PURE__ */ jsxs32(SelectContent, { children: [
8718
+ /* @__PURE__ */ jsx46(SelectItem, { value: "hyderabad", children: "HYDERABAD" }),
8719
+ /* @__PURE__ */ jsx46(SelectItem, { value: "rangareddy", children: "RANGAREDDY" })
8628
8720
  ] })
8629
8721
  ] })
8630
8722
  ] })
8631
8723
  ] })
8632
8724
  ] }),
8633
- /* @__PURE__ */ jsxs31(DialogFooter, { children: [
8634
- /* @__PURE__ */ jsx45(Button, { variant: "outline", onClick: () => setDialogOpen(false), children: "CANCEL" }),
8635
- /* @__PURE__ */ jsx45(Button, { onClick: () => setDialogOpen(false), children: "Create" })
8725
+ /* @__PURE__ */ jsxs32(DialogFooter, { children: [
8726
+ /* @__PURE__ */ jsx46(Button, { variant: "outline", onClick: () => setDialogOpen(false), children: "CANCEL" }),
8727
+ /* @__PURE__ */ jsx46(Button, { onClick: () => setDialogOpen(false), children: "Create" })
8636
8728
  ] })
8637
8729
  ] }) })
8638
8730
  ] }),
8639
- /* @__PURE__ */ jsx45(Section, { title: "Table", children: /* @__PURE__ */ jsxs31(TableNamespace, { children: [
8640
- /* @__PURE__ */ jsx45(TableCaption, { children: "A list of recent invoices" }),
8641
- /* @__PURE__ */ jsx45(TableHeader, { children: /* @__PURE__ */ jsxs31(TableRow, { children: [
8642
- /* @__PURE__ */ jsx45(TableHead, { children: "Invoice" }),
8643
- /* @__PURE__ */ jsx45(TableHead, { children: "Status" }),
8644
- /* @__PURE__ */ jsx45(TableHead, { children: "Method" }),
8645
- /* @__PURE__ */ jsx45(TableHead, { className: "text-right", children: "Amount" })
8731
+ /* @__PURE__ */ jsx46(Section, { title: "Table", children: /* @__PURE__ */ jsxs32(TableNamespace, { children: [
8732
+ /* @__PURE__ */ jsx46(TableCaption, { children: "A list of recent invoices" }),
8733
+ /* @__PURE__ */ jsx46(TableHeader, { children: /* @__PURE__ */ jsxs32(TableRow, { children: [
8734
+ /* @__PURE__ */ jsx46(TableHead, { children: "Invoice" }),
8735
+ /* @__PURE__ */ jsx46(TableHead, { children: "Status" }),
8736
+ /* @__PURE__ */ jsx46(TableHead, { children: "Method" }),
8737
+ /* @__PURE__ */ jsx46(TableHead, { className: "text-right", children: "Amount" })
8646
8738
  ] }) }),
8647
- /* @__PURE__ */ jsxs31(TableBody, { children: [
8648
- /* @__PURE__ */ jsxs31(TableRow, { children: [
8649
- /* @__PURE__ */ jsx45(TableCell, { children: "INV001" }),
8650
- /* @__PURE__ */ jsx45(TableCell, { children: /* @__PURE__ */ jsx45(Badge, { children: "Paid" }) }),
8651
- /* @__PURE__ */ jsx45(TableCell, { children: "Credit Card" }),
8652
- /* @__PURE__ */ jsx45(TableCell, { className: "text-right", children: "$250.00" })
8739
+ /* @__PURE__ */ jsxs32(TableBody, { children: [
8740
+ /* @__PURE__ */ jsxs32(TableRow, { children: [
8741
+ /* @__PURE__ */ jsx46(TableCell, { children: "INV001" }),
8742
+ /* @__PURE__ */ jsx46(TableCell, { children: /* @__PURE__ */ jsx46(Badge, { children: "Paid" }) }),
8743
+ /* @__PURE__ */ jsx46(TableCell, { children: "Credit Card" }),
8744
+ /* @__PURE__ */ jsx46(TableCell, { className: "text-right", children: "$250.00" })
8653
8745
  ] }),
8654
- /* @__PURE__ */ jsxs31(TableRow, { children: [
8655
- /* @__PURE__ */ jsx45(TableCell, { children: "INV002" }),
8656
- /* @__PURE__ */ jsx45(TableCell, { children: /* @__PURE__ */ jsx45(Badge, { variant: "secondary", children: "Pending" }) }),
8657
- /* @__PURE__ */ jsx45(TableCell, { children: "PayPal" }),
8658
- /* @__PURE__ */ jsx45(TableCell, { className: "text-right", children: "$150.00" })
8746
+ /* @__PURE__ */ jsxs32(TableRow, { children: [
8747
+ /* @__PURE__ */ jsx46(TableCell, { children: "INV002" }),
8748
+ /* @__PURE__ */ jsx46(TableCell, { children: /* @__PURE__ */ jsx46(Badge, { variant: "secondary", children: "Pending" }) }),
8749
+ /* @__PURE__ */ jsx46(TableCell, { children: "PayPal" }),
8750
+ /* @__PURE__ */ jsx46(TableCell, { className: "text-right", children: "$150.00" })
8659
8751
  ] }),
8660
- /* @__PURE__ */ jsxs31(TableRow, { children: [
8661
- /* @__PURE__ */ jsx45(TableCell, { children: "INV003" }),
8662
- /* @__PURE__ */ jsx45(TableCell, { children: /* @__PURE__ */ jsx45(Badge, { variant: "destructive", children: "Failed" }) }),
8663
- /* @__PURE__ */ jsx45(TableCell, { children: "Bank Transfer" }),
8664
- /* @__PURE__ */ jsx45(TableCell, { className: "text-right", children: "$350.00" })
8752
+ /* @__PURE__ */ jsxs32(TableRow, { children: [
8753
+ /* @__PURE__ */ jsx46(TableCell, { children: "INV003" }),
8754
+ /* @__PURE__ */ jsx46(TableCell, { children: /* @__PURE__ */ jsx46(Badge, { variant: "destructive", children: "Failed" }) }),
8755
+ /* @__PURE__ */ jsx46(TableCell, { children: "Bank Transfer" }),
8756
+ /* @__PURE__ */ jsx46(TableCell, { className: "text-right", children: "$350.00" })
8665
8757
  ] })
8666
8758
  ] })
8667
8759
  ] }) }),
8668
- /* @__PURE__ */ jsx45(Section, { title: "Pagination", children: /* @__PURE__ */ jsx45(PaginationNamespace, { children: /* @__PURE__ */ jsxs31(PaginationContent, { children: [
8669
- /* @__PURE__ */ jsx45(PaginationItem, { children: /* @__PURE__ */ jsx45(PaginationPrevious, { onClick: () => console.log("Previous") }) }),
8670
- /* @__PURE__ */ jsx45(PaginationItem, { children: /* @__PURE__ */ jsx45(PaginationLink, { isActive: true, children: "1" }) }),
8671
- /* @__PURE__ */ jsx45(PaginationItem, { children: /* @__PURE__ */ jsx45(PaginationLink, { children: "2" }) }),
8672
- /* @__PURE__ */ jsx45(PaginationItem, { children: /* @__PURE__ */ jsx45(PaginationLink, { children: "3" }) }),
8673
- /* @__PURE__ */ jsx45(PaginationItem, { children: /* @__PURE__ */ jsx45(PaginationEllipsis, {}) }),
8674
- /* @__PURE__ */ jsx45(PaginationItem, { children: /* @__PURE__ */ jsx45(PaginationNext, { onClick: () => console.log("Next") }) })
8760
+ /* @__PURE__ */ jsx46(Section, { title: "Pagination", children: /* @__PURE__ */ jsx46(PaginationNamespace, { children: /* @__PURE__ */ jsxs32(PaginationContent, { children: [
8761
+ /* @__PURE__ */ jsx46(PaginationItem, { children: /* @__PURE__ */ jsx46(PaginationPrevious, { onClick: () => console.log("Previous") }) }),
8762
+ /* @__PURE__ */ jsx46(PaginationItem, { children: /* @__PURE__ */ jsx46(PaginationLink, { isActive: true, children: "1" }) }),
8763
+ /* @__PURE__ */ jsx46(PaginationItem, { children: /* @__PURE__ */ jsx46(PaginationLink, { children: "2" }) }),
8764
+ /* @__PURE__ */ jsx46(PaginationItem, { children: /* @__PURE__ */ jsx46(PaginationLink, { children: "3" }) }),
8765
+ /* @__PURE__ */ jsx46(PaginationItem, { children: /* @__PURE__ */ jsx46(PaginationEllipsis, {}) }),
8766
+ /* @__PURE__ */ jsx46(PaginationItem, { children: /* @__PURE__ */ jsx46(PaginationNext, { onClick: () => console.log("Next") }) })
8675
8767
  ] }) }) }),
8676
- /* @__PURE__ */ jsx45(Section, { title: "Spinner", children: /* @__PURE__ */ jsxs31("div", { className: "flex items-center gap-8", children: [
8677
- /* @__PURE__ */ jsxs31("div", { className: "text-center", children: [
8678
- /* @__PURE__ */ jsx45(Spinner, { size: "sm" }),
8679
- /* @__PURE__ */ jsx45("p", { className: "text-sm text-muted-foreground mt-2", children: "Small" })
8768
+ /* @__PURE__ */ jsx46(Section, { title: "Spinner", children: /* @__PURE__ */ jsxs32("div", { className: "flex items-center gap-8", children: [
8769
+ /* @__PURE__ */ jsxs32("div", { className: "text-center", children: [
8770
+ /* @__PURE__ */ jsx46(Spinner, { size: "sm" }),
8771
+ /* @__PURE__ */ jsx46("p", { className: "text-sm text-muted-foreground mt-2", children: "Small" })
8680
8772
  ] }),
8681
- /* @__PURE__ */ jsxs31("div", { className: "text-center", children: [
8682
- /* @__PURE__ */ jsx45(Spinner, { size: "default" }),
8683
- /* @__PURE__ */ jsx45("p", { className: "text-sm text-muted-foreground mt-2", children: "Default" })
8773
+ /* @__PURE__ */ jsxs32("div", { className: "text-center", children: [
8774
+ /* @__PURE__ */ jsx46(Spinner, { size: "default" }),
8775
+ /* @__PURE__ */ jsx46("p", { className: "text-sm text-muted-foreground mt-2", children: "Default" })
8684
8776
  ] }),
8685
- /* @__PURE__ */ jsxs31("div", { className: "text-center", children: [
8686
- /* @__PURE__ */ jsx45(Spinner, { size: "lg" }),
8687
- /* @__PURE__ */ jsx45("p", { className: "text-sm text-muted-foreground mt-2", children: "Large" })
8777
+ /* @__PURE__ */ jsxs32("div", { className: "text-center", children: [
8778
+ /* @__PURE__ */ jsx46(Spinner, { size: "lg" }),
8779
+ /* @__PURE__ */ jsx46("p", { className: "text-sm text-muted-foreground mt-2", children: "Large" })
8688
8780
  ] })
8689
8781
  ] }) }),
8690
- /* @__PURE__ */ jsx45(Section, { title: "Separator", children: /* @__PURE__ */ jsxs31("div", { className: "space-y-4", children: [
8691
- /* @__PURE__ */ jsx45("p", { className: "text-foreground", children: "Content above separator" }),
8692
- /* @__PURE__ */ jsx45(Separator, {}),
8693
- /* @__PURE__ */ jsx45("p", { className: "text-foreground", children: "Content below separator" }),
8694
- /* @__PURE__ */ jsxs31("div", { className: "flex items-center h-10", children: [
8695
- /* @__PURE__ */ jsx45("span", { className: "text-foreground", children: "Left" }),
8696
- /* @__PURE__ */ jsx45(Separator, { orientation: "vertical", className: "mx-4" }),
8697
- /* @__PURE__ */ jsx45("span", { className: "text-foreground", children: "Right" })
8782
+ /* @__PURE__ */ jsx46(Section, { title: "Separator", children: /* @__PURE__ */ jsxs32("div", { className: "space-y-4", children: [
8783
+ /* @__PURE__ */ jsx46("p", { className: "text-foreground", children: "Content above separator" }),
8784
+ /* @__PURE__ */ jsx46(Separator, {}),
8785
+ /* @__PURE__ */ jsx46("p", { className: "text-foreground", children: "Content below separator" }),
8786
+ /* @__PURE__ */ jsxs32("div", { className: "flex items-center h-10", children: [
8787
+ /* @__PURE__ */ jsx46("span", { className: "text-foreground", children: "Left" }),
8788
+ /* @__PURE__ */ jsx46(Separator, { orientation: "vertical", className: "mx-4" }),
8789
+ /* @__PURE__ */ jsx46("span", { className: "text-foreground", children: "Right" })
8698
8790
  ] })
8699
8791
  ] }) }),
8700
- /* @__PURE__ */ jsx45(Section, { title: "Typography & Colors", children: /* @__PURE__ */ jsxs31("div", { className: "space-y-2", children: [
8701
- /* @__PURE__ */ jsx45("p", { className: "text-foreground", children: "text-foreground - Primary text color" }),
8702
- /* @__PURE__ */ jsx45("p", { className: "text-muted-foreground", children: "text-muted-foreground - Muted text color" }),
8703
- /* @__PURE__ */ jsx45("p", { className: "text-accent", children: "text-accent - Accent color" }),
8704
- /* @__PURE__ */ jsx45("p", { className: "text-destructive", children: "text-destructive - Destructive color" })
8792
+ /* @__PURE__ */ jsx46(Section, { title: "Typography & Colors", children: /* @__PURE__ */ jsxs32("div", { className: "space-y-2", children: [
8793
+ /* @__PURE__ */ jsx46("p", { className: "text-foreground", children: "text-foreground - Primary text color" }),
8794
+ /* @__PURE__ */ jsx46("p", { className: "text-muted-foreground", children: "text-muted-foreground - Muted text color" }),
8795
+ /* @__PURE__ */ jsx46("p", { className: "text-accent", children: "text-accent - Accent color" }),
8796
+ /* @__PURE__ */ jsx46("p", { className: "text-destructive", children: "text-destructive - Destructive color" })
8705
8797
  ] }) })
8706
8798
  ] }) });
8707
8799
  };
8708
- var Playground = () => /* @__PURE__ */ jsx45(ThemeProvider, { defaultTheme: "light", children: /* @__PURE__ */ jsx45(PlaygroundContent, {}) });
8800
+ var Playground = () => /* @__PURE__ */ jsx46(ThemeProvider, { defaultTheme: "light", children: /* @__PURE__ */ jsx46(PlaygroundContent, {}) });
8709
8801
  export {
8710
8802
  Accordion,
8711
8803
  AccordionContent,
@@ -8730,6 +8822,8 @@ export {
8730
8822
  AvatarGroup,
8731
8823
  Badge,
8732
8824
  BarChart,
8825
+ BottomNavigation,
8826
+ BottomNavigationAction,
8733
8827
  Box,
8734
8828
  BreadcrumbEllipsis,
8735
8829
  BreadcrumbItem,