@genfeedai/workflow-ui 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/canvas.d.mts +27 -0
- package/dist/canvas.d.ts +27 -0
- package/dist/canvas.js +45 -0
- package/dist/canvas.mjs +16 -0
- package/dist/chunk-22PDGHNQ.mjs +737 -0
- package/dist/chunk-3SPPKCWR.js +458 -0
- package/dist/chunk-3YFFDHC5.js +300 -0
- package/dist/chunk-5HJFQVUR.js +61 -0
- package/dist/chunk-5LQ4QBR5.js +2 -0
- package/dist/chunk-6DOEUDD5.js +254 -0
- package/dist/chunk-7SKSRSS7.mjs +57 -0
- package/dist/chunk-AC6TWLRT.mjs +27 -0
- package/dist/chunk-ADWNF7V3.js +120 -0
- package/dist/chunk-BJ3R5R32.mjs +2163 -0
- package/dist/chunk-CETJJ73S.js +1555 -0
- package/dist/chunk-CSUBLSKZ.mjs +1002 -0
- package/dist/chunk-CV4M7CNU.mjs +251 -0
- package/dist/chunk-E323WAZG.mjs +272 -0
- package/dist/chunk-E544XUBL.js +378 -0
- package/dist/chunk-EC2ZIWOK.js +1007 -0
- package/dist/chunk-EFXQT23N.mjs +99 -0
- package/dist/chunk-EMUMKW5C.js +107 -0
- package/dist/chunk-FOMOOERN.js +2 -0
- package/dist/chunk-FT33LFII.mjs +21 -0
- package/dist/chunk-FT64PCUP.mjs +533 -0
- package/dist/chunk-H6LZKSLY.js +5678 -0
- package/dist/chunk-HPQT36RR.js +543 -0
- package/dist/chunk-JLWKW3G5.js +2 -0
- package/dist/chunk-L5TF4EHW.mjs +1 -0
- package/dist/chunk-LAJ34AH2.mjs +374 -0
- package/dist/chunk-LDN7IX4Y.mjs +1 -0
- package/dist/chunk-MLJJBBTB.mjs +1 -0
- package/dist/chunk-NSDLGLAQ.js +2166 -0
- package/dist/chunk-RJ262NXS.js +24 -0
- package/dist/chunk-RXNEDWK2.js +141 -0
- package/dist/chunk-SW7QNEZU.js +744 -0
- package/dist/chunk-UQQUWGHW.mjs +118 -0
- package/dist/chunk-VOGL2WCE.mjs +1542 -0
- package/dist/chunk-VRN3UWE5.mjs +138 -0
- package/dist/chunk-XV5Z5XYR.mjs +5640 -0
- package/dist/chunk-Z7PWFZG5.js +30 -0
- package/dist/chunk-ZJD5WMR3.mjs +418 -0
- package/dist/hooks.d.mts +255 -0
- package/dist/hooks.d.ts +255 -0
- package/dist/hooks.js +56 -0
- package/dist/hooks.mjs +11 -0
- package/dist/index.d.mts +29 -0
- package/dist/index.d.ts +29 -0
- package/dist/index.js +180 -0
- package/dist/index.mjs +19 -0
- package/dist/lib.d.mts +164 -0
- package/dist/lib.d.ts +164 -0
- package/dist/lib.js +144 -0
- package/dist/lib.mjs +3 -0
- package/dist/nodes.d.mts +128 -0
- package/dist/nodes.d.ts +128 -0
- package/dist/nodes.js +151 -0
- package/dist/nodes.mjs +14 -0
- package/dist/panels.d.mts +22 -0
- package/dist/panels.d.ts +22 -0
- package/dist/panels.js +21 -0
- package/dist/panels.mjs +4 -0
- package/dist/promptLibraryStore-BZnfmEkc.d.ts +464 -0
- package/dist/promptLibraryStore-zqb59nsu.d.mts +464 -0
- package/dist/provider.d.mts +29 -0
- package/dist/provider.d.ts +29 -0
- package/dist/provider.js +17 -0
- package/dist/provider.mjs +4 -0
- package/dist/stores.d.mts +96 -0
- package/dist/stores.d.ts +96 -0
- package/dist/stores.js +113 -0
- package/dist/stores.mjs +43 -0
- package/dist/toolbar.d.mts +73 -0
- package/dist/toolbar.d.ts +73 -0
- package/dist/toolbar.js +34 -0
- package/dist/toolbar.mjs +5 -0
- package/dist/types-ipAnBzAJ.d.mts +46 -0
- package/dist/types-ipAnBzAJ.d.ts +46 -0
- package/dist/ui.d.mts +67 -0
- package/dist/ui.d.ts +67 -0
- package/dist/ui.js +84 -0
- package/dist/ui.mjs +3 -0
- package/dist/workflowStore-4EGKJLYK.mjs +3 -0
- package/dist/workflowStore-KM32FDL7.js +12 -0
- package/package.json +117 -0
- package/src/styles/workflow-ui.css +186 -0
package/dist/stores.d.ts
ADDED
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { W as WorkflowStore } from './promptLibraryStore-BZnfmEkc.js';
|
|
2
|
+
export { p as AnnotationShape, A as AnnotationTool, n as ArrowShape, B as BaseShape, C as CircleShape, D as DebugPayload, k as DefaultModelSettings, E as ExecutionStore, F as FreehandShape, J as Job, M as ModalType, N as NodeDetailTab, l as PROVIDER_INFO, P as ProviderConfig, j as ProviderSettings, R as RecentModel, m as RectangleShape, o as TextShape, T as ToolOptions, h as WorkflowData, i as WorkflowState, g as configurePromptLibrary, e as useAnnotationStore, b as useExecutionStore, d as usePromptEditorStore, f as usePromptLibraryStore, c as useSettingsStore, u as useUIStore, a as useWorkflowStore } from './promptLibraryStore-BZnfmEkc.js';
|
|
3
|
+
import * as _xyflow_react from '@xyflow/react';
|
|
4
|
+
import * as _genfeedai_types from '@genfeedai/types';
|
|
5
|
+
import 'zustand';
|
|
6
|
+
import 'zundo';
|
|
7
|
+
import './types-ipAnBzAJ.js';
|
|
8
|
+
import 'react';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Stable Zustand Selectors
|
|
12
|
+
*
|
|
13
|
+
* Pre-defined selectors to avoid inline function recreation in components.
|
|
14
|
+
* Using stable selector references prevents unnecessary re-subscriptions
|
|
15
|
+
* and improves React Flow performance.
|
|
16
|
+
*
|
|
17
|
+
* Usage:
|
|
18
|
+
* import { selectNodes, selectUpdateNodeData } from '../stores/workflow/selectors';
|
|
19
|
+
* const nodes = useWorkflowStore(selectNodes);
|
|
20
|
+
* const updateNodeData = useWorkflowStore(selectUpdateNodeData);
|
|
21
|
+
*/
|
|
22
|
+
/** Select all nodes */
|
|
23
|
+
declare const selectNodes: (state: WorkflowStore) => _genfeedai_types.WorkflowNode[];
|
|
24
|
+
/** Select all edges */
|
|
25
|
+
declare const selectEdges: (state: WorkflowStore) => _genfeedai_types.WorkflowEdge[];
|
|
26
|
+
/** Select all groups */
|
|
27
|
+
declare const selectGroups: (state: WorkflowStore) => _genfeedai_types.NodeGroup[];
|
|
28
|
+
/** Select selected node IDs */
|
|
29
|
+
declare const selectSelectedNodeIds: (state: WorkflowStore) => string[];
|
|
30
|
+
/** Select workflow name */
|
|
31
|
+
declare const selectWorkflowName: (state: WorkflowStore) => string;
|
|
32
|
+
/** Select workflow ID */
|
|
33
|
+
declare const selectWorkflowId: (state: WorkflowStore) => string | null;
|
|
34
|
+
/** Select dirty state */
|
|
35
|
+
declare const selectIsDirty: (state: WorkflowStore) => boolean;
|
|
36
|
+
/** Select saving state */
|
|
37
|
+
declare const selectIsSaving: (state: WorkflowStore) => boolean;
|
|
38
|
+
/** Select loading state */
|
|
39
|
+
declare const selectIsLoading: (state: WorkflowStore) => boolean;
|
|
40
|
+
/** Select edge style */
|
|
41
|
+
declare const selectEdgeStyle: (state: WorkflowStore) => "default" | "smoothstep" | "straight";
|
|
42
|
+
/** Select navigation target ID */
|
|
43
|
+
declare const selectNavigationTargetId: (state: WorkflowStore) => string | null;
|
|
44
|
+
/** Select updateNodeData action */
|
|
45
|
+
declare const selectUpdateNodeData: (state: WorkflowStore) => <T extends _genfeedai_types.WorkflowNodeData>(nodeId: string, data: Partial<T>) => void;
|
|
46
|
+
/** Select addNode action */
|
|
47
|
+
declare const selectAddNode: (state: WorkflowStore) => (type: _genfeedai_types.NodeType, position: _xyflow_react.XYPosition) => string;
|
|
48
|
+
/** Select removeNode action */
|
|
49
|
+
declare const selectRemoveNode: (state: WorkflowStore) => (nodeId: string) => void;
|
|
50
|
+
/** Select duplicateNode action */
|
|
51
|
+
declare const selectDuplicateNode: (state: WorkflowStore) => (nodeId: string) => string | null;
|
|
52
|
+
/** Select onNodesChange action */
|
|
53
|
+
declare const selectOnNodesChange: (state: WorkflowStore) => (changes: _xyflow_react.NodeChange<_genfeedai_types.WorkflowNode>[]) => void;
|
|
54
|
+
/** Select onEdgesChange action */
|
|
55
|
+
declare const selectOnEdgesChange: (state: WorkflowStore) => (changes: _xyflow_react.EdgeChange<_genfeedai_types.WorkflowEdge>[]) => void;
|
|
56
|
+
/** Select onConnect action */
|
|
57
|
+
declare const selectOnConnect: (state: WorkflowStore) => (connection: _xyflow_react.Connection) => void;
|
|
58
|
+
/** Select setSelectedNodeIds action */
|
|
59
|
+
declare const selectSetSelectedNodeIds: (state: WorkflowStore) => (nodeIds: string[]) => void;
|
|
60
|
+
/** Select toggleNodeLock action */
|
|
61
|
+
declare const selectToggleNodeLock: (state: WorkflowStore) => (nodeId: string) => void;
|
|
62
|
+
/** Select createGroup action */
|
|
63
|
+
declare const selectCreateGroup: (state: WorkflowStore) => (nodeIds: string[], name?: string) => string;
|
|
64
|
+
/** Select deleteGroup action */
|
|
65
|
+
declare const selectDeleteGroup: (state: WorkflowStore) => (groupId: string) => void;
|
|
66
|
+
/** Select unlockAllNodes action */
|
|
67
|
+
declare const selectUnlockAllNodes: (state: WorkflowStore) => () => void;
|
|
68
|
+
/** Select setDirty action */
|
|
69
|
+
declare const selectSetDirty: (state: WorkflowStore) => (dirty: boolean) => void;
|
|
70
|
+
/** Select removeEdge action */
|
|
71
|
+
declare const selectRemoveEdge: (state: WorkflowStore) => (edgeId: string) => void;
|
|
72
|
+
/** Select addNodesAndEdges action */
|
|
73
|
+
declare const selectAddNodesAndEdges: (state: WorkflowStore) => (nodes: _genfeedai_types.WorkflowNode[], edges: _genfeedai_types.WorkflowEdge[]) => void;
|
|
74
|
+
/** Select getNodeById helper */
|
|
75
|
+
declare const selectGetNodeById: (state: WorkflowStore) => (id: string) => _genfeedai_types.WorkflowNode | undefined;
|
|
76
|
+
/** Select getConnectedNodeIds helper */
|
|
77
|
+
declare const selectGetConnectedNodeIds: (state: WorkflowStore) => (nodeIds: string[]) => string[];
|
|
78
|
+
/** Select isValidConnection helper */
|
|
79
|
+
declare const selectIsValidConnection: (state: WorkflowStore) => (connection: _xyflow_react.Connection) => boolean;
|
|
80
|
+
/** Select findCompatibleHandle helper */
|
|
81
|
+
declare const selectFindCompatibleHandle: (state: WorkflowStore) => (sourceNodeId: string, sourceHandleId: string | null, targetNodeId: string) => string | null;
|
|
82
|
+
/**
|
|
83
|
+
* Create a selector for a specific node by ID
|
|
84
|
+
* Note: Creates new function each call - memoize at call site if needed
|
|
85
|
+
*/
|
|
86
|
+
declare const createSelectNodeById: (id: string) => (state: WorkflowStore) => _genfeedai_types.WorkflowNode | undefined;
|
|
87
|
+
/**
|
|
88
|
+
* Create a selector for checking if a node is in selection
|
|
89
|
+
*/
|
|
90
|
+
declare const createSelectIsNodeSelected: (id: string) => (state: WorkflowStore) => boolean;
|
|
91
|
+
/**
|
|
92
|
+
* Create a selector for a group containing a node
|
|
93
|
+
*/
|
|
94
|
+
declare const createSelectGroupByNodeId: (nodeId: string) => (state: WorkflowStore) => _genfeedai_types.NodeGroup | undefined;
|
|
95
|
+
|
|
96
|
+
export { WorkflowStore, createSelectGroupByNodeId, createSelectIsNodeSelected, createSelectNodeById, selectAddNode, selectAddNodesAndEdges, selectCreateGroup, selectDeleteGroup, selectDuplicateNode, selectEdgeStyle, selectEdges, selectFindCompatibleHandle, selectGetConnectedNodeIds, selectGetNodeById, selectGroups, selectIsDirty, selectIsLoading, selectIsSaving, selectIsValidConnection, selectNavigationTargetId, selectNodes, selectOnConnect, selectOnEdgesChange, selectOnNodesChange, selectRemoveEdge, selectRemoveNode, selectSelectedNodeIds, selectSetDirty, selectSetSelectedNodeIds, selectToggleNodeLock, selectUnlockAllNodes, selectUpdateNodeData, selectWorkflowId, selectWorkflowName };
|
package/dist/stores.js
ADDED
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunk6DOEUDD5_js = require('./chunk-6DOEUDD5.js');
|
|
4
|
+
require('./chunk-JLWKW3G5.js');
|
|
5
|
+
var chunkEC2ZIWOK_js = require('./chunk-EC2ZIWOK.js');
|
|
6
|
+
var chunkNSDLGLAQ_js = require('./chunk-NSDLGLAQ.js');
|
|
7
|
+
var chunkRXNEDWK2_js = require('./chunk-RXNEDWK2.js');
|
|
8
|
+
require('./chunk-Z7PWFZG5.js');
|
|
9
|
+
|
|
10
|
+
// src/stores/workflow/selectors.ts
|
|
11
|
+
var selectNodes = (state) => state.nodes;
|
|
12
|
+
var selectEdges = (state) => state.edges;
|
|
13
|
+
var selectGroups = (state) => state.groups;
|
|
14
|
+
var selectSelectedNodeIds = (state) => state.selectedNodeIds;
|
|
15
|
+
var selectWorkflowName = (state) => state.workflowName;
|
|
16
|
+
var selectWorkflowId = (state) => state.workflowId;
|
|
17
|
+
var selectIsDirty = (state) => state.isDirty;
|
|
18
|
+
var selectIsSaving = (state) => state.isSaving;
|
|
19
|
+
var selectIsLoading = (state) => state.isLoading;
|
|
20
|
+
var selectEdgeStyle = (state) => state.edgeStyle;
|
|
21
|
+
var selectNavigationTargetId = (state) => state.navigationTargetId;
|
|
22
|
+
var selectUpdateNodeData = (state) => state.updateNodeData;
|
|
23
|
+
var selectAddNode = (state) => state.addNode;
|
|
24
|
+
var selectRemoveNode = (state) => state.removeNode;
|
|
25
|
+
var selectDuplicateNode = (state) => state.duplicateNode;
|
|
26
|
+
var selectOnNodesChange = (state) => state.onNodesChange;
|
|
27
|
+
var selectOnEdgesChange = (state) => state.onEdgesChange;
|
|
28
|
+
var selectOnConnect = (state) => state.onConnect;
|
|
29
|
+
var selectSetSelectedNodeIds = (state) => state.setSelectedNodeIds;
|
|
30
|
+
var selectToggleNodeLock = (state) => state.toggleNodeLock;
|
|
31
|
+
var selectCreateGroup = (state) => state.createGroup;
|
|
32
|
+
var selectDeleteGroup = (state) => state.deleteGroup;
|
|
33
|
+
var selectUnlockAllNodes = (state) => state.unlockAllNodes;
|
|
34
|
+
var selectSetDirty = (state) => state.setDirty;
|
|
35
|
+
var selectRemoveEdge = (state) => state.removeEdge;
|
|
36
|
+
var selectAddNodesAndEdges = (state) => state.addNodesAndEdges;
|
|
37
|
+
var selectGetNodeById = (state) => state.getNodeById;
|
|
38
|
+
var selectGetConnectedNodeIds = (state) => state.getConnectedNodeIds;
|
|
39
|
+
var selectIsValidConnection = (state) => state.isValidConnection;
|
|
40
|
+
var selectFindCompatibleHandle = (state) => state.findCompatibleHandle;
|
|
41
|
+
var createSelectNodeById = (id) => (state) => state.nodes.find((n) => n.id === id);
|
|
42
|
+
var createSelectIsNodeSelected = (id) => (state) => state.selectedNodeIds.includes(id);
|
|
43
|
+
var createSelectGroupByNodeId = (nodeId) => (state) => state.groups.find((g) => g.nodeIds.includes(nodeId));
|
|
44
|
+
|
|
45
|
+
Object.defineProperty(exports, "useAnnotationStore", {
|
|
46
|
+
enumerable: true,
|
|
47
|
+
get: function () { return chunk6DOEUDD5_js.useAnnotationStore; }
|
|
48
|
+
});
|
|
49
|
+
Object.defineProperty(exports, "usePromptEditorStore", {
|
|
50
|
+
enumerable: true,
|
|
51
|
+
get: function () { return chunk6DOEUDD5_js.usePromptEditorStore; }
|
|
52
|
+
});
|
|
53
|
+
Object.defineProperty(exports, "PROVIDER_INFO", {
|
|
54
|
+
enumerable: true,
|
|
55
|
+
get: function () { return chunkEC2ZIWOK_js.PROVIDER_INFO; }
|
|
56
|
+
});
|
|
57
|
+
Object.defineProperty(exports, "useExecutionStore", {
|
|
58
|
+
enumerable: true,
|
|
59
|
+
get: function () { return chunkEC2ZIWOK_js.useExecutionStore; }
|
|
60
|
+
});
|
|
61
|
+
Object.defineProperty(exports, "useSettingsStore", {
|
|
62
|
+
enumerable: true,
|
|
63
|
+
get: function () { return chunkEC2ZIWOK_js.useSettingsStore; }
|
|
64
|
+
});
|
|
65
|
+
Object.defineProperty(exports, "useUIStore", {
|
|
66
|
+
enumerable: true,
|
|
67
|
+
get: function () { return chunkEC2ZIWOK_js.useUIStore; }
|
|
68
|
+
});
|
|
69
|
+
Object.defineProperty(exports, "useWorkflowStore", {
|
|
70
|
+
enumerable: true,
|
|
71
|
+
get: function () { return chunkNSDLGLAQ_js.useWorkflowStore; }
|
|
72
|
+
});
|
|
73
|
+
Object.defineProperty(exports, "configurePromptLibrary", {
|
|
74
|
+
enumerable: true,
|
|
75
|
+
get: function () { return chunkRXNEDWK2_js.configurePromptLibrary; }
|
|
76
|
+
});
|
|
77
|
+
Object.defineProperty(exports, "usePromptLibraryStore", {
|
|
78
|
+
enumerable: true,
|
|
79
|
+
get: function () { return chunkRXNEDWK2_js.usePromptLibraryStore; }
|
|
80
|
+
});
|
|
81
|
+
exports.createSelectGroupByNodeId = createSelectGroupByNodeId;
|
|
82
|
+
exports.createSelectIsNodeSelected = createSelectIsNodeSelected;
|
|
83
|
+
exports.createSelectNodeById = createSelectNodeById;
|
|
84
|
+
exports.selectAddNode = selectAddNode;
|
|
85
|
+
exports.selectAddNodesAndEdges = selectAddNodesAndEdges;
|
|
86
|
+
exports.selectCreateGroup = selectCreateGroup;
|
|
87
|
+
exports.selectDeleteGroup = selectDeleteGroup;
|
|
88
|
+
exports.selectDuplicateNode = selectDuplicateNode;
|
|
89
|
+
exports.selectEdgeStyle = selectEdgeStyle;
|
|
90
|
+
exports.selectEdges = selectEdges;
|
|
91
|
+
exports.selectFindCompatibleHandle = selectFindCompatibleHandle;
|
|
92
|
+
exports.selectGetConnectedNodeIds = selectGetConnectedNodeIds;
|
|
93
|
+
exports.selectGetNodeById = selectGetNodeById;
|
|
94
|
+
exports.selectGroups = selectGroups;
|
|
95
|
+
exports.selectIsDirty = selectIsDirty;
|
|
96
|
+
exports.selectIsLoading = selectIsLoading;
|
|
97
|
+
exports.selectIsSaving = selectIsSaving;
|
|
98
|
+
exports.selectIsValidConnection = selectIsValidConnection;
|
|
99
|
+
exports.selectNavigationTargetId = selectNavigationTargetId;
|
|
100
|
+
exports.selectNodes = selectNodes;
|
|
101
|
+
exports.selectOnConnect = selectOnConnect;
|
|
102
|
+
exports.selectOnEdgesChange = selectOnEdgesChange;
|
|
103
|
+
exports.selectOnNodesChange = selectOnNodesChange;
|
|
104
|
+
exports.selectRemoveEdge = selectRemoveEdge;
|
|
105
|
+
exports.selectRemoveNode = selectRemoveNode;
|
|
106
|
+
exports.selectSelectedNodeIds = selectSelectedNodeIds;
|
|
107
|
+
exports.selectSetDirty = selectSetDirty;
|
|
108
|
+
exports.selectSetSelectedNodeIds = selectSetSelectedNodeIds;
|
|
109
|
+
exports.selectToggleNodeLock = selectToggleNodeLock;
|
|
110
|
+
exports.selectUnlockAllNodes = selectUnlockAllNodes;
|
|
111
|
+
exports.selectUpdateNodeData = selectUpdateNodeData;
|
|
112
|
+
exports.selectWorkflowId = selectWorkflowId;
|
|
113
|
+
exports.selectWorkflowName = selectWorkflowName;
|
package/dist/stores.mjs
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
export { useAnnotationStore, usePromptEditorStore } from './chunk-CV4M7CNU.mjs';
|
|
2
|
+
import './chunk-LDN7IX4Y.mjs';
|
|
3
|
+
export { PROVIDER_INFO, useExecutionStore, useSettingsStore, useUIStore } from './chunk-CSUBLSKZ.mjs';
|
|
4
|
+
export { useWorkflowStore } from './chunk-BJ3R5R32.mjs';
|
|
5
|
+
export { configurePromptLibrary, usePromptLibraryStore } from './chunk-VRN3UWE5.mjs';
|
|
6
|
+
import './chunk-AC6TWLRT.mjs';
|
|
7
|
+
|
|
8
|
+
// src/stores/workflow/selectors.ts
|
|
9
|
+
var selectNodes = (state) => state.nodes;
|
|
10
|
+
var selectEdges = (state) => state.edges;
|
|
11
|
+
var selectGroups = (state) => state.groups;
|
|
12
|
+
var selectSelectedNodeIds = (state) => state.selectedNodeIds;
|
|
13
|
+
var selectWorkflowName = (state) => state.workflowName;
|
|
14
|
+
var selectWorkflowId = (state) => state.workflowId;
|
|
15
|
+
var selectIsDirty = (state) => state.isDirty;
|
|
16
|
+
var selectIsSaving = (state) => state.isSaving;
|
|
17
|
+
var selectIsLoading = (state) => state.isLoading;
|
|
18
|
+
var selectEdgeStyle = (state) => state.edgeStyle;
|
|
19
|
+
var selectNavigationTargetId = (state) => state.navigationTargetId;
|
|
20
|
+
var selectUpdateNodeData = (state) => state.updateNodeData;
|
|
21
|
+
var selectAddNode = (state) => state.addNode;
|
|
22
|
+
var selectRemoveNode = (state) => state.removeNode;
|
|
23
|
+
var selectDuplicateNode = (state) => state.duplicateNode;
|
|
24
|
+
var selectOnNodesChange = (state) => state.onNodesChange;
|
|
25
|
+
var selectOnEdgesChange = (state) => state.onEdgesChange;
|
|
26
|
+
var selectOnConnect = (state) => state.onConnect;
|
|
27
|
+
var selectSetSelectedNodeIds = (state) => state.setSelectedNodeIds;
|
|
28
|
+
var selectToggleNodeLock = (state) => state.toggleNodeLock;
|
|
29
|
+
var selectCreateGroup = (state) => state.createGroup;
|
|
30
|
+
var selectDeleteGroup = (state) => state.deleteGroup;
|
|
31
|
+
var selectUnlockAllNodes = (state) => state.unlockAllNodes;
|
|
32
|
+
var selectSetDirty = (state) => state.setDirty;
|
|
33
|
+
var selectRemoveEdge = (state) => state.removeEdge;
|
|
34
|
+
var selectAddNodesAndEdges = (state) => state.addNodesAndEdges;
|
|
35
|
+
var selectGetNodeById = (state) => state.getNodeById;
|
|
36
|
+
var selectGetConnectedNodeIds = (state) => state.getConnectedNodeIds;
|
|
37
|
+
var selectIsValidConnection = (state) => state.isValidConnection;
|
|
38
|
+
var selectFindCompatibleHandle = (state) => state.findCompatibleHandle;
|
|
39
|
+
var createSelectNodeById = (id) => (state) => state.nodes.find((n) => n.id === id);
|
|
40
|
+
var createSelectIsNodeSelected = (id) => (state) => state.selectedNodeIds.includes(id);
|
|
41
|
+
var createSelectGroupByNodeId = (nodeId) => (state) => state.groups.find((g) => g.nodeIds.includes(nodeId));
|
|
42
|
+
|
|
43
|
+
export { createSelectGroupByNodeId, createSelectIsNodeSelected, createSelectNodeById, selectAddNode, selectAddNodesAndEdges, selectCreateGroup, selectDeleteGroup, selectDuplicateNode, selectEdgeStyle, selectEdges, selectFindCompatibleHandle, selectGetConnectedNodeIds, selectGetNodeById, selectGroups, selectIsDirty, selectIsLoading, selectIsSaving, selectIsValidConnection, selectNavigationTargetId, selectNodes, selectOnConnect, selectOnEdgesChange, selectOnNodesChange, selectRemoveEdge, selectRemoveNode, selectSelectedNodeIds, selectSetDirty, selectSetSelectedNodeIds, selectToggleNodeLock, selectUnlockAllNodes, selectUpdateNodeData, selectWorkflowId, selectWorkflowName };
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Toolbar Component Types
|
|
5
|
+
*/
|
|
6
|
+
interface DropdownItem {
|
|
7
|
+
id: string;
|
|
8
|
+
label?: string;
|
|
9
|
+
icon?: React.ReactNode;
|
|
10
|
+
onClick?: () => void;
|
|
11
|
+
external?: boolean;
|
|
12
|
+
separator?: boolean;
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
}
|
|
15
|
+
interface ToolbarDropdownProps {
|
|
16
|
+
label: string;
|
|
17
|
+
items: DropdownItem[];
|
|
18
|
+
}
|
|
19
|
+
interface OverflowMenuProps {
|
|
20
|
+
items: DropdownItem[];
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
interface ToolbarProps {
|
|
24
|
+
/** Optional callback for auto-layout functionality */
|
|
25
|
+
onAutoLayout?: (direction: 'LR' | 'TB') => void;
|
|
26
|
+
/** Optional callback for "Save As" action */
|
|
27
|
+
onSaveAs?: (newName: string) => void;
|
|
28
|
+
/** Additional file menu items to prepend */
|
|
29
|
+
fileMenuItemsPrepend?: DropdownItem[];
|
|
30
|
+
/** Additional file menu items to append */
|
|
31
|
+
fileMenuItemsAppend?: DropdownItem[];
|
|
32
|
+
/** Additional menu dropdowns to render after File */
|
|
33
|
+
additionalMenus?: Array<{
|
|
34
|
+
label: string;
|
|
35
|
+
items: DropdownItem[];
|
|
36
|
+
}>;
|
|
37
|
+
/** Logo href (defaults to "/") */
|
|
38
|
+
logoHref?: string;
|
|
39
|
+
/** Logo image src */
|
|
40
|
+
logoSrc?: string;
|
|
41
|
+
/** Whether to show the settings button */
|
|
42
|
+
showSettings?: boolean;
|
|
43
|
+
/** Additional elements to render in the right side of the toolbar */
|
|
44
|
+
rightContent?: React.ReactNode;
|
|
45
|
+
}
|
|
46
|
+
declare function Toolbar({ onAutoLayout, onSaveAs, fileMenuItemsPrepend, fileMenuItemsAppend, additionalMenus, logoHref, logoSrc, showSettings, rightContent, }: ToolbarProps): react_jsx_runtime.JSX.Element;
|
|
47
|
+
|
|
48
|
+
declare function BottomBar(): react_jsx_runtime.JSX.Element;
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Auto-save status indicator
|
|
52
|
+
*/
|
|
53
|
+
declare function SaveIndicator(): react_jsx_runtime.JSX.Element;
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Toolbar dropdown menu component
|
|
57
|
+
*/
|
|
58
|
+
declare function ToolbarDropdown({ label, items }: ToolbarDropdownProps): react_jsx_runtime.JSX.Element;
|
|
59
|
+
|
|
60
|
+
interface SaveAsDialogProps {
|
|
61
|
+
isOpen: boolean;
|
|
62
|
+
currentName: string;
|
|
63
|
+
onSave: (newName: string) => void;
|
|
64
|
+
onClose: () => void;
|
|
65
|
+
}
|
|
66
|
+
declare function SaveAsDialog({ isOpen, currentName, onSave, onClose }: SaveAsDialogProps): react_jsx_runtime.JSX.Element | null;
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Overflow menu with icon trigger
|
|
70
|
+
*/
|
|
71
|
+
declare function OverflowMenu({ items }: OverflowMenuProps): react_jsx_runtime.JSX.Element;
|
|
72
|
+
|
|
73
|
+
export { BottomBar, type DropdownItem, OverflowMenu, type OverflowMenuProps, SaveAsDialog, SaveIndicator, Toolbar, ToolbarDropdown, type ToolbarDropdownProps };
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Toolbar Component Types
|
|
5
|
+
*/
|
|
6
|
+
interface DropdownItem {
|
|
7
|
+
id: string;
|
|
8
|
+
label?: string;
|
|
9
|
+
icon?: React.ReactNode;
|
|
10
|
+
onClick?: () => void;
|
|
11
|
+
external?: boolean;
|
|
12
|
+
separator?: boolean;
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
}
|
|
15
|
+
interface ToolbarDropdownProps {
|
|
16
|
+
label: string;
|
|
17
|
+
items: DropdownItem[];
|
|
18
|
+
}
|
|
19
|
+
interface OverflowMenuProps {
|
|
20
|
+
items: DropdownItem[];
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
interface ToolbarProps {
|
|
24
|
+
/** Optional callback for auto-layout functionality */
|
|
25
|
+
onAutoLayout?: (direction: 'LR' | 'TB') => void;
|
|
26
|
+
/** Optional callback for "Save As" action */
|
|
27
|
+
onSaveAs?: (newName: string) => void;
|
|
28
|
+
/** Additional file menu items to prepend */
|
|
29
|
+
fileMenuItemsPrepend?: DropdownItem[];
|
|
30
|
+
/** Additional file menu items to append */
|
|
31
|
+
fileMenuItemsAppend?: DropdownItem[];
|
|
32
|
+
/** Additional menu dropdowns to render after File */
|
|
33
|
+
additionalMenus?: Array<{
|
|
34
|
+
label: string;
|
|
35
|
+
items: DropdownItem[];
|
|
36
|
+
}>;
|
|
37
|
+
/** Logo href (defaults to "/") */
|
|
38
|
+
logoHref?: string;
|
|
39
|
+
/** Logo image src */
|
|
40
|
+
logoSrc?: string;
|
|
41
|
+
/** Whether to show the settings button */
|
|
42
|
+
showSettings?: boolean;
|
|
43
|
+
/** Additional elements to render in the right side of the toolbar */
|
|
44
|
+
rightContent?: React.ReactNode;
|
|
45
|
+
}
|
|
46
|
+
declare function Toolbar({ onAutoLayout, onSaveAs, fileMenuItemsPrepend, fileMenuItemsAppend, additionalMenus, logoHref, logoSrc, showSettings, rightContent, }: ToolbarProps): react_jsx_runtime.JSX.Element;
|
|
47
|
+
|
|
48
|
+
declare function BottomBar(): react_jsx_runtime.JSX.Element;
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Auto-save status indicator
|
|
52
|
+
*/
|
|
53
|
+
declare function SaveIndicator(): react_jsx_runtime.JSX.Element;
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Toolbar dropdown menu component
|
|
57
|
+
*/
|
|
58
|
+
declare function ToolbarDropdown({ label, items }: ToolbarDropdownProps): react_jsx_runtime.JSX.Element;
|
|
59
|
+
|
|
60
|
+
interface SaveAsDialogProps {
|
|
61
|
+
isOpen: boolean;
|
|
62
|
+
currentName: string;
|
|
63
|
+
onSave: (newName: string) => void;
|
|
64
|
+
onClose: () => void;
|
|
65
|
+
}
|
|
66
|
+
declare function SaveAsDialog({ isOpen, currentName, onSave, onClose }: SaveAsDialogProps): react_jsx_runtime.JSX.Element | null;
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Overflow menu with icon trigger
|
|
70
|
+
*/
|
|
71
|
+
declare function OverflowMenu({ items }: OverflowMenuProps): react_jsx_runtime.JSX.Element;
|
|
72
|
+
|
|
73
|
+
export { BottomBar, type DropdownItem, OverflowMenu, type OverflowMenuProps, SaveAsDialog, SaveIndicator, Toolbar, ToolbarDropdown, type ToolbarDropdownProps };
|
package/dist/toolbar.js
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunkSW7QNEZU_js = require('./chunk-SW7QNEZU.js');
|
|
4
|
+
require('./chunk-JLWKW3G5.js');
|
|
5
|
+
require('./chunk-EC2ZIWOK.js');
|
|
6
|
+
require('./chunk-NSDLGLAQ.js');
|
|
7
|
+
require('./chunk-Z7PWFZG5.js');
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
Object.defineProperty(exports, "BottomBar", {
|
|
12
|
+
enumerable: true,
|
|
13
|
+
get: function () { return chunkSW7QNEZU_js.BottomBar; }
|
|
14
|
+
});
|
|
15
|
+
Object.defineProperty(exports, "OverflowMenu", {
|
|
16
|
+
enumerable: true,
|
|
17
|
+
get: function () { return chunkSW7QNEZU_js.OverflowMenu; }
|
|
18
|
+
});
|
|
19
|
+
Object.defineProperty(exports, "SaveAsDialog", {
|
|
20
|
+
enumerable: true,
|
|
21
|
+
get: function () { return chunkSW7QNEZU_js.SaveAsDialog; }
|
|
22
|
+
});
|
|
23
|
+
Object.defineProperty(exports, "SaveIndicator", {
|
|
24
|
+
enumerable: true,
|
|
25
|
+
get: function () { return chunkSW7QNEZU_js.SaveIndicator; }
|
|
26
|
+
});
|
|
27
|
+
Object.defineProperty(exports, "Toolbar", {
|
|
28
|
+
enumerable: true,
|
|
29
|
+
get: function () { return chunkSW7QNEZU_js.Toolbar; }
|
|
30
|
+
});
|
|
31
|
+
Object.defineProperty(exports, "ToolbarDropdown", {
|
|
32
|
+
enumerable: true,
|
|
33
|
+
get: function () { return chunkSW7QNEZU_js.ToolbarDropdown; }
|
|
34
|
+
});
|
package/dist/toolbar.mjs
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { ComponentType } from 'react';
|
|
2
|
+
import { IQueryPrompts, IPrompt, ICreatePrompt, ProviderModel } from '@genfeedai/types';
|
|
3
|
+
|
|
4
|
+
interface FileUploadService {
|
|
5
|
+
uploadFile: (path: string, file: File) => Promise<{
|
|
6
|
+
url: string;
|
|
7
|
+
filename: string;
|
|
8
|
+
}>;
|
|
9
|
+
}
|
|
10
|
+
interface ModelSchemaService {
|
|
11
|
+
fetchModelSchema: (modelId: string, signal?: AbortSignal) => Promise<ProviderModel | null>;
|
|
12
|
+
}
|
|
13
|
+
interface PromptLibraryService {
|
|
14
|
+
getAll: (query?: IQueryPrompts, signal?: AbortSignal) => Promise<IPrompt[]>;
|
|
15
|
+
getFeatured: (limit?: number, signal?: AbortSignal) => Promise<IPrompt[]>;
|
|
16
|
+
create: (data: ICreatePrompt, signal?: AbortSignal) => Promise<IPrompt>;
|
|
17
|
+
update: (id: string, data: Partial<ICreatePrompt>, signal?: AbortSignal) => Promise<IPrompt>;
|
|
18
|
+
delete: (id: string, signal?: AbortSignal) => Promise<void>;
|
|
19
|
+
duplicate: (id: string, signal?: AbortSignal) => Promise<IPrompt>;
|
|
20
|
+
use: (id: string, signal?: AbortSignal) => Promise<IPrompt>;
|
|
21
|
+
}
|
|
22
|
+
interface ModelBrowserModalProps {
|
|
23
|
+
isOpen: boolean;
|
|
24
|
+
onClose: () => void;
|
|
25
|
+
onSelect: (model: ProviderModel) => void;
|
|
26
|
+
capabilities?: string[];
|
|
27
|
+
title?: string;
|
|
28
|
+
}
|
|
29
|
+
interface PromptPickerProps {
|
|
30
|
+
onSelect: (item: IPrompt) => void;
|
|
31
|
+
label?: string;
|
|
32
|
+
}
|
|
33
|
+
interface WorkflowUIConfig {
|
|
34
|
+
/** For ImageInputNode, VideoInputNode — file upload */
|
|
35
|
+
fileUpload?: FileUploadService;
|
|
36
|
+
/** For AI gen nodes — model schema loading */
|
|
37
|
+
modelSchema?: ModelSchemaService;
|
|
38
|
+
/** For PromptNode — prompt library CRUD */
|
|
39
|
+
promptLibrary?: PromptLibraryService;
|
|
40
|
+
/** Injected ModelBrowserModal component (complex, app-specific) */
|
|
41
|
+
ModelBrowserModal?: ComponentType<ModelBrowserModalProps> | null;
|
|
42
|
+
/** Injected PromptPicker component (complex, app-specific) */
|
|
43
|
+
PromptPicker?: ComponentType<PromptPickerProps> | null;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export type { FileUploadService as F, ModelBrowserModalProps as M, PromptLibraryService as P, WorkflowUIConfig as W, PromptPickerProps as a, ModelSchemaService as b };
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { ComponentType } from 'react';
|
|
2
|
+
import { IQueryPrompts, IPrompt, ICreatePrompt, ProviderModel } from '@genfeedai/types';
|
|
3
|
+
|
|
4
|
+
interface FileUploadService {
|
|
5
|
+
uploadFile: (path: string, file: File) => Promise<{
|
|
6
|
+
url: string;
|
|
7
|
+
filename: string;
|
|
8
|
+
}>;
|
|
9
|
+
}
|
|
10
|
+
interface ModelSchemaService {
|
|
11
|
+
fetchModelSchema: (modelId: string, signal?: AbortSignal) => Promise<ProviderModel | null>;
|
|
12
|
+
}
|
|
13
|
+
interface PromptLibraryService {
|
|
14
|
+
getAll: (query?: IQueryPrompts, signal?: AbortSignal) => Promise<IPrompt[]>;
|
|
15
|
+
getFeatured: (limit?: number, signal?: AbortSignal) => Promise<IPrompt[]>;
|
|
16
|
+
create: (data: ICreatePrompt, signal?: AbortSignal) => Promise<IPrompt>;
|
|
17
|
+
update: (id: string, data: Partial<ICreatePrompt>, signal?: AbortSignal) => Promise<IPrompt>;
|
|
18
|
+
delete: (id: string, signal?: AbortSignal) => Promise<void>;
|
|
19
|
+
duplicate: (id: string, signal?: AbortSignal) => Promise<IPrompt>;
|
|
20
|
+
use: (id: string, signal?: AbortSignal) => Promise<IPrompt>;
|
|
21
|
+
}
|
|
22
|
+
interface ModelBrowserModalProps {
|
|
23
|
+
isOpen: boolean;
|
|
24
|
+
onClose: () => void;
|
|
25
|
+
onSelect: (model: ProviderModel) => void;
|
|
26
|
+
capabilities?: string[];
|
|
27
|
+
title?: string;
|
|
28
|
+
}
|
|
29
|
+
interface PromptPickerProps {
|
|
30
|
+
onSelect: (item: IPrompt) => void;
|
|
31
|
+
label?: string;
|
|
32
|
+
}
|
|
33
|
+
interface WorkflowUIConfig {
|
|
34
|
+
/** For ImageInputNode, VideoInputNode — file upload */
|
|
35
|
+
fileUpload?: FileUploadService;
|
|
36
|
+
/** For AI gen nodes — model schema loading */
|
|
37
|
+
modelSchema?: ModelSchemaService;
|
|
38
|
+
/** For PromptNode — prompt library CRUD */
|
|
39
|
+
promptLibrary?: PromptLibraryService;
|
|
40
|
+
/** Injected ModelBrowserModal component (complex, app-specific) */
|
|
41
|
+
ModelBrowserModal?: ComponentType<ModelBrowserModalProps> | null;
|
|
42
|
+
/** Injected PromptPicker component (complex, app-specific) */
|
|
43
|
+
PromptPicker?: ComponentType<PromptPickerProps> | null;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export type { FileUploadService as F, ModelBrowserModalProps as M, PromptLibraryService as P, WorkflowUIConfig as W, PromptPickerProps as a, ModelSchemaService as b };
|
package/dist/ui.d.mts
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
3
|
+
import { VariantProps } from 'class-variance-authority';
|
|
4
|
+
import * as react from 'react';
|
|
5
|
+
import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
|
|
6
|
+
import * as LabelPrimitive from '@radix-ui/react-label';
|
|
7
|
+
import * as SelectPrimitive from '@radix-ui/react-select';
|
|
8
|
+
import * as SliderPrimitive from '@radix-ui/react-slider';
|
|
9
|
+
import { ClassValue } from 'clsx';
|
|
10
|
+
|
|
11
|
+
declare const buttonVariants: (props?: ({
|
|
12
|
+
variant?: "link" | "default" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
|
|
13
|
+
size?: "default" | "sm" | "lg" | "icon" | "icon-sm" | "icon-lg" | null | undefined;
|
|
14
|
+
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
15
|
+
declare function Button({ className, variant, size, asChild, ...props }: react.ComponentProps<'button'> & VariantProps<typeof buttonVariants> & {
|
|
16
|
+
asChild?: boolean;
|
|
17
|
+
}): react_jsx_runtime.JSX.Element;
|
|
18
|
+
|
|
19
|
+
declare function Checkbox({ className, ...props }: react.ComponentProps<typeof CheckboxPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
20
|
+
|
|
21
|
+
interface ComparisonSliderProps {
|
|
22
|
+
beforeSrc: string;
|
|
23
|
+
afterSrc: string;
|
|
24
|
+
beforeLabel?: string;
|
|
25
|
+
afterLabel?: string;
|
|
26
|
+
position: number;
|
|
27
|
+
onPositionChange: (position: number) => void;
|
|
28
|
+
height?: number;
|
|
29
|
+
className?: string;
|
|
30
|
+
}
|
|
31
|
+
declare function ComparisonSliderComponent({ beforeSrc, afterSrc, beforeLabel, afterLabel, position, onPositionChange, height, className, }: ComparisonSliderProps): react_jsx_runtime.JSX.Element;
|
|
32
|
+
declare const ComparisonSlider: react.MemoExoticComponent<typeof ComparisonSliderComponent>;
|
|
33
|
+
|
|
34
|
+
interface GridPosition {
|
|
35
|
+
x: number;
|
|
36
|
+
y: number;
|
|
37
|
+
}
|
|
38
|
+
interface GridPositionSelectorProps {
|
|
39
|
+
position: GridPosition;
|
|
40
|
+
onPositionChange: (position: GridPosition) => void;
|
|
41
|
+
className?: string;
|
|
42
|
+
}
|
|
43
|
+
declare function GridPositionSelectorComponent({ position, onPositionChange, className, }: GridPositionSelectorProps): react_jsx_runtime.JSX.Element;
|
|
44
|
+
declare const GridPositionSelector: react.MemoExoticComponent<typeof GridPositionSelectorComponent>;
|
|
45
|
+
|
|
46
|
+
declare function Input({ className, type, ...props }: react.ComponentProps<'input'>): react_jsx_runtime.JSX.Element;
|
|
47
|
+
|
|
48
|
+
declare function Label({ className, ...props }: react.ComponentProps<typeof LabelPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
49
|
+
|
|
50
|
+
declare function Select({ ...props }: react.ComponentProps<typeof SelectPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
51
|
+
declare function SelectGroup({ ...props }: react.ComponentProps<typeof SelectPrimitive.Group>): react_jsx_runtime.JSX.Element;
|
|
52
|
+
declare function SelectValue({ ...props }: react.ComponentProps<typeof SelectPrimitive.Value>): react_jsx_runtime.JSX.Element;
|
|
53
|
+
declare function SelectTrigger({ className, size, children, ...props }: react.ComponentProps<typeof SelectPrimitive.Trigger> & {
|
|
54
|
+
size?: 'sm' | 'default';
|
|
55
|
+
}): react_jsx_runtime.JSX.Element;
|
|
56
|
+
declare function SelectContent({ className, children, position, align, ...props }: react.ComponentProps<typeof SelectPrimitive.Content>): react_jsx_runtime.JSX.Element;
|
|
57
|
+
declare function SelectLabel({ className, ...props }: react.ComponentProps<typeof SelectPrimitive.Label>): react_jsx_runtime.JSX.Element;
|
|
58
|
+
declare function SelectItem({ className, children, ...props }: react.ComponentProps<typeof SelectPrimitive.Item>): react_jsx_runtime.JSX.Element;
|
|
59
|
+
declare function SelectSeparator({ className, ...props }: react.ComponentProps<typeof SelectPrimitive.Separator>): react_jsx_runtime.JSX.Element;
|
|
60
|
+
declare function SelectScrollUpButton({ className, ...props }: react.ComponentProps<typeof SelectPrimitive.ScrollUpButton>): react_jsx_runtime.JSX.Element;
|
|
61
|
+
declare function SelectScrollDownButton({ className, ...props }: react.ComponentProps<typeof SelectPrimitive.ScrollDownButton>): react_jsx_runtime.JSX.Element;
|
|
62
|
+
|
|
63
|
+
declare function Slider({ className, defaultValue, value, min, max, ...props }: react.ComponentProps<typeof SliderPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
64
|
+
|
|
65
|
+
declare function cn(...inputs: ClassValue[]): string;
|
|
66
|
+
|
|
67
|
+
export { Button, Checkbox, ComparisonSlider, GridPositionSelector, Input, Label, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Slider, buttonVariants, cn };
|