@twin.org/automation-rest-client 0.0.3-next.5 → 0.9.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.
|
@@ -47,7 +47,7 @@ export class AutomationRestClient extends BaseRestClient {
|
|
|
47
47
|
/**
|
|
48
48
|
* Remove an action by its id.
|
|
49
49
|
* @param actionId The id of the action to remove.
|
|
50
|
-
* @returns
|
|
50
|
+
* @returns A promise that resolves when the action has been removed.
|
|
51
51
|
*/
|
|
52
52
|
async actionRemove(actionId) {
|
|
53
53
|
Guards.stringValue(AutomationRestClient.CLASS_NAME, "actionId", actionId);
|
|
@@ -95,7 +95,7 @@ export class AutomationRestClient extends BaseRestClient {
|
|
|
95
95
|
* Locate automation actions which match the given trigger and execute them.
|
|
96
96
|
* @param trigger The trigger to find the actions for.
|
|
97
97
|
* @param data Optional data to be passed to the actions.
|
|
98
|
-
* @returns
|
|
98
|
+
* @returns A promise that resolves when all matching actions have been dispatched.
|
|
99
99
|
*/
|
|
100
100
|
async trigger(trigger, data) {
|
|
101
101
|
Guards.stringValue(AutomationRestClient.CLASS_NAME, "trigger", trigger);
|
|
@@ -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;AAiBpD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C;;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,MAAM,EACN;YACC,IAAI,EAAE;gBACL,UAAU;gBACV,OAAO;gBACP,aAAa,EAAE,MAAM;aACrB;SACD,CACD,CAAC;QAEF,OAAO,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/C,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,CAAqD,YAAY,EAAE,QAAQ,EAAE;YAC5F,UAAU,EAAE;gBACX,QAAQ;aACR;SACD,CAAC,CAAC;IACJ,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,KAAK,EACL;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,KAAK,EAAE;YACb,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,CAAgD,mBAAmB,EAAE,MAAM,EAAE;YAC5F,UAAU,EAAE;gBACX,OAAO;aACP;YACD,IAAI,EAAE;gBACL,IAAI;aACJ;SACD,CAAC,CAAC;IACJ,CAAC","sourcesContent":["// Copyright 2026 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { BaseRestClient } from \"@twin.org/api-core\";\nimport type {\n\tIBaseRestClientConfig,\n\tICreatedResponse,\n\tINoContentResponse\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 { HeaderTypes } 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\t\"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 response.headers[HeaderTypes.Location];\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
|
|
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;AAiBpD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C;;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,MAAM,EACN;YACC,IAAI,EAAE;gBACL,UAAU;gBACV,OAAO;gBACP,aAAa,EAAE,MAAM;aACrB;SACD,CACD,CAAC;QAEF,OAAO,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/C,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,CAAqD,YAAY,EAAE,QAAQ,EAAE;YAC5F,UAAU,EAAE;gBACX,QAAQ;aACR;SACD,CAAC,CAAC;IACJ,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,KAAK,EACL;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,KAAK,EAAE;YACb,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,CAAgD,mBAAmB,EAAE,MAAM,EAAE;YAC5F,UAAU,EAAE;gBACX,OAAO;aACP;YACD,IAAI,EAAE;gBACL,IAAI;aACJ;SACD,CAAC,CAAC;IACJ,CAAC","sourcesContent":["// Copyright 2026 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { BaseRestClient } from \"@twin.org/api-core\";\nimport type {\n\tIBaseRestClientConfig,\n\tICreatedResponse,\n\tINoContentResponse\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 { HeaderTypes } 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\t\"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 response.headers[HeaderTypes.Location];\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>(\"/:actionId\", \"DELETE\", {\n\t\t\tpathParams: {\n\t\t\t\tactionId\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\t\"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>(\"/\", \"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>(\"/trigger/:trigger\", \"POST\", {\n\t\t\tpathParams: {\n\t\t\t\ttrigger\n\t\t\t},\n\t\t\tbody: {\n\t\t\t\tdata\n\t\t\t}\n\t\t});\n\t}\n}\n"]}
|
|
@@ -30,7 +30,7 @@ export declare class AutomationRestClient extends BaseRestClient implements IAut
|
|
|
30
30
|
/**
|
|
31
31
|
* Remove an action by its id.
|
|
32
32
|
* @param actionId The id of the action to remove.
|
|
33
|
-
* @returns
|
|
33
|
+
* @returns A promise that resolves when the action has been removed.
|
|
34
34
|
*/
|
|
35
35
|
actionRemove(actionId: string): Promise<void>;
|
|
36
36
|
/**
|
|
@@ -59,7 +59,7 @@ export declare class AutomationRestClient extends BaseRestClient implements IAut
|
|
|
59
59
|
* Locate automation actions which match the given trigger and execute them.
|
|
60
60
|
* @param trigger The trigger to find the actions for.
|
|
61
61
|
* @param data Optional data to be passed to the actions.
|
|
62
|
-
* @returns
|
|
62
|
+
* @returns A promise that resolves when all matching actions have been dispatched.
|
|
63
63
|
*/
|
|
64
64
|
trigger(trigger: string, data?: unknown): Promise<void>;
|
|
65
65
|
}
|
package/docs/changelog.md
CHANGED
|
@@ -1,5 +1,29 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.9.0](https://github.com/iotaledger/twin-automation/compare/automation-rest-client-v0.9.0...automation-rest-client-v0.9.0) (2026-06-24)
|
|
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
|
+
|
|
11
|
+
## [0.9.0-next.1](https://github.com/iotaledger/twin-automation/compare/automation-rest-client-v0.9.0-next.0...automation-rest-client-v0.9.0-next.1) (2026-06-23)
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
### Features
|
|
15
|
+
|
|
16
|
+
* initial commit ([33ddc12](https://github.com/iotaledger/twin-automation/commit/33ddc12869db11b7f861967f820ac4d5b00dbca2))
|
|
17
|
+
* typescript 6 update ([ee77cab](https://github.com/iotaledger/twin-automation/commit/ee77cab770cd3d2aff6192f146b4b5544c206d52))
|
|
18
|
+
* update dependencies ([e299490](https://github.com/iotaledger/twin-automation/commit/e299490b7dfe3d847a3beb254a609883caec2c98))
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
### Dependencies
|
|
22
|
+
|
|
23
|
+
* The following workspace dependencies were updated
|
|
24
|
+
* dependencies
|
|
25
|
+
* @twin.org/automation-models bumped from 0.9.0-next.0 to 0.9.0-next.1
|
|
26
|
+
|
|
3
27
|
## [0.0.3-next.5](https://github.com/iotaledger/twin-automation/compare/automation-rest-client-v0.0.3-next.4...automation-rest-client-v0.0.3-next.5) (2026-06-11)
|
|
4
28
|
|
|
5
29
|
|
|
@@ -118,7 +118,7 @@ The id of the action to remove.
|
|
|
118
118
|
|
|
119
119
|
`Promise`\<`void`\>
|
|
120
120
|
|
|
121
|
-
|
|
121
|
+
A promise that resolves when the action has been removed.
|
|
122
122
|
|
|
123
123
|
#### Implementation of
|
|
124
124
|
|
|
@@ -224,7 +224,7 @@ Optional data to be passed to the actions.
|
|
|
224
224
|
|
|
225
225
|
`Promise`\<`void`\>
|
|
226
226
|
|
|
227
|
-
|
|
227
|
+
A promise that resolves when all matching actions have been dispatched.
|
|
228
228
|
|
|
229
229
|
#### Implementation of
|
|
230
230
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@twin.org/automation-rest-client",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "0.9.0",
|
|
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",
|
|
@@ -14,13 +14,13 @@
|
|
|
14
14
|
"node": ">=20.0.0"
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@twin.org/api-core": "
|
|
18
|
-
"@twin.org/api-models": "
|
|
19
|
-
"@twin.org/automation-models": "0.0
|
|
20
|
-
"@twin.org/core": "
|
|
21
|
-
"@twin.org/entity": "
|
|
22
|
-
"@twin.org/nameof": "
|
|
23
|
-
"@twin.org/web": "
|
|
17
|
+
"@twin.org/api-core": "^0.9.0",
|
|
18
|
+
"@twin.org/api-models": "^0.9.0",
|
|
19
|
+
"@twin.org/automation-models": "^0.9.0",
|
|
20
|
+
"@twin.org/core": "^0.9.0",
|
|
21
|
+
"@twin.org/entity": "^0.9.0",
|
|
22
|
+
"@twin.org/nameof": "^0.9.0",
|
|
23
|
+
"@twin.org/web": "^0.9.0"
|
|
24
24
|
},
|
|
25
25
|
"main": "./dist/es/index.js",
|
|
26
26
|
"types": "./dist/types/index.d.ts",
|