@twin.org/automation-rest-client 0.9.1-next.2 → 0.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -43,7 +43,7 @@ export class AutomationRestClient extends BaseRestClient {
43
43
  configuration: config
44
44
  }
45
45
  });
46
- return HttpHeaderHelper.extractId(response.headers);
46
+ return HttpHeaderHelper.extractId(response.headers, `${this.getPathPrefix()}/:id`);
47
47
  }
48
48
  /**
49
49
  * Remove an action by its id.
@@ -1 +1 @@
1
- {"version":3,"file":"automationRestClient.js","sourceRoot":"","sources":["../../src/automationRestClient.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EACN,gBAAgB,EAIhB,MAAM,sBAAsB,CAAC;AAY9B,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C;;GAEG;AACH,MAAM,OAAO,oBAAqB,SAAQ,cAAc;IACvD;;OAEG;IACI,MAAM,CAAU,UAAU,0BAA0C;IAE3E;;;OAGG;IACH,YAAY,MAA6B;QACxC,KAAK,CAAC,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IAC9D,CAAC;IAED;;;OAGG;IACI,SAAS;QACf,OAAO,oBAAoB,CAAC,UAAU,CAAC;IACxC,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,YAAY,CACxB,UAAkB,EAClB,OAAe,EACf,MAAgB;QAEhB,MAAM,CAAC,WAAW,CAAC,oBAAoB,CAAC,UAAU,gBAAsB,UAAU,CAAC,CAAC;QACpF,MAAM,CAAC,WAAW,CAAC,oBAAoB,CAAC,UAAU,aAAmB,OAAO,CAAC,CAAC;QAE9E,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAChC,GAAG,EACH,UAAU,CAAC,IAAI,EACf;YACC,IAAI,EAAE;gBACL,UAAU;gBACV,OAAO;gBACP,aAAa,EAAE,MAAM;aACrB;SACD,CACD,CAAC;QAEF,OAAO,gBAAgB,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACrD,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,YAAY,CAAC,QAAgB;QACzC,MAAM,CAAC,WAAW,CAAC,oBAAoB,CAAC,UAAU,cAAoB,QAAQ,CAAC,CAAC;QAEhF,MAAM,IAAI,CAAC,KAAK,CACf,YAAY,EACZ,UAAU,CAAC,MAAM,EACjB;YACC,UAAU,EAAE;gBACX,QAAQ;aACR;SACD,CACD,CAAC;IACH,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,SAAS,CAAC,QAAgB;QACtC,MAAM,CAAC,WAAW,CAAC,oBAAoB,CAAC,UAAU,cAAoB,QAAQ,CAAC,CAAC;QAEhF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAChC,YAAY,EACZ,UAAU,CAAC,GAAG,EACd;YACC,UAAU,EAAE;gBACX,QAAQ;aACR;SACD,CACD,CAAC;QAEF,OAAO,QAAQ,CAAC,IAAI,CAAC;IACtB,CAAC;IAED;;;;;;;;OAQG;IACI,KAAK,CAAC,YAAY,CACxB,OAAmD,EACnD,MAAe,EACf,KAAc;QAKd,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAG/B,GAAG,EAAE,UAAU,CAAC,GAAG,EAAE;YACtB,KAAK,EAAE;gBACN,OAAO,EAAE,OAAO,EAAE,OAAO;gBACzB,UAAU,EAAE,OAAO,EAAE,UAAU;gBAC/B,MAAM;gBACN,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;aAC3B;SACD,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,IAAI,CAAC;IACtB,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,OAAO,CAAC,OAAe,EAAE,IAAc;QACnD,MAAM,CAAC,WAAW,CAAC,oBAAoB,CAAC,UAAU,aAAmB,OAAO,CAAC,CAAC;QAE9E,MAAM,IAAI,CAAC,KAAK,CACf,mBAAmB,EACnB,UAAU,CAAC,IAAI,EACf;YACC,UAAU,EAAE;gBACX,OAAO;aACP;YACD,IAAI,EAAE;gBACL,IAAI;aACJ;SACD,CACD,CAAC;IACH,CAAC","sourcesContent":["// Copyright 2026 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { BaseRestClient } from \"@twin.org/api-core\";\nimport {\n\tHttpHeaderHelper,\n\ttype IBaseRestClientConfig,\n\ttype ICreatedResponse,\n\ttype INoContentResponse\n} from \"@twin.org/api-models\";\nimport type {\n\tIAutomationActionCreateRequest,\n\tIAutomationActionEntry,\n\tIAutomationActionGetRequest,\n\tIAutomationActionGetResponse,\n\tIAutomationActionRemoveRequest,\n\tIAutomationActionsQueryRequest,\n\tIAutomationActionsQueryResponse,\n\tIAutomationComponent,\n\tIAutomationTriggerRequest\n} from \"@twin.org/automation-models\";\nimport { Coerce, Guards } from \"@twin.org/core\";\nimport { nameof } from \"@twin.org/nameof\";\nimport { HttpMethod } from \"@twin.org/web\";\n\n/**\n * Client for performing automation through to REST endpoints.\n */\nexport class AutomationRestClient extends BaseRestClient implements IAutomationComponent {\n\t/**\n\t * Runtime name for the class.\n\t */\n\tpublic static readonly CLASS_NAME: string = nameof<AutomationRestClient>();\n\n\t/**\n\t * Create a new instance of AutomationRestClient.\n\t * @param config The configuration for the client.\n\t */\n\tconstructor(config: IBaseRestClientConfig) {\n\t\tsuper(AutomationRestClient.CLASS_NAME, config, \"automation\");\n\t}\n\n\t/**\n\t * Returns the class name of the component.\n\t * @returns The class name of the component.\n\t */\n\tpublic className(): string {\n\t\treturn AutomationRestClient.CLASS_NAME;\n\t}\n\n\t/**\n\t * Create an action with the trigger and configuration.\n\t * @param actionType The type of action to create.\n\t * @param trigger The trigger to create the action for.\n\t * @param config Configuration to be passed to the actions.\n\t * @returns The id of the created action.\n\t */\n\tpublic async actionCreate(\n\t\tactionType: string,\n\t\ttrigger: string,\n\t\tconfig?: unknown\n\t): Promise<string> {\n\t\tGuards.stringValue(AutomationRestClient.CLASS_NAME, nameof(actionType), actionType);\n\t\tGuards.stringValue(AutomationRestClient.CLASS_NAME, nameof(trigger), trigger);\n\n\t\tconst response = await this.fetch<IAutomationActionCreateRequest, ICreatedResponse>(\n\t\t\t\"/\",\n\t\t\tHttpMethod.POST,\n\t\t\t{\n\t\t\t\tbody: {\n\t\t\t\t\tactionType,\n\t\t\t\t\ttrigger,\n\t\t\t\t\tconfiguration: config\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\n\t\treturn HttpHeaderHelper.extractId(response.headers);\n\t}\n\n\t/**\n\t * Remove an action by its id.\n\t * @param actionId The id of the action to remove.\n\t * @returns A promise that resolves when the action has been removed.\n\t */\n\tpublic async actionRemove(actionId: string): Promise<void> {\n\t\tGuards.stringValue(AutomationRestClient.CLASS_NAME, nameof(actionId), actionId);\n\n\t\tawait this.fetch<IAutomationActionRemoveRequest, INoContentResponse>(\n\t\t\t\"/:actionId\",\n\t\t\tHttpMethod.DELETE,\n\t\t\t{\n\t\t\t\tpathParams: {\n\t\t\t\t\tactionId\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\t}\n\n\t/**\n\t * Get an action by its id.\n\t * @param actionId The id of the action to get.\n\t * @returns The action with the given id.\n\t */\n\tpublic async actionGet(actionId: string): Promise<IAutomationActionEntry> {\n\t\tGuards.stringValue(AutomationRestClient.CLASS_NAME, nameof(actionId), actionId);\n\n\t\tconst response = await this.fetch<IAutomationActionGetRequest, IAutomationActionGetResponse>(\n\t\t\t\"/:actionId\",\n\t\t\tHttpMethod.GET,\n\t\t\t{\n\t\t\t\tpathParams: {\n\t\t\t\t\tactionId\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\n\t\treturn response.body;\n\t}\n\n\t/**\n\t * Query the actions with the given parameters.\n\t * @param options The options to query the actions with.\n\t * @param options.trigger The trigger to filter the actions by.\n\t * @param options.actionType The type of action to filter by.\n\t * @param cursor The cursor to continue the query from.\n\t * @param limit The maximum number of actions to return.\n\t * @returns The actions matching the query and a cursor to continue the query if there are more results.\n\t */\n\tpublic async actionsQuery(\n\t\toptions?: { trigger?: string; actionType?: string },\n\t\tcursor?: string,\n\t\tlimit?: number\n\t): Promise<{\n\t\tentries: IAutomationActionEntry[];\n\t\tcursor?: string;\n\t}> {\n\t\tconst response = await this.fetch<\n\t\t\tIAutomationActionsQueryRequest,\n\t\t\tIAutomationActionsQueryResponse\n\t\t>(\"/\", HttpMethod.GET, {\n\t\t\tquery: {\n\t\t\t\ttrigger: options?.trigger,\n\t\t\t\tactionType: options?.actionType,\n\t\t\t\tcursor,\n\t\t\t\tlimit: Coerce.string(limit)\n\t\t\t}\n\t\t});\n\n\t\treturn response.body;\n\t}\n\n\t/**\n\t * Locate automation actions which match the given trigger and execute them.\n\t * @param trigger The trigger to find the actions for.\n\t * @param data Optional data to be passed to the actions.\n\t * @returns A promise that resolves when all matching actions have been dispatched.\n\t */\n\tpublic async trigger(trigger: string, data?: unknown): Promise<void> {\n\t\tGuards.stringValue(AutomationRestClient.CLASS_NAME, nameof(trigger), trigger);\n\n\t\tawait this.fetch<IAutomationTriggerRequest, INoContentResponse>(\n\t\t\t\"/trigger/:trigger\",\n\t\t\tHttpMethod.POST,\n\t\t\t{\n\t\t\t\tpathParams: {\n\t\t\t\t\ttrigger\n\t\t\t\t},\n\t\t\t\tbody: {\n\t\t\t\t\tdata\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\t}\n}\n"]}
1
+ {"version":3,"file":"automationRestClient.js","sourceRoot":"","sources":["../../src/automationRestClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright 2026 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { BaseRestClient } from \"@twin.org/api-core\";\nimport {\n\tHttpHeaderHelper,\n\ttype IBaseRestClientConfig,\n\ttype ICreatedResponse,\n\ttype INoContentResponse\n} from \"@twin.org/api-models\";\nimport type {\n\tIAutomationActionCreateRequest,\n\tIAutomationActionEntry,\n\tIAutomationActionGetRequest,\n\tIAutomationActionGetResponse,\n\tIAutomationActionRemoveRequest,\n\tIAutomationActionsQueryRequest,\n\tIAutomationActionsQueryResponse,\n\tIAutomationComponent,\n\tIAutomationTriggerRequest\n} from \"@twin.org/automation-models\";\nimport { Coerce, Guards } from \"@twin.org/core\";\nimport { nameof } from \"@twin.org/nameof\";\nimport { HttpMethod } from \"@twin.org/web\";\n\n/**\n * Client for performing automation through to REST endpoints.\n */\nexport class AutomationRestClient extends BaseRestClient implements IAutomationComponent {\n\t/**\n\t * Runtime name for the class.\n\t */\n\tpublic static readonly CLASS_NAME: string = nameof<AutomationRestClient>();\n\n\t/**\n\t * Create a new instance of AutomationRestClient.\n\t * @param config The configuration for the client.\n\t */\n\tconstructor(config: IBaseRestClientConfig) {\n\t\tsuper(AutomationRestClient.CLASS_NAME, config, \"automation\");\n\t}\n\n\t/**\n\t * Returns the class name of the component.\n\t * @returns The class name of the component.\n\t */\n\tpublic className(): string {\n\t\treturn AutomationRestClient.CLASS_NAME;\n\t}\n\n\t/**\n\t * Create an action with the trigger and configuration.\n\t * @param actionType The type of action to create.\n\t * @param trigger The trigger to create the action for.\n\t * @param config Configuration to be passed to the actions.\n\t * @returns The id of the created action.\n\t */\n\tpublic async actionCreate(\n\t\tactionType: string,\n\t\ttrigger: string,\n\t\tconfig?: unknown\n\t): Promise<string> {\n\t\tGuards.stringValue(AutomationRestClient.CLASS_NAME, nameof(actionType), actionType);\n\t\tGuards.stringValue(AutomationRestClient.CLASS_NAME, nameof(trigger), trigger);\n\n\t\tconst response = await this.fetch<IAutomationActionCreateRequest, ICreatedResponse>(\n\t\t\t\"/\",\n\t\t\tHttpMethod.POST,\n\t\t\t{\n\t\t\t\tbody: {\n\t\t\t\t\tactionType,\n\t\t\t\t\ttrigger,\n\t\t\t\t\tconfiguration: config\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\n\t\treturn HttpHeaderHelper.extractId(response.headers, `${this.getPathPrefix()}/:id`);\n\t}\n\n\t/**\n\t * Remove an action by its id.\n\t * @param actionId The id of the action to remove.\n\t * @returns A promise that resolves when the action has been removed.\n\t */\n\tpublic async actionRemove(actionId: string): Promise<void> {\n\t\tGuards.stringValue(AutomationRestClient.CLASS_NAME, nameof(actionId), actionId);\n\n\t\tawait this.fetch<IAutomationActionRemoveRequest, INoContentResponse>(\n\t\t\t\"/:actionId\",\n\t\t\tHttpMethod.DELETE,\n\t\t\t{\n\t\t\t\tpathParams: {\n\t\t\t\t\tactionId\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\t}\n\n\t/**\n\t * Get an action by its id.\n\t * @param actionId The id of the action to get.\n\t * @returns The action with the given id.\n\t */\n\tpublic async actionGet(actionId: string): Promise<IAutomationActionEntry> {\n\t\tGuards.stringValue(AutomationRestClient.CLASS_NAME, nameof(actionId), actionId);\n\n\t\tconst response = await this.fetch<IAutomationActionGetRequest, IAutomationActionGetResponse>(\n\t\t\t\"/:actionId\",\n\t\t\tHttpMethod.GET,\n\t\t\t{\n\t\t\t\tpathParams: {\n\t\t\t\t\tactionId\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\n\t\treturn response.body;\n\t}\n\n\t/**\n\t * Query the actions with the given parameters.\n\t * @param options The options to query the actions with.\n\t * @param options.trigger The trigger to filter the actions by.\n\t * @param options.actionType The type of action to filter by.\n\t * @param cursor The cursor to continue the query from.\n\t * @param limit The maximum number of actions to return.\n\t * @returns The actions matching the query and a cursor to continue the query if there are more results.\n\t */\n\tpublic async actionsQuery(\n\t\toptions?: { trigger?: string; actionType?: string },\n\t\tcursor?: string,\n\t\tlimit?: number\n\t): Promise<{\n\t\tentries: IAutomationActionEntry[];\n\t\tcursor?: string;\n\t}> {\n\t\tconst response = await this.fetch<\n\t\t\tIAutomationActionsQueryRequest,\n\t\t\tIAutomationActionsQueryResponse\n\t\t>(\"/\", HttpMethod.GET, {\n\t\t\tquery: {\n\t\t\t\ttrigger: options?.trigger,\n\t\t\t\tactionType: options?.actionType,\n\t\t\t\tcursor,\n\t\t\t\tlimit: Coerce.string(limit)\n\t\t\t}\n\t\t});\n\n\t\treturn response.body;\n\t}\n\n\t/**\n\t * Locate automation actions which match the given trigger and execute them.\n\t * @param trigger The trigger to find the actions for.\n\t * @param data Optional data to be passed to the actions.\n\t * @returns A promise that resolves when all matching actions have been dispatched.\n\t */\n\tpublic async trigger(trigger: string, data?: unknown): Promise<void> {\n\t\tGuards.stringValue(AutomationRestClient.CLASS_NAME, nameof(trigger), trigger);\n\n\t\tawait this.fetch<IAutomationTriggerRequest, INoContentResponse>(\n\t\t\t\"/trigger/:trigger\",\n\t\t\tHttpMethod.POST,\n\t\t\t{\n\t\t\t\tpathParams: {\n\t\t\t\t\ttrigger\n\t\t\t\t},\n\t\t\t\tbody: {\n\t\t\t\t\tdata\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\t}\n}\n"]}
package/docs/changelog.md CHANGED
@@ -1,5 +1,30 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.9.1](https://github.com/iotaledger/twin-automation/compare/automation-rest-client-v0.9.1...automation-rest-client-v0.9.1) (2026-07-27)
4
+
5
+
6
+ ### Features
7
+
8
+ * initial commit ([33ddc12](https://github.com/iotaledger/twin-automation/commit/33ddc12869db11b7f861967f820ac4d5b00dbca2))
9
+ * release to production ([#15](https://github.com/iotaledger/twin-automation/issues/15)) ([fe4baa4](https://github.com/iotaledger/twin-automation/commit/fe4baa495825852b93dab09d5c2b8f7c10899542))
10
+ * release to production ([#25](https://github.com/iotaledger/twin-automation/issues/25)) ([7176f0b](https://github.com/iotaledger/twin-automation/commit/7176f0b8a99b6a987c3a48939c8a225e748bebfe))
11
+
12
+ ## [0.9.1-next.3](https://github.com/iotaledger/twin-automation/compare/automation-rest-client-v0.9.1-next.2...automation-rest-client-v0.9.1-next.3) (2026-06-30)
13
+
14
+
15
+ ### Features
16
+
17
+ * rest enhancements ([b451133](https://github.com/iotaledger/twin-automation/commit/b451133cb593fe789b44b0d7d05b7bbfba98d838))
18
+ * rest enhancements ([001df6a](https://github.com/iotaledger/twin-automation/commit/001df6a5468096eb9c8c80dc12f1d1f0e10dcca6))
19
+ * rest enhancements ([c99e2a2](https://github.com/iotaledger/twin-automation/commit/c99e2a249a2540b547ae95557baa3bf7a4377422))
20
+
21
+
22
+ ### Dependencies
23
+
24
+ * The following workspace dependencies were updated
25
+ * dependencies
26
+ * @twin.org/automation-models bumped from 0.9.1-next.2 to 0.9.1-next.3
27
+
3
28
  ## [0.9.1-next.2](https://github.com/iotaledger/twin-automation/compare/automation-rest-client-v0.9.1-next.1...automation-rest-client-v0.9.1-next.2) (2026-06-29)
4
29
 
5
30
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@twin.org/automation-rest-client",
3
- "version": "0.9.1-next.2",
3
+ "version": "0.9.1",
4
4
  "description": "REST client operations for creating, updating, retrieving, and querying managed documents. Facilitates integration with automation services and external systems.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -11,16 +11,16 @@
11
11
  "license": "Apache-2.0",
12
12
  "type": "module",
13
13
  "engines": {
14
- "node": ">=20.0.0"
14
+ "node": ">=24.0.0"
15
15
  },
16
16
  "dependencies": {
17
- "@twin.org/api-core": "next",
18
- "@twin.org/api-models": "next",
19
- "@twin.org/automation-models": "0.9.1-next.2",
20
- "@twin.org/core": "next",
21
- "@twin.org/entity": "next",
22
- "@twin.org/nameof": "next",
23
- "@twin.org/web": "next"
17
+ "@twin.org/api-core": "^0.9.1",
18
+ "@twin.org/api-models": "^0.9.1",
19
+ "@twin.org/automation-models": "^0.9.1",
20
+ "@twin.org/core": "^0.9.1",
21
+ "@twin.org/entity": "^0.9.1",
22
+ "@twin.org/nameof": "^0.9.1",
23
+ "@twin.org/web": "^0.9.1"
24
24
  },
25
25
  "main": "./dist/es/index.js",
26
26
  "types": "./dist/types/index.d.ts",