@boomi/embedkit 1.2.10 → 1.2.12
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/index.cjs +2094 -0
- package/dist/index.css +1 -0
- package/dist/index.d.ts +641 -0
- package/dist/index.js +66405 -0
- package/dist/index.umd.js +2094 -0
- package/package.json +3 -1
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,641 @@
|
|
|
1
|
+
import { BrowseCandidate } from '@boomi/embedkit-sdk';
|
|
2
|
+
import { default as default_2 } from 'react';
|
|
3
|
+
import { EnvExtMinimal } from '../../types/ui';
|
|
4
|
+
import { EnvExtMinimal as EnvExtMinimal_2 } from '@boomi/embedkit-sdk';
|
|
5
|
+
import { Environment } from '@boomi/embedkit-sdk';
|
|
6
|
+
import { EnvironmentExtensions } from '@boomi/embedkit-sdk';
|
|
7
|
+
import { EnvironmentMapExtension } from '@boomi/embedkit-sdk';
|
|
8
|
+
import { IntegrationPackInstance } from '@boomi/embedkit-sdk';
|
|
9
|
+
import { PluginConfig } from './types/plugin.config';
|
|
10
|
+
import { PluginUiConfig } from '../types/plugin-ui.config';
|
|
11
|
+
import { ProcessSchedules } from '@boomi/embedkit-sdk';
|
|
12
|
+
import { PropsWithChildren } from 'react';
|
|
13
|
+
import { ReactElement } from 'react';
|
|
14
|
+
import { Schedule } from '@boomi/embedkit-sdk';
|
|
15
|
+
import { ServerApi } from '../types/plugin-context';
|
|
16
|
+
import { TransformationStructuredOutput } from '@boomi/embedkit-sdk';
|
|
17
|
+
import { UpdateResult } from '@boomi/embedkit-sdk';
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Stores the initial plugin configuration and (asynchronously) kicks off loading
|
|
21
|
+
* of an external configuration file, if provided. Call this once before
|
|
22
|
+
* {@link RenderComponent}.
|
|
23
|
+
*
|
|
24
|
+
* @public
|
|
25
|
+
* @param config - The base plugin configuration.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```ts
|
|
29
|
+
* BoomiPlugin({
|
|
30
|
+
* apiBaseUrl: 'https://api.example.com',
|
|
31
|
+
* accountGroup: 'my-group',
|
|
32
|
+
* theme: { allowThemes: true, defaultTheme: 'boomi' },
|
|
33
|
+
* });
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
declare function BoomiPlugin(config: PluginConfig): void;
|
|
37
|
+
export { BoomiPlugin }
|
|
38
|
+
export default BoomiPlugin;
|
|
39
|
+
|
|
40
|
+
declare const componentMap: {
|
|
41
|
+
Integrations: default_2.FC<IntegrationsProps>;
|
|
42
|
+
ConfigureIntegration: default_2.FC<ConfigureIntegrationProps>;
|
|
43
|
+
ExecutionHistory: default_2.FC<ExecutionHistoryProps>;
|
|
44
|
+
UpdateConnections: default_2.ForwardRefExoticComponent<UpdateConnectionsProps & default_2.RefAttributes<UpdateConnectionsRef>>;
|
|
45
|
+
UpdateMaps: default_2.FC<UpdateMapsProps>;
|
|
46
|
+
UpdateSchedules: default_2.ForwardRefExoticComponent<UpdateSchedulesProps & default_2.RefAttributes<UpdateScheduleRef>>;
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
declare type ComponentName = keyof typeof componentMap;
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* @interface ConfigureIntegrationProps
|
|
53
|
+
*
|
|
54
|
+
* @description
|
|
55
|
+
* Props for the `ConfigureIntegration` component.
|
|
56
|
+
*
|
|
57
|
+
* @property {boolean} [componentKey] - Unique key for the component instance
|
|
58
|
+
* @property {IntegrationPack} integration - The integration pack to configure.
|
|
59
|
+
* @property {number} [indexPage] - Optional initial page index to open in the wizard.
|
|
60
|
+
* @property {() => void} onBack - Callback to navigate back or cancel the flow.
|
|
61
|
+
* @property {(id: string) => void} onDelete - Callback to delete an integration by its ID.
|
|
62
|
+
*/
|
|
63
|
+
declare interface ConfigureIntegrationProps {
|
|
64
|
+
componentKey: string;
|
|
65
|
+
integration: IntegrationPackInstance;
|
|
66
|
+
indexPage?: number;
|
|
67
|
+
onBack: () => void;
|
|
68
|
+
hostId?: string;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
export declare function createEmbedKit(overrides?: Partial<PluginConfig>): PluginConfig;
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* Destroys the plugin Shadow DOM and React tree, with optional cleanup behaviors.
|
|
75
|
+
*
|
|
76
|
+
* @public
|
|
77
|
+
* @param opts - Optional clean-up behaviors.
|
|
78
|
+
* @param opts.removeHost - If true, remove the host element with id `#boomi` from the DOM.
|
|
79
|
+
* @param opts.clearAuth - If true, scrub auth fields from in-memory config.
|
|
80
|
+
*
|
|
81
|
+
* @example
|
|
82
|
+
* ```ts
|
|
83
|
+
* DestroyPlugin({ removeHost: true, clearTheme: true, clearAuth: true });
|
|
84
|
+
* ```
|
|
85
|
+
*/
|
|
86
|
+
export declare function DestroyPlugin(opts?: {
|
|
87
|
+
hostId?: HostId;
|
|
88
|
+
removeHost?: boolean;
|
|
89
|
+
clearAuth?: boolean;
|
|
90
|
+
}): void;
|
|
91
|
+
|
|
92
|
+
export declare function EmbedKitProvider({ config, children }: EmbedKitProviderProps): ReactElement;
|
|
93
|
+
|
|
94
|
+
declare type EmbedKitProviderProps = PropsWithChildren & {
|
|
95
|
+
config: PluginConfig;
|
|
96
|
+
};
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* @interface ExecutionHistoryProps
|
|
100
|
+
*
|
|
101
|
+
* @description
|
|
102
|
+
* Props for the `ExecutionHistory` component.
|
|
103
|
+
*
|
|
104
|
+
* @property {boolean} [componentKey] - Unique key for the component instance
|
|
105
|
+
* @property {IntegrationPack} integration - The integration pack whose execution history is shown.
|
|
106
|
+
* @property {() => void} onBack - Callback function invoked when navigating back.
|
|
107
|
+
*/
|
|
108
|
+
declare interface ExecutionHistoryProps {
|
|
109
|
+
componentKey: string;
|
|
110
|
+
integration: IntegrationPackInstance;
|
|
111
|
+
onBack: () => void;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
declare type HostId = string;
|
|
115
|
+
|
|
116
|
+
/**
|
|
117
|
+
* @file IntegrationActions.tsx
|
|
118
|
+
* @component Integrations
|
|
119
|
+
* @license BSD-2-Clause
|
|
120
|
+
* @support https://bitbucket.org/officialboomi/embedkit
|
|
121
|
+
*
|
|
122
|
+
* @description
|
|
123
|
+
* The `Integrations` component displays a list of integration packs and allows users to add, edit, run, and delete integrations.
|
|
124
|
+
* It supports both grid and table views, search functionality, execution history viewing, and pagination.
|
|
125
|
+
* Provides UI for adding new integrations via a modal form and integrates with Boomi hooks for fetching, creating,
|
|
126
|
+
* deleting, and running integration packs.
|
|
127
|
+
*
|
|
128
|
+
* @return {JSX.Element} A fully functional integrations component with search, view, edit, delete, run, and history capabilities.
|
|
129
|
+
*/
|
|
130
|
+
/**
|
|
131
|
+
* @interface IntegrationsProps
|
|
132
|
+
*
|
|
133
|
+
* @description Props for the `Integrations` component.
|
|
134
|
+
*
|
|
135
|
+
* @property {boolean} [showUpdateControls] - Flag indicating whether to show update controls.
|
|
136
|
+
* @property {boolean} [componentKey] - Optional unique key for the component instance
|
|
137
|
+
* @property {'on' | 'off'} [defaultView] - Default view mode for displaying integrations, either 'on' or 'off'.
|
|
138
|
+
*/
|
|
139
|
+
declare interface IntegrationsProps {
|
|
140
|
+
componentKey: string;
|
|
141
|
+
showUpdateControls?: boolean;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
declare type MaybeWithKey<P> = P extends {
|
|
145
|
+
componentKey: any;
|
|
146
|
+
} ? Omit<P, 'componentKey'> & {
|
|
147
|
+
componentKey: string;
|
|
148
|
+
} : P;
|
|
149
|
+
|
|
150
|
+
export { PluginConfig }
|
|
151
|
+
|
|
152
|
+
/**
|
|
153
|
+
* Stores the initial plugin configuration and (asynchronously) kicks off loading
|
|
154
|
+
* of an external configuration file, if provided. Call this once before
|
|
155
|
+
* {@link RenderComponent}.
|
|
156
|
+
*
|
|
157
|
+
* @public
|
|
158
|
+
* @param config - The base plugin configuration.
|
|
159
|
+
*
|
|
160
|
+
* @example
|
|
161
|
+
* ```ts
|
|
162
|
+
* BoomiPlugin({
|
|
163
|
+
* apiBaseUrl: 'https://api.example.com',
|
|
164
|
+
* accountGroup: 'my-group',
|
|
165
|
+
* theme: { allowThemes: true, defaultTheme: 'boomi' },
|
|
166
|
+
* configFile: '/boomi.config.js'
|
|
167
|
+
* });
|
|
168
|
+
* ```
|
|
169
|
+
*/
|
|
170
|
+
export declare function RenderComponent<T extends ComponentName>({ component, props, hostId, componentKey, }: {
|
|
171
|
+
component: T;
|
|
172
|
+
props: MaybeWithKey<Parameters<(typeof componentMap)[T]>[0]>;
|
|
173
|
+
hostId?: string;
|
|
174
|
+
componentKey?: string;
|
|
175
|
+
}): void;
|
|
176
|
+
|
|
177
|
+
/**
|
|
178
|
+
* @interface UpdateConnectionsProps
|
|
179
|
+
*
|
|
180
|
+
* @description
|
|
181
|
+
* Props for the `UpdateConnections` component.
|
|
182
|
+
*
|
|
183
|
+
* @property {IntegrationPack} integration - The integration pack to update connections for.
|
|
184
|
+
* @property {boolean} active - Whether this component is currently active/visible.
|
|
185
|
+
* @property {boolean} wizard - Indicates if the component is used inside a wizard flow.
|
|
186
|
+
* @property {() => void} [onSubmit] - Optional callback invoked after a successful submit.
|
|
187
|
+
* @property {(val: boolean) => void} [setIsLoading] - Optional callback to set loading state externally.
|
|
188
|
+
* @property {() => void} [onBack] - Optional callback invoked when navigating back.
|
|
189
|
+
*/
|
|
190
|
+
declare interface UpdateConnectionsProps {
|
|
191
|
+
componentKey: string;
|
|
192
|
+
integration: IntegrationPackInstance;
|
|
193
|
+
active: boolean;
|
|
194
|
+
wizard: boolean;
|
|
195
|
+
onSubmit?: () => void;
|
|
196
|
+
setIsLoading?: (val: boolean) => void;
|
|
197
|
+
onBack?: () => void;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
/**
|
|
201
|
+
* @typedef UpdateConnectionsRef
|
|
202
|
+
*
|
|
203
|
+
* @description
|
|
204
|
+
* Methods exposed to parent components for controlling the `UpdateConnections` component.
|
|
205
|
+
*
|
|
206
|
+
* @property {boolean} [componentKey] - Unique key for the component instance
|
|
207
|
+
* @property {() => Promise<boolean>} submit - Submits the current connection updates. Returns `true` if successful.
|
|
208
|
+
* @property {() => void} load - Reloads the connection data.
|
|
209
|
+
*/
|
|
210
|
+
declare type UpdateConnectionsRef = {
|
|
211
|
+
submit: () => Promise<boolean>;
|
|
212
|
+
};
|
|
213
|
+
|
|
214
|
+
/**
|
|
215
|
+
* @interface UpdateMapsProps
|
|
216
|
+
*
|
|
217
|
+
* @description
|
|
218
|
+
* Props for the `UpdateMaps` component.
|
|
219
|
+
*
|
|
220
|
+
* @property {boolean} [componentKey] - Unique key for the component instance
|
|
221
|
+
* @property {boolean} active - Whether this component is currently active/visible.
|
|
222
|
+
* @property {boolean} wizard - Indicates if the component is used inside a wizard flow.
|
|
223
|
+
* @property {IntegrationPack} integration - The integration pack to update maps for.
|
|
224
|
+
* @property {EnvironmentMapExtension[]} maps - The list of environment map extensions to display and edit.
|
|
225
|
+
* @property {(updatedMaps: EnvironmentMapExtension[]) => void} [onMapsChange] - Optional callback invoked when the maps are updated.
|
|
226
|
+
* @property {() => void} [onBack] - Optional callback invoked to navigate back.
|
|
227
|
+
* @property {(val: boolean) => void} [setIsLoading] - Optional callback to set loading state externally.
|
|
228
|
+
*/
|
|
229
|
+
declare interface UpdateMapsProps {
|
|
230
|
+
componentKey: string;
|
|
231
|
+
active: boolean;
|
|
232
|
+
wizard: boolean;
|
|
233
|
+
integration: IntegrationPackInstance;
|
|
234
|
+
onBack?: () => void;
|
|
235
|
+
setIsLoading?: (val: boolean) => void;
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
/**
|
|
239
|
+
* @typedef UpdateScheduleRef
|
|
240
|
+
*
|
|
241
|
+
* @description
|
|
242
|
+
* Methods exposed via ref to parent components for controlling the `UpdateSchedules` component.
|
|
243
|
+
*
|
|
244
|
+
* @property {() => Promise<boolean>} submit - Submits the updated schedule. Returns `true` if successful.
|
|
245
|
+
*/
|
|
246
|
+
declare type UpdateScheduleRef = {
|
|
247
|
+
submit: () => Promise<boolean>;
|
|
248
|
+
};
|
|
249
|
+
|
|
250
|
+
/**
|
|
251
|
+
* @interface UpdateSchedulesProps
|
|
252
|
+
*
|
|
253
|
+
* @description
|
|
254
|
+
* Props for the `UpdateSchedules` component.
|
|
255
|
+
*
|
|
256
|
+
* @property {boolean} [componentKey] - Unique key for the component instance
|
|
257
|
+
* @property {IntegrationPack} integration - The integration pack to update schedules for.
|
|
258
|
+
* @property {(val: boolean) => void} [setIsLoading] - Optional callback to set loading state externally.
|
|
259
|
+
* @property {() => void} [onSubmit] - Optional callback invoked after a successful submit.
|
|
260
|
+
* @property {() => void} [onBack] - Optional callback invoked to navigate back in wizard mode.
|
|
261
|
+
* @property {boolean} active - Whether this component is currently active/visible.
|
|
262
|
+
* @property {boolean} wizard - Indicates if the component is used inside a wizard flow.
|
|
263
|
+
*/
|
|
264
|
+
declare interface UpdateSchedulesProps {
|
|
265
|
+
componentKey: string;
|
|
266
|
+
integration: IntegrationPackInstance;
|
|
267
|
+
setIsLoading?: (val: boolean) => void;
|
|
268
|
+
onSubmit?: () => void;
|
|
269
|
+
onBack?: () => void;
|
|
270
|
+
active: boolean;
|
|
271
|
+
wizard: boolean;
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
/**
|
|
275
|
+
* Provides an imperative `createInstance` function that:
|
|
276
|
+
* 1) Creates a new Integration Pack Instance.
|
|
277
|
+
* 2) Optionally attaches the provided environments to that instance.
|
|
278
|
+
* 3) Builds a convenient `IntegrationPack` config object for UI consumption.
|
|
279
|
+
*
|
|
280
|
+
* @return {{
|
|
281
|
+
* integrationPackConfig: IntegrationPack | null;
|
|
282
|
+
* environmentsAttached: Environment[];
|
|
283
|
+
* isLoading: boolean;
|
|
284
|
+
* error: string | null;
|
|
285
|
+
* createInstance: (
|
|
286
|
+
* integrationPackId: string,
|
|
287
|
+
* isSingleInstall?: boolean,
|
|
288
|
+
* integrationPackOverrideName?: string,
|
|
289
|
+
* environments?: Environment[]
|
|
290
|
+
* ) => Promise<IntegrationPack | undefined>;
|
|
291
|
+
* }}
|
|
292
|
+
* Hook API including the latest config, attached environments, loading/error state, and the creator function.
|
|
293
|
+
*
|
|
294
|
+
* @throws {Error}
|
|
295
|
+
* When the Boomi client/context is missing, required inputs are invalid,
|
|
296
|
+
* or the create/attach operations fail.
|
|
297
|
+
*/
|
|
298
|
+
export declare const useCreateIntegrationPackInstance: () => {
|
|
299
|
+
integrationPackConfig: IntegrationPackInstance | null;
|
|
300
|
+
isLoading: boolean;
|
|
301
|
+
error: string | null;
|
|
302
|
+
createInstance: (integrationPackId: string, isSingleInstall: boolean | undefined, environmentId: string, integrationPackOverrideName?: string) => Promise<IntegrationPackInstance | undefined>;
|
|
303
|
+
};
|
|
304
|
+
|
|
305
|
+
/**
|
|
306
|
+
* Provides an imperative `deleteIntegrationPackInstance` function that removes
|
|
307
|
+
* an integration pack instance by ID.
|
|
308
|
+
*
|
|
309
|
+
* @return {{
|
|
310
|
+
* deleteIntegrationPackInstance: (integrationPackInstanceId: string) => Promise<boolean>;
|
|
311
|
+
* isLoading: boolean;
|
|
312
|
+
* error: string | null;
|
|
313
|
+
* }}
|
|
314
|
+
* Hook API with the delete function and request state.
|
|
315
|
+
*
|
|
316
|
+
* @throws {Error}
|
|
317
|
+
* If the Boomi client or required context is missing, or if the ID is not provided.
|
|
318
|
+
*/
|
|
319
|
+
export declare const useDeleteIntegrationPackInstance: () => {
|
|
320
|
+
deleteIntegrationPackInstance: (integrationPackInstanceId: string) => Promise<boolean>;
|
|
321
|
+
isLoading: boolean;
|
|
322
|
+
error: string | null;
|
|
323
|
+
};
|
|
324
|
+
|
|
325
|
+
declare type UseEmbedKit = {
|
|
326
|
+
hostId?: string;
|
|
327
|
+
componentKey?: string;
|
|
328
|
+
pageIsLoading: boolean;
|
|
329
|
+
isReady: boolean;
|
|
330
|
+
accessToken: string | null;
|
|
331
|
+
serverApi: ServerApi;
|
|
332
|
+
boomiConfig?: PluginUiConfig;
|
|
333
|
+
setPageIsLoading: (v: boolean) => void;
|
|
334
|
+
logout: () => void;
|
|
335
|
+
};
|
|
336
|
+
|
|
337
|
+
export declare function useEmbedKit(): UseEmbedKit;
|
|
338
|
+
|
|
339
|
+
/**
|
|
340
|
+
* React hook that:
|
|
341
|
+
* 1) Retrieves the current Boomi account group from context,
|
|
342
|
+
* 2) Queries the Boomi API for associated Integration Packs,
|
|
343
|
+
* 3) Filters out packs based on installation type and whether an instance already exists.
|
|
344
|
+
*
|
|
345
|
+
* @return {{
|
|
346
|
+
* integrationPacks: any[];
|
|
347
|
+
* isLoading: boolean;
|
|
348
|
+
* error: string | null;
|
|
349
|
+
* }}
|
|
350
|
+
* Hook result containing the eligible Integration Packs for the account group, loading state, and any error.
|
|
351
|
+
*
|
|
352
|
+
* @throws {Error}
|
|
353
|
+
* If the Boomi SDK or required configuration values are missing.
|
|
354
|
+
*/
|
|
355
|
+
export declare const useFetchAccountGroupIntegrationPacks: () => {
|
|
356
|
+
integrationPacks: any[];
|
|
357
|
+
isLoading: boolean;
|
|
358
|
+
error: string | null;
|
|
359
|
+
};
|
|
360
|
+
|
|
361
|
+
/**
|
|
362
|
+
* Generates Boomi-compatible transformation functions via OpenAI:
|
|
363
|
+
* 1) Reads AI config (enabled, model, apiKey) from context.
|
|
364
|
+
* 2) Sends a structured prompt to produce name, script, inputs, outputs.
|
|
365
|
+
* 3) Validates the response against `AiTransformation` (zod).
|
|
366
|
+
* 4) Shapes the result into Boomi `MapExtensionsFunction` format.
|
|
367
|
+
*
|
|
368
|
+
* @return {{
|
|
369
|
+
* result: any | null;
|
|
370
|
+
* isLoading: boolean;
|
|
371
|
+
* error: string | null;
|
|
372
|
+
* fetchTransformation: (userPrompt: string, id: string) => Promise<any | void>;
|
|
373
|
+
* }}
|
|
374
|
+
* Hook API with the latest generated result, loading/error state, and an invoker.
|
|
375
|
+
*
|
|
376
|
+
* @throws {Error}
|
|
377
|
+
* When AI is enabled but model or apiKey is missing in context.
|
|
378
|
+
*/
|
|
379
|
+
export declare const useFetchAiTransformations: () => {
|
|
380
|
+
result: any;
|
|
381
|
+
isLoading: boolean;
|
|
382
|
+
error: string | null;
|
|
383
|
+
fetchTransformation: (userPrompt: string, id: string) => Promise<TransformationStructuredOutput | undefined>;
|
|
384
|
+
};
|
|
385
|
+
|
|
386
|
+
/**
|
|
387
|
+
* Retrieves environment extensions for the given environment(s) and integration pack instance.
|
|
388
|
+
* Identifies and strips sensitive OAuth2 access token fields while separately returning
|
|
389
|
+
* metadata about them.
|
|
390
|
+
*
|
|
391
|
+
* @return {{
|
|
392
|
+
* extensions: EnvironmentExtensions[] | null;
|
|
393
|
+
* fetchEnvironmentExtensions: (
|
|
394
|
+
* environments: Environment[],
|
|
395
|
+
* environmentId: string,
|
|
396
|
+
* integrationPackInstanceId: string
|
|
397
|
+
* ) => Promise<void>;
|
|
398
|
+
* isLoading: boolean;
|
|
399
|
+
* error: string | null;
|
|
400
|
+
* }}
|
|
401
|
+
* Hook API with filtered extensions, matched token field metadata, loading/error state, and a refetch method.
|
|
402
|
+
*
|
|
403
|
+
* @throws {Error}
|
|
404
|
+
* If the Boomi client, integrationPackInstanceId, or required environment inputs are missing.
|
|
405
|
+
*/
|
|
406
|
+
export declare const useFetchEnvironmentExtensions: ({}?: {}) => {
|
|
407
|
+
extensions: EnvExtMinimal[] | null;
|
|
408
|
+
rawExtensions: EnvironmentExtensions[] | null;
|
|
409
|
+
fetchEnvironmentExtensions: (environments: Environment[], environmentId: string, integrationPackInstanceId: string) => Promise<void>;
|
|
410
|
+
isLoading: boolean;
|
|
411
|
+
error: string | null;
|
|
412
|
+
};
|
|
413
|
+
|
|
414
|
+
/**
|
|
415
|
+
* Fetches environments from the Boomi API using classification (PROD/TEST/ALL)
|
|
416
|
+
* or a specific environment ID. When available, enriches environments with Atom
|
|
417
|
+
* attachments and computes an `isActive` flag (true if all attached Atoms are ONLINE).
|
|
418
|
+
*
|
|
419
|
+
*
|
|
420
|
+
* @return {{ environments: any[]; isLoading: boolean; error: string | null }}
|
|
421
|
+
* An object containing the fetched environments with metadata, loading state, and any error.
|
|
422
|
+
*
|
|
423
|
+
* @throws {Error}
|
|
424
|
+
* If required context (Boomi SDK, apiAccountId) or parameters are missing.
|
|
425
|
+
*/
|
|
426
|
+
export declare const useFetchEnvironments: () => {
|
|
427
|
+
fetchEnvironments: (includeEnvironments?: "PROD" | "TEST" | "ALL", environmentId?: string | null) => Promise<void>;
|
|
428
|
+
environments: any[];
|
|
429
|
+
isLoading: boolean;
|
|
430
|
+
error: string | null;
|
|
431
|
+
};
|
|
432
|
+
|
|
433
|
+
/**
|
|
434
|
+
* Fetches execution records for all processes under a given integration pack
|
|
435
|
+
* instance ID (`id`). Optionally filters by a search term (case-insensitive)
|
|
436
|
+
* against the record `message` field. Records are sorted (oldest → newest) when
|
|
437
|
+
* no search term is provided, and paginated with a fixed page size.
|
|
438
|
+
*
|
|
439
|
+
* @return {{
|
|
440
|
+
* records: ExecutionRecord[];
|
|
441
|
+
* isLoading: boolean;
|
|
442
|
+
* error: string | null;
|
|
443
|
+
* currentPage: number;
|
|
444
|
+
* totalPages: number;
|
|
445
|
+
* goToPage: (page: number) => void;
|
|
446
|
+
* refetch: () => void;
|
|
447
|
+
* }}
|
|
448
|
+
* Hook API with current page of records, loading/error state, pagination helpers, and a refetch method.
|
|
449
|
+
*
|
|
450
|
+
* @throws {Error}
|
|
451
|
+
* Sets error state if Boomi client is missing or if required parameters are not provided.
|
|
452
|
+
*/
|
|
453
|
+
export declare const useFetchExecutionRecords: (id: string, searchTerm?: string) => {
|
|
454
|
+
records: any;
|
|
455
|
+
isLoading: boolean;
|
|
456
|
+
error: string | null;
|
|
457
|
+
currentPage: number;
|
|
458
|
+
totalPages: number;
|
|
459
|
+
goToPage: (page: number) => void;
|
|
460
|
+
refetch: () => void;
|
|
461
|
+
};
|
|
462
|
+
|
|
463
|
+
/**
|
|
464
|
+
* @function fetchIntegrationPackInstances
|
|
465
|
+
*
|
|
466
|
+
* @description
|
|
467
|
+
* Internal async helper that:
|
|
468
|
+
* - Resolves the account group ID.
|
|
469
|
+
* - Retrieves integration packs available to that group.
|
|
470
|
+
* - Queries pack instances, applies search, paginates, and enriches results
|
|
471
|
+
* with installation type, display name/description, and attached env IDs.
|
|
472
|
+
*
|
|
473
|
+
* @returns {Promise<void>} Resolves when state has been updated.
|
|
474
|
+
*/
|
|
475
|
+
export declare const useFetchIntegrationPackInstances: ({ search }: {
|
|
476
|
+
search?: string;
|
|
477
|
+
}) => {
|
|
478
|
+
integrationPackInstances: IntegrationPackInstance[];
|
|
479
|
+
refetch: () => Promise<void>;
|
|
480
|
+
isLoading: boolean;
|
|
481
|
+
error: string | null;
|
|
482
|
+
currentPage: number;
|
|
483
|
+
totalPages: number;
|
|
484
|
+
goToPage: (page: number) => void;
|
|
485
|
+
};
|
|
486
|
+
|
|
487
|
+
/**
|
|
488
|
+
* Fetches map extension summaries (and, unless `breakOnSummary` is true, the full
|
|
489
|
+
* map extensions) for a given Integration Pack Instance ID. Results are de-duplicated
|
|
490
|
+
* across environments and processes.
|
|
491
|
+
*
|
|
492
|
+
* @return {{
|
|
493
|
+
* maps: EnvironmentMapExtension[],
|
|
494
|
+
* hasMaps: boolean,
|
|
495
|
+
* fetchMapExtensions: () => Promise<void>,
|
|
496
|
+
* isLoading: boolean,
|
|
497
|
+
* error: string | null
|
|
498
|
+
* }}
|
|
499
|
+
* Hook API including fetched maps (when not short-circuited), a boolean indicating if any maps exist,
|
|
500
|
+
* a refetch method, and request state flags.
|
|
501
|
+
*
|
|
502
|
+
* @throws {Error}
|
|
503
|
+
* Sets error state if the Boomi client is missing or if required parameters are invalid.
|
|
504
|
+
*/
|
|
505
|
+
export declare const useFetchMapExtensions: () => {
|
|
506
|
+
maps: EnvironmentMapExtension[];
|
|
507
|
+
hasMaps: boolean;
|
|
508
|
+
hasCandidates: boolean;
|
|
509
|
+
mapCandidates: BrowseCandidate[];
|
|
510
|
+
fetchMapExtensions: (integrationPackInstanceId: string, environmentId: string) => Promise<void>;
|
|
511
|
+
isLoading: boolean;
|
|
512
|
+
error: string | null;
|
|
513
|
+
};
|
|
514
|
+
|
|
515
|
+
/**
|
|
516
|
+
* Provides a method to fetch process schedules for a given environment and
|
|
517
|
+
* integration pack instance. Looks up atom attachments, queries processes, and
|
|
518
|
+
* then queries schedules per (atomId, processId) pair until one is found.
|
|
519
|
+
*
|
|
520
|
+
* @return {{
|
|
521
|
+
* schedule: ProcessSchedules | null;
|
|
522
|
+
* processes: Process[];
|
|
523
|
+
* isLoading: boolean;
|
|
524
|
+
* error: string | null;
|
|
525
|
+
* fetchSchedules: (params: UseFetchProcessSchedulesParams) => Promise<void>;
|
|
526
|
+
* }}
|
|
527
|
+
* Hook state and API.
|
|
528
|
+
*
|
|
529
|
+
* @throws {Error}
|
|
530
|
+
* If required params are missing or queries fail.
|
|
531
|
+
*/
|
|
532
|
+
export declare const useFetchProcessSchedules: () => {
|
|
533
|
+
schedule: ProcessSchedules | null;
|
|
534
|
+
isLoading: boolean;
|
|
535
|
+
error: string | null;
|
|
536
|
+
fetchSchedules: (environmentId: string, integrationPackInstanceId: string) => Promise<void>;
|
|
537
|
+
};
|
|
538
|
+
|
|
539
|
+
/**
|
|
540
|
+
* @description
|
|
541
|
+
* Provides a `runAllProcesses` function to:
|
|
542
|
+
* 1. Retrieve all Atoms for the given environment.
|
|
543
|
+
* 2. Retrieve all processes for the given integration pack instance.
|
|
544
|
+
* 3. Trigger execution requests for every process/atom combination.
|
|
545
|
+
* 4. Return the execution record URLs for tracking.
|
|
546
|
+
*
|
|
547
|
+
* @return {{
|
|
548
|
+
* isRunning: boolean;
|
|
549
|
+
* recordUrls: string[];
|
|
550
|
+
* error: string | null;
|
|
551
|
+
* runAllProcesses: (params: UseRunAllProcessesParams) => Promise<string[] | void>;
|
|
552
|
+
* }}
|
|
553
|
+
* Hook API containing loading state, execution URLs, errors, and the execution function.
|
|
554
|
+
*
|
|
555
|
+
* @throws {Error}
|
|
556
|
+
* If Boomi is not initialized or required parameters are missing.
|
|
557
|
+
*/
|
|
558
|
+
export declare const useRunAllProcesses: () => {
|
|
559
|
+
isRunning: boolean;
|
|
560
|
+
recordUrls: string[];
|
|
561
|
+
error: string | null;
|
|
562
|
+
runAllProcesses: (environmentId: string, integrationPackInstanceId: string) => Promise<string[] | undefined>;
|
|
563
|
+
};
|
|
564
|
+
|
|
565
|
+
/**
|
|
566
|
+
* Provides an imperative `updateEnvironmentExtensions` function to update a single
|
|
567
|
+
* environment extension record. Sets `partial=true` prior to update to indicate a
|
|
568
|
+
* partial update. Updates plugin config after completion.
|
|
569
|
+
*
|
|
570
|
+
* @return {{
|
|
571
|
+
* updateEnvironmentExtensions: (
|
|
572
|
+
* extension: EnvironmentExtensions,
|
|
573
|
+
* environmentId: string,
|
|
574
|
+
* extensionGroupId: string
|
|
575
|
+
* ) => Promise<void>;
|
|
576
|
+
* isUpdating: boolean;
|
|
577
|
+
* updateError: string | null;
|
|
578
|
+
* updatedExtension: EnvironmentExtensions | null;
|
|
579
|
+
* }}
|
|
580
|
+
* Hook API exposing the update function and request state.
|
|
581
|
+
*
|
|
582
|
+
* @throws {Error}
|
|
583
|
+
* If required inputs are missing or the update call fails.
|
|
584
|
+
*/
|
|
585
|
+
export declare const useUpdateEnvironmentExtensions: () => {
|
|
586
|
+
updateFromCombined: (originals: EnvironmentExtensions[], combinedEdited: EnvExtMinimal_2[], environmentId: string, integrationPackInstanceId: string) => Promise<UpdateResult>;
|
|
587
|
+
isUpdating: boolean;
|
|
588
|
+
updateError: string | null;
|
|
589
|
+
editedConnections: EnvExtMinimal_2[] | null;
|
|
590
|
+
updatedExtension: EnvironmentExtensions | null;
|
|
591
|
+
};
|
|
592
|
+
|
|
593
|
+
/**
|
|
594
|
+
* Provides an imperative `updateMapExtensions` function that posts a single
|
|
595
|
+
* `EnvironmentMapExtension` update. Accepts JSON payloads and handles either JSON
|
|
596
|
+
* or XML responses from Boomi.
|
|
597
|
+
*
|
|
598
|
+
* @return {{
|
|
599
|
+
* updateMapExtensions: (params: UseUpdateMapExtensionsUpdateParams) => Promise<EnvironmentMapExtension>,
|
|
600
|
+
* isUpdating: boolean,
|
|
601
|
+
* updateError: string | null,
|
|
602
|
+
* updatedExtensions: EnvironmentMapExtension[]
|
|
603
|
+
* }}
|
|
604
|
+
* Hook API exposing the updater function, loading/error state, and last updated extensions.
|
|
605
|
+
*
|
|
606
|
+
* @throws {Error}
|
|
607
|
+
* If required inputs are missing or the update request fails.
|
|
608
|
+
*/
|
|
609
|
+
export declare const useUpdateMapExtensions: () => {
|
|
610
|
+
updateMapExtensions: (envMapExtension: EnvironmentMapExtension) => Promise<EnvironmentMapExtension>;
|
|
611
|
+
isUpdating: boolean;
|
|
612
|
+
updateError: string | null;
|
|
613
|
+
updatedExtensions: EnvironmentMapExtension[];
|
|
614
|
+
};
|
|
615
|
+
|
|
616
|
+
/**
|
|
617
|
+
* Provides an imperative `updateProcessSchedules` function that:
|
|
618
|
+
* 1) Resolves Atom IDs attached to an environment,
|
|
619
|
+
* 2) Retrieves all processes for an integration pack instance,
|
|
620
|
+
* 3) Constructs a `ProcessSchedules` payload (including a `Retry` policy),
|
|
621
|
+
* 4) Replaces schedules for every (processId × atomId) combination.
|
|
622
|
+
*
|
|
623
|
+
* @return {{
|
|
624
|
+
* updateProcessSchedules: (params: UseUpdateProcessSchedulesParams) => Promise<void>;
|
|
625
|
+
* isUpdating: boolean;
|
|
626
|
+
* updateError: string | null;
|
|
627
|
+
* updatedSchedules: ProcessSchedules[];
|
|
628
|
+
* }}
|
|
629
|
+
* Hook API with the updater function, request state, and the list of updated schedule objects.
|
|
630
|
+
*
|
|
631
|
+
* @throws {Error}
|
|
632
|
+
* If required context or parameters are missing, or if any update call fails.
|
|
633
|
+
*/
|
|
634
|
+
export declare const useUpdateProcessSchedules: () => {
|
|
635
|
+
updateProcessSchedules: (schedules: Schedule[], environmentId: string, integrationPackInstanceId: string) => Promise<void>;
|
|
636
|
+
isUpdating: boolean;
|
|
637
|
+
updateError: string | null;
|
|
638
|
+
updatedSchedules: ProcessSchedules[];
|
|
639
|
+
};
|
|
640
|
+
|
|
641
|
+
export { }
|