@nice2dev/ui-ai 1.0.8 → 1.0.10
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/dist/NiceAIHintBubble.d.ts.map +1 -1
- package/dist/NiceAIProvider.d.ts +1 -1
- package/dist/NiceAIProvider.d.ts.map +1 -1
- package/dist/NiceAccessibilityAI.d.ts +98 -0
- package/dist/NiceAccessibilityAI.d.ts.map +1 -0
- package/dist/NiceChartAI.d.ts +112 -0
- package/dist/NiceChartAI.d.ts.map +1 -0
- package/dist/NiceCodeEditorAI.d.ts +114 -0
- package/dist/NiceCodeEditorAI.d.ts.map +1 -0
- package/dist/NiceDataGridAI.d.ts +85 -0
- package/dist/NiceDataGridAI.d.ts.map +1 -0
- package/dist/NiceDataLabeler.d.ts.map +1 -1
- package/dist/NiceFormBuilderAI.d.ts +107 -0
- package/dist/NiceFormBuilderAI.d.ts.map +1 -0
- package/dist/NiceIconSuggestorAI.d.ts +81 -0
- package/dist/NiceIconSuggestorAI.d.ts.map +1 -0
- package/dist/NiceLayoutAI.d.ts +103 -0
- package/dist/NiceLayoutAI.d.ts.map +1 -0
- package/dist/NiceMLStudio.d.ts.map +1 -1
- package/dist/NiceModelInference.d.ts.map +1 -1
- package/dist/NiceReportBuilderAI.d.ts +176 -0
- package/dist/NiceReportBuilderAI.d.ts.map +1 -0
- package/dist/NiceThemeGeneratorAI.d.ts +186 -0
- package/dist/NiceThemeGeneratorAI.d.ts.map +1 -0
- package/dist/NiceWorkflowDesignerAI.d.ts +108 -0
- package/dist/NiceWorkflowDesignerAI.d.ts.map +1 -0
- package/dist/cost-tracker.d.ts +148 -0
- package/dist/cost-tracker.d.ts.map +1 -0
- package/dist/fallback-strategies.d.ts +120 -0
- package/dist/fallback-strategies.d.ts.map +1 -0
- package/dist/index.cjs +3426 -12
- package/dist/index.d.ts +32 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +10496 -1431
- package/dist/integrations.d.ts.map +1 -1
- package/dist/llm-providers.d.ts +180 -0
- package/dist/llm-providers.d.ts.map +1 -0
- package/dist/prompt-templates.d.ts +64 -0
- package/dist/prompt-templates.d.ts.map +1 -0
- package/dist/rateLimiter.d.ts.map +1 -1
- package/dist/streaming.d.ts.map +1 -1
- package/dist/useNiceAIHint.d.ts.map +1 -1
- package/dist/wrappers.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NiceAIHintBubble.d.ts","sourceRoot":"","sources":["../src/NiceAIHintBubble.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"NiceAIHintBubble.d.ts","sourceRoot":"","sources":["../src/NiceAIHintBubble.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,qBAAqB,EAAkB,MAAM,SAAS,CAAC;AAkGrE,eAAO,MAAM,gBAAgB,mHA6O5B,CAAC"}
|
package/dist/NiceAIProvider.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
|
-
import { NiceAIConfig, RateLimitConfig, RateLimitStatus } from './types';
|
|
3
2
|
import { RateLimiter } from './rateLimiter';
|
|
3
|
+
import { NiceAIConfig, RateLimitConfig, RateLimitStatus } from './types';
|
|
4
4
|
|
|
5
5
|
export interface NiceAIProviderProps {
|
|
6
6
|
/** AI endpoint configuration. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NiceAIProvider.d.ts","sourceRoot":"","sources":["../src/NiceAIProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"NiceAIProvider.d.ts","sourceRoot":"","sources":["../src/NiceAIProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA2D,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEhG,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAM9E,MAAM,WAAW,mBAAmB;IAClC,iCAAiC;IACjC,MAAM,EAAE,YAAY,CAAC;IACrB,8BAA8B;IAC9B,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,sDAAsD;IACtD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,6DAA6D;IAC7D,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,UAAU,cAAc;IACtB,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,WAAW,CAAC;IACzB,kBAAkB,EAAE,MAAM,eAAe,CAAC;CAC3C;AAID,wBAAgB,cAAc,CAAC,EAC7B,MAAM,EACN,UAAU,EACV,OAAc,EACd,kBAAkB,EAClB,QAAQ,GACT,EAAE,mBAAmB,2CAqBrB;AAED;;;GAGG;AACH,wBAAgB,YAAY,IAAI,cAAc,GAAG,IAAI,CAEpD"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { NiceAIConfig } from './types';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
|
|
4
|
+
/** WCAG conformance level */
|
|
5
|
+
export type WCAGLevel = 'A' | 'AA' | 'AAA';
|
|
6
|
+
/** Accessibility issue severity */
|
|
7
|
+
export type AIIssueSeverity = 'critical' | 'serious' | 'moderate' | 'minor';
|
|
8
|
+
/** Accessibility issue category */
|
|
9
|
+
export type AIIssueCategory = 'color-contrast' | 'aria-labels' | 'keyboard-nav' | 'focus-management' | 'alt-text' | 'form-labels' | 'headings' | 'landmarks' | 'semantic-html' | 'language' | 'motion' | 'timing';
|
|
10
|
+
/** Accessibility issue */
|
|
11
|
+
export interface AIAccessibilityIssue {
|
|
12
|
+
id: string;
|
|
13
|
+
category: AIIssueCategory;
|
|
14
|
+
severity: AIIssueSeverity;
|
|
15
|
+
wcagCriteria: string;
|
|
16
|
+
wcagLevel: WCAGLevel;
|
|
17
|
+
title: string;
|
|
18
|
+
description: string;
|
|
19
|
+
element?: string;
|
|
20
|
+
selector?: string;
|
|
21
|
+
impact: string;
|
|
22
|
+
suggestion: string;
|
|
23
|
+
codeExample?: string;
|
|
24
|
+
automated?: boolean;
|
|
25
|
+
}
|
|
26
|
+
/** Contrast check result */
|
|
27
|
+
export interface AIContrastResult {
|
|
28
|
+
foreground: string;
|
|
29
|
+
background: string;
|
|
30
|
+
ratio: number;
|
|
31
|
+
passesAA: boolean;
|
|
32
|
+
passesAALarge: boolean;
|
|
33
|
+
passesAAA: boolean;
|
|
34
|
+
passesAAALarge: boolean;
|
|
35
|
+
suggestions?: string[];
|
|
36
|
+
}
|
|
37
|
+
/** ARIA check result */
|
|
38
|
+
export interface AIARIAResult {
|
|
39
|
+
element: string;
|
|
40
|
+
hasRole?: boolean;
|
|
41
|
+
hasLabel?: boolean;
|
|
42
|
+
role?: string;
|
|
43
|
+
label?: string;
|
|
44
|
+
issues: string[];
|
|
45
|
+
suggestions: string[];
|
|
46
|
+
}
|
|
47
|
+
/** Accessibility audit result */
|
|
48
|
+
export interface AIAccessibilityAudit {
|
|
49
|
+
timestamp: Date;
|
|
50
|
+
target: string;
|
|
51
|
+
wcagLevel: WCAGLevel;
|
|
52
|
+
issues: AIAccessibilityIssue[];
|
|
53
|
+
score: number;
|
|
54
|
+
summary: {
|
|
55
|
+
critical: number;
|
|
56
|
+
serious: number;
|
|
57
|
+
moderate: number;
|
|
58
|
+
minor: number;
|
|
59
|
+
passed: number;
|
|
60
|
+
};
|
|
61
|
+
recommendations: string[];
|
|
62
|
+
}
|
|
63
|
+
/** Hook options */
|
|
64
|
+
export interface UseAccessibilityAIOptions {
|
|
65
|
+
config?: NiceAIConfig;
|
|
66
|
+
wcagLevel?: WCAGLevel;
|
|
67
|
+
onAuditComplete?: (audit: AIAccessibilityAudit) => void;
|
|
68
|
+
onError?: (error: string) => void;
|
|
69
|
+
}
|
|
70
|
+
export declare function useAccessibilityAI(options?: UseAccessibilityAIOptions): {
|
|
71
|
+
analyzeHTML: (html: string, context?: string) => Promise<AIAccessibilityAudit>;
|
|
72
|
+
checkContrast: (foreground: string, background: string) => AIContrastResult;
|
|
73
|
+
validateARIA: (html: string) => Promise<AIARIAResult[]>;
|
|
74
|
+
suggestAccessibleCode: (html: string) => Promise<string>;
|
|
75
|
+
loading: boolean;
|
|
76
|
+
lastAudit: AIAccessibilityAudit | null;
|
|
77
|
+
clearAudit: () => void;
|
|
78
|
+
abort: () => void;
|
|
79
|
+
isConfigured: boolean;
|
|
80
|
+
};
|
|
81
|
+
export interface NiceAccessibilityAIProps {
|
|
82
|
+
/** AI configuration override */
|
|
83
|
+
config?: NiceAIConfig;
|
|
84
|
+
/** Target WCAG level */
|
|
85
|
+
wcagLevel?: WCAGLevel;
|
|
86
|
+
/** Callback when audit completes */
|
|
87
|
+
onAuditComplete?: (audit: AIAccessibilityAudit) => void;
|
|
88
|
+
/** Show contrast checker */
|
|
89
|
+
showContrastChecker?: boolean;
|
|
90
|
+
/** Custom class name */
|
|
91
|
+
className?: string;
|
|
92
|
+
/** Custom styles */
|
|
93
|
+
style?: React.CSSProperties;
|
|
94
|
+
/** Custom issue renderer */
|
|
95
|
+
renderIssue?: (issue: AIAccessibilityIssue) => ReactNode;
|
|
96
|
+
}
|
|
97
|
+
export declare function NiceAccessibilityAI({ config, wcagLevel, onAuditComplete, showContrastChecker, className, style, renderIssue, }: NiceAccessibilityAIProps): import("react/jsx-runtime").JSX.Element;
|
|
98
|
+
//# sourceMappingURL=NiceAccessibilityAI.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NiceAccessibilityAI.d.ts","sourceRoot":"","sources":["../src/NiceAccessibilityAI.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { NiceAIConfig } from './types';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
|
|
4
|
+
/** Chart type */
|
|
5
|
+
export type AIChartType = 'line' | 'area' | 'bar' | 'column' | 'pie' | 'donut' | 'scatter' | 'bubble' | 'heatmap' | 'treemap' | 'funnel' | 'radar' | 'polar' | 'gauge' | 'candlestick' | 'sankey';
|
|
6
|
+
/** Data field definition */
|
|
7
|
+
export interface AIDataField {
|
|
8
|
+
name: string;
|
|
9
|
+
type: 'string' | 'number' | 'date' | 'boolean';
|
|
10
|
+
label?: string;
|
|
11
|
+
sampleValues?: unknown[];
|
|
12
|
+
}
|
|
13
|
+
/** Series configuration */
|
|
14
|
+
export interface AIChartSeries {
|
|
15
|
+
name: string;
|
|
16
|
+
field: string;
|
|
17
|
+
type?: AIChartType;
|
|
18
|
+
color?: string;
|
|
19
|
+
yAxis?: number;
|
|
20
|
+
}
|
|
21
|
+
/** Axis configuration */
|
|
22
|
+
export interface AIChartAxis {
|
|
23
|
+
title?: string;
|
|
24
|
+
type?: 'category' | 'value' | 'time' | 'log';
|
|
25
|
+
field?: string;
|
|
26
|
+
min?: number;
|
|
27
|
+
max?: number;
|
|
28
|
+
format?: string;
|
|
29
|
+
}
|
|
30
|
+
/** Generated chart configuration */
|
|
31
|
+
export interface AIChartConfig {
|
|
32
|
+
type: AIChartType;
|
|
33
|
+
title?: string;
|
|
34
|
+
subtitle?: string;
|
|
35
|
+
data: {
|
|
36
|
+
source?: string;
|
|
37
|
+
xAxis?: string;
|
|
38
|
+
yAxis?: string;
|
|
39
|
+
series?: AIChartSeries[];
|
|
40
|
+
aggregation?: 'sum' | 'avg' | 'count' | 'min' | 'max';
|
|
41
|
+
groupBy?: string;
|
|
42
|
+
};
|
|
43
|
+
xAxis?: AIChartAxis;
|
|
44
|
+
yAxis?: AIChartAxis | AIChartAxis[];
|
|
45
|
+
options?: {
|
|
46
|
+
legend?: boolean | {
|
|
47
|
+
position: 'top' | 'bottom' | 'left' | 'right';
|
|
48
|
+
};
|
|
49
|
+
tooltip?: boolean;
|
|
50
|
+
animation?: boolean;
|
|
51
|
+
stacked?: boolean;
|
|
52
|
+
colors?: string[];
|
|
53
|
+
aspectRatio?: number;
|
|
54
|
+
responsive?: boolean;
|
|
55
|
+
dataLabels?: boolean;
|
|
56
|
+
zoom?: boolean;
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
/** Chart generation result */
|
|
60
|
+
export interface AIChartResult {
|
|
61
|
+
config?: AIChartConfig;
|
|
62
|
+
rawResponse?: string;
|
|
63
|
+
error?: string;
|
|
64
|
+
latencyMs?: number;
|
|
65
|
+
suggestions?: string[];
|
|
66
|
+
}
|
|
67
|
+
/** Hook options */
|
|
68
|
+
export interface UseChartAIOptions {
|
|
69
|
+
config?: NiceAIConfig;
|
|
70
|
+
dataFields?: AIDataField[];
|
|
71
|
+
context?: string;
|
|
72
|
+
onChartGenerated?: (config: AIChartConfig) => void;
|
|
73
|
+
onError?: (error: string) => void;
|
|
74
|
+
}
|
|
75
|
+
export declare function useChartAI(options?: UseChartAIOptions): {
|
|
76
|
+
generateChart: (request: string) => Promise<AIChartResult>;
|
|
77
|
+
suggestAlternatives: () => Promise<string[]>;
|
|
78
|
+
loading: boolean;
|
|
79
|
+
lastRequest: string | null;
|
|
80
|
+
lastResult: AIChartResult | null;
|
|
81
|
+
history: {
|
|
82
|
+
request: string;
|
|
83
|
+
result: AIChartResult;
|
|
84
|
+
}[];
|
|
85
|
+
clearResults: () => void;
|
|
86
|
+
abort: () => void;
|
|
87
|
+
isConfigured: boolean;
|
|
88
|
+
};
|
|
89
|
+
export interface NiceChartAIProps {
|
|
90
|
+
/** AI configuration override */
|
|
91
|
+
config?: NiceAIConfig;
|
|
92
|
+
/** Available data fields */
|
|
93
|
+
dataFields?: AIDataField[];
|
|
94
|
+
/** Additional context */
|
|
95
|
+
context?: string;
|
|
96
|
+
/** Callback when chart config is generated */
|
|
97
|
+
onGenerate?: (config: AIChartConfig) => void;
|
|
98
|
+
/** Custom placeholder text */
|
|
99
|
+
placeholder?: string;
|
|
100
|
+
/** Show chart type suggestions */
|
|
101
|
+
showTypeSelector?: boolean;
|
|
102
|
+
/** Show config preview */
|
|
103
|
+
showPreview?: boolean;
|
|
104
|
+
/** Custom class name */
|
|
105
|
+
className?: string;
|
|
106
|
+
/** Custom styles */
|
|
107
|
+
style?: React.CSSProperties;
|
|
108
|
+
/** Custom chart renderer */
|
|
109
|
+
renderChart?: (config: AIChartConfig) => ReactNode;
|
|
110
|
+
}
|
|
111
|
+
export declare function NiceChartAI({ config, dataFields, context, onGenerate, placeholder, showTypeSelector, showPreview, className, style, renderChart, }: NiceChartAIProps): import("react/jsx-runtime").JSX.Element;
|
|
112
|
+
//# sourceMappingURL=NiceChartAI.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NiceChartAI.d.ts","sourceRoot":"","sources":["../src/NiceChartAI.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { NiceAIConfig } from './types';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
|
|
4
|
+
/** Supported programming languages */
|
|
5
|
+
export type AIProgrammingLanguage = 'javascript' | 'typescript' | 'python' | 'java' | 'csharp' | 'cpp' | 'go' | 'rust' | 'ruby' | 'php' | 'swift' | 'kotlin' | 'dart' | 'sql' | 'html' | 'css' | 'json' | 'yaml' | 'markdown' | 'shell' | 'powershell';
|
|
6
|
+
/** Completion type */
|
|
7
|
+
export type AICompletionType = 'inline' | 'block' | 'refactor' | 'explain' | 'test' | 'docs';
|
|
8
|
+
/** Code completion suggestion */
|
|
9
|
+
export interface AICodeSuggestion {
|
|
10
|
+
id: string;
|
|
11
|
+
text: string;
|
|
12
|
+
type: AICompletionType;
|
|
13
|
+
preview: string;
|
|
14
|
+
confidence: number;
|
|
15
|
+
insertPosition: {
|
|
16
|
+
line: number;
|
|
17
|
+
column: number;
|
|
18
|
+
};
|
|
19
|
+
replaceRange?: {
|
|
20
|
+
start: {
|
|
21
|
+
line: number;
|
|
22
|
+
column: number;
|
|
23
|
+
};
|
|
24
|
+
end: {
|
|
25
|
+
line: number;
|
|
26
|
+
column: number;
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
/** Code completion result */
|
|
31
|
+
export interface AICodeCompletionResult {
|
|
32
|
+
suggestions: AICodeSuggestion[];
|
|
33
|
+
rawResponse?: string;
|
|
34
|
+
error?: string;
|
|
35
|
+
latencyMs?: number;
|
|
36
|
+
}
|
|
37
|
+
/** Code explanation result */
|
|
38
|
+
export interface AICodeExplanation {
|
|
39
|
+
summary: string;
|
|
40
|
+
details?: string;
|
|
41
|
+
complexity?: 'low' | 'medium' | 'high';
|
|
42
|
+
suggestions?: string[];
|
|
43
|
+
}
|
|
44
|
+
/** Code refactoring suggestion */
|
|
45
|
+
export interface AIRefactoringSuggestion {
|
|
46
|
+
title: string;
|
|
47
|
+
description: string;
|
|
48
|
+
before: string;
|
|
49
|
+
after: string;
|
|
50
|
+
type: 'extract-function' | 'rename' | 'simplify' | 'optimize' | 'security' | 'style';
|
|
51
|
+
}
|
|
52
|
+
/** Hook options */
|
|
53
|
+
export interface UseCodeEditorAIOptions {
|
|
54
|
+
config?: NiceAIConfig;
|
|
55
|
+
language?: AIProgrammingLanguage;
|
|
56
|
+
context?: string;
|
|
57
|
+
maxSuggestions?: number;
|
|
58
|
+
debounceMs?: number;
|
|
59
|
+
onSuggestion?: (suggestions: AICodeSuggestion[]) => void;
|
|
60
|
+
onError?: (error: string) => void;
|
|
61
|
+
}
|
|
62
|
+
export declare function useCodeEditorAI(options?: UseCodeEditorAIOptions): {
|
|
63
|
+
getCompletions: (code: string, cursor: {
|
|
64
|
+
line: number;
|
|
65
|
+
column: number;
|
|
66
|
+
}) => Promise<AICodeCompletionResult>;
|
|
67
|
+
getCompletionsDebounced: (code: string, cursor: {
|
|
68
|
+
line: number;
|
|
69
|
+
column: number;
|
|
70
|
+
}) => void;
|
|
71
|
+
suggestions: AICodeSuggestion[];
|
|
72
|
+
activeSuggestion: number;
|
|
73
|
+
acceptSuggestion: (index?: number) => AICodeSuggestion;
|
|
74
|
+
dismissSuggestions: () => void;
|
|
75
|
+
navigateSuggestions: (direction: "up" | "down") => void;
|
|
76
|
+
explainCode: (code: string) => Promise<AICodeExplanation | null>;
|
|
77
|
+
suggestRefactoring: (code: string) => Promise<AIRefactoringSuggestion[]>;
|
|
78
|
+
generateTests: (code: string, framework?: string) => Promise<string | null>;
|
|
79
|
+
generateDocs: (code: string, style?: "jsdoc" | "tsdoc" | "docstring" | "javadoc") => Promise<string | null>;
|
|
80
|
+
loading: boolean;
|
|
81
|
+
abort: () => void;
|
|
82
|
+
isConfigured: boolean;
|
|
83
|
+
};
|
|
84
|
+
export interface NiceCodeEditorAIProps {
|
|
85
|
+
/** Initial code */
|
|
86
|
+
code?: string;
|
|
87
|
+
/** Language */
|
|
88
|
+
language?: AIProgrammingLanguage;
|
|
89
|
+
/** AI configuration override */
|
|
90
|
+
config?: NiceAIConfig;
|
|
91
|
+
/** Callback when code changes */
|
|
92
|
+
onChange?: (code: string) => void;
|
|
93
|
+
/** Callback when suggestion is accepted */
|
|
94
|
+
onAcceptSuggestion?: (suggestion: AICodeSuggestion) => void;
|
|
95
|
+
/** Show AI toolbar */
|
|
96
|
+
showToolbar?: boolean;
|
|
97
|
+
/** Enable inline suggestions */
|
|
98
|
+
enableInlineSuggestions?: boolean;
|
|
99
|
+
/** Placeholder text */
|
|
100
|
+
placeholder?: string;
|
|
101
|
+
/** Custom class name */
|
|
102
|
+
className?: string;
|
|
103
|
+
/** Custom styles */
|
|
104
|
+
style?: React.CSSProperties;
|
|
105
|
+
/** Custom editor render */
|
|
106
|
+
renderEditor?: (props: {
|
|
107
|
+
code: string;
|
|
108
|
+
onChange: (code: string) => void;
|
|
109
|
+
suggestions: AICodeSuggestion[];
|
|
110
|
+
onAccept: (index: number) => void;
|
|
111
|
+
}) => ReactNode;
|
|
112
|
+
}
|
|
113
|
+
export declare function NiceCodeEditorAI({ code: initialCode, language, config, onChange, onAcceptSuggestion, showToolbar, enableInlineSuggestions, placeholder, className, style, renderEditor, }: NiceCodeEditorAIProps): import("react/jsx-runtime").JSX.Element;
|
|
114
|
+
//# sourceMappingURL=NiceCodeEditorAI.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NiceCodeEditorAI.d.ts","sourceRoot":"","sources":["../src/NiceCodeEditorAI.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { NiceAIConfig } from './types';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
|
|
4
|
+
/** Column definition for AI processing */
|
|
5
|
+
export interface AIColumnDef {
|
|
6
|
+
id: string;
|
|
7
|
+
label: string;
|
|
8
|
+
type: 'string' | 'number' | 'date' | 'boolean' | 'enum';
|
|
9
|
+
options?: string[];
|
|
10
|
+
}
|
|
11
|
+
/** Generated filter */
|
|
12
|
+
export interface AIFilter {
|
|
13
|
+
column: string;
|
|
14
|
+
operator: string;
|
|
15
|
+
value: unknown;
|
|
16
|
+
}
|
|
17
|
+
/** Generated filter configuration */
|
|
18
|
+
export interface AIFilterConfig {
|
|
19
|
+
filters: AIFilter[];
|
|
20
|
+
logic: 'and' | 'or';
|
|
21
|
+
confidence?: number;
|
|
22
|
+
explanation?: string;
|
|
23
|
+
}
|
|
24
|
+
/** Generated sort configuration */
|
|
25
|
+
export interface AISortConfig {
|
|
26
|
+
sort: Array<{
|
|
27
|
+
column: string;
|
|
28
|
+
direction: 'asc' | 'desc';
|
|
29
|
+
}>;
|
|
30
|
+
confidence?: number;
|
|
31
|
+
}
|
|
32
|
+
/** AI query result */
|
|
33
|
+
export interface AIQueryResult {
|
|
34
|
+
type: 'filter' | 'sort' | 'combined';
|
|
35
|
+
filterConfig?: AIFilterConfig;
|
|
36
|
+
sortConfig?: AISortConfig;
|
|
37
|
+
rawResponse?: string;
|
|
38
|
+
error?: string;
|
|
39
|
+
latencyMs?: number;
|
|
40
|
+
}
|
|
41
|
+
/** Hook options */
|
|
42
|
+
export interface UseDataGridAIOptions {
|
|
43
|
+
columns: AIColumnDef[];
|
|
44
|
+
config?: NiceAIConfig;
|
|
45
|
+
onFilterGenerated?: (config: AIFilterConfig) => void;
|
|
46
|
+
onSortGenerated?: (config: AISortConfig) => void;
|
|
47
|
+
onError?: (error: string) => void;
|
|
48
|
+
}
|
|
49
|
+
export declare function useDataGridAI(options: UseDataGridAIOptions): {
|
|
50
|
+
processQuery: (query: string) => Promise<AIQueryResult>;
|
|
51
|
+
loading: boolean;
|
|
52
|
+
lastQuery: string | null;
|
|
53
|
+
lastResult: AIQueryResult | null;
|
|
54
|
+
history: {
|
|
55
|
+
query: string;
|
|
56
|
+
result: AIQueryResult;
|
|
57
|
+
}[];
|
|
58
|
+
clearResults: () => void;
|
|
59
|
+
abort: () => void;
|
|
60
|
+
isConfigured: boolean;
|
|
61
|
+
};
|
|
62
|
+
export interface NiceDataGridAIProps {
|
|
63
|
+
/** Column definitions */
|
|
64
|
+
columns: AIColumnDef[];
|
|
65
|
+
/** AI configuration override */
|
|
66
|
+
config?: NiceAIConfig;
|
|
67
|
+
/** Callback when filter is generated */
|
|
68
|
+
onFilter?: (config: AIFilterConfig) => void;
|
|
69
|
+
/** Callback when sort is generated */
|
|
70
|
+
onSort?: (config: AISortConfig) => void;
|
|
71
|
+
/** Custom placeholder text */
|
|
72
|
+
placeholder?: string;
|
|
73
|
+
/** Show query history dropdown */
|
|
74
|
+
showHistory?: boolean;
|
|
75
|
+
/** Show suggested queries */
|
|
76
|
+
showSuggestions?: boolean;
|
|
77
|
+
/** Custom class name */
|
|
78
|
+
className?: string;
|
|
79
|
+
/** Custom styles */
|
|
80
|
+
style?: React.CSSProperties;
|
|
81
|
+
/** Children to render in expanded state */
|
|
82
|
+
children?: ReactNode;
|
|
83
|
+
}
|
|
84
|
+
export declare function NiceDataGridAI({ columns, config, onFilter, onSort, placeholder, showHistory, showSuggestions, className, style, }: NiceDataGridAIProps): import("react/jsx-runtime").JSX.Element;
|
|
85
|
+
//# sourceMappingURL=NiceDataGridAI.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NiceDataGridAI.d.ts","sourceRoot":"","sources":["../src/NiceDataGridAI.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NiceDataLabeler.d.ts","sourceRoot":"","sources":["../src/NiceDataLabeler.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"NiceDataLabeler.d.ts","sourceRoot":"","sources":["../src/NiceDataLabeler.tsx"],"names":[],"mappings":"AACA;;;;GAIG;AAEH,OAAO,KAAmD,MAAM,OAAO,CAAC;AAExE,OAAO,KAAK,EACV,oBAAoB,EAOrB,MAAM,YAAY,CAAC;AAyCpB,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CA0yB1D,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { NiceAIConfig } from './types';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
|
|
4
|
+
/** Form field definition */
|
|
5
|
+
export interface AIFormField {
|
|
6
|
+
id: string;
|
|
7
|
+
type: string;
|
|
8
|
+
label: string;
|
|
9
|
+
required?: boolean;
|
|
10
|
+
placeholder?: string;
|
|
11
|
+
defaultValue?: unknown;
|
|
12
|
+
validation?: {
|
|
13
|
+
min?: number;
|
|
14
|
+
max?: number;
|
|
15
|
+
minLength?: number;
|
|
16
|
+
maxLength?: number;
|
|
17
|
+
pattern?: string;
|
|
18
|
+
message?: string;
|
|
19
|
+
};
|
|
20
|
+
options?: Array<{
|
|
21
|
+
value: string;
|
|
22
|
+
label: string;
|
|
23
|
+
}>;
|
|
24
|
+
conditional?: {
|
|
25
|
+
dependsOn: string;
|
|
26
|
+
showWhen: unknown;
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
/** Form layout configuration */
|
|
30
|
+
export interface AIFormLayout {
|
|
31
|
+
columns?: 1 | 2 | 3 | 4;
|
|
32
|
+
sections?: Array<{
|
|
33
|
+
id?: string;
|
|
34
|
+
title?: string;
|
|
35
|
+
description?: string;
|
|
36
|
+
fields: string[];
|
|
37
|
+
collapsible?: boolean;
|
|
38
|
+
defaultExpanded?: boolean;
|
|
39
|
+
}>;
|
|
40
|
+
}
|
|
41
|
+
/** Generated form configuration */
|
|
42
|
+
export interface AIFormConfig {
|
|
43
|
+
title?: string;
|
|
44
|
+
description?: string;
|
|
45
|
+
fields: AIFormField[];
|
|
46
|
+
layout?: AIFormLayout;
|
|
47
|
+
submitLabel?: string;
|
|
48
|
+
validation?: {
|
|
49
|
+
validateOnBlur?: boolean;
|
|
50
|
+
validateOnChange?: boolean;
|
|
51
|
+
showErrors?: 'all' | 'first' | 'touched';
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
/** Form generation result */
|
|
55
|
+
export interface AIFormResult {
|
|
56
|
+
config?: AIFormConfig;
|
|
57
|
+
rawResponse?: string;
|
|
58
|
+
error?: string;
|
|
59
|
+
latencyMs?: number;
|
|
60
|
+
confidence?: number;
|
|
61
|
+
}
|
|
62
|
+
/** Hook options */
|
|
63
|
+
export interface UseFormBuilderAIOptions {
|
|
64
|
+
config?: NiceAIConfig;
|
|
65
|
+
schema?: Record<string, unknown>;
|
|
66
|
+
context?: string;
|
|
67
|
+
onFormGenerated?: (config: AIFormConfig) => void;
|
|
68
|
+
onError?: (error: string) => void;
|
|
69
|
+
}
|
|
70
|
+
export declare function useFormBuilderAI(options?: UseFormBuilderAIOptions): {
|
|
71
|
+
generateForm: (description: string) => Promise<AIFormResult>;
|
|
72
|
+
refineForm: (instructions: string) => Promise<AIFormResult>;
|
|
73
|
+
loading: boolean;
|
|
74
|
+
lastDescription: string | null;
|
|
75
|
+
lastResult: AIFormResult | null;
|
|
76
|
+
history: {
|
|
77
|
+
description: string;
|
|
78
|
+
result: AIFormResult;
|
|
79
|
+
}[];
|
|
80
|
+
clearResults: () => void;
|
|
81
|
+
abort: () => void;
|
|
82
|
+
isConfigured: boolean;
|
|
83
|
+
};
|
|
84
|
+
export interface NiceFormBuilderAIProps {
|
|
85
|
+
/** AI configuration override */
|
|
86
|
+
config?: NiceAIConfig;
|
|
87
|
+
/** Existing data schema for reference */
|
|
88
|
+
schema?: Record<string, unknown>;
|
|
89
|
+
/** Additional context */
|
|
90
|
+
context?: string;
|
|
91
|
+
/** Callback when form is generated */
|
|
92
|
+
onGenerate?: (config: AIFormConfig) => void;
|
|
93
|
+
/** Custom placeholder text */
|
|
94
|
+
placeholder?: string;
|
|
95
|
+
/** Show example prompts */
|
|
96
|
+
showExamples?: boolean;
|
|
97
|
+
/** Preview generated form */
|
|
98
|
+
showPreview?: boolean;
|
|
99
|
+
/** Custom class name */
|
|
100
|
+
className?: string;
|
|
101
|
+
/** Custom styles */
|
|
102
|
+
style?: React.CSSProperties;
|
|
103
|
+
/** Custom form renderer */
|
|
104
|
+
renderForm?: (config: AIFormConfig) => ReactNode;
|
|
105
|
+
}
|
|
106
|
+
export declare function NiceFormBuilderAI({ config, schema, context, onGenerate, placeholder, showExamples, showPreview, className, style, renderForm, }: NiceFormBuilderAIProps): import("react/jsx-runtime").JSX.Element;
|
|
107
|
+
//# sourceMappingURL=NiceFormBuilderAI.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NiceFormBuilderAI.d.ts","sourceRoot":"","sources":["../src/NiceFormBuilderAI.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { NiceAIConfig } from './types';
|
|
2
|
+
|
|
3
|
+
/** Icon style */
|
|
4
|
+
export type AIIconStyle = 'outline' | 'solid' | 'duotone' | 'light' | 'regular' | 'bold';
|
|
5
|
+
/** Icon category */
|
|
6
|
+
export type AIIconCategory = 'action' | 'alert' | 'av' | 'communication' | 'content' | 'device' | 'editor' | 'file' | 'hardware' | 'home' | 'image' | 'maps' | 'navigation' | 'notification' | 'places' | 'social' | 'toggle' | 'business' | 'finance' | 'security' | 'weather' | 'gaming';
|
|
7
|
+
/** Icon library */
|
|
8
|
+
export type AIIconLibrary = 'material' | 'lucide' | 'feather' | 'heroicons' | 'fontawesome' | 'phosphor' | 'tabler' | 'ionicons';
|
|
9
|
+
/** Suggested icon */
|
|
10
|
+
export interface AISuggestedIcon {
|
|
11
|
+
id: string;
|
|
12
|
+
name: string;
|
|
13
|
+
displayName: string;
|
|
14
|
+
category: AIIconCategory;
|
|
15
|
+
style?: AIIconStyle;
|
|
16
|
+
library?: AIIconLibrary;
|
|
17
|
+
relevanceScore: number;
|
|
18
|
+
keywords: string[];
|
|
19
|
+
svgPath?: string;
|
|
20
|
+
unicode?: string;
|
|
21
|
+
usage?: string;
|
|
22
|
+
}
|
|
23
|
+
/** Icon suggestion result */
|
|
24
|
+
export interface AIIconSuggestionResult {
|
|
25
|
+
query: string;
|
|
26
|
+
suggestions: AISuggestedIcon[];
|
|
27
|
+
alternativeQueries?: string[];
|
|
28
|
+
latencyMs?: number;
|
|
29
|
+
error?: string;
|
|
30
|
+
}
|
|
31
|
+
/** Context for suggestions */
|
|
32
|
+
export interface AIIconContext {
|
|
33
|
+
componentType?: string;
|
|
34
|
+
purpose?: string;
|
|
35
|
+
relatedIcons?: string[];
|
|
36
|
+
theme?: 'light' | 'dark';
|
|
37
|
+
preferredStyle?: AIIconStyle;
|
|
38
|
+
preferredLibrary?: AIIconLibrary;
|
|
39
|
+
}
|
|
40
|
+
/** Hook options */
|
|
41
|
+
export interface UseIconSuggestorAIOptions {
|
|
42
|
+
config?: NiceAIConfig;
|
|
43
|
+
defaultLibrary?: AIIconLibrary;
|
|
44
|
+
defaultStyle?: AIIconStyle;
|
|
45
|
+
maxSuggestions?: number;
|
|
46
|
+
onSuggestion?: (result: AIIconSuggestionResult) => void;
|
|
47
|
+
onError?: (error: string) => void;
|
|
48
|
+
}
|
|
49
|
+
export declare function useIconSuggestorAI(options?: UseIconSuggestorAIOptions): {
|
|
50
|
+
suggestIcons: (query: string, context?: AIIconContext) => Promise<AIIconSuggestionResult>;
|
|
51
|
+
localSearch: (query: string) => AISuggestedIcon[];
|
|
52
|
+
getByCategory: (category: AIIconCategory) => AISuggestedIcon[];
|
|
53
|
+
categories: AIIconCategory[];
|
|
54
|
+
loading: boolean;
|
|
55
|
+
lastResult: AIIconSuggestionResult | null;
|
|
56
|
+
clearResults: () => void;
|
|
57
|
+
abort: () => void;
|
|
58
|
+
isConfigured: boolean;
|
|
59
|
+
};
|
|
60
|
+
export interface NiceIconSuggestorAIProps {
|
|
61
|
+
/** AI configuration override */
|
|
62
|
+
config?: NiceAIConfig;
|
|
63
|
+
/** Default icon library */
|
|
64
|
+
defaultLibrary?: AIIconLibrary;
|
|
65
|
+
/** Default icon style */
|
|
66
|
+
defaultStyle?: AIIconStyle;
|
|
67
|
+
/** Max suggestions */
|
|
68
|
+
maxSuggestions?: number;
|
|
69
|
+
/** Callback when icon is selected */
|
|
70
|
+
onSelect?: (icon: AISuggestedIcon) => void;
|
|
71
|
+
/** Show category filter */
|
|
72
|
+
showCategories?: boolean;
|
|
73
|
+
/** Show preview */
|
|
74
|
+
showPreview?: boolean;
|
|
75
|
+
/** Custom class name */
|
|
76
|
+
className?: string;
|
|
77
|
+
/** Custom styles */
|
|
78
|
+
style?: React.CSSProperties;
|
|
79
|
+
}
|
|
80
|
+
export declare function NiceIconSuggestorAI({ config, defaultLibrary, defaultStyle, maxSuggestions, onSelect, showCategories, showPreview, className, style, }: NiceIconSuggestorAIProps): import("react/jsx-runtime").JSX.Element;
|
|
81
|
+
//# sourceMappingURL=NiceIconSuggestorAI.d.ts.map
|