@uipath/integrationservice-sdk 1.205.0-preview.281 → 1.206.0-preview.282

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.
@@ -0,0 +1,5 @@
1
+ export * from "./dap/activity-bindings.js";
2
+ export * from "./dap/activity-configuration-version.js";
3
+ export * from "./dap/bindings-v2.js";
4
+ export { EXTERNAL_SERVICE_TYPES, externalServiceType, } from "./dap/external-execution.js";
5
+ export { IMPLICIT_CONNECTION } from "./dap/managed-http.js";
@@ -22,7 +22,10 @@ export declare function getValidatedAuthContext(options?: CreateApiClientOptions
22
22
  }>;
23
23
  export declare function createConnectionsConfig(options?: CreateApiClientOptions): Promise<ConnectionsConfiguration>;
24
24
  export declare function createElementsConfig(options?: CreateApiClientOptions): Promise<ElementsConfiguration>;
25
- export declare function createApiClient<T>(ApiClass: new (config: ConnectionsConfiguration | ElementsConfiguration) => T, options?: CreateApiClientOptions): Promise<T>;
25
+ type ConnectionsApiConstructor<T> = new (config: ConnectionsConfiguration) => T;
26
+ type ElementsApiConstructor<T> = new (config: ElementsConfiguration) => T;
27
+ export declare function createApiClient<T>(ApiClass: ConnectionsApiConstructor<T>, options?: CreateApiClientOptions): Promise<T>;
28
+ export declare function createApiClient<T>(ApiClass: ElementsApiConstructor<T>, options?: CreateApiClientOptions): Promise<T>;
26
29
  export declare function executeOperation(options: CreateApiClientOptions | undefined, connectionId: string, objectName: string, httpMethod?: "GET" | "POST" | "PUT" | "PATCH" | "DELETE", body?: unknown, queryParams?: Record<string, string>, requestOptions?: ExecuteOperationRequestOptions): Promise<ExecuteOperationResult>;
27
30
  /**
28
31
  * Fetch object metadata as JSON Schema (no connection — base/standard fields only).
@@ -295,3 +298,4 @@ export declare function listConnectors(options: CreateApiClientOptions | undefin
295
298
  items: ConnectorSummary[];
296
299
  truncated: boolean;
297
300
  }>;
301
+ export {};
@@ -1,4 +1,11 @@
1
+ import { ConnectionsApi } from "../generated/connections/src/apis/ConnectionsApi.js";
2
+ import type { GetConnectionResponse } from "../generated/connections/src/models/GetConnectionResponse.js";
1
3
  import { type CreateApiClientOptions } from "./client-factory.js";
4
+ /** Which connections a listing covers. */
5
+ export interface ConnectionListScope {
6
+ allFolders?: boolean;
7
+ folderKey?: string;
8
+ }
2
9
  /**
3
10
  * A connection is addressed two ways: its connection id (UUID) and the
4
11
  * element instance id (number) the elements_ service keys it on. Both sit on
@@ -7,10 +14,20 @@ import { type CreateApiClientOptions } from "./client-factory.js";
7
14
  export interface ConnectionInstanceIds {
8
15
  connectionId: string;
9
16
  elementInstanceId: number;
17
+ /** The connection's connector key, when a lookup read the connection. */
18
+ connectorKey?: string;
10
19
  }
20
+ export declare function isConnectionNotFoundError(error: unknown): boolean;
21
+ /**
22
+ * Fetch every connection in the scope. A single unpaged call silently
23
+ * truncates large tenants, which would make delete report a false "not found"
24
+ * and export ship an incomplete set.
25
+ */
26
+ export declare function listAllConnections(api: ConnectionsApi, scope?: ConnectionListScope): Promise<GetConnectionResponse[]>;
11
27
  /**
12
- * Fill in whichever of the two connection ids the caller left out. When both
13
- * are given they are returned as-is, with no request.
28
+ * Fill in whichever of the two connection ids the caller left out, and report
29
+ * the connection's connector key. When both ids are given they are returned
30
+ * as-is, with no request — so nothing checks that they belong together.
14
31
  */
15
32
  export declare function resolveConnectionInstanceIds(options: CreateApiClientOptions | undefined, ids: {
16
33
  connectionId?: string;
@@ -0,0 +1,41 @@
1
+ import { type CreateApiClientOptions } from "./client-factory.js";
2
+ /** A connection a name lookup found. */
3
+ export interface ConnectionMatch {
4
+ id: string;
5
+ name: string;
6
+ /** The folder's path, or its name when the service sends no path. */
7
+ folder?: string;
8
+ folderKey?: string;
9
+ /** `Enabled`, `Disabled`, `Expired` or `Failed`. */
10
+ state: string;
11
+ }
12
+ /**
13
+ * The connections of `connectorKey` named `name`, ignoring case, among those
14
+ * the caller can see in any folder. A name is unique only within a folder, so
15
+ * the caller decides what several matches mean.
16
+ *
17
+ * Pages until a short page, or a page that adds no connection, in case the
18
+ * service ignores the paging.
19
+ */
20
+ export declare function findConnectionsByName(connectorKey: string, name: string, options?: CreateApiClientOptions): Promise<ConnectionMatch[]>;
21
+ /** Where a connection's token goes, and where the connection is stored. */
22
+ export interface ConnectionTarget {
23
+ id: string;
24
+ /**
25
+ * The URL the connection authenticates against: its `base.url`
26
+ * configuration, or `Service-URL` for a connector that names it so.
27
+ * Undefined when the connection has neither.
28
+ */
29
+ baseUrl?: string;
30
+ folderKey?: string;
31
+ /** The folder's path, or its name when the service sends no path. */
32
+ folder?: string;
33
+ /** Whether the folder is a personal workspace. */
34
+ personalWorkspace: boolean;
35
+ }
36
+ /**
37
+ * Read one connection with its configuration, in any folder the caller can
38
+ * see: the base URL its token is for, and its folder. Throws the runtime's
39
+ * error for a connection the caller cannot see.
40
+ */
41
+ export declare function getConnectionTarget(connectionId: string, options?: CreateApiClientOptions): Promise<ConnectionTarget>;
@@ -0,0 +1,3 @@
1
+ import "./user-agent.js";
2
+ export type { CreateApiClientOptions } from "./client-factory.js";
3
+ export { type ConnectionMatch, type ConnectionTarget, findConnectionsByName, getConnectionTarget, } from "./connection-resolver.js";
@@ -0,0 +1,12 @@
1
+ /**
2
+ * The context entry that tells the designers a connector node was configured
3
+ * in the V2 panel. Without it a Case task, rule or trigger opens in the V1
4
+ * panel unless the case itself carries the V2 marker, which the Case Designer
5
+ * stops stamping once a case has configured activities.
6
+ */
7
+ export declare const ACTIVITY_CONFIGURATION_VERSION = "activityConfigurationVersion";
8
+ export declare const v2ConfigurationVersionEntry: () => {
9
+ name: string;
10
+ type: "string";
11
+ value: string;
12
+ };
@@ -0,0 +1,107 @@
1
+ /**
2
+ * The `bindings_v2.json` rows an Integration Service node packages into, shared
3
+ * by every host that writes them (Flow, Case, BPMN). Pure and import-free, so a
4
+ * browser-targeted bundle can take it without the rest of the SDK.
5
+ */
6
+ /** `metadata.BindingsVersion` on every resource. */
7
+ export declare const BINDINGS_VERSION = "2.2";
8
+ /** Studio Web's guard on a JSON-looking string it stores in node metadata, stripped when it packages the value. */
9
+ export declare const JSON_STRING_PREFIX = "=jsonString:";
10
+ /** `json` guarded the way a node's `configuration` stores it. */
11
+ export declare const guardJsonString: (json: string) => string;
12
+ export declare const stripJsonStringGuard: (value: string) => string;
13
+ /** A copy of `value` with `map` applied to every string inside it, at any depth. */
14
+ export declare function mapStringsDeep<T>(value: T, map: (text: string) => string): T;
15
+ /** `value` with the guard stripped from every string inside it. */
16
+ export declare const restoreJsonStringsDeep: <T>(value: T) => T;
17
+ /** Placed in `=bindings.{{CONN_BINDING_ID}}` for the consumer to replace with its connection binding id. */
18
+ export declare const CONN_BINDING_ID_PLACEHOLDER = "{{CONN_BINDING_ID}}";
19
+ /** Placed in `=bindings.{{FOLDER_BINDING_ID}}` for the connection's folder binding id. */
20
+ export declare const FOLDER_BINDING_ID_PLACEHOLDER = "{{FOLDER_BINDING_ID}}";
21
+ /** How every resource picker placeholder starts, before the field name. */
22
+ export declare const RESOURCE_BINDING_ID_PREFIX = "{{RESOURCE_BINDING_ID:";
23
+ /** Placed in a resolved picker's input as `=bindings.{{RESOURCE_BINDING_ID:<field>}}`. */
24
+ export declare const resourceBindingIdPlaceholder: (field: string) => string;
25
+ /** Any of the placeholders above. */
26
+ export declare const BINDING_ID_PLACEHOLDER_PATTERN: RegExp;
27
+ export type BindingsV2Value = {
28
+ defaultValue: string;
29
+ isExpression: boolean;
30
+ };
31
+ export type BindingsV2Row = {
32
+ resource: string;
33
+ key: string;
34
+ id?: string;
35
+ value: Record<string, BindingsV2Value>;
36
+ metadata?: Record<string, string>;
37
+ };
38
+ /** The EventTrigger key: the connection plus the node, so two triggers on one connection stay apart. */
39
+ export declare const eventTriggerResourceKey: (connectionKey: string, nodeId: string) => string;
40
+ export interface EventTriggerResourceSpec {
41
+ connectionKey: string;
42
+ nodeId: string;
43
+ /** Left out of `value` when absent, rather than invented. */
44
+ entryPointId?: string;
45
+ connector?: string;
46
+ activityName?: string;
47
+ objectName?: string;
48
+ operation?: string;
49
+ filterExpression?: string;
50
+ }
51
+ /**
52
+ * A connector trigger's `EventTrigger` resource. Without it a deployed process
53
+ * never gets its Integration Service trigger.
54
+ */
55
+ export declare function buildEventTriggerResource(spec: EventTriggerResourceSpec): BindingsV2Row;
56
+ export interface StoredBindingOwner {
57
+ nodeId: string;
58
+ activityName?: string;
59
+ /** `EventTrigger.<key>` for a trigger, `Connection.<key>` for any other node. */
60
+ parentResourceKey: string;
61
+ /**
62
+ * Re-key a Property bag keyed by the bare operation under its parent, as
63
+ * Studio Web packages it, so two nodes on one operation stay apart.
64
+ */
65
+ operation?: string;
66
+ }
67
+ /**
68
+ * One row of a node's stored `metadata.bindings` as it is packaged: guard
69
+ * stripped, named for the node, and a Property bag tied to the node and its
70
+ * parent.
71
+ */
72
+ export declare function packageStoredBinding<T extends Record<string, unknown>>(row: T, owner: StoredBindingOwner): T;
73
+ export interface ParameterPropertySpec {
74
+ key: string;
75
+ nodeId: string;
76
+ parameters: Record<string, unknown>;
77
+ activityName?: string;
78
+ objectName?: string;
79
+ parentResourceKey: string;
80
+ }
81
+ /** A trigger's Property bag built from its event parameters, for a node that stored none. */
82
+ export declare function buildParameterPropertyResource(spec: ParameterPropertySpec): BindingsV2Row;
83
+ export interface RootResourceBinding {
84
+ id: string;
85
+ name?: string;
86
+ type?: string;
87
+ resource?: string;
88
+ resourceKey?: string;
89
+ propertyAttribute?: string;
90
+ default?: string;
91
+ }
92
+ /**
93
+ * The root binding for one resolved picker row, matched on resource, key and
94
+ * attribute so a repeated configure refreshes the row instead of adding one.
95
+ * A matched row with no id gets one, since callers reference it by id.
96
+ * The caller inserts a `created` binding where its document keeps them.
97
+ */
98
+ export declare function upsertResourceBinding<T extends RootResourceBinding>(bindings: readonly T[], row: {
99
+ resource: string;
100
+ resourceKey: string;
101
+ propertyAttribute: string;
102
+ name: string;
103
+ default: string | undefined;
104
+ }, mintId: () => string): {
105
+ binding: T;
106
+ created: boolean;
107
+ };
@@ -1,4 +1,5 @@
1
1
  import type { DesignTimeFilterTree, IDesignTimeActivityClient } from "@uipath/integration-service-design-time";
2
+ import { MANAGED_HTTP_CONNECTOR_KEY } from "./managed-http.js";
2
3
  import { type ResolvedResourceField } from "./resource-field-resolver.js";
3
4
  import type { ConnectorMethodInfo, CustomFieldsRequestDetails } from "./types.js";
4
5
  /**
@@ -6,7 +7,7 @@ import type { ConnectorMethodInfo, CustomFieldsRequestDetails } from "./types.js
6
7
  * The managed HTTP node proxies requests through this connector, using the
7
8
  * target connector's IS connection for authentication.
8
9
  */
9
- export declare const MANAGED_HTTP_CONNECTOR_KEY = "uipath-uipath-http";
10
+ export { MANAGED_HTTP_CONNECTOR_KEY };
10
11
  export declare const MANAGED_HTTP_CONNECTOR_VERSION = "1.4.50";
11
12
  /**
12
13
  * Build the OFFLINE (no-fetch) essential-only configuration blob for an activity connector node from
@@ -0,0 +1,35 @@
1
+ export interface ExternalExecution {
2
+ /** `sync`, `async` or `hybrid`. */
3
+ executionType: string;
4
+ /** The event an `async` / `hybrid` agent or automation answers with. */
5
+ eventType?: string;
6
+ eventMode?: string;
7
+ }
8
+ /**
9
+ * An external agent or automation object (one whose IS metadata carries an
10
+ * `executionType`), read the way the design-time package reads it: an `async`
11
+ * or `hybrid` one answers through its first event mode's first event type.
12
+ */
13
+ export declare function externalExecutionOf(metadata: unknown): ExternalExecution | undefined;
14
+ /**
15
+ * Why a node built from `external` may never finish, or undefined. Studio Web
16
+ * saves such a node without a word, so the CLI warns rather than refuses.
17
+ */
18
+ export declare function externalExecutionWarning(external: ExternalExecution, target: string): string | undefined;
19
+ /** The node types an external agent or automation is saved as, by execution. */
20
+ export declare const EXTERNAL_SERVICE_TYPES: {
21
+ readonly agent: {
22
+ readonly sync: "Intsvc.SyncAgentExecution";
23
+ readonly async: "Intsvc.AsyncAgentExecution";
24
+ };
25
+ readonly workflow: {
26
+ readonly sync: "Intsvc.SyncWorkflowExecution";
27
+ readonly async: "Intsvc.AsyncWorkflowExecution";
28
+ };
29
+ };
30
+ /**
31
+ * The node type an external agent or automation is saved as for its execution
32
+ * type, as Studio Web's `determineActualIntsvcType` remaps it (`hybrid` runs as
33
+ * `async`). An execution type it leaves alone gives `undefined`.
34
+ */
35
+ export declare function externalServiceType(kind: "agent" | "workflow", executionType: string | undefined): string | undefined;
@@ -1,8 +1,10 @@
1
1
  export type { DesignTimeBindingResource, DesignTimeResourceField, DesignTimeResourceSelection, DesignTimeSolutionResourceConfiguration, SolutionResourceConfigurationsProvider, } from "@uipath/integration-service-design-time";
2
2
  export { planResourceBindings, type ResourceBindingPlan, type ResourceBindingRow, storedActivityBindings, } from "./activity-bindings.js";
3
3
  export { applySavedFilterTree, assertActivityMetadataResolved, buildActivityEssentialConfiguration, buildManagedHttpEssentialConfiguration, type ConfigureActivityClientOptions, type ConfiguredActivityClient, configureActivityClient, createConfiguredActivityClient, MANAGED_HTTP_CONNECTOR_KEY, MANAGED_HTTP_CONNECTOR_VERSION, } from "./essential-config.js";
4
+ export { type ExternalExecution, externalExecutionOf, externalExecutionWarning, } from "./external-execution.js";
4
5
  export * from "./filter-builder/index.js";
5
6
  export { buildInputMetadata, extractMultipartParameters, inlineMultipartFileValues, isListOperation, resolveMultipartOperationMetadata, } from "./input-metadata.js";
7
+ export { buildManagedHttpBodyParameters, IMPLICIT_CONNECTION, MANAGED_HTTP_ACTIVITY_TYPE_ID, MANAGED_HTTP_ENDPOINT, MANAGED_HTTP_METHODS, MANAGED_HTTP_OBJECT_NAME, MANAGED_HTTP_TELEMETRY, type ManagedHttpConnectorDetail, type ManagedHttpDetail, type ManagedHttpManualDetail, managedHttpDetailErrors, } from "./managed-http.js";
6
8
  export { type ResolvedResourceField, ResourceFieldResolutionError, resolveResourceFieldValues, resourceFolderKeyFieldName, } from "./resource-field-resolver.js";
7
9
  export { createSolutionResourceConfigurationsProvider, type SolutionResourceEngine, } from "./solution-resource-configurations.js";
8
10
  export type { ConnectorMethodInfo, CustomFieldsRequestDetails, FieldDesign, FieldReference, InputMetadata, ISField, ISFieldMethod, ISMetadata, ISMetadataParam, MultipartFileField, MultipartOperationMetadata, MultipartParam, TriggerField, TriggerFieldEvent, TriggerObjectMetadata, } from "./types.js";
@@ -0,0 +1,47 @@
1
+ /**
2
+ * The managed HTTP request node (`Intsvc.UnifiedHttpRequest`, connector
3
+ * `uipath-uipath-http`): what a caller authors and the request body Studio Web
4
+ * saves for it, shared by every host that builds one (Flow, BPMN).
5
+ */
6
+ export declare const MANAGED_HTTP_CONNECTOR_KEY = "uipath-uipath-http";
7
+ export declare const MANAGED_HTTP_OBJECT_NAME = "http-request";
8
+ /** Studio's HTTP Request activity type, the same on every tenant. */
9
+ export declare const MANAGED_HTTP_ACTIVITY_TYPE_ID = "5c4cc855-b42a-37e6-b910-de8588998fce";
10
+ export declare const MANAGED_HTTP_ENDPOINT = "/http-request";
11
+ /** The connection a manual-mode request names, since it authenticates itself. */
12
+ export declare const IMPLICIT_CONNECTION = "ImplicitConnection";
13
+ export declare const MANAGED_HTTP_METHODS: ReadonlySet<string>;
14
+ export interface ManagedHttpConnectorDetail {
15
+ authentication: "connector";
16
+ method: string;
17
+ connectionId: string;
18
+ folderKey: string;
19
+ targetConnector: string;
20
+ /** The endpoint on the target connector, e.g. "/conversations.replies"; fills both `path` and `url`. */
21
+ url?: string;
22
+ headers?: Record<string, unknown>;
23
+ query?: Record<string, unknown>;
24
+ body?: unknown;
25
+ }
26
+ export interface ManagedHttpManualDetail {
27
+ authentication: "manual";
28
+ method: string;
29
+ url: string;
30
+ headers?: Record<string, unknown>;
31
+ query?: Record<string, unknown>;
32
+ body?: unknown;
33
+ }
34
+ export type ManagedHttpDetail = ManagedHttpConnectorDetail | ManagedHttpManualDetail;
35
+ /** Everything wrong with `config` as a managed HTTP detail; empty when it is one. */
36
+ export declare function managedHttpDetailErrors(config: Record<string, unknown>): string[];
37
+ /** The node's `body` input: the request the HTTP connector sends, as Studio Web saves it. */
38
+ export declare function buildManagedHttpBodyParameters(detail: ManagedHttpDetail): Record<string, unknown>;
39
+ /** `metadata.telemetryData` Studio Web writes for the node. */
40
+ export declare const MANAGED_HTTP_TELEMETRY: {
41
+ readonly connectorKey: "uipath-uipath-http";
42
+ readonly connectorName: "HTTP";
43
+ readonly operationType: "create";
44
+ readonly objectName: "http-request";
45
+ readonly objectDisplayName: "HTTP Request";
46
+ readonly primaryKeyName: "";
47
+ };
@@ -10,7 +10,11 @@ export declare function resourceFolderKeyFieldName(fieldName: string): string;
10
10
  /** A resource-picker value the caller already resolved, as opposed to a plain parameter value. */
11
11
  export declare function isResourceSelection(value: unknown): value is DesignTimeResourceSelection;
12
12
  export declare class ResourceFieldResolutionError extends Error {
13
- constructor(message: string);
13
+ /** The authored value is what's wrong (several matches, a list, a non-string), not the tenant or solution. */
14
+ readonly fromInput: boolean;
15
+ constructor(message: string,
16
+ /** The authored value is what's wrong (several matches, a list, a non-string), not the tenant or solution. */
17
+ fromInput?: boolean);
14
18
  }
15
19
  /**
16
20
  * Replaces each picker field's authored name in `fieldValues` with the selection the design-time client
@@ -1,14 +1,16 @@
1
1
  import "./user-agent.js";
2
- export type { DesignTimeFilterTree } from "@uipath/integration-service-design-time";
2
+ export type { DesignTimeFilterFields, DesignTimeFilterTree, } from "@uipath/integration-service-design-time";
3
3
  export * from "../generated/connections/src/index.js";
4
+ export { type ElementMetadata, ElementMetadataFromJSON, ElementMetadataFromJSONTyped, ElementMetadataToJSON, ElementMetadataToJSONTyped, instanceOfElementMetadata, instanceOfStandardResourceFieldAction, instanceOfStandardResourceFieldActionRules, instanceOfStandardResourceFieldDesign, instanceOfStandardResourceFieldEnum, instanceOfStandardResourceFieldEventMetadata, instanceOfStandardResourceFieldMethod, instanceOfStandardResourceFieldMethodDesign, instanceOfStandardResourceFieldReference, instanceOfStandardResourceHydration, instanceOfStandardResourceMetadataMethodParameter, instanceOfTemplateProperties, type StandardResourceFieldAction, StandardResourceFieldActionFromJSON, StandardResourceFieldActionFromJSONTyped, type StandardResourceFieldActionRules, StandardResourceFieldActionRulesFromJSON, StandardResourceFieldActionRulesFromJSONTyped, StandardResourceFieldActionRulesToJSON, StandardResourceFieldActionRulesToJSONTyped, StandardResourceFieldActionToJSON, StandardResourceFieldActionToJSONTyped, type StandardResourceFieldDesign, StandardResourceFieldDesignFromJSON, StandardResourceFieldDesignFromJSONTyped, StandardResourceFieldDesignToJSON, StandardResourceFieldDesignToJSONTyped, type StandardResourceFieldEnum, StandardResourceFieldEnumFromJSON, StandardResourceFieldEnumFromJSONTyped, StandardResourceFieldEnumToJSON, StandardResourceFieldEnumToJSONTyped, type StandardResourceFieldEventMetadata, StandardResourceFieldEventMetadataFromJSON, StandardResourceFieldEventMetadataFromJSONTyped, StandardResourceFieldEventMetadataToJSON, StandardResourceFieldEventMetadataToJSONTyped, type StandardResourceFieldMethod, type StandardResourceFieldMethodDesign, StandardResourceFieldMethodDesignFromJSON, StandardResourceFieldMethodDesignFromJSONTyped, StandardResourceFieldMethodDesignToJSON, StandardResourceFieldMethodDesignToJSONTyped, StandardResourceFieldMethodFromJSON, StandardResourceFieldMethodFromJSONTyped, StandardResourceFieldMethodToJSON, StandardResourceFieldMethodToJSONTyped, type StandardResourceFieldReference, StandardResourceFieldReferenceFromJSON, StandardResourceFieldReferenceFromJSONTyped, StandardResourceFieldReferenceToJSON, StandardResourceFieldReferenceToJSONTyped, type StandardResourceHydration, StandardResourceHydrationFromJSON, StandardResourceHydrationFromJSONTyped, StandardResourceHydrationToJSON, StandardResourceHydrationToJSONTyped, type StandardResourceMetadataMethodParameter, StandardResourceMetadataMethodParameterFromJSON, StandardResourceMetadataMethodParameterFromJSONTyped, StandardResourceMetadataMethodParameterToJSON, StandardResourceMetadataMethodParameterToJSONTyped, type TemplateProperties, TemplatePropertiesFromJSON, TemplatePropertiesFromJSONTyped, TemplatePropertiesToJSON, TemplatePropertiesToJSONTyped, } from "../generated/connections/src/models/index.js";
4
5
  export { ElementsApi } from "../generated/elements/src/apis/index.js";
5
6
  export * from "../generated/elements/src/models/index.js";
6
7
  export { Configuration as ElementsConfiguration } from "../generated/elements/src/runtime.js";
7
8
  export { ACTIVITY_VERSION_V4, type ConnectorSummary, type CreateApiClientOptions, createApiClient, createConnectionsConfig, createDesignConnector, createElementsConfig, type DesignConnectorRef, type EventOperationObject, type ExecuteOperationRequestOptions, type ExecuteOperationResult, executeOperation, exportConnectorZip, findDesignConnectorByKey, folderOverride, getConnectorActivityMetadataV4, getConnectorById, getEventObjectMetadataAsSchema, getEventOperationObjects, getHttpRequestPreview, getInstanceEventObjectMetadataAsSchema, getInstanceObjectMetadataAsSchema, getObjectMetadataAsSchema, getPublishStatus, getValidatedAuthContext, getWebhookConfig, type HttpRequestPreviewResult, type ImportedConnector, type InstanceDesignActionResult, importConnectorZip, isV4ActivityConfiguration, listConnectors, type PersistedConnector, type PublishConnectorArgs, type PublishJobResult, type PublishStatusResult, publishConnector, runInstanceDesignAction, SUPPORTED_ACTIVITY_VERSIONS, updateDesignConnector, type WebhookConfigResult, } from "./client-factory.js";
8
- export { type ConnectionInstanceIds, resolveConnectionInstanceIds, } from "./connection-lookup.js";
9
+ export { type ConnectionInstanceIds, type ConnectionListScope, isConnectionNotFoundError, listAllConnections, resolveConnectionInstanceIds, } from "./connection-lookup.js";
10
+ export { type ConnectionMatch, findConnectionsByName, } from "./connection-resolver.js";
9
11
  export { normalizeConnectionStatus } from "./connection-state.js";
10
12
  export * from "./dap/index.js";
11
- export { type ApiAction, apiActionRequirements, applyDesignActionRemap, findApiAction, matchApiAction, type RequestPicker, type ResolvedSolutionResource, resourcePickersRequestNeeds, runDesignAction, } from "./metadata/design-actions.js";
13
+ export { type ApiAction, apiActionRequirements, applyDesignActionRemap, ConflictingDesignActionsError, findApiAction, matchApiAction, type RequestPicker, type ResolvedSolutionResource, resourcePickersRequestNeeds, runDesignAction, } from "./metadata/design-actions.js";
12
14
  export { buildResourceCompactSummary, buildTriggerCompactSummary, CRUD_OPERATIONS, fetchRawMetadata, fetchTriggerMetadata, fetchTriggerObjects, normalizeObjectsList, } from "./metadata/resource-metadata.js";
13
15
  export { applyTriggerDesignActionRemap, findTriggerDesignAction, runTriggerDesignAction, type TriggerEventTarget, triggerEventParameters, } from "./metadata/trigger-design-actions.js";
14
16
  export { decodeElementsNextPageToken, ELEMENTS_NEXT_PAGE_DONE, type ElementsNextPage, hasMoreElementsPages, } from "./pagination.js";
@@ -43,16 +43,70 @@ export declare function apiActionRequirements(metadata: Record<string, unknown>,
43
43
  * fallback regardless of method.
44
44
  * @param fieldValues The field values supplied by the user, by field name
45
45
  * (e.g. `{ "fields.project.key": "ENGCE" }`). An empty value is a cleared
46
- * field, so it satisfies only a rule that asks for one (`isCleared`).
47
- * @param actionName Optional explicit action name to disambiguate when more than
48
- * one action matches.
46
+ * field, so it satisfies only a rule that asks for one (`isCleared`). Keys
47
+ * are in the order the user supplied them, which decides the action when
48
+ * several match ({@link matchApiAction}).
49
+ * @param actionName Optional explicit action name, which picks one action
50
+ * when the values satisfy several.
51
+ * @throws ConflictingDesignActionsError when the deciding field has more than
52
+ * one satisfied action and no `actionName` picks one.
49
53
  */
50
54
  export declare function findApiAction(metadata: Record<string, unknown>, httpMethod: string, fieldValues: Record<string, string>, actionName?: string): ApiAction | null;
55
+ /**
56
+ * The inputs Studio Web renders as a button: a field whose design override
57
+ * for the operation, or else its own design, says `component: "Button"`
58
+ * (`FieldExtensions` + `FieldDesignExtensions.override`), and a parameter
59
+ * whose design does. `designOverrides` picks a field's override.
60
+ */
61
+ export declare function buttonInputNames(fields: unknown, parameters: unknown, designOverrides: (field: DesignField) => unknown): Set<string>;
62
+ /**
63
+ * The supplied values satisfy more than one design action keyed on the same
64
+ * field. Studio Web refuses this too: `ConnectorActionsService
65
+ * .getCustomFieldsObjectAction` throws `ConflictingObjectActionsFound` rather
66
+ * than pick one.
67
+ */
68
+ export declare class ConflictingDesignActionsError extends Error {
69
+ readonly actionNames: string[];
70
+ readonly fieldName: string;
71
+ readonly requirements: Array<{
72
+ name: string;
73
+ refFieldNames: string[];
74
+ }>;
75
+ constructor(actionNames: string[], fieldName: string, requirements?: Array<{
76
+ name: string;
77
+ refFieldNames: string[];
78
+ }>);
79
+ }
51
80
  /**
52
81
  * {@link findApiAction} over a raw list of actions, such as a trigger event
53
82
  * object's `design.actions`; other action types (e.g. `reset`) are skipped.
83
+ * `buttons` names the inputs that are buttons ({@link buttonInputNames}).
84
+ *
85
+ * Studio Web runs a design action when a field changes, and only an action
86
+ * whose rules name that field (`ConnectorActionsProcessor` keys each action
87
+ * on every field its rules name; `getCustomFieldsObjectAction(refFieldName)`
88
+ * reads that field's list). The CLI has no "field just changed", so it takes
89
+ * the fields in the order they were supplied (`fieldValues`' key order) and
90
+ * reads them from the last: the first field with a satisfied action keyed on
91
+ * it decides, as the last field a user sets in Studio Web decides the schema.
92
+ * Two or more satisfied actions on that field throw
93
+ * {@link ConflictingDesignActionsError}. Rules are checked against all the
94
+ * supplied values, not the values as they stood when each field was set.
95
+ *
96
+ * Unlike Studio Web, a tie counts only api actions: the CLI runs no `reset`
97
+ * or `asyncHandler` action, so one of those never ties with an api action.
98
+ *
99
+ * `actionName` skips the field order: that action runs if its rules hold,
100
+ * even an action whose rules name no field.
101
+ *
102
+ * This and {@link ruleSatisfied} port Studio Web's matcher by hand. They go
103
+ * away once Studio Web ships it in a package the CLI can call
104
+ * (https://github.com/UiPath/StudioWeb/issues/22591).
105
+ *
106
+ * @throws ConflictingDesignActionsError when the deciding field has more than
107
+ * one satisfied action and no `actionName` picks one.
54
108
  */
55
- export declare function matchApiAction(actions: readonly Record<string, unknown>[], fieldValues: Record<string, string>, actionName?: string): ApiAction | null;
109
+ export declare function matchApiAction(actions: readonly Record<string, unknown>[], fieldValues: Record<string, string>, actionName: string | undefined, buttons: ReadonlySet<string>): ApiAction | null;
56
110
  type DesignTime = typeof import("@uipath/integration-service-design-time");
57
111
  export declare const loadDesignTime: () => Promise<DesignTime>;
58
112
  /** A solution-resource picker field's resolved resource. */
@@ -100,15 +154,27 @@ export declare function runDesignAction(options: CreateApiClientOptions | undefi
100
154
  * IS Element schema, so downstream consumers (buildResourceCompactSummary)
101
155
  * keep working unchanged.
102
156
  *
103
- * Modes (mirroring SW FieldProcessingMode applied to fields and parameters):
157
+ * Modes (mirroring SW FieldProcessingMode):
104
158
  * - replace → response wins on the selected request or response side.
105
159
  * - append → existing fields are kept; response fields are added (response
106
160
  * wins on key conflict so re-fetches stay current).
107
161
  * - prepend → response fields are added but existing values win on conflict.
108
- * - noop → that side is kept unchanged. Parameters follow input mode.
162
+ * - noop → that side is kept unchanged.
163
+ *
164
+ * The modes apply to fields only. The method's query, path, header and
165
+ * multipart parameters always stay the static ones, and any parameters in the
166
+ * response are ignored: Studio Web reads only `fields` from the response
167
+ * (`CustomFieldsDetails`), remaps those in
168
+ * `fields-service.ts` `_getCustomFieldsDetails`, and then adds the static
169
+ * `method.parameters` from `_getFieldDetails` in `_computeInputFields`.
109
170
  */
110
171
  export declare function applyDesignActionRemap(baseMeta: Record<string, unknown>, responseMeta: Record<string, unknown>, httpMethod: string, onSuccess: {
111
172
  input: string;
112
173
  output: string;
113
174
  }): Record<string, unknown>;
175
+ /** A schema field as the IS Element metadata carries it. */
176
+ export interface DesignField extends Record<string, unknown> {
177
+ name?: string;
178
+ method?: Record<string, Record<string, unknown>>;
179
+ }
114
180
  export {};
@@ -20,7 +20,9 @@ export interface TriggerEventTarget {
20
20
  * The event object's design action the supplied field values satisfy, routed
21
21
  * as the design-time package routes it: a `/metadata` URL goes to the event
22
22
  * object's metadata route as a GET with no body; any other URL keeps its
23
- * declared method on the connector's own route. `null` when none matches.
23
+ * declared method on the connector's own route. `null` when none matches;
24
+ * throws `ConflictingDesignActionsError` when the deciding field has several
25
+ * ({@link matchApiAction}) and no `actionName` picks one.
24
26
  */
25
27
  export declare function findTriggerDesignAction(eventObject: Record<string, unknown>, fieldValues: Record<string, string>, target: TriggerEventTarget, actionName?: string): Promise<ApiAction | null>;
26
28
  /** The event object's raw `parameters`, where a trigger declares its pickers. */
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@uipath/integrationservice-sdk",
3
3
  "author": "UiPath",
4
4
  "license": "SEE LICENSE IN LICENSE.txt",
5
- "version": "1.205.0-preview.281",
5
+ "version": "1.206.0-preview.282",
6
6
  "repository": {
7
7
  "type": "git",
8
8
  "url": "https://github.com/UiPath/cli.git",
@@ -23,13 +23,21 @@
23
23
  ".": {
24
24
  "types": "./dist/src/index.d.ts",
25
25
  "default": "./dist/index.js"
26
+ },
27
+ "./bindings": {
28
+ "types": "./dist/src/bindings.d.ts",
29
+ "default": "./dist/bindings.js"
30
+ },
31
+ "./connections": {
32
+ "types": "./dist/src/connections.d.ts",
33
+ "default": "./dist/connections.js"
26
34
  }
27
35
  },
28
36
  "files": [
29
37
  "dist"
30
38
  ],
31
39
  "dependencies": {
32
- "@uipath/integration-service-design-time": "2.10.0"
40
+ "@uipath/integration-service-design-time": "3.3.0"
33
41
  },
34
- "gitHead": "03b01866007f70eea9464da2dceb191a6fc3fb77"
42
+ "gitHead": "9f18b69f2307838e3ce650b91de76cf6c9a23c13"
35
43
  }