@databricks/appkit 0.2.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CLAUDE.md +121 -1228
- package/NOTICE.md +1 -1
- package/bin/appkit.js +3 -0
- package/dist/analytics/analytics.d.ts.map +1 -1
- package/dist/analytics/analytics.js +17 -30
- package/dist/analytics/analytics.js.map +1 -1
- package/dist/app/index.d.ts +5 -1
- package/dist/app/index.d.ts.map +1 -1
- package/dist/app/index.js +38 -9
- package/dist/app/index.js.map +1 -1
- package/dist/appkit/package.js +1 -1
- package/dist/cache/index.js +3 -3
- package/dist/cache/index.js.map +1 -1
- package/dist/cli/commands/docs.js +47 -0
- package/dist/cli/commands/docs.js.map +1 -0
- package/dist/cli/commands/generate-types.js +38 -0
- package/dist/cli/commands/generate-types.js.map +1 -0
- package/dist/cli/commands/lint.js +104 -0
- package/dist/cli/commands/lint.js.map +1 -0
- package/dist/cli/commands/setup.js +121 -0
- package/dist/cli/commands/setup.js.map +1 -0
- package/dist/cli/index.d.ts +1 -0
- package/dist/cli/index.js +24 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/index.js.map +1 -1
- package/dist/plugin/plugin.d.ts +1 -0
- package/dist/plugin/plugin.d.ts.map +1 -1
- package/dist/plugin/plugin.js +1 -0
- package/dist/plugin/plugin.js.map +1 -1
- package/dist/server/remote-tunnel/remote-tunnel-manager.js +9 -9
- package/dist/server/remote-tunnel/remote-tunnel-manager.js.map +1 -1
- package/dist/server/utils.js +6 -6
- package/dist/server/utils.js.map +1 -1
- package/dist/shared/src/execute.d.ts +1 -0
- package/dist/shared/src/execute.d.ts.map +1 -1
- package/dist/shared/src/plugin.d.ts +3 -0
- package/dist/shared/src/plugin.d.ts.map +1 -1
- package/dist/telemetry/types.d.ts +1 -0
- package/dist/telemetry/types.d.ts.map +1 -1
- package/dist/type-generator/index.js +1 -1
- package/dist/type-generator/index.js.map +1 -1
- package/dist/type-generator/query-registry.js +9 -1
- package/dist/type-generator/query-registry.js.map +1 -1
- package/docs/docs/api/appkit/Class.AppKitError/index.html +77 -0
- package/docs/docs/api/appkit/Class.AppKitError.md +154 -0
- package/docs/docs/api/appkit/Class.AuthenticationError/index.html +110 -0
- package/docs/docs/api/appkit/Class.AuthenticationError.md +236 -0
- package/docs/docs/api/appkit/Class.ConfigurationError/index.html +112 -0
- package/docs/docs/api/appkit/Class.ConfigurationError.md +243 -0
- package/docs/docs/api/appkit/Class.ConnectionError/index.html +120 -0
- package/docs/docs/api/appkit/Class.ConnectionError.md +265 -0
- package/docs/docs/api/appkit/Class.ExecutionError/index.html +116 -0
- package/docs/docs/api/appkit/Class.ExecutionError.md +250 -0
- package/docs/docs/api/appkit/Class.InitializationError/index.html +104 -0
- package/docs/docs/api/appkit/Class.InitializationError.md +222 -0
- package/docs/docs/api/appkit/Class.Plugin/index.html +149 -0
- package/docs/docs/api/appkit/Class.Plugin.md +392 -0
- package/docs/docs/api/appkit/Class.ServerError/index.html +108 -0
- package/docs/docs/api/appkit/Class.ServerError.md +229 -0
- package/docs/docs/api/appkit/Class.TunnelError/index.html +108 -0
- package/docs/docs/api/appkit/Class.TunnelError.md +231 -0
- package/docs/docs/api/appkit/Class.ValidationError/index.html +106 -0
- package/docs/docs/api/appkit/Class.ValidationError.md +225 -0
- package/docs/docs/api/appkit/Function.appKitTypesPlugin/index.html +24 -0
- package/docs/docs/api/appkit/Function.appKitTypesPlugin.md +20 -0
- package/docs/docs/api/appkit/Function.createApp/index.html +24 -0
- package/docs/docs/api/appkit/Function.createApp.md +31 -0
- package/docs/docs/api/appkit/Function.isSQLTypeMarker/index.html +25 -0
- package/docs/docs/api/appkit/Function.isSQLTypeMarker.md +32 -0
- package/docs/docs/api/appkit/Interface.BasePluginConfig/index.html +28 -0
- package/docs/docs/api/appkit/Interface.BasePluginConfig.md +37 -0
- package/docs/docs/api/appkit/Interface.CacheConfig/index.html +63 -0
- package/docs/docs/api/appkit/Interface.CacheConfig.md +131 -0
- package/docs/docs/api/appkit/Interface.ITelemetry/index.html +73 -0
- package/docs/docs/api/appkit/Interface.ITelemetry.md +144 -0
- package/docs/docs/api/appkit/Interface.StreamExecutionSettings/index.html +26 -0
- package/docs/docs/api/appkit/Interface.StreamExecutionSettings.md +30 -0
- package/docs/docs/api/appkit/Interface.TelemetryConfig/index.html +32 -0
- package/docs/docs/api/appkit/Interface.TelemetryConfig.md +48 -0
- package/docs/docs/api/appkit/TypeAlias.IAppRouter/index.html +18 -0
- package/docs/docs/api/appkit/TypeAlias.IAppRouter.md +8 -0
- package/docs/docs/api/appkit/Variable.sql/index.html +98 -0
- package/docs/docs/api/appkit/Variable.sql.md +260 -0
- package/docs/docs/api/appkit/index.html +28 -0
- package/docs/docs/api/appkit-ui/data/AreaChart/index.html +29 -0
- package/docs/docs/api/appkit-ui/data/AreaChart.md +79 -0
- package/docs/docs/api/appkit-ui/data/BarChart/index.html +29 -0
- package/docs/docs/api/appkit-ui/data/BarChart.md +74 -0
- package/docs/docs/api/appkit-ui/data/DataTable/index.html +36 -0
- package/docs/docs/api/appkit-ui/data/DataTable.md +69 -0
- package/docs/docs/api/appkit-ui/data/DonutChart/index.html +29 -0
- package/docs/docs/api/appkit-ui/data/DonutChart.md +72 -0
- package/docs/docs/api/appkit-ui/data/HeatmapChart/index.html +35 -0
- package/docs/docs/api/appkit-ui/data/HeatmapChart.md +91 -0
- package/docs/docs/api/appkit-ui/data/LineChart/index.html +29 -0
- package/docs/docs/api/appkit-ui/data/LineChart.md +77 -0
- package/docs/docs/api/appkit-ui/data/PieChart/index.html +29 -0
- package/docs/docs/api/appkit-ui/data/PieChart.md +72 -0
- package/docs/docs/api/appkit-ui/data/RadarChart/index.html +29 -0
- package/docs/docs/api/appkit-ui/data/RadarChart.md +74 -0
- package/docs/docs/api/appkit-ui/data/ScatterChart/index.html +29 -0
- package/docs/docs/api/appkit-ui/data/ScatterChart.md +76 -0
- package/docs/docs/api/appkit-ui/index.html +23 -0
- package/docs/docs/api/appkit-ui/styling/index.html +74 -0
- package/docs/docs/api/appkit-ui/styling.md +81 -0
- package/docs/docs/api/appkit-ui/ui/Accordion/index.html +48 -0
- package/docs/docs/api/appkit-ui/ui/Accordion.md +139 -0
- package/docs/docs/api/appkit-ui/ui/Alert/index.html +41 -0
- package/docs/docs/api/appkit-ui/ui/Alert.md +89 -0
- package/docs/docs/api/appkit-ui/ui/AlertDialog/index.html +97 -0
- package/docs/docs/api/appkit-ui/ui/AlertDialog.md +282 -0
- package/docs/docs/api/appkit-ui/ui/AspectRatio/index.html +27 -0
- package/docs/docs/api/appkit-ui/ui/AspectRatio.md +46 -0
- package/docs/docs/api/appkit-ui/ui/Avatar/index.html +41 -0
- package/docs/docs/api/appkit-ui/ui/Avatar.md +90 -0
- package/docs/docs/api/appkit-ui/ui/Badge/index.html +27 -0
- package/docs/docs/api/appkit-ui/ui/Badge.md +38 -0
- package/docs/docs/api/appkit-ui/ui/Breadcrumb/index.html +69 -0
- package/docs/docs/api/appkit-ui/ui/Breadcrumb.md +193 -0
- package/docs/docs/api/appkit-ui/ui/Button/index.html +27 -0
- package/docs/docs/api/appkit-ui/ui/Button.md +39 -0
- package/docs/docs/api/appkit-ui/ui/ButtonGroup/index.html +38 -0
- package/docs/docs/api/appkit-ui/ui/ButtonGroup.md +68 -0
- package/docs/docs/api/appkit-ui/ui/Calendar/index.html +34 -0
- package/docs/docs/api/appkit-ui/ui/Calendar.md +154 -0
- package/docs/docs/api/appkit-ui/ui/Card/index.html +69 -0
- package/docs/docs/api/appkit-ui/ui/Card.md +222 -0
- package/docs/docs/api/appkit-ui/ui/Carousel/index.html +55 -0
- package/docs/docs/api/appkit-ui/ui/Carousel.md +152 -0
- package/docs/docs/api/appkit-ui/ui/ChartContainer/index.html +58 -0
- package/docs/docs/api/appkit-ui/ui/ChartContainer.md +343 -0
- package/docs/docs/api/appkit-ui/ui/Checkbox/index.html +27 -0
- package/docs/docs/api/appkit-ui/ui/Checkbox.md +53 -0
- package/docs/docs/api/appkit-ui/ui/Collapsible/index.html +41 -0
- package/docs/docs/api/appkit-ui/ui/Collapsible.md +125 -0
- package/docs/docs/api/appkit-ui/ui/Command/index.html +83 -0
- package/docs/docs/api/appkit-ui/ui/Command.md +287 -0
- package/docs/docs/api/appkit-ui/ui/ContextMenu/index.html +111 -0
- package/docs/docs/api/appkit-ui/ui/ContextMenu.md +419 -0
- package/docs/docs/api/appkit-ui/ui/Dialog/index.html +90 -0
- package/docs/docs/api/appkit-ui/ui/Dialog.md +285 -0
- package/docs/docs/api/appkit-ui/ui/Drawer/index.html +90 -0
- package/docs/docs/api/appkit-ui/ui/Drawer.md +387 -0
- package/docs/docs/api/appkit-ui/ui/DropdownMenu/index.html +111 -0
- package/docs/docs/api/appkit-ui/ui/DropdownMenu.md +478 -0
- package/docs/docs/api/appkit-ui/ui/Empty/index.html +54 -0
- package/docs/docs/api/appkit-ui/ui/Empty.md +109 -0
- package/docs/docs/api/appkit-ui/ui/Field/index.html +87 -0
- package/docs/docs/api/appkit-ui/ui/Field.md +201 -0
- package/docs/docs/api/appkit-ui/ui/FormControl/index.html +59 -0
- package/docs/docs/api/appkit-ui/ui/FormControl.md +128 -0
- package/docs/docs/api/appkit-ui/ui/HoverCard/index.html +39 -0
- package/docs/docs/api/appkit-ui/ui/HoverCard.md +131 -0
- package/docs/docs/api/appkit-ui/ui/Input/index.html +27 -0
- package/docs/docs/api/appkit-ui/ui/Input.md +35 -0
- package/docs/docs/api/appkit-ui/ui/InputGroup/index.html +59 -0
- package/docs/docs/api/appkit-ui/ui/InputGroup.md +123 -0
- package/docs/docs/api/appkit-ui/ui/InputOTP/index.html +48 -0
- package/docs/docs/api/appkit-ui/ui/InputOTP.md +124 -0
- package/docs/docs/api/appkit-ui/ui/Item/index.html +78 -0
- package/docs/docs/api/appkit-ui/ui/Item.md +185 -0
- package/docs/docs/api/appkit-ui/ui/Kbd/index.html +30 -0
- package/docs/docs/api/appkit-ui/ui/Kbd.md +39 -0
- package/docs/docs/api/appkit-ui/ui/Label/index.html +27 -0
- package/docs/docs/api/appkit-ui/ui/Label.md +44 -0
- package/docs/docs/api/appkit-ui/ui/Menubar/index.html +117 -0
- package/docs/docs/api/appkit-ui/ui/Menubar.md +484 -0
- package/docs/docs/api/appkit-ui/ui/NavigationMenu/index.html +76 -0
- package/docs/docs/api/appkit-ui/ui/NavigationMenu.md +338 -0
- package/docs/docs/api/appkit-ui/ui/Pagination/index.html +69 -0
- package/docs/docs/api/appkit-ui/ui/Pagination.md +191 -0
- package/docs/docs/api/appkit-ui/ui/Popover/index.html +45 -0
- package/docs/docs/api/appkit-ui/ui/Popover.md +173 -0
- package/docs/docs/api/appkit-ui/ui/Progress/index.html +27 -0
- package/docs/docs/api/appkit-ui/ui/Progress.md +51 -0
- package/docs/docs/api/appkit-ui/ui/RadioGroup/index.html +33 -0
- package/docs/docs/api/appkit-ui/ui/RadioGroup.md +83 -0
- package/docs/docs/api/appkit-ui/ui/ResizableHandle/index.html +41 -0
- package/docs/docs/api/appkit-ui/ui/ResizableHandle.md +136 -0
- package/docs/docs/api/appkit-ui/ui/ScrollArea/index.html +34 -0
- package/docs/docs/api/appkit-ui/ui/ScrollArea.md +83 -0
- package/docs/docs/api/appkit-ui/ui/Select/index.html +82 -0
- package/docs/docs/api/appkit-ui/ui/Select.md +267 -0
- package/docs/docs/api/appkit-ui/ui/Separator/index.html +27 -0
- package/docs/docs/api/appkit-ui/ui/Separator.md +56 -0
- package/docs/docs/api/appkit-ui/ui/Sheet/index.html +76 -0
- package/docs/docs/api/appkit-ui/ui/Sheet.md +236 -0
- package/docs/docs/api/appkit-ui/ui/Sidebar/index.html +183 -0
- package/docs/docs/api/appkit-ui/ui/Sidebar.md +490 -0
- package/docs/docs/api/appkit-ui/ui/Skeleton/index.html +27 -0
- package/docs/docs/api/appkit-ui/ui/Skeleton.md +43 -0
- package/docs/docs/api/appkit-ui/ui/Slider/index.html +27 -0
- package/docs/docs/api/appkit-ui/ui/Slider.md +61 -0
- package/docs/docs/api/appkit-ui/ui/Spinner/index.html +24 -0
- package/docs/docs/api/appkit-ui/ui/Spinner.md +22 -0
- package/docs/docs/api/appkit-ui/ui/Switch/index.html +27 -0
- package/docs/docs/api/appkit-ui/ui/Switch.md +46 -0
- package/docs/docs/api/appkit-ui/ui/Table/index.html +69 -0
- package/docs/docs/api/appkit-ui/ui/Table.md +236 -0
- package/docs/docs/api/appkit-ui/ui/Tabs/index.html +48 -0
- package/docs/docs/api/appkit-ui/ui/Tabs.md +177 -0
- package/docs/docs/api/appkit-ui/ui/Textarea/index.html +27 -0
- package/docs/docs/api/appkit-ui/ui/Textarea.md +35 -0
- package/docs/docs/api/appkit-ui/ui/Toaster/index.html +27 -0
- package/docs/docs/api/appkit-ui/ui/Toaster.md +75 -0
- package/docs/docs/api/appkit-ui/ui/Toggle/index.html +27 -0
- package/docs/docs/api/appkit-ui/ui/Toggle.md +48 -0
- package/docs/docs/api/appkit-ui/ui/ToggleGroup/index.html +33 -0
- package/docs/docs/api/appkit-ui/ui/ToggleGroup.md +88 -0
- package/docs/docs/api/appkit-ui/ui/Tooltip/index.html +46 -0
- package/docs/docs/api/appkit-ui/ui/Tooltip.md +134 -0
- package/docs/docs/api/appkit-ui.md +15 -0
- package/docs/docs/api/appkit.md +48 -0
- package/docs/docs/api/index.html +28 -0
- package/docs/docs/api.md +24 -0
- package/docs/docs/app-management/index.html +106 -0
- package/docs/docs/app-management.md +171 -0
- package/docs/docs/architecture/index.html +71 -0
- package/docs/docs/architecture.md +69 -0
- package/docs/docs/category/development/index.html +16 -0
- package/docs/docs/category/development.md +3 -0
- package/docs/docs/configuration/index.html +66 -0
- package/docs/docs/configuration.md +150 -0
- package/docs/docs/core-principles/index.html +38 -0
- package/docs/docs/core-principles.md +31 -0
- package/docs/docs/development/index.html +34 -0
- package/docs/docs/development/llm-guide/index.html +74 -0
- package/docs/docs/development/llm-guide.md +74 -0
- package/docs/docs/development/local-development/index.html +27 -0
- package/docs/docs/development/local-development.md +20 -0
- package/docs/docs/development/project-setup/index.html +69 -0
- package/docs/docs/development/project-setup.md +246 -0
- package/docs/docs/development/remote-bridge/index.html +76 -0
- package/docs/docs/development/remote-bridge.md +80 -0
- package/docs/docs/development/type-generation/index.html +65 -0
- package/docs/docs/development/type-generation.md +110 -0
- package/docs/docs/development.md +21 -0
- package/docs/docs/index.html +58 -0
- package/docs/docs/plugins/index.html +151 -0
- package/docs/docs/plugins.md +313 -0
- package/docs/docs.md +64 -0
- package/llms.txt +121 -1228
- package/package.json +11 -11
- package/scripts/postinstall.js +1 -1
- package/AGENTS.md +0 -1231
- package/bin/appkit-lint.js +0 -129
- package/bin/generate-types.js +0 -27
- package/bin/setup-claude.js +0 -190
|
@@ -0,0 +1,338 @@
|
|
|
1
|
+
# NavigationMenu
|
|
2
|
+
|
|
3
|
+
Horizontal navigation menu with dropdown submenus
|
|
4
|
+
|
|
5
|
+
## Example[](#example "Direct link to Example")
|
|
6
|
+
|
|
7
|
+
<!-- -->
|
|
8
|
+
|
|
9
|
+
```tsx
|
|
10
|
+
"use client"
|
|
11
|
+
|
|
12
|
+
import * as React from "react"
|
|
13
|
+
|
|
14
|
+
import {
|
|
15
|
+
cn,
|
|
16
|
+
NavigationMenu,
|
|
17
|
+
NavigationMenuContent,
|
|
18
|
+
NavigationMenuItem,
|
|
19
|
+
NavigationMenuLink,
|
|
20
|
+
NavigationMenuList,
|
|
21
|
+
NavigationMenuTrigger,
|
|
22
|
+
navigationMenuTriggerStyle,
|
|
23
|
+
} from "@databricks/appkit-ui/react"
|
|
24
|
+
|
|
25
|
+
const components: { title: string; href: string; description: string }[] = [
|
|
26
|
+
{
|
|
27
|
+
title: "Alert Dialog",
|
|
28
|
+
href: "/docs/primitives/alert-dialog",
|
|
29
|
+
description:
|
|
30
|
+
"A modal dialog that interrupts the user with important content and expects a response.",
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
title: "Hover Card",
|
|
34
|
+
href: "/docs/primitives/hover-card",
|
|
35
|
+
description:
|
|
36
|
+
"For sighted users to preview content available behind a link.",
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
title: "Progress",
|
|
40
|
+
href: "/docs/primitives/progress",
|
|
41
|
+
description:
|
|
42
|
+
"Displays an indicator showing the completion progress of a task, typically displayed as a progress bar.",
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
title: "Scroll-area",
|
|
46
|
+
href: "/docs/primitives/scroll-area",
|
|
47
|
+
description: "Visually or semantically separates content.",
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
title: "Tabs",
|
|
51
|
+
href: "/docs/primitives/tabs",
|
|
52
|
+
description:
|
|
53
|
+
"A set of layered sections of content—known as tab panels—that are displayed one at a time.",
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
title: "Tooltip",
|
|
57
|
+
href: "/docs/primitives/tooltip",
|
|
58
|
+
description:
|
|
59
|
+
"A popup that displays information related to an element when the element receives keyboard focus or the mouse hovers over it.",
|
|
60
|
+
},
|
|
61
|
+
]
|
|
62
|
+
|
|
63
|
+
export default function NavigationMenuExample() {
|
|
64
|
+
return (
|
|
65
|
+
<NavigationMenu>
|
|
66
|
+
<NavigationMenuList>
|
|
67
|
+
<NavigationMenuItem>
|
|
68
|
+
<NavigationMenuTrigger>About</NavigationMenuTrigger>
|
|
69
|
+
<NavigationMenuContent>
|
|
70
|
+
<ul className="grid gap-3 p-6 md:w-[400px] lg:w-[500px] lg:grid-cols-[.75fr_1fr]">
|
|
71
|
+
<li className="row-span-3">
|
|
72
|
+
<NavigationMenuLink asChild>
|
|
73
|
+
<a
|
|
74
|
+
className="flex h-full w-full select-none flex-col justify-end rounded-md bg-gradient-to-b from-muted/50 to-muted p-6 no-underline outline-none focus:shadow-md"
|
|
75
|
+
href="#"
|
|
76
|
+
>
|
|
77
|
+
<div className="mb-2 mt-4 text-lg font-medium">
|
|
78
|
+
AppKit
|
|
79
|
+
</div>
|
|
80
|
+
<p className="text-sm leading-tight text-muted-foreground">
|
|
81
|
+
Everything you need out-of-the-box.
|
|
82
|
+
</p>
|
|
83
|
+
</a>
|
|
84
|
+
</NavigationMenuLink>
|
|
85
|
+
</li>
|
|
86
|
+
<ListItem href="#" title="Extensible Plugins">
|
|
87
|
+
Extend at any level.
|
|
88
|
+
</ListItem>
|
|
89
|
+
<ListItem href="#" title="Type-Safe SQL Queries">
|
|
90
|
+
Full parameter type safety across your entire stack.
|
|
91
|
+
</ListItem>
|
|
92
|
+
<ListItem href="#" title="Built for Humans & AI">
|
|
93
|
+
Designed for both developers and AI agents.
|
|
94
|
+
</ListItem>
|
|
95
|
+
</ul>
|
|
96
|
+
</NavigationMenuContent>
|
|
97
|
+
</NavigationMenuItem>
|
|
98
|
+
<NavigationMenuItem>
|
|
99
|
+
<NavigationMenuTrigger>Components</NavigationMenuTrigger>
|
|
100
|
+
<NavigationMenuContent>
|
|
101
|
+
<ul className="grid w-[400px] gap-3 p-4 md:w-[500px] md:grid-cols-2 lg:w-[600px] ">
|
|
102
|
+
{components.map((component) => (
|
|
103
|
+
<ListItem
|
|
104
|
+
key={component.title}
|
|
105
|
+
title={component.title}
|
|
106
|
+
href={component.href}
|
|
107
|
+
>
|
|
108
|
+
{component.description}
|
|
109
|
+
</ListItem>
|
|
110
|
+
))}
|
|
111
|
+
</ul>
|
|
112
|
+
</NavigationMenuContent>
|
|
113
|
+
</NavigationMenuItem>
|
|
114
|
+
<NavigationMenuItem>
|
|
115
|
+
<NavigationMenuLink asChild>
|
|
116
|
+
<a href="#" className={navigationMenuTriggerStyle()}>
|
|
117
|
+
Documentation
|
|
118
|
+
</a>
|
|
119
|
+
</NavigationMenuLink>
|
|
120
|
+
</NavigationMenuItem>
|
|
121
|
+
</NavigationMenuList>
|
|
122
|
+
</NavigationMenu>
|
|
123
|
+
)
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
const ListItem = React.forwardRef<
|
|
127
|
+
React.ElementRef<"a">,
|
|
128
|
+
React.ComponentPropsWithoutRef<"a">
|
|
129
|
+
>(({ className, title, children, ...props }, ref) => {
|
|
130
|
+
return (
|
|
131
|
+
<li>
|
|
132
|
+
<NavigationMenuLink asChild>
|
|
133
|
+
<a
|
|
134
|
+
ref={ref}
|
|
135
|
+
className={cn(
|
|
136
|
+
"block select-none space-y-1 rounded-md p-3 leading-none no-underline outline-none transition-colors hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground",
|
|
137
|
+
className
|
|
138
|
+
)}
|
|
139
|
+
{...props}
|
|
140
|
+
>
|
|
141
|
+
<div className="text-sm font-medium leading-none">{title}</div>
|
|
142
|
+
<p className="line-clamp-2 text-sm leading-snug text-muted-foreground">
|
|
143
|
+
{children}
|
|
144
|
+
</p>
|
|
145
|
+
</a>
|
|
146
|
+
</NavigationMenuLink>
|
|
147
|
+
</li>
|
|
148
|
+
)
|
|
149
|
+
})
|
|
150
|
+
ListItem.displayName = "ListItem"
|
|
151
|
+
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
## NavigationMenu[](#navigationmenu-1 "Direct link to NavigationMenu")
|
|
155
|
+
|
|
156
|
+
Horizontal navigation menu with dropdown submenus
|
|
157
|
+
|
|
158
|
+
**Source:** [`packages/appkit-ui/src/react/ui/navigation-menu.tsx`](https://github.com/databricks/appkit/blob/main/packages/appkit-ui/src/react/ui/navigation-menu.tsx)
|
|
159
|
+
|
|
160
|
+
### Props[](#props "Direct link to Props")
|
|
161
|
+
|
|
162
|
+
| Prop | Type | Required | Default | Description |
|
|
163
|
+
| ------------------- | --------------------------- | -------- | ------- | ------------------------------------------------------------------------------------------------------ |
|
|
164
|
+
| `value` | `string` | | - | - |
|
|
165
|
+
| `defaultValue` | `string` | | - | - |
|
|
166
|
+
| `onValueChange` | `((value: string) => void)` | | - | - |
|
|
167
|
+
| `dir` | `enum` | | - | - |
|
|
168
|
+
| `orientation` | `enum` | | - | - |
|
|
169
|
+
| `delayDuration` | `number` | | - | The duration from when the pointer enters the trigger until the tooltip gets opened. @defaultValue 200 |
|
|
170
|
+
| `skipDelayDuration` | `number` | | - | How much time a user has to enter another trigger without incurring a delay again. @defaultValue 300 |
|
|
171
|
+
| `asChild` | `boolean` | | - | - |
|
|
172
|
+
| `viewport` | `boolean` | | `true` | - |
|
|
173
|
+
|
|
174
|
+
### Usage[](#usage "Direct link to Usage")
|
|
175
|
+
|
|
176
|
+
```tsx
|
|
177
|
+
import { NavigationMenu } from '@databricks/appkit-ui';
|
|
178
|
+
|
|
179
|
+
<NavigationMenu /* props */ />
|
|
180
|
+
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
## NavigationMenuContent[](#navigationmenucontent "Direct link to NavigationMenuContent")
|
|
184
|
+
|
|
185
|
+
Dropdown content area for navigation submenu
|
|
186
|
+
|
|
187
|
+
**Source:** [`packages/appkit-ui/src/react/ui/navigation-menu.tsx`](https://github.com/databricks/appkit/blob/main/packages/appkit-ui/src/react/ui/navigation-menu.tsx)
|
|
188
|
+
|
|
189
|
+
### Props[](#props-1 "Direct link to Props")
|
|
190
|
+
|
|
191
|
+
| Prop | Type | Required | Default | Description |
|
|
192
|
+
| ---------------------- | ----------------------------------------------------------------- | -------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
193
|
+
| `forceMount` | `true` | | - | Used to force mounting when more control is needed. Useful when controlling animation with React animation libraries. |
|
|
194
|
+
| `asChild` | `boolean` | | - | - |
|
|
195
|
+
| `onEscapeKeyDown` | `((event: KeyboardEvent) => void)` | | - | Event handler called when the escape key is down. Can be prevented. |
|
|
196
|
+
| `onPointerDownOutside` | `((event: PointerDownOutsideEvent) => void)` | | - | Event handler called when the a `pointerdown` event happens outside of the `DismissableLayer`. Can be prevented. |
|
|
197
|
+
| `onFocusOutside` | `((event: FocusOutsideEvent) => void)` | | - | Event handler called when the focus moves outside of the `DismissableLayer`. Can be prevented. |
|
|
198
|
+
| `onInteractOutside` | `((event: FocusOutsideEvent \| PointerDownOutsideEvent) => void)` | | - | Event handler called when an interaction happens outside the `DismissableLayer`. Specifically, when a `pointerdown` event happens outside or focus moves outside of it. Can be prevented. |
|
|
199
|
+
|
|
200
|
+
### Usage[](#usage-1 "Direct link to Usage")
|
|
201
|
+
|
|
202
|
+
```tsx
|
|
203
|
+
import { NavigationMenuContent } from '@databricks/appkit-ui';
|
|
204
|
+
|
|
205
|
+
<NavigationMenuContent /* props */ />
|
|
206
|
+
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
## NavigationMenuIndicator[](#navigationmenuindicator "Direct link to NavigationMenuIndicator")
|
|
210
|
+
|
|
211
|
+
Visual indicator for active navigation menu item
|
|
212
|
+
|
|
213
|
+
**Source:** [`packages/appkit-ui/src/react/ui/navigation-menu.tsx`](https://github.com/databricks/appkit/blob/main/packages/appkit-ui/src/react/ui/navigation-menu.tsx)
|
|
214
|
+
|
|
215
|
+
### Props[](#props-2 "Direct link to Props")
|
|
216
|
+
|
|
217
|
+
| Prop | Type | Required | Default | Description |
|
|
218
|
+
| ------------ | --------- | -------- | ------- | --------------------------------------------------------------------------------------------------------------------- |
|
|
219
|
+
| `forceMount` | `true` | | - | Used to force mounting when more control is needed. Useful when controlling animation with React animation libraries. |
|
|
220
|
+
| `asChild` | `boolean` | | - | - |
|
|
221
|
+
|
|
222
|
+
### Usage[](#usage-2 "Direct link to Usage")
|
|
223
|
+
|
|
224
|
+
```tsx
|
|
225
|
+
import { NavigationMenuIndicator } from '@databricks/appkit-ui';
|
|
226
|
+
|
|
227
|
+
<NavigationMenuIndicator /* props */ />
|
|
228
|
+
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
## NavigationMenuItem[](#navigationmenuitem "Direct link to NavigationMenuItem")
|
|
232
|
+
|
|
233
|
+
Individual navigation menu item
|
|
234
|
+
|
|
235
|
+
**Source:** [`packages/appkit-ui/src/react/ui/navigation-menu.tsx`](https://github.com/databricks/appkit/blob/main/packages/appkit-ui/src/react/ui/navigation-menu.tsx)
|
|
236
|
+
|
|
237
|
+
### Props[](#props-3 "Direct link to Props")
|
|
238
|
+
|
|
239
|
+
| Prop | Type | Required | Default | Description |
|
|
240
|
+
| --------- | --------- | -------- | ------- | ----------- |
|
|
241
|
+
| `value` | `string` | | - | - |
|
|
242
|
+
| `asChild` | `boolean` | | - | - |
|
|
243
|
+
|
|
244
|
+
### Usage[](#usage-3 "Direct link to Usage")
|
|
245
|
+
|
|
246
|
+
```tsx
|
|
247
|
+
import { NavigationMenuItem } from '@databricks/appkit-ui';
|
|
248
|
+
|
|
249
|
+
<NavigationMenuItem /* props */ />
|
|
250
|
+
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
## NavigationMenuLink[](#navigationmenulink "Direct link to NavigationMenuLink")
|
|
254
|
+
|
|
255
|
+
Clickable link within navigation menu
|
|
256
|
+
|
|
257
|
+
**Source:** [`packages/appkit-ui/src/react/ui/navigation-menu.tsx`](https://github.com/databricks/appkit/blob/main/packages/appkit-ui/src/react/ui/navigation-menu.tsx)
|
|
258
|
+
|
|
259
|
+
### Props[](#props-4 "Direct link to Props")
|
|
260
|
+
|
|
261
|
+
| Prop | Type | Required | Default | Description |
|
|
262
|
+
| ---------- | -------------------------- | -------- | ------- | ----------- |
|
|
263
|
+
| `active` | `boolean` | | - | - |
|
|
264
|
+
| `onSelect` | `((event: Event) => void)` | | - | - |
|
|
265
|
+
| `asChild` | `boolean` | | - | - |
|
|
266
|
+
|
|
267
|
+
### Usage[](#usage-4 "Direct link to Usage")
|
|
268
|
+
|
|
269
|
+
```tsx
|
|
270
|
+
import { NavigationMenuLink } from '@databricks/appkit-ui';
|
|
271
|
+
|
|
272
|
+
<NavigationMenuLink /* props */ />
|
|
273
|
+
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
## NavigationMenuList[](#navigationmenulist "Direct link to NavigationMenuList")
|
|
277
|
+
|
|
278
|
+
Container list for navigation menu items
|
|
279
|
+
|
|
280
|
+
**Source:** [`packages/appkit-ui/src/react/ui/navigation-menu.tsx`](https://github.com/databricks/appkit/blob/main/packages/appkit-ui/src/react/ui/navigation-menu.tsx)
|
|
281
|
+
|
|
282
|
+
### Props[](#props-5 "Direct link to Props")
|
|
283
|
+
|
|
284
|
+
| Prop | Type | Required | Default | Description |
|
|
285
|
+
| --------- | --------- | -------- | ------- | ----------- |
|
|
286
|
+
| `asChild` | `boolean` | | - | - |
|
|
287
|
+
|
|
288
|
+
### Usage[](#usage-5 "Direct link to Usage")
|
|
289
|
+
|
|
290
|
+
```tsx
|
|
291
|
+
import { NavigationMenuList } from '@databricks/appkit-ui';
|
|
292
|
+
|
|
293
|
+
<NavigationMenuList /* props */ />
|
|
294
|
+
|
|
295
|
+
```
|
|
296
|
+
|
|
297
|
+
## NavigationMenuTrigger[](#navigationmenutrigger "Direct link to NavigationMenuTrigger")
|
|
298
|
+
|
|
299
|
+
Button that opens a navigation submenu
|
|
300
|
+
|
|
301
|
+
**Source:** [`packages/appkit-ui/src/react/ui/navigation-menu.tsx`](https://github.com/databricks/appkit/blob/main/packages/appkit-ui/src/react/ui/navigation-menu.tsx)
|
|
302
|
+
|
|
303
|
+
### Props[](#props-6 "Direct link to Props")
|
|
304
|
+
|
|
305
|
+
| Prop | Type | Required | Default | Description |
|
|
306
|
+
| --------- | --------- | -------- | ------- | ----------- |
|
|
307
|
+
| `asChild` | `boolean` | | - | - |
|
|
308
|
+
|
|
309
|
+
### Usage[](#usage-6 "Direct link to Usage")
|
|
310
|
+
|
|
311
|
+
```tsx
|
|
312
|
+
import { NavigationMenuTrigger } from '@databricks/appkit-ui';
|
|
313
|
+
|
|
314
|
+
<NavigationMenuTrigger /* props */ />
|
|
315
|
+
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
## NavigationMenuViewport[](#navigationmenuviewport "Direct link to NavigationMenuViewport")
|
|
319
|
+
|
|
320
|
+
Viewport container for navigation menu content
|
|
321
|
+
|
|
322
|
+
**Source:** [`packages/appkit-ui/src/react/ui/navigation-menu.tsx`](https://github.com/databricks/appkit/blob/main/packages/appkit-ui/src/react/ui/navigation-menu.tsx)
|
|
323
|
+
|
|
324
|
+
### Props[](#props-7 "Direct link to Props")
|
|
325
|
+
|
|
326
|
+
| Prop | Type | Required | Default | Description |
|
|
327
|
+
| ------------ | --------- | -------- | ------- | --------------------------------------------------------------------------------------------------------------------- |
|
|
328
|
+
| `forceMount` | `true` | | - | Used to force mounting when more control is needed. Useful when controlling animation with React animation libraries. |
|
|
329
|
+
| `asChild` | `boolean` | | - | - |
|
|
330
|
+
|
|
331
|
+
### Usage[](#usage-7 "Direct link to Usage")
|
|
332
|
+
|
|
333
|
+
```tsx
|
|
334
|
+
import { NavigationMenuViewport } from '@databricks/appkit-ui';
|
|
335
|
+
|
|
336
|
+
<NavigationMenuViewport /* props */ />
|
|
337
|
+
|
|
338
|
+
```
|