feat(integration-service): add Elements service - #556
Conversation
| * const objects = await elements.getObjects('uipath-slack'); | ||
| * ``` | ||
| */ | ||
| export class ElementsService extends BaseService implements ElementsServiceModel { |
There was a problem hiding this comment.
No integration test file exists for this service. Per convention: "Every new method must also have an integration test in tests/integration/shared/{domain}/." A tests/integration/shared/integration-service/elements.integration.test.ts is required — even if the test body uses describe.skip while PAT-auth support is being worked out (with an explanatory comment), the file must be present.
Review findings (3 issues)Dead endpoint constant — Incomplete error-propagation tests — Missing integration tests — No |
Adds the Integration Service Elements service (objects, activities, object metadata, and event-object reads at both connector and connection- instance scope) exposed via the @uipath/uipath-typescript/is-elements subpath. Includes ELEMENT_ENDPOINTS constants, unit tests, OAuth scope docs, and mkdocs nav. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
8a85b1f to
393b74d
Compare
ninja-shreyash
left a comment
There was a problem hiding this comment.
http://127.0.0.1:8000/uipath-typescript/api/interfaces/ElementsServiceModel.md
Elements service page giving 404 not found
Adds the Integration Service Execution passthrough (execute) exposed via the @uipath/uipath-typescript/is-execution subpath. Executes arbitrary HTTP operations against a connection instance and returns the full response envelope without throwing on non-2xx. Includes unit tests and OAuth scope docs. Reuses ELEMENT_ENDPOINTS.INSTANCE.EXECUTE. Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
* feat(integration-service): add Elements service [JAR-IS-3] Adds the Integration Service Elements service (objects, activities, object metadata, and event-object reads at both connector and connection- instance scope) exposed via the @uipath/uipath-typescript/is-elements subpath. Includes ELEMENT_ENDPOINTS constants, unit tests, OAuth scope docs, and mkdocs nav. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * feat(integration-service): add Execution passthrough [JAR-IS-4] (#557) Adds the Integration Service Execution passthrough (execute) exposed via the @uipath/uipath-typescript/is-execution subpath. Executes arbitrary HTTP operations against a connection instance and returns the full response envelope without throwing on non-2xx. Includes unit tests and OAuth scope docs. Reuses ELEMENT_ENDPOINTS.INSTANCE.EXECUTE. Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
| * }); | ||
| * ``` | ||
| */ | ||
| export async function execute( |
There was a problem hiding this comment.
No integration test exists for the execute function. Per convention: "Every new method must also have an integration test in tests/integration/shared/{domain}/."
Add tests/integration/shared/integration-service/execution.integration.test.ts. If the endpoint requires OAuth rather than PAT (so it returns 401 under CI credentials), use describe.skip with an explanatory comment, but the file must exist with the full test body in place.
Note: the open thread on elements.ts:48 raises the same gap for the Elements service — both are missing.
Review findings (3 new issues)Inline static array in method body —
Missing integration test for Previously raised (still open): error-propagation tests missing for 8 Elements methods ( Note: |
Execution service (#557): - Extend BaseService; acquire token via getValidAuthToken() instead of reaching into SDKInternalsRegistry for the token manager (config-only registry access retained in the constructor). - Send W3C tracing headers (traceparent / x-uipath-traceparent-id) on the raw passthrough fetch. - Extract ['POST','PUT','PATCH'] into a module-level BODY_METHODS constant. - Drop the `as unknown as` cast in tests; shared mock TokenManager now exposes getValidToken. Connectors + Elements (#555): - ConnectorGetResponse: single-type alias -> `interface extends` for TypeDoc. - Add LifeCycleStage enum (PREVIEW, GA, DEPRECATED, CUSTOM) and type Connector.lifeCycleStage / ElementActivity.lifecycleStage with it. - Add error-propagation tests for getDefaultConnection and getConnections. - Add error-propagation tests for the 8 remaining Elements read methods. OAuth scopes (#556): - Update docs to the new IS.* scope names (per-service): Connectors -> IS.Connectors.Read, Connections -> IS.Connections.Read, Elements -> IS.Connector.Export, Execution -> IS.Connections.Read. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Summary
PR 3/4 of the Integration Service stack. Adds the Elements service.
@uipath/uipath-typescript/is-elements: object/activity/metadata reads and event-object reads at both connector and connection-instance scopeELEMENT_ENDPOINTSconstants +ELEMENTS_BASEStack
feat/is-connectors— merge the lower PRs first; GitHub will retarget this tomain.🤖 Generated with Claude Code