@datatechsolutions/ui 3.2.1 → 3.4.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/astrlabe/contracts.d.mts +31 -3
- package/dist/astrlabe/contracts.d.ts +31 -3
- package/dist/astrlabe/index.d.mts +22 -30
- package/dist/astrlabe/index.d.ts +22 -30
- package/dist/astrlabe/index.js +121 -121
- package/dist/astrlabe/index.mjs +7 -7
- package/dist/astrlabe/utils.js +9 -9
- package/dist/astrlabe/utils.mjs +2 -2
- package/dist/astrlabe/workflow-canvas.d.mts +6 -69
- package/dist/astrlabe/workflow-canvas.d.ts +6 -69
- package/dist/astrlabe/workflow-canvas.js +6 -6
- package/dist/astrlabe/workflow-canvas.mjs +5 -5
- package/dist/brand/index.d.mts +1 -15
- package/dist/brand/index.d.ts +1 -15
- package/dist/brand/index.js +0 -14
- package/dist/brand/index.js.map +1 -1
- package/dist/brand/index.mjs +0 -14
- package/dist/brand/index.mjs.map +1 -1
- package/dist/{chunk-FAGDZEKM.js → chunk-2OZZH2IO.js} +2 -2
- package/dist/chunk-2OZZH2IO.js.map +1 -0
- package/dist/{chunk-SYNVNTLJ.mjs → chunk-3AY5HIQ6.mjs} +2 -2
- package/dist/chunk-3AY5HIQ6.mjs.map +1 -0
- package/dist/{chunk-JSNRCYSO.js → chunk-45QAUEYT.js} +4 -4
- package/dist/{chunk-JSNRCYSO.js.map → chunk-45QAUEYT.js.map} +1 -1
- package/dist/{chunk-B67DP7MI.mjs → chunk-4GDWGWHY.mjs} +4 -4
- package/dist/{chunk-B67DP7MI.mjs.map → chunk-4GDWGWHY.mjs.map} +1 -1
- package/dist/{chunk-KR2X2WHJ.js → chunk-4ICEQJH4.js} +53 -53
- package/dist/{chunk-KR2X2WHJ.js.map → chunk-4ICEQJH4.js.map} +1 -1
- package/dist/{chunk-RXZNACMI.js → chunk-6MBWKOPF.js} +33 -33
- package/dist/{chunk-RXZNACMI.js.map → chunk-6MBWKOPF.js.map} +1 -1
- package/dist/{chunk-C3H4FM4A.js → chunk-72SWXOD5.js} +15 -2
- package/dist/chunk-72SWXOD5.js.map +1 -0
- package/dist/{chunk-JN6IL6OH.mjs → chunk-AGGOHPMZ.mjs} +1054 -5229
- package/dist/chunk-AGGOHPMZ.mjs.map +1 -0
- package/dist/{chunk-5GDKCFM5.mjs → chunk-AL73YAV4.mjs} +3 -3
- package/dist/{chunk-5GDKCFM5.mjs.map → chunk-AL73YAV4.mjs.map} +1 -1
- package/dist/{chunk-ZJPNP2YW.mjs → chunk-BUDZNAKL.mjs} +2 -2
- package/dist/chunk-BUDZNAKL.mjs.map +1 -0
- package/dist/{chunk-OL73LBX5.mjs → chunk-BW67WFHT.mjs} +3 -4
- package/dist/chunk-BW67WFHT.mjs.map +1 -0
- package/dist/{chunk-W5OEBO6E.js → chunk-CF7GOUBQ.js} +13 -14
- package/dist/chunk-CF7GOUBQ.js.map +1 -0
- package/dist/{chunk-IRPS5UCS.mjs → chunk-CUWPLPVY.mjs} +3 -3
- package/dist/{chunk-IRPS5UCS.mjs.map → chunk-CUWPLPVY.mjs.map} +1 -1
- package/dist/{chunk-NJS2YC3J.js → chunk-DJDZIRM6.js} +12 -2
- package/dist/chunk-DJDZIRM6.js.map +1 -0
- package/dist/{chunk-RL35XATZ.js → chunk-ERCDMBRT.js} +702 -647
- package/dist/chunk-ERCDMBRT.js.map +1 -0
- package/dist/{chunk-I2NZGVBG.js → chunk-FSBR4RCK.js} +1101 -5313
- package/dist/chunk-FSBR4RCK.js.map +1 -0
- package/dist/{chunk-5W7L7BT7.mjs → chunk-G7JQ4OCE.mjs} +15 -2
- package/dist/chunk-G7JQ4OCE.mjs.map +1 -0
- package/dist/{chunk-5RM6NGZ6.mjs → chunk-IDEM3DYF.mjs} +3 -3
- package/dist/{chunk-5RM6NGZ6.mjs.map → chunk-IDEM3DYF.mjs.map} +1 -1
- package/dist/{chunk-U7XM3N7F.mjs → chunk-LEXBTVGM.mjs} +12 -2
- package/dist/chunk-LEXBTVGM.mjs.map +1 -0
- package/dist/{chunk-EFOXN3LC.js → chunk-M7KSEUZR.js} +490 -389
- package/dist/chunk-M7KSEUZR.js.map +1 -0
- package/dist/{chunk-AOUUZ52N.js → chunk-MO5FBVV3.js} +85 -86
- package/dist/chunk-MO5FBVV3.js.map +1 -0
- package/dist/{chunk-H2D2CRTD.mjs → chunk-NAFWHJCM.mjs} +8 -8
- package/dist/{chunk-H2D2CRTD.mjs.map → chunk-NAFWHJCM.mjs.map} +1 -1
- package/dist/{chunk-3JJWPOK6.js → chunk-NCLZKVJK.js} +9 -10
- package/dist/chunk-NCLZKVJK.js.map +1 -0
- package/dist/{chunk-R4TQWXNG.mjs → chunk-NVQWHJQH.mjs} +6 -5
- package/dist/chunk-NVQWHJQH.mjs.map +1 -0
- package/dist/{chunk-Y6AEE56Q.js → chunk-PGVZKMOA.js} +69 -69
- package/dist/{chunk-Y6AEE56Q.js.map → chunk-PGVZKMOA.js.map} +1 -1
- package/dist/{chunk-UDDZTTLO.mjs → chunk-QBFE7ABE.mjs} +6 -7
- package/dist/chunk-QBFE7ABE.mjs.map +1 -0
- package/dist/{chunk-3ZUMJTDT.mjs → chunk-RFRXS4PC.mjs} +3 -4
- package/dist/{chunk-3JJWPOK6.js.map → chunk-RFRXS4PC.mjs.map} +1 -1
- package/dist/{chunk-ZV5EZXXO.mjs → chunk-RHRJXK5R.mjs} +3 -3
- package/dist/{chunk-ZV5EZXXO.mjs.map → chunk-RHRJXK5R.mjs.map} +1 -1
- package/dist/{chunk-SU3YPWFW.js → chunk-RLLP7VQJ.js} +26 -26
- package/dist/{chunk-SU3YPWFW.js.map → chunk-RLLP7VQJ.js.map} +1 -1
- package/dist/{chunk-YIB2YAM5.mjs → chunk-RLVOG5OQ.mjs} +3 -3
- package/dist/{chunk-YIB2YAM5.mjs.map → chunk-RLVOG5OQ.mjs.map} +1 -1
- package/dist/{chunk-QYA53LUF.mjs → chunk-SEYUYGER.mjs} +571 -517
- package/dist/chunk-SEYUYGER.mjs.map +1 -0
- package/dist/{chunk-YV72JM4B.mjs → chunk-SQ4KGLBZ.mjs} +4 -4
- package/dist/{chunk-YV72JM4B.mjs.map → chunk-SQ4KGLBZ.mjs.map} +1 -1
- package/dist/{chunk-F54Q2YJY.js → chunk-SY4MUT5V.js} +7 -7
- package/dist/{chunk-F54Q2YJY.js.map → chunk-SY4MUT5V.js.map} +1 -1
- package/dist/{chunk-ZM5MVWIT.js → chunk-TUQLZ4QD.js} +5 -6
- package/dist/chunk-TUQLZ4QD.js.map +1 -0
- package/dist/{chunk-TVMLV675.js → chunk-UE2RDQIK.js} +98 -95
- package/dist/chunk-UE2RDQIK.js.map +1 -0
- package/dist/{chunk-HDCUWUNH.js → chunk-UJVDI66K.js} +28 -27
- package/dist/chunk-UJVDI66K.js.map +1 -0
- package/dist/{chunk-IRT4T3CU.mjs → chunk-VV6SYMPM.mjs} +423 -321
- package/dist/chunk-VV6SYMPM.mjs.map +1 -0
- package/dist/{chunk-HZ4LOVHM.js → chunk-VY52Y5GC.js} +2 -2
- package/dist/chunk-VY52Y5GC.js.map +1 -0
- package/dist/{chunk-LEKZUS6N.mjs → chunk-X3GW7UPN.mjs} +4 -5
- package/dist/chunk-X3GW7UPN.mjs.map +1 -0
- package/dist/{chunk-RGI74SQH.js → chunk-Y2AYFG4E.js} +4 -4
- package/dist/{chunk-RGI74SQH.js.map → chunk-Y2AYFG4E.js.map} +1 -1
- package/dist/{chunk-TIJJHW2Z.js → chunk-YV7F7IXG.js} +36 -36
- package/dist/{chunk-TIJJHW2Z.js.map → chunk-YV7F7IXG.js.map} +1 -1
- package/dist/{chunk-MVBIAXVN.mjs → chunk-ZKSDDFHG.mjs} +14 -11
- package/dist/chunk-ZKSDDFHG.mjs.map +1 -0
- package/dist/{index-VI9gyJXl.d.mts → index-BNRGVAS5.d.mts} +9 -2
- package/dist/index-BoebbJ44.d.mts +49 -0
- package/dist/index-BoebbJ44.d.ts +49 -0
- package/dist/{index-CoB18TbG.d.ts → index-CnCY-b5V.d.ts} +9 -2
- package/dist/index.d.mts +399 -548
- package/dist/index.d.ts +399 -548
- package/dist/index.js +727 -887
- package/dist/index.mjs +3 -3
- package/dist/platform/admin/index.js +12 -12
- package/dist/platform/admin/index.mjs +6 -6
- package/dist/platform/agents-workspace.js +10 -10
- package/dist/platform/agents-workspace.mjs +9 -9
- package/dist/platform/app-shell.js +5 -5
- package/dist/platform/app-shell.mjs +4 -4
- package/dist/platform/auth/index.js +29 -29
- package/dist/platform/auth/index.mjs +6 -6
- package/dist/platform/billing/index.js +5 -5
- package/dist/platform/billing/index.mjs +4 -4
- package/dist/platform/impersonation/index.js +5 -5
- package/dist/platform/impersonation/index.mjs +4 -4
- package/dist/platform/index.d.mts +3 -39
- package/dist/platform/index.d.ts +3 -39
- package/dist/platform/index.js +102 -4812
- package/dist/platform/index.js.map +1 -1
- package/dist/platform/index.mjs +25 -4730
- package/dist/platform/index.mjs.map +1 -1
- package/dist/platform/pages/index.d.mts +4 -4
- package/dist/platform/pages/index.d.ts +4 -4
- package/dist/platform/pages/index.js +199 -199
- package/dist/platform/pages/index.mjs +11 -11
- package/dist/platform/rbac.d.mts +2 -1
- package/dist/platform/rbac.d.ts +2 -1
- package/dist/platform/rbac.js +2 -2
- package/dist/platform/rbac.mjs +1 -1
- package/dist/platform/settings/index.js +9 -9
- package/dist/platform/settings/index.mjs +8 -8
- package/dist/platform/utils/index.js +3 -3
- package/dist/platform/utils/index.js.map +1 -1
- package/dist/platform/utils/index.mjs +1 -1
- package/dist/platform/utils/index.mjs.map +1 -1
- package/dist/platform/workflow-api-client.d.mts +2 -2
- package/dist/platform/workflow-api-client.d.ts +2 -2
- package/dist/platform/workflow-api-client.js +62 -62
- package/dist/platform/workflow-api-client.mjs +2 -2
- package/dist/platform/workflow-canvas-shell.js +7 -7
- package/dist/platform/workflow-canvas-shell.mjs +6 -6
- package/dist/{workflow-api-client-DoYj7nHz.d.mts → workflow-api-client-CpFl3WcG.d.mts} +1 -1
- package/dist/{workflow-api-client-BKD8OfP_.d.ts → workflow-api-client-uLICOanv.d.ts} +1 -1
- package/dist/workflow-canvas--qaYKuMm.d.ts +113 -0
- package/dist/workflow-canvas-B80fmD_n.d.mts +113 -0
- package/package.json +15 -5
- package/src/styles/liquid-glass.css +283 -2
- package/dist/chunk-3ZUMJTDT.mjs.map +0 -1
- package/dist/chunk-5W7L7BT7.mjs.map +0 -1
- package/dist/chunk-AOUUZ52N.js.map +0 -1
- package/dist/chunk-C3H4FM4A.js.map +0 -1
- package/dist/chunk-EFOXN3LC.js.map +0 -1
- package/dist/chunk-FAGDZEKM.js.map +0 -1
- package/dist/chunk-HDCUWUNH.js.map +0 -1
- package/dist/chunk-HZ4LOVHM.js.map +0 -1
- package/dist/chunk-I2NZGVBG.js.map +0 -1
- package/dist/chunk-IRT4T3CU.mjs.map +0 -1
- package/dist/chunk-JN6IL6OH.mjs.map +0 -1
- package/dist/chunk-LEKZUS6N.mjs.map +0 -1
- package/dist/chunk-MVBIAXVN.mjs.map +0 -1
- package/dist/chunk-NJS2YC3J.js.map +0 -1
- package/dist/chunk-OL73LBX5.mjs.map +0 -1
- package/dist/chunk-QYA53LUF.mjs.map +0 -1
- package/dist/chunk-R4TQWXNG.mjs.map +0 -1
- package/dist/chunk-RL35XATZ.js.map +0 -1
- package/dist/chunk-SYNVNTLJ.mjs.map +0 -1
- package/dist/chunk-TVMLV675.js.map +0 -1
- package/dist/chunk-U7XM3N7F.mjs.map +0 -1
- package/dist/chunk-UDDZTTLO.mjs.map +0 -1
- package/dist/chunk-W5OEBO6E.js.map +0 -1
- package/dist/chunk-ZJPNP2YW.mjs.map +0 -1
- package/dist/chunk-ZM5MVWIT.js.map +0 -1
- package/src/brand/logos/kori-icon.svg +0 -45
- package/src/brand/logos/kori-logo-dark.svg +0 -40
- package/src/brand/logos/kori-logo.svg +0 -43
package/dist/astrlabe/utils.js
CHANGED
|
@@ -1,38 +1,38 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
5
|
-
var
|
|
4
|
+
var chunkDJDZIRM6_js = require('../chunk-DJDZIRM6.js');
|
|
5
|
+
var chunk72SWXOD5_js = require('../chunk-72SWXOD5.js');
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
Object.defineProperty(exports, "topologicalSortAgents", {
|
|
10
10
|
enumerable: true,
|
|
11
|
-
get: function () { return
|
|
11
|
+
get: function () { return chunkDJDZIRM6_js.topologicalSortAgents; }
|
|
12
12
|
});
|
|
13
13
|
Object.defineProperty(exports, "validateGraphNodeConfigs", {
|
|
14
14
|
enumerable: true,
|
|
15
|
-
get: function () { return
|
|
15
|
+
get: function () { return chunkDJDZIRM6_js.validateGraphNodeConfigs; }
|
|
16
16
|
});
|
|
17
17
|
Object.defineProperty(exports, "validateNodeConfig", {
|
|
18
18
|
enumerable: true,
|
|
19
|
-
get: function () { return
|
|
19
|
+
get: function () { return chunkDJDZIRM6_js.validateNodeConfig; }
|
|
20
20
|
});
|
|
21
21
|
Object.defineProperty(exports, "validateWorkflowGraph", {
|
|
22
22
|
enumerable: true,
|
|
23
|
-
get: function () { return
|
|
23
|
+
get: function () { return chunkDJDZIRM6_js.validateWorkflowGraph; }
|
|
24
24
|
});
|
|
25
25
|
Object.defineProperty(exports, "applyDagreLayout", {
|
|
26
26
|
enumerable: true,
|
|
27
|
-
get: function () { return
|
|
27
|
+
get: function () { return chunk72SWXOD5_js.applyDagreLayout; }
|
|
28
28
|
});
|
|
29
29
|
Object.defineProperty(exports, "createDefaultLogicNodeConfig", {
|
|
30
30
|
enumerable: true,
|
|
31
|
-
get: function () { return
|
|
31
|
+
get: function () { return chunk72SWXOD5_js.createDefaultLogicNodeConfig; }
|
|
32
32
|
});
|
|
33
33
|
Object.defineProperty(exports, "getAgentTier", {
|
|
34
34
|
enumerable: true,
|
|
35
|
-
get: function () { return
|
|
35
|
+
get: function () { return chunk72SWXOD5_js.getAgentTier; }
|
|
36
36
|
});
|
|
37
37
|
//# sourceMappingURL=utils.js.map
|
|
38
38
|
//# sourceMappingURL=utils.js.map
|
package/dist/astrlabe/utils.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
export { topologicalSortAgents, validateGraphNodeConfigs, validateNodeConfig, validateWorkflowGraph } from '../chunk-
|
|
3
|
-
export { applyDagreLayout, createDefaultLogicNodeConfig, getAgentTier } from '../chunk-
|
|
2
|
+
export { topologicalSortAgents, validateGraphNodeConfigs, validateNodeConfig, validateWorkflowGraph } from '../chunk-LEXBTVGM.mjs';
|
|
3
|
+
export { applyDagreLayout, createDefaultLogicNodeConfig, getAgentTier } from '../chunk-G7JQ4OCE.mjs';
|
|
4
4
|
//# sourceMappingURL=utils.mjs.map
|
|
5
5
|
//# sourceMappingURL=utils.mjs.map
|
|
@@ -1,69 +1,6 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
|
|
7
|
-
type AgentModalRenderProps = {
|
|
8
|
-
agent: AgentWithPrompts | null;
|
|
9
|
-
models: AgentModel[];
|
|
10
|
-
open: boolean;
|
|
11
|
-
isCreateMode: boolean;
|
|
12
|
-
onClose: () => void;
|
|
13
|
-
onSaved: () => void;
|
|
14
|
-
};
|
|
15
|
-
type LogicNodeModalRenderProps = {
|
|
16
|
-
nodeId: string | null;
|
|
17
|
-
nodeLabel: string;
|
|
18
|
-
config: LogicNodeConfig | null;
|
|
19
|
-
open: boolean;
|
|
20
|
-
onClose: () => void;
|
|
21
|
-
onSave: (nodeId: string, updatedConfig: LogicNodeConfig) => void;
|
|
22
|
-
entities: WorkflowEntityDefinition[];
|
|
23
|
-
};
|
|
24
|
-
type WorkflowCanvasProps = {
|
|
25
|
-
agents: AgentWithPrompts[];
|
|
26
|
-
models: AgentModel[];
|
|
27
|
-
tools?: WorkflowTool[];
|
|
28
|
-
agentTools?: AgentTool[];
|
|
29
|
-
rules?: AgentRule[];
|
|
30
|
-
entities?: WorkflowEntityDefinition[];
|
|
31
|
-
datasources?: Array<{
|
|
32
|
-
id: string;
|
|
33
|
-
name: string;
|
|
34
|
-
dialect: string;
|
|
35
|
-
}>;
|
|
36
|
-
onLoadTables?: (datasourceId: string) => Promise<string[]>;
|
|
37
|
-
onLoadSchema?: (datasourceId: string, table: string) => Promise<Array<{
|
|
38
|
-
name: string;
|
|
39
|
-
type: string;
|
|
40
|
-
nullable?: boolean;
|
|
41
|
-
}>>;
|
|
42
|
-
initialGraph?: WorkflowGraph | null;
|
|
43
|
-
onGraphChange?: (graph: WorkflowGraph) => void;
|
|
44
|
-
onEditTool?: (tool: WorkflowTool) => void;
|
|
45
|
-
onToggleTool?: (tool: WorkflowTool) => void;
|
|
46
|
-
onEditRule?: (rule: AgentRule) => void;
|
|
47
|
-
onToggleRule?: (rule: AgentRule) => void;
|
|
48
|
-
onCancelCreateAgent?: () => void;
|
|
49
|
-
onAgentSaved?: () => void;
|
|
50
|
-
isCreatingAgent?: boolean;
|
|
51
|
-
/** Custom node type components — merged with built-in edge types */
|
|
52
|
-
nodeTypes?: NodeTypes;
|
|
53
|
-
/** Optional: render the AgentModal externally (frontend provides the component) */
|
|
54
|
-
renderAgentModal?: (props: AgentModalRenderProps) => React.ReactNode;
|
|
55
|
-
/** Optional: render a custom LogicNodeModal; defaults to internal modal */
|
|
56
|
-
renderLogicNodeModal?: (props: LogicNodeModalRenderProps) => React.ReactNode;
|
|
57
|
-
};
|
|
58
|
-
declare function WorkflowCanvas(props: WorkflowCanvasProps): react_jsx_runtime.JSX.Element;
|
|
59
|
-
|
|
60
|
-
type BuilderCanvasProps = ComponentProps<typeof WorkflowCanvas>;
|
|
61
|
-
type WorkspaceProps = {
|
|
62
|
-
locale?: string;
|
|
63
|
-
messages?: Record<string, unknown>;
|
|
64
|
-
className?: string;
|
|
65
|
-
workflowId?: string;
|
|
66
|
-
} & Partial<BuilderCanvasProps>;
|
|
67
|
-
declare function Workspace({ locale, messages, className, workflowId, ...canvasProps }: WorkspaceProps): react_jsx_runtime.JSX.Element;
|
|
68
|
-
|
|
69
|
-
export { Workspace, type WorkspaceProps };
|
|
1
|
+
import 'react/jsx-runtime';
|
|
2
|
+
import 'react';
|
|
3
|
+
export { a as Workspace, W as WorkspaceProps } from '../workflow-canvas-B80fmD_n.mjs';
|
|
4
|
+
import './contracts.mjs';
|
|
5
|
+
import '../index-BNRGVAS5.mjs';
|
|
6
|
+
import '@xyflow/react';
|
|
@@ -1,69 +1,6 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
|
|
7
|
-
type AgentModalRenderProps = {
|
|
8
|
-
agent: AgentWithPrompts | null;
|
|
9
|
-
models: AgentModel[];
|
|
10
|
-
open: boolean;
|
|
11
|
-
isCreateMode: boolean;
|
|
12
|
-
onClose: () => void;
|
|
13
|
-
onSaved: () => void;
|
|
14
|
-
};
|
|
15
|
-
type LogicNodeModalRenderProps = {
|
|
16
|
-
nodeId: string | null;
|
|
17
|
-
nodeLabel: string;
|
|
18
|
-
config: LogicNodeConfig | null;
|
|
19
|
-
open: boolean;
|
|
20
|
-
onClose: () => void;
|
|
21
|
-
onSave: (nodeId: string, updatedConfig: LogicNodeConfig) => void;
|
|
22
|
-
entities: WorkflowEntityDefinition[];
|
|
23
|
-
};
|
|
24
|
-
type WorkflowCanvasProps = {
|
|
25
|
-
agents: AgentWithPrompts[];
|
|
26
|
-
models: AgentModel[];
|
|
27
|
-
tools?: WorkflowTool[];
|
|
28
|
-
agentTools?: AgentTool[];
|
|
29
|
-
rules?: AgentRule[];
|
|
30
|
-
entities?: WorkflowEntityDefinition[];
|
|
31
|
-
datasources?: Array<{
|
|
32
|
-
id: string;
|
|
33
|
-
name: string;
|
|
34
|
-
dialect: string;
|
|
35
|
-
}>;
|
|
36
|
-
onLoadTables?: (datasourceId: string) => Promise<string[]>;
|
|
37
|
-
onLoadSchema?: (datasourceId: string, table: string) => Promise<Array<{
|
|
38
|
-
name: string;
|
|
39
|
-
type: string;
|
|
40
|
-
nullable?: boolean;
|
|
41
|
-
}>>;
|
|
42
|
-
initialGraph?: WorkflowGraph | null;
|
|
43
|
-
onGraphChange?: (graph: WorkflowGraph) => void;
|
|
44
|
-
onEditTool?: (tool: WorkflowTool) => void;
|
|
45
|
-
onToggleTool?: (tool: WorkflowTool) => void;
|
|
46
|
-
onEditRule?: (rule: AgentRule) => void;
|
|
47
|
-
onToggleRule?: (rule: AgentRule) => void;
|
|
48
|
-
onCancelCreateAgent?: () => void;
|
|
49
|
-
onAgentSaved?: () => void;
|
|
50
|
-
isCreatingAgent?: boolean;
|
|
51
|
-
/** Custom node type components — merged with built-in edge types */
|
|
52
|
-
nodeTypes?: NodeTypes;
|
|
53
|
-
/** Optional: render the AgentModal externally (frontend provides the component) */
|
|
54
|
-
renderAgentModal?: (props: AgentModalRenderProps) => React.ReactNode;
|
|
55
|
-
/** Optional: render a custom LogicNodeModal; defaults to internal modal */
|
|
56
|
-
renderLogicNodeModal?: (props: LogicNodeModalRenderProps) => React.ReactNode;
|
|
57
|
-
};
|
|
58
|
-
declare function WorkflowCanvas(props: WorkflowCanvasProps): react_jsx_runtime.JSX.Element;
|
|
59
|
-
|
|
60
|
-
type BuilderCanvasProps = ComponentProps<typeof WorkflowCanvas>;
|
|
61
|
-
type WorkspaceProps = {
|
|
62
|
-
locale?: string;
|
|
63
|
-
messages?: Record<string, unknown>;
|
|
64
|
-
className?: string;
|
|
65
|
-
workflowId?: string;
|
|
66
|
-
} & Partial<BuilderCanvasProps>;
|
|
67
|
-
declare function Workspace({ locale, messages, className, workflowId, ...canvasProps }: WorkspaceProps): react_jsx_runtime.JSX.Element;
|
|
68
|
-
|
|
69
|
-
export { Workspace, type WorkspaceProps };
|
|
1
|
+
import 'react/jsx-runtime';
|
|
2
|
+
import 'react';
|
|
3
|
+
export { a as Workspace, W as WorkspaceProps } from '../workflow-canvas--qaYKuMm.js';
|
|
4
|
+
import './contracts.js';
|
|
5
|
+
import '../index-CnCY-b5V.js';
|
|
6
|
+
import '@xyflow/react';
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
5
|
-
require('../chunk-
|
|
4
|
+
var chunkM7KSEUZR_js = require('../chunk-M7KSEUZR.js');
|
|
5
|
+
require('../chunk-FSBR4RCK.js');
|
|
6
6
|
require('../chunk-UZ3CMNUJ.js');
|
|
7
7
|
require('../chunk-YXN2K77G.js');
|
|
8
8
|
require('../chunk-S7KHTUHA.js');
|
|
9
|
-
require('../chunk-
|
|
10
|
-
require('../chunk-
|
|
9
|
+
require('../chunk-SY4MUT5V.js');
|
|
10
|
+
require('../chunk-2OZZH2IO.js');
|
|
11
11
|
require('../chunk-P4YYEM4B.js');
|
|
12
|
-
require('../chunk-
|
|
12
|
+
require('../chunk-72SWXOD5.js');
|
|
13
13
|
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
Object.defineProperty(exports, "Workspace", {
|
|
17
17
|
enumerable: true,
|
|
18
|
-
get: function () { return
|
|
18
|
+
get: function () { return chunkM7KSEUZR_js.Workspace; }
|
|
19
19
|
});
|
|
20
20
|
//# sourceMappingURL=workflow-canvas.js.map
|
|
21
21
|
//# sourceMappingURL=workflow-canvas.js.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
export { Workspace } from '../chunk-
|
|
3
|
-
import '../chunk-
|
|
2
|
+
export { Workspace } from '../chunk-VV6SYMPM.mjs';
|
|
3
|
+
import '../chunk-AGGOHPMZ.mjs';
|
|
4
4
|
import '../chunk-D2JF6C3E.mjs';
|
|
5
5
|
import '../chunk-7VJ7CMMT.mjs';
|
|
6
6
|
import '../chunk-QWG2FMUN.mjs';
|
|
7
|
-
import '../chunk-
|
|
8
|
-
import '../chunk-
|
|
7
|
+
import '../chunk-RHRJXK5R.mjs';
|
|
8
|
+
import '../chunk-3AY5HIQ6.mjs';
|
|
9
9
|
import '../chunk-OZNTQROP.mjs';
|
|
10
|
-
import '../chunk-
|
|
10
|
+
import '../chunk-G7JQ4OCE.mjs';
|
|
11
11
|
//# sourceMappingURL=workflow-canvas.mjs.map
|
|
12
12
|
//# sourceMappingURL=workflow-canvas.mjs.map
|
package/dist/brand/index.d.mts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*
|
|
6
6
|
* Logo SVGs live in src/brand/logos/ and are published as-is.
|
|
7
7
|
* Vite apps can import them directly:
|
|
8
|
-
* import
|
|
8
|
+
* import astrlabeIcon from '@datatechsolutions/ui/src/brand/logos/astrlabe-icon.svg'
|
|
9
9
|
* Or use the APP_LOGOS/APP_THEMES which re-export them (works in Vite).
|
|
10
10
|
*/
|
|
11
11
|
interface AppTheme {
|
|
@@ -37,20 +37,6 @@ declare const APP_THEMES: {
|
|
|
37
37
|
readonly tileShadow: "shadow-violet-500/20";
|
|
38
38
|
readonly gradient: "from-violet-400 to-purple-400";
|
|
39
39
|
};
|
|
40
|
-
readonly 'kori-erp': {
|
|
41
|
-
readonly text: "text-orange-400";
|
|
42
|
-
readonly textLight: "text-orange-300";
|
|
43
|
-
readonly badgeBg: "bg-orange-500/10";
|
|
44
|
-
readonly badgeText: "text-orange-300";
|
|
45
|
-
readonly ring: "ring-orange-500/30";
|
|
46
|
-
readonly border: "border-orange-500/30";
|
|
47
|
-
readonly borderGlow: "border-orange-500/20";
|
|
48
|
-
readonly surfaceBg: "bg-orange-500/[0.06]";
|
|
49
|
-
readonly dot: "bg-orange-400";
|
|
50
|
-
readonly tileGradient: "from-orange-600/80 to-amber-600/80";
|
|
51
|
-
readonly tileShadow: "shadow-orange-500/20";
|
|
52
|
-
readonly gradient: "from-orange-400 to-amber-400";
|
|
53
|
-
};
|
|
54
40
|
readonly windsock: {
|
|
55
41
|
readonly text: "text-emerald-400";
|
|
56
42
|
readonly textLight: "text-emerald-300";
|
package/dist/brand/index.d.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*
|
|
6
6
|
* Logo SVGs live in src/brand/logos/ and are published as-is.
|
|
7
7
|
* Vite apps can import them directly:
|
|
8
|
-
* import
|
|
8
|
+
* import astrlabeIcon from '@datatechsolutions/ui/src/brand/logos/astrlabe-icon.svg'
|
|
9
9
|
* Or use the APP_LOGOS/APP_THEMES which re-export them (works in Vite).
|
|
10
10
|
*/
|
|
11
11
|
interface AppTheme {
|
|
@@ -37,20 +37,6 @@ declare const APP_THEMES: {
|
|
|
37
37
|
readonly tileShadow: "shadow-violet-500/20";
|
|
38
38
|
readonly gradient: "from-violet-400 to-purple-400";
|
|
39
39
|
};
|
|
40
|
-
readonly 'kori-erp': {
|
|
41
|
-
readonly text: "text-orange-400";
|
|
42
|
-
readonly textLight: "text-orange-300";
|
|
43
|
-
readonly badgeBg: "bg-orange-500/10";
|
|
44
|
-
readonly badgeText: "text-orange-300";
|
|
45
|
-
readonly ring: "ring-orange-500/30";
|
|
46
|
-
readonly border: "border-orange-500/30";
|
|
47
|
-
readonly borderGlow: "border-orange-500/20";
|
|
48
|
-
readonly surfaceBg: "bg-orange-500/[0.06]";
|
|
49
|
-
readonly dot: "bg-orange-400";
|
|
50
|
-
readonly tileGradient: "from-orange-600/80 to-amber-600/80";
|
|
51
|
-
readonly tileShadow: "shadow-orange-500/20";
|
|
52
|
-
readonly gradient: "from-orange-400 to-amber-400";
|
|
53
|
-
};
|
|
54
40
|
readonly windsock: {
|
|
55
41
|
readonly text: "text-emerald-400";
|
|
56
42
|
readonly textLight: "text-emerald-300";
|
package/dist/brand/index.js
CHANGED
|
@@ -17,20 +17,6 @@ var APP_THEMES = {
|
|
|
17
17
|
tileShadow: "shadow-violet-500/20",
|
|
18
18
|
gradient: "from-violet-400 to-purple-400"
|
|
19
19
|
},
|
|
20
|
-
"kori-erp": {
|
|
21
|
-
text: "text-orange-400",
|
|
22
|
-
textLight: "text-orange-300",
|
|
23
|
-
badgeBg: "bg-orange-500/10",
|
|
24
|
-
badgeText: "text-orange-300",
|
|
25
|
-
ring: "ring-orange-500/30",
|
|
26
|
-
border: "border-orange-500/30",
|
|
27
|
-
borderGlow: "border-orange-500/20",
|
|
28
|
-
surfaceBg: "bg-orange-500/[0.06]",
|
|
29
|
-
dot: "bg-orange-400",
|
|
30
|
-
tileGradient: "from-orange-600/80 to-amber-600/80",
|
|
31
|
-
tileShadow: "shadow-orange-500/20",
|
|
32
|
-
gradient: "from-orange-400 to-amber-400"
|
|
33
|
-
},
|
|
34
20
|
windsock: {
|
|
35
21
|
text: "text-emerald-400",
|
|
36
22
|
textLight: "text-emerald-300",
|
package/dist/brand/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/brand/index.ts"],"names":[],"mappings":";;;AA4BO,IAAM,UAAA,GAAa;AAAA,EACxB,QAAA,EAAU;AAAA,IACR,IAAA,EAAM,iBAAA;AAAA,IACN,SAAA,EAAW,iBAAA;AAAA,IACX,OAAA,EAAS,kBAAA;AAAA,IACT,SAAA,EAAW,iBAAA;AAAA,IACX,IAAA,EAAM,oBAAA;AAAA,IACN,MAAA,EAAQ,sBAAA;AAAA,IACR,UAAA,EAAY,sBAAA;AAAA,IACZ,SAAA,EAAW,sBAAA;AAAA,IACX,GAAA,EAAK,eAAA;AAAA,IACL,YAAA,EAAc,qCAAA;AAAA,IACd,UAAA,EAAY,sBAAA;AAAA,IACZ,QAAA,EAAU;AAAA,GACZ;AAAA,EACA,
|
|
1
|
+
{"version":3,"sources":["../../src/brand/index.ts"],"names":[],"mappings":";;;AA4BO,IAAM,UAAA,GAAa;AAAA,EACxB,QAAA,EAAU;AAAA,IACR,IAAA,EAAM,iBAAA;AAAA,IACN,SAAA,EAAW,iBAAA;AAAA,IACX,OAAA,EAAS,kBAAA;AAAA,IACT,SAAA,EAAW,iBAAA;AAAA,IACX,IAAA,EAAM,oBAAA;AAAA,IACN,MAAA,EAAQ,sBAAA;AAAA,IACR,UAAA,EAAY,sBAAA;AAAA,IACZ,SAAA,EAAW,sBAAA;AAAA,IACX,GAAA,EAAK,eAAA;AAAA,IACL,YAAA,EAAc,qCAAA;AAAA,IACd,UAAA,EAAY,sBAAA;AAAA,IACZ,QAAA,EAAU;AAAA,GACZ;AAAA,EACA,QAAA,EAAU;AAAA,IACR,IAAA,EAAM,kBAAA;AAAA,IACN,SAAA,EAAW,kBAAA;AAAA,IACX,OAAA,EAAS,mBAAA;AAAA,IACT,SAAA,EAAW,kBAAA;AAAA,IACX,IAAA,EAAM,qBAAA;AAAA,IACN,MAAA,EAAQ,uBAAA;AAAA,IACR,UAAA,EAAY,uBAAA;AAAA,IACZ,SAAA,EAAW,uBAAA;AAAA,IACX,GAAA,EAAK,gBAAA;AAAA,IACL,YAAA,EAAc,oCAAA;AAAA,IACd,UAAA,EAAY,uBAAA;AAAA,IACZ,QAAA,EAAU;AAAA,GACZ;AAAA,EACA,MAAA,EAAQ;AAAA,IACN,IAAA,EAAM,cAAA;AAAA,IACN,SAAA,EAAW,cAAA;AAAA,IACX,OAAA,EAAS,eAAA;AAAA,IACT,SAAA,EAAW,cAAA;AAAA,IACX,IAAA,EAAM,iBAAA;AAAA,IACN,MAAA,EAAQ,mBAAA;AAAA,IACR,UAAA,EAAY,mBAAA;AAAA,IACZ,SAAA,EAAW,mBAAA;AAAA,IACX,GAAA,EAAK,YAAA;AAAA,IACL,YAAA,EAAc,gCAAA;AAAA,IACd,UAAA,EAAY,mBAAA;AAAA,IACZ,QAAA,EAAU;AAAA;AAEd","file":"index.js","sourcesContent":["/**\n * Brand — centralized app themes, icons, and logos\n * =================================================\n * Single source of truth for all app branding across the platform.\n *\n * Logo SVGs live in src/brand/logos/ and are published as-is.\n * Vite apps can import them directly:\n * import astrlabeIcon from '@datatechsolutions/ui/src/brand/logos/astrlabe-icon.svg'\n * Or use the APP_LOGOS/APP_THEMES which re-export them (works in Vite).\n */\n\n// ── App themes (Tailwind class tokens) ────────────────────────────────\n\nexport interface AppTheme {\n text: string\n textLight: string\n badgeBg: string\n badgeText: string\n ring: string\n border: string\n borderGlow: string\n surfaceBg: string\n dot: string\n tileGradient: string\n tileShadow: string\n gradient: string\n}\n\nexport const APP_THEMES = {\n astrlabe: {\n text: 'text-violet-400',\n textLight: 'text-violet-300',\n badgeBg: 'bg-violet-500/10',\n badgeText: 'text-violet-300',\n ring: 'ring-violet-500/30',\n border: 'border-violet-500/30',\n borderGlow: 'border-violet-500/20',\n surfaceBg: 'bg-violet-500/[0.06]',\n dot: 'bg-violet-400',\n tileGradient: 'from-violet-600/80 to-purple-600/80',\n tileShadow: 'shadow-violet-500/20',\n gradient: 'from-violet-400 to-purple-400',\n },\n windsock: {\n text: 'text-emerald-400',\n textLight: 'text-emerald-300',\n badgeBg: 'bg-emerald-500/10',\n badgeText: 'text-emerald-300',\n ring: 'ring-emerald-500/30',\n border: 'border-emerald-500/30',\n borderGlow: 'border-emerald-500/20',\n surfaceBg: 'bg-emerald-500/[0.06]',\n dot: 'bg-emerald-400',\n tileGradient: 'from-emerald-600/80 to-teal-600/80',\n tileShadow: 'shadow-emerald-500/20',\n gradient: 'from-emerald-400 to-teal-400',\n },\n fakhir: {\n text: 'text-red-400',\n textLight: 'text-red-300',\n badgeBg: 'bg-red-500/10',\n badgeText: 'text-red-300',\n ring: 'ring-red-500/30',\n border: 'border-red-500/30',\n borderGlow: 'border-red-500/20',\n surfaceBg: 'bg-red-500/[0.06]',\n dot: 'bg-red-400',\n tileGradient: 'from-red-600/80 to-rose-600/80',\n tileShadow: 'shadow-red-500/20',\n gradient: 'from-red-400 to-rose-400',\n },\n} as const satisfies Record<string, AppTheme>\n\nexport type AppId = keyof typeof APP_THEMES\n"]}
|
package/dist/brand/index.mjs
CHANGED
|
@@ -15,20 +15,6 @@ var APP_THEMES = {
|
|
|
15
15
|
tileShadow: "shadow-violet-500/20",
|
|
16
16
|
gradient: "from-violet-400 to-purple-400"
|
|
17
17
|
},
|
|
18
|
-
"kori-erp": {
|
|
19
|
-
text: "text-orange-400",
|
|
20
|
-
textLight: "text-orange-300",
|
|
21
|
-
badgeBg: "bg-orange-500/10",
|
|
22
|
-
badgeText: "text-orange-300",
|
|
23
|
-
ring: "ring-orange-500/30",
|
|
24
|
-
border: "border-orange-500/30",
|
|
25
|
-
borderGlow: "border-orange-500/20",
|
|
26
|
-
surfaceBg: "bg-orange-500/[0.06]",
|
|
27
|
-
dot: "bg-orange-400",
|
|
28
|
-
tileGradient: "from-orange-600/80 to-amber-600/80",
|
|
29
|
-
tileShadow: "shadow-orange-500/20",
|
|
30
|
-
gradient: "from-orange-400 to-amber-400"
|
|
31
|
-
},
|
|
32
18
|
windsock: {
|
|
33
19
|
text: "text-emerald-400",
|
|
34
20
|
textLight: "text-emerald-300",
|
package/dist/brand/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/brand/index.ts"],"names":[],"mappings":";AA4BO,IAAM,UAAA,GAAa;AAAA,EACxB,QAAA,EAAU;AAAA,IACR,IAAA,EAAM,iBAAA;AAAA,IACN,SAAA,EAAW,iBAAA;AAAA,IACX,OAAA,EAAS,kBAAA;AAAA,IACT,SAAA,EAAW,iBAAA;AAAA,IACX,IAAA,EAAM,oBAAA;AAAA,IACN,MAAA,EAAQ,sBAAA;AAAA,IACR,UAAA,EAAY,sBAAA;AAAA,IACZ,SAAA,EAAW,sBAAA;AAAA,IACX,GAAA,EAAK,eAAA;AAAA,IACL,YAAA,EAAc,qCAAA;AAAA,IACd,UAAA,EAAY,sBAAA;AAAA,IACZ,QAAA,EAAU;AAAA,GACZ;AAAA,EACA,
|
|
1
|
+
{"version":3,"sources":["../../src/brand/index.ts"],"names":[],"mappings":";AA4BO,IAAM,UAAA,GAAa;AAAA,EACxB,QAAA,EAAU;AAAA,IACR,IAAA,EAAM,iBAAA;AAAA,IACN,SAAA,EAAW,iBAAA;AAAA,IACX,OAAA,EAAS,kBAAA;AAAA,IACT,SAAA,EAAW,iBAAA;AAAA,IACX,IAAA,EAAM,oBAAA;AAAA,IACN,MAAA,EAAQ,sBAAA;AAAA,IACR,UAAA,EAAY,sBAAA;AAAA,IACZ,SAAA,EAAW,sBAAA;AAAA,IACX,GAAA,EAAK,eAAA;AAAA,IACL,YAAA,EAAc,qCAAA;AAAA,IACd,UAAA,EAAY,sBAAA;AAAA,IACZ,QAAA,EAAU;AAAA,GACZ;AAAA,EACA,QAAA,EAAU;AAAA,IACR,IAAA,EAAM,kBAAA;AAAA,IACN,SAAA,EAAW,kBAAA;AAAA,IACX,OAAA,EAAS,mBAAA;AAAA,IACT,SAAA,EAAW,kBAAA;AAAA,IACX,IAAA,EAAM,qBAAA;AAAA,IACN,MAAA,EAAQ,uBAAA;AAAA,IACR,UAAA,EAAY,uBAAA;AAAA,IACZ,SAAA,EAAW,uBAAA;AAAA,IACX,GAAA,EAAK,gBAAA;AAAA,IACL,YAAA,EAAc,oCAAA;AAAA,IACd,UAAA,EAAY,uBAAA;AAAA,IACZ,QAAA,EAAU;AAAA,GACZ;AAAA,EACA,MAAA,EAAQ;AAAA,IACN,IAAA,EAAM,cAAA;AAAA,IACN,SAAA,EAAW,cAAA;AAAA,IACX,OAAA,EAAS,eAAA;AAAA,IACT,SAAA,EAAW,cAAA;AAAA,IACX,IAAA,EAAM,iBAAA;AAAA,IACN,MAAA,EAAQ,mBAAA;AAAA,IACR,UAAA,EAAY,mBAAA;AAAA,IACZ,SAAA,EAAW,mBAAA;AAAA,IACX,GAAA,EAAK,YAAA;AAAA,IACL,YAAA,EAAc,gCAAA;AAAA,IACd,UAAA,EAAY,mBAAA;AAAA,IACZ,QAAA,EAAU;AAAA;AAEd","file":"index.mjs","sourcesContent":["/**\n * Brand — centralized app themes, icons, and logos\n * =================================================\n * Single source of truth for all app branding across the platform.\n *\n * Logo SVGs live in src/brand/logos/ and are published as-is.\n * Vite apps can import them directly:\n * import astrlabeIcon from '@datatechsolutions/ui/src/brand/logos/astrlabe-icon.svg'\n * Or use the APP_LOGOS/APP_THEMES which re-export them (works in Vite).\n */\n\n// ── App themes (Tailwind class tokens) ────────────────────────────────\n\nexport interface AppTheme {\n text: string\n textLight: string\n badgeBg: string\n badgeText: string\n ring: string\n border: string\n borderGlow: string\n surfaceBg: string\n dot: string\n tileGradient: string\n tileShadow: string\n gradient: string\n}\n\nexport const APP_THEMES = {\n astrlabe: {\n text: 'text-violet-400',\n textLight: 'text-violet-300',\n badgeBg: 'bg-violet-500/10',\n badgeText: 'text-violet-300',\n ring: 'ring-violet-500/30',\n border: 'border-violet-500/30',\n borderGlow: 'border-violet-500/20',\n surfaceBg: 'bg-violet-500/[0.06]',\n dot: 'bg-violet-400',\n tileGradient: 'from-violet-600/80 to-purple-600/80',\n tileShadow: 'shadow-violet-500/20',\n gradient: 'from-violet-400 to-purple-400',\n },\n windsock: {\n text: 'text-emerald-400',\n textLight: 'text-emerald-300',\n badgeBg: 'bg-emerald-500/10',\n badgeText: 'text-emerald-300',\n ring: 'ring-emerald-500/30',\n border: 'border-emerald-500/30',\n borderGlow: 'border-emerald-500/20',\n surfaceBg: 'bg-emerald-500/[0.06]',\n dot: 'bg-emerald-400',\n tileGradient: 'from-emerald-600/80 to-teal-600/80',\n tileShadow: 'shadow-emerald-500/20',\n gradient: 'from-emerald-400 to-teal-400',\n },\n fakhir: {\n text: 'text-red-400',\n textLight: 'text-red-300',\n badgeBg: 'bg-red-500/10',\n badgeText: 'text-red-300',\n ring: 'ring-red-500/30',\n border: 'border-red-500/30',\n borderGlow: 'border-red-500/20',\n surfaceBg: 'bg-red-500/[0.06]',\n dot: 'bg-red-400',\n tileGradient: 'from-red-600/80 to-rose-600/80',\n tileShadow: 'shadow-red-500/20',\n gradient: 'from-red-400 to-rose-400',\n },\n} as const satisfies Record<string, AppTheme>\n\nexport type AppId = keyof typeof APP_THEMES\n"]}
|
|
@@ -19,5 +19,5 @@ function buildLambdaApiUrl(path) {
|
|
|
19
19
|
|
|
20
20
|
exports.buildLambdaApiUrl = buildLambdaApiUrl;
|
|
21
21
|
exports.getLambdaApiBase = getLambdaApiBase;
|
|
22
|
-
//# sourceMappingURL=chunk-
|
|
23
|
-
//# sourceMappingURL=chunk-
|
|
22
|
+
//# sourceMappingURL=chunk-2OZZH2IO.js.map
|
|
23
|
+
//# sourceMappingURL=chunk-2OZZH2IO.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/platform/utils/lambda-endpoint.ts"],"names":[],"mappings":";;;AAEA,IAAM,oBAAoB,CAAC,KAAA,KAA0B,KAAA,CAAM,OAAA,CAAQ,OAAO,EAAE,CAAA;AAErE,SAAS,gBAAA,GAA2B;AACzC,EAAA,MAAM,UAAA,GAAa,SAAY,CAAI,uBAAA;AACnC,EAAA,IAAI,UAAA,IAAc,WAAW,IAAA,EAAK,CAAE,SAAS,CAAA,EAAG,OAAO,kBAAkB,UAAU,CAAA;AAEnF,EAAA,MAAM,WAAA,GAAc,SAAY,CAAI,oBAAA;AACpC,EAAA,IAAI,WAAA,IAAe,YAAY,IAAA,EAAK,CAAE,SAAS,CAAA,EAAG,OAAO,kBAAkB,WAAW,CAAA;AAEtF,EAAA,MAAM,IAAI,KAAA;AAAA,IACR;AAAA,GACF;AACF;AAEO,SAAS,kBAAkB,IAAA,EAAsB;AACtD,EAAA,MAAM,iBAAiB,IAAA,CAAK,UAAA,CAAW,GAAG,CAAA,GAAI,IAAA,GAAO,IAAI,IAAI,CAAA,CAAA;AAC7D,EAAA,OAAO,CAAA,EAAG,gBAAA,EAAkB,CAAA,EAAG,cAAc,CAAA,CAAA;AAC/C","file":"chunk-2OZZH2IO.js","sourcesContent":["// `import.meta.env` is augmented in src/svg.d.ts.\n\nconst trimTrailingSlash = (value: string): string => value.replace(/\\/$/, '')\n\nexport function getLambdaApiBase(): string {\n const directBase = import.meta.env.VITE_LAMBDA_CLIENT_BASE\n if (directBase && directBase.trim().length > 0) return trimTrailingSlash(directBase)\n\n const gatewayBase = import.meta.env.VITE_API_GATEWAY_URL\n if (gatewayBase && gatewayBase.trim().length > 0) return trimTrailingSlash(gatewayBase)\n\n throw new Error(\n 'Missing workflow API base URL. Set VITE_LAMBDA_CLIENT_BASE or VITE_API_GATEWAY_URL.'\n )\n}\n\nexport function buildLambdaApiUrl(path: string): string {\n const normalizedPath = path.startsWith('/') ? path : `/${path}`\n return `${getLambdaApiBase()}${normalizedPath}`\n}\n"]}
|
|
@@ -16,5 +16,5 @@ function buildLambdaApiUrl(path) {
|
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
export { buildLambdaApiUrl, getLambdaApiBase };
|
|
19
|
-
//# sourceMappingURL=chunk-
|
|
20
|
-
//# sourceMappingURL=chunk-
|
|
19
|
+
//# sourceMappingURL=chunk-3AY5HIQ6.mjs.map
|
|
20
|
+
//# sourceMappingURL=chunk-3AY5HIQ6.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/platform/utils/lambda-endpoint.ts"],"names":[],"mappings":";AAEA,IAAM,oBAAoB,CAAC,KAAA,KAA0B,KAAA,CAAM,OAAA,CAAQ,OAAO,EAAE,CAAA;AAErE,SAAS,gBAAA,GAA2B;AACzC,EAAA,MAAM,UAAA,GAAa,YAAY,GAAA,CAAI,uBAAA;AACnC,EAAA,IAAI,UAAA,IAAc,WAAW,IAAA,EAAK,CAAE,SAAS,CAAA,EAAG,OAAO,kBAAkB,UAAU,CAAA;AAEnF,EAAA,MAAM,WAAA,GAAc,YAAY,GAAA,CAAI,oBAAA;AACpC,EAAA,IAAI,WAAA,IAAe,YAAY,IAAA,EAAK,CAAE,SAAS,CAAA,EAAG,OAAO,kBAAkB,WAAW,CAAA;AAEtF,EAAA,MAAM,IAAI,KAAA;AAAA,IACR;AAAA,GACF;AACF;AAEO,SAAS,kBAAkB,IAAA,EAAsB;AACtD,EAAA,MAAM,iBAAiB,IAAA,CAAK,UAAA,CAAW,GAAG,CAAA,GAAI,IAAA,GAAO,IAAI,IAAI,CAAA,CAAA;AAC7D,EAAA,OAAO,CAAA,EAAG,gBAAA,EAAkB,CAAA,EAAG,cAAc,CAAA,CAAA;AAC/C","file":"chunk-3AY5HIQ6.mjs","sourcesContent":["// `import.meta.env` is augmented in src/svg.d.ts.\n\nconst trimTrailingSlash = (value: string): string => value.replace(/\\/$/, '')\n\nexport function getLambdaApiBase(): string {\n const directBase = import.meta.env.VITE_LAMBDA_CLIENT_BASE\n if (directBase && directBase.trim().length > 0) return trimTrailingSlash(directBase)\n\n const gatewayBase = import.meta.env.VITE_API_GATEWAY_URL\n if (gatewayBase && gatewayBase.trim().length > 0) return trimTrailingSlash(gatewayBase)\n\n throw new Error(\n 'Missing workflow API base URL. Set VITE_LAMBDA_CLIENT_BASE or VITE_API_GATEWAY_URL.'\n )\n}\n\nexport function buildLambdaApiUrl(path: string): string {\n const normalizedPath = path.startsWith('/') ? path : `/${path}`\n return `${getLambdaApiBase()}${normalizedPath}`\n}\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var chunkFSBR4RCK_js = require('./chunk-FSBR4RCK.js');
|
|
5
5
|
var jsxRuntime = require('react/jsx-runtime');
|
|
6
6
|
|
|
7
7
|
function OtpInput({
|
|
@@ -120,7 +120,7 @@ function SocialLoginButtons({
|
|
|
120
120
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col gap-2.5", children: providers.map((provider) => {
|
|
121
121
|
const { label, Icon } = PROVIDER_CONFIG[provider];
|
|
122
122
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
123
|
-
|
|
123
|
+
chunkFSBR4RCK_js.Button,
|
|
124
124
|
{
|
|
125
125
|
type: "button",
|
|
126
126
|
color: "ios-glass-blue",
|
|
@@ -144,5 +144,5 @@ exports.BackupCodeGrid = BackupCodeGrid;
|
|
|
144
144
|
exports.OtpInput = OtpInput;
|
|
145
145
|
exports.PasswordStrengthMeter = PasswordStrengthMeter;
|
|
146
146
|
exports.SocialLoginButtons = SocialLoginButtons;
|
|
147
|
-
//# sourceMappingURL=chunk-
|
|
148
|
-
//# sourceMappingURL=chunk-
|
|
147
|
+
//# sourceMappingURL=chunk-45QAUEYT.js.map
|
|
148
|
+
//# sourceMappingURL=chunk-45QAUEYT.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/platform/auth/components.tsx"],"names":["jsxs","jsx","Button"],"mappings":"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","file":"chunk-JSNRCYSO.js","sourcesContent":["import React, { type ReactNode } from 'react'\nimport { Button } from '@ui/index'\n\n// =============================================================================\n// Stub UI components for windsock auth flows\n// These components are not exported by @datatechsolutions/ui and are defined\n// locally with minimal implementations.\n// =============================================================================\n\n// ── SocialProvider type ─────────────────────────────────────────────────────\n\nexport type SocialProvider = 'google' | 'github' | 'discord' | 'microsoft' | 'apple' | 'amazon'\n\n// ── OtpInput ────────────────────────────────────────────────────────────────\n\nexport interface OtpInputProps {\n value: string\n onChange: (value: string) => void\n onComplete?: (code: string) => void\n error?: string\n disabled?: boolean\n autoFocus?: boolean\n length?: number\n}\n\nexport function OtpInput({\n value,\n onChange,\n onComplete,\n error,\n disabled = false,\n autoFocus = false,\n length = 6,\n}: OtpInputProps) {\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const newValue = event.target.value.replace(/\\D/g, '').slice(0, length)\n onChange(newValue)\n if (newValue.length === length && onComplete) {\n onComplete(newValue)\n }\n }\n\n return (\n <div className=\"space-y-1\">\n <input\n type=\"text\"\n inputMode=\"numeric\"\n pattern=\"[0-9]*\"\n maxLength={length}\n value={value}\n onChange={handleChange}\n disabled={disabled}\n autoFocus={autoFocus}\n className={`w-full rounded-xl border px-4 py-3 text-center font-mono text-2xl tracking-[0.5em] transition-colors focus:outline-none focus:ring-2 focus:ring-blue-500 ${\n error\n ? 'border-red-500 bg-red-50 dark:border-red-400 dark:bg-red-900/20'\n : 'border-gray-300 bg-white dark:border-white/20 dark:bg-white/5'\n } ${disabled ? 'opacity-50 cursor-not-allowed' : ''}`}\n aria-invalid={!!error}\n />\n {error && (\n <p className=\"text-xs text-red-600 dark:text-red-400 text-center\">{error}</p>\n )}\n </div>\n )\n}\n\n// ── PasswordStrengthMeter ───────────────────────────────────────────────────\n\nexport interface PasswordStrengthMeterProps {\n password: string\n policy?: unknown\n showRequirements?: boolean\n}\n\nexport function PasswordStrengthMeter({\n password,\n showRequirements = false,\n}: PasswordStrengthMeterProps) {\n const strength = Math.min(4, Math.floor(password.length / 3))\n const colors = ['bg-red-500', 'bg-orange-500', 'bg-yellow-500', 'bg-lime-500', 'bg-green-500']\n const labels = ['Very weak', 'Weak', 'Fair', 'Strong', 'Very strong']\n\n if (!password) return null\n\n return (\n <div className=\"space-y-1.5\">\n <div className=\"flex gap-1\">\n {Array.from({ length: 4 }, (_, index) => (\n <div\n key={index}\n className={`h-1 flex-1 rounded-full transition-colors ${\n index <= strength - 1 ? colors[strength] : 'bg-gray-200 dark:bg-white/10'\n }`}\n />\n ))}\n </div>\n {showRequirements && (\n <p className=\"text-xs text-gray-500 dark:text-gray-400\">{labels[strength]}</p>\n )}\n </div>\n )\n}\n\n// ── BackupCodeGrid ──────────────────────────────────────────────────────────\n\nexport interface BackupCodeGridProps {\n codes: string[]\n revealed?: boolean\n}\n\nexport function BackupCodeGrid({ codes, revealed = false }: BackupCodeGridProps) {\n return (\n <div className=\"grid grid-cols-2 gap-2\">\n {codes.map((code, index) => (\n <div\n key={index}\n className=\"rounded-lg border border-gray-200 bg-gray-50 px-3 py-2 text-center font-mono text-sm dark:border-white/10 dark:bg-white/5\"\n >\n {revealed ? code : '\\u2022\\u2022\\u2022\\u2022\\u2022\\u2022\\u2022\\u2022'}\n </div>\n ))}\n </div>\n )\n}\n\n// ── AuthLayout ──────────────────────────────────────────────────────────────\n\nexport interface AuthLayoutProps {\n children: ReactNode\n heroPanel?: unknown\n}\n\nexport function AuthLayout({ children }: AuthLayoutProps) {\n return (\n <div className=\"w-full max-w-md mx-auto\">\n {children}\n </div>\n )\n}\n\n// ── SocialLoginButtons ──────────────────────────────────────────────────────\n\nexport interface SocialLoginButtonsProps {\n providers: SocialProvider[]\n onProviderClick: (provider: SocialProvider) => void\n loading?: SocialProvider | null\n disabled?: boolean\n}\n\nfunction GoogleIcon() {\n return (\n <svg className=\"h-5 w-5 shrink-0\" viewBox=\"0 0 24 24\">\n <path d=\"M22.56 12.25c0-.78-.07-1.53-.2-2.25H12v4.26h5.92a5.06 5.06 0 0 1-2.2 3.32v2.77h3.57c2.08-1.92 3.28-4.74 3.28-8.1z\" fill=\"#4285F4\" />\n <path d=\"M12 23c2.97 0 5.46-.98 7.28-2.66l-3.57-2.77c-.98.66-2.23 1.06-3.71 1.06-2.86 0-5.29-1.93-6.16-4.53H2.18v2.84C3.99 20.53 7.7 23 12 23z\" fill=\"#34A853\" />\n <path d=\"M5.84 14.09c-.22-.66-.35-1.36-.35-2.09s.13-1.43.35-2.09V7.07H2.18C1.43 8.55 1 10.22 1 12s.43 3.45 1.18 4.93l2.85-2.22.81-.62z\" fill=\"#FBBC05\" />\n <path d=\"M12 5.38c1.62 0 3.06.56 4.21 1.64l3.15-3.15C17.45 2.09 14.97 1 12 1 7.7 1 3.99 3.47 2.18 7.07l3.66 2.84c.87-2.6 3.3-4.53 6.16-4.53z\" fill=\"#EA4335\" />\n </svg>\n )\n}\n\nfunction GitHubIcon() {\n return (\n <svg className=\"h-5 w-5 shrink-0 text-gray-800 dark:text-white\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\n <path d=\"M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0 0 24 12c0-6.63-5.37-12-12-12z\" />\n </svg>\n )\n}\n\nfunction MicrosoftIcon() {\n return (\n <svg className=\"h-5 w-5 shrink-0\" viewBox=\"0 0 24 24\">\n <rect x=\"1\" y=\"1\" width=\"10\" height=\"10\" fill=\"#F25022\" />\n <rect x=\"13\" y=\"1\" width=\"10\" height=\"10\" fill=\"#7FBA00\" />\n <rect x=\"1\" y=\"13\" width=\"10\" height=\"10\" fill=\"#00A4EF\" />\n <rect x=\"13\" y=\"13\" width=\"10\" height=\"10\" fill=\"#FFB900\" />\n </svg>\n )\n}\n\nfunction AppleIcon() {\n return (\n <svg className=\"h-5 w-5 shrink-0 text-gray-800 dark:text-white\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\n <path d=\"M17.05 20.28c-.98.95-2.05.88-3.08.4-1.09-.5-2.08-.48-3.24 0-1.44.62-2.2.44-3.06-.4C2.79 15.25 3.51 7.59 9.05 7.31c1.35.07 2.29.74 3.08.8 1.18-.24 2.31-.93 3.57-.84 1.51.12 2.65.72 3.4 1.8-3.12 1.87-2.38 5.98.48 7.13-.57 1.5-1.31 2.99-2.54 4.09zM12.03 7.25c-.15-2.23 1.66-4.07 3.74-4.25.29 2.58-2.34 4.5-3.74 4.25z\" />\n </svg>\n )\n}\n\nfunction AmazonIcon() {\n return (\n <svg className=\"h-5 w-5 shrink-0\" viewBox=\"0 0 24 24\">\n <path d=\"M13.958 10.09c0 1.232.029 2.256-.591 3.351-.502.891-1.301 1.438-2.186 1.438-1.214 0-1.922-.924-1.922-2.292 0-2.692 2.415-3.182 4.7-3.182v.685zm3.186 7.705a.66.66 0 0 1-.753.077c-1.06-.876-1.25-1.283-1.828-2.119-1.748 1.783-2.986 2.317-5.249 2.317-2.681 0-4.768-1.653-4.768-4.96 0-2.583 1.4-4.34 3.392-5.2 1.727-.753 4.14-.886 5.98-1.094v-.408c0-.748.058-1.634-.383-2.28-.383-.579-1.117-.816-1.765-.816-1.2 0-2.266.615-2.527 1.89a.556.556 0 0 1-.481.482l-2.7-.291c-.224-.05-.474-.231-.41-.574C6.41 1.62 9.647.5 12.564.5c1.476 0 3.406.393 4.573 1.51 1.476 1.38 1.336 3.224 1.336 5.229v4.736c0 1.423.59 2.047 1.145 2.816.196.275.24.604-.01.807-.626.524-1.74 1.499-2.352 2.044l-.112.062z\" fill=\"#FF9900\" />\n <path d=\"M21.558 18.494c-1.94 1.432-4.753 2.195-7.178 2.195-3.396 0-6.453-1.255-8.765-3.344-.182-.164-.02-.389.199-.261 2.497 1.453 5.584 2.328 8.773 2.328 2.152 0 4.517-.446 6.694-1.37.328-.14.603.216.277.452z\" fill=\"#FF9900\" />\n <path d=\"M22.323 17.168c-.247-.317-1.636-.15-2.261-.076-.19.022-.219-.142-.048-.261 1.107-.777 2.923-.553 3.134-.293.212.264-.055 2.087-1.095 2.959-.16.134-.312.063-.241-.114.234-.583.758-1.899.511-2.215z\" fill=\"#FF9900\" />\n </svg>\n )\n}\n\nfunction DiscordIcon() {\n return (\n <svg className=\"h-5 w-5 shrink-0\" viewBox=\"0 0 24 24\">\n <path d=\"M20.317 4.37a19.791 19.791 0 0 0-4.885-1.515.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 0 0-5.487 0 12.64 12.64 0 0 0-.617-1.25.077.077 0 0 0-.079-.037A19.736 19.736 0 0 0 3.677 4.37a.07.07 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 0 0 .031.057 19.9 19.9 0 0 0 5.993 3.03.078.078 0 0 0 .084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 0 0-.041-.106 13.107 13.107 0 0 1-1.872-.892.077.077 0 0 1-.008-.128 10.2 10.2 0 0 0 .372-.292.074.074 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 0 1 .078.01c.12.098.246.198.373.292a.077.077 0 0 1-.006.127 12.299 12.299 0 0 1-1.873.892.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 0 0 .084.028 19.839 19.839 0 0 0 6.002-3.03.077.077 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 0 0-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418z\" fill=\"#5865F2\" />\n </svg>\n )\n}\n\nconst PROVIDER_CONFIG: Record<SocialProvider, { label: string; Icon: React.FC }> = {\n google: { label: 'Google', Icon: GoogleIcon },\n github: { label: 'GitHub', Icon: GitHubIcon },\n microsoft: { label: 'Microsoft', Icon: MicrosoftIcon },\n apple: { label: 'Apple', Icon: AppleIcon },\n amazon: { label: 'Amazon', Icon: AmazonIcon },\n discord: { label: 'Discord', Icon: DiscordIcon },\n}\n\nexport function SocialLoginButtons({\n providers,\n onProviderClick,\n loading,\n disabled = false,\n}: SocialLoginButtonsProps) {\n return (\n <div className=\"flex flex-col gap-2.5\">\n {providers.map((provider) => {\n const { label, Icon } = PROVIDER_CONFIG[provider]\n return (\n <Button\n key={provider}\n type=\"button\"\n color=\"ios-glass-blue\"\n size=\"lg\"\n fullWidth\n onClick={() => onProviderClick(provider)}\n disabled={disabled || (loading != null && loading !== provider)}\n loading={loading === provider}\n >\n {loading !== provider && <Icon />}\n {label}\n </Button>\n )\n })}\n </div>\n )\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/platform/auth/components.tsx"],"names":["jsxs","jsx","Button"],"mappings":"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","file":"chunk-45QAUEYT.js","sourcesContent":["import React, { type ReactNode } from 'react'\nimport { Button } from '@ui/index'\n\n// =============================================================================\n// Stub UI components for windsock auth flows\n// These components are not exported by @datatechsolutions/ui and are defined\n// locally with minimal implementations.\n// =============================================================================\n\n// ── SocialProvider type ─────────────────────────────────────────────────────\n\nexport type SocialProvider = 'google' | 'github' | 'discord' | 'microsoft' | 'apple' | 'amazon'\n\n// ── OtpInput ────────────────────────────────────────────────────────────────\n\nexport interface OtpInputProps {\n value: string\n onChange: (value: string) => void\n onComplete?: (code: string) => void\n error?: string\n disabled?: boolean\n autoFocus?: boolean\n length?: number\n}\n\nexport function OtpInput({\n value,\n onChange,\n onComplete,\n error,\n disabled = false,\n autoFocus = false,\n length = 6,\n}: OtpInputProps) {\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const newValue = event.target.value.replace(/\\D/g, '').slice(0, length)\n onChange(newValue)\n if (newValue.length === length && onComplete) {\n onComplete(newValue)\n }\n }\n\n return (\n <div className=\"space-y-1\">\n <input\n type=\"text\"\n inputMode=\"numeric\"\n pattern=\"[0-9]*\"\n maxLength={length}\n value={value}\n onChange={handleChange}\n disabled={disabled}\n autoFocus={autoFocus}\n className={`w-full rounded-xl border px-4 py-3 text-center font-mono text-2xl tracking-[0.5em] transition-colors focus:outline-none focus:ring-2 focus:ring-blue-500 ${\n error\n ? 'border-red-500 bg-red-50 dark:border-red-400 dark:bg-red-900/20'\n : 'border-gray-300 bg-white dark:border-white/20 dark:bg-white/5'\n } ${disabled ? 'opacity-50 cursor-not-allowed' : ''}`}\n aria-invalid={!!error}\n />\n {error && (\n <p className=\"text-xs text-red-600 dark:text-red-400 text-center\">{error}</p>\n )}\n </div>\n )\n}\n\n// ── PasswordStrengthMeter ───────────────────────────────────────────────────\n\nexport interface PasswordStrengthMeterProps {\n password: string\n policy?: unknown\n showRequirements?: boolean\n}\n\nexport function PasswordStrengthMeter({\n password,\n showRequirements = false,\n}: PasswordStrengthMeterProps) {\n const strength = Math.min(4, Math.floor(password.length / 3))\n const colors = ['bg-red-500', 'bg-orange-500', 'bg-yellow-500', 'bg-lime-500', 'bg-green-500']\n const labels = ['Very weak', 'Weak', 'Fair', 'Strong', 'Very strong']\n\n if (!password) return null\n\n return (\n <div className=\"space-y-1.5\">\n <div className=\"flex gap-1\">\n {Array.from({ length: 4 }, (_, index) => (\n <div\n key={index}\n className={`h-1 flex-1 rounded-full transition-colors ${\n index <= strength - 1 ? colors[strength] : 'bg-gray-200 dark:bg-white/10'\n }`}\n />\n ))}\n </div>\n {showRequirements && (\n <p className=\"text-xs text-gray-500 dark:text-gray-400\">{labels[strength]}</p>\n )}\n </div>\n )\n}\n\n// ── BackupCodeGrid ──────────────────────────────────────────────────────────\n\nexport interface BackupCodeGridProps {\n codes: string[]\n revealed?: boolean\n}\n\nexport function BackupCodeGrid({ codes, revealed = false }: BackupCodeGridProps) {\n return (\n <div className=\"grid grid-cols-2 gap-2\">\n {codes.map((code, index) => (\n <div\n key={index}\n className=\"rounded-lg border border-gray-200 bg-gray-50 px-3 py-2 text-center font-mono text-sm dark:border-white/10 dark:bg-white/5\"\n >\n {revealed ? code : '\\u2022\\u2022\\u2022\\u2022\\u2022\\u2022\\u2022\\u2022'}\n </div>\n ))}\n </div>\n )\n}\n\n// ── AuthLayout ──────────────────────────────────────────────────────────────\n\nexport interface AuthLayoutProps {\n children: ReactNode\n heroPanel?: unknown\n}\n\nexport function AuthLayout({ children }: AuthLayoutProps) {\n return (\n <div className=\"w-full max-w-md mx-auto\">\n {children}\n </div>\n )\n}\n\n// ── SocialLoginButtons ──────────────────────────────────────────────────────\n\nexport interface SocialLoginButtonsProps {\n providers: SocialProvider[]\n onProviderClick: (provider: SocialProvider) => void\n loading?: SocialProvider | null\n disabled?: boolean\n}\n\nfunction GoogleIcon() {\n return (\n <svg className=\"h-5 w-5 shrink-0\" viewBox=\"0 0 24 24\">\n <path d=\"M22.56 12.25c0-.78-.07-1.53-.2-2.25H12v4.26h5.92a5.06 5.06 0 0 1-2.2 3.32v2.77h3.57c2.08-1.92 3.28-4.74 3.28-8.1z\" fill=\"#4285F4\" />\n <path d=\"M12 23c2.97 0 5.46-.98 7.28-2.66l-3.57-2.77c-.98.66-2.23 1.06-3.71 1.06-2.86 0-5.29-1.93-6.16-4.53H2.18v2.84C3.99 20.53 7.7 23 12 23z\" fill=\"#34A853\" />\n <path d=\"M5.84 14.09c-.22-.66-.35-1.36-.35-2.09s.13-1.43.35-2.09V7.07H2.18C1.43 8.55 1 10.22 1 12s.43 3.45 1.18 4.93l2.85-2.22.81-.62z\" fill=\"#FBBC05\" />\n <path d=\"M12 5.38c1.62 0 3.06.56 4.21 1.64l3.15-3.15C17.45 2.09 14.97 1 12 1 7.7 1 3.99 3.47 2.18 7.07l3.66 2.84c.87-2.6 3.3-4.53 6.16-4.53z\" fill=\"#EA4335\" />\n </svg>\n )\n}\n\nfunction GitHubIcon() {\n return (\n <svg className=\"h-5 w-5 shrink-0 text-gray-800 dark:text-white\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\n <path d=\"M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0 0 24 12c0-6.63-5.37-12-12-12z\" />\n </svg>\n )\n}\n\nfunction MicrosoftIcon() {\n return (\n <svg className=\"h-5 w-5 shrink-0\" viewBox=\"0 0 24 24\">\n <rect x=\"1\" y=\"1\" width=\"10\" height=\"10\" fill=\"#F25022\" />\n <rect x=\"13\" y=\"1\" width=\"10\" height=\"10\" fill=\"#7FBA00\" />\n <rect x=\"1\" y=\"13\" width=\"10\" height=\"10\" fill=\"#00A4EF\" />\n <rect x=\"13\" y=\"13\" width=\"10\" height=\"10\" fill=\"#FFB900\" />\n </svg>\n )\n}\n\nfunction AppleIcon() {\n return (\n <svg className=\"h-5 w-5 shrink-0 text-gray-800 dark:text-white\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\n <path d=\"M17.05 20.28c-.98.95-2.05.88-3.08.4-1.09-.5-2.08-.48-3.24 0-1.44.62-2.2.44-3.06-.4C2.79 15.25 3.51 7.59 9.05 7.31c1.35.07 2.29.74 3.08.8 1.18-.24 2.31-.93 3.57-.84 1.51.12 2.65.72 3.4 1.8-3.12 1.87-2.38 5.98.48 7.13-.57 1.5-1.31 2.99-2.54 4.09zM12.03 7.25c-.15-2.23 1.66-4.07 3.74-4.25.29 2.58-2.34 4.5-3.74 4.25z\" />\n </svg>\n )\n}\n\nfunction AmazonIcon() {\n return (\n <svg className=\"h-5 w-5 shrink-0\" viewBox=\"0 0 24 24\">\n <path d=\"M13.958 10.09c0 1.232.029 2.256-.591 3.351-.502.891-1.301 1.438-2.186 1.438-1.214 0-1.922-.924-1.922-2.292 0-2.692 2.415-3.182 4.7-3.182v.685zm3.186 7.705a.66.66 0 0 1-.753.077c-1.06-.876-1.25-1.283-1.828-2.119-1.748 1.783-2.986 2.317-5.249 2.317-2.681 0-4.768-1.653-4.768-4.96 0-2.583 1.4-4.34 3.392-5.2 1.727-.753 4.14-.886 5.98-1.094v-.408c0-.748.058-1.634-.383-2.28-.383-.579-1.117-.816-1.765-.816-1.2 0-2.266.615-2.527 1.89a.556.556 0 0 1-.481.482l-2.7-.291c-.224-.05-.474-.231-.41-.574C6.41 1.62 9.647.5 12.564.5c1.476 0 3.406.393 4.573 1.51 1.476 1.38 1.336 3.224 1.336 5.229v4.736c0 1.423.59 2.047 1.145 2.816.196.275.24.604-.01.807-.626.524-1.74 1.499-2.352 2.044l-.112.062z\" fill=\"#FF9900\" />\n <path d=\"M21.558 18.494c-1.94 1.432-4.753 2.195-7.178 2.195-3.396 0-6.453-1.255-8.765-3.344-.182-.164-.02-.389.199-.261 2.497 1.453 5.584 2.328 8.773 2.328 2.152 0 4.517-.446 6.694-1.37.328-.14.603.216.277.452z\" fill=\"#FF9900\" />\n <path d=\"M22.323 17.168c-.247-.317-1.636-.15-2.261-.076-.19.022-.219-.142-.048-.261 1.107-.777 2.923-.553 3.134-.293.212.264-.055 2.087-1.095 2.959-.16.134-.312.063-.241-.114.234-.583.758-1.899.511-2.215z\" fill=\"#FF9900\" />\n </svg>\n )\n}\n\nfunction DiscordIcon() {\n return (\n <svg className=\"h-5 w-5 shrink-0\" viewBox=\"0 0 24 24\">\n <path d=\"M20.317 4.37a19.791 19.791 0 0 0-4.885-1.515.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 0 0-5.487 0 12.64 12.64 0 0 0-.617-1.25.077.077 0 0 0-.079-.037A19.736 19.736 0 0 0 3.677 4.37a.07.07 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 0 0 .031.057 19.9 19.9 0 0 0 5.993 3.03.078.078 0 0 0 .084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 0 0-.041-.106 13.107 13.107 0 0 1-1.872-.892.077.077 0 0 1-.008-.128 10.2 10.2 0 0 0 .372-.292.074.074 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 0 1 .078.01c.12.098.246.198.373.292a.077.077 0 0 1-.006.127 12.299 12.299 0 0 1-1.873.892.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 0 0 .084.028 19.839 19.839 0 0 0 6.002-3.03.077.077 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 0 0-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418z\" fill=\"#5865F2\" />\n </svg>\n )\n}\n\nconst PROVIDER_CONFIG: Record<SocialProvider, { label: string; Icon: React.FC }> = {\n google: { label: 'Google', Icon: GoogleIcon },\n github: { label: 'GitHub', Icon: GitHubIcon },\n microsoft: { label: 'Microsoft', Icon: MicrosoftIcon },\n apple: { label: 'Apple', Icon: AppleIcon },\n amazon: { label: 'Amazon', Icon: AmazonIcon },\n discord: { label: 'Discord', Icon: DiscordIcon },\n}\n\nexport function SocialLoginButtons({\n providers,\n onProviderClick,\n loading,\n disabled = false,\n}: SocialLoginButtonsProps) {\n return (\n <div className=\"flex flex-col gap-2.5\">\n {providers.map((provider) => {\n const { label, Icon } = PROVIDER_CONFIG[provider]\n return (\n <Button\n key={provider}\n type=\"button\"\n color=\"ios-glass-blue\"\n size=\"lg\"\n fullWidth\n onClick={() => onProviderClick(provider)}\n disabled={disabled || (loading != null && loading !== provider)}\n loading={loading === provider}\n >\n {loading !== provider && <Icon />}\n {label}\n </Button>\n )\n })}\n </div>\n )\n}\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { PasswordStrengthMeter } from './chunk-
|
|
3
|
-
import { SectionCard, SearchInput, InlineSpinner, EmptyState, Avatar, Badge, StatusBadge, Button, DynamicIslandConfirm, GlassModal, Input, PasswordInput, Sheet } from './chunk-
|
|
2
|
+
import { PasswordStrengthMeter } from './chunk-AL73YAV4.mjs';
|
|
3
|
+
import { SectionCard, SearchInput, InlineSpinner, EmptyState, Avatar, Badge, StatusBadge, Button, DynamicIslandConfirm, GlassModal, Input, PasswordInput, Sheet } from './chunk-AGGOHPMZ.mjs';
|
|
4
4
|
import { triggerHaptic } from './chunk-D2JF6C3E.mjs';
|
|
5
5
|
import { useTranslations, useFormatter } from './chunk-7VJ7CMMT.mjs';
|
|
6
6
|
import { useState, useCallback, useEffect } from 'react';
|
|
@@ -1005,5 +1005,5 @@ function AdminPermissionList({ client }) {
|
|
|
1005
1005
|
}
|
|
1006
1006
|
|
|
1007
1007
|
export { AdminOrganizationForm, AdminOrganizationList, AdminPermissionList, AdminUserForm, AdminUserList };
|
|
1008
|
-
//# sourceMappingURL=chunk-
|
|
1009
|
-
//# sourceMappingURL=chunk-
|
|
1008
|
+
//# sourceMappingURL=chunk-4GDWGWHY.mjs.map
|
|
1009
|
+
//# sourceMappingURL=chunk-4GDWGWHY.mjs.map
|