@quantlife/qlui 0.0.0-stage → 0.0.1
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 +123 -2
- package/dist/components/ui/accordion.d.ts +7 -0
- package/dist/components/ui/action-buttons.d.ts +23 -0
- package/dist/components/ui/alert-dialog.d.ts +18 -0
- package/dist/components/ui/alert.d.ts +9 -0
- package/dist/components/ui/aspect-ratio.d.ts +3 -0
- package/dist/components/ui/badge.d.ts +9 -0
- package/dist/components/ui/base-pair-selector.d.ts +19 -0
- package/dist/components/ui/button.d.ts +10 -0
- package/dist/components/ui/calendar.d.ts +8 -0
- package/dist/components/ui/card.d.ts +9 -0
- package/dist/components/ui/chat-input.d.ts +18 -0
- package/dist/components/ui/chat-list.d.ts +14 -0
- package/dist/components/ui/chat-message.d.ts +15 -0
- package/dist/components/ui/checkbox.d.ts +4 -0
- package/dist/components/ui/collapsible.d.ts +5 -0
- package/dist/components/ui/combobox.d.ts +31 -0
- package/dist/components/ui/command.d.ts +18 -0
- package/dist/components/ui/date-picker-int.d.ts +11 -0
- package/dist/components/ui/date-picker.d.ts +20 -0
- package/dist/components/ui/descriptions.d.ts +15 -0
- package/dist/components/ui/dialog.d.ts +17 -0
- package/dist/components/ui/digital-pair-selector.d.ts +14 -0
- package/dist/components/ui/drawer.d.ts +13 -0
- package/dist/components/ui/dropdown-menu.d.ts +25 -0
- package/dist/components/ui/empty.d.ts +9 -0
- package/dist/components/ui/exchange-select.d.ts +13 -0
- package/dist/components/ui/file-tree.d.ts +14 -0
- package/dist/components/ui/file-upload.d.ts +10 -0
- package/dist/components/ui/form.d.ts +24 -0
- package/dist/components/ui/hover-card.d.ts +6 -0
- package/dist/components/ui/inline-completion.d.ts +12 -0
- package/dist/components/ui/input-otp.d.ts +11 -0
- package/dist/components/ui/input.d.ts +3 -0
- package/dist/components/ui/label.d.ts +4 -0
- package/dist/components/ui/mobile-card-list.d.ts +17 -0
- package/dist/components/ui/monaco-editor.d.ts +27 -0
- package/dist/components/ui/pagination.d.ts +10 -0
- package/dist/components/ui/pair-select.d.ts +17 -0
- package/dist/components/ui/period-select.d.ts +13 -0
- package/dist/components/ui/popover.d.ts +10 -0
- package/dist/components/ui/progress.d.ts +4 -0
- package/dist/components/ui/radio-group.d.ts +5 -0
- package/dist/components/ui/segmented.d.ts +16 -0
- package/dist/components/ui/select.d.ts +15 -0
- package/dist/components/ui/separator.d.ts +4 -0
- package/dist/components/ui/sheet.d.ts +14 -0
- package/dist/components/ui/skeleton.d.ts +2 -0
- package/dist/components/ui/slider.d.ts +4 -0
- package/dist/components/ui/sonner.d.ts +3 -0
- package/dist/components/ui/standard-table.d.ts +17 -0
- package/dist/components/ui/statistic.d.ts +13 -0
- package/dist/components/ui/steps.d.ts +9 -0
- package/dist/components/ui/stream-text.d.ts +10 -0
- package/dist/components/ui/switch.d.ts +6 -0
- package/dist/components/ui/table.d.ts +10 -0
- package/dist/components/ui/tabs.d.ts +24 -0
- package/dist/components/ui/textarea.d.ts +3 -0
- package/dist/components/ui/thinking-loader.d.ts +10 -0
- package/dist/components/ui/timeline.d.ts +15 -0
- package/dist/components/ui/tooltip.d.ts +7 -0
- package/dist/hooks/use-confirm.d.ts +1 -0
- package/dist/hooks/use-media-query.d.ts +2 -0
- package/dist/hooks/use-toast.d.ts +1 -0
- package/dist/index.d.ts +68 -0
- package/dist/index.js +20878 -0
- package/dist/lib/utils.d.ts +2 -0
- package/dist/providers/confirm-provider.d.ts +14 -0
- package/dist/providers/theme-provider.d.ts +15 -0
- package/dist/providers/toast-provider.d.ts +15 -0
- package/dist/qlui.css +3 -0
- package/dist/stories/accordion.stories.d.ts +21 -0
- package/dist/stories/action-buttons.stories.d.ts +16 -0
- package/dist/stories/alert-dialog.stories.d.ts +19 -0
- package/dist/stories/alert.stories.d.ts +16 -0
- package/dist/stories/aspect-ratio.stories.d.ts +17 -0
- package/dist/stories/badge.stories.d.ts +16 -0
- package/dist/stories/base-pair-selector.stories.d.ts +16 -0
- package/dist/stories/button.stories.d.ts +16 -0
- package/dist/stories/calendar.stories.d.ts +16 -0
- package/dist/stories/card.stories.d.ts +16 -0
- package/dist/stories/chat-input.stories.d.ts +17 -0
- package/dist/stories/chat-list.stories.d.ts +19 -0
- package/dist/stories/chat-message.stories.d.ts +19 -0
- package/dist/stories/checkbox.stories.d.ts +16 -0
- package/dist/stories/collapsible.stories.d.ts +16 -0
- package/dist/stories/combobox.stories.d.ts +20 -0
- package/dist/stories/command.stories.d.ts +16 -0
- package/dist/stories/date-picker-int.stories.d.ts +16 -0
- package/dist/stories/date-picker.stories.d.ts +17 -0
- package/dist/stories/descriptions.stories.d.ts +16 -0
- package/dist/stories/dialog.stories.d.ts +16 -0
- package/dist/stories/digital-pair-selector.stories.d.ts +16 -0
- package/dist/stories/drawer.stories.d.ts +16 -0
- package/dist/stories/dropdown-menu.stories.d.ts +16 -0
- package/dist/stories/empty.stories.d.ts +16 -0
- package/dist/stories/exchange-select.stories.d.ts +16 -0
- package/dist/stories/file-tree.stories.d.ts +16 -0
- package/dist/stories/file-upload.stories.d.ts +16 -0
- package/dist/stories/form.stories.d.ts +17 -0
- package/dist/stories/hover-card.stories.d.ts +18 -0
- package/dist/stories/inline-completion.stories.d.ts +17 -0
- package/dist/stories/input-otp.stories.d.ts +17 -0
- package/dist/stories/input.stories.d.ts +16 -0
- package/dist/stories/label.stories.d.ts +16 -0
- package/dist/stories/mobile-card-list.stories.d.ts +16 -0
- package/dist/stories/monaco-editor.stories.d.ts +16 -0
- package/dist/stories/pagination.stories.d.ts +16 -0
- package/dist/stories/pair-select.stories.d.ts +16 -0
- package/dist/stories/period-select.stories.d.ts +16 -0
- package/dist/stories/popover.stories.d.ts +16 -0
- package/dist/stories/progress.stories.d.ts +16 -0
- package/dist/stories/radio-group.stories.d.ts +16 -0
- package/dist/stories/segmented.stories.d.ts +16 -0
- package/dist/stories/select.stories.d.ts +16 -0
- package/dist/stories/separator.stories.d.ts +16 -0
- package/dist/stories/sheet.stories.d.ts +16 -0
- package/dist/stories/skeleton.stories.d.ts +16 -0
- package/dist/stories/slider.stories.d.ts +16 -0
- package/dist/stories/sonner.stories.d.ts +17 -0
- package/dist/stories/standard-table.stories.d.ts +16 -0
- package/dist/stories/statistic.stories.d.ts +16 -0
- package/dist/stories/steps.stories.d.ts +16 -0
- package/dist/stories/stream-text.stories.d.ts +17 -0
- package/dist/stories/switch.stories.d.ts +16 -0
- package/dist/stories/table.stories.d.ts +16 -0
- package/dist/stories/tabs.stories.d.ts +24 -0
- package/dist/stories/textarea.stories.d.ts +16 -0
- package/dist/stories/thinking-loader.stories.d.ts +17 -0
- package/dist/stories/timeline.stories.d.ts +16 -0
- package/dist/stories/tooltip.stories.d.ts +16 -0
- package/package.json +70 -4
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
export interface MobileCardListProps<T> {
|
|
3
|
+
dataSource: T[];
|
|
4
|
+
rowKey: (item: T) => string | number;
|
|
5
|
+
titleRender: (item: T) => React.ReactNode;
|
|
6
|
+
statusRender?: (item: T) => {
|
|
7
|
+
text: string;
|
|
8
|
+
variant?: "default" | "secondary" | "destructive" | "outline";
|
|
9
|
+
} | null;
|
|
10
|
+
bodyRender: (item: T) => React.ReactNode;
|
|
11
|
+
actionsRender: (item: T) => React.ReactNode;
|
|
12
|
+
extraTagRender?: (item: T) => React.ReactNode;
|
|
13
|
+
onCardClick?: (item: T) => void;
|
|
14
|
+
className?: string;
|
|
15
|
+
}
|
|
16
|
+
/** 移动端卡片列表(自研迁入——module.css 清零改 tailwind) */
|
|
17
|
+
export declare function MobileCardList<T extends Record<string, unknown>>({ dataSource, rowKey, titleRender, statusRender, bodyRender, actionsRender, extraTagRender, onCardClick, className, }: MobileCardListProps<T>): React.JSX.Element;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { editor } from "monaco-editor";
|
|
3
|
+
/** MonacoEditor Props 类型定义(自研迁入——代码编辑器壳) */
|
|
4
|
+
export interface MonacoEditorProps {
|
|
5
|
+
/** 编辑器内容(受控模式) */
|
|
6
|
+
value?: string;
|
|
7
|
+
/** 内容变化回调 */
|
|
8
|
+
onChange?: (value: string) => void;
|
|
9
|
+
/** 语言,默认 python */
|
|
10
|
+
language?: string;
|
|
11
|
+
/** 高度,支持数字(px)或字符串(如 '100%'),默认 300 */
|
|
12
|
+
height?: number | string;
|
|
13
|
+
/** 宽度,默认 '100%' */
|
|
14
|
+
width?: number | string;
|
|
15
|
+
/** 字号,默认 14 */
|
|
16
|
+
fontSize?: number;
|
|
17
|
+
/** Tab 缩进空格数,默认 4 */
|
|
18
|
+
tabSize?: number;
|
|
19
|
+
/** 是否只读 */
|
|
20
|
+
readOnly?: boolean;
|
|
21
|
+
/** 编辑器挂载回调 */
|
|
22
|
+
onMount?: (editor: editor.IStandaloneCodeEditor, monaco: typeof import("monaco-editor")) => void;
|
|
23
|
+
/** 额外 Monaco options */
|
|
24
|
+
options?: editor.IStandaloneEditorConstructionOptions;
|
|
25
|
+
}
|
|
26
|
+
/** Monaco 代码编辑器(懒加载壳——业务补全/主题注册经 onMount 注入) */
|
|
27
|
+
export declare function MonacoEditor({ value, onChange, language, height, width, fontSize, tabSize, readOnly, onMount, options, }: MonacoEditorProps): React.JSX.Element;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
export interface PaginationProps {
|
|
3
|
+
page: number;
|
|
4
|
+
pageSize?: number;
|
|
5
|
+
total?: number;
|
|
6
|
+
onChange: (page: number) => void;
|
|
7
|
+
className?: string;
|
|
8
|
+
}
|
|
9
|
+
/** 分页器 */
|
|
10
|
+
export declare function Pagination({ page, total, pageSize, onChange, className }: PaginationProps): React.JSX.Element;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
export interface PairSelectOption {
|
|
3
|
+
value: string;
|
|
4
|
+
label: string;
|
|
5
|
+
}
|
|
6
|
+
export interface PairSelectProps {
|
|
7
|
+
/** 交易对选项注入(数据流外置——业务侧接 react-query) */
|
|
8
|
+
options: PairSelectOption[];
|
|
9
|
+
value?: string;
|
|
10
|
+
onChange?: (value: string) => void;
|
|
11
|
+
loading?: boolean;
|
|
12
|
+
disabled?: boolean;
|
|
13
|
+
placeholder?: string;
|
|
14
|
+
className?: string;
|
|
15
|
+
}
|
|
16
|
+
/** 交易对选择(自研迁入——纯壳+options 注入) */
|
|
17
|
+
export declare function PairSelect({ options, value, onChange, loading, disabled, placeholder, className }: PairSelectProps): React.JSX.Element;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
export interface PeriodSelectProps {
|
|
3
|
+
/** K线周期选项注入(如 1m/5m/1h/1d——数据流外置) */
|
|
4
|
+
options: string[];
|
|
5
|
+
value?: string;
|
|
6
|
+
onChange?: (value: string) => void;
|
|
7
|
+
loading?: boolean;
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
placeholder?: string;
|
|
10
|
+
className?: string;
|
|
11
|
+
}
|
|
12
|
+
/** K线周期选择(自研迁入——纯壳+options 注入) */
|
|
13
|
+
export declare function PeriodSelect({ options, value, onChange, loading, disabled, placeholder, className }: PeriodSelectProps): React.JSX.Element;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { Popover as PopoverPrimitive } from "radix-ui";
|
|
3
|
+
declare function Popover({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Root>): React.JSX.Element;
|
|
4
|
+
declare function PopoverTrigger({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Trigger>): React.JSX.Element;
|
|
5
|
+
declare function PopoverContent({ className, align, sideOffset, ...props }: React.ComponentProps<typeof PopoverPrimitive.Content>): React.JSX.Element;
|
|
6
|
+
declare function PopoverAnchor({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Anchor>): React.JSX.Element;
|
|
7
|
+
declare function PopoverHeader({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
|
|
8
|
+
declare function PopoverTitle({ className, ...props }: React.ComponentProps<"h2">): React.JSX.Element;
|
|
9
|
+
declare function PopoverDescription({ className, ...props }: React.ComponentProps<"p">): React.JSX.Element;
|
|
10
|
+
export { Popover, PopoverTrigger, PopoverContent, PopoverAnchor, PopoverHeader, PopoverTitle, PopoverDescription, };
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { RadioGroup as RadioGroupPrimitive } from "radix-ui";
|
|
3
|
+
declare function RadioGroup({ className, ...props }: React.ComponentProps<typeof RadioGroupPrimitive.Root>): React.JSX.Element;
|
|
4
|
+
declare function RadioGroupItem({ className, ...props }: React.ComponentProps<typeof RadioGroupPrimitive.Item>): React.JSX.Element;
|
|
5
|
+
export { RadioGroup, RadioGroupItem };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
export interface SegmentedOption<T extends string = string> {
|
|
3
|
+
label: React.ReactNode;
|
|
4
|
+
value: T;
|
|
5
|
+
disabled?: boolean;
|
|
6
|
+
}
|
|
7
|
+
export interface SegmentedProps<T extends string = string> {
|
|
8
|
+
options: SegmentedOption<T>[] | T[];
|
|
9
|
+
value?: T;
|
|
10
|
+
defaultValue?: T;
|
|
11
|
+
onChange?: (value: T) => void;
|
|
12
|
+
disabled?: boolean;
|
|
13
|
+
className?: string;
|
|
14
|
+
}
|
|
15
|
+
/** 分段控制器(registry 无现成——自建依据存档) */
|
|
16
|
+
export declare function Segmented<T extends string = string>({ options, value, defaultValue, onChange, disabled, className }: SegmentedProps<T>): React.JSX.Element;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { Select as SelectPrimitive } from "radix-ui";
|
|
3
|
+
declare function Select({ ...props }: React.ComponentProps<typeof SelectPrimitive.Root>): React.JSX.Element;
|
|
4
|
+
declare function SelectGroup({ ...props }: React.ComponentProps<typeof SelectPrimitive.Group>): React.JSX.Element;
|
|
5
|
+
declare function SelectValue({ ...props }: React.ComponentProps<typeof SelectPrimitive.Value>): React.JSX.Element;
|
|
6
|
+
declare function SelectTrigger({ className, size, children, ...props }: React.ComponentProps<typeof SelectPrimitive.Trigger> & {
|
|
7
|
+
size?: "sm" | "default";
|
|
8
|
+
}): React.JSX.Element;
|
|
9
|
+
declare function SelectContent({ className, children, position, align, ...props }: React.ComponentProps<typeof SelectPrimitive.Content>): React.JSX.Element;
|
|
10
|
+
declare function SelectLabel({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.Label>): React.JSX.Element;
|
|
11
|
+
declare function SelectItem({ className, children, ...props }: React.ComponentProps<typeof SelectPrimitive.Item>): React.JSX.Element;
|
|
12
|
+
declare function SelectSeparator({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.Separator>): React.JSX.Element;
|
|
13
|
+
declare function SelectScrollUpButton({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.ScrollUpButton>): React.JSX.Element;
|
|
14
|
+
declare function SelectScrollDownButton({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.ScrollDownButton>): React.JSX.Element;
|
|
15
|
+
export { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { Dialog as SheetPrimitive } from "radix-ui";
|
|
3
|
+
declare function Sheet({ ...props }: React.ComponentProps<typeof SheetPrimitive.Root>): React.JSX.Element;
|
|
4
|
+
declare function SheetTrigger({ ...props }: React.ComponentProps<typeof SheetPrimitive.Trigger>): React.JSX.Element;
|
|
5
|
+
declare function SheetClose({ ...props }: React.ComponentProps<typeof SheetPrimitive.Close>): React.JSX.Element;
|
|
6
|
+
declare function SheetContent({ className, children, side, showCloseButton, ...props }: React.ComponentProps<typeof SheetPrimitive.Content> & {
|
|
7
|
+
side?: "top" | "right" | "bottom" | "left";
|
|
8
|
+
showCloseButton?: boolean;
|
|
9
|
+
}): React.JSX.Element;
|
|
10
|
+
declare function SheetHeader({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
|
|
11
|
+
declare function SheetFooter({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
|
|
12
|
+
declare function SheetTitle({ className, ...props }: React.ComponentProps<typeof SheetPrimitive.Title>): React.JSX.Element;
|
|
13
|
+
declare function SheetDescription({ className, ...props }: React.ComponentProps<typeof SheetPrimitive.Description>): React.JSX.Element;
|
|
14
|
+
export { Sheet, SheetTrigger, SheetClose, SheetContent, SheetHeader, SheetFooter, SheetTitle, SheetDescription, };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { type ColumnDef } from "@tanstack/react-table";
|
|
3
|
+
export interface StandardTableProps<TData> {
|
|
4
|
+
columns: ColumnDef<TData, unknown>[];
|
|
5
|
+
data: TData[];
|
|
6
|
+
/** 全局搜索(列筛选) */
|
|
7
|
+
searchable?: boolean;
|
|
8
|
+
searchPlaceholder?: string;
|
|
9
|
+
/** 排序 */
|
|
10
|
+
enableSorting?: boolean;
|
|
11
|
+
/** 展开行(渲染函数注入) */
|
|
12
|
+
renderExpanded?: (row: TData) => React.ReactNode;
|
|
13
|
+
pageSize?: number;
|
|
14
|
+
className?: string;
|
|
15
|
+
}
|
|
16
|
+
/** 通用数据表(@tanstack/react-table 封装:排序/筛选/分页/展开行) */
|
|
17
|
+
export declare function StandardTable<TData>({ columns, data, searchable, searchPlaceholder, enableSorting, renderExpanded, pageSize, className, }: StandardTableProps<TData>): React.JSX.Element;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
export interface StatisticProps {
|
|
3
|
+
title: React.ReactNode;
|
|
4
|
+
value: React.ReactNode;
|
|
5
|
+
precision?: number;
|
|
6
|
+
prefix?: React.ReactNode;
|
|
7
|
+
suffix?: React.ReactNode;
|
|
8
|
+
/** 涨跌方向:up 红 / down 绿 由 direction 决定图标 */
|
|
9
|
+
direction?: "up" | "down";
|
|
10
|
+
className?: string;
|
|
11
|
+
}
|
|
12
|
+
/** 统计数值(registry 无现成——自建依据存档) */
|
|
13
|
+
export declare function Statistic({ title, value, precision, prefix, suffix, direction, className }: StatisticProps): React.JSX.Element;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
export interface StepsProps {
|
|
3
|
+
steps: string[];
|
|
4
|
+
current: number;
|
|
5
|
+
onChange?: (index: number) => void;
|
|
6
|
+
className?: string;
|
|
7
|
+
}
|
|
8
|
+
/** 步骤条 */
|
|
9
|
+
export declare function Steps({ steps, current, onChange, className }: StepsProps): React.JSX.Element;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
export interface StreamTextProps {
|
|
3
|
+
/** 流式输出文本 */
|
|
4
|
+
text?: string;
|
|
5
|
+
/** 输出中(显示打字光标) */
|
|
6
|
+
streaming?: boolean;
|
|
7
|
+
className?: string;
|
|
8
|
+
}
|
|
9
|
+
/** 流式输出文本容器(shadcn registry 无现成——按 shadcn 风格自建) */
|
|
10
|
+
export declare function StreamText({ text, streaming, className, }: StreamTextProps): React.JSX.Element;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { Switch as SwitchPrimitive } from "radix-ui";
|
|
3
|
+
declare function Switch({ className, size, ...props }: React.ComponentProps<typeof SwitchPrimitive.Root> & {
|
|
4
|
+
size?: "sm" | "default";
|
|
5
|
+
}): React.JSX.Element;
|
|
6
|
+
export { Switch };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
declare function Table({ className, ...props }: React.ComponentProps<"table">): React.JSX.Element;
|
|
3
|
+
declare function TableHeader({ className, ...props }: React.ComponentProps<"thead">): React.JSX.Element;
|
|
4
|
+
declare function TableBody({ className, ...props }: React.ComponentProps<"tbody">): React.JSX.Element;
|
|
5
|
+
declare function TableFooter({ className, ...props }: React.ComponentProps<"tfoot">): React.JSX.Element;
|
|
6
|
+
declare function TableRow({ className, ...props }: React.ComponentProps<"tr">): React.JSX.Element;
|
|
7
|
+
declare function TableHead({ className, ...props }: React.ComponentProps<"th">): React.JSX.Element;
|
|
8
|
+
declare function TableCell({ className, ...props }: React.ComponentProps<"td">): React.JSX.Element;
|
|
9
|
+
declare function TableCaption({ className, ...props }: React.ComponentProps<"caption">): React.JSX.Element;
|
|
10
|
+
export { Table, TableHeader, TableBody, TableFooter, TableHead, TableRow, TableCell, TableCaption, };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { type VariantProps } from "class-variance-authority";
|
|
3
|
+
import { Tabs as TabsPrimitive } from "radix-ui";
|
|
4
|
+
declare function Tabs({ className, orientation, ...props }: React.ComponentProps<typeof TabsPrimitive.Root>): React.JSX.Element;
|
|
5
|
+
declare const tabsListVariants: (props?: ({
|
|
6
|
+
variant?: "default" | "line" | null | undefined;
|
|
7
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
8
|
+
declare function TabsList({ className, variant, ...props }: React.ComponentProps<typeof TabsPrimitive.List> & VariantProps<typeof tabsListVariants>): React.JSX.Element;
|
|
9
|
+
declare function TabsTrigger({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Trigger>): React.JSX.Element;
|
|
10
|
+
declare function TabsContent({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Content>): React.JSX.Element;
|
|
11
|
+
export { Tabs, TabsList, TabsTrigger, TabsContent, tabsListVariants };
|
|
12
|
+
/** 属性映射(antd Tabs → shadcn ql-ui Tabs,随 stories 文档化):
|
|
13
|
+
* activeKey → value + onValueChange | defaultActiveKey → defaultValue
|
|
14
|
+
* items 数组 → 声明式 TabsTrigger/TabsContent | tabBarGutter → TabsList gap 类
|
|
15
|
+
* tabBarExtraContent → TabsBar rightExtra 插槽(下方封装)
|
|
16
|
+
*/
|
|
17
|
+
/** TabsBar:TabsList 与 rightExtra 同行布局(承接 antd tabBarExtraContent 迁移场景)
|
|
18
|
+
* 用法:<Tabs><TabsBar rightExtra={<Button>操作</Button>}><TabsList>…</TabsList></TabsBar><TabsContent/></Tabs>
|
|
19
|
+
*/
|
|
20
|
+
export declare function TabsBar({ children, rightExtra, className, }: {
|
|
21
|
+
children: React.ReactNode;
|
|
22
|
+
rightExtra?: React.ReactNode;
|
|
23
|
+
className?: string;
|
|
24
|
+
}): React.JSX.Element;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
export interface ThinkingLoaderProps {
|
|
3
|
+
/** 动画变体:呼吸点 / 脉冲 spinner */
|
|
4
|
+
variant?: "dots" | "spinner";
|
|
5
|
+
/** 提示文案 */
|
|
6
|
+
label?: string;
|
|
7
|
+
className?: string;
|
|
8
|
+
}
|
|
9
|
+
/** AI 思考中加载态(shadcn registry 无现成——按 shadcn 风格自建) */
|
|
10
|
+
export declare function ThinkingLoader({ variant, label, className, }: ThinkingLoaderProps): React.JSX.Element;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
export interface TimelineItemProps {
|
|
3
|
+
title: React.ReactNode;
|
|
4
|
+
description?: React.ReactNode;
|
|
5
|
+
time?: React.ReactNode;
|
|
6
|
+
dot?: React.ReactNode;
|
|
7
|
+
className?: string;
|
|
8
|
+
}
|
|
9
|
+
export declare function TimelineItem({ title, description, time, dot, className }: TimelineItemProps): React.JSX.Element;
|
|
10
|
+
export interface TimelineProps {
|
|
11
|
+
children: React.ReactNode;
|
|
12
|
+
className?: string;
|
|
13
|
+
}
|
|
14
|
+
/** 垂直时间线 */
|
|
15
|
+
export declare function Timeline({ children, className }: TimelineProps): React.JSX.Element;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { Tooltip as TooltipPrimitive } from "radix-ui";
|
|
3
|
+
declare function TooltipProvider({ delayDuration, ...props }: React.ComponentProps<typeof TooltipPrimitive.Provider>): React.JSX.Element;
|
|
4
|
+
declare function Tooltip({ ...props }: React.ComponentProps<typeof TooltipPrimitive.Root>): React.JSX.Element;
|
|
5
|
+
declare function TooltipTrigger({ ...props }: React.ComponentProps<typeof TooltipPrimitive.Trigger>): React.JSX.Element;
|
|
6
|
+
declare function TooltipContent({ className, sideOffset, children, ...props }: React.ComponentProps<typeof TooltipPrimitive.Content>): React.JSX.Element;
|
|
7
|
+
export { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { useConfirm } from "@/providers/confirm-provider";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { useToast } from "@/providers/toast-provider";
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import "./styles/globals.css";
|
|
2
|
+
export * from "./components/ui/accordion";
|
|
3
|
+
export * from "./components/ui/alert";
|
|
4
|
+
export * from "./components/ui/alert-dialog";
|
|
5
|
+
export * from "./components/ui/badge";
|
|
6
|
+
export * from "./components/ui/button";
|
|
7
|
+
export * from "./components/ui/calendar";
|
|
8
|
+
export * from "./components/ui/card";
|
|
9
|
+
export * from "./components/ui/checkbox";
|
|
10
|
+
export * from "./components/ui/collapsible";
|
|
11
|
+
export * from "./components/ui/dialog";
|
|
12
|
+
export * from "./components/ui/dropdown-menu";
|
|
13
|
+
export * from "./components/ui/input";
|
|
14
|
+
export * from "./components/ui/label";
|
|
15
|
+
export * from "./components/ui/popover";
|
|
16
|
+
export * from "./components/ui/progress";
|
|
17
|
+
export * from "./components/ui/radio-group";
|
|
18
|
+
export * from "./components/ui/select";
|
|
19
|
+
export * from "./components/ui/separator";
|
|
20
|
+
export * from "./components/ui/sheet";
|
|
21
|
+
export * from "./components/ui/skeleton";
|
|
22
|
+
export * from "./components/ui/slider";
|
|
23
|
+
export * from "./components/ui/switch";
|
|
24
|
+
export * from "./components/ui/table";
|
|
25
|
+
export * from "./components/ui/tabs";
|
|
26
|
+
export * from "./components/ui/textarea";
|
|
27
|
+
export * from "./components/ui/tooltip";
|
|
28
|
+
export * from "./components/ui/combobox";
|
|
29
|
+
export * from "./components/ui/command";
|
|
30
|
+
export * from "./components/ui/date-picker";
|
|
31
|
+
export * from "./components/ui/form";
|
|
32
|
+
export * from "./components/ui/sonner";
|
|
33
|
+
export * from "./components/ui/standard-table";
|
|
34
|
+
export * from "./components/ui/drawer";
|
|
35
|
+
export * from "./components/ui/file-tree";
|
|
36
|
+
export * from "./components/ui/file-upload";
|
|
37
|
+
export * from "./components/ui/pagination";
|
|
38
|
+
export * from "./components/ui/steps";
|
|
39
|
+
export * from "./components/ui/timeline";
|
|
40
|
+
export * from "./components/ui/descriptions";
|
|
41
|
+
export * from "./components/ui/empty";
|
|
42
|
+
export * from "./components/ui/segmented";
|
|
43
|
+
export * from "./components/ui/statistic";
|
|
44
|
+
export * from "./components/ui/action-buttons";
|
|
45
|
+
export * from "./components/ui/base-pair-selector";
|
|
46
|
+
export * from "./components/ui/date-picker-int";
|
|
47
|
+
export * from "./components/ui/digital-pair-selector";
|
|
48
|
+
export * from "./components/ui/exchange-select";
|
|
49
|
+
export * from "./components/ui/mobile-card-list";
|
|
50
|
+
export * from "./components/ui/monaco-editor";
|
|
51
|
+
export * from "./components/ui/pair-select";
|
|
52
|
+
export * from "./components/ui/period-select";
|
|
53
|
+
export * from "./components/ui/aspect-ratio";
|
|
54
|
+
export * from "./components/ui/hover-card";
|
|
55
|
+
export * from "./components/ui/input-otp";
|
|
56
|
+
export * from "./components/ui/chat-message";
|
|
57
|
+
export * from "./components/ui/chat-input";
|
|
58
|
+
export * from "./components/ui/chat-list";
|
|
59
|
+
export * from "./components/ui/inline-completion";
|
|
60
|
+
export * from "./components/ui/stream-text";
|
|
61
|
+
export * from "./components/ui/thinking-loader";
|
|
62
|
+
export * from "./providers/theme-provider";
|
|
63
|
+
export * from "./providers/confirm-provider";
|
|
64
|
+
export * from "./providers/toast-provider";
|
|
65
|
+
export { useMediaQuery } from "./hooks/use-media-query";
|
|
66
|
+
export { useConfirm } from "./hooks/use-confirm";
|
|
67
|
+
export { useToast } from "./hooks/use-toast";
|
|
68
|
+
export { cn } from "./lib/utils";
|