@labpane/ui 0.0.0-stage → 1.2.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/README.md +130 -2
- package/dist/LICENSE +21 -0
- package/dist/chunk-NR3PLNO7.js +100 -0
- package/dist/chunk-NR3PLNO7.js.map +7 -0
- package/dist/index.js +7137 -0
- package/dist/index.js.map +7 -0
- package/dist/styles.css +2 -0
- package/dist/styles.d.ts +1 -0
- package/dist/terminal.js +369 -0
- package/dist/terminal.js.map +7 -0
- package/dist/ui/alert.d.ts +13 -0
- package/dist/ui/app-menu.d.ts +19 -0
- package/dist/ui/avatar.d.ts +11 -0
- package/dist/ui/badge.d.ts +17 -0
- package/dist/ui/breadcrumb.d.ts +11 -0
- package/dist/ui/browser-layout.d.ts +20 -0
- package/dist/ui/button.d.ts +27 -0
- package/dist/ui/card.d.ts +15 -0
- package/dist/ui/chart-frame.d.ts +4 -0
- package/dist/ui/checkbox.d.ts +4 -0
- package/dist/ui/classes.d.ts +7 -0
- package/dist/ui/command.d.ts +82 -0
- package/dist/ui/confirm-dialog.d.ts +28 -0
- package/dist/ui/copy-button.d.ts +7 -0
- package/dist/ui/dialog.d.ts +18 -0
- package/dist/ui/discard-dialog.d.ts +6 -0
- package/dist/ui/email-thread.d.ts +35 -0
- package/dist/ui/empty.d.ts +14 -0
- package/dist/ui/field.d.ts +26 -0
- package/dist/ui/file-input.d.ts +6 -0
- package/dist/ui/flame-graph-model.d.ts +23 -0
- package/dist/ui/flame-graph.d.ts +15 -0
- package/dist/ui/form-fields.d.ts +21 -0
- package/dist/ui/histogram.d.ts +23 -0
- package/dist/ui/index.d.ts +57 -0
- package/dist/ui/input-group.d.ts +28 -0
- package/dist/ui/input.d.ts +3 -0
- package/dist/ui/kbd.d.ts +4 -0
- package/dist/ui/label.d.ts +3 -0
- package/dist/ui/menu.d.ts +60 -0
- package/dist/ui/native-select.d.ts +7 -0
- package/dist/ui/nav-tabs.d.ts +7 -0
- package/dist/ui/overlay.d.ts +1 -0
- package/dist/ui/page.d.ts +22 -0
- package/dist/ui/rail.d.ts +16 -0
- package/dist/ui/search-input.d.ts +6 -0
- package/dist/ui/select.d.ts +13 -0
- package/dist/ui/separator.d.ts +6 -0
- package/dist/ui/settings.d.ts +14 -0
- package/dist/ui/sheet.d.ts +20 -0
- package/dist/ui/side-panel.d.ts +23 -0
- package/dist/ui/sidebar.d.ts +81 -0
- package/dist/ui/skeleton.d.ts +3 -0
- package/dist/ui/spinner.d.ts +3 -0
- package/dist/ui/stat.d.ts +7 -0
- package/dist/ui/steps.d.ts +7 -0
- package/dist/ui/switch.d.ts +6 -0
- package/dist/ui/tab-state.d.ts +8 -0
- package/dist/ui/table-layout.d.ts +19 -0
- package/dist/ui/table-model.d.ts +42 -0
- package/dist/ui/table-screen.d.ts +9 -0
- package/dist/ui/table.d.ts +41 -0
- package/dist/ui/tabs.d.ts +13 -0
- package/dist/ui/terminal.d.ts +57 -0
- package/dist/ui/textarea.d.ts +3 -0
- package/dist/ui/theme.d.ts +22 -0
- package/dist/ui/time-series-chart.d.ts +19 -0
- package/dist/ui/time-series-model.d.ts +90 -0
- package/dist/ui/timing-tracks.d.ts +27 -0
- package/dist/ui/toggle.d.ts +22 -0
- package/dist/ui/tooltip.d.ts +7 -0
- package/dist/ui/topbar.d.ts +4 -0
- package/dist/ui/use-chart-width.d.ts +5 -0
- package/dist/ui/use-mobile.d.ts +1 -0
- package/package.json +116 -4
- package/styles.css +358 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../terminal.tsx"],
|
|
4
|
+
"sourcesContent": ["import {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useLayoutEffect,\n useRef,\n useState,\n} from \"react\";\nimport { WTerm, type TerminalCore } from \"@wterm/dom\";\nimport { cn } from \"./classes.js\";\nimport {\n Maximize2Icon,\n Minimize2Icon,\n RotateCwIcon,\n XIcon,\n} from \"lucide-react\";\nimport { Button } from \"./button.js\";\n\nexport type TerminalTheme = {\n foreground: number;\n background: number;\n cursor: number;\n palette: number[];\n};\nexport type TerminalShell = {\n attach: (write: (data: string) => void) => unknown;\n handleInput: (data: string) => unknown;\n};\nexport type TerminalHandle = { reconnect: () => void; focus: () => void };\n\nexport const terminalThemes = {\n dark: {\n foreground: 0xe5e5e5,\n background: 0x262626,\n cursor: 0xe5e5e5,\n palette: [\n 0x1e1e1e, 0xf44747, 0x6a9955, 0xd7ba7d, 0x569cd6, 0xc586c0, 0x4ec9b0,\n 0xd4d4d4, 0x808080, 0xff6b6b, 0x8ec07c, 0xffd866, 0x82aaff, 0xd7a1d7,\n 0x7fdbca, 0xffffff,\n ],\n },\n light: {\n foreground: 0x262626,\n background: 0xffffff,\n cursor: 0x262626,\n palette: [\n 0x262626, 0xb42318, 0x237a36, 0x876000, 0x245ac0, 0x8b3fa0, 0x006e7a,\n 0xd4d4d4, 0x616161, 0xc43326, 0x287d3c, 0x8a6500, 0x2563c7, 0x9542aa,\n 0x007c8a, 0xffffff,\n ],\n },\n solarized: {\n foreground: 0x839496,\n background: 0x002b36,\n cursor: 0x93a1a1,\n palette: [\n 0x073642, 0xdc322f, 0x859900, 0xb58900, 0x268bd2, 0xd33682, 0x2aa198,\n 0xeee8d5, 0x586e75, 0xcb4b16, 0x586e75, 0x657b83, 0x839496, 0x6c71c4,\n 0x93a1a1, 0xfdf6e3,\n ],\n },\n monokai: {\n foreground: 0xf8f8f2,\n background: 0x272822,\n cursor: 0xf8f8f0,\n palette: [\n 0x272822, 0xf92672, 0xa6e22e, 0xf4bf75, 0x66d9ef, 0xae81ff, 0xa1efe4,\n 0xf8f8f2, 0x75715e, 0xf92672, 0xa6e22e, 0xf4bf75, 0x66d9ef, 0xae81ff,\n 0xa1efe4, 0xf9f8f5,\n ],\n },\n} satisfies Record<string, TerminalTheme>;\nexport type TerminalThemeName = \"auto\" | keyof typeof terminalThemes;\n\nexport type TerminalProps = (\n | {\n connect: () => string | URL | Promise<string | URL>;\n shell?: undefined;\n }\n | {\n shell: () => TerminalShell | Promise<TerminalShell>;\n connect?: undefined;\n }\n) & {\n core?: () => Promise<TerminalCore & { dispose?: () => void }>;\n theme?: TerminalThemeName | TerminalTheme;\n // expandable adds a button that fills the screen with the terminal\n expandable?: boolean;\n className?: string;\n};\n\nexport const Terminal = forwardRef<TerminalHandle, TerminalProps>(\n function Terminal(\n { connect, shell, core, theme = \"auto\", expandable, className },\n ref,\n ) {\n const reconnect = useRef(() => {});\n const terminal = useRef<WTerm | undefined>(undefined);\n const [status, setStatus] = useState(\"Connecting\u2026\");\n const [error, setError] = useState(\"\");\n const [full, setFull] = useState(false);\n const frame = useRef<HTMLDivElement>(null);\n const host = useRef<HTMLDivElement>(null);\n const chosen = useRef(theme);\n chosen.current = theme;\n const applyTheme = useRef(() => {});\n useImperativeHandle(ref, () => ({\n reconnect: () => reconnect.current(),\n focus: () => terminal.current?.focus(),\n }));\n\n useEffect(() => applyTheme.current(), [theme]);\n\n useLayoutEffect(() => {\n const element = frame.current;\n if (!full || !element || !(\"showPopover\" in element)) return;\n element.setAttribute(\"popover\", \"manual\");\n element.showPopover();\n return () => {\n if (element.matches(\":popover-open\")) element.hidePopover();\n element.removeAttribute(\"popover\");\n };\n }, [full]);\n\n useEffect(() => {\n let disposed = false,\n term: WTerm | undefined,\n loaded: (TerminalCore & { dispose?: () => void }) | undefined,\n ws: WebSocket | undefined,\n input: (text: string) => void = () => {},\n initialized: Promise<WTerm> | undefined,\n retryTimer: ReturnType<typeof setTimeout> | undefined,\n generation = 0,\n sessions = 0;\n const observers: { disconnect: () => void }[] = [];\n const disconnect = () => {\n clearTimeout(retryTimer);\n input = () => {};\n if (ws) {\n ws.onopen = ws.onmessage = ws.onclose = ws.onerror = null;\n ws.close();\n ws = undefined;\n }\n };\n const send = (bytes: Uint8Array) => {\n if (ws?.readyState !== WebSocket.OPEN) return;\n if (ws.bufferedAmount + bytes.length > 1024 * 1024) {\n setError(\"Terminal input buffer is full; input was not sent\");\n return;\n }\n for (let i = 0; i < bytes.length; i += 16384)\n ws.send(bytes.slice(i, i + 16384));\n };\n const resize = (cols: number, rows: number) => {\n if (ws?.readyState === WebSocket.OPEN)\n ws.send(JSON.stringify({ cols, rows }));\n };\n const updateTheme = () => {\n if (!host.current || !term) return;\n const name = chosen.current;\n term.setThemeColors(\n typeof name === \"object\"\n ? name\n : name !== \"auto\"\n ? terminalThemes[name]\n : getComputedStyle(host.current).colorScheme === \"dark\"\n ? terminalThemes.dark\n : terminalThemes.light,\n );\n };\n const open = async (canRetry = true) => {\n const attempt = ++generation;\n const stale = () => disposed || attempt !== generation;\n disconnect();\n setError(\"\");\n setStatus(canRetry ? \"Connecting\u2026\" : \"Reconnecting\u2026\");\n const failed = (message: string) => {\n if (stale()) return;\n if (canRetry) {\n setStatus(\"Reconnecting\u2026\");\n retryTimer = setTimeout(() => void open(false), 1000);\n } else {\n setStatus(\"Disconnected\");\n setError(message);\n }\n };\n try {\n if (shell) {\n const session = await shell();\n if (stale()) return;\n await (initialized ??= term!.init());\n if (stale()) return;\n if (sessions++) term!.write(\"\\x1bc\");\n input = (text) => void session.handleInput(text);\n await session.attach((data) => {\n if (!stale()) term!.write(data);\n });\n if (!stale()) setStatus(\"Connected\");\n return;\n }\n const target = await connect!();\n if (stale()) return;\n await (initialized ??= term!.init());\n if (stale()) return;\n const address = new URL(target, document.baseURI);\n address.protocol = address.protocol.replace(/^http/, \"ws\");\n ws = new WebSocket(address);\n ws.binaryType = \"arraybuffer\";\n input = (text) => send(new TextEncoder().encode(text));\n let connectionError = \"\";\n ws.onopen = () => {\n setStatus(\"Connected\");\n resize(term!.cols, term!.rows);\n };\n ws.onmessage = (event) => {\n if (typeof event.data === \"string\") connectionError = event.data;\n else {\n canRetry = true;\n term!.write(new Uint8Array(event.data));\n }\n };\n ws.onerror = () => {\n connectionError = \"Could not connect to the terminal\";\n };\n ws.onclose = (event) => {\n if (event.code === 1000 && !connectionError)\n setStatus(\"Disconnected\");\n else failed(connectionError || event.reason || \"Connection lost\");\n };\n } catch (err) {\n failed(err instanceof Error ? err.message : String(err));\n }\n };\n void (async () => {\n try {\n loaded = await core?.();\n } catch (err) {\n console.warn(\"Using the built-in terminal core:\", err);\n }\n if (disposed) return loaded?.dispose?.();\n term = new WTerm(host.current!, {\n core: loaded,\n onData: (text) => input(text),\n onBinary: send,\n onResize: resize,\n announceOutput: true,\n });\n terminal.current = term;\n const themeObserver = new MutationObserver(updateTheme);\n for (\n let parent = host.current!.parentElement;\n parent;\n parent = parent.parentElement\n )\n themeObserver.observe(parent, {\n attributes: true,\n attributeFilter: [\"class\", \"style\"],\n });\n const preferred = matchMedia(\"(prefers-color-scheme: dark)\");\n preferred.addEventListener(\"change\", updateTheme);\n const visible = new ResizeObserver(() =>\n term!.setRenderingPaused(!host.current?.clientHeight),\n );\n visible.observe(host.current!);\n observers.push(themeObserver, visible, {\n disconnect: () =>\n preferred.removeEventListener(\"change\", updateTheme),\n });\n applyTheme.current = updateTheme;\n updateTheme();\n reconnect.current = () => {\n void open();\n term!.focus();\n };\n void open();\n })();\n return () => {\n disposed = true;\n reconnect.current = applyTheme.current = () => {};\n terminal.current = undefined;\n disconnect();\n for (const observer of observers) observer.disconnect();\n term?.destroy();\n loaded?.dispose?.();\n };\n }, [connect, shell, core]);\n\n return (\n <div\n ref={frame}\n data-slot=\"terminal\"\n className={cn(\n \"labui:flex labui:h-full labui:min-h-0 labui:flex-col\",\n full &&\n \"labui:fixed labui:inset-0 labui:z-50 labui:m-0 labui:size-full labui:max-h-none labui:max-w-none labui:border-0 labui:bg-background labui:p-0 labui:text-foreground\",\n className,\n )}\n >\n <span role=\"status\" className=\"labui:sr-only\">\n {status}\n </span>\n {(status === \"Disconnected\" || error) && (\n <div\n key=\"banner\"\n role=\"alert\"\n className=\"labui:flex labui:shrink-0 labui:items-center labui:gap-2 labui:border-b labui:bg-muted labui:px-3 labui:py-1 labui:text-xs\"\n >\n <span className=\"labui:min-w-0 labui:flex-1\">\n {error || \"Terminal disconnected\"}\n </span>\n <Button\n variant=\"ghost\"\n size=\"icon-xs\"\n aria-label={\n status === \"Connected\"\n ? \"Dismiss terminal message\"\n : \"Reconnect terminal\"\n }\n title={status === \"Connected\" ? \"Dismiss\" : \"Reconnect terminal\"}\n onClick={() =>\n status === \"Connected\" ? setError(\"\") : reconnect.current()\n }\n >\n {status === \"Connected\" ? (\n <XIcon aria-hidden=\"true\" />\n ) : (\n <RotateCwIcon aria-hidden=\"true\" />\n )}\n </Button>\n </div>\n )}\n <div\n key=\"terminal\"\n className=\"labui:group labui:relative labui:min-h-0 labui:flex-1\"\n >\n <div\n ref={host}\n aria-label=\"Terminal input\"\n className=\"labui:h-full\"\n style={{ borderRadius: 0, boxShadow: \"none\" }}\n />\n {expandable && (\n <Button\n variant=\"secondary\"\n size=\"icon-xs\"\n aria-label=\"Full screen\"\n aria-pressed={full}\n title={full ? \"Exit full screen\" : \"Full screen\"}\n className=\"labui:absolute labui:top-2 labui:right-2 labui:opacity-0 labui:transition-opacity labui:group-hover:opacity-100 labui:focus-visible:opacity-100\"\n onClick={() => {\n setFull(!full);\n requestAnimationFrame(() => terminal.current?.focus());\n }}\n >\n {full ? (\n <Minimize2Icon aria-hidden=\"true\" />\n ) : (\n <Maximize2Icon aria-hidden=\"true\" />\n )}\n </Button>\n )}\n </div>\n </div>\n );\n },\n);\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["Terminal"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
declare const alertVariants: {
|
|
3
|
+
default: string;
|
|
4
|
+
destructive: string;
|
|
5
|
+
warning: string;
|
|
6
|
+
success: string;
|
|
7
|
+
};
|
|
8
|
+
declare const Alert: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
9
|
+
variant?: keyof typeof alertVariants | null;
|
|
10
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
11
|
+
declare const AlertTitle: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
12
|
+
declare const AlertDescription: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
13
|
+
export { Alert, AlertTitle, AlertDescription };
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { type ReactNode } from "react";
|
|
2
|
+
export declare function AppMenu({ name, logo, version, dark, onThemeChange, size, align, onSizeChange, onSizeReset, fullscreen, onFullscreenChange, children, }: {
|
|
3
|
+
name: string;
|
|
4
|
+
logo: ReactNode;
|
|
5
|
+
version?: ReactNode;
|
|
6
|
+
dark?: boolean;
|
|
7
|
+
onThemeChange?: (dark: boolean) => void;
|
|
8
|
+
size?: number;
|
|
9
|
+
onSizeChange?: (size: number) => void;
|
|
10
|
+
onSizeReset?: () => void;
|
|
11
|
+
fullscreen?: boolean;
|
|
12
|
+
onFullscreenChange?: (fullscreen: boolean) => void;
|
|
13
|
+
align?: "start" | "end";
|
|
14
|
+
children?: ReactNode;
|
|
15
|
+
}): import("react").JSX.Element;
|
|
16
|
+
export declare function AppMenuSection({ title, children, }: {
|
|
17
|
+
title?: string;
|
|
18
|
+
children: ReactNode;
|
|
19
|
+
}): import("react").JSX.Element;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import * as AvatarPrimitive from "@radix-ui/react-avatar";
|
|
3
|
+
declare const Avatar: React.ForwardRefExoticComponent<Omit<AvatarPrimitive.AvatarProps & React.RefAttributes<HTMLSpanElement>, "ref"> & {
|
|
4
|
+
size?: "default" | "sm" | "lg";
|
|
5
|
+
} & React.RefAttributes<HTMLSpanElement>>;
|
|
6
|
+
declare const AvatarImage: React.ForwardRefExoticComponent<Omit<AvatarPrimitive.AvatarImageProps & React.RefAttributes<HTMLImageElement>, "ref"> & React.RefAttributes<HTMLImageElement>>;
|
|
7
|
+
declare const AvatarFallback: React.ForwardRefExoticComponent<Omit<AvatarPrimitive.AvatarFallbackProps & React.RefAttributes<HTMLSpanElement>, "ref"> & React.RefAttributes<HTMLSpanElement>>;
|
|
8
|
+
declare const AvatarBadge: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & React.RefAttributes<HTMLSpanElement>>;
|
|
9
|
+
declare const AvatarGroup: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
10
|
+
declare const AvatarGroupCount: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
11
|
+
export { Avatar, AvatarImage, AvatarFallback, AvatarBadge, AvatarGroup, AvatarGroupCount, };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
declare const badgeVariants: {
|
|
3
|
+
default: string;
|
|
4
|
+
secondary: string;
|
|
5
|
+
destructive: string;
|
|
6
|
+
success: string;
|
|
7
|
+
warning: string;
|
|
8
|
+
info: string;
|
|
9
|
+
outline: string;
|
|
10
|
+
ghost: string;
|
|
11
|
+
link: string;
|
|
12
|
+
};
|
|
13
|
+
declare const Badge: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & {
|
|
14
|
+
variant?: keyof typeof badgeVariants | null;
|
|
15
|
+
asChild?: boolean;
|
|
16
|
+
} & React.RefAttributes<HTMLSpanElement>>;
|
|
17
|
+
export { Badge };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
declare const Breadcrumb: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>, HTMLElement>, "ref"> & React.RefAttributes<HTMLElement>>;
|
|
3
|
+
declare const BreadcrumbList: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.OlHTMLAttributes<HTMLOListElement>, HTMLOListElement>, "ref"> & React.RefAttributes<HTMLOListElement>>;
|
|
4
|
+
declare const BreadcrumbItem: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, "ref"> & React.RefAttributes<HTMLLIElement>>;
|
|
5
|
+
declare const BreadcrumbLink: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, "ref"> & {
|
|
6
|
+
asChild?: boolean;
|
|
7
|
+
} & React.RefAttributes<HTMLAnchorElement>>;
|
|
8
|
+
declare const BreadcrumbPage: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & React.RefAttributes<HTMLSpanElement>>;
|
|
9
|
+
declare const BreadcrumbSeparator: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, "ref"> & React.RefAttributes<HTMLLIElement>>;
|
|
10
|
+
declare const BreadcrumbEllipsis: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & React.RefAttributes<HTMLSpanElement>>;
|
|
11
|
+
export { Breadcrumb, BreadcrumbList, BreadcrumbItem, BreadcrumbLink, BreadcrumbPage, BreadcrumbSeparator, BreadcrumbEllipsis, };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
type BrowserLayoutState = {
|
|
3
|
+
navOpen: boolean;
|
|
4
|
+
setNavOpen: (open: boolean) => void;
|
|
5
|
+
};
|
|
6
|
+
export declare function useBrowserLayout(): BrowserLayoutState;
|
|
7
|
+
declare const BrowserLayout: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
8
|
+
view: "nav" | "detail";
|
|
9
|
+
navOpen?: boolean;
|
|
10
|
+
defaultNavOpen?: boolean;
|
|
11
|
+
onNavOpenChange?: (open: boolean) => void;
|
|
12
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
13
|
+
declare const BrowserLayoutNav: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>, HTMLElement>, "ref"> & React.RefAttributes<HTMLElement>>;
|
|
14
|
+
declare const BrowserLayoutPane: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>, HTMLElement>, "ref"> & React.RefAttributes<HTMLElement>>;
|
|
15
|
+
declare const BrowserLayoutToggle: React.ForwardRefExoticComponent<Omit<Omit<React.DetailedHTMLProps<React.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
|
|
16
|
+
variant?: import("./button.js").ButtonVariant | null;
|
|
17
|
+
size?: import("./button.js").ButtonSize | null;
|
|
18
|
+
asChild?: boolean;
|
|
19
|
+
} & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
20
|
+
export { BrowserLayout, BrowserLayoutNav, BrowserLayoutPane, BrowserLayoutToggle, };
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
declare const buttonVariants: {
|
|
3
|
+
default: string;
|
|
4
|
+
destructive: string;
|
|
5
|
+
outline: string;
|
|
6
|
+
secondary: string;
|
|
7
|
+
ghost: string;
|
|
8
|
+
link: string;
|
|
9
|
+
};
|
|
10
|
+
declare const buttonSizes: {
|
|
11
|
+
default: string;
|
|
12
|
+
xs: string;
|
|
13
|
+
sm: string;
|
|
14
|
+
lg: string;
|
|
15
|
+
icon: string;
|
|
16
|
+
"icon-xs": string;
|
|
17
|
+
"icon-sm": string;
|
|
18
|
+
"icon-lg": string;
|
|
19
|
+
};
|
|
20
|
+
export type ButtonVariant = keyof typeof buttonVariants;
|
|
21
|
+
export type ButtonSize = keyof typeof buttonSizes;
|
|
22
|
+
declare const Button: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
|
|
23
|
+
variant?: ButtonVariant | null;
|
|
24
|
+
size?: ButtonSize | null;
|
|
25
|
+
asChild?: boolean;
|
|
26
|
+
} & React.RefAttributes<HTMLButtonElement>>;
|
|
27
|
+
export { Button };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
declare const Card: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
3
|
+
declare const CardHeader: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
4
|
+
bordered?: boolean;
|
|
5
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
6
|
+
declare const CardTitle: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>, "ref"> & {
|
|
7
|
+
as?: "h2" | "h3" | "h4" | "div";
|
|
8
|
+
} & React.RefAttributes<HTMLHeadingElement>>;
|
|
9
|
+
declare const CardDescription: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
10
|
+
declare const CardAction: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
11
|
+
declare const CardContent: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
12
|
+
declare const CardFooter: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
13
|
+
bordered?: boolean;
|
|
14
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
15
|
+
export { Card, CardHeader, CardFooter, CardTitle, CardAction, CardDescription, CardContent, };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
/** Shared surface for interactive charts. Data loading belongs to the caller. */
|
|
3
|
+
declare const ChartFrame: React.ForwardRefExoticComponent<Omit<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
4
|
+
export { ChartFrame };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import * as CheckboxPrimitive from "@radix-ui/react-checkbox";
|
|
3
|
+
declare const Checkbox: React.ForwardRefExoticComponent<Omit<CheckboxPrimitive.CheckboxProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
4
|
+
export { Checkbox };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type ClassValue } from "clsx";
|
|
2
|
+
export declare function cn(...inputs: ClassValue[]): string;
|
|
3
|
+
export declare const focusRing = "labui:focus-visible:border-ring labui:focus-visible:ring-[3px] labui:focus-visible:ring-ring/50";
|
|
4
|
+
export declare const invalidRing = "labui:aria-invalid:border-destructive labui:aria-invalid:ring-destructive/20 labui:dark:aria-invalid:ring-destructive/40";
|
|
5
|
+
export declare const overlay = "labui:fixed labui:inset-0 labui:z-50 labui:bg-overlay labui:data-[state=open]:animate-fade-in labui:data-[state=closed]:animate-fade-out";
|
|
6
|
+
export declare const closeButton: string;
|
|
7
|
+
export declare const inputSurface: string;
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { Dialog } from "./dialog.js";
|
|
3
|
+
declare const Command: React.ForwardRefExoticComponent<Omit<{
|
|
4
|
+
children?: React.ReactNode;
|
|
5
|
+
} & Pick<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof React.HTMLAttributes<HTMLDivElement>> & {
|
|
6
|
+
ref?: React.Ref<HTMLDivElement>;
|
|
7
|
+
} & {
|
|
8
|
+
asChild?: boolean;
|
|
9
|
+
}, "asChild" | "key" | keyof React.HTMLAttributes<HTMLDivElement>> & {
|
|
10
|
+
label?: string;
|
|
11
|
+
shouldFilter?: boolean;
|
|
12
|
+
filter?: (value: string, search: string, keywords?: string[]) => number;
|
|
13
|
+
defaultValue?: string;
|
|
14
|
+
value?: string;
|
|
15
|
+
onValueChange?: (value: string) => void;
|
|
16
|
+
loop?: boolean;
|
|
17
|
+
disablePointerSelection?: boolean;
|
|
18
|
+
vimBindings?: boolean;
|
|
19
|
+
} & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
20
|
+
declare function CommandDialog({ title, description, children, className, showCloseButton, ...props }: React.ComponentProps<typeof Dialog> & {
|
|
21
|
+
title?: string;
|
|
22
|
+
description?: string;
|
|
23
|
+
className?: string;
|
|
24
|
+
showCloseButton?: boolean;
|
|
25
|
+
}): React.JSX.Element;
|
|
26
|
+
declare const CommandInput: React.ForwardRefExoticComponent<Omit<Omit<Pick<Pick<React.DetailedHTMLProps<React.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "key" | keyof React.InputHTMLAttributes<HTMLInputElement>> & {
|
|
27
|
+
ref?: React.Ref<HTMLInputElement>;
|
|
28
|
+
} & {
|
|
29
|
+
asChild?: boolean;
|
|
30
|
+
}, "asChild" | "key" | keyof React.InputHTMLAttributes<HTMLInputElement>>, "onChange" | "type" | "value"> & {
|
|
31
|
+
value?: string;
|
|
32
|
+
onValueChange?: (search: string) => void;
|
|
33
|
+
} & React.RefAttributes<HTMLInputElement>, "ref"> & React.RefAttributes<HTMLInputElement>>;
|
|
34
|
+
declare const CommandList: React.ForwardRefExoticComponent<Omit<{
|
|
35
|
+
children?: React.ReactNode;
|
|
36
|
+
} & Pick<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof React.HTMLAttributes<HTMLDivElement>> & {
|
|
37
|
+
ref?: React.Ref<HTMLDivElement>;
|
|
38
|
+
} & {
|
|
39
|
+
asChild?: boolean;
|
|
40
|
+
}, "asChild" | "key" | keyof React.HTMLAttributes<HTMLDivElement>> & {
|
|
41
|
+
label?: string;
|
|
42
|
+
} & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
43
|
+
declare const CommandEmpty: React.ForwardRefExoticComponent<Omit<{
|
|
44
|
+
children?: React.ReactNode;
|
|
45
|
+
} & Pick<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof React.HTMLAttributes<HTMLDivElement>> & {
|
|
46
|
+
ref?: React.Ref<HTMLDivElement>;
|
|
47
|
+
} & {
|
|
48
|
+
asChild?: boolean;
|
|
49
|
+
}, "asChild" | "key" | keyof React.HTMLAttributes<HTMLDivElement>> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
50
|
+
declare const CommandGroup: React.ForwardRefExoticComponent<Omit<{
|
|
51
|
+
children?: React.ReactNode;
|
|
52
|
+
} & Omit<Pick<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof React.HTMLAttributes<HTMLDivElement>> & {
|
|
53
|
+
ref?: React.Ref<HTMLDivElement>;
|
|
54
|
+
} & {
|
|
55
|
+
asChild?: boolean;
|
|
56
|
+
}, "asChild" | "key" | keyof React.HTMLAttributes<HTMLDivElement>>, "heading" | "value"> & {
|
|
57
|
+
heading?: React.ReactNode;
|
|
58
|
+
value?: string;
|
|
59
|
+
forceMount?: boolean;
|
|
60
|
+
} & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
61
|
+
declare const CommandSeparator: React.ForwardRefExoticComponent<Omit<Pick<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof React.HTMLAttributes<HTMLDivElement>> & {
|
|
62
|
+
ref?: React.Ref<HTMLDivElement>;
|
|
63
|
+
} & {
|
|
64
|
+
asChild?: boolean;
|
|
65
|
+
}, "asChild" | "key" | keyof React.HTMLAttributes<HTMLDivElement>> & {
|
|
66
|
+
alwaysRender?: boolean;
|
|
67
|
+
} & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
68
|
+
declare const CommandItem: React.ForwardRefExoticComponent<Omit<{
|
|
69
|
+
children?: React.ReactNode;
|
|
70
|
+
} & Omit<Pick<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof React.HTMLAttributes<HTMLDivElement>> & {
|
|
71
|
+
ref?: React.Ref<HTMLDivElement>;
|
|
72
|
+
} & {
|
|
73
|
+
asChild?: boolean;
|
|
74
|
+
}, "asChild" | "key" | keyof React.HTMLAttributes<HTMLDivElement>>, "disabled" | "onSelect" | "value"> & {
|
|
75
|
+
disabled?: boolean;
|
|
76
|
+
onSelect?: (value: string) => void;
|
|
77
|
+
value?: string;
|
|
78
|
+
keywords?: string[];
|
|
79
|
+
forceMount?: boolean;
|
|
80
|
+
} & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
81
|
+
declare function CommandShortcut({ className, ...props }: React.ComponentProps<"span">): React.JSX.Element;
|
|
82
|
+
export { Command, CommandDialog, CommandInput, CommandList, CommandEmpty, CommandGroup, CommandItem, CommandShortcut, CommandSeparator, };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
export type Confirmation = {
|
|
3
|
+
value: string;
|
|
4
|
+
label: string;
|
|
5
|
+
placeholder?: string;
|
|
6
|
+
match?: "exact" | "loose";
|
|
7
|
+
};
|
|
8
|
+
export type ConfirmDialogProps = {
|
|
9
|
+
trigger?: React.ReactElement;
|
|
10
|
+
open?: boolean;
|
|
11
|
+
defaultOpen?: boolean;
|
|
12
|
+
onOpenChange?: (open: boolean) => void;
|
|
13
|
+
title: React.ReactNode;
|
|
14
|
+
name?: string;
|
|
15
|
+
description?: React.ReactNode;
|
|
16
|
+
confirmLabel: string;
|
|
17
|
+
cancelLabel?: string;
|
|
18
|
+
pendingLabel?: string;
|
|
19
|
+
tone?: "destructive" | "default";
|
|
20
|
+
warning?: React.ReactNode;
|
|
21
|
+
confirmation?: Confirmation;
|
|
22
|
+
typeToConfirm?: boolean;
|
|
23
|
+
disabled?: boolean;
|
|
24
|
+
onConfirm: () => void | Promise<void>;
|
|
25
|
+
errorMessage?: string;
|
|
26
|
+
};
|
|
27
|
+
export declare function matchesConfirmation(value: string, confirmation: Confirmation): boolean;
|
|
28
|
+
export declare function ConfirmDialog({ trigger, open, defaultOpen, onOpenChange, ...props }: ConfirmDialogProps): React.JSX.Element;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { Button } from "./button.js";
|
|
3
|
+
export declare function CopyButton({ value, label, className, variant, size, ...props }: Omit<React.ComponentPropsWithoutRef<typeof Button>, "onClick" | "value" | "size"> & {
|
|
4
|
+
value: string;
|
|
5
|
+
label?: string;
|
|
6
|
+
size?: "icon" | "icon-xs" | "icon-sm" | "icon-lg";
|
|
7
|
+
}): React.JSX.Element;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import * as DialogPrimitive from "@radix-ui/react-dialog";
|
|
3
|
+
declare function Dialog({ open, defaultOpen, onOpenChange, ...props }: React.ComponentProps<typeof DialogPrimitive.Root>): React.JSX.Element;
|
|
4
|
+
declare const DialogTrigger: React.ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & React.RefAttributes<HTMLButtonElement>>;
|
|
5
|
+
declare const DialogClose: React.ForwardRefExoticComponent<DialogPrimitive.DialogCloseProps & React.RefAttributes<HTMLButtonElement>>;
|
|
6
|
+
declare const DialogPortal: React.FC<DialogPrimitive.DialogPortalProps>;
|
|
7
|
+
declare const DialogOverlay: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogOverlayProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
8
|
+
declare const DialogContent: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
|
|
9
|
+
showCloseButton?: boolean;
|
|
10
|
+
busy?: boolean;
|
|
11
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
12
|
+
declare const DialogHeader: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
13
|
+
declare const DialogFooter: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
14
|
+
showCloseButton?: boolean;
|
|
15
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
16
|
+
declare const DialogTitle: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogTitleProps & React.RefAttributes<HTMLHeadingElement>, "ref"> & React.RefAttributes<HTMLHeadingElement>>;
|
|
17
|
+
declare const DialogDescription: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogDescriptionProps & React.RefAttributes<HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
|
|
18
|
+
export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, };
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
export type EmailParticipant = {
|
|
3
|
+
name?: string;
|
|
4
|
+
address?: string;
|
|
5
|
+
};
|
|
6
|
+
declare function EmailIdentity({ name, address }: EmailParticipant): React.JSX.Element;
|
|
7
|
+
declare const EmailThread: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.OlHTMLAttributes<HTMLOListElement>, HTMLOListElement>, "ref"> & React.RefAttributes<HTMLOListElement>>;
|
|
8
|
+
declare const messageTones: {
|
|
9
|
+
default: string;
|
|
10
|
+
muted: string;
|
|
11
|
+
warning: string;
|
|
12
|
+
};
|
|
13
|
+
export type EmailMessageProps = Omit<React.ComponentPropsWithoutRef<"li">, "children"> & {
|
|
14
|
+
sender: EmailParticipant;
|
|
15
|
+
recipient?: EmailParticipant;
|
|
16
|
+
attribution?: React.ReactNode;
|
|
17
|
+
dateTime?: string;
|
|
18
|
+
dateLabel: string;
|
|
19
|
+
badge?: React.ReactNode;
|
|
20
|
+
tone?: keyof typeof messageTones;
|
|
21
|
+
body: string;
|
|
22
|
+
attachments?: React.ReactNode;
|
|
23
|
+
};
|
|
24
|
+
declare const EmailMessage: React.ForwardRefExoticComponent<Omit<Omit<React.DetailedHTMLProps<React.LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, "ref">, "children"> & {
|
|
25
|
+
sender: EmailParticipant;
|
|
26
|
+
recipient?: EmailParticipant;
|
|
27
|
+
attribution?: React.ReactNode;
|
|
28
|
+
dateTime?: string;
|
|
29
|
+
dateLabel: string;
|
|
30
|
+
badge?: React.ReactNode;
|
|
31
|
+
tone?: keyof typeof messageTones;
|
|
32
|
+
body: string;
|
|
33
|
+
attachments?: React.ReactNode;
|
|
34
|
+
} & React.RefAttributes<HTMLLIElement>>;
|
|
35
|
+
export { EmailIdentity, EmailMessage, EmailThread };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
declare const Empty: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
3
|
+
declare const EmptyHeader: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
4
|
+
declare const emptyMediaVariants: {
|
|
5
|
+
default: string;
|
|
6
|
+
icon: string;
|
|
7
|
+
};
|
|
8
|
+
declare const EmptyMedia: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
9
|
+
variant?: keyof typeof emptyMediaVariants;
|
|
10
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
11
|
+
declare const EmptyTitle: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
12
|
+
declare const EmptyDescription: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
|
|
13
|
+
declare const EmptyContent: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
14
|
+
export { Empty, EmptyHeader, EmptyTitle, EmptyDescription, EmptyContent, EmptyMedia, };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
declare const FieldSet: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.FieldsetHTMLAttributes<HTMLFieldSetElement>, HTMLFieldSetElement>, "ref"> & React.RefAttributes<HTMLFieldSetElement>>;
|
|
3
|
+
declare const FieldLegend: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLLegendElement>, HTMLLegendElement>, "ref"> & {
|
|
4
|
+
variant?: "legend" | "label";
|
|
5
|
+
} & React.RefAttributes<HTMLLegendElement>>;
|
|
6
|
+
declare const FieldGroup: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
7
|
+
declare const fieldOrientations: {
|
|
8
|
+
vertical: string;
|
|
9
|
+
horizontal: string;
|
|
10
|
+
responsive: string;
|
|
11
|
+
};
|
|
12
|
+
declare const Field: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
13
|
+
orientation?: keyof typeof fieldOrientations;
|
|
14
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
15
|
+
declare const FieldContent: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
16
|
+
declare const FieldLabel: React.ForwardRefExoticComponent<Omit<Omit<React.DetailedHTMLProps<React.LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, "ref"> & React.RefAttributes<HTMLLabelElement>, "ref"> & React.RefAttributes<HTMLLabelElement>>;
|
|
17
|
+
declare const FieldTitle: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
18
|
+
declare const FieldDescription: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
|
|
19
|
+
declare const FieldSeparator: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
20
|
+
type FieldErrorItem = {
|
|
21
|
+
message?: string;
|
|
22
|
+
} | undefined;
|
|
23
|
+
declare const FieldError: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
24
|
+
errors?: FieldErrorItem[];
|
|
25
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
26
|
+
export { Field, FieldLabel, FieldDescription, FieldError, FieldGroup, FieldLegend, FieldSeparator, FieldSet, FieldContent, FieldTitle, };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
declare const FileInput: React.ForwardRefExoticComponent<Omit<Omit<React.DetailedHTMLProps<React.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "ref">, "size" | "type"> & {
|
|
3
|
+
chooseLabel?: string;
|
|
4
|
+
emptyLabel?: string;
|
|
5
|
+
} & React.RefAttributes<HTMLInputElement>>;
|
|
6
|
+
export { FileInput };
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/** Inclusive and exclusive values use the same unit supplied to the chart. */
|
|
2
|
+
export type FlameNode = {
|
|
3
|
+
id: string;
|
|
4
|
+
parentId: string | null;
|
|
5
|
+
name: string;
|
|
6
|
+
total: number;
|
|
7
|
+
self: number;
|
|
8
|
+
calls: number;
|
|
9
|
+
/** Caller-supplied source or location detail, shown without interpreting it. */
|
|
10
|
+
detail?: string;
|
|
11
|
+
color?: string;
|
|
12
|
+
};
|
|
13
|
+
export type FlameRect = {
|
|
14
|
+
node: FlameNode;
|
|
15
|
+
x: number;
|
|
16
|
+
width: number;
|
|
17
|
+
depth: number;
|
|
18
|
+
};
|
|
19
|
+
export declare function indexFlameNodes(nodes: FlameNode[]): Map<string, FlameNode>;
|
|
20
|
+
/** Lays out a caller-provided tree. Horizontal position is alphabetical, not time. */
|
|
21
|
+
export declare function flameLayout(nodes: FlameNode[], focusId: string, width: number): FlameRect[];
|
|
22
|
+
/** Ancestry from the root down to the node, for breadcrumbs and search results. */
|
|
23
|
+
export declare function flamePath(nodes: FlameNode[] | Map<string, FlameNode>, id: string): FlameNode[];
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { type FlameNode } from "./flame-graph-model.js";
|
|
3
|
+
export type { FlameNode } from "./flame-graph-model.js";
|
|
4
|
+
export type FlameGraphProps = {
|
|
5
|
+
nodes: FlameNode[];
|
|
6
|
+
label?: string;
|
|
7
|
+
unit?: string;
|
|
8
|
+
countLabel?: string;
|
|
9
|
+
meanLabel?: string;
|
|
10
|
+
focusId?: string | null;
|
|
11
|
+
onFocusChange?: (id: string | null) => void;
|
|
12
|
+
};
|
|
13
|
+
/** Interactive flame graph over caller-supplied data: hover or focus to inspect, click to zoom. */
|
|
14
|
+
declare const FlameGraph: React.ForwardRefExoticComponent<FlameGraphProps & React.RefAttributes<HTMLDivElement>>;
|
|
15
|
+
export { FlameGraph };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type ReactNode } from "react";
|
|
2
|
+
import { Input } from "./input.js";
|
|
3
|
+
type TextProps = {
|
|
4
|
+
label: string;
|
|
5
|
+
value: string;
|
|
6
|
+
onChange: (value: string) => void;
|
|
7
|
+
} & Omit<React.ComponentProps<typeof Input>, "value" | "onChange">;
|
|
8
|
+
export declare function TextField({ label, value, onChange, ...props }: TextProps): import("react").JSX.Element;
|
|
9
|
+
export declare function SelectField({ label, value, onChange, options, children, }: Pick<TextProps, "label" | "value" | "onChange"> & {
|
|
10
|
+
options: {
|
|
11
|
+
id: string;
|
|
12
|
+
name: string;
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
}[];
|
|
15
|
+
children?: ReactNode;
|
|
16
|
+
}): import("react").JSX.Element;
|
|
17
|
+
export declare function AddButton({ children, onClick, }: {
|
|
18
|
+
children: ReactNode;
|
|
19
|
+
onClick: () => void;
|
|
20
|
+
}): import("react").JSX.Element;
|
|
21
|
+
export {};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
/** Inclusive integer bounds, with a count of observations in each interval. */
|
|
3
|
+
export type HistogramBin = {
|
|
4
|
+
from: number;
|
|
5
|
+
to: number;
|
|
6
|
+
count: number;
|
|
7
|
+
};
|
|
8
|
+
export type HistogramChartProps = {
|
|
9
|
+
bins: HistogramBin[];
|
|
10
|
+
label: string;
|
|
11
|
+
xLabel: string;
|
|
12
|
+
unit: string;
|
|
13
|
+
selected?: number;
|
|
14
|
+
onSelect: (index: number) => void;
|
|
15
|
+
};
|
|
16
|
+
/** Small presentation-only plot for a table cell. Its caller supplies the button. */
|
|
17
|
+
declare const HistogramSparkline: React.ForwardRefExoticComponent<{
|
|
18
|
+
bins: HistogramBin[];
|
|
19
|
+
label: string;
|
|
20
|
+
} & React.RefAttributes<SVGSVGElement>>;
|
|
21
|
+
/** Discrete, equal-width bins. Pointer and keyboard inspection share one selection. */
|
|
22
|
+
declare const HistogramChart: React.ForwardRefExoticComponent<HistogramChartProps & React.RefAttributes<HTMLDivElement>>;
|
|
23
|
+
export { HistogramChart, HistogramSparkline };
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
export { cn } from "./classes.js";
|
|
2
|
+
export * from "./alert.js";
|
|
3
|
+
export * from "./app-menu.js";
|
|
4
|
+
export * from "./avatar.js";
|
|
5
|
+
export * from "./badge.js";
|
|
6
|
+
export * from "./breadcrumb.js";
|
|
7
|
+
export * from "./browser-layout.js";
|
|
8
|
+
export * from "./button.js";
|
|
9
|
+
export * from "./card.js";
|
|
10
|
+
export * from "./chart-frame.js";
|
|
11
|
+
export * from "./checkbox.js";
|
|
12
|
+
export * from "./command.js";
|
|
13
|
+
export * from "./confirm-dialog.js";
|
|
14
|
+
export * from "./copy-button.js";
|
|
15
|
+
export * from "./dialog.js";
|
|
16
|
+
export * from "./discard-dialog.js";
|
|
17
|
+
export * from "./email-thread.js";
|
|
18
|
+
export * from "./empty.js";
|
|
19
|
+
export * from "./field.js";
|
|
20
|
+
export * from "./file-input.js";
|
|
21
|
+
export * from "./flame-graph.js";
|
|
22
|
+
export * from "./form-fields.js";
|
|
23
|
+
export * from "./histogram.js";
|
|
24
|
+
export * from "./input.js";
|
|
25
|
+
export * from "./input-group.js";
|
|
26
|
+
export * from "./kbd.js";
|
|
27
|
+
export * from "./label.js";
|
|
28
|
+
export * from "./menu.js";
|
|
29
|
+
export * from "./native-select.js";
|
|
30
|
+
export * from "./nav-tabs.js";
|
|
31
|
+
export * from "./page.js";
|
|
32
|
+
export * from "./rail.js";
|
|
33
|
+
export * from "./search-input.js";
|
|
34
|
+
export * from "./select.js";
|
|
35
|
+
export * from "./separator.js";
|
|
36
|
+
export * from "./settings.js";
|
|
37
|
+
export * from "./sheet.js";
|
|
38
|
+
export * from "./side-panel.js";
|
|
39
|
+
export * from "./sidebar.js";
|
|
40
|
+
export * from "./skeleton.js";
|
|
41
|
+
export * from "./spinner.js";
|
|
42
|
+
export * from "./stat.js";
|
|
43
|
+
export * from "./steps.js";
|
|
44
|
+
export * from "./switch.js";
|
|
45
|
+
export * from "./tab-state.js";
|
|
46
|
+
export * from "./table.js";
|
|
47
|
+
export * from "./table-screen.js";
|
|
48
|
+
export * from "./tabs.js";
|
|
49
|
+
export * from "./textarea.js";
|
|
50
|
+
export * from "./theme.js";
|
|
51
|
+
export * from "./time-series-chart.js";
|
|
52
|
+
export * from "./timing-tracks.js";
|
|
53
|
+
export * from "./toggle.js";
|
|
54
|
+
export * from "./tooltip.js";
|
|
55
|
+
export * from "./topbar.js";
|
|
56
|
+
export * from "./use-chart-width.js";
|
|
57
|
+
export * from "./use-mobile.js";
|