@uipath/maestro-builder-sdk 5.2.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/LICENSE +21 -0
- package/README.md +322 -0
- package/dist/bindings-v2.d.ts +37 -0
- package/dist/bindings-v2.js +155 -0
- package/dist/bindings.d.ts +6 -0
- package/dist/bindings.js +6 -0
- package/dist/bpmn/bpmn-expr-check.d.ts +41 -0
- package/dist/bpmn/bpmn-expr-check.js +218 -0
- package/dist/bpmn/bpmn-sdk.d.ts +2257 -0
- package/dist/bpmn/bpmn-sdk.js +1476 -0
- package/dist/bpmn/check-cli.d.ts +3 -0
- package/dist/bpmn/check-cli.js +32 -0
- package/dist/bpmn/check.d.ts +25 -0
- package/dist/bpmn/check.js +430 -0
- package/dist/bpmn/compile-cli.d.ts +3 -0
- package/dist/bpmn/compile-cli.js +60 -0
- package/dist/bpmn/connector.d.ts +56 -0
- package/dist/bpmn/connector.js +199 -0
- package/dist/bpmn/decompile-cli.d.ts +8 -0
- package/dist/bpmn/decompile-cli.js +54 -0
- package/dist/bpmn/decompile.d.ts +6 -0
- package/dist/bpmn/decompile.js +1108 -0
- package/dist/bpmn/format-profile.d.ts +27 -0
- package/dist/bpmn/format-profile.js +11 -0
- package/dist/bpmn/intsvc.d.ts +77 -0
- package/dist/bpmn/intsvc.js +155 -0
- package/dist/bpmn/load.d.ts +4 -0
- package/dist/bpmn/load.js +22 -0
- package/dist/bpmn/merge-cli.d.ts +3 -0
- package/dist/bpmn/merge-cli.js +45 -0
- package/dist/bpmn/merge.d.ts +19 -0
- package/dist/bpmn/merge.js +293 -0
- package/dist/bpmn/registry-types.json +1869 -0
- package/dist/bpmn/serialize.d.ts +28 -0
- package/dist/bpmn/serialize.js +757 -0
- package/dist/bpmn/tidy-cli.d.ts +2 -0
- package/dist/bpmn/tidy-cli.js +39 -0
- package/dist/bpmn/typed-node.d.ts +382 -0
- package/dist/bpmn/typed-node.js +551 -0
- package/dist/bpmn/uipath-moddle.v1.json +823 -0
- package/dist/bpmn/xml-ranges.d.ts +45 -0
- package/dist/bpmn/xml-ranges.js +151 -0
- package/dist/case/case-expr-check.d.ts +35 -0
- package/dist/case/case-expr-check.js +85 -0
- package/dist/case/case-sdk.d.ts +1282 -0
- package/dist/case/case-sdk.js +923 -0
- package/dist/case/check-cli.d.ts +3 -0
- package/dist/case/check-cli.js +31 -0
- package/dist/case/check.d.ts +18 -0
- package/dist/case/check.js +456 -0
- package/dist/case/compile-cli.d.ts +3 -0
- package/dist/case/compile-cli.js +291 -0
- package/dist/case/decompile-cli.d.ts +9 -0
- package/dist/case/decompile-cli.js +117 -0
- package/dist/case/decompile.d.ts +187 -0
- package/dist/case/decompile.js +1170 -0
- package/dist/case/entry-points.d.ts +79 -0
- package/dist/case/entry-points.js +118 -0
- package/dist/case/format-profile.d.ts +60 -0
- package/dist/case/format-profile.js +79 -0
- package/dist/case/ids.d.ts +24 -0
- package/dist/case/ids.js +76 -0
- package/dist/case/load.d.ts +12 -0
- package/dist/case/load.js +32 -0
- package/dist/case/preserve.d.ts +133 -0
- package/dist/case/preserve.js +105 -0
- package/dist/case/serialize.d.ts +10 -0
- package/dist/case/serialize.js +1414 -0
- package/dist/check-cli.d.ts +3 -0
- package/dist/check-cli.js +118 -0
- package/dist/check.d.ts +146 -0
- package/dist/check.js +4898 -0
- package/dist/cli/commands/bpmn.d.ts +2 -0
- package/dist/cli/commands/bpmn.js +73 -0
- package/dist/cli/commands/case.d.ts +2 -0
- package/dist/cli/commands/case.js +60 -0
- package/dist/cli/commands/flow.d.ts +2 -0
- package/dist/cli/commands/flow.js +99 -0
- package/dist/cli/commands/registry.d.ts +10 -0
- package/dist/cli/commands/registry.js +170 -0
- package/dist/cli/common.d.ts +30 -0
- package/dist/cli/common.js +92 -0
- package/dist/cli/index.d.ts +2 -0
- package/dist/cli/index.js +18 -0
- package/dist/cli-run.d.ts +2 -0
- package/dist/cli-run.js +42 -0
- package/dist/compile-cli.d.ts +3 -0
- package/dist/compile-cli.js +160 -0
- package/dist/config.d.ts +47 -0
- package/dist/config.js +201 -0
- package/dist/core/actions.d.ts +3244 -0
- package/dist/core/actions.js +1062 -0
- package/dist/core/binding-messages.d.ts +1 -0
- package/dist/core/binding-messages.js +16 -0
- package/dist/core/bindings.d.ts +12 -0
- package/dist/core/bindings.js +67 -0
- package/dist/core/ceql.d.ts +73 -0
- package/dist/core/ceql.js +272 -0
- package/dist/core/cli-spelling.d.ts +39 -0
- package/dist/core/cli-spelling.js +62 -0
- package/dist/core/connector-raw-node.d.ts +21 -0
- package/dist/core/connector-raw-node.js +47 -0
- package/dist/core/connectors.d.ts +184 -0
- package/dist/core/connectors.js +128 -0
- package/dist/core/expr-check.d.ts +93 -0
- package/dist/core/expr-check.js +186 -0
- package/dist/core/expr.d.ts +323 -0
- package/dist/core/expr.js +400 -0
- package/dist/core/index.d.ts +10 -0
- package/dist/core/index.js +10 -0
- package/dist/core/library.d.ts +440 -0
- package/dist/core/library.js +1183 -0
- package/dist/core/list-envelope.d.ts +45 -0
- package/dist/core/list-envelope.js +97 -0
- package/dist/core/lookup-store.d.ts +22 -0
- package/dist/core/lookup-store.js +85 -0
- package/dist/core/lookups.d.ts +227 -0
- package/dist/core/lookups.js +231 -0
- package/dist/core/node-classes.d.ts +234 -0
- package/dist/core/node-classes.js +158 -0
- package/dist/core/script-return.d.ts +68 -0
- package/dist/core/script-return.js +197 -0
- package/dist/core/stable-id.d.ts +28 -0
- package/dist/core/stable-id.js +37 -0
- package/dist/core-definitions.json +16249 -0
- package/dist/decompile-cli.d.ts +3 -0
- package/dist/decompile-cli.js +131 -0
- package/dist/decompile.d.ts +138 -0
- package/dist/decompile.js +2482 -0
- package/dist/emit.d.ts +10 -0
- package/dist/emit.js +60 -0
- package/dist/event-filters.d.ts +130 -0
- package/dist/event-filters.js +137 -0
- package/dist/flow-expr-check.d.ts +17 -0
- package/dist/flow-expr-check.js +193 -0
- package/dist/flow-sdk.d.ts +1341 -0
- package/dist/flow-sdk.js +1164 -0
- package/dist/flow-variables.d.ts +13 -0
- package/dist/flow-variables.js +42 -0
- package/dist/format-profile.d.ts +72 -0
- package/dist/format-profile.js +97 -0
- package/dist/generators/_connections.py +287 -0
- package/dist/generators/_events.py +355 -0
- package/dist/generators/_lookups.py +114 -0
- package/dist/generators/_naming.py +185 -0
- package/dist/generators/_objects.py +299 -0
- package/dist/generators/_resolve.py +273 -0
- package/dist/generators/convert_library_to_md.py +1441 -0
- package/dist/generators/extract_library.py +125 -0
- package/dist/generators/generate_connectors_ts.py +936 -0
- package/dist/generators/generate_library_json.py +2527 -0
- package/dist/generators/generate_triggers_ts.py +110 -0
- package/dist/generators/materialize_registry.py +155 -0
- package/dist/generators/prepare_connector.py +1688 -0
- package/dist/index.d.ts +35 -0
- package/dist/index.js +35 -0
- package/dist/ixp-definition.json +1982 -0
- package/dist/library.d.ts +6 -0
- package/dist/library.js +6 -0
- package/dist/load.d.ts +16 -0
- package/dist/load.js +95 -0
- package/dist/merge-cli.d.ts +3 -0
- package/dist/merge-cli.js +47 -0
- package/dist/merge.d.ts +125 -0
- package/dist/merge.js +0 -0
- package/dist/migrate.d.ts +15 -0
- package/dist/migrate.js +245 -0
- package/dist/node-runtime.d.ts +3 -0
- package/dist/node-runtime.js +22 -0
- package/dist/package-name.d.ts +17 -0
- package/dist/package-name.js +17 -0
- package/dist/ref-resolve.d.ts +77 -0
- package/dist/ref-resolve.js +170 -0
- package/dist/registry/cache.d.ts +55 -0
- package/dist/registry/cache.js +134 -0
- package/dist/registry/curated-overlay.d.ts +16 -0
- package/dist/registry/curated-overlay.js +62 -0
- package/dist/registry/extractor.d.ts +22 -0
- package/dist/registry/extractor.js +18 -0
- package/dist/registry/materialize-bin.d.ts +2 -0
- package/dist/registry/materialize-bin.js +7 -0
- package/dist/registry/materialize-cli.d.ts +1 -0
- package/dist/registry/materialize-cli.js +46 -0
- package/dist/registry/materializer.d.ts +23 -0
- package/dist/registry/materializer.js +34 -0
- package/dist/registry/path-cli.d.ts +1 -0
- package/dist/registry/path-cli.js +56 -0
- package/dist/registry/prepare-cli.d.ts +62 -0
- package/dist/registry/prepare-cli.js +185 -0
- package/dist/registry/pull-cli.d.ts +1 -0
- package/dist/registry/pull-cli.js +274 -0
- package/dist/registry/python.d.ts +26 -0
- package/dist/registry/python.js +46 -0
- package/dist/registry/search-cli.d.ts +52 -0
- package/dist/registry/search-cli.js +159 -0
- package/dist/schema-version.d.ts +165 -0
- package/dist/schema-version.js +148 -0
- package/dist/serialize.d.ts +64 -0
- package/dist/serialize.js +6398 -0
- package/lib/README.md +112 -0
- package/lib/library-json.samples/index.json +158 -0
- package/lib/library-json.samples/invariant-collections.json +83 -0
- package/lib/library-json.samples/list-envelopes.json +123 -0
- package/lib/library-json.samples/uipath-atlassian-jira/create-issue@1.0.0.json +131 -0
- package/lib/library-json.samples/uipath-atlassian-jira/create-issue@1.0.0.v1def.json +306 -0
- package/lib/library-json.samples/uipath-atlassian-jira/generic/create_issue/create@1.0.0.json +86 -0
- package/lib/library-json.samples/uipath-atlassian-jira/generic/create_issue/create@1.0.0.v1def.json +208 -0
- package/lib/library-json.samples/uipath-atlassian-jira/get-issue@1.0.0.json +2040 -0
- package/lib/library-json.samples/uipath-atlassian-jira/get-issue@1.0.0.v1def.json +195 -0
- package/lib/library-json.samples/uipath-google-vertex/execute-google-vertex-agent@1.0.0.json +169 -0
- package/lib/library-json.samples/uipath-google-vertex/execute-google-vertex-agent@1.0.0.v1def.json +209 -0
- package/lib/library-json.samples/uipath-http-webhook/event-http-webhook@1.0.0.json +63 -0
- package/lib/library-json.samples/uipath-http-webhook/event-http-webhook@1.0.0.v1def.json +262 -0
- package/lib/library-json.samples/uipath-http-webhook/trigger-http-webhook@1.0.0.json +63 -0
- package/lib/library-json.samples/uipath-http-webhook/trigger-http-webhook@1.0.0.v1def.json +213 -0
- package/lib/library-json.samples/uipath-microsoft-azureactivedirectory/list-groups@1.0.0.json +227 -0
- package/lib/library-json.samples/uipath-microsoft-azureactivedirectory/list-groups@1.0.0.v1def.json +373 -0
- package/lib/library-json.samples/uipath-microsoft-onedrive/event-file-created@1.0.0.json +116 -0
- package/lib/library-json.samples/uipath-microsoft-onedrive/event-file-created@1.0.0.v1def.json +369 -0
- package/lib/library-json.samples/uipath-microsoft-onedrive/event-list-item-added@1.0.0.json +56 -0
- package/lib/library-json.samples/uipath-microsoft-onedrive/event-list-item-added@1.0.0.v1def.json +256 -0
- package/lib/library-json.samples/uipath-microsoft-onedrive/trigger-file-created@1.0.0.json +116 -0
- package/lib/library-json.samples/uipath-microsoft-onedrive/trigger-file-created@1.0.0.v1def.json +320 -0
- package/lib/library-json.samples/uipath-microsoft-onedrive/trigger-list-item-added@1.0.0.json +56 -0
- package/lib/library-json.samples/uipath-microsoft-onedrive/trigger-list-item-added@1.0.0.v1def.json +207 -0
- package/lib/library-json.samples/uipath-microsoft-outlook365/event-email-received@1.0.0.json +107 -0
- package/lib/library-json.samples/uipath-microsoft-outlook365/event-email-received@1.0.0.v1def.json +264 -0
- package/lib/library-json.samples/uipath-microsoft-outlook365/send-email@1.0.0.json +142 -0
- package/lib/library-json.samples/uipath-microsoft-outlook365/send-email@1.0.0.v1def.json +306 -0
- package/lib/library-json.samples/uipath-microsoft-outlook365/trigger-email-received@1.0.0.json +107 -0
- package/lib/library-json.samples/uipath-microsoft-outlook365/trigger-email-received@1.0.0.v1def.json +217 -0
- package/lib/library-json.samples/uipath-microsoft-powerautomate/invoke-a-microsoft-power-automate-flow@1.0.0.json +85 -0
- package/lib/library-json.samples/uipath-microsoft-powerautomate/invoke-a-microsoft-power-automate-flow@1.0.0.v1def.json +209 -0
- package/lib/library-json.samples/uipath-salesforce-slack/send-message-to-user@1.0.0.json +755 -0
- package/lib/library-json.samples/uipath-salesforce-slack/send-message-to-user@1.0.0.v1def.json +513 -0
- package/lib/library-json.samples/uipath-uipath-dataservice/query-entity-records@1.0.0.json +122 -0
- package/lib/library-json.samples/uipath-uipath-dataservice/query-entity-records@1.0.0.v1def.json +227 -0
- package/package.json +85 -0
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* check-cli — static-validate an authored flow without emitting.
|
|
4
|
+
*
|
|
5
|
+
* Usage: node --experimental-strip-types check-cli.js <flow.ts | BaseName>
|
|
6
|
+
* Prints diagnostics; exits non-zero if any errors.
|
|
7
|
+
*/
|
|
8
|
+
import { existsSync } from 'node:fs';
|
|
9
|
+
import { join } from 'node:path';
|
|
10
|
+
import { resolveFlowFile, loadBuiltFlow } from './load.js';
|
|
11
|
+
import { check } from './check.js';
|
|
12
|
+
import { Library } from './library.js';
|
|
13
|
+
import { Bindings } from './bindings.js';
|
|
14
|
+
import { connectorInputErrors } from './serialize.js';
|
|
15
|
+
import { runWhenInvokedDirectly } from './cli-run.js';
|
|
16
|
+
import { ensureTypeScriptRuntime } from './node-runtime.js';
|
|
17
|
+
import { resolveLibraryDir } from './registry/cache.js';
|
|
18
|
+
/**
|
|
19
|
+
* Library lookups for the checks whose facts live in the connector corpus:
|
|
20
|
+
* event parameters and measured list envelopes.
|
|
21
|
+
*
|
|
22
|
+
* Deliberately optional. `check` is the fast inner-loop rung and stays a pure
|
|
23
|
+
* function of the built flow — with no library it simply cannot know whether an
|
|
24
|
+
* empty `where` is correct, so it fails open (a warning, not an error). Given a
|
|
25
|
+
* library, `compile` and `check` make the same call with the facts in hand.
|
|
26
|
+
* `--library` mirrors compile-cli's flag and default.
|
|
27
|
+
*/
|
|
28
|
+
function checkOpts(argv) {
|
|
29
|
+
const flag = argv.indexOf('--library');
|
|
30
|
+
const libDir = resolveLibraryDir(flag >= 0 ? argv[flag + 1] : undefined);
|
|
31
|
+
// bindings.json beside the source, exactly as compile-cli finds it — so the
|
|
32
|
+
// own-name refusal compile would raise is reported here first.
|
|
33
|
+
const bindFlag = argv.indexOf('--bindings');
|
|
34
|
+
const bindFile = bindFlag >= 0 ? argv[bindFlag + 1] : (existsSync('bindings.json') ? 'bindings.json' : undefined);
|
|
35
|
+
const bindings = bindFile ? new Bindings(bindFile) : undefined;
|
|
36
|
+
if (!libDir || !existsSync(join(libDir, 'index.json')))
|
|
37
|
+
return bindings ? { bindings } : {};
|
|
38
|
+
// The overlay matters here as much as it does for compile: `resolutions.json`
|
|
39
|
+
// lives in it, and without it every already-resolved lookup would be reported
|
|
40
|
+
// as still owed — telling the author to re-run a `prepare` they already ran.
|
|
41
|
+
const overlayDir = existsSync(join('connectors-local', 'index.json'))
|
|
42
|
+
? 'connectors-local'
|
|
43
|
+
: undefined;
|
|
44
|
+
const library = new Library(libDir, { overlayDir });
|
|
45
|
+
return {
|
|
46
|
+
eventParams: (connector, event, object) => {
|
|
47
|
+
try {
|
|
48
|
+
return library.eventParameterFields(connector, event, object);
|
|
49
|
+
}
|
|
50
|
+
catch {
|
|
51
|
+
// An unresolvable operation is EVENT_UNKNOWN's business (compile reports
|
|
52
|
+
// it against the real library); here it just means "unknown".
|
|
53
|
+
return undefined;
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
eventFilterFields: (connector, event, object) => {
|
|
57
|
+
try {
|
|
58
|
+
return library.eventFilterFields(connector, event, object);
|
|
59
|
+
}
|
|
60
|
+
catch {
|
|
61
|
+
return undefined; // unknown fails open, same as every callback here
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
lookups: (connector, action, version, object) => library.lookupSpecs(connector, action, version, object),
|
|
65
|
+
resolutions: library.lookupResolutions,
|
|
66
|
+
schemaReadiness: (connector, action, version, object) => {
|
|
67
|
+
try {
|
|
68
|
+
return library.schemaReadiness(connector, action, version, object);
|
|
69
|
+
}
|
|
70
|
+
catch {
|
|
71
|
+
// An unreadable entry means "unknown", and unknown fails open — the
|
|
72
|
+
// same rule as every other callback here.
|
|
73
|
+
return undefined;
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
listEnvelope: (connector, operation, version, object) => {
|
|
77
|
+
try {
|
|
78
|
+
return library.resolve(connector, operation, version, object).listEnvelope;
|
|
79
|
+
}
|
|
80
|
+
catch {
|
|
81
|
+
return undefined;
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
// The field contract compile enforces, from the same validator: an operation
|
|
85
|
+
// the library cannot resolve is compile's business (it names the entry).
|
|
86
|
+
connectorInputs: (spec, inputs) => {
|
|
87
|
+
try {
|
|
88
|
+
const rc = library.resolve(spec.key, spec.action, spec.version, spec.object);
|
|
89
|
+
return connectorInputErrors(rc, inputs, library.lookupResolutions ?? {}, library.lookupSpecs(spec.key, spec.action, spec.version, spec.object) ?? {});
|
|
90
|
+
}
|
|
91
|
+
catch {
|
|
92
|
+
return undefined;
|
|
93
|
+
}
|
|
94
|
+
},
|
|
95
|
+
...(bindings ? { bindings } : {}),
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
export async function run(argv) {
|
|
99
|
+
const arg = argv.find((a) => !a.startsWith('--')) ?? argv[0];
|
|
100
|
+
if (!arg || arg === '-h' || arg === '--help') {
|
|
101
|
+
console.error('usage: check [--library <dir>] [--bindings <file>] <flow.ts | BaseName>');
|
|
102
|
+
return 2;
|
|
103
|
+
}
|
|
104
|
+
const file = resolveFlowFile(arg);
|
|
105
|
+
ensureTypeScriptRuntime();
|
|
106
|
+
const built = await loadBuiltFlow(file);
|
|
107
|
+
const diags = check(built, checkOpts(argv));
|
|
108
|
+
if (diags.length === 0) {
|
|
109
|
+
console.log('✓ no issues');
|
|
110
|
+
return 0;
|
|
111
|
+
}
|
|
112
|
+
for (const d of diags)
|
|
113
|
+
console.log(`${d.level === 'error' ? '✗' : '⚠'} [${d.code}] ${d.message}${d.suggestion ? ` (did you mean "${d.suggestion}"?)` : ''}`);
|
|
114
|
+
const errors = diags.filter((d) => d.level === 'error').length;
|
|
115
|
+
console.log(`\n${errors} error(s), ${diags.length - errors} warning(s)`);
|
|
116
|
+
return errors ? 1 : 0;
|
|
117
|
+
}
|
|
118
|
+
runWhenInvokedDirectly(import.meta.url, 'check', run);
|
package/dist/check.d.ts
ADDED
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import { type LookupResolutions, type LookupSpec } from './core/lookups.js';
|
|
2
|
+
import type { SchemaReadiness } from './core/library.js';
|
|
3
|
+
import type { BuiltFlow } from './flow-sdk.js';
|
|
4
|
+
export interface Diagnostic {
|
|
5
|
+
level: 'error' | 'warning';
|
|
6
|
+
code: string;
|
|
7
|
+
message: string;
|
|
8
|
+
step?: string;
|
|
9
|
+
suggestion?: string;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* What a connector operation declares as its EVENT PARAMETERS — the `where` half
|
|
13
|
+
* of a subscription. `known: false` means "no library was supplied", which is a
|
|
14
|
+
* different answer from `known: true, names: []` ("this operation takes none").
|
|
15
|
+
* Conflating the two is what made `EVENT_NO_SCOPE` an error for the HTTP Webhook
|
|
16
|
+
* connector, whose only correct `where` is empty.
|
|
17
|
+
*/
|
|
18
|
+
export interface EventParamFields {
|
|
19
|
+
known: boolean;
|
|
20
|
+
names: string[];
|
|
21
|
+
/**
|
|
22
|
+
* The operation is a GENERIC event (`activityType: GenericTrigger`): its node type
|
|
23
|
+
* covers every object of the connection, so the subscription must name one with
|
|
24
|
+
* `object`. Unknown (no library) reads as `false`, which fails open.
|
|
25
|
+
*/
|
|
26
|
+
generic?: boolean;
|
|
27
|
+
/** The entry's own object — `''` for a generic event, the built-in one for a curated event. */
|
|
28
|
+
object?: string;
|
|
29
|
+
/**
|
|
30
|
+
* Required parameters that SELECT the schema rather than scope the
|
|
31
|
+
* subscription (Jira's `project` / `issuetype`). Their values decide which
|
|
32
|
+
* filter and output fields exist, and no CLI surface accepts them — so when
|
|
33
|
+
* this is non-empty the known filter vocabulary is a BASELINE, and a leaf
|
|
34
|
+
* outside it may still be legal.
|
|
35
|
+
*/
|
|
36
|
+
selectors?: string[];
|
|
37
|
+
/**
|
|
38
|
+
* The named object has no prepared variant on a connector whose objects come
|
|
39
|
+
* from the connection — the generic template answered instead.
|
|
40
|
+
*/
|
|
41
|
+
objectUnprepared?: boolean;
|
|
42
|
+
/**
|
|
43
|
+
* The connector discovers custom fields per connection and nothing has
|
|
44
|
+
* prepared this event, so the known vocabulary is a strict subset of the
|
|
45
|
+
* tenant's BY DESIGN.
|
|
46
|
+
*/
|
|
47
|
+
customFieldsUnprepared?: boolean;
|
|
48
|
+
/**
|
|
49
|
+
* The filter vocabulary is a subset that NO prepare can complete.
|
|
50
|
+
*
|
|
51
|
+
* An activity closes this gap: `resources describe` takes `-f name=value`
|
|
52
|
+
* and `--action`, so supplying the parent values runs the connector's
|
|
53
|
+
* ObjectAction (Jira `GenerateSchema`, Salesforce `GenerateQuerySchema`) and
|
|
54
|
+
* the custom fields come back. `uip is triggers describe` has neither flag,
|
|
55
|
+
* so for an EVENT on a custom-field-discovering connector there is no call
|
|
56
|
+
* that reaches the parent-scoped fields — the designer grows Jira's filter
|
|
57
|
+
* list once a project and issue type are picked, and nothing in this CLI
|
|
58
|
+
* can. Distinct from `customFieldsUnprepared`, which preparing DOES fix.
|
|
59
|
+
*/
|
|
60
|
+
filtersPartial?: boolean;
|
|
61
|
+
}
|
|
62
|
+
export interface ListEnvelopeFields {
|
|
63
|
+
envelope: string | null;
|
|
64
|
+
source: string;
|
|
65
|
+
tier: string;
|
|
66
|
+
}
|
|
67
|
+
export interface CheckOpts {
|
|
68
|
+
/**
|
|
69
|
+
* Resolve a connector event's declared event parameters, by connector key and
|
|
70
|
+
* event name. Supplied by `check-cli` when `$FLOW_SDK_LIBRARY_JSON` points at a
|
|
71
|
+
* library; omitted (and so unknown) otherwise.
|
|
72
|
+
*
|
|
73
|
+
* A function rather than a `Library`, on purpose: `check` stays a pure function
|
|
74
|
+
* of the built flow plus this one lookup, so it needs no library at all to run
|
|
75
|
+
* and cannot be slowed down by one.
|
|
76
|
+
*/
|
|
77
|
+
eventParams?: (connector: string, event: string, object?: string) => EventParamFields | undefined;
|
|
78
|
+
/**
|
|
79
|
+
* Resolve a connector event's FILTERABLE field names — the vocabulary a
|
|
80
|
+
* `filters` leaf may name — sourced the same way as `eventParams`. A GENERIC
|
|
81
|
+
* event's vocabulary is per object, so the subscription's `object` rides
|
|
82
|
+
* along. `undefined` means unknown and fails open; a known-EMPTY list also
|
|
83
|
+
* fails open, because connectors that declare no filter fields exist and
|
|
84
|
+
* refusing every leaf on their events would turn a coverage gap into a
|
|
85
|
+
* false error.
|
|
86
|
+
*/
|
|
87
|
+
eventFilterFields?: (connector: string, event: string, object?: string) => string[] | undefined;
|
|
88
|
+
/**
|
|
89
|
+
* Resolve one connector operation's generated lookup table, keyed by field.
|
|
90
|
+
*
|
|
91
|
+
* Supplied by the CLIs when a library is on hand, omitted otherwise — so a
|
|
92
|
+
* `check` with no library simply does not fire the lookup rules rather than
|
|
93
|
+
* guessing at them.
|
|
94
|
+
*/
|
|
95
|
+
lookups?: (connector: string, action: string, version?: string, object?: string) => Readonly<Record<string, LookupSpec>> | undefined;
|
|
96
|
+
/** Everything `registry prepare --resolve` has recorded in the local overlay. */
|
|
97
|
+
resolutions?: LookupResolutions;
|
|
98
|
+
/**
|
|
99
|
+
* Whether a connector step's schema is materialized locally — the fact behind
|
|
100
|
+
* the OBJECT_UNPREPARED and CUSTOM_FIELDS_UNPREPARED warnings. Supplied by the
|
|
101
|
+
* CLIs when a library is on hand, omitted otherwise, same as `lookups`: with
|
|
102
|
+
* no library, `check` cannot know what is owed and says nothing.
|
|
103
|
+
*/
|
|
104
|
+
schemaReadiness?: (connector: string, action: string, version?: string, object?: string) => SchemaReadiness | undefined;
|
|
105
|
+
/** Resolve the measured collection envelope for one connector operation. */
|
|
106
|
+
listEnvelope?: (connector: string, operation: string, version?: string, object?: string) => ListEnvelopeFields | undefined;
|
|
107
|
+
/**
|
|
108
|
+
* What `compile` would refuse one connector step's inputs with — a missing
|
|
109
|
+
* required field, an unknown or mistyped input, a container part given a value —
|
|
110
|
+
* or `undefined` when it would accept them. Supplied by the CLIs from the same
|
|
111
|
+
* library-backed validator `serialize` runs (`connectorInputErrors`), so the
|
|
112
|
+
* inner loop and the emit rung cannot disagree; omitted (no library) → not checked.
|
|
113
|
+
* Before this hook, `check` printed `0 error(s)` for a source `compile` then
|
|
114
|
+
* refused twice in a row (teams-decision, 2026-09-01, turns 22–25).
|
|
115
|
+
*/
|
|
116
|
+
connectorInputs?: (spec: {
|
|
117
|
+
key: string;
|
|
118
|
+
action: string;
|
|
119
|
+
version?: string;
|
|
120
|
+
object?: string;
|
|
121
|
+
}, inputs: Record<string, unknown>) => string | undefined;
|
|
122
|
+
/**
|
|
123
|
+
* The project's `bindings.json`, when there is one — enough of it to detect an
|
|
124
|
+
* entry that answers with its own name, which `compile` refuses (BINDING_SELF_NAME).
|
|
125
|
+
*/
|
|
126
|
+
bindings?: {
|
|
127
|
+
resolve(name?: string): string | undefined;
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
export declare function check(built: BuiltFlow, opts?: CheckOpts): Diagnostic[];
|
|
131
|
+
/**
|
|
132
|
+
* The ISO-8601 repeating-interval pattern, copied VERBATIM from the
|
|
133
|
+
* `core.trigger.scheduled@1.1` definition (`inputDefinition.then.properties.
|
|
134
|
+
* timerValue.pattern`). `core-definitions.test.ts` pins the two as equal, so if
|
|
135
|
+
* the definition's pattern ever changes this constant fails a test instead of
|
|
136
|
+
* silently drifting.
|
|
137
|
+
*/
|
|
138
|
+
export declare const SCHEDULE_PATTERN: string;
|
|
139
|
+
/**
|
|
140
|
+
* The Quartz-cron alternative of the scheduled trigger's **1.2** definition
|
|
141
|
+
* pattern (`core-definitions.json`, `core.trigger.scheduled@1.2` — transcribed
|
|
142
|
+
* from `registry get` 2026-08-18; `core-definitions.test.ts` pins the two as
|
|
143
|
+
* consistent): 6–7 whitespace-separated fields of digits/ranges/steps, month
|
|
144
|
+
* and day names, and the Quartz specials `L W LW ? * #`.
|
|
145
|
+
*/
|
|
146
|
+
export declare const SCHEDULE_CRON_PATTERN: string;
|