@things-factory/integration-base 6.2.35 → 6.2.37

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/integration-base",
3
- "version": "6.2.35",
3
+ "version": "6.2.37",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "client/index.js",
6
6
  "things-factory": true,
@@ -46,5 +46,5 @@
46
46
  "devDependencies": {
47
47
  "@types/cron": "^2.0.1"
48
48
  },
49
- "gitHead": "7f44fa314cdfcb84faf99e3db9d188efb53c2423"
49
+ "gitHead": "262635e763771557d8bb53fc5198aa9b67c82979"
50
50
  }
@@ -56,7 +56,7 @@ export class ScenarioInstanceMutation {
56
56
  @Arg('variables', type => ScalarObject, { nullable: true }) variables: any,
57
57
  @Ctx() context: ResolverContext
58
58
  ): Promise<ScenarioInstance> {
59
- const { domain, user } = context.state
59
+ const { domain, user, lng } = context.state
60
60
 
61
61
  debug('runScenario', scenarioName, instanceName, variables)
62
62
 
@@ -78,6 +78,8 @@ export class ScenarioInstanceMutation {
78
78
  instanceName = instanceName || scenarioName + '-' + String(Date.now())
79
79
  var instance = new ScenarioInstance(instanceName, scenario, {
80
80
  domain,
81
+ user,
82
+ lng,
81
83
  variables,
82
84
  client: GraphqlLocalClient.client
83
85
  })
@@ -153,7 +153,8 @@ export class ScenarioInstance {
153
153
  }
154
154
 
155
155
  constructor(instanceName, { name: scenarioName, steps, domain: scenarioDomain }, context?) {
156
- const { domain = scenarioDomain, user, lng } = context || {}
156
+ var { domain, user, lng } = context || {}
157
+ domain ||= scenarioDomain
157
158
 
158
159
  this.instanceName = instanceName
159
160
  this.scenarioName = scenarioName
@@ -101,11 +101,11 @@ export class StateRegisterMutation {
101
101
  @Arg('state', type => ScalarObject) state: any,
102
102
  @Ctx() context: ResolverContext
103
103
  ): Promise<StateRegister> {
104
- const { domain, user, tx } = context.state
104
+ const { domain, user = null, tx } = context.state
105
105
 
106
106
  const repository = tx.getRepository(StateRegister)
107
107
  const stateRegister = await repository.findOne({
108
- where: { domain: { id: domain.id }, name }
108
+ where: { domain: { id: domain?.id }, name }
109
109
  })
110
110
 
111
111
  return await repository.save({
@@ -60,6 +60,11 @@ export class StateRegisterQuery {
60
60
  return stateRegister.domainId && (await getRepository(Domain).findOneBy({ id: stateRegister.domainId }))
61
61
  }
62
62
 
63
+ @FieldResolver(type => User)
64
+ async writer(@Root() stateRegister: StateRegister): Promise<User> {
65
+ return stateRegister.writerId && (await getRepository(User).findOneBy({ id: stateRegister.writerId }))
66
+ }
67
+
63
68
  @FieldResolver(type => User)
64
69
  async updater(@Root() stateRegister: StateRegister): Promise<User> {
65
70
  return stateRegister.updaterId && (await getRepository(User).findOneBy({ id: stateRegister.updaterId }))
@@ -1,48 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const graphql_tag_1 = tslib_1.__importDefault(require("graphql-tag"));
5
- const task_registry_1 = require("../task-registry");
6
- async function ReadState(step, { logger, publish, data, domain, user, client }) {
7
- var { params: { name } } = step;
8
- if (!name) {
9
- throw Error(`name should be defined: name - '${name}'`);
10
- }
11
- var { data: queryResult, errors } = await client.query({
12
- query: (0, graphql_tag_1.default) `
13
- query ($name: String!) {
14
- stateRegisterByName(state: $state, name: $name) {
15
- state
16
- }
17
- }
18
- `,
19
- variables: {
20
- name
21
- },
22
- context: {
23
- state: {
24
- domain,
25
- user
26
- }
27
- }
28
- });
29
- if (errors) {
30
- errors.forEach(error => {
31
- logger.error('GraphQL Error: %s', error);
32
- });
33
- }
34
- return {
35
- data: queryResult === null || queryResult === void 0 ? void 0 : queryResult.stateRegisterByName.state
36
- };
37
- }
38
- ReadState.parameterSpec = [
39
- {
40
- type: 'string',
41
- name: 'name',
42
- label: 'name'
43
- }
44
- ];
45
- ReadState.connectorFree = true;
46
- ReadState.help = 'integration/task/read-state';
47
- task_registry_1.TaskRegistry.registerTaskHandler('read-state', ReadState);
48
- //# sourceMappingURL=read-state.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"read-state.js","sourceRoot":"","sources":["../../../server/engine/task/read-state.ts"],"names":[],"mappings":";;;AAAA,sEAA6B;AAC7B,oDAA+C;AAE/C,KAAK,UAAU,SAAS,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE;IAC5E,IAAI,EACF,MAAM,EAAE,EAAE,IAAI,EAAE,EACjB,GAAG,IAAI,CAAA;IAER,IAAI,CAAC,IAAI,EAAE;QACT,MAAM,KAAK,CAAC,mCAAmC,IAAI,GAAG,CAAC,CAAA;KACxD;IAED,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;QACrD,KAAK,EAAE,IAAA,qBAAG,EAAA;;;;;;KAMT;QACD,SAAS,EAAE;YACT,IAAI;SACL;QACD,OAAO,EAAE;YACP,KAAK,EAAE;gBACL,MAAM;gBACN,IAAI;aACL;SACF;KACF,CAAC,CAAA;IAEF,IAAI,MAAM,EAAE;QACV,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACrB,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAA;QAC1C,CAAC,CAAC,CAAA;KACH;IAED,OAAO;QACL,IAAI,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,mBAAmB,CAAC,KAAK;KAC7C,CAAA;AACH,CAAC;AAED,SAAS,CAAC,aAAa,GAAG;IACxB;QACE,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;KACd;CACF,CAAA;AAED,SAAS,CAAC,aAAa,GAAG,IAAI,CAAA;AAC9B,SAAS,CAAC,IAAI,GAAG,6BAA6B,CAAA;AAE9C,4BAAY,CAAC,mBAAmB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAA","sourcesContent":["import gql from 'graphql-tag'\nimport { TaskRegistry } from '../task-registry'\n\nasync function ReadState(step, { logger, publish, data, domain, user, client }) {\n var {\n params: { name }\n } = step\n\n if (!name) {\n throw Error(`name should be defined: name - '${name}'`)\n }\n\n var { data: queryResult, errors } = await client.query({\n query: gql`\n query ($name: String!) {\n stateRegisterByName(state: $state, name: $name) {\n state\n }\n }\n `,\n variables: {\n name\n },\n context: {\n state: {\n domain,\n user\n }\n }\n })\n\n if (errors) {\n errors.forEach(error => {\n logger.error('GraphQL Error: %s', error)\n })\n }\n\n return {\n data: queryResult?.stateRegisterByName.state\n }\n}\n\nReadState.parameterSpec = [\n {\n type: 'string',\n name: 'name',\n label: 'name'\n }\n]\n\nReadState.connectorFree = true\nReadState.help = 'integration/task/read-state'\n\nTaskRegistry.registerTaskHandler('read-state', ReadState)\n"]}
@@ -1,56 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const graphql_tag_1 = tslib_1.__importDefault(require("graphql-tag"));
5
- const utils_1 = require("@things-factory/utils");
6
- const task_registry_1 = require("../task-registry");
7
- async function WriteState(step, { logger, publish, data, domain, user, client }) {
8
- var { params: { name, accessor } } = step;
9
- if (!name || !accessor) {
10
- throw Error(`name and accessor should be defined: name - '${name}', accessor - '${accessor}'`);
11
- }
12
- var state = (0, utils_1.access)(accessor, data);
13
- var { data: mutateResult, errors } = await client.mutate({
14
- mutation: (0, graphql_tag_1.default) `
15
- mutation ($state: Object!, $name: String!) {
16
- updateStateRegisterByName(state: $state, name: $name) {
17
- state
18
- }
19
- }
20
- `,
21
- variables: {
22
- name,
23
- state
24
- },
25
- context: {
26
- state: {
27
- domain,
28
- user
29
- }
30
- }
31
- });
32
- if (errors) {
33
- errors.forEach(error => {
34
- logger.error('GraphQL Error: %s', error);
35
- });
36
- }
37
- return {
38
- data: mutateResult === null || mutateResult === void 0 ? void 0 : mutateResult.updateStateRegisterByName.state
39
- };
40
- }
41
- WriteState.parameterSpec = [
42
- {
43
- type: 'string',
44
- name: 'name',
45
- label: 'name'
46
- },
47
- {
48
- type: 'scenario-step-input',
49
- name: 'accessor',
50
- label: 'accessor'
51
- }
52
- ];
53
- WriteState.connectorFree = true;
54
- WriteState.help = 'integration/task/write-state';
55
- task_registry_1.TaskRegistry.registerTaskHandler('write-state', WriteState);
56
- //# sourceMappingURL=write-state.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"write-state.js","sourceRoot":"","sources":["../../../server/engine/task/write-state.ts"],"names":[],"mappings":";;;AAAA,sEAA6B;AAC7B,iDAA8C;AAC9C,oDAA+C;AAE/C,KAAK,UAAU,UAAU,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE;IAC7E,IAAI,EACF,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAC3B,GAAG,IAAI,CAAA;IAER,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE;QACtB,MAAM,KAAK,CAAC,gDAAgD,IAAI,kBAAkB,QAAQ,GAAG,CAAC,CAAA;KAC/F;IAED,IAAI,KAAK,GAAG,IAAA,cAAM,EAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IAElC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC;QACvD,QAAQ,EAAE,IAAA,qBAAG,EAAA;;;;;;KAMZ;QACD,SAAS,EAAE;YACT,IAAI;YACJ,KAAK;SACN;QACD,OAAO,EAAE;YACP,KAAK,EAAE;gBACL,MAAM;gBACN,IAAI;aACL;SACF;KACF,CAAC,CAAA;IAEF,IAAI,MAAM,EAAE;QACV,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACrB,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAA;QAC1C,CAAC,CAAC,CAAA;KACH;IAED,OAAO;QACL,IAAI,EAAE,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,yBAAyB,CAAC,KAAK;KACpD,CAAA;AACH,CAAC;AAED,UAAU,CAAC,aAAa,GAAG;IACzB;QACE,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;KACd;IACD;QACE,IAAI,EAAE,qBAAqB;QAC3B,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;KAClB;CACF,CAAA;AAED,UAAU,CAAC,aAAa,GAAG,IAAI,CAAA;AAC/B,UAAU,CAAC,IAAI,GAAG,8BAA8B,CAAA;AAEhD,4BAAY,CAAC,mBAAmB,CAAC,aAAa,EAAE,UAAU,CAAC,CAAA","sourcesContent":["import gql from 'graphql-tag'\nimport { access } from '@things-factory/utils'\nimport { TaskRegistry } from '../task-registry'\n\nasync function WriteState(step, { logger, publish, data, domain, user, client }) {\n var {\n params: { name, accessor }\n } = step\n\n if (!name || !accessor) {\n throw Error(`name and accessor should be defined: name - '${name}', accessor - '${accessor}'`)\n }\n\n var state = access(accessor, data)\n\n var { data: mutateResult, errors } = await client.mutate({\n mutation: gql`\n mutation ($state: Object!, $name: String!) {\n updateStateRegisterByName(state: $state, name: $name) {\n state\n }\n }\n `,\n variables: {\n name,\n state\n },\n context: {\n state: {\n domain,\n user\n }\n }\n })\n\n if (errors) {\n errors.forEach(error => {\n logger.error('GraphQL Error: %s', error)\n })\n }\n\n return {\n data: mutateResult?.updateStateRegisterByName.state\n }\n}\n\nWriteState.parameterSpec = [\n {\n type: 'string',\n name: 'name',\n label: 'name'\n },\n {\n type: 'scenario-step-input',\n name: 'accessor',\n label: 'accessor'\n }\n]\n\nWriteState.connectorFree = true\nWriteState.help = 'integration/task/write-state'\n\nTaskRegistry.registerTaskHandler('write-state', WriteState)\n"]}