@things-factory/integration-base 4.0.21 → 4.0.22

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.
Files changed (175) hide show
  1. package/dist-server/engine/connector/socket-client.js +47 -0
  2. package/dist-server/engine/connector/socket-client.js.map +1 -0
  3. package/dist-server/engine/scenario-instance.js +283 -0
  4. package/dist-server/engine/scenario-instance.js.map +1 -0
  5. package/dist-server/entities/connection.js +102 -0
  6. package/dist-server/entities/connection.js.map +1 -0
  7. package/dist-server/entities/index.js +11 -0
  8. package/dist-server/entities/index.js.map +1 -0
  9. package/dist-server/entities/scenario-flow.js +37 -0
  10. package/dist-server/entities/scenario-flow.js.map +1 -0
  11. package/dist-server/entities/scenario.js +105 -0
  12. package/dist-server/entities/scenario.js.map +1 -0
  13. package/dist-server/entities/step.js +101 -0
  14. package/dist-server/entities/step.js.map +1 -0
  15. package/dist-server/graphql/index.js +30 -0
  16. package/dist-server/graphql/index.js.map +1 -0
  17. package/dist-server/graphql/resolvers/connection/connect-connection.js +19 -0
  18. package/dist-server/graphql/resolvers/connection/connect-connection.js.map +1 -0
  19. package/dist-server/graphql/resolvers/connection/connection-log.js +36 -0
  20. package/dist-server/graphql/resolvers/connection/connection-log.js.map +1 -0
  21. package/dist-server/graphql/resolvers/connection/connection-query.js +34 -0
  22. package/dist-server/graphql/resolvers/connection/connection-query.js.map +1 -0
  23. package/dist-server/graphql/resolvers/connection/connection-state.js +52 -0
  24. package/dist-server/graphql/resolvers/connection/connection-state.js.map +1 -0
  25. package/dist-server/graphql/resolvers/connection/create-connection.js +11 -0
  26. package/dist-server/graphql/resolvers/connection/create-connection.js.map +1 -0
  27. package/dist-server/graphql/resolvers/connection/delete-connection.js +12 -0
  28. package/dist-server/graphql/resolvers/connection/delete-connection.js.map +1 -0
  29. package/dist-server/graphql/resolvers/connection/delete-connections.js +16 -0
  30. package/dist-server/graphql/resolvers/connection/delete-connections.js.map +1 -0
  31. package/dist-server/graphql/resolvers/connection/disconnect-connection.js +20 -0
  32. package/dist-server/graphql/resolvers/connection/disconnect-connection.js.map +1 -0
  33. package/dist-server/graphql/resolvers/connection/fetch-connection-state.js +18 -0
  34. package/dist-server/graphql/resolvers/connection/fetch-connection-state.js.map +1 -0
  35. package/dist-server/graphql/resolvers/connection/index.js +36 -0
  36. package/dist-server/graphql/resolvers/connection/index.js.map +1 -0
  37. package/dist-server/graphql/resolvers/connection/update-connection.js +15 -0
  38. package/dist-server/graphql/resolvers/connection/update-connection.js.map +1 -0
  39. package/dist-server/graphql/resolvers/connection/update-multiple-connection.js +30 -0
  40. package/dist-server/graphql/resolvers/connection/update-multiple-connection.js.map +1 -0
  41. package/dist-server/graphql/resolvers/connector/connector.js +27 -0
  42. package/dist-server/graphql/resolvers/connector/connector.js.map +1 -0
  43. package/dist-server/graphql/resolvers/connector/connectors.js +28 -0
  44. package/dist-server/graphql/resolvers/connector/connectors.js.map +1 -0
  45. package/dist-server/graphql/resolvers/connector/index.js +27 -0
  46. package/dist-server/graphql/resolvers/connector/index.js.map +1 -0
  47. package/dist-server/graphql/resolvers/data/index.js +25 -0
  48. package/dist-server/graphql/resolvers/data/index.js.map +1 -0
  49. package/dist-server/graphql/resolvers/data/subscribe-data.js +34 -0
  50. package/dist-server/graphql/resolvers/data/subscribe-data.js.map +1 -0
  51. package/dist-server/graphql/resolvers/index.js +18 -0
  52. package/dist-server/graphql/resolvers/index.js.map +1 -0
  53. package/dist-server/graphql/resolvers/scenario/copy-scenarios.js +62 -0
  54. package/dist-server/graphql/resolvers/scenario/copy-scenarios.js.map +1 -0
  55. package/dist-server/graphql/resolvers/scenario/create-scenario.js +14 -0
  56. package/dist-server/graphql/resolvers/scenario/create-scenario.js.map +1 -0
  57. package/dist-server/graphql/resolvers/scenario/delete-scenario.js +12 -0
  58. package/dist-server/graphql/resolvers/scenario/delete-scenario.js.map +1 -0
  59. package/dist-server/graphql/resolvers/scenario/delete-scenarios.js +16 -0
  60. package/dist-server/graphql/resolvers/scenario/delete-scenarios.js.map +1 -0
  61. package/dist-server/graphql/resolvers/scenario/index.js +39 -0
  62. package/dist-server/graphql/resolvers/scenario/index.js.map +1 -0
  63. package/dist-server/graphql/resolvers/scenario/run-scenario.js +37 -0
  64. package/dist-server/graphql/resolvers/scenario/run-scenario.js.map +1 -0
  65. package/dist-server/graphql/resolvers/scenario/scenario-instance-log.js +41 -0
  66. package/dist-server/graphql/resolvers/scenario/scenario-instance-log.js.map +1 -0
  67. package/dist-server/graphql/resolvers/scenario/scenario-instance-query.js +44 -0
  68. package/dist-server/graphql/resolvers/scenario/scenario-instance-query.js.map +1 -0
  69. package/dist-server/graphql/resolvers/scenario/scenario-instance-state.js +50 -0
  70. package/dist-server/graphql/resolvers/scenario/scenario-instance-state.js.map +1 -0
  71. package/dist-server/graphql/resolvers/scenario/scenario-query.js +46 -0
  72. package/dist-server/graphql/resolvers/scenario/scenario-query.js.map +1 -0
  73. package/dist-server/graphql/resolvers/scenario/scenario-queue-state.js +42 -0
  74. package/dist-server/graphql/resolvers/scenario/scenario-queue-state.js.map +1 -0
  75. package/dist-server/graphql/resolvers/scenario/start-scenario.js +26 -0
  76. package/dist-server/graphql/resolvers/scenario/start-scenario.js.map +1 -0
  77. package/dist-server/graphql/resolvers/scenario/stop-scenario.js +26 -0
  78. package/dist-server/graphql/resolvers/scenario/stop-scenario.js.map +1 -0
  79. package/dist-server/graphql/resolvers/scenario/update-multiple-scenario.js +30 -0
  80. package/dist-server/graphql/resolvers/scenario/update-multiple-scenario.js.map +1 -0
  81. package/dist-server/graphql/resolvers/scenario/update-scenario.js +20 -0
  82. package/dist-server/graphql/resolvers/scenario/update-scenario.js.map +1 -0
  83. package/dist-server/graphql/resolvers/step/create-step.js +14 -0
  84. package/dist-server/graphql/resolvers/step/create-step.js.map +1 -0
  85. package/dist-server/graphql/resolvers/step/delete-step.js +12 -0
  86. package/dist-server/graphql/resolvers/step/delete-step.js.map +1 -0
  87. package/dist-server/graphql/resolvers/step/delete-steps.js +16 -0
  88. package/dist-server/graphql/resolvers/step/delete-steps.js.map +1 -0
  89. package/dist-server/graphql/resolvers/step/index.js +31 -0
  90. package/dist-server/graphql/resolvers/step/index.js.map +1 -0
  91. package/dist-server/graphql/resolvers/step/step-query.js +25 -0
  92. package/dist-server/graphql/resolvers/step/step-query.js.map +1 -0
  93. package/dist-server/graphql/resolvers/step/update-multiple-step.js +20 -0
  94. package/dist-server/graphql/resolvers/step/update-multiple-step.js.map +1 -0
  95. package/dist-server/graphql/resolvers/step/update-step.js +15 -0
  96. package/dist-server/graphql/resolvers/step/update-step.js.map +1 -0
  97. package/dist-server/graphql/resolvers/task-type/index.js +27 -0
  98. package/dist-server/graphql/resolvers/task-type/index.js.map +1 -0
  99. package/dist-server/graphql/resolvers/task-type/task-type.js +17 -0
  100. package/dist-server/graphql/resolvers/task-type/task-type.js.map +1 -0
  101. package/dist-server/graphql/resolvers/task-type/task-types.js +68 -0
  102. package/dist-server/graphql/resolvers/task-type/task-types.js.map +1 -0
  103. package/dist-server/graphql/resolvers/video/index.js +25 -0
  104. package/dist-server/graphql/resolvers/video/index.js.map +1 -0
  105. package/dist-server/graphql/resolvers/video/subscribe-video.js +20 -0
  106. package/dist-server/graphql/resolvers/video/subscribe-video.js.map +1 -0
  107. package/dist-server/graphql/types/connection/connection-list.js +14 -0
  108. package/dist-server/graphql/types/connection/connection-list.js.map +1 -0
  109. package/dist-server/graphql/types/connection/connection-patch.js +20 -0
  110. package/dist-server/graphql/types/connection/connection-patch.js.map +1 -0
  111. package/dist-server/graphql/types/connection/connection-state.js +24 -0
  112. package/dist-server/graphql/types/connection/connection-state.js.map +1 -0
  113. package/dist-server/graphql/types/connection/connection.js +25 -0
  114. package/dist-server/graphql/types/connection/connection.js.map +1 -0
  115. package/dist-server/graphql/types/connection/domain-connection.js +13 -0
  116. package/dist-server/graphql/types/connection/domain-connection.js.map +1 -0
  117. package/dist-server/graphql/types/connection/index.js +46 -0
  118. package/dist-server/graphql/types/connection/index.js.map +1 -0
  119. package/dist-server/graphql/types/connection/new-connection.js +17 -0
  120. package/dist-server/graphql/types/connection/new-connection.js.map +1 -0
  121. package/dist-server/graphql/types/connector/connector-list.js +14 -0
  122. package/dist-server/graphql/types/connector/connector-list.js.map +1 -0
  123. package/dist-server/graphql/types/connector/connector.js +17 -0
  124. package/dist-server/graphql/types/connector/connector.js.map +1 -0
  125. package/dist-server/graphql/types/connector/index.js +27 -0
  126. package/dist-server/graphql/types/connector/index.js.map +1 -0
  127. package/dist-server/graphql/types/data/data.js +15 -0
  128. package/dist-server/graphql/types/data/data.js.map +1 -0
  129. package/dist-server/graphql/types/data/index.js +24 -0
  130. package/dist-server/graphql/types/data/index.js.map +1 -0
  131. package/dist-server/graphql/types/index.js +19 -0
  132. package/dist-server/graphql/types/index.js.map +1 -0
  133. package/dist-server/graphql/types/property-spec.js +17 -0
  134. package/dist-server/graphql/types/property-spec.js.map +1 -0
  135. package/dist-server/graphql/types/scenario/domain-scenario.js +14 -0
  136. package/dist-server/graphql/types/scenario/domain-scenario.js.map +1 -0
  137. package/dist-server/graphql/types/scenario/index.js +53 -0
  138. package/dist-server/graphql/types/scenario/index.js.map +1 -0
  139. package/dist-server/graphql/types/scenario/new-scenario.js +18 -0
  140. package/dist-server/graphql/types/scenario/new-scenario.js.map +1 -0
  141. package/dist-server/graphql/types/scenario/pending-object.js +16 -0
  142. package/dist-server/graphql/types/scenario/pending-object.js.map +1 -0
  143. package/dist-server/graphql/types/scenario/scenario-instance-list.js +14 -0
  144. package/dist-server/graphql/types/scenario/scenario-instance-list.js.map +1 -0
  145. package/dist-server/graphql/types/scenario/scenario-instance.js +37 -0
  146. package/dist-server/graphql/types/scenario/scenario-instance.js.map +1 -0
  147. package/dist-server/graphql/types/scenario/scenario-list.js +14 -0
  148. package/dist-server/graphql/types/scenario/scenario-list.js.map +1 -0
  149. package/dist-server/graphql/types/scenario/scenario-patch.js +20 -0
  150. package/dist-server/graphql/types/scenario/scenario-patch.js.map +1 -0
  151. package/dist-server/graphql/types/scenario/scenario-queue-state.js +14 -0
  152. package/dist-server/graphql/types/scenario/scenario-queue-state.js.map +1 -0
  153. package/dist-server/graphql/types/scenario/scenario.js +27 -0
  154. package/dist-server/graphql/types/scenario/scenario.js.map +1 -0
  155. package/dist-server/graphql/types/step/index.js +36 -0
  156. package/dist-server/graphql/types/step/index.js.map +1 -0
  157. package/dist-server/graphql/types/step/new-step.js +20 -0
  158. package/dist-server/graphql/types/step/new-step.js.map +1 -0
  159. package/dist-server/graphql/types/step/step-list.js +14 -0
  160. package/dist-server/graphql/types/step/step-list.js.map +1 -0
  161. package/dist-server/graphql/types/step/step-patch.js +22 -0
  162. package/dist-server/graphql/types/step/step-patch.js.map +1 -0
  163. package/dist-server/graphql/types/step/step.js +27 -0
  164. package/dist-server/graphql/types/step/step.js.map +1 -0
  165. package/dist-server/graphql/types/task-type/index.js +27 -0
  166. package/dist-server/graphql/types/task-type/index.js.map +1 -0
  167. package/dist-server/graphql/types/task-type/task-type-list.js +14 -0
  168. package/dist-server/graphql/types/task-type/task-type-list.js.map +1 -0
  169. package/dist-server/graphql/types/task-type/task-type.js +17 -0
  170. package/dist-server/graphql/types/task-type/task-type.js.map +1 -0
  171. package/dist-server/graphql/types/video/index.js +24 -0
  172. package/dist-server/graphql/types/video/index.js.map +1 -0
  173. package/dist-server/graphql/types/video/video.js +17 -0
  174. package/dist-server/graphql/types/video/video.js.map +1 -0
  175. package/package.json +6 -6
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ exports.DataResolver = void 0;
23
+ const data = __importStar(require("./subscribe-data"));
24
+ exports.DataResolver = data;
25
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/data/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,uDAAwC;AAE3B,QAAA,YAAY,GAAG,IAAI,CAAA"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Subscription = void 0;
4
+ const shell_1 = require("@things-factory/shell");
5
+ const graphql_subscriptions_1 = require("graphql-subscriptions");
6
+ const debug = require('debug')('things-factory:integraton-base:subscribe-data');
7
+ exports.Subscription = {
8
+ data: {
9
+ subscribe: (_, args, context, info) => {
10
+ var _a;
11
+ const { domain, user } = context.state;
12
+ const { tag } = args;
13
+ const subdomain = domain === null || domain === void 0 ? void 0 : domain.subdomain;
14
+ debug('subscribe', subdomain, tag);
15
+ if (!domain || !tag) {
16
+ throw new Error('domain and tag required');
17
+ }
18
+ if (!((_a = user.domains) === null || _a === void 0 ? void 0 : _a.find(d => d.subdomain === subdomain))) {
19
+ throw new Error(`domain(${subdomain}) is not working for user(${user.email}).`);
20
+ }
21
+ return graphql_subscriptions_1.withFilter(() => shell_1.pubsub.asyncIterator('data'), (payload, variables, context, info) => {
22
+ const { domain: pdomain, tag } = payload.data;
23
+ if (tag !== variables.tag) {
24
+ return false;
25
+ }
26
+ if (subdomain !== (pdomain === null || pdomain === void 0 ? void 0 : pdomain.subdomain)) {
27
+ return false;
28
+ }
29
+ return true;
30
+ })(_, args, context, info);
31
+ }
32
+ }
33
+ };
34
+ //# sourceMappingURL=subscribe-data.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subscribe-data.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/data/subscribe-data.ts"],"names":[],"mappings":";;;AAAA,iDAA8C;AAC9C,iEAAkD;AAElD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,+CAA+C,CAAC,CAAA;AAElE,QAAA,YAAY,GAAG;IAC1B,IAAI,EAAE;QACJ,SAAS,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;;YACpC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;YACtC,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;YACpB,MAAM,SAAS,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,CAAA;YAEnC,KAAK,CAAC,WAAW,EAAE,SAAS,EAAE,GAAG,CAAC,CAAA;YAElC,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;aAC3C;YAED,IAAI,QAAC,IAAI,CAAC,OAAO,0CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,EAAC,EAAE;gBACvD,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,6BAA6B,IAAI,CAAC,KAAK,IAAI,CAAC,CAAA;aAChF;YAED,OAAO,kCAAU,CACf,GAAG,EAAE,CAAC,cAAM,CAAC,aAAa,CAAC,MAAM,CAAC,EAClC,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;gBACpC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAA;gBAE7C,IAAI,GAAG,KAAK,SAAS,CAAC,GAAG,EAAE;oBACzB,OAAO,KAAK,CAAA;iBACb;gBAED,IAAI,SAAS,MAAK,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,CAAA,EAAE;oBACpC,OAAO,KAAK,CAAA;iBACb;gBAED,OAAO,IAAI,CAAA;YACb,CAAC,CACF,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;QAC3B,CAAC;KACF;CACF,CAAA"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./connection"), exports);
14
+ __exportStar(require("./step"), exports);
15
+ __exportStar(require("./task-type"), exports);
16
+ __exportStar(require("./scenario"), exports);
17
+ __exportStar(require("./connector"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/graphql/resolvers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAA4B;AAC5B,yCAAsB;AACtB,8CAA2B;AAC3B,6CAA0B;AAC1B,8CAA2B"}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Mutation = void 0;
7
+ const typeorm_1 = require("typeorm");
8
+ const entities_1 = require("../../../entities");
9
+ const engine_1 = require("../../../engine");
10
+ const types_1 = require("../../../engine/types");
11
+ const v4_1 = __importDefault(require("uuid/v4"));
12
+ exports.Mutation = {
13
+ async copyScenarios(_, { ids }, context) {
14
+ const { domain, user, tx } = context.state;
15
+ const originals = await tx.getRepository(entities_1.Scenario).find({
16
+ where: {
17
+ id: typeorm_1.In(ids),
18
+ domain
19
+ },
20
+ relations: ['domain', 'steps']
21
+ });
22
+ if (originals.length == 0)
23
+ return false;
24
+ var newSteps = [];
25
+ var newCopys = originals.map(scenario => {
26
+ let scenarioId = v4_1.default();
27
+ newSteps.push(...scenario.steps.map(step => {
28
+ return {
29
+ scenario: scenarioId,
30
+ name: step.name,
31
+ description: step.description,
32
+ sequence: step.sequence,
33
+ task: step.task,
34
+ connection: step.connection,
35
+ params: step.params,
36
+ domain,
37
+ creator: user,
38
+ updater: user
39
+ };
40
+ }));
41
+ return {
42
+ id: scenarioId,
43
+ name: scenario.name + ' (' + scenarioId + ')',
44
+ type: scenario.type,
45
+ description: scenario.description,
46
+ active: false,
47
+ schedule: scenario.schedule,
48
+ timezone: scenario.timezone,
49
+ domain,
50
+ creator: user,
51
+ updater: user
52
+ };
53
+ });
54
+ var copiedScenarios = await tx.getRepository(entities_1.Scenario).save(newCopys);
55
+ var copiedSteps = await tx.getRepository(entities_1.Step).save(newSteps);
56
+ return copiedScenarios.map(scenario => {
57
+ scenario.steps = copiedSteps.filter(step => step.scenario == scenario.id);
58
+ return Object.assign(Object.assign({}, scenario), { state: engine_1.ScenarioInstanceStatus[types_1.SCENARIO_STATE.UNLOADED] });
59
+ });
60
+ }
61
+ };
62
+ //# sourceMappingURL=copy-scenarios.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"copy-scenarios.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/scenario/copy-scenarios.ts"],"names":[],"mappings":";;;;;;AAAA,qCAA4B;AAC5B,gDAAkD;AAClD,4CAAwD;AACxD,iDAAsD;AAEtD,iDAA0B;AAEb,QAAA,QAAQ,GAAG;IACtB,KAAK,CAAC,aAAa,CAAC,CAAM,EAAE,EAAE,GAAG,EAAE,EAAE,OAAY;QAC/C,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAE1C,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAC,IAAI,CAAC;YACtD,KAAK,EAAE;gBACL,EAAE,EAAE,YAAE,CAAC,GAAG,CAAC;gBACX,MAAM;aACP;YACD,SAAS,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;SAC/B,CAAC,CAAA;QAEF,IAAI,SAAS,CAAC,MAAM,IAAI,CAAC;YAAE,OAAO,KAAK,CAAA;QAEvC,IAAI,QAAQ,GAAG,EAAE,CAAA;QAEjB,IAAI,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;YACtC,IAAI,UAAU,GAAG,YAAI,EAAE,CAAA;YACvB,QAAQ,CAAC,IAAI,CACX,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBAC3B,OAAO;oBACL,QAAQ,EAAE,UAAU;oBACpB,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,UAAU,EAAE,IAAI,CAAC,UAAU;oBAC3B,MAAM,EAAE,IAAI,CAAC,MAAM;oBAEnB,MAAM;oBACN,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,IAAI;iBACd,CAAA;YACH,CAAC,CAAC,CACH,CAAA;YAED,OAAO;gBACL,EAAE,EAAE,UAAU;gBACd,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,GAAG,UAAU,GAAG,GAAG;gBAC7C,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,WAAW,EAAE,QAAQ,CAAC,WAAW;gBACjC,MAAM,EAAE,KAAK;gBACb,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAE3B,MAAM;gBACN,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,IAAI;aACd,CAAA;QACH,CAAC,CAAC,CAAA;QAEF,IAAI,eAAe,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACrE,IAAI,WAAW,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,eAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAE7D,OAAO,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;YACpC,QAAQ,CAAC,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,EAAE,CAAC,CAAA;YACzE,uCACK,QAAQ,KACX,KAAK,EAAE,+BAAsB,CAAC,sBAAc,CAAC,QAAQ,CAAC,IACvD;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;CACF,CAAA"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Mutation = void 0;
4
+ const entities_1 = require("../../../entities");
5
+ const engine_1 = require("../../../engine");
6
+ const types_1 = require("../../../engine/types");
7
+ exports.Mutation = {
8
+ async createScenario(_, { scenario }, context) {
9
+ const { domain, user, tx } = context.state;
10
+ const saved = await tx.getRepository(entities_1.Scenario).save(Object.assign(Object.assign({}, scenario), { domain, creator: user, updater: user }));
11
+ return Object.assign(Object.assign({}, saved), { state: engine_1.ScenarioInstanceStatus[types_1.SCENARIO_STATE.UNLOADED] });
12
+ }
13
+ };
14
+ //# sourceMappingURL=create-scenario.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-scenario.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/scenario/create-scenario.ts"],"names":[],"mappings":";;;AAAA,gDAA4C;AAC5C,4CAAwD;AACxD,iDAAsD;AAEzC,QAAA,QAAQ,GAAG;IACtB,KAAK,CAAC,cAAc,CAAC,CAAM,EAAE,EAAE,QAAQ,EAAE,EAAE,OAAY;QACrD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAE1C,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAC,IAAI,iCAC9C,QAAQ,KACX,MAAM,EACN,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,IAAI,IACb,CAAA;QAEF,uCACK,KAAK,KACR,KAAK,EAAE,+BAAsB,CAAC,sBAAc,CAAC,QAAQ,CAAC,IACvD;IACH,CAAC;CACF,CAAA"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Mutation = void 0;
4
+ const entities_1 = require("../../../entities");
5
+ exports.Mutation = {
6
+ async deleteScenario(_, { name }, context) {
7
+ const { domain, tx } = context.state;
8
+ await tx.getRepository(entities_1.Scenario).delete({ domain, name });
9
+ return true;
10
+ }
11
+ };
12
+ //# sourceMappingURL=delete-scenario.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-scenario.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/scenario/delete-scenario.ts"],"names":[],"mappings":";;;AAAA,gDAA4C;AAE/B,QAAA,QAAQ,GAAG;IACtB,KAAK,CAAC,cAAc,CAAC,CAAM,EAAE,EAAE,IAAI,EAAE,EAAE,OAAY;QACjD,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEpC,MAAM,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;QAEzD,OAAO,IAAI,CAAA;IACb,CAAC;CACF,CAAA"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Mutation = void 0;
4
+ const typeorm_1 = require("typeorm");
5
+ const entities_1 = require("../../../entities");
6
+ exports.Mutation = {
7
+ async deleteScenarios(_, { ids }, context) {
8
+ const { domain, tx } = context.state;
9
+ await tx.getRepository(entities_1.Scenario).delete({
10
+ domain,
11
+ id: typeorm_1.In(ids)
12
+ });
13
+ return true;
14
+ }
15
+ };
16
+ //# sourceMappingURL=delete-scenarios.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-scenarios.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/scenario/delete-scenarios.ts"],"names":[],"mappings":";;;AAAA,qCAA4B;AAC5B,gDAA4C;AAE/B,QAAA,QAAQ,GAAG;IACtB,KAAK,CAAC,eAAe,CAAC,CAAM,EAAE,EAAE,GAAG,EAAE,EAAE,OAAY;QACjD,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEpC,MAAM,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAC,MAAM,CAAC;YACtC,MAAM;YACN,EAAE,EAAE,YAAE,CAAC,GAAG,CAAC;SACZ,CAAC,CAAA;QAEF,OAAO,IAAI,CAAA;IACb,CAAC;CACF,CAAA"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ exports.ScenarioResolver = void 0;
23
+ const scenarioQuery = __importStar(require("./scenario-query"));
24
+ const updateScenario = __importStar(require("./update-scenario"));
25
+ const updateMultipleScenario = __importStar(require("./update-multiple-scenario"));
26
+ const createScenario = __importStar(require("./create-scenario"));
27
+ const deleteScenario = __importStar(require("./delete-scenario"));
28
+ const deleteScenarios = __importStar(require("./delete-scenarios"));
29
+ const copyScenarios = __importStar(require("./copy-scenarios"));
30
+ const startScenario = __importStar(require("./start-scenario"));
31
+ const stopScenario = __importStar(require("./stop-scenario"));
32
+ const runScenario = __importStar(require("./run-scenario"));
33
+ const scenarioInstanceResolver = __importStar(require("./scenario-instance-query"));
34
+ const scenarioInstanceState = __importStar(require("./scenario-instance-state"));
35
+ const scenarioInstanceLog = __importStar(require("./scenario-instance-log"));
36
+ const scenarioQueueState = __importStar(require("./scenario-queue-state"));
37
+ const utils_1 = require("@things-factory/utils");
38
+ exports.ScenarioResolver = utils_1.deepMerge(scenarioQuery, scenarioInstanceResolver, updateScenario, updateMultipleScenario, createScenario, deleteScenario, deleteScenarios, copyScenarios, startScenario, stopScenario, runScenario, scenarioInstanceState, scenarioInstanceLog, scenarioQueueState);
39
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/scenario/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,gEAAiD;AAEjD,kEAAmD;AACnD,mFAAoE;AACpE,kEAAmD;AACnD,kEAAmD;AACnD,oEAAqD;AACrD,gEAAiD;AAEjD,gEAAiD;AACjD,8DAA+C;AAC/C,4DAA6C;AAE7C,oFAAqE;AACrE,iFAAkE;AAClE,6EAA8D;AAE9D,2EAA4D;AAE5D,iDAAiD;AAEpC,QAAA,gBAAgB,GAAG,iBAAS,CACvC,aAAa,EACb,wBAAwB,EACxB,cAAc,EACd,sBAAsB,EACtB,cAAc,EACd,cAAc,EACd,eAAe,EACf,aAAa,EACb,aAAa,EACb,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,CACnB,CAAA"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Mutation = void 0;
4
+ const typeorm_1 = require("typeorm");
5
+ const shell_1 = require("@things-factory/shell");
6
+ const entities_1 = require("../../../entities");
7
+ const engine_1 = require("../../../engine");
8
+ const debug = require('debug')('things-factory:integration-base:run-scenario');
9
+ /**
10
+ * 동기적인 시나리오 호출
11
+ * 호출된 시나리오가 종료된 후 그 결과를 리턴한다.
12
+ */
13
+ exports.Mutation = {
14
+ async runScenario(_, { instanceName, scenarioName, variables }, context) {
15
+ const { domain } = context.state;
16
+ debug(scenarioName, instanceName, variables);
17
+ var repository = typeorm_1.getRepository(entities_1.Scenario);
18
+ var scenario = await repository.findOne({
19
+ where: { domain, name: scenarioName },
20
+ relations: ['domain', 'steps', 'creator', 'updater']
21
+ });
22
+ if (!scenario) {
23
+ throw new Error(context.t('error.scenario not found', {
24
+ scenario: scenarioName
25
+ }));
26
+ }
27
+ /* 시나리오 인스턴스를 생성한다. */
28
+ instanceName = instanceName || scenarioName + '-' + String(Date.now());
29
+ var instance = new engine_1.ScenarioInstance(instanceName, scenario, {
30
+ variables,
31
+ client: shell_1.GraphqlLocalClient.client
32
+ });
33
+ await instance.run();
34
+ return instance;
35
+ }
36
+ };
37
+ //# sourceMappingURL=run-scenario.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-scenario.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/scenario/run-scenario.ts"],"names":[],"mappings":";;;AAAA,qCAAuC;AACvC,iDAA0D;AAC1D,gDAA4C;AAC5C,4CAA0E;AAE1E,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,8CAA8C,CAAC,CAAA;AAE9E;;;GAGG;AACU,QAAA,QAAQ,GAAG;IACtB,KAAK,CAAC,WAAW,CAAC,CAAM,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,OAAY;QAC/E,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,KAAK,CAAC,YAAY,EAAE,YAAY,EAAE,SAAS,CAAC,CAAA;QAE5C,IAAI,UAAU,GAAG,uBAAa,CAAC,mBAAQ,CAAC,CAAA;QACxC,IAAI,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;YACtC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE;YACrC,SAAS,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC;SACrD,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,KAAK,CACb,OAAO,CAAC,CAAC,CAAC,0BAA0B,EAAE;gBACpC,QAAQ,EAAE,YAAY;aACvB,CAAC,CACH,CAAA;SACF;QAED,sBAAsB;QACtB,YAAY,GAAG,YAAY,IAAI,YAAY,GAAG,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;QACtE,IAAI,QAAQ,GAAG,IAAI,yBAAgB,CAAC,YAAY,EAAE,QAAQ,EAAE;YAC1D,SAAS;YACT,MAAM,EAAE,0BAAkB,CAAC,MAAM;SAClC,CAAC,CAAA;QACF,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAA;QAEpB,OAAO,QAAQ,CAAA;IACjB,CAAC;CACF,CAAA"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Subscription = void 0;
4
+ const shell_1 = require("@things-factory/shell");
5
+ const graphql_subscriptions_1 = require("graphql-subscriptions");
6
+ const debug = require('debug')('things-factory:integraton-base:scenario-instance-log');
7
+ exports.Subscription = {
8
+ scenarioInstanceLog: {
9
+ subscribe: (_, args, context, info) => {
10
+ var _a;
11
+ const { domain, user } = context.state;
12
+ const { instanceName, scenarioName, level } = args;
13
+ const subdomain = domain === null || domain === void 0 ? void 0 : domain.subdomain;
14
+ debug('subscribe', subdomain, scenarioName, instanceName);
15
+ if (!domain) {
16
+ throw new Error('domain required');
17
+ }
18
+ if (!((_a = user.domains) === null || _a === void 0 ? void 0 : _a.find(d => d.subdomain === subdomain))) {
19
+ throw new Error(`domain(${subdomain}) is not working for user(${user.email}).`);
20
+ }
21
+ return graphql_subscriptions_1.withFilter(() => shell_1.pubsub.asyncIterator('scenario-instance-log'), (payload, variables, context, info) => {
22
+ const { source, level: plevel } = payload.scenarioInstanceLog;
23
+ const { domain: pdomain, scenarioName: pscenarioName, instanceName: pinstanceName } = source;
24
+ if (subdomain !== (pdomain === null || pdomain === void 0 ? void 0 : pdomain.subdomain)) {
25
+ return false;
26
+ }
27
+ if (scenarioName && pscenarioName !== scenarioName) {
28
+ return false;
29
+ }
30
+ if (instanceName && pinstanceName !== instanceName) {
31
+ return false;
32
+ }
33
+ if (level && level !== plevel) {
34
+ return false;
35
+ }
36
+ return true;
37
+ })(_, args, context, info);
38
+ }
39
+ }
40
+ };
41
+ //# sourceMappingURL=scenario-instance-log.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scenario-instance-log.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/scenario/scenario-instance-log.ts"],"names":[],"mappings":";;;AAAA,iDAA8C;AAC9C,iEAAkD;AAElD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,sDAAsD,CAAC,CAAA;AAEzE,QAAA,YAAY,GAAG;IAC1B,mBAAmB,EAAE;QACnB,SAAS,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;;YACpC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;YACtC,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,IAAI,CAAA;YAClD,MAAM,SAAS,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,CAAA;YAEnC,KAAK,CAAC,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,CAAC,CAAA;YAEzD,IAAI,CAAC,MAAM,EAAE;gBACX,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;aACnC;YAED,IAAI,QAAC,IAAI,CAAC,OAAO,0CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,EAAC,EAAE;gBACvD,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,6BAA6B,IAAI,CAAC,KAAK,IAAI,CAAC,CAAA;aAChF;YAED,OAAO,kCAAU,CACf,GAAG,EAAE,CAAC,cAAM,CAAC,aAAa,CAAC,uBAAuB,CAAC,EACnD,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;gBACpC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,mBAAmB,CAAA;gBAC7D,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,MAAM,CAAA;gBAE5F,IAAI,SAAS,MAAK,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,CAAA,EAAE;oBACpC,OAAO,KAAK,CAAA;iBACb;gBAED,IAAI,YAAY,IAAI,aAAa,KAAK,YAAY,EAAE;oBAClD,OAAO,KAAK,CAAA;iBACb;gBAED,IAAI,YAAY,IAAI,aAAa,KAAK,YAAY,EAAE;oBAClD,OAAO,KAAK,CAAA;iBACb;gBAED,IAAI,KAAK,IAAI,KAAK,KAAK,MAAM,EAAE;oBAC7B,OAAO,KAAK,CAAA;iBACb;gBAED,OAAO,IAAI,CAAA;YACb,CAAC,CACF,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;QAC3B,CAAC;KACF;CACF,CAAA"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ScenarioInstance = exports.Query = void 0;
4
+ const engine_1 = require("../../../engine");
5
+ const shell_1 = require("@things-factory/shell");
6
+ exports.Query = {
7
+ scenarioInstance(_, { instanceName }, context) {
8
+ const { domain } = context.state;
9
+ return engine_1.ScenarioEngine.getScenarioInstance(domain, instanceName);
10
+ },
11
+ scenarioInstances(_, params, context) {
12
+ const { domain } = context.state;
13
+ var scenarioInstances = engine_1.ScenarioEngine.getScenarioInstances(domain);
14
+ /* IMPLEMENT-ME 검색 기능.. */
15
+ const convertedParams = shell_1.convertListParams(params, domain.id);
16
+ var items = scenarioInstances;
17
+ return {
18
+ items,
19
+ total: items.length
20
+ };
21
+ }
22
+ };
23
+ exports.ScenarioInstance = {
24
+ async root(instance) {
25
+ var _a;
26
+ return (_a = instance.context) === null || _a === void 0 ? void 0 : _a.root;
27
+ },
28
+ async state(instance) {
29
+ var _a;
30
+ return engine_1.ScenarioInstanceStatus[(_a = instance.context) === null || _a === void 0 ? void 0 : _a.state];
31
+ },
32
+ async variables(instance) {
33
+ var _a;
34
+ return (_a = instance.context) === null || _a === void 0 ? void 0 : _a.variables;
35
+ },
36
+ async data(instance) {
37
+ var _a;
38
+ return (_a = instance.context) === null || _a === void 0 ? void 0 : _a.data;
39
+ },
40
+ async timestamp(instance) {
41
+ return String(Date.now());
42
+ }
43
+ };
44
+ //# sourceMappingURL=scenario-instance-query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scenario-instance-query.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/scenario/scenario-instance-query.ts"],"names":[],"mappings":";;;AAAA,4CAAwE;AACxE,iDAAoE;AAEvD,QAAA,KAAK,GAAG;IACnB,gBAAgB,CAAC,CAAM,EAAE,EAAE,YAAY,EAAE,EAAE,OAAY;QACrD,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,OAAO,uBAAc,CAAC,mBAAmB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;IACjE,CAAC;IAED,iBAAiB,CAAC,CAAM,EAAE,MAAiB,EAAE,OAAY;QACvD,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,IAAI,iBAAiB,GAAG,uBAAc,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAA;QACnE,0BAA0B;QAC1B,MAAM,eAAe,GAAG,yBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAA;QAE5D,IAAI,KAAK,GAAG,iBAAiB,CAAA;QAE7B,OAAO;YACL,KAAK;YACL,KAAK,EAAE,KAAK,CAAC,MAAM;SACpB,CAAA;IACH,CAAC;CACF,CAAA;AAEY,QAAA,gBAAgB,GAAG;IAC9B,KAAK,CAAC,IAAI,CAAC,QAAQ;;QACjB,aAAO,QAAQ,CAAC,OAAO,0CAAE,IAAI,CAAA;IAC/B,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,QAAQ;;QAClB,OAAO,+BAAsB,OAAC,QAAQ,CAAC,OAAO,0CAAE,KAAK,CAAC,CAAA;IACxD,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,QAAQ;;QACtB,aAAO,QAAQ,CAAC,OAAO,0CAAE,SAAS,CAAA;IACpC,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,QAAQ;;QACjB,aAAO,QAAQ,CAAC,OAAO,0CAAE,IAAI,CAAA;IAC/B,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,QAAQ;QACtB,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;IAC3B,CAAC;CACF,CAAA"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Subscription = void 0;
4
+ const shell_1 = require("@things-factory/shell");
5
+ const graphql_subscriptions_1 = require("graphql-subscriptions");
6
+ const engine_1 = require("../../../engine");
7
+ const debug = require('debug')('things-factory:integraton-base:scenario-instance-state');
8
+ exports.Subscription = {
9
+ scenarioInstanceState: {
10
+ subscribe: (_, args, context, info) => {
11
+ var _a;
12
+ const { domain, user } = context.state;
13
+ const { instanceName, scenarioName } = args;
14
+ const subdomain = domain === null || domain === void 0 ? void 0 : domain.subdomain;
15
+ debug('subscribe', subdomain, scenarioName, instanceName);
16
+ if (!domain) {
17
+ throw new Error('domain required');
18
+ }
19
+ if (!((_a = user.domains) === null || _a === void 0 ? void 0 : _a.find(d => d.subdomain === subdomain))) {
20
+ throw new Error(`domain(${subdomain}) is not working for user(${user.email}).`);
21
+ }
22
+ process.nextTick(() => {
23
+ engine_1.ScenarioEngine.getScenarioInstances(domain)
24
+ .filter(instance => {
25
+ return ((!instanceName || instance.instanceName === instanceName) &&
26
+ (!scenarioName || instance.scenarioName === scenarioName));
27
+ })
28
+ .forEach(instance => {
29
+ shell_1.pubsub.publish('scenario-instance-state', {
30
+ scenarioInstanceState: instance.serialize()
31
+ });
32
+ });
33
+ });
34
+ return graphql_subscriptions_1.withFilter(() => shell_1.pubsub.asyncIterator('scenario-instance-state'), (payload, variables, context, info) => {
35
+ const { domain: pdomain, scenarioName: pscenarioName, instanceName: pinstanceName } = payload.scenarioInstanceState;
36
+ if (subdomain !== (pdomain === null || pdomain === void 0 ? void 0 : pdomain.subdomain)) {
37
+ return false;
38
+ }
39
+ if (scenarioName && pscenarioName !== scenarioName) {
40
+ return false;
41
+ }
42
+ if (instanceName && pinstanceName !== instanceName) {
43
+ return false;
44
+ }
45
+ return true;
46
+ })(_, args, context, info);
47
+ }
48
+ }
49
+ };
50
+ //# sourceMappingURL=scenario-instance-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scenario-instance-state.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/scenario/scenario-instance-state.ts"],"names":[],"mappings":";;;AAAA,iDAA8C;AAC9C,iEAAkD;AAElD,4CAAgD;AAEhD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,wDAAwD,CAAC,CAAA;AAE3E,QAAA,YAAY,GAAG;IAC1B,qBAAqB,EAAE;QACrB,SAAS,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;;YACpC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;YACtC,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,IAAI,CAAA;YAC3C,MAAM,SAAS,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,CAAA;YAEnC,KAAK,CAAC,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,CAAC,CAAA;YAEzD,IAAI,CAAC,MAAM,EAAE;gBACX,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;aACnC;YAED,IAAI,QAAC,IAAI,CAAC,OAAO,0CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,EAAC,EAAE;gBACvD,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,6BAA6B,IAAI,CAAC,KAAK,IAAI,CAAC,CAAA;aAChF;YAED,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE;gBACpB,uBAAc,CAAC,oBAAoB,CAAC,MAAM,CAAC;qBACxC,MAAM,CAAC,QAAQ,CAAC,EAAE;oBACjB,OAAO,CACL,CAAC,CAAC,YAAY,IAAI,QAAQ,CAAC,YAAY,KAAK,YAAY,CAAC;wBACzD,CAAC,CAAC,YAAY,IAAI,QAAQ,CAAC,YAAY,KAAK,YAAY,CAAC,CAC1D,CAAA;gBACH,CAAC,CAAC;qBACD,OAAO,CAAC,QAAQ,CAAC,EAAE;oBAClB,cAAM,CAAC,OAAO,CAAC,yBAAyB,EAAE;wBACxC,qBAAqB,EAAE,QAAQ,CAAC,SAAS,EAAE;qBAC5C,CAAC,CAAA;gBACJ,CAAC,CAAC,CAAA;YACN,CAAC,CAAC,CAAA;YAEF,OAAO,kCAAU,CACf,GAAG,EAAE,CAAC,cAAM,CAAC,aAAa,CAAC,yBAAyB,CAAC,EACrD,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;gBACpC,MAAM,EACJ,MAAM,EAAE,OAAO,EACf,YAAY,EAAE,aAAa,EAC3B,YAAY,EAAE,aAAa,EAC5B,GAAG,OAAO,CAAC,qBAAqB,CAAA;gBAEjC,IAAI,SAAS,MAAK,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,CAAA,EAAE;oBACpC,OAAO,KAAK,CAAA;iBACb;gBAED,IAAI,YAAY,IAAI,aAAa,KAAK,YAAY,EAAE;oBAClD,OAAO,KAAK,CAAA;iBACb;gBAED,IAAI,YAAY,IAAI,aAAa,KAAK,YAAY,EAAE;oBAClD,OAAO,KAAK,CAAA;iBACb;gBAED,OAAO,IAAI,CAAA;YACb,CAAC,CACF,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;QAC3B,CAAC;KACF;CACF,CAAA"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Domain = exports.Scenario = exports.Query = void 0;
4
+ const typeorm_1 = require("typeorm");
5
+ const shell_1 = require("@things-factory/shell");
6
+ const entities_1 = require("../../../entities");
7
+ const engine_1 = require("../../../engine");
8
+ exports.Query = {
9
+ async scenario(_, { id }, context) {
10
+ const { domain } = context.state;
11
+ return await typeorm_1.getRepository(entities_1.Scenario).findOne({
12
+ where: { domain, id },
13
+ relations: ['domain', 'creator', 'updater']
14
+ });
15
+ },
16
+ async scenarios(_, params, context) {
17
+ const { domain } = context.state;
18
+ const convertedParams = shell_1.convertListParams(params, domain.id);
19
+ const [items, total] = await typeorm_1.getRepository(entities_1.Scenario).findAndCount(Object.assign(Object.assign({}, convertedParams), { relations: ['domain', 'creator', 'updater'] }));
20
+ return { items, total };
21
+ }
22
+ };
23
+ exports.Scenario = {
24
+ async steps(scenario, {}, context) {
25
+ const { domain } = context.state;
26
+ return await typeorm_1.getRepository(entities_1.Step).find({
27
+ where: { domain, scenario }
28
+ });
29
+ },
30
+ async state(scenario) {
31
+ var _a;
32
+ var instance = engine_1.ScenarioEngine.getScenarioInstance(scenario.domain, scenario.name);
33
+ return instance && engine_1.ScenarioInstanceStatus[(_a = instance.context) === null || _a === void 0 ? void 0 : _a.state];
34
+ },
35
+ async instances(scenario, {}, context) {
36
+ return engine_1.ScenarioEngine.getScenarioInstances(scenario.domain, scenario.name);
37
+ }
38
+ };
39
+ exports.Domain = {
40
+ async scenarios(domain, {}, context) {
41
+ return await typeorm_1.getRepository(entities_1.Scenario).find({
42
+ where: { domain }
43
+ });
44
+ }
45
+ };
46
+ //# sourceMappingURL=scenario-query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scenario-query.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/scenario/scenario-query.ts"],"names":[],"mappings":";;;AAAA,qCAAuC;AACvC,iDAAoE;AACpE,gDAAoE;AACpE,4CAAwE;AAE3D,QAAA,KAAK,GAAG;IACnB,KAAK,CAAC,QAAQ,CAAC,CAAM,EAAE,EAAE,EAAE,EAAE,EAAE,OAAY;QACzC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,OAAO,MAAM,uBAAa,CAAC,mBAAc,CAAC,CAAC,OAAO,CAAC;YACjD,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YACrB,SAAS,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC;SAC5C,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,CAAM,EAAE,MAAiB,EAAE,OAAY;QACrD,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,MAAM,eAAe,GAAG,yBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAA;QAC5D,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,uBAAa,CAAC,mBAAc,CAAC,CAAC,YAAY,iCAClE,eAAe,KAClB,SAAS,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,IAC3C,CAAA;QAEF,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IACzB,CAAC;CACF,CAAA;AAEY,QAAA,QAAQ,GAAG;IACtB,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE,OAAY;QACpC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,OAAO,MAAM,uBAAa,CAAC,eAAI,CAAC,CAAC,IAAI,CAAC;YACpC,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE;SAC5B,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,QAAQ;;QAClB,IAAI,QAAQ,GAAG,uBAAc,CAAC,mBAAmB,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAA;QACjF,OAAO,QAAQ,IAAI,+BAAsB,OAAC,QAAQ,CAAC,OAAO,0CAAE,KAAK,CAAC,CAAA;IACpE,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,EAAE,OAAY;QACxC,OAAO,uBAAc,CAAC,oBAAoB,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC5E,CAAC;CACF,CAAA;AAEY,QAAA,MAAM,GAAG;IACpB,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,EAAE,OAAY;QACtC,OAAO,MAAM,uBAAa,CAAC,mBAAc,CAAC,CAAC,IAAI,CAAC;YAC9C,KAAK,EAAE,EAAE,MAAM,EAAE;SAClB,CAAC,CAAA;IACJ,CAAC;CACF,CAAA"}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Subscription = void 0;
4
+ const shell_1 = require("@things-factory/shell");
5
+ const graphql_subscriptions_1 = require("graphql-subscriptions");
6
+ const engine_1 = require("../../../engine");
7
+ const debug = require('debug')('things-factory:integraton-base:scenario-queue-state');
8
+ exports.Subscription = {
9
+ scenarioQueueState: {
10
+ subscribe: (_, args, context, info) => {
11
+ var _a;
12
+ const { domain, user } = context.state;
13
+ const subdomain = domain === null || domain === void 0 ? void 0 : domain.subdomain;
14
+ debug('subscribe', subdomain);
15
+ if (!domain) {
16
+ throw new Error('domain required.');
17
+ }
18
+ if (!((_a = user.domains) === null || _a === void 0 ? void 0 : _a.find(d => d.subdomain === subdomain))) {
19
+ throw new Error(`domain(${subdomain}) is not working for user(${user.email}).`);
20
+ }
21
+ process.nextTick(async () => {
22
+ var queue = engine_1.ScenarioEngine.getPendingQueue(domain);
23
+ if (queue) {
24
+ shell_1.pubsub.publish('scenario-queue-state', {
25
+ scenarioQueueState: {
26
+ domain,
27
+ queue: queue.queue
28
+ }
29
+ });
30
+ }
31
+ });
32
+ return graphql_subscriptions_1.withFilter(() => shell_1.pubsub.asyncIterator('scenario-queue-state'), (payload, variables, context, info) => {
33
+ const { domain: pdomain } = payload.scenarioQueueState;
34
+ if ((pdomain === null || pdomain === void 0 ? void 0 : pdomain.subdomain) !== subdomain) {
35
+ return false;
36
+ }
37
+ return true;
38
+ })(_, args, context, info);
39
+ }
40
+ }
41
+ };
42
+ //# sourceMappingURL=scenario-queue-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scenario-queue-state.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/scenario/scenario-queue-state.ts"],"names":[],"mappings":";;;AAAA,iDAA8C;AAC9C,iEAAkD;AAElD,4CAAgD;AAEhD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,qDAAqD,CAAC,CAAA;AAExE,QAAA,YAAY,GAAG;IAC1B,kBAAkB,EAAE;QAClB,SAAS,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;;YACpC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;YACtC,MAAM,SAAS,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,CAAA;YAEnC,KAAK,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;YAE7B,IAAI,CAAC,MAAM,EAAE;gBACX,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAA;aACpC;YAED,IAAI,QAAC,IAAI,CAAC,OAAO,0CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,EAAC,EAAE;gBACvD,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,6BAA6B,IAAI,CAAC,KAAK,IAAI,CAAC,CAAA;aAChF;YAED,OAAO,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE;gBAC1B,IAAI,KAAK,GAAG,uBAAc,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;gBAClD,IAAI,KAAK,EAAE;oBACT,cAAM,CAAC,OAAO,CAAC,sBAAsB,EAAE;wBACrC,kBAAkB,EAAE;4BAClB,MAAM;4BACN,KAAK,EAAE,KAAK,CAAC,KAAK;yBACnB;qBACF,CAAC,CAAA;iBACH;YACH,CAAC,CAAC,CAAA;YAEF,OAAO,kCAAU,CACf,GAAG,EAAE,CAAC,cAAM,CAAC,aAAa,CAAC,sBAAsB,CAAC,EAClD,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;gBACpC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAA;gBAEtD,IAAI,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,MAAK,SAAS,EAAE;oBACpC,OAAO,KAAK,CAAA;iBACb;gBAED,OAAO,IAAI,CAAA;YACb,CAAC,CACF,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;QAC3B,CAAC;KACF;CACF,CAAA"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Mutation = void 0;
4
+ const typeorm_1 = require("typeorm");
5
+ const entities_1 = require("../../../entities");
6
+ const engine_1 = require("../../../engine");
7
+ const debug = require('debug')('things-factory:integration-base:start-scenario');
8
+ exports.Mutation = {
9
+ async startScenario(_, { instanceName, scenarioName, variables }, context) {
10
+ const { domain } = context.state;
11
+ debug(instanceName, scenarioName, variables);
12
+ var repository = typeorm_1.getRepository(entities_1.Scenario);
13
+ var scenario = await repository.findOne({
14
+ where: { domain, name: scenarioName },
15
+ relations: ['domain', 'steps', 'creator', 'updater']
16
+ });
17
+ if (!scenario) {
18
+ throw new Error(context.t('error.scenario not found', {
19
+ scenario: scenarioName
20
+ }));
21
+ }
22
+ instanceName = instanceName || scenarioName;
23
+ return await engine_1.ScenarioEngine.load(instanceName, scenario, { variables });
24
+ }
25
+ };
26
+ //# sourceMappingURL=start-scenario.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"start-scenario.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/scenario/start-scenario.ts"],"names":[],"mappings":";;;AAAA,qCAAuC;AACvC,gDAA4C;AAC5C,4CAAgD;AAEhD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,gDAAgD,CAAC,CAAA;AAEnE,QAAA,QAAQ,GAAG;IACtB,KAAK,CAAC,aAAa,CAAC,CAAM,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,OAAY;QACjF,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,KAAK,CAAC,YAAY,EAAE,YAAY,EAAE,SAAS,CAAC,CAAA;QAE5C,IAAI,UAAU,GAAG,uBAAa,CAAC,mBAAQ,CAAC,CAAA;QACxC,IAAI,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;YACtC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE;YACrC,SAAS,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC;SACrD,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,KAAK,CACb,OAAO,CAAC,CAAC,CAAC,0BAA0B,EAAE;gBACpC,QAAQ,EAAE,YAAY;aACvB,CAAC,CACH,CAAA;SACF;QAED,YAAY,GAAG,YAAY,IAAI,YAAY,CAAA;QAC3C,OAAO,MAAM,uBAAc,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,CAAC,CAAA;IACzE,CAAC;CACF,CAAA"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Mutation = void 0;
4
+ const engine_1 = require("../../../engine");
5
+ const types_1 = require("../../../engine/types");
6
+ const debug = require('debug')('things-factory:integration-base:stop-scenario');
7
+ exports.Mutation = {
8
+ async stopScenario(_, { instanceName }, context) {
9
+ const { domain } = context.state;
10
+ debug(instanceName);
11
+ var scenarioInstance = engine_1.ScenarioEngine.getScenarioInstance(domain, instanceName);
12
+ if (!scenarioInstance) {
13
+ debug(`ScenarioInstance(${instanceName}) Not Found.`);
14
+ return {
15
+ instanceName,
16
+ scenarioName: '',
17
+ state: engine_1.ScenarioInstanceStatus[types_1.SCENARIO_STATE.UNLOADED],
18
+ timestamp: String(Date.now())
19
+ };
20
+ }
21
+ const { scenarioName } = scenarioInstance;
22
+ await engine_1.ScenarioEngine.unload(domain, instanceName);
23
+ return scenarioInstance;
24
+ }
25
+ };
26
+ //# sourceMappingURL=stop-scenario.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stop-scenario.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/scenario/stop-scenario.ts"],"names":[],"mappings":";;;AAAA,4CAAwE;AACxE,iDAAsD;AAEtD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,+CAA+C,CAAC,CAAA;AAElE,QAAA,QAAQ,GAAG;IACtB,KAAK,CAAC,YAAY,CAAC,CAAM,EAAE,EAAE,YAAY,EAAE,EAAE,OAAY;QACvD,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,KAAK,CAAC,YAAY,CAAC,CAAA;QAEnB,IAAI,gBAAgB,GAAG,uBAAc,CAAC,mBAAmB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;QAE/E,IAAI,CAAC,gBAAgB,EAAE;YACrB,KAAK,CAAC,oBAAoB,YAAY,cAAc,CAAC,CAAA;YACrD,OAAO;gBACL,YAAY;gBACZ,YAAY,EAAE,EAAE;gBAChB,KAAK,EAAE,+BAAsB,CAAC,sBAAc,CAAC,QAAQ,CAAC;gBACtD,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;aAC9B,CAAA;SACF;QAED,MAAM,EAAE,YAAY,EAAE,GAAG,gBAAgB,CAAA;QACzC,MAAM,uBAAc,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;QAEjD,OAAO,gBAAgB,CAAA;IACzB,CAAC;CACF,CAAA"}