@burdenoff/fluidgrids-fe-sdk 2026.1104.3 → 2026.1105.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +38 -0
- package/dist/ExecutionDetailPage-YBAMVPMB.js +26 -0
- package/dist/{WorkflowsList-YFD2RKKQ.js → ExecutionsListPage-NQIQXMTY.js} +10 -9
- package/dist/{WorkflowBuilder-4I44FWII.js → WorkflowBuilder-CRR5WP4V.js} +15 -14
- package/dist/{ExecutionsListPage-EZ65FXER.js → WorkflowsList-EV725VG5.js} +10 -9
- package/dist/{agentTools-SZZN6TP3.js → agentTools-PN4W7QZH.js} +7 -6
- package/dist/{chunk-4YCMMBSK.js → chunk-2QOAJF7V.js} +2 -2
- package/dist/{chunk-NTWG3CJX.js → chunk-3IXU7WUC.js} +32 -21
- package/dist/{chunk-KHXRYQYP.js → chunk-4QB6S7YW.js} +3 -2
- package/dist/{chunk-NJRCAE6K.js → chunk-6EZJ5J3B.js} +5 -5
- package/dist/{chunk-BIB7IH26.js → chunk-6P7DOBVN.js} +4 -4
- package/dist/{chunk-5D4XS3WJ.js → chunk-AG3VC7Y2.js} +17 -3
- package/dist/{chunk-NGXJHYV5.js → chunk-AMXJLVZN.js} +2 -2
- package/dist/{chunk-PXIFUMLA.js → chunk-AU7LACOY.js} +16 -11
- package/dist/{chunk-NIY6R42C.js → chunk-AZKVI4YN.js} +5 -4
- package/dist/{chunk-Q72EOY4T.js → chunk-BHAKNT5M.js} +9 -3
- package/dist/{chunk-AAIZ6S6E.js → chunk-C26QAWCT.js} +69 -87
- package/dist/{chunk-SS7Y66P5.js → chunk-CGR3AEZU.js} +2 -2
- package/dist/{chunk-NYBL5WHP.js → chunk-D7G5VWSH.js} +3 -3
- package/dist/{chunk-XCSCD3IU.js → chunk-DANOMJ5I.js} +7 -6
- package/dist/{chunk-F7LQL43U.js → chunk-EC2AN74G.js} +1 -1
- package/dist/{chunk-MF7JLSJX.js → chunk-FCT6POFX.js} +11 -2
- package/dist/{chunk-YYVRBROH.js → chunk-FJSXXO5W.js} +1 -1
- package/dist/{chunk-5UHAB75U.js → chunk-GVIYGJQG.js} +1 -1
- package/dist/{chunk-TBHAZK52.js → chunk-HLAUK5GM.js} +1 -1
- package/dist/{chunk-AFX3EKFN.js → chunk-HOTVUVZG.js} +15 -3
- package/dist/{chunk-DFIX6YWP.js → chunk-I3QPAEL6.js} +39 -20
- package/dist/{chunk-IK7IGG6T.js → chunk-JC4D7RQ6.js} +8 -7
- package/dist/{chunk-GEY7RXRZ.js → chunk-JDQYGH4Q.js} +4 -4
- package/dist/{chunk-4EUEKSEQ.js → chunk-L2N6DDOI.js} +2 -2
- package/dist/{chunk-WTV6SQYK.js → chunk-L44BRLW5.js} +12 -11
- package/dist/{chunk-OMB3WMDQ.js → chunk-MQN6YDX4.js} +10 -9
- package/dist/{chunk-XNU2PLJ2.js → chunk-MSQAULLG.js} +6 -5
- package/dist/{chunk-ZDCJPQ5M.js → chunk-MZFJL4X3.js} +1 -1
- package/dist/{chunk-X6PIU7FE.js → chunk-O2EB7UT2.js} +3 -2
- package/dist/{chunk-ON7LK6QH.js → chunk-R3Z7W4EX.js} +5 -4
- package/dist/chunk-UEG2WC3G.js +502 -0
- package/dist/chunk-US5QSLPV.js +316 -0
- package/dist/{chunk-VDJFTZ2H.js → chunk-VFVN7D3A.js} +2 -1
- package/dist/{chunk-D4WA2M2N.js → chunk-XLI75E3D.js} +3 -2
- package/dist/client-YVZMLEQX.js +3 -0
- package/dist/config-66FUPSG5.js +1 -0
- package/dist/executions.js +15 -14
- package/dist/global-client-N5EIFW6T.js +3 -0
- package/dist/history.js +8 -7
- package/dist/index.d.ts +96 -133
- package/dist/index.js +91 -72
- package/dist/{node-detail-view-GAGSLHAO.js → node-detail-view-3VG7XFIZ.js} +11 -10
- package/dist/nodes.js +4 -2
- package/dist/observability.js +8 -7
- package/dist/{quick-config-panel-44RBX6YR.js → quick-config-panel-GB7SDWHD.js} +8 -7
- package/dist/settings.js +9 -8
- package/dist/templates.js +14 -13
- package/dist/{workflow-builder-BMGVSwpy.d.ts → workflow-builder-7vv9dCdp.d.ts} +413 -2
- package/dist/workflow-builder.d.ts +2 -1
- package/dist/workflow-builder.js +16 -15
- package/dist/workflows-list.js +10 -9
- package/package.json +1 -1
- package/dist/ExecutionDetailPage-ND2VMU45.js +0 -25
- package/dist/chunk-6AMNEX2Y.js +0 -214
- package/dist/client-EYQDMR4O.js +0 -1
- package/dist/config-3DBXLCK3.js +0 -1
- package/dist/global-client-O2HCG5CJ.js +0 -1
|
@@ -1,8 +1,413 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { ApolloClient } from '@apollo/client/core';
|
|
3
|
+
import { ReactNode } from 'react';
|
|
3
4
|
import { Edge, Node, NodeChange, EdgeChange, Connection } from '@xyflow/react';
|
|
4
5
|
import * as zustand from 'zustand';
|
|
5
6
|
|
|
7
|
+
/** Version of the host event contract. See the module note for the rules. */
|
|
8
|
+
declare const FLUIDGRIDS_EVENTS_VERSION = "1.0.0";
|
|
9
|
+
/** Where an `error` event came from. */
|
|
10
|
+
type FluidGridsErrorSource = "workflow:save" | "workflow:activate" | "run:start";
|
|
11
|
+
/**
|
|
12
|
+
* Every host event and its payload.
|
|
13
|
+
*
|
|
14
|
+
* - `workflow:saved` — a save reached `wspace-workflow-svc` (create, update or
|
|
15
|
+
* new version). `id` is the saved definition's database id.
|
|
16
|
+
* - `workflow:activated` — a version was activated (published).
|
|
17
|
+
* - `run:started` — the backend accepted a run: builder test runs, run from a
|
|
18
|
+
* node, a followed webhook test event, triggers, replays and retries.
|
|
19
|
+
* `mode` is the run mode when the SDK knows it (`TEST`, `PRODUCTION`, …).
|
|
20
|
+
* - `run:completed` — a run the builder is following reached a terminal
|
|
21
|
+
* status (`COMPLETED`, `FAILED`, `CANCELLED`, `TERMINATED`). Emitted once
|
|
22
|
+
* per run id.
|
|
23
|
+
* - `node:selected` — the selection on the builder canvas changed to exactly
|
|
24
|
+
* one node. `nodeId: null` means the selection was cleared. Selecting
|
|
25
|
+
* several nodes at once emits nothing.
|
|
26
|
+
* - `error` — a save, an activation or a run start failed. `message` is the
|
|
27
|
+
* user-presentable message; `code` is the gateway error code when present.
|
|
28
|
+
* - `auth:failed` — the SDK could not get a fresh token after an expired-token
|
|
29
|
+
* response (the `auth.onTokenExpired` callback rejected or returned no
|
|
30
|
+
* token). The failed request surfaces its original error.
|
|
31
|
+
*/
|
|
32
|
+
interface FluidGridsEventMap {
|
|
33
|
+
"workflow:saved": {
|
|
34
|
+
workflowKey: string;
|
|
35
|
+
version?: string;
|
|
36
|
+
id?: string;
|
|
37
|
+
};
|
|
38
|
+
"workflow:activated": {
|
|
39
|
+
workflowKey: string;
|
|
40
|
+
version?: string;
|
|
41
|
+
};
|
|
42
|
+
"run:started": {
|
|
43
|
+
runId: string;
|
|
44
|
+
workflowKey?: string;
|
|
45
|
+
mode?: string;
|
|
46
|
+
};
|
|
47
|
+
"run:completed": {
|
|
48
|
+
runId: string;
|
|
49
|
+
status: string;
|
|
50
|
+
workflowKey?: string;
|
|
51
|
+
};
|
|
52
|
+
"node:selected": {
|
|
53
|
+
nodeId: string | null;
|
|
54
|
+
nodeType?: string;
|
|
55
|
+
};
|
|
56
|
+
error: {
|
|
57
|
+
source: FluidGridsErrorSource;
|
|
58
|
+
message: string;
|
|
59
|
+
code?: string;
|
|
60
|
+
};
|
|
61
|
+
"auth:failed": {
|
|
62
|
+
message: string;
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
/** Name of a host event. */
|
|
66
|
+
type FluidGridsEventName = keyof FluidGridsEventMap;
|
|
67
|
+
/** Payload of the host event `K`. */
|
|
68
|
+
type FluidGridsEventPayload<K extends FluidGridsEventName> = FluidGridsEventMap[K];
|
|
69
|
+
/** Every host event name, in documentation order. */
|
|
70
|
+
declare const FLUIDGRIDS_EVENT_NAMES: readonly FluidGridsEventName[];
|
|
71
|
+
/** `[name, payload]` pairs, one per event: lets `name` narrow `payload`. */
|
|
72
|
+
type FluidGridsEventArgs = {
|
|
73
|
+
[K in FluidGridsEventName]: [name: K, payload: FluidGridsEventMap[K]];
|
|
74
|
+
}[FluidGridsEventName];
|
|
75
|
+
/**
|
|
76
|
+
* Host event callback. Checking `name` narrows `payload`:
|
|
77
|
+
*
|
|
78
|
+
* ```ts
|
|
79
|
+
* const onEvent: FluidGridsEventHandler = (name, payload) => {
|
|
80
|
+
* if (name === "run:completed") console.log(payload.runId, payload.status);
|
|
81
|
+
* };
|
|
82
|
+
* ```
|
|
83
|
+
*/
|
|
84
|
+
type FluidGridsEventHandler = (...args: FluidGridsEventArgs) => void;
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Embed theming (BOFF-9961).
|
|
88
|
+
*
|
|
89
|
+
* A host themes the embedded SDK with a {@link FluidGridsTheme}: either the
|
|
90
|
+
* `"light"` / `"dark"` shortcut, or an object that picks a mode and overrides
|
|
91
|
+
* individual design tokens (colours, radii, fonts). Each token key maps to one
|
|
92
|
+
* or more fe-libs semantic CSS variables ({@link FLUIDGRIDS_THEME_TOKEN_MAP}),
|
|
93
|
+
* so the whole builder, its dialogs and its popovers pick the values up.
|
|
94
|
+
*
|
|
95
|
+
* The theme is DOCUMENT-WIDE. The SDK renders into the host's document and
|
|
96
|
+
* Radix portals render under `body`, and the fe-libs alias tokens
|
|
97
|
+
* (`--color-primary`, `--color-background`, …) are declared on `:root` as
|
|
98
|
+
* references to the semantic tokens, so an override on a wrapper element would
|
|
99
|
+
* not reach them. The variables are therefore written as inline custom
|
|
100
|
+
* properties on `document.documentElement`, and the previous inline values
|
|
101
|
+
* are restored when the theme is removed. A host that wants its own chrome to
|
|
102
|
+
* keep a different look should scope its own styles, not the SDK's.
|
|
103
|
+
*
|
|
104
|
+
* @module theme/fluidgridsTheme
|
|
105
|
+
*/
|
|
106
|
+
/** Colour mode of the SDK UI. */
|
|
107
|
+
type FluidGridsThemeMode = "light" | "dark";
|
|
108
|
+
/** Colour overrides. Each value is a CSS colour such as `#2563eb` or `oklch(62% 0.2 250)`. */
|
|
109
|
+
interface FluidGridsThemeColors {
|
|
110
|
+
/** Page / canvas background. */
|
|
111
|
+
bgCanvas?: string;
|
|
112
|
+
/** Cards, panels and the canvas frame. */
|
|
113
|
+
bgSurface?: string;
|
|
114
|
+
/** Dialogs, popovers and menus. */
|
|
115
|
+
bgElevated?: string;
|
|
116
|
+
/** Inset areas: inputs, code blocks, wells. */
|
|
117
|
+
bgSunken?: string;
|
|
118
|
+
/** Main text. */
|
|
119
|
+
textPrimary?: string;
|
|
120
|
+
/** Secondary text. */
|
|
121
|
+
textSecondary?: string;
|
|
122
|
+
/** Hints, captions and placeholders. */
|
|
123
|
+
textMuted?: string;
|
|
124
|
+
/** Default borders. */
|
|
125
|
+
borderDefault?: string;
|
|
126
|
+
/** Hairlines and dividers. */
|
|
127
|
+
borderSubtle?: string;
|
|
128
|
+
/** Emphasised borders. */
|
|
129
|
+
borderStrong?: string;
|
|
130
|
+
/** Brand / primary action colour (buttons, focus, selection). */
|
|
131
|
+
primary?: string;
|
|
132
|
+
/** Primary action hover. Derived from `primary` when omitted. */
|
|
133
|
+
primaryHover?: string;
|
|
134
|
+
/** Primary action pressed. Derived from `primary` when omitted. */
|
|
135
|
+
primaryActive?: string;
|
|
136
|
+
/** Text on the primary colour. Picked for contrast when omitted. */
|
|
137
|
+
primaryText?: string;
|
|
138
|
+
/** Success status colour. */
|
|
139
|
+
success?: string;
|
|
140
|
+
/** Warning status colour. */
|
|
141
|
+
warning?: string;
|
|
142
|
+
/** Error status colour. */
|
|
143
|
+
error?: string;
|
|
144
|
+
/** Info status colour. */
|
|
145
|
+
info?: string;
|
|
146
|
+
}
|
|
147
|
+
/** Corner-radius overrides. Each value is a CSS length (`8px`, `0.5rem`). */
|
|
148
|
+
interface FluidGridsThemeRadius {
|
|
149
|
+
/** Base radius most components scale from. */
|
|
150
|
+
base?: string;
|
|
151
|
+
/** Cards and panels. */
|
|
152
|
+
card?: string;
|
|
153
|
+
/** Buttons. */
|
|
154
|
+
button?: string;
|
|
155
|
+
/** Inputs and selects. */
|
|
156
|
+
input?: string;
|
|
157
|
+
}
|
|
158
|
+
/** Font overrides. Each value is a CSS `font-family` list. */
|
|
159
|
+
interface FluidGridsThemeFont {
|
|
160
|
+
/** Body text. */
|
|
161
|
+
body?: string;
|
|
162
|
+
/** Headings. */
|
|
163
|
+
heading?: string;
|
|
164
|
+
/** Code, ids and JSON. */
|
|
165
|
+
mono?: string;
|
|
166
|
+
}
|
|
167
|
+
/** Full theme object. Every field is optional. */
|
|
168
|
+
interface FluidGridsThemeTokens {
|
|
169
|
+
/** Force light or dark. Omit to keep the host's / visitor's mode. */
|
|
170
|
+
mode?: FluidGridsThemeMode;
|
|
171
|
+
colors?: FluidGridsThemeColors;
|
|
172
|
+
radius?: FluidGridsThemeRadius;
|
|
173
|
+
font?: FluidGridsThemeFont;
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Theme for the embedded SDK: `"light"` / `"dark"` (shortcut for
|
|
177
|
+
* `{ mode }`), or a token object.
|
|
178
|
+
*/
|
|
179
|
+
type FluidGridsTheme = FluidGridsThemeMode | FluidGridsThemeTokens;
|
|
180
|
+
/** Kind of value a token accepts; decides how the value is validated. */
|
|
181
|
+
type FluidGridsThemeValueKind = "color" | "length" | "font";
|
|
182
|
+
/** One row of {@link FLUIDGRIDS_THEME_TOKEN_MAP}. */
|
|
183
|
+
interface FluidGridsThemeTokenMapping {
|
|
184
|
+
kind: FluidGridsThemeValueKind;
|
|
185
|
+
/** CSS custom properties the token sets, in order. */
|
|
186
|
+
cssVariables: readonly string[];
|
|
187
|
+
}
|
|
188
|
+
/** Dotted key of every theme token: `colors.primary`, `radius.card`, … */
|
|
189
|
+
type FluidGridsThemeTokenKey = `colors.${keyof FluidGridsThemeColors & string}` | `radius.${keyof FluidGridsThemeRadius & string}` | `font.${keyof FluidGridsThemeFont & string}`;
|
|
190
|
+
/**
|
|
191
|
+
* Theme token → the fe-libs semantic CSS variables it sets. This table is the
|
|
192
|
+
* public contract: a token keeps its variables across minor releases.
|
|
193
|
+
*/
|
|
194
|
+
declare const FLUIDGRIDS_THEME_TOKEN_MAP: Readonly<Record<FluidGridsThemeTokenKey, FluidGridsThemeTokenMapping>>;
|
|
195
|
+
/**
|
|
196
|
+
* Turn a theme into the CSS custom properties it sets. Pure: no DOM access.
|
|
197
|
+
*
|
|
198
|
+
* Values that are not plain CSS values of the token's kind (anything with
|
|
199
|
+
* `;`, `{`, `}`, `url(`, `expression(`, quotes other than single-quoted font
|
|
200
|
+
* names, …) are dropped with a console warning. Unknown keys are dropped the
|
|
201
|
+
* same way. When `colors.primary` is set, the hover / pressed shades and the
|
|
202
|
+
* text colour are derived from it unless they are set explicitly; the text
|
|
203
|
+
* colour is picked for contrast when `primary` is a hex colour.
|
|
204
|
+
*/
|
|
205
|
+
declare function themeToCssVariables(theme: FluidGridsTheme | null | undefined): Record<string, string>;
|
|
206
|
+
/**
|
|
207
|
+
* Apply a theme to the document and return a function that removes it again.
|
|
208
|
+
*
|
|
209
|
+
* Sets each variable from {@link themeToCssVariables} as an inline custom
|
|
210
|
+
* property on `document.documentElement`, and for a mode sets `data-theme`
|
|
211
|
+
* and the `.dark` class. While applied, the values are re-forced if something
|
|
212
|
+
* else (a host ThemeProvider) rewrites them. Disposing restores the inline
|
|
213
|
+
* values and mode the document had (including any change the host made in
|
|
214
|
+
* between). When several themes are applied, the most recent one wins.
|
|
215
|
+
* Calling the returned function more than once is safe. Without a DOM
|
|
216
|
+
* (server rendering) it does nothing.
|
|
217
|
+
*/
|
|
218
|
+
declare function applyFluidGridsTheme(theme: FluidGridsTheme | null | undefined): () => void;
|
|
219
|
+
|
|
220
|
+
/**
|
|
221
|
+
* Configuration module for FluidGrids SDK
|
|
222
|
+
*/
|
|
223
|
+
/** Result passed to the onWorkflowSaved callback after a successful save */
|
|
224
|
+
interface WorkflowSavedResult {
|
|
225
|
+
/** Database row ID of the saved workflow definition */
|
|
226
|
+
dbId: string;
|
|
227
|
+
/** Human-readable workflow key (e.g., "github_user_profile") */
|
|
228
|
+
workflowKey: string;
|
|
229
|
+
/** Semantic version string (e.g., "v1", "v2") */
|
|
230
|
+
version: string;
|
|
231
|
+
/** Display name of the workflow */
|
|
232
|
+
name: string;
|
|
233
|
+
/** Optional description */
|
|
234
|
+
description?: string;
|
|
235
|
+
/** What kind of save operation occurred */
|
|
236
|
+
operation: "created" | "updated" | "versioned";
|
|
237
|
+
}
|
|
238
|
+
/**
|
|
239
|
+
* Tokens returned by {@link FluidGridsAuthConfig.onTokenExpired}. Return only
|
|
240
|
+
* the ones that changed; a missing field keeps its current value.
|
|
241
|
+
*/
|
|
242
|
+
interface FluidGridsRefreshedTokens {
|
|
243
|
+
/** New user / app token, sent as `authorization: Bearer …`. */
|
|
244
|
+
authToken?: string;
|
|
245
|
+
/** New workspace token, sent as `x-workspace-authorization: Bearer …`. */
|
|
246
|
+
workspaceToken?: string;
|
|
247
|
+
}
|
|
248
|
+
/** Authentication hooks for embedders. */
|
|
249
|
+
interface FluidGridsAuthConfig {
|
|
250
|
+
/**
|
|
251
|
+
* Called when a request fails because the session expired (HTTP 401, a
|
|
252
|
+
* GraphQL `UNAUTHENTICATED` error, or an expired / revoked credential
|
|
253
|
+
* reported by the gateway). Resolve with a fresh token — a string is the
|
|
254
|
+
* new `authToken`, an object can also replace the `workspaceToken`. The SDK
|
|
255
|
+
* stores it in the config, retries the failed request once, and shares one
|
|
256
|
+
* call between requests that fail at the same time.
|
|
257
|
+
*
|
|
258
|
+
* Reject, or resolve with an empty token, when no fresh token is available:
|
|
259
|
+
* the SDK then emits `auth:failed` on `onEvent` and the request fails with
|
|
260
|
+
* its original error. The SDK never retries a request twice.
|
|
261
|
+
*/
|
|
262
|
+
onTokenExpired?: () => Promise<string | FluidGridsRefreshedTokens>;
|
|
263
|
+
}
|
|
264
|
+
interface FluidGridsConfig {
|
|
265
|
+
/** GraphQL endpoint URL (workspace gateway) */
|
|
266
|
+
apiGatewayUrl: string;
|
|
267
|
+
/** GraphQL endpoint URL (global gateway) */
|
|
268
|
+
globalApiUrl?: string;
|
|
269
|
+
/** Auth token for API calls */
|
|
270
|
+
authToken?: string;
|
|
271
|
+
/** Current workspace ID */
|
|
272
|
+
workspaceId: string;
|
|
273
|
+
/**
|
|
274
|
+
* Workspace access token of the current workspace. Store queries send it as
|
|
275
|
+
* `x-workspace-authorization` so the global gateway can derive a verified
|
|
276
|
+
* workspace for them: the public gateway never trusts a client-sent
|
|
277
|
+
* `x-workspace-id`, and the store lists the durable-function nodes only to a
|
|
278
|
+
* workspace with durable functions on (BOFF-9905).
|
|
279
|
+
*/
|
|
280
|
+
workspaceToken?: string;
|
|
281
|
+
/** Current tenant ID */
|
|
282
|
+
tenantId?: string;
|
|
283
|
+
/** Organization ID */
|
|
284
|
+
organizationId?: string;
|
|
285
|
+
/**
|
|
286
|
+
* @deprecated Never read. Share/Embed links used to be built from this
|
|
287
|
+
* value, which no host ever set, so they shipped as `undefined/...`
|
|
288
|
+
* (BOFF-7753). Kept only so existing host configs still type-check.
|
|
289
|
+
*/
|
|
290
|
+
fluidgridFrontendUrl?: string;
|
|
291
|
+
/** Product ID for workflow isolation (e.g., 'bigconsole', 'botmanor', 'fluidgrids') */
|
|
292
|
+
productId?: string;
|
|
293
|
+
/** Product name for display purposes */
|
|
294
|
+
productName?: string;
|
|
295
|
+
/** Optional allowlist for host origins embedding the SDK */
|
|
296
|
+
trustedOrigins?: string[];
|
|
297
|
+
/**
|
|
298
|
+
* Callback invoked after a workflow is successfully saved to wspace-workflow-svc.
|
|
299
|
+
* Host apps (BigConsole, BotManor) can use this to sync metadata to their own backends.
|
|
300
|
+
* Errors thrown by this callback are caught and logged — they never block the save.
|
|
301
|
+
*/
|
|
302
|
+
onWorkflowSaved?: (result: WorkflowSavedResult) => void | Promise<void>;
|
|
303
|
+
/**
|
|
304
|
+
* Theme for the embedded UI: `"light"`, `"dark"`, or a token object.
|
|
305
|
+
* Setting it (here, or with the `theme` prop of `FluidGridsProvider`)
|
|
306
|
+
* applies it document-wide right away — see `applyFluidGridsTheme`;
|
|
307
|
+
* setting `undefined` or resetting the config removes it.
|
|
308
|
+
*/
|
|
309
|
+
theme?: FluidGridsTheme;
|
|
310
|
+
/** Authentication hooks: token refresh on expiry. */
|
|
311
|
+
auth?: FluidGridsAuthConfig;
|
|
312
|
+
/**
|
|
313
|
+
* Host event callback: workflow saved / activated, run started / completed,
|
|
314
|
+
* node selected, errors and auth failures. See `FluidGridsEventMap`.
|
|
315
|
+
* Exceptions thrown by the handler are caught and logged.
|
|
316
|
+
*/
|
|
317
|
+
onEvent?: FluidGridsEventHandler;
|
|
318
|
+
}
|
|
319
|
+
/**
|
|
320
|
+
* Get current configuration via proxy for live access
|
|
321
|
+
*/
|
|
322
|
+
declare const config: FluidGridsConfig;
|
|
323
|
+
/**
|
|
324
|
+
* Get the full configuration object
|
|
325
|
+
*/
|
|
326
|
+
declare function getFluidGridsConfig(): FluidGridsConfig;
|
|
327
|
+
/**
|
|
328
|
+
* Set runtime configuration
|
|
329
|
+
*/
|
|
330
|
+
declare function setFluidGridsConfig(newConfig: Partial<FluidGridsConfig>): void;
|
|
331
|
+
/**
|
|
332
|
+
* Reset configuration to defaults
|
|
333
|
+
*/
|
|
334
|
+
declare function resetFluidGridsConfig(): void;
|
|
335
|
+
/**
|
|
336
|
+
* Get the GraphQL endpoint URL
|
|
337
|
+
*/
|
|
338
|
+
declare function getGraphQLEndpoint(baseUrl?: string): string;
|
|
339
|
+
/** Clear user execution state only when a host session ends or changes identity. */
|
|
340
|
+
declare function resetFluidGridsExecutionState(): void;
|
|
341
|
+
|
|
342
|
+
interface FluidGridsProviderProps {
|
|
343
|
+
/** API Gateway URL (workspace gateway) */
|
|
344
|
+
apiGatewayUrl?: string;
|
|
345
|
+
/** Global API Gateway URL (for store operations) */
|
|
346
|
+
globalApiUrl?: string;
|
|
347
|
+
/** Auth token */
|
|
348
|
+
authToken?: string;
|
|
349
|
+
/** Workspace token for x-workspace-authorization header */
|
|
350
|
+
workspaceToken?: string;
|
|
351
|
+
/** Workspace ID */
|
|
352
|
+
workspaceId: string;
|
|
353
|
+
/** Owning product namespace. */
|
|
354
|
+
productId?: string;
|
|
355
|
+
/** Authenticated actor identity; supply this when accounts can switch in-place. */
|
|
356
|
+
userId?: string;
|
|
357
|
+
/** Optional host allowlist for embedded deployments */
|
|
358
|
+
trustedOrigins?: string[];
|
|
359
|
+
/** Tenant ID */
|
|
360
|
+
tenantId?: string;
|
|
361
|
+
/** Organization ID */
|
|
362
|
+
organizationId?: string;
|
|
363
|
+
/** Optional: provide your own workspace Apollo client */
|
|
364
|
+
workspaceClient?: ApolloClient;
|
|
365
|
+
/** Optional: provide your own global Apollo client */
|
|
366
|
+
globalClient?: ApolloClient;
|
|
367
|
+
/** @deprecated Use workspaceClient instead */
|
|
368
|
+
apolloClient?: ApolloClient;
|
|
369
|
+
/**
|
|
370
|
+
* Optional host translator: `(key, englishFallback) => string`.
|
|
371
|
+
*
|
|
372
|
+
* When omitted (standalone embedders), every string renders its English
|
|
373
|
+
* fallback — the SDK never requires an i18n provider to be mounted.
|
|
374
|
+
*/
|
|
375
|
+
t?: (key: string, fallback: string) => string;
|
|
376
|
+
/**
|
|
377
|
+
* Theme: `"light"`, `"dark"`, or a token object (colours, radii, fonts).
|
|
378
|
+
* Applied document-wide while the provider is mounted and restored on
|
|
379
|
+
* unmount. See `FluidGridsTheme` and `FLUIDGRIDS_THEME_TOKEN_MAP`.
|
|
380
|
+
*/
|
|
381
|
+
theme?: FluidGridsTheme;
|
|
382
|
+
/**
|
|
383
|
+
* Authentication hooks. `auth.onTokenExpired` is called when a request
|
|
384
|
+
* fails with an expired session; resolve with a fresh token and the SDK
|
|
385
|
+
* retries the request once.
|
|
386
|
+
*/
|
|
387
|
+
auth?: FluidGridsAuthConfig;
|
|
388
|
+
/** Host event callback. See `FluidGridsEventMap`. */
|
|
389
|
+
onEvent?: FluidGridsEventHandler;
|
|
390
|
+
/** Children */
|
|
391
|
+
children: ReactNode;
|
|
392
|
+
}
|
|
393
|
+
interface FluidGridsContextValue {
|
|
394
|
+
apiGatewayUrl?: string;
|
|
395
|
+
globalApiUrl?: string;
|
|
396
|
+
authToken?: string;
|
|
397
|
+
workspaceId: string;
|
|
398
|
+
productId?: string;
|
|
399
|
+
userId?: string;
|
|
400
|
+
trustedOrigins?: string[];
|
|
401
|
+
tenantId?: string;
|
|
402
|
+
organizationId?: string;
|
|
403
|
+
workspaceClient?: ApolloClient;
|
|
404
|
+
globalClient?: ApolloClient;
|
|
405
|
+
/** Host translator, consumed by `useTr()`. */
|
|
406
|
+
t?: (key: string, fallback: string) => string;
|
|
407
|
+
}
|
|
408
|
+
declare function FluidGridsProvider({ apiGatewayUrl, globalApiUrl, authToken, workspaceToken, workspaceId, productId, userId, trustedOrigins, tenantId, organizationId, t, theme, auth, onEvent, workspaceClient: externalWorkspaceClient, globalClient: externalGlobalClient, apolloClient: legacyClient, children, }: FluidGridsProviderProps): react_jsx_runtime.JSX.Element;
|
|
409
|
+
declare function useFluidGridsContext(): FluidGridsContextValue;
|
|
410
|
+
|
|
6
411
|
type ExtendedNodeType = "trigger:api" | "end" | "internal:if" | "internal:switch" | "internal:loop" | "internal:merge" | "internal:set" | "internal:filter" | "internal:aggregate" | "internal:wait" | "internal:noop" | "internal:subworkflow" | string;
|
|
7
412
|
interface FlowNodeData {
|
|
8
413
|
label: string;
|
|
@@ -441,6 +846,12 @@ interface WorkflowBuilderProps extends Omit<WorkflowBuilderCoreProps, "workflow"
|
|
|
441
846
|
workspaceClient?: ApolloClient;
|
|
442
847
|
/** Optional: Provide your own global Apollo client */
|
|
443
848
|
globalClient?: ApolloClient;
|
|
849
|
+
/** Theme: `"light"`, `"dark"` or a token object. See `FluidGridsTheme`. */
|
|
850
|
+
theme?: FluidGridsProviderProps["theme"];
|
|
851
|
+
/** Authentication hooks (`onTokenExpired`). */
|
|
852
|
+
auth?: FluidGridsProviderProps["auth"];
|
|
853
|
+
/** Host event callback. See `FluidGridsEventMap`. */
|
|
854
|
+
onEvent?: FluidGridsProviderProps["onEvent"];
|
|
444
855
|
}
|
|
445
856
|
/**
|
|
446
857
|
* WorkflowBuilder - Standalone workflow builder component with Apollo client support
|
|
@@ -480,7 +891,7 @@ interface WorkflowBuilderProps extends Omit<WorkflowBuilderCoreProps, "workflow"
|
|
|
480
891
|
* />
|
|
481
892
|
* ```
|
|
482
893
|
*/
|
|
483
|
-
declare function WorkflowBuilder$1({ workflowId, workflowVersion, initialWorkflow, apiGatewayUrl, globalApiUrl, authToken, workspaceId, tenantId, productId, userId, workspaceToken, organizationId, workspaceClient, globalClient, ...coreProps }: WorkflowBuilderProps): react_jsx_runtime.JSX.Element;
|
|
894
|
+
declare function WorkflowBuilder$1({ workflowId, workflowVersion, initialWorkflow, apiGatewayUrl, globalApiUrl, authToken, workspaceId, tenantId, productId, userId, workspaceToken, organizationId, workspaceClient, globalClient, theme, auth, onEvent, ...coreProps }: WorkflowBuilderProps): react_jsx_runtime.JSX.Element;
|
|
484
895
|
|
|
485
896
|
/**
|
|
486
897
|
* WorkflowBuilder page with ErrorBoundary for graceful crash recovery.
|
|
@@ -763,4 +1174,4 @@ declare const useFlowStore: zustand.UseBoundStore<zustand.StoreApi<IFlowState>>;
|
|
|
763
1174
|
*/
|
|
764
1175
|
declare function refetchStoreNodes(): Promise<void>;
|
|
765
1176
|
|
|
766
|
-
export { type ConditionRule as C, type EdgeCondition as E, type
|
|
1177
|
+
export { type WorkflowError as $, type FluidGridsThemeRadius as A, type FluidGridsThemeTokenKey as B, type ConditionRule as C, type FluidGridsThemeTokenMapping as D, type EdgeCondition as E, FLUIDGRIDS_EVENTS_VERSION as F, type FluidGridsThemeTokens as G, type FluidGridsThemeValueKind as H, type IFlowState as I, type NodeEndpointConfig as J, type NodeManifest as K, type NodeState as L, type MappingValue as M, NODE_STATUS_CONFIG as N, type NodeStatus as O, type RunStatus as P, WorkflowBuilder as Q, RUN_STATUS_CONFIG as R, type SidebarState as S, type Tag as T, WorkflowBuilderCore as U, type WorkflowBuilderCoreProps as V, WorkflowBuilder$1 as W, type WorkflowBuilderProps as X, type WorkflowData as Y, type WorkflowDefinition as Z, type WorkflowDefinitionJson as _, type EdgeMapping as a, type WorkflowRun as a0, type WorkflowSavedResult as a1, WorkflowSearchRedirect as a2, applyFluidGridsTheme as a3, config as a4, getFluidGridsConfig as a5, getGraphQLEndpoint as a6, refetchStoreNodes as a7, resetFluidGridsConfig as a8, resetFluidGridsExecutionState as a9, setFluidGridsConfig as aa, themeToCssVariables as ab, useFlowStore as ac, useFluidGridsContext as ad, type ErrorType as b, type ExecutionLog as c, type ExecutionsFilter as d, type ExecutionsPagination as e, type ExtendedNodeType as f, FLUIDGRIDS_EVENT_NAMES as g, FLUIDGRIDS_THEME_TOKEN_MAP as h, type FlowEdge as i, type FlowNode as j, type FlowNodeData as k, type FluidGridsAuthConfig as l, type FluidGridsConfig as m, type FluidGridsErrorSource as n, type FluidGridsEventArgs as o, type FluidGridsEventHandler as p, type FluidGridsEventMap as q, type FluidGridsEventName as r, type FluidGridsEventPayload as s, FluidGridsProvider as t, type FluidGridsProviderProps as u, type FluidGridsRefreshedTokens as v, type FluidGridsTheme as w, type FluidGridsThemeColors as x, type FluidGridsThemeFont as y, type FluidGridsThemeMode as z };
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
export { I as IFlowState, W as WorkflowBuilder,
|
|
1
|
+
export { I as IFlowState, W as WorkflowBuilder, U as WorkflowBuilderCore, V as WorkflowBuilderCoreProps, Q as WorkflowBuilderPage, X as WorkflowBuilderProps, a2 as WorkflowSearchRedirect, a7 as refetchStoreNodes, ac as useFlowStore } from './workflow-builder-7vv9dCdp.js';
|
|
2
2
|
import 'react/jsx-runtime';
|
|
3
3
|
import '@apollo/client/core';
|
|
4
|
+
import 'react';
|
|
4
5
|
import '@xyflow/react';
|
|
5
6
|
import 'zustand';
|
package/dist/workflow-builder.js
CHANGED
|
@@ -1,32 +1,33 @@
|
|
|
1
|
-
export { WorkflowBuilder, WorkflowBuilderCore, WorkflowSearchRedirect } from './chunk-
|
|
2
|
-
export { WorkflowBuilder as WorkflowBuilderPage } from './chunk-
|
|
3
|
-
import './chunk-
|
|
1
|
+
export { WorkflowBuilder, WorkflowBuilderCore, WorkflowSearchRedirect } from './chunk-BHAKNT5M.js';
|
|
2
|
+
export { WorkflowBuilder as WorkflowBuilderPage } from './chunk-MQN6YDX4.js';
|
|
3
|
+
import './chunk-HLAUK5GM.js';
|
|
4
4
|
import './chunk-PIKYQE7P.js';
|
|
5
|
-
import './chunk-
|
|
5
|
+
import './chunk-I3QPAEL6.js';
|
|
6
6
|
import './chunk-GEMNVFPK.js';
|
|
7
7
|
import './chunk-B6CCE2RW.js';
|
|
8
8
|
import './chunk-IEVSFCFS.js';
|
|
9
9
|
import './chunk-YXMFRQYV.js';
|
|
10
10
|
import './chunk-BQXVT32O.js';
|
|
11
|
-
import './chunk-
|
|
12
|
-
import './chunk-
|
|
13
|
-
import './chunk-
|
|
14
|
-
import './chunk-
|
|
11
|
+
import './chunk-FJSXXO5W.js';
|
|
12
|
+
import './chunk-GVIYGJQG.js';
|
|
13
|
+
import './chunk-O2EB7UT2.js';
|
|
14
|
+
import './chunk-6P7DOBVN.js';
|
|
15
15
|
import './chunk-JDLQ6QIB.js';
|
|
16
|
-
import './chunk-
|
|
16
|
+
import './chunk-EC2AN74G.js';
|
|
17
17
|
import './chunk-Y53CVZVV.js';
|
|
18
|
-
import './chunk-
|
|
19
|
-
import './chunk-
|
|
18
|
+
import './chunk-4QB6S7YW.js';
|
|
19
|
+
import './chunk-HOTVUVZG.js';
|
|
20
20
|
import './chunk-GLYINMOR.js';
|
|
21
21
|
import './chunk-H4ERTSMX.js';
|
|
22
22
|
import './chunk-4VJ3MDOV.js';
|
|
23
|
-
export { refetchStoreNodes, useFlowStore } from './chunk-
|
|
23
|
+
export { refetchStoreNodes, useFlowStore } from './chunk-C26QAWCT.js';
|
|
24
24
|
import './chunk-5375NUIO.js';
|
|
25
25
|
import './chunk-JL7CASN5.js';
|
|
26
26
|
import './chunk-OCJTTHTS.js';
|
|
27
|
-
import './chunk-
|
|
28
|
-
import './chunk-6AMNEX2Y.js';
|
|
27
|
+
import './chunk-AU7LACOY.js';
|
|
29
28
|
import './chunk-G77IGC3Y.js';
|
|
30
29
|
import './chunk-AVHBWJRY.js';
|
|
31
30
|
import './chunk-UULVIT25.js';
|
|
32
|
-
import './chunk-
|
|
31
|
+
import './chunk-3IXU7WUC.js';
|
|
32
|
+
import './chunk-US5QSLPV.js';
|
|
33
|
+
import './chunk-UEG2WC3G.js';
|
package/dist/workflows-list.js
CHANGED
|
@@ -1,20 +1,21 @@
|
|
|
1
|
-
export { WorkflowsList } from './chunk-
|
|
2
|
-
import './chunk-
|
|
3
|
-
import './chunk-
|
|
1
|
+
export { WorkflowsList } from './chunk-DANOMJ5I.js';
|
|
2
|
+
import './chunk-HLAUK5GM.js';
|
|
3
|
+
import './chunk-AG3VC7Y2.js';
|
|
4
4
|
import './chunk-5ERAJC2I.js';
|
|
5
|
-
import './chunk-
|
|
5
|
+
import './chunk-O2EB7UT2.js';
|
|
6
6
|
import './chunk-FNZZ5JJL.js';
|
|
7
|
-
import './chunk-
|
|
7
|
+
import './chunk-HOTVUVZG.js';
|
|
8
8
|
import './chunk-PJAWNFJV.js';
|
|
9
9
|
import './chunk-H4ERTSMX.js';
|
|
10
10
|
import './chunk-4VJ3MDOV.js';
|
|
11
|
-
import './chunk-
|
|
11
|
+
import './chunk-C26QAWCT.js';
|
|
12
12
|
import './chunk-5375NUIO.js';
|
|
13
13
|
import './chunk-JL7CASN5.js';
|
|
14
14
|
import './chunk-OCJTTHTS.js';
|
|
15
|
-
import './chunk-
|
|
16
|
-
import './chunk-6AMNEX2Y.js';
|
|
15
|
+
import './chunk-AU7LACOY.js';
|
|
17
16
|
import './chunk-G77IGC3Y.js';
|
|
18
17
|
import './chunk-AVHBWJRY.js';
|
|
19
18
|
import './chunk-UULVIT25.js';
|
|
20
|
-
import './chunk-
|
|
19
|
+
import './chunk-3IXU7WUC.js';
|
|
20
|
+
import './chunk-US5QSLPV.js';
|
|
21
|
+
import './chunk-UEG2WC3G.js';
|
package/package.json
CHANGED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
export { ExecutionDetailPage } from './chunk-WTV6SQYK.js';
|
|
2
|
-
import './chunk-D4WA2M2N.js';
|
|
3
|
-
import './chunk-XNU2PLJ2.js';
|
|
4
|
-
import './chunk-5D4XS3WJ.js';
|
|
5
|
-
import './chunk-SS7Y66P5.js';
|
|
6
|
-
import './chunk-NGXJHYV5.js';
|
|
7
|
-
import './chunk-5ERAJC2I.js';
|
|
8
|
-
import './chunk-BIB7IH26.js';
|
|
9
|
-
import './chunk-JDLQ6QIB.js';
|
|
10
|
-
import './chunk-F7LQL43U.js';
|
|
11
|
-
import './chunk-Y53CVZVV.js';
|
|
12
|
-
import './chunk-FNZZ5JJL.js';
|
|
13
|
-
import './chunk-AFX3EKFN.js';
|
|
14
|
-
import './chunk-PJAWNFJV.js';
|
|
15
|
-
import './chunk-H4ERTSMX.js';
|
|
16
|
-
import './chunk-AAIZ6S6E.js';
|
|
17
|
-
import './chunk-5375NUIO.js';
|
|
18
|
-
import './chunk-JL7CASN5.js';
|
|
19
|
-
import './chunk-OCJTTHTS.js';
|
|
20
|
-
import './chunk-PXIFUMLA.js';
|
|
21
|
-
import './chunk-6AMNEX2Y.js';
|
|
22
|
-
import './chunk-G77IGC3Y.js';
|
|
23
|
-
import './chunk-AVHBWJRY.js';
|
|
24
|
-
import './chunk-UULVIT25.js';
|
|
25
|
-
import './chunk-NTWG3CJX.js';
|