tekivex-ui 3.5.0 → 3.18.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/LICENSE +21 -21
- package/README.md +155 -37
- package/dist/agent.cjs +1 -0
- package/dist/agent.d.ts +3 -0
- package/dist/agent.js +17 -0
- package/dist/charts.cjs +1 -1
- package/dist/charts.d.ts +3 -0
- package/dist/charts.js +41 -22
- package/dist/experimental.cjs +1 -0
- package/dist/experimental.d.ts +3 -0
- package/dist/experimental.js +39 -0
- package/dist/headless.cjs +1 -1
- package/dist/headless.d.ts +3 -0
- package/dist/headless.js +55 -1
- package/dist/i18n.cjs +1 -1
- package/dist/i18n.d.ts +3 -0
- package/dist/i18n.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +29 -6
- package/dist/index.js +694 -586
- package/dist/quantum.cjs +1 -1
- package/dist/quantum.d.ts +3 -0
- package/dist/quantum.js +59 -74
- package/dist/realtime.cjs +1 -1
- package/dist/realtime.d.ts +3 -0
- package/dist/realtime.js +1 -1
- package/dist/src/agent/a2a/A2AClient.d.ts +32 -0
- package/dist/src/agent/a2a/a2aTool.d.ts +11 -0
- package/dist/src/agent/a2a/createA2ARoute.d.ts +5 -0
- package/dist/src/agent/bindings/solid.d.ts +12 -0
- package/dist/src/agent/bindings/svelte.d.ts +10 -0
- package/dist/src/agent/bindings/vanilla.d.ts +17 -0
- package/dist/src/agent/bindings/vue.d.ts +15 -0
- package/dist/src/agent/components/TkxAgentMessage.d.ts +15 -0
- package/dist/src/agent/components/TkxReasoningTrace.d.ts +9 -0
- package/dist/src/agent/components/TkxToolCallCard.d.ts +12 -0
- package/dist/src/agent/content/helpers.d.ts +17 -0
- package/dist/src/agent/core/Agent.d.ts +29 -0
- package/dist/src/agent/core/Memory.d.ts +12 -0
- package/dist/src/agent/core/Middleware.d.ts +10 -0
- package/dist/src/agent/core/Provider.d.ts +44 -0
- package/dist/src/agent/core/Sanitizer.d.ts +4 -0
- package/dist/src/agent/core/Tool.d.ts +13 -0
- package/dist/src/agent/core/Transport.d.ts +18 -0
- package/dist/src/agent/core/events.d.ts +19 -0
- package/dist/src/agent/core/sse.d.ts +6 -0
- package/dist/src/agent/core/types.d.ts +39 -0
- package/dist/src/agent/devtools/DevToolsPanel.d.ts +8 -0
- package/dist/src/agent/devtools/useEventCollector.d.ts +8 -0
- package/dist/src/agent/eval/runEval.d.ts +31 -0
- package/dist/src/agent/index.d.ts +54 -0
- package/dist/src/agent/mcp/MCPClient.d.ts +33 -0
- package/dist/src/agent/mcp/mcpAdapter.d.ts +3 -0
- package/dist/src/agent/memory/SlidingWindowMemory.d.ts +10 -0
- package/dist/src/agent/memory/SummarizingMemory.d.ts +16 -0
- package/dist/src/agent/memory/VectorMemory.d.ts +17 -0
- package/dist/src/agent/middleware/guardrails.d.ts +20 -0
- package/dist/src/agent/middleware/otel.d.ts +13 -0
- package/dist/src/agent/middleware/retry.d.ts +11 -0
- package/dist/src/agent/middleware/tokenUsage.d.ts +27 -0
- package/dist/src/agent/multi/agentAsTool.d.ts +11 -0
- package/dist/src/agent/providers/anthropic.d.ts +16 -0
- package/dist/src/agent/providers/gemini.d.ts +16 -0
- package/dist/src/agent/providers/ollama.d.ts +14 -0
- package/dist/src/agent/providers/openai.d.ts +16 -0
- package/dist/src/agent/rag/Retriever.d.ts +13 -0
- package/dist/src/agent/rag/retrievalTool.d.ts +11 -0
- package/dist/src/agent/react/useAgent.d.ts +12 -0
- package/dist/src/agent/replay/ReplayProvider.d.ts +13 -0
- package/dist/src/agent/replay/recorder.d.ts +16 -0
- package/dist/src/agent/research/DeepResearch.d.ts +37 -0
- package/dist/src/agent/research/citations.d.ts +10 -0
- package/dist/src/agent/server/createAgentClient.d.ts +11 -0
- package/dist/src/agent/server/createAgentRoute.d.ts +10 -0
- package/dist/src/agent/structured/generateObject.d.ts +19 -0
- package/dist/src/agent/tools/cancellable.d.ts +6 -0
- package/dist/src/charts/TkxDataExplorer.d.ts +17 -0
- package/dist/src/charts/index.d.ts +2 -0
- package/dist/src/components/TkxAppBar.d.ts +2 -1
- package/dist/src/components/TkxButton.d.ts +1 -0
- package/dist/src/components/TkxCommandPalette.d.ts +32 -0
- package/dist/src/components/TkxDataGrid.d.ts +37 -1
- package/dist/src/components/TkxFlowChart.d.ts +52 -0
- package/dist/src/components/TkxFormBuilder.d.ts +34 -0
- package/dist/src/components/TkxFormulaBar.d.ts +19 -0
- package/dist/src/components/TkxFunnelChart.d.ts +21 -0
- package/dist/src/components/TkxGantt.d.ts +29 -0
- package/dist/src/components/TkxGauge.d.ts +21 -0
- package/dist/src/components/TkxHeatmap.d.ts +25 -0
- package/dist/src/components/TkxHolographic.d.ts +2 -0
- package/dist/src/components/TkxHolographicAdvanced.d.ts +48 -0
- package/dist/src/components/TkxMindMap.d.ts +22 -0
- package/dist/src/components/TkxPivotTable.d.ts +21 -0
- package/dist/src/components/TkxSparkline.d.ts +15 -0
- package/dist/src/components/TkxSpreadsheet.d.ts +33 -0
- package/dist/src/components/TkxTreemap.d.ts +21 -0
- package/dist/src/components/TkxTypography.d.ts +1 -1
- package/dist/src/components/index.d.ts +5 -3
- package/dist/src/engine/security.d.ts +3 -0
- package/dist/src/experimental/index.d.ts +8 -0
- package/dist/src/headless/index.d.ts +6 -0
- package/dist/src/headless/rhfBindings.d.ts +59 -0
- package/dist/src/headless/useFormState.d.ts +12 -2
- package/dist/src/headless/valibotResolver.d.ts +25 -0
- package/dist/src/headless/zodResolver.d.ts +25 -0
- package/dist/src/i18n/index.d.ts +20 -0
- package/dist/src/i18n/plurals.d.ts +4 -0
- package/dist/src/quantum/index.d.ts +0 -2
- package/dist/src/themes/index.d.ts +7 -1
- package/dist/themes.cjs +1 -0
- package/dist/themes.d.ts +3 -0
- package/dist/themes.js +1 -0
- package/package.json +32 -8
- package/dist/chunk-BHX35YDv.js +0 -1
- package/dist/chunk-BpuJ3-K8.js +0 -1
- package/dist/chunk-Bze40nDX.js +0 -1
- package/dist/chunk-C8Wy8P59.js +0 -1
- package/dist/chunk-D7-yknXg.js +0 -1
- package/dist/chunk-DTO-RrPx.js +0 -3
- package/dist/chunk-DcVMayoM.js +0 -1
- package/dist/chunk-DdHSYetV.js +0 -1
- package/dist/chunk-DmRB1Blb.js +0 -1
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
import { type ReactNode } from 'react';
|
|
2
|
+
export interface CellEditorRenderArgs<T = any> {
|
|
3
|
+
value: any;
|
|
4
|
+
row: T;
|
|
5
|
+
onCommit: (v: any) => void;
|
|
6
|
+
onCancel: () => void;
|
|
7
|
+
}
|
|
2
8
|
export interface DataGridColumn<T = any> {
|
|
3
9
|
key: string;
|
|
4
10
|
header: string;
|
|
@@ -10,6 +16,16 @@ export interface DataGridColumn<T = any> {
|
|
|
10
16
|
renderHeader?: (col: DataGridColumn<T>) => ReactNode;
|
|
11
17
|
align?: 'left' | 'center' | 'right';
|
|
12
18
|
pinned?: 'left' | 'right';
|
|
19
|
+
aggregate?: 'sum' | 'avg' | 'count' | 'min' | 'max' | ((rows: T[]) => string | number);
|
|
20
|
+
editable?: boolean | ((row: T) => boolean);
|
|
21
|
+
editor?: 'text' | 'number' | 'select' | ((args: CellEditorRenderArgs<T>) => ReactNode);
|
|
22
|
+
editorOptions?: {
|
|
23
|
+
options?: Array<{
|
|
24
|
+
value: any;
|
|
25
|
+
label: string;
|
|
26
|
+
}>;
|
|
27
|
+
};
|
|
28
|
+
validateCell?: (value: any, row: T) => string | null;
|
|
13
29
|
}
|
|
14
30
|
export interface TkxDataGridProps<T = any> {
|
|
15
31
|
columns: DataGridColumn<T>[];
|
|
@@ -40,5 +56,25 @@ export interface TkxDataGridProps<T = any> {
|
|
|
40
56
|
hasMore?: boolean;
|
|
41
57
|
loadingMore?: boolean;
|
|
42
58
|
loadMoreThreshold?: number;
|
|
59
|
+
groupBy?: string;
|
|
60
|
+
defaultExpandedGroups?: 'all' | 'none' | string[];
|
|
61
|
+
onGroupToggle?: (groupKey: string, expanded: boolean) => void;
|
|
62
|
+
onCellEdit?: (params: {
|
|
63
|
+
rowId: string | number;
|
|
64
|
+
columnKey: string;
|
|
65
|
+
newValue: any;
|
|
66
|
+
oldValue: any;
|
|
67
|
+
row: T;
|
|
68
|
+
}) => void | Promise<void>;
|
|
69
|
+
onCellEditStart?: (params: {
|
|
70
|
+
rowId: string | number;
|
|
71
|
+
columnKey: string;
|
|
72
|
+
row: T;
|
|
73
|
+
}) => void;
|
|
74
|
+
onCellEditCancel?: (params: {
|
|
75
|
+
rowId: string | number;
|
|
76
|
+
columnKey: string;
|
|
77
|
+
row: T;
|
|
78
|
+
}) => void;
|
|
43
79
|
}
|
|
44
|
-
export declare function TkxDataGrid<T = any>({ columns, data, rowKey, selectable, selectedRows, onSelectionChange, sortable, onSort, loading, emptyMessage, stickyHeader, striped, bordered, compact, maxHeight, onRowClick, virtualScroll, rowHeight, showFilters, filterValues: externalFilterValues, onFilterChange, pageSize, showExport, exportFileName, onLoadMore, hasMore, loadingMore, loadMoreThreshold, }: TkxDataGridProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
80
|
+
export declare function TkxDataGrid<T = any>({ columns, data, rowKey, selectable, selectedRows, onSelectionChange, sortable, onSort, loading, emptyMessage, stickyHeader, striped, bordered, compact, maxHeight, onRowClick, virtualScroll, rowHeight, showFilters, filterValues: externalFilterValues, onFilterChange, pageSize, showExport, exportFileName, onLoadMore, hasMore, loadingMore, loadMoreThreshold, groupBy, defaultExpandedGroups, onGroupToggle, onCellEdit, onCellEditStart, onCellEditCancel, }: TkxDataGridProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { type CSSProperties, type ReactNode } from 'react';
|
|
3
|
+
export interface FlowNode {
|
|
4
|
+
id: string;
|
|
5
|
+
x: number;
|
|
6
|
+
y: number;
|
|
7
|
+
width?: number;
|
|
8
|
+
height?: number;
|
|
9
|
+
label: string;
|
|
10
|
+
color?: string;
|
|
11
|
+
data?: unknown;
|
|
12
|
+
}
|
|
13
|
+
export interface FlowEdge {
|
|
14
|
+
id: string;
|
|
15
|
+
from: string;
|
|
16
|
+
to: string;
|
|
17
|
+
label?: string;
|
|
18
|
+
color?: string;
|
|
19
|
+
}
|
|
20
|
+
export interface FlowChartData {
|
|
21
|
+
nodes: FlowNode[];
|
|
22
|
+
edges: FlowEdge[];
|
|
23
|
+
}
|
|
24
|
+
export interface Viewport {
|
|
25
|
+
x: number;
|
|
26
|
+
y: number;
|
|
27
|
+
scale: number;
|
|
28
|
+
}
|
|
29
|
+
export interface TkxFlowChartProps {
|
|
30
|
+
data: FlowChartData;
|
|
31
|
+
onChange: (next: FlowChartData) => void;
|
|
32
|
+
selectedId?: string | null;
|
|
33
|
+
onSelect?: (id: string | null) => void;
|
|
34
|
+
initialViewport?: Viewport;
|
|
35
|
+
draggable?: boolean;
|
|
36
|
+
pannable?: boolean;
|
|
37
|
+
zoomable?: boolean;
|
|
38
|
+
minZoom?: number;
|
|
39
|
+
maxZoom?: number;
|
|
40
|
+
height?: number;
|
|
41
|
+
showGrid?: boolean;
|
|
42
|
+
showControls?: boolean;
|
|
43
|
+
renderNode?: (node: FlowNode, isSelected: boolean) => ReactNode;
|
|
44
|
+
className?: string;
|
|
45
|
+
style?: CSSProperties;
|
|
46
|
+
}
|
|
47
|
+
export declare function nodeAnchors(n: FlowNode): {
|
|
48
|
+
out: [number, number];
|
|
49
|
+
in: [number, number];
|
|
50
|
+
};
|
|
51
|
+
export declare function edgePath(from: FlowNode, to: FlowNode): string;
|
|
52
|
+
export declare const TkxFlowChart: React.ForwardRefExoticComponent<TkxFlowChartProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { type CSSProperties } from 'react';
|
|
2
|
+
export type FormFieldType = 'text' | 'email' | 'number' | 'textarea' | 'select' | 'radio' | 'checkbox' | 'date';
|
|
3
|
+
export interface FormFieldOption {
|
|
4
|
+
label: string;
|
|
5
|
+
value: string;
|
|
6
|
+
}
|
|
7
|
+
export interface FormField {
|
|
8
|
+
id: string;
|
|
9
|
+
type: FormFieldType;
|
|
10
|
+
name: string;
|
|
11
|
+
label: string;
|
|
12
|
+
placeholder?: string;
|
|
13
|
+
helpText?: string;
|
|
14
|
+
required?: boolean;
|
|
15
|
+
options?: FormFieldOption[];
|
|
16
|
+
min?: number;
|
|
17
|
+
max?: number;
|
|
18
|
+
pattern?: string;
|
|
19
|
+
}
|
|
20
|
+
export interface FormSchema {
|
|
21
|
+
title?: string;
|
|
22
|
+
description?: string;
|
|
23
|
+
fields: FormField[];
|
|
24
|
+
}
|
|
25
|
+
export interface TkxFormBuilderProps {
|
|
26
|
+
schema: FormSchema;
|
|
27
|
+
onChange: (next: FormSchema) => void;
|
|
28
|
+
allowedTypes?: FormFieldType[];
|
|
29
|
+
defaultTab?: 'design' | 'preview' | 'json';
|
|
30
|
+
style?: CSSProperties;
|
|
31
|
+
className?: string;
|
|
32
|
+
}
|
|
33
|
+
export declare function validateField(field: FormField, value: unknown): string | null;
|
|
34
|
+
export declare function TkxFormBuilder({ schema, onChange, allowedTypes, defaultTab, style, className, }: TkxFormBuilderProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { type CSSProperties } from 'react';
|
|
2
|
+
import { type SpreadsheetData } from './TkxSpreadsheet';
|
|
3
|
+
export interface TkxFormulaBarProps {
|
|
4
|
+
data: SpreadsheetData;
|
|
5
|
+
active: {
|
|
6
|
+
col: number;
|
|
7
|
+
row: number;
|
|
8
|
+
};
|
|
9
|
+
onChange: (next: SpreadsheetData) => void;
|
|
10
|
+
onActiveChange?: (next: {
|
|
11
|
+
col: number;
|
|
12
|
+
row: number;
|
|
13
|
+
}) => void;
|
|
14
|
+
showResult?: boolean;
|
|
15
|
+
height?: number;
|
|
16
|
+
style?: CSSProperties;
|
|
17
|
+
className?: string;
|
|
18
|
+
}
|
|
19
|
+
export declare function TkxFormulaBar({ data, active, onChange, onActiveChange, showResult, height, style, className, }: TkxFormulaBarProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type HTMLAttributes } from 'react';
|
|
2
|
+
export interface TkxFunnelStage {
|
|
3
|
+
label: string;
|
|
4
|
+
value: number;
|
|
5
|
+
color?: string;
|
|
6
|
+
}
|
|
7
|
+
export interface TkxFunnelChartProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children' | 'onClick'> {
|
|
8
|
+
data: TkxFunnelStage[];
|
|
9
|
+
width?: number;
|
|
10
|
+
height?: number;
|
|
11
|
+
orientation?: 'vertical' | 'horizontal';
|
|
12
|
+
colors?: string[];
|
|
13
|
+
showValues?: boolean;
|
|
14
|
+
showPercentages?: boolean;
|
|
15
|
+
formatValue?: (v: number) => string;
|
|
16
|
+
gap?: number;
|
|
17
|
+
ariaLabel?: string;
|
|
18
|
+
onStageClick?: (stage: TkxFunnelStage, index: number) => void;
|
|
19
|
+
className?: string;
|
|
20
|
+
}
|
|
21
|
+
export declare const TkxFunnelChart: import("react").ForwardRefExoticComponent<TkxFunnelChartProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { type CSSProperties } from 'react';
|
|
2
|
+
export interface GanttTask {
|
|
3
|
+
id: string;
|
|
4
|
+
label: string;
|
|
5
|
+
start: string | Date;
|
|
6
|
+
end: string | Date;
|
|
7
|
+
progress?: number;
|
|
8
|
+
dependencies?: string[];
|
|
9
|
+
color?: string;
|
|
10
|
+
data?: unknown;
|
|
11
|
+
}
|
|
12
|
+
export interface TkxGanttProps {
|
|
13
|
+
tasks: GanttTask[];
|
|
14
|
+
dayWidth?: number;
|
|
15
|
+
rowHeight?: number;
|
|
16
|
+
labelColumnWidth?: number;
|
|
17
|
+
selectedId?: string | null;
|
|
18
|
+
onSelect?: (id: string, task: GanttTask) => void;
|
|
19
|
+
onTaskChange?: (id: string, next: {
|
|
20
|
+
start: string;
|
|
21
|
+
end: string;
|
|
22
|
+
}, task: GanttTask) => void;
|
|
23
|
+
style?: CSSProperties;
|
|
24
|
+
className?: string;
|
|
25
|
+
}
|
|
26
|
+
export declare function parseDay(input: string | Date): Date;
|
|
27
|
+
export declare function formatDay(d: Date): string;
|
|
28
|
+
export declare function dayDiff(a: Date, b: Date): number;
|
|
29
|
+
export declare function TkxGantt({ tasks, dayWidth, rowHeight, labelColumnWidth, selectedId: controlledSelected, onSelect, onTaskChange, style, className, }: TkxGanttProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type HTMLAttributes } from 'react';
|
|
2
|
+
export type GaugeVariant = 'arc' | 'speedometer';
|
|
3
|
+
export interface GaugeThreshold {
|
|
4
|
+
at: number;
|
|
5
|
+
color: string;
|
|
6
|
+
}
|
|
7
|
+
export interface TkxGaugeProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children'> {
|
|
8
|
+
value: number;
|
|
9
|
+
min?: number;
|
|
10
|
+
max?: number;
|
|
11
|
+
size?: number;
|
|
12
|
+
thickness?: number;
|
|
13
|
+
variant?: GaugeVariant;
|
|
14
|
+
thresholds?: GaugeThreshold[];
|
|
15
|
+
label?: string;
|
|
16
|
+
showValue?: boolean;
|
|
17
|
+
showTicks?: boolean;
|
|
18
|
+
formatValue?: (v: number) => string;
|
|
19
|
+
ariaLabel?: string;
|
|
20
|
+
}
|
|
21
|
+
export declare const TkxGauge: import("react").ForwardRefExoticComponent<TkxGaugeProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { type HTMLAttributes } from 'react';
|
|
2
|
+
export interface TkxHeatmapCell {
|
|
3
|
+
x: string | number;
|
|
4
|
+
y: string | number;
|
|
5
|
+
value: number;
|
|
6
|
+
label?: string;
|
|
7
|
+
}
|
|
8
|
+
export interface TkxHeatmapProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children' | 'onClick'> {
|
|
9
|
+
data: TkxHeatmapCell[];
|
|
10
|
+
xLabels?: Array<string | number>;
|
|
11
|
+
yLabels?: Array<string | number>;
|
|
12
|
+
cellSize?: number;
|
|
13
|
+
gap?: number;
|
|
14
|
+
colorScale?: 'sequential' | 'diverging' | string[];
|
|
15
|
+
domain?: [number, number];
|
|
16
|
+
showValues?: boolean;
|
|
17
|
+
showLegend?: boolean;
|
|
18
|
+
legendPosition?: 'right' | 'bottom';
|
|
19
|
+
formatValue?: (v: number) => string;
|
|
20
|
+
emptyCellColor?: string;
|
|
21
|
+
ariaLabel?: string;
|
|
22
|
+
onCellClick?: (cell: TkxHeatmapCell) => void;
|
|
23
|
+
className?: string;
|
|
24
|
+
}
|
|
25
|
+
export declare const TkxHeatmap: import("react").ForwardRefExoticComponent<TkxHeatmapProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type HTMLAttributes, type ReactNode } from 'react';
|
|
2
|
+
export declare function injectHolographicStyles(): void;
|
|
2
3
|
export interface TkxHolographicSurfaceProps extends HTMLAttributes<HTMLDivElement> {
|
|
3
4
|
children: ReactNode;
|
|
4
5
|
maxTilt?: number;
|
|
@@ -26,6 +27,7 @@ export declare const TkxHolographicAvatar: import("react").ForwardRefExoticCompo
|
|
|
26
27
|
export interface TkxHolographicBadgeProps extends Omit<TkxHolographicSurfaceProps, 'children' | 'radius' | 'maxTilt'> {
|
|
27
28
|
children: ReactNode;
|
|
28
29
|
size?: 'sm' | 'md' | 'lg';
|
|
30
|
+
tone?: 'neutral' | 'success' | 'info' | 'warning' | 'danger';
|
|
29
31
|
}
|
|
30
32
|
export declare const TkxHolographicBadge: import("react").ForwardRefExoticComponent<TkxHolographicBadgeProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
31
33
|
export interface TkxHolographicButtonProps extends Omit<TkxHolographicSurfaceProps, 'children' | 'radius' | 'onClick'> {
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { type CSSProperties, type HTMLAttributes, type ReactNode } from 'react';
|
|
2
|
+
export interface TkxHolographicPanelProps extends HTMLAttributes<HTMLDivElement> {
|
|
3
|
+
header?: ReactNode;
|
|
4
|
+
footer?: ReactNode;
|
|
5
|
+
tabs?: {
|
|
6
|
+
id: string;
|
|
7
|
+
label: string;
|
|
8
|
+
}[];
|
|
9
|
+
activeTabId?: string;
|
|
10
|
+
onTabChange?: (id: string) => void;
|
|
11
|
+
accent?: string;
|
|
12
|
+
children?: ReactNode;
|
|
13
|
+
}
|
|
14
|
+
export declare const TkxHolographicPanel: import("react").ForwardRefExoticComponent<TkxHolographicPanelProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
15
|
+
export interface TkxHolographicGaugeProps {
|
|
16
|
+
value: number;
|
|
17
|
+
size?: number;
|
|
18
|
+
thickness?: number;
|
|
19
|
+
accent?: string;
|
|
20
|
+
label?: ReactNode;
|
|
21
|
+
caption?: ReactNode;
|
|
22
|
+
ariaValueText?: string;
|
|
23
|
+
className?: string;
|
|
24
|
+
style?: CSSProperties;
|
|
25
|
+
}
|
|
26
|
+
export declare function TkxHolographicGauge({ value, size, thickness, accent, label, caption, ariaValueText, className, style, }: TkxHolographicGaugeProps): import("react/jsx-runtime").JSX.Element;
|
|
27
|
+
export interface TkxHolographicProgressProps {
|
|
28
|
+
value: number;
|
|
29
|
+
label?: ReactNode;
|
|
30
|
+
valueLabel?: ReactNode;
|
|
31
|
+
height?: number;
|
|
32
|
+
accent?: string;
|
|
33
|
+
shimmer?: boolean;
|
|
34
|
+
className?: string;
|
|
35
|
+
style?: CSSProperties;
|
|
36
|
+
}
|
|
37
|
+
export declare function TkxHolographicProgress({ value, label, valueLabel, height, accent, shimmer, className, style, }: TkxHolographicProgressProps): import("react/jsx-runtime").JSX.Element;
|
|
38
|
+
export interface TkxHolographicTerminalProps {
|
|
39
|
+
lines: string[];
|
|
40
|
+
typeSpeed?: number;
|
|
41
|
+
prompt?: string;
|
|
42
|
+
maxLines?: number;
|
|
43
|
+
height?: number;
|
|
44
|
+
accent?: string;
|
|
45
|
+
className?: string;
|
|
46
|
+
style?: CSSProperties;
|
|
47
|
+
}
|
|
48
|
+
export declare function TkxHolographicTerminal({ lines, typeSpeed, prompt, maxLines, height, accent, className, style, }: TkxHolographicTerminalProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { type CSSProperties } from 'react';
|
|
2
|
+
export interface MindMapNode {
|
|
3
|
+
id: string;
|
|
4
|
+
label: string;
|
|
5
|
+
children?: MindMapNode[];
|
|
6
|
+
color?: string;
|
|
7
|
+
collapsed?: boolean;
|
|
8
|
+
data?: unknown;
|
|
9
|
+
}
|
|
10
|
+
export interface TkxMindMapProps {
|
|
11
|
+
root: MindMapNode;
|
|
12
|
+
selectedId?: string | null;
|
|
13
|
+
collapsedIds?: Set<string>;
|
|
14
|
+
onSelect?: (id: string, node: MindMapNode) => void;
|
|
15
|
+
onToggle?: (id: string, nextCollapsed: boolean) => void;
|
|
16
|
+
leafHeight?: number;
|
|
17
|
+
levelWidth?: number;
|
|
18
|
+
nodeWidth?: number;
|
|
19
|
+
style?: CSSProperties;
|
|
20
|
+
className?: string;
|
|
21
|
+
}
|
|
22
|
+
export declare function TkxMindMap({ root, selectedId: controlledSelected, collapsedIds: controlledCollapsed, onSelect, onToggle, leafHeight, levelWidth, nodeWidth, style, className, }: TkxMindMapProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type CSSProperties } from 'react';
|
|
2
|
+
export type PivotAggregator = 'sum' | 'avg' | 'min' | 'max' | 'count';
|
|
3
|
+
export interface PivotValue {
|
|
4
|
+
field?: string;
|
|
5
|
+
agg: PivotAggregator;
|
|
6
|
+
label?: string;
|
|
7
|
+
}
|
|
8
|
+
export type PivotRecord = Record<string, unknown>;
|
|
9
|
+
export interface TkxPivotTableProps {
|
|
10
|
+
data: PivotRecord[];
|
|
11
|
+
rows: string[];
|
|
12
|
+
cols?: string[];
|
|
13
|
+
values: PivotValue[];
|
|
14
|
+
sortRows?: (a: string, b: string, level: number) => number;
|
|
15
|
+
sortCols?: (a: string, b: string, level: number) => number;
|
|
16
|
+
showTotals?: boolean;
|
|
17
|
+
formatNumber?: (n: number) => string;
|
|
18
|
+
style?: CSSProperties;
|
|
19
|
+
className?: string;
|
|
20
|
+
}
|
|
21
|
+
export declare function TkxPivotTable({ data, rows, cols, values, sortRows, sortCols, showTotals, formatNumber, style, className, }: TkxPivotTableProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type HTMLAttributes } from 'react';
|
|
2
|
+
export type SparklineVariant = 'line' | 'area' | 'bar';
|
|
3
|
+
export interface TkxSparklineProps extends Omit<HTMLAttributes<HTMLSpanElement>, 'children'> {
|
|
4
|
+
data: number[];
|
|
5
|
+
variant?: SparklineVariant;
|
|
6
|
+
width?: number;
|
|
7
|
+
height?: number;
|
|
8
|
+
color?: string;
|
|
9
|
+
showPoints?: boolean;
|
|
10
|
+
showLastPoint?: boolean;
|
|
11
|
+
showValue?: boolean;
|
|
12
|
+
smooth?: boolean;
|
|
13
|
+
ariaLabel?: string;
|
|
14
|
+
}
|
|
15
|
+
export declare const TkxSparkline: import("react").ForwardRefExoticComponent<TkxSparklineProps & import("react").RefAttributes<HTMLSpanElement>>;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { type CSSProperties } from 'react';
|
|
2
|
+
export interface SpreadsheetData {
|
|
3
|
+
cells: Record<string, string>;
|
|
4
|
+
}
|
|
5
|
+
export interface TkxSpreadsheetProps {
|
|
6
|
+
cols?: number;
|
|
7
|
+
rows?: number;
|
|
8
|
+
data: SpreadsheetData;
|
|
9
|
+
onChange: (next: SpreadsheetData) => void;
|
|
10
|
+
colWidth?: number;
|
|
11
|
+
rowHeight?: number;
|
|
12
|
+
style?: CSSProperties;
|
|
13
|
+
className?: string;
|
|
14
|
+
}
|
|
15
|
+
export declare function colLetter(i: number): string;
|
|
16
|
+
export declare function colIndex(letters: string): number;
|
|
17
|
+
export declare function addr(col: number, row: number): string;
|
|
18
|
+
export declare function parseAddr(a: string): {
|
|
19
|
+
col: number;
|
|
20
|
+
row: number;
|
|
21
|
+
} | null;
|
|
22
|
+
export declare function spreadsheetToRecords(data: SpreadsheetData, bounds: {
|
|
23
|
+
cols: number;
|
|
24
|
+
rows: number;
|
|
25
|
+
}): Array<Record<string, string | number | null>>;
|
|
26
|
+
export declare function recordsToSpreadsheet(records: Array<Record<string, string | number | null | boolean | undefined>>, options?: {
|
|
27
|
+
base?: SpreadsheetData;
|
|
28
|
+
preserveExtraCells?: boolean;
|
|
29
|
+
}): SpreadsheetData;
|
|
30
|
+
type CellValue = number | string;
|
|
31
|
+
export declare function evaluate(addr: string, cells: Record<string, string>): CellValue;
|
|
32
|
+
export declare function TkxSpreadsheet({ cols, rows, data, onChange, colWidth, rowHeight, style, className, }: TkxSpreadsheetProps): import("react/jsx-runtime").JSX.Element;
|
|
33
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type HTMLAttributes } from 'react';
|
|
2
|
+
export interface TkxTreemapNode {
|
|
3
|
+
label: string;
|
|
4
|
+
value: number;
|
|
5
|
+
color?: string;
|
|
6
|
+
children?: TkxTreemapNode[];
|
|
7
|
+
}
|
|
8
|
+
export interface TkxTreemapProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children' | 'onClick'> {
|
|
9
|
+
data: TkxTreemapNode[];
|
|
10
|
+
width?: number;
|
|
11
|
+
height?: number;
|
|
12
|
+
colors?: string[];
|
|
13
|
+
showLabels?: boolean;
|
|
14
|
+
showValues?: boolean;
|
|
15
|
+
minLabelSize?: number;
|
|
16
|
+
formatValue?: (v: number) => string;
|
|
17
|
+
ariaLabel?: string;
|
|
18
|
+
onNodeClick?: (node: TkxTreemapNode, path: number[]) => void;
|
|
19
|
+
className?: string;
|
|
20
|
+
}
|
|
21
|
+
export declare const TkxTreemap: import("react").ForwardRefExoticComponent<TkxTreemapProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -187,7 +187,7 @@ export declare function TkxTitle({ level, children, copyable, type, style, }: Tk
|
|
|
187
187
|
fontVariantNumeric?: import("csstype").Property.FontVariantNumeric | undefined;
|
|
188
188
|
fontVariantPosition?: import("csstype").Property.FontVariantPosition | undefined;
|
|
189
189
|
fontVariationSettings?: import("csstype").Property.FontVariationSettings | undefined;
|
|
190
|
-
fontWeight: number | "bold" | (string & {}) | "inherit" | "initial" | "
|
|
190
|
+
fontWeight: number | "bold" | (string & {}) | "inherit" | "initial" | "-moz-initial" | "revert" | "revert-layer" | "unset" | "normal" | "bolder" | "lighter";
|
|
191
191
|
fontWidth?: import("csstype").Property.FontWidth | undefined;
|
|
192
192
|
forcedColorAdjust?: import("csstype").Property.ForcedColorAdjust | undefined;
|
|
193
193
|
gridAutoColumns?: import("csstype").Property.GridAutoColumns<string | number> | undefined;
|
|
@@ -71,6 +71,8 @@ export * from './TkxCascader';
|
|
|
71
71
|
export * from './TkxList';
|
|
72
72
|
export * from './TkxOrgChart';
|
|
73
73
|
export * from './TkxDropdown';
|
|
74
|
-
export * from './
|
|
75
|
-
export * from './
|
|
76
|
-
export * from './
|
|
74
|
+
export * from './TkxSparkline';
|
|
75
|
+
export * from './TkxGauge';
|
|
76
|
+
export * from './TkxHeatmap';
|
|
77
|
+
export * from './TkxFunnelChart';
|
|
78
|
+
export * from './TkxTreemap';
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export declare function sha256Hex(input: string): string;
|
|
1
2
|
export declare function sanitizeString(input: unknown): string;
|
|
2
3
|
export declare function sanitizeProps<T extends Record<string, unknown>>(props: T): T;
|
|
3
4
|
export interface PropSchema {
|
|
@@ -66,7 +67,9 @@ export interface RateLimiter {
|
|
|
66
67
|
}
|
|
67
68
|
export declare function createRateLimiter(n: number, intervalMs: number): RateLimiter;
|
|
68
69
|
export declare function sniffMimeType(file: File): Promise<string | null>;
|
|
70
|
+
declare function luhnValid(digits: string): boolean;
|
|
69
71
|
export declare function scrubPII(raw: unknown): string;
|
|
72
|
+
export { luhnValid };
|
|
70
73
|
export declare function deepFreeze<T>(obj: T): Readonly<T>;
|
|
71
74
|
export declare const SecurityCore: Readonly<{
|
|
72
75
|
sanitizeString: typeof sanitizeString;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { TkxQuantumForm } from '../components/TkxQuantumForm';
|
|
2
|
+
export type { TkxQuantumFormProps, QuantumFieldConfig, } from '../components/TkxQuantumForm';
|
|
3
|
+
export { TkxAIConfidenceBar } from '../components/TkxAIConfidenceBar';
|
|
4
|
+
export type { TkxAIConfidenceBarProps } from '../components/TkxAIConfidenceBar';
|
|
5
|
+
export { TkxAIThinking } from '../components/TkxAIThinking';
|
|
6
|
+
export type { TkxAIThinkingProps } from '../components/TkxAIThinking';
|
|
7
|
+
export { TkxAIChatBubble } from '../components/TkxAIChatBubble';
|
|
8
|
+
export type { TkxAIChatBubbleProps, AIRole, } from '../components/TkxAIChatBubble';
|
|
@@ -21,3 +21,9 @@ export { useSSE } from './useSSE';
|
|
|
21
21
|
export type { SSEOptions, SSEState } from './useSSE';
|
|
22
22
|
export { useInfiniteQuery } from './useInfiniteQuery';
|
|
23
23
|
export type { InfiniteQueryOptions, InfiniteQueryState } from './useInfiniteQuery';
|
|
24
|
+
export { zodResolver, useFormWithZod } from './zodResolver';
|
|
25
|
+
export type { ZodResolverConfig, ZodSchemaLike, ZodIssueLike } from './zodResolver';
|
|
26
|
+
export { valibotResolver, useFormWithValibot } from './valibotResolver';
|
|
27
|
+
export type { ValibotResolverConfig, ValibotSafeParseFn, ValibotSafeParseResult, ValibotIssueLike, } from './valibotResolver';
|
|
28
|
+
export { createRHFBindings } from './rhfBindings';
|
|
29
|
+
export type { RHFControl, RHFFieldRenderProps, RHFBindings, RHFControllerComponent, CreateRHFBindingsConfig, } from './rhfBindings';
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import type { ComponentType, ReactElement } from 'react';
|
|
2
|
+
import { type TkxInputProps } from '../components/TkxInput';
|
|
3
|
+
import { type TkxSelectProps } from '../components/TkxSelect';
|
|
4
|
+
import { type TkxCheckboxProps } from '../components/TkxCheckbox';
|
|
5
|
+
import { type TkxToggleProps } from '../components/TkxToggle';
|
|
6
|
+
import { type TkxRadioProps } from '../components/TkxRadio';
|
|
7
|
+
import { type TkxNumberInputProps } from '../components/TkxNumberInput';
|
|
8
|
+
import { type TkxDatePickerProps } from '../components/TkxDatePicker';
|
|
9
|
+
export interface RHFControl {
|
|
10
|
+
_formState: {
|
|
11
|
+
errors: Record<string, {
|
|
12
|
+
message?: string;
|
|
13
|
+
} | undefined>;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
export interface RHFFieldRenderProps<TValue = unknown> {
|
|
17
|
+
field: {
|
|
18
|
+
name: string;
|
|
19
|
+
value: TValue;
|
|
20
|
+
onChange: (v: TValue | unknown) => void;
|
|
21
|
+
onBlur: () => void;
|
|
22
|
+
ref: (instance: unknown) => void;
|
|
23
|
+
};
|
|
24
|
+
fieldState: {
|
|
25
|
+
error?: {
|
|
26
|
+
message?: string;
|
|
27
|
+
};
|
|
28
|
+
isTouched: boolean;
|
|
29
|
+
isDirty: boolean;
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
interface ControllerProps<TValue = unknown> {
|
|
33
|
+
name: string;
|
|
34
|
+
control: RHFControl;
|
|
35
|
+
rules?: object;
|
|
36
|
+
defaultValue?: TValue;
|
|
37
|
+
render: (props: RHFFieldRenderProps<TValue>) => ReactElement;
|
|
38
|
+
}
|
|
39
|
+
export type RHFControllerComponent = ComponentType<ControllerProps<unknown>>;
|
|
40
|
+
interface RHFBaseProps<TValue> {
|
|
41
|
+
name: string;
|
|
42
|
+
control: RHFControl;
|
|
43
|
+
rules?: object;
|
|
44
|
+
defaultValue?: TValue;
|
|
45
|
+
}
|
|
46
|
+
export interface RHFBindings {
|
|
47
|
+
TkxRHFInput: ComponentType<RHFBaseProps<string> & Omit<TkxInputProps, 'value' | 'onChange' | 'onBlur' | 'error' | 'name'>>;
|
|
48
|
+
TkxRHFSelect: ComponentType<RHFBaseProps<string | string[]> & Omit<TkxSelectProps, 'value' | 'onChange' | 'errorMessage'>>;
|
|
49
|
+
TkxRHFCheckbox: ComponentType<RHFBaseProps<boolean> & Omit<TkxCheckboxProps, 'checked' | 'onChange' | 'errorMessage' | 'name'>>;
|
|
50
|
+
TkxRHFToggle: ComponentType<RHFBaseProps<boolean> & Omit<TkxToggleProps, 'checked' | 'onChange'>>;
|
|
51
|
+
TkxRHFRadio: ComponentType<RHFBaseProps<string> & Omit<TkxRadioProps, 'checked' | 'onChange' | 'name'>>;
|
|
52
|
+
TkxRHFNumberInput: ComponentType<RHFBaseProps<number | null> & Omit<TkxNumberInputProps, 'value' | 'onChange' | 'errorMessage'>>;
|
|
53
|
+
TkxRHFDatePicker: ComponentType<RHFBaseProps<Date | null> & Omit<TkxDatePickerProps, 'value' | 'onChange'>>;
|
|
54
|
+
}
|
|
55
|
+
export interface CreateRHFBindingsConfig {
|
|
56
|
+
Controller: RHFControllerComponent;
|
|
57
|
+
}
|
|
58
|
+
export declare function createRHFBindings(config: CreateRHFBindingsConfig): RHFBindings;
|
|
59
|
+
export {};
|
|
@@ -5,13 +5,23 @@ export interface FieldState {
|
|
|
5
5
|
touched: boolean;
|
|
6
6
|
dirty: boolean;
|
|
7
7
|
}
|
|
8
|
+
export type ValidateResult<T> = Partial<Record<keyof T, string>> & {
|
|
9
|
+
_root?: string;
|
|
10
|
+
};
|
|
8
11
|
export interface UseFormStateOptions<T extends Record<string, FormFieldValue>> {
|
|
9
12
|
initialValues: T;
|
|
10
|
-
validate?: (values: T) =>
|
|
13
|
+
validate?: (values: T) => ValidateResult<T>;
|
|
14
|
+
validateAsync?: {
|
|
15
|
+
[K in keyof T]?: (value: T[K], values: T) => Promise<string | null>;
|
|
16
|
+
};
|
|
17
|
+
debounceMs?: number;
|
|
11
18
|
}
|
|
12
19
|
export interface UseFormStateReturn<T extends Record<string, FormFieldValue>> {
|
|
13
20
|
values: T;
|
|
14
21
|
errors: Partial<Record<keyof T, string>>;
|
|
22
|
+
asyncErrors: Partial<Record<keyof T, string>>;
|
|
23
|
+
validating: Partial<Record<keyof T, boolean>>;
|
|
24
|
+
rootError: string | undefined;
|
|
15
25
|
touched: Partial<Record<keyof T, boolean>>;
|
|
16
26
|
dirty: boolean;
|
|
17
27
|
isValid: boolean;
|
|
@@ -28,4 +38,4 @@ export interface UseFormStateReturn<T extends Record<string, FormFieldValue>> {
|
|
|
28
38
|
'aria-describedby': string | undefined;
|
|
29
39
|
};
|
|
30
40
|
}
|
|
31
|
-
export declare function useFormState<T extends Record<string, FormFieldValue>>({ initialValues, validate: validateFn, }: UseFormStateOptions<T>): UseFormStateReturn<T>;
|
|
41
|
+
export declare function useFormState<T extends Record<string, FormFieldValue>>({ initialValues, validate: validateFn, validateAsync, debounceMs, }: UseFormStateOptions<T>): UseFormStateReturn<T>;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { type FormFieldValue, type UseFormStateReturn } from './useFormState';
|
|
2
|
+
export interface ValibotIssueLike {
|
|
3
|
+
path?: {
|
|
4
|
+
key: string | number;
|
|
5
|
+
}[];
|
|
6
|
+
message: string;
|
|
7
|
+
}
|
|
8
|
+
export interface ValibotSafeParseResult {
|
|
9
|
+
success: boolean;
|
|
10
|
+
output?: unknown;
|
|
11
|
+
issues?: ValibotIssueLike[];
|
|
12
|
+
}
|
|
13
|
+
export type ValibotSafeParseFn = (schema: unknown, value: unknown) => ValibotSafeParseResult;
|
|
14
|
+
export interface ValibotResolverConfig<T extends Record<string, FormFieldValue>> {
|
|
15
|
+
safeParse: ValibotSafeParseFn;
|
|
16
|
+
schema: unknown;
|
|
17
|
+
initialValues: T;
|
|
18
|
+
onSubmit?: (values: T) => void | Promise<void>;
|
|
19
|
+
}
|
|
20
|
+
export declare function valibotResolver<T extends Record<string, FormFieldValue>>(safeParse: ValibotSafeParseFn, schema: unknown): (values: T) => Partial<Record<keyof T, string>>;
|
|
21
|
+
export declare function useFormWithValibot<T extends Record<string, FormFieldValue>>(opts: ValibotResolverConfig<T>): UseFormStateReturn<T> & {
|
|
22
|
+
handleSubmit: (e?: {
|
|
23
|
+
preventDefault?: () => void;
|
|
24
|
+
}) => Promise<void>;
|
|
25
|
+
};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { type FormFieldValue, type UseFormStateReturn } from './useFormState';
|
|
2
|
+
export interface ZodIssueLike {
|
|
3
|
+
path: (string | number)[];
|
|
4
|
+
message: string;
|
|
5
|
+
}
|
|
6
|
+
export interface ZodSchemaLike {
|
|
7
|
+
safeParse(value: unknown): {
|
|
8
|
+
success: boolean;
|
|
9
|
+
data?: unknown;
|
|
10
|
+
error?: {
|
|
11
|
+
issues: ZodIssueLike[];
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
export interface ZodResolverConfig<T extends Record<string, FormFieldValue>> {
|
|
16
|
+
schema: ZodSchemaLike;
|
|
17
|
+
initialValues: T;
|
|
18
|
+
onSubmit?: (values: T) => void | Promise<void>;
|
|
19
|
+
}
|
|
20
|
+
export declare function zodResolver<T extends Record<string, FormFieldValue>>(schema: ZodSchemaLike): (values: T) => Partial<Record<keyof T, string>>;
|
|
21
|
+
export declare function useFormWithZod<T extends Record<string, FormFieldValue>>(opts: ZodResolverConfig<T>): UseFormStateReturn<T> & {
|
|
22
|
+
handleSubmit: (e?: {
|
|
23
|
+
preventDefault?: () => void;
|
|
24
|
+
}) => Promise<void>;
|
|
25
|
+
};
|