gridsmith-ui 0.2.0 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -76,7 +76,9 @@ async function loadLucide() {
76
76
  "send": L.Send,
77
77
  "log-out": L.LogOut,
78
78
  "edit": L.Pencil,
79
- "menu": L.Menu
79
+ "menu": L.Menu,
80
+ "star": L.Star,
81
+ "bookmark": L.Bookmark
80
82
  };
81
83
  return buildExtendedMap(L, aliases);
82
84
  }
@@ -131,7 +133,9 @@ async function loadPhosphor() {
131
133
  "send": P.PaperPlaneTilt,
132
134
  "log-out": P.SignOut,
133
135
  "edit": P.PencilSimple,
134
- "menu": P.List
136
+ "menu": P.List,
137
+ "star": P.Star,
138
+ "bookmark": P.BookmarkSimple
135
139
  };
136
140
  return buildExtendedMap(P, aliases);
137
141
  }
@@ -186,7 +190,9 @@ async function loadHeroicons() {
186
190
  "send": H.PaperAirplaneIcon,
187
191
  "log-out": H.ArrowRightStartOnRectangleIcon,
188
192
  "edit": H.PencilIcon,
189
- "menu": H.Bars3Icon
193
+ "menu": H.Bars3Icon,
194
+ "star": H.StarIcon,
195
+ "bookmark": H.BookmarkIcon
190
196
  };
191
197
  return buildExtendedMap(H, aliases, { stripSuffix: "Icon" });
192
198
  }
@@ -241,7 +247,9 @@ async function loadTabler() {
241
247
  "send": T.IconSend,
242
248
  "log-out": T.IconLogout,
243
249
  "edit": T.IconPencil,
244
- "menu": T.IconMenu2
250
+ "menu": T.IconMenu2,
251
+ "star": T.IconStar,
252
+ "bookmark": T.IconBookmark
245
253
  };
246
254
  return buildExtendedMap(T, aliases, { stripPrefix: "Icon" });
247
255
  }
@@ -296,7 +304,9 @@ async function loadFeather() {
296
304
  "send": F.FiSend,
297
305
  "log-out": F.FiLogOut,
298
306
  "edit": F.FiEdit2,
299
- "menu": F.FiMenu
307
+ "menu": F.FiMenu,
308
+ "star": F.FiStar,
309
+ "bookmark": F.FiBookmark
300
310
  };
301
311
  return buildExtendedMap(F, aliases, { stripPrefix: "Fi" });
302
312
  }
@@ -360,5 +370,5 @@ function Icon({ name, size = 16, className }) {
360
370
  }
361
371
 
362
372
  export { Icon, IconProvider };
363
- //# sourceMappingURL=chunk-OGIR65SM.js.map
364
- //# sourceMappingURL=chunk-OGIR65SM.js.map
373
+ //# sourceMappingURL=chunk-JO764TKY.js.map
374
+ //# sourceMappingURL=chunk-JO764TKY.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../showcase/src/lib/icons.tsx"],"names":[],"mappings":"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","file":"chunk-JO764TKY.js","sourcesContent":["import { createContext, useContext, useState, useEffect, type ReactNode, type ComponentType } from \"react\";\n\n/* ── Types ────────────────────────────────────────────────────── */\n\ntype CuratedIconName =\n | \"home\" | \"folder\" | \"chart\" | \"settings\"\n | \"chevron-right\" | \"close\" | \"plus\" | \"search\"\n | \"bell\" | \"user\" | \"check\" | \"warning\" | \"info\" | \"error\"\n | \"clock\" | \"calendar\"\n | \"bold\" | \"italic\" | \"underline\" | \"strikethrough\"\n | \"align-left\" | \"align-center\" | \"align-right\"\n | \"list\" | \"list-ordered\" | \"list-checks\"\n | \"link\" | \"image\" | \"table\" | \"code\" | \"quote\" | \"minus\"\n | \"superscript\" | \"subscript\" | \"highlight\" | \"type\"\n | \"chevron-up\" | \"chevron-down\" | \"trash\"\n | \"undo\" | \"redo\"\n | \"arrow-left\" | \"grip-vertical\"\n | \"mic\" | \"paperclip\" | \"send\"\n | \"log-out\" | \"edit\" | \"menu\"\n | \"star\" | \"bookmark\";\n\n/**\n * Curated names provide autocomplete and work identically across all 5 packs.\n * Any kebab-case string is also accepted — it resolves directly against the\n * active pack's native exports (e.g. \"clipboard-copy\" → Lucide's ClipboardCopy).\n */\nexport type IconName = CuratedIconName | (string & {});\n\nexport type IconPack = \"lucide\" | \"phosphor\" | \"heroicons\" | \"tabler\" | \"feather\";\n\ntype IconComponent = ComponentType<Record<string, unknown>>;\ntype IconMap = Record<string, IconComponent>;\n\n/* ── Helpers ───────────────────────────────────────────────────── */\n\nfunction pascalToKebab(s: string): string {\n return s\n .replace(/([a-z0-9])([A-Z])/g, \"$1-$2\")\n .replace(/([A-Z])([A-Z][a-z])/g, \"$1-$2\")\n .replace(/([a-zA-Z])(\\d)/g, \"$1-$2\")\n .replace(/(\\d)([a-zA-Z])/g, \"$1-$2\")\n .toLowerCase();\n}\n\n/**\n * Build an extended icon map from a pack module's exports.\n * Each PascalCase function export is converted to a kebab-case entry.\n * Pack prefixes/suffixes (Icon*, *Icon, Fi*) are stripped before conversion.\n * Curated aliases always take precedence over auto-generated names.\n */\nfunction buildExtendedMap(\n mod: Record<string, unknown>,\n aliases: IconMap,\n opts?: { stripPrefix?: string; stripSuffix?: string },\n): IconMap {\n const map: IconMap = {};\n\n for (const [exportName, value] of Object.entries(mod)) {\n if (typeof value !== \"function\") continue;\n if (!exportName[0] || exportName[0] !== exportName[0].toUpperCase()) continue;\n\n let name = exportName;\n if (opts?.stripPrefix && name.startsWith(opts.stripPrefix)) {\n name = name.slice(opts.stripPrefix.length);\n }\n if (opts?.stripSuffix && name.endsWith(opts.stripSuffix)) {\n name = name.slice(0, -opts.stripSuffix.length);\n }\n if (!name) continue;\n\n map[pascalToKebab(name)] = value as IconComponent;\n }\n\n Object.assign(map, aliases);\n return map;\n}\n\n/* ── Pack loading ─────────────────────────────────────────────── */\n\nconst packCache = new Map<IconPack, IconMap>();\n\nconst fullyLoaded = new Set<IconPack>();\n\nasync function loadLucide(): Promise<IconMap> {\n const L = await import(\"lucide-react\");\n const aliases: IconMap = {\n \"home\": L.Home, \"folder\": L.FolderKanban, \"chart\": L.BarChart3, \"settings\": L.Settings,\n \"chevron-right\": L.ChevronRight, \"close\": L.X, \"plus\": L.Plus, \"search\": L.Search,\n \"bell\": L.Bell, \"user\": L.User, \"check\": L.Check, \"warning\": L.AlertTriangle,\n \"info\": L.Info, \"error\": L.AlertCircle, \"clock\": L.Clock, \"calendar\": L.CalendarDays,\n \"bold\": L.Bold, \"italic\": L.Italic, \"underline\": L.Underline, \"strikethrough\": L.Strikethrough,\n \"align-left\": L.AlignLeft, \"align-center\": L.AlignCenter, \"align-right\": L.AlignRight,\n \"list\": L.List, \"list-ordered\": L.ListOrdered, \"list-checks\": L.ListChecks,\n \"link\": L.Link, \"image\": L.Image, \"table\": L.Table, \"code\": L.Code,\n \"quote\": L.Quote, \"minus\": L.Minus, \"superscript\": L.Superscript, \"subscript\": L.Subscript,\n \"highlight\": L.Highlighter, \"type\": L.Type, \"chevron-up\": L.ChevronUp, \"chevron-down\": L.ChevronDown,\n \"trash\": L.Trash2, \"undo\": L.Undo2, \"redo\": L.Redo2,\n \"arrow-left\": L.ArrowLeft, \"grip-vertical\": L.GripVertical,\n \"mic\": L.Mic, \"paperclip\": L.Paperclip, \"send\": L.Send,\n \"log-out\": L.LogOut, \"edit\": L.Pencil, \"menu\": L.Menu,\n \"star\": L.Star, \"bookmark\": L.Bookmark,\n };\n return buildExtendedMap(L as unknown as Record<string, unknown>, aliases);\n}\n\nasync function loadPhosphor(): Promise<IconMap> {\n const P = await import(\"@phosphor-icons/react\");\n const aliases: IconMap = {\n \"home\": P.House, \"folder\": P.FolderSimple, \"chart\": P.ChartBar,\n \"settings\": P.Gear, \"chevron-right\": P.CaretRight, \"close\": P.X,\n \"plus\": P.Plus, \"search\": P.MagnifyingGlass, \"bell\": P.Bell, \"user\": P.User,\n \"check\": P.Check, \"warning\": P.Warning, \"info\": P.Info,\n \"error\": P.WarningCircle, \"clock\": P.Clock, \"calendar\": P.CalendarBlank,\n \"bold\": P.TextB, \"italic\": P.TextItalic, \"underline\": P.TextUnderline,\n \"strikethrough\": P.TextStrikethrough, \"align-left\": P.TextAlignLeft,\n \"align-center\": P.TextAlignCenter, \"align-right\": P.TextAlignRight,\n \"list\": P.ListBullets, \"list-ordered\": P.ListNumbers, \"list-checks\": P.ListChecks,\n \"link\": P.Link, \"image\": P.Image, \"table\": P.Table, \"code\": P.Code,\n \"quote\": P.Quotes, \"minus\": P.Minus, \"superscript\": P.TextSuperscript,\n \"subscript\": P.TextSubscript, \"highlight\": P.Highlighter, \"type\": P.TextT,\n \"chevron-up\": P.CaretUp, \"chevron-down\": P.CaretDown, \"trash\": P.Trash,\n \"undo\": P.ArrowCounterClockwise, \"redo\": P.ArrowClockwise,\n \"arrow-left\": P.ArrowLeft, \"grip-vertical\": P.DotsSixVertical,\n \"mic\": P.Microphone, \"paperclip\": P.Paperclip, \"send\": P.PaperPlaneTilt,\n \"log-out\": P.SignOut, \"edit\": P.PencilSimple, \"menu\": P.List,\n \"star\": P.Star, \"bookmark\": P.BookmarkSimple,\n };\n return buildExtendedMap(P as unknown as Record<string, unknown>, aliases);\n}\n\nasync function loadHeroicons(): Promise<IconMap> {\n const H = await import(\"@heroicons/react/24/outline\");\n const aliases: IconMap = {\n \"home\": H.HomeIcon, \"folder\": H.FolderIcon, \"chart\": H.ChartBarIcon,\n \"settings\": H.Cog6ToothIcon, \"chevron-right\": H.ChevronRightIcon,\n \"close\": H.XMarkIcon, \"plus\": H.PlusIcon, \"search\": H.MagnifyingGlassIcon,\n \"bell\": H.BellIcon, \"user\": H.UserIcon, \"check\": H.CheckIcon,\n \"warning\": H.ExclamationTriangleIcon, \"info\": H.InformationCircleIcon,\n \"error\": H.ExclamationCircleIcon, \"clock\": H.ClockIcon, \"calendar\": H.CalendarDaysIcon,\n \"bold\": H.BoldIcon, \"italic\": H.ItalicIcon, \"underline\": H.UnderlineIcon,\n \"strikethrough\": H.StrikethroughIcon, \"align-left\": H.Bars3BottomLeftIcon,\n \"align-center\": H.Bars3Icon, \"align-right\": H.Bars3BottomRightIcon,\n \"list\": H.ListBulletIcon, \"list-ordered\": H.NumberedListIcon,\n \"list-checks\": H.ClipboardDocumentCheckIcon, \"link\": H.LinkIcon,\n \"image\": H.PhotoIcon, \"table\": H.TableCellsIcon, \"code\": H.CodeBracketIcon,\n \"quote\": H.ChatBubbleBottomCenterTextIcon, \"minus\": H.MinusIcon,\n \"superscript\": H.H1Icon, \"subscript\": H.H2Icon,\n \"highlight\": H.PaintBrushIcon, \"type\": H.LanguageIcon,\n \"chevron-up\": H.ChevronUpIcon, \"chevron-down\": H.ChevronDownIcon, \"trash\": H.TrashIcon,\n \"undo\": H.ArrowUturnLeftIcon, \"redo\": H.ArrowUturnRightIcon,\n \"arrow-left\": H.ArrowLeftIcon, \"grip-vertical\": H.Bars2Icon,\n \"mic\": H.MicrophoneIcon, \"paperclip\": H.PaperClipIcon, \"send\": H.PaperAirplaneIcon,\n \"log-out\": H.ArrowRightStartOnRectangleIcon, \"edit\": H.PencilIcon, \"menu\": H.Bars3Icon,\n \"star\": H.StarIcon, \"bookmark\": H.BookmarkIcon,\n };\n return buildExtendedMap(H as unknown as Record<string, unknown>, aliases, { stripSuffix: \"Icon\" });\n}\n\nasync function loadTabler(): Promise<IconMap> {\n const T = await import(\"@tabler/icons-react\");\n const aliases: IconMap = {\n \"home\": T.IconHome, \"folder\": T.IconFolder, \"chart\": T.IconChartBar,\n \"settings\": T.IconSettings, \"chevron-right\": T.IconChevronRight,\n \"close\": T.IconX, \"plus\": T.IconPlus, \"search\": T.IconSearch,\n \"bell\": T.IconBell, \"user\": T.IconUser, \"check\": T.IconCheck,\n \"warning\": T.IconAlertTriangle, \"info\": T.IconInfoCircle,\n \"error\": T.IconAlertCircle, \"clock\": T.IconClock, \"calendar\": T.IconCalendar,\n \"bold\": T.IconBold, \"italic\": T.IconItalic, \"underline\": T.IconUnderline,\n \"strikethrough\": T.IconStrikethrough, \"align-left\": T.IconAlignLeft,\n \"align-center\": T.IconAlignCenter, \"align-right\": T.IconAlignRight,\n \"list\": T.IconList, \"list-ordered\": T.IconListNumbers, \"list-checks\": T.IconListCheck,\n \"link\": T.IconLink, \"image\": T.IconPhoto, \"table\": T.IconTable, \"code\": T.IconCode,\n \"quote\": T.IconQuote, \"minus\": T.IconMinus, \"superscript\": T.IconSuperscript,\n \"subscript\": T.IconSubscript, \"highlight\": T.IconHighlight, \"type\": T.IconTypography,\n \"chevron-up\": T.IconChevronUp, \"chevron-down\": T.IconChevronDown, \"trash\": T.IconTrash,\n \"undo\": T.IconArrowBackUp, \"redo\": T.IconArrowForwardUp,\n \"arrow-left\": T.IconArrowLeft, \"grip-vertical\": T.IconGripVertical,\n \"mic\": T.IconMicrophone, \"paperclip\": T.IconPaperclip, \"send\": T.IconSend,\n \"log-out\": T.IconLogout, \"edit\": T.IconPencil, \"menu\": T.IconMenu2,\n \"star\": T.IconStar, \"bookmark\": T.IconBookmark,\n };\n return buildExtendedMap(T as unknown as Record<string, unknown>, aliases, { stripPrefix: \"Icon\" });\n}\n\nasync function loadFeather(): Promise<IconMap> {\n const F = await import(\"react-icons/fi\");\n const aliases: IconMap = {\n \"home\": F.FiHome, \"folder\": F.FiFolder, \"chart\": F.FiBarChart2, \"settings\": F.FiSettings,\n \"chevron-right\": F.FiChevronRight, \"close\": F.FiX, \"plus\": F.FiPlus, \"search\": F.FiSearch,\n \"bell\": F.FiBell, \"user\": F.FiUser, \"check\": F.FiCheck, \"warning\": F.FiAlertTriangle,\n \"info\": F.FiInfo, \"error\": F.FiAlertCircle, \"clock\": F.FiClock, \"calendar\": F.FiCalendar,\n \"bold\": F.FiBold, \"italic\": F.FiItalic, \"underline\": F.FiUnderline, \"strikethrough\": F.FiSlash,\n \"align-left\": F.FiAlignLeft, \"align-center\": F.FiAlignCenter, \"align-right\": F.FiAlignRight,\n \"list\": F.FiList, \"list-ordered\": F.FiList, \"list-checks\": F.FiCheckSquare,\n \"link\": F.FiLink, \"image\": F.FiImage, \"table\": F.FiGrid, \"code\": F.FiCode,\n \"quote\": F.FiMessageSquare, \"minus\": F.FiMinus, \"superscript\": F.FiChevronUp,\n \"subscript\": F.FiChevronDown, \"highlight\": F.FiEdit2, \"type\": F.FiType,\n \"chevron-up\": F.FiChevronUp, \"chevron-down\": F.FiChevronDown, \"trash\": F.FiTrash2,\n \"undo\": F.FiRotateCcw, \"redo\": F.FiRotateCw,\n \"arrow-left\": F.FiArrowLeft, \"grip-vertical\": F.FiMoreVertical,\n \"mic\": F.FiMic, \"paperclip\": F.FiPaperclip, \"send\": F.FiSend,\n \"log-out\": F.FiLogOut, \"edit\": F.FiEdit2, \"menu\": F.FiMenu,\n \"star\": F.FiStar, \"bookmark\": F.FiBookmark,\n };\n return buildExtendedMap(F as unknown as Record<string, unknown>, aliases, { stripPrefix: \"Fi\" });\n}\n\nconst packLoaders: Record<IconPack, () => Promise<IconMap>> = {\n lucide: loadLucide,\n phosphor: loadPhosphor,\n heroicons: loadHeroicons,\n tabler: loadTabler,\n feather: loadFeather,\n};\n\n/* ── Context ──────────────────────────────────────────────────── */\n\ninterface IconContextValue {\n pack: IconPack;\n weight: number;\n}\n\nconst IconCtx = createContext<IconContextValue>({ pack: \"lucide\", weight: 1.5 });\n\nexport function IconProvider({ pack, weight, children }: { pack: IconPack; weight: number; children: ReactNode }) {\n return <IconCtx.Provider value={{ pack, weight }}>{children}</IconCtx.Provider>;\n}\n\n/* ── Hook ─────────────────────────────────────────────────────── */\n\nfunction useIconMap(pack: IconPack): IconMap | null {\n const [map, setMap] = useState<IconMap | null>(packCache.get(pack) ?? null);\n\n useEffect(() => {\n if (fullyLoaded.has(pack)) {\n const cached = packCache.get(pack);\n if (cached) setMap(cached);\n return;\n }\n\n let cancelled = false;\n packLoaders[pack]().then((loaded) => {\n packCache.set(pack, loaded);\n fullyLoaded.add(pack);\n if (!cancelled) setMap(loaded);\n });\n return () => { cancelled = true; };\n }, [pack]);\n\n return map;\n}\n\n/* ── Phosphor weight mapping ──────────────────────────────────── */\n\nfunction getPhosphorWeight(numericWeight: number): \"thin\" | \"light\" | \"regular\" | \"bold\" | \"fill\" | \"duotone\" {\n if (numericWeight <= 0.75) return \"thin\";\n if (numericWeight <= 1.25) return \"light\";\n if (numericWeight <= 1.75) return \"regular\";\n if (numericWeight <= 2.25) return \"bold\";\n return \"fill\";\n}\n\n/* ── Icon component ───────────────────────────────────────────── */\n\nexport function Icon({ name, size = 16, className }: { name: IconName; size?: number; className?: string }) {\n const { pack, weight } = useContext(IconCtx);\n const map = useIconMap(pack);\n if (!map) return null;\n const Comp = map[name];\n if (!Comp) return null;\n\n if (pack === \"phosphor\") {\n return <Comp size={size} weight={getPhosphorWeight(weight)} className={className} />;\n }\n\n if (pack === \"heroicons\") {\n return <Comp className={className} style={{ width: size, height: size, strokeWidth: weight }} />;\n }\n\n if (pack === \"tabler\") {\n return <Comp size={size} stroke={weight} className={className} />;\n }\n\n if (pack === \"feather\") {\n return <Comp size={size} className={className} strokeWidth={weight} />;\n }\n\n return <Comp size={size} strokeWidth={weight} className={className} />;\n}\n"]}
package/dist/icons.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import { ReactNode } from 'react';
3
3
 
4
- type CuratedIconName = "home" | "folder" | "chart" | "settings" | "chevron-right" | "close" | "plus" | "search" | "bell" | "user" | "check" | "warning" | "info" | "error" | "clock" | "calendar" | "bold" | "italic" | "underline" | "strikethrough" | "align-left" | "align-center" | "align-right" | "list" | "list-ordered" | "list-checks" | "link" | "image" | "table" | "code" | "quote" | "minus" | "superscript" | "subscript" | "highlight" | "type" | "chevron-up" | "chevron-down" | "trash" | "undo" | "redo" | "arrow-left" | "grip-vertical" | "mic" | "paperclip" | "send" | "log-out" | "edit" | "menu";
4
+ type CuratedIconName = "home" | "folder" | "chart" | "settings" | "chevron-right" | "close" | "plus" | "search" | "bell" | "user" | "check" | "warning" | "info" | "error" | "clock" | "calendar" | "bold" | "italic" | "underline" | "strikethrough" | "align-left" | "align-center" | "align-right" | "list" | "list-ordered" | "list-checks" | "link" | "image" | "table" | "code" | "quote" | "minus" | "superscript" | "subscript" | "highlight" | "type" | "chevron-up" | "chevron-down" | "trash" | "undo" | "redo" | "arrow-left" | "grip-vertical" | "mic" | "paperclip" | "send" | "log-out" | "edit" | "menu" | "star" | "bookmark";
5
5
  /**
6
6
  * Curated names provide autocomplete and work identically across all 5 packs.
7
7
  * Any kebab-case string is also accepted — it resolves directly against the
package/dist/icons.js CHANGED
@@ -1,4 +1,4 @@
1
- export { Icon, IconProvider } from './chunk-OGIR65SM.js';
1
+ export { Icon, IconProvider } from './chunk-JO764TKY.js';
2
2
  import './chunk-5WRI5ZAA.js';
3
3
  //# sourceMappingURL=icons.js.map
4
4
  //# sourceMappingURL=icons.js.map
package/dist/index.d.ts CHANGED
@@ -956,6 +956,19 @@ interface NavbarProps {
956
956
  }
957
957
  declare const Navbar: react.ForwardRefExoticComponent<NavbarProps & react.RefAttributes<HTMLElement>>;
958
958
 
959
+ type NavItemType = "default" | "underline" | "minimal";
960
+ interface NavItemProps {
961
+ label: string;
962
+ icon?: IconName;
963
+ active?: boolean;
964
+ href?: string;
965
+ onClick?: (e: React.MouseEvent) => void;
966
+ type?: NavItemType;
967
+ className?: string;
968
+ children?: ReactNode;
969
+ }
970
+ declare const NavItem: react.ForwardRefExoticComponent<NavItemProps & react.RefAttributes<HTMLAnchorElement>>;
971
+
959
972
  interface NavMenuItem {
960
973
  label: string;
961
974
  href?: string;
@@ -1274,9 +1287,11 @@ declare const AppShell: react.ForwardRefExoticComponent<AppShellProps & react.Re
1274
1287
 
1275
1288
  type MaxWidth = "sm" | "md" | "lg" | "xl" | "full";
1276
1289
  type Padding = "none" | "default" | "wide";
1290
+ type VerticalPadding = "none" | "default" | "spacious";
1277
1291
  interface PageContainerProps {
1278
1292
  maxWidth?: MaxWidth;
1279
1293
  padding?: Padding;
1294
+ verticalPadding?: VerticalPadding;
1280
1295
  centered?: boolean;
1281
1296
  children: ReactNode;
1282
1297
  className?: string;
@@ -1308,4 +1323,4 @@ interface ActionPanelGroupProps {
1308
1323
  }
1309
1324
  declare const ActionPanelGroup: react.ForwardRefExoticComponent<ActionPanelGroupProps & react.RefAttributes<HTMLDivElement>>;
1310
1325
 
1311
- export { Accordion, ActionPanel, ActionPanelGroup, Alert, AppShell, type AppShellContextValue, Avatar, Badge, type BadgeSize, type BadgeVariant, BottomNav, type BottomNavItem, Breadcrumbs, type BreakpointKey, BreakpointWidthProvider, BulkActionBar, Button, Calendar, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, ChatMessageList, Checkbox, CheckboxGroup, CheckboxGroupItem, CodeBlock, Collapsible, ColorPicker, type Column, Combobox, CommandPalette, ContextMenu, DataGrid, DataList, DatePicker, Dialog, Divider, Dock, Drawer, Dropdown, DropdownMenu, EmptyState, FileUpload, FormWrapper, HoverCard, InlineFieldError, Input, KanbanBoard, Kbd, Label, MentionInput, MobileHeaderMenu, type MobileHeaderMenuItemData, type MobileHeaderMenuType, NavMenu, type NavMenuItem, Navbar, type NavbarType, NotificationCenter, NumberInput, PageContainer, PageHeader, type PageHeaderProps, Pagination, PinInput, Popover, Progress, RadioGroup, Rating, ResizableHandle, ResizablePanel, ResizablePanelGroup, RichTextEditor, ScrollArea, SectionHeading, SegmentedControl, Sheet, Sidebar, type SidebarContextValue, type SidebarItem, SidebarNav, type SidebarSection, type SidebarType, Skeleton, SliderRange, Spinner, StackedList, StatsCard, Stepper, type Tab, Table, type TableDensity, type TableProps, Tabs, Tag, TagInput, type TagVariant, Textarea, TimePicker, Timeline, Toast, Toggle, Tooltip, Tour, TransferList, TreeView, VirtualizedList, useAppShell, useBreakpoint, useFormContext, useSidebar };
1326
+ export { Accordion, ActionPanel, ActionPanelGroup, Alert, AppShell, type AppShellContextValue, Avatar, Badge, type BadgeSize, type BadgeVariant, BottomNav, type BottomNavItem, Breadcrumbs, type BreakpointKey, BreakpointWidthProvider, BulkActionBar, Button, Calendar, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, ChatMessageList, Checkbox, CheckboxGroup, CheckboxGroupItem, CodeBlock, Collapsible, ColorPicker, type Column, Combobox, CommandPalette, ContextMenu, DataGrid, DataList, DatePicker, Dialog, Divider, Dock, Drawer, Dropdown, DropdownMenu, EmptyState, FileUpload, FormWrapper, HoverCard, InlineFieldError, Input, KanbanBoard, Kbd, Label, MentionInput, MobileHeaderMenu, type MobileHeaderMenuItemData, type MobileHeaderMenuType, NavItem, type NavItemProps, type NavItemType, NavMenu, type NavMenuItem, Navbar, type NavbarType, NotificationCenter, NumberInput, PageContainer, PageHeader, type PageHeaderProps, Pagination, PinInput, Popover, Progress, RadioGroup, Rating, ResizableHandle, ResizablePanel, ResizablePanelGroup, RichTextEditor, ScrollArea, SectionHeading, SegmentedControl, Sheet, Sidebar, type SidebarContextValue, type SidebarItem, SidebarNav, type SidebarSection, type SidebarType, Skeleton, SliderRange, Spinner, StackedList, StatsCard, Stepper, type Tab, Table, type TableDensity, type TableProps, Tabs, Tag, TagInput, type TagVariant, Textarea, TimePicker, Timeline, Toast, Toggle, Tooltip, Tour, TransferList, TreeView, VirtualizedList, useAppShell, useBreakpoint, useFormContext, useSidebar };
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import { cn, GLASS_BACKDROP, lockBodyScroll, unlockBodyScroll, GLASS_OVERLAY, GLASS_DROPDOWN, GLASS_SURFACE } from './chunk-5XIPPVH7.js';
2
- import { Icon } from './chunk-OGIR65SM.js';
2
+ import { Icon } from './chunk-JO764TKY.js';
3
3
  import { __commonJS, __toESM } from './chunk-5WRI5ZAA.js';
4
4
  import * as React6 from 'react';
5
- import React6__default, { createContext, forwardRef, useState, useCallback, useRef, useId, useContext, useMemo, useEffect, createElement, Fragment as Fragment$1, useLayoutEffect, isValidElement, cloneElement, useDebugValue, memo, useReducer, useSyncExternalStore as useSyncExternalStore$1, useImperativeHandle } from 'react';
5
+ import React6__default, { createContext, forwardRef, useState, useCallback, useRef, useContext, useId, useMemo, useEffect, createElement, Fragment as Fragment$1, useLayoutEffect, isValidElement, cloneElement, useDebugValue, memo, useReducer, useSyncExternalStore as useSyncExternalStore$1, useImperativeHandle } from 'react';
6
6
  import ReactDOM, { createPortal, unstable_batchedUpdates, flushSync } from 'react-dom';
7
7
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
8
8
  import { useSyncExternalStore } from 'use-sync-external-store/shim/index.js';
@@ -95166,6 +95166,58 @@ var AppShell = forwardRef(function AppShell2({
95166
95166
  }
95167
95167
  );
95168
95168
  });
95169
+ var NavbarTypeContext = createContext("default");
95170
+ var NavItem = forwardRef(function NavItem2({ label, icon, active = false, href, onClick, type: typeProp, className, children }, ref) {
95171
+ const contextType = useContext(NavbarTypeContext);
95172
+ const type = typeProp ?? contextType;
95173
+ const baseClasses = cn(
95174
+ "inline-flex items-center gap-ds-2 cursor-pointer select-none",
95175
+ "transition-colors duration-[var(--ds-transition-speed)] ease-[var(--ds-transition-ease)]",
95176
+ "focus-visible:outline-none focus-visible:shadow-[var(--ds-shadow-focus)]",
95177
+ "text-[length:var(--ds-font-size-sm)]"
95178
+ );
95179
+ const typeClasses = getTypeClasses(type, active);
95180
+ return /* @__PURE__ */ jsxs(
95181
+ "a",
95182
+ {
95183
+ ref,
95184
+ href: href ?? "#",
95185
+ onClick,
95186
+ "aria-current": active ? "page" : void 0,
95187
+ className: cn(baseClasses, typeClasses, className),
95188
+ children: [
95189
+ icon && /* @__PURE__ */ jsx(Icon, { name: icon, size: 16 }),
95190
+ children ?? label,
95191
+ type === "underline" && active && /* @__PURE__ */ jsx(
95192
+ "span",
95193
+ {
95194
+ className: "absolute bottom-0 left-ds-1 right-ds-1 rounded-t-full bg-[var(--ds-accent-primary)]",
95195
+ style: { height: "2px" }
95196
+ }
95197
+ )
95198
+ ]
95199
+ }
95200
+ );
95201
+ });
95202
+ function getTypeClasses(type, active) {
95203
+ switch (type) {
95204
+ case "underline":
95205
+ return cn(
95206
+ "px-ds-2 py-ds-2 relative",
95207
+ active ? "text-[var(--ds-text-primary)] font-[var(--ds-weight-heading)]" : "text-[var(--ds-text-muted)] hover:text-[var(--ds-text-primary)]"
95208
+ );
95209
+ case "minimal":
95210
+ return cn(
95211
+ "px-ds-2 py-ds-1",
95212
+ active ? "text-[var(--ds-accent-primary)] font-medium" : "text-[var(--ds-text-muted)] hover:text-[var(--ds-text-secondary)]"
95213
+ );
95214
+ default:
95215
+ return cn(
95216
+ "px-ds-2 py-ds-1 rounded-[var(--ds-radius-sm)]",
95217
+ active ? "bg-[color-mix(in_oklch,var(--ds-accent-primary)_10%,transparent)] text-[var(--ds-accent-primary)] font-[var(--ds-weight-heading)]" : "text-[var(--ds-text-secondary)] hover:text-[var(--ds-text-primary)] hover:bg-[var(--ds-bg-muted)]"
95218
+ );
95219
+ }
95220
+ }
95169
95221
  function HamburgerButton({ onClick, className: cls }) {
95170
95222
  return /* @__PURE__ */ jsx(
95171
95223
  "button",
@@ -95231,7 +95283,7 @@ var Navbar = forwardRef(function Navbar2({
95231
95283
  showHamburger && /* @__PURE__ */ jsx(HamburgerButton, { onClick: handleHamburger }),
95232
95284
  logo && /* @__PURE__ */ jsx("div", { className: "flex items-center shrink-0", children: logo })
95233
95285
  ] }),
95234
- navLinks && !hideNavLinks ? /* @__PURE__ */ jsx("nav", { className: "flex items-center gap-ds-1 min-w-0 overflow-x-clip justify-center", "data-navbar-type": type, children: navLinks }) : /* @__PURE__ */ jsx("div", {}),
95286
+ navLinks && !hideNavLinks ? /* @__PURE__ */ jsx(NavbarTypeContext.Provider, { value: type, children: /* @__PURE__ */ jsx("nav", { className: "flex items-center gap-ds-1 min-w-0 overflow-x-clip justify-center", "data-navbar-type": type, children: navLinks }) }) : /* @__PURE__ */ jsx("div", {}),
95235
95287
  /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-ds-4 justify-end", children: [
95236
95288
  search && /* @__PURE__ */ jsx("div", { className: "flex items-center shrink-0", children: search }),
95237
95289
  actions && /* @__PURE__ */ jsx("div", { className: "flex items-center gap-ds-2 shrink-0", children: actions }),
@@ -95257,7 +95309,7 @@ var Navbar = forwardRef(function Navbar2({
95257
95309
  showHamburger && /* @__PURE__ */ jsx(HamburgerButton, { onClick: handleHamburger }),
95258
95310
  logo && /* @__PURE__ */ jsx("div", { className: "flex items-center shrink-0", children: logo }),
95259
95311
  align === "right" && /* @__PURE__ */ jsx("div", { className: "flex-1" }),
95260
- navLinks && !hideNavLinks && /* @__PURE__ */ jsx("nav", { className: cn("flex items-center gap-ds-1 min-w-0 overflow-x-clip", align === "left" && "flex-1"), "data-navbar-type": type, children: navLinks }),
95312
+ navLinks && !hideNavLinks && /* @__PURE__ */ jsx(NavbarTypeContext.Provider, { value: type, children: /* @__PURE__ */ jsx("nav", { className: cn("flex items-center gap-ds-1 min-w-0 overflow-x-clip", align === "left" && "flex-1"), "data-navbar-type": type, children: navLinks }) }),
95261
95313
  (!navLinks || hideNavLinks) && /* @__PURE__ */ jsx("div", { className: "flex-1" }),
95262
95314
  search && /* @__PURE__ */ jsx("div", { className: "flex items-center shrink-0", children: search }),
95263
95315
  actions && /* @__PURE__ */ jsx("div", { className: "flex items-center gap-ds-2 shrink-0", children: actions }),
@@ -99037,9 +99089,15 @@ var paddingClasses = {
99037
99089
  default: "px-ds-6",
99038
99090
  wide: "px-ds-10"
99039
99091
  };
99092
+ var verticalPaddingClasses = {
99093
+ none: "",
99094
+ default: "pt-ds-6 pb-ds-12",
99095
+ spacious: "pt-ds-8 pb-ds-16"
99096
+ };
99040
99097
  var PageContainer = forwardRef(function PageContainer2({
99041
99098
  maxWidth = "xl",
99042
99099
  padding = "default",
99100
+ verticalPadding = "default",
99043
99101
  centered = true,
99044
99102
  children,
99045
99103
  className
@@ -99051,6 +99109,7 @@ var PageContainer = forwardRef(function PageContainer2({
99051
99109
  className: cn(
99052
99110
  "w-full",
99053
99111
  paddingClasses[padding],
99112
+ verticalPaddingClasses[verticalPadding],
99054
99113
  centered && "mx-auto",
99055
99114
  className
99056
99115
  ),
@@ -99162,6 +99221,6 @@ var ActionPanelGroup = forwardRef(function ActionPanelGroup2({
99162
99221
  *)
99163
99222
  */
99164
99223
 
99165
- export { Accordion, ActionPanel, ActionPanelGroup, Alert, AppShell, Avatar, Badge, BottomNav, Breadcrumbs, BreakpointWidthProvider, BulkActionBar, Button, Calendar, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, ChatMessageList, Checkbox, CheckboxGroup, CheckboxGroupItem, CodeBlock2 as CodeBlock, Collapsible, ColorPicker, Combobox, CommandPalette, ContextMenu, DataGrid, DataList, DatePicker, Dialog, Divider2 as Divider, Dock, Drawer, Dropdown, DropdownMenu, EmptyState, FileUpload, FormWrapper, HoverCard, InlineFieldError, Input, KanbanBoard, Kbd, Label, MentionInput, MobileHeaderMenu, NavMenu, Navbar, NotificationCenter, NumberInput, PageContainer, PageHeader, Pagination, PinInput, Popover, Progress, RadioGroup, Rating, ResizableHandle, ResizablePanel, ResizablePanelGroup, RichTextEditor, ScrollArea, SectionHeading, SegmentedControl, Sheet, Sidebar, SidebarNav, Skeleton, SliderRange, Spinner, StackedList, StatsCard, Stepper, Table2 as Table, Tabs, Tag, TagInput, Textarea, TimePicker, Timeline, Toast, Toggle, Tooltip, Tour, TransferList, TreeView, VirtualizedList, useAppShell, useBreakpoint, useFormContext, useSidebar };
99224
+ export { Accordion, ActionPanel, ActionPanelGroup, Alert, AppShell, Avatar, Badge, BottomNav, Breadcrumbs, BreakpointWidthProvider, BulkActionBar, Button, Calendar, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, ChatMessageList, Checkbox, CheckboxGroup, CheckboxGroupItem, CodeBlock2 as CodeBlock, Collapsible, ColorPicker, Combobox, CommandPalette, ContextMenu, DataGrid, DataList, DatePicker, Dialog, Divider2 as Divider, Dock, Drawer, Dropdown, DropdownMenu, EmptyState, FileUpload, FormWrapper, HoverCard, InlineFieldError, Input, KanbanBoard, Kbd, Label, MentionInput, MobileHeaderMenu, NavItem, NavMenu, Navbar, NotificationCenter, NumberInput, PageContainer, PageHeader, Pagination, PinInput, Popover, Progress, RadioGroup, Rating, ResizableHandle, ResizablePanel, ResizablePanelGroup, RichTextEditor, ScrollArea, SectionHeading, SegmentedControl, Sheet, Sidebar, SidebarNav, Skeleton, SliderRange, Spinner, StackedList, StatsCard, Stepper, Table2 as Table, Tabs, Tag, TagInput, Textarea, TimePicker, Timeline, Toast, Toggle, Tooltip, Tour, TransferList, TreeView, VirtualizedList, useAppShell, useBreakpoint, useFormContext, useSidebar };
99166
99225
  //# sourceMappingURL=index.js.map
99167
99226
  //# sourceMappingURL=index.js.map