@things-factory/integration-base 7.0.0-alpha.9 → 7.0.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.
Files changed (351) hide show
  1. package/dist-server/controllers/index.d.ts +1 -0
  2. package/dist-server/controllers/scenario-controller.d.ts +4 -0
  3. package/dist-server/controllers/scenario-controller.js +23 -7
  4. package/dist-server/controllers/scenario-controller.js.map +1 -1
  5. package/dist-server/engine/analyzer/analyze-integration.d.ts +5 -0
  6. package/dist-server/engine/analyzer/analyze-integration.js +1 -2
  7. package/dist-server/engine/analyzer/analyze-integration.js.map +1 -1
  8. package/dist-server/engine/connection-manager.d.ts +35 -0
  9. package/dist-server/engine/connection-manager.js +50 -13
  10. package/dist-server/engine/connection-manager.js.map +1 -1
  11. package/dist-server/engine/connector/echo-back-connector.d.ts +9 -0
  12. package/dist-server/engine/connector/echo-back-connector.js +1 -1
  13. package/dist-server/engine/connector/echo-back-connector.js.map +1 -1
  14. package/dist-server/engine/connector/echo-back-server.d.ts +8 -0
  15. package/dist-server/engine/connector/echo-back-server.js.map +1 -1
  16. package/dist-server/engine/connector/graphql-connector.d.ts +19 -0
  17. package/dist-server/engine/connector/graphql-connector.js +9 -9
  18. package/dist-server/engine/connector/graphql-connector.js.map +1 -1
  19. package/dist-server/engine/connector/http-connector.d.ts +25 -0
  20. package/dist-server/engine/connector/http-connector.js.map +1 -1
  21. package/dist-server/engine/connector/index.d.ts +12 -0
  22. package/dist-server/engine/connector/mqtt-connector.d.ts +14 -0
  23. package/dist-server/engine/connector/mqtt-connector.js +1 -1
  24. package/dist-server/engine/connector/mqtt-connector.js.map +1 -1
  25. package/dist-server/engine/connector/mssql-connector.d.ts +30 -0
  26. package/dist-server/engine/connector/mssql-connector.js +21 -5
  27. package/dist-server/engine/connector/mssql-connector.js.map +1 -1
  28. package/dist-server/engine/connector/mysql-connector.d.ts +13 -0
  29. package/dist-server/engine/connector/mysql-connector.js.map +1 -1
  30. package/dist-server/engine/connector/operato-connector.d.ts +27 -0
  31. package/dist-server/engine/connector/operato-connector.js +21 -24
  32. package/dist-server/engine/connector/operato-connector.js.map +1 -1
  33. package/dist-server/engine/connector/oracle-connector.d.ts +29 -0
  34. package/dist-server/engine/connector/oracle-connector.js +1 -1
  35. package/dist-server/engine/connector/oracle-connector.js.map +1 -1
  36. package/dist-server/engine/connector/postgresql-connector.d.ts +14 -0
  37. package/dist-server/engine/connector/postgresql-connector.js +2 -2
  38. package/dist-server/engine/connector/postgresql-connector.js.map +1 -1
  39. package/dist-server/engine/connector/proxy-connector.d.ts +15 -0
  40. package/dist-server/engine/connector/proxy-connector.js +44 -0
  41. package/dist-server/engine/connector/proxy-connector.js.map +1 -0
  42. package/dist-server/engine/connector/socket-server.d.ts +9 -0
  43. package/dist-server/engine/connector/socket-server.js +1 -1
  44. package/dist-server/engine/connector/socket-server.js.map +1 -1
  45. package/dist-server/engine/connector/sqlite-connector.d.ts +10 -0
  46. package/dist-server/engine/connector/sqlite-connector.js +2 -2
  47. package/dist-server/engine/connector/sqlite-connector.js.map +1 -1
  48. package/dist-server/engine/edge-client.d.ts +18 -0
  49. package/dist-server/engine/edge-client.js +37 -0
  50. package/dist-server/engine/edge-client.js.map +1 -0
  51. package/dist-server/engine/index.d.ts +8 -0
  52. package/dist-server/engine/index.js +1 -0
  53. package/dist-server/engine/index.js.map +1 -1
  54. package/dist-server/engine/pending-queue.d.ts +24 -0
  55. package/dist-server/engine/pending-queue.js.map +1 -1
  56. package/dist-server/engine/scenario-engine.d.ts +11 -0
  57. package/dist-server/engine/scenario-engine.js.map +1 -1
  58. package/dist-server/engine/task/book-up-scenario.d.ts +1 -0
  59. package/dist-server/engine/task/csv-readline.d.ts +1 -0
  60. package/dist-server/engine/task/csv-readline.js.map +1 -1
  61. package/dist-server/engine/task/data-accessor.d.ts +1 -0
  62. package/dist-server/engine/task/data-mapper.d.ts +1 -0
  63. package/dist-server/engine/task/data-mapper.js.map +1 -1
  64. package/dist-server/engine/task/database-query.d.ts +1 -0
  65. package/dist-server/engine/task/database-query.js +21 -12
  66. package/dist-server/engine/task/database-query.js.map +1 -1
  67. package/dist-server/engine/task/echo-receive.d.ts +1 -0
  68. package/dist-server/engine/task/echo-send.d.ts +1 -0
  69. package/dist-server/engine/task/echo-send.js.map +1 -1
  70. package/dist-server/engine/task/empty-check.d.ts +1 -0
  71. package/dist-server/engine/task/empty-check.js.map +1 -1
  72. package/dist-server/engine/task/end.d.ts +1 -0
  73. package/dist-server/engine/task/floating-point.d.ts +1 -0
  74. package/dist-server/engine/task/floating-point.js.map +1 -1
  75. package/dist-server/engine/task/goto.d.ts +1 -0
  76. package/dist-server/engine/task/graphql-mutate.d.ts +1 -0
  77. package/dist-server/engine/task/graphql-mutate.js +23 -12
  78. package/dist-server/engine/task/graphql-mutate.js.map +1 -1
  79. package/dist-server/engine/task/graphql-query.d.ts +1 -0
  80. package/dist-server/engine/task/graphql-query.js +23 -12
  81. package/dist-server/engine/task/graphql-query.js.map +1 -1
  82. package/dist-server/engine/task/headless-post.d.ts +1 -0
  83. package/dist-server/engine/task/headless-post.js.map +1 -1
  84. package/dist-server/engine/task/headless-scrap.d.ts +1 -0
  85. package/dist-server/engine/task/headless-scrap.js.map +1 -1
  86. package/dist-server/engine/task/http-get.d.ts +1 -0
  87. package/dist-server/engine/task/http-get.js +28 -12
  88. package/dist-server/engine/task/http-get.js.map +1 -1
  89. package/dist-server/engine/task/http-post.d.ts +1 -0
  90. package/dist-server/engine/task/http-post.js +22 -11
  91. package/dist-server/engine/task/http-post.js.map +1 -1
  92. package/dist-server/engine/task/index.d.ts +43 -0
  93. package/dist-server/engine/task/jsonata.d.ts +1 -0
  94. package/dist-server/engine/task/jsonata.js +5 -1
  95. package/dist-server/engine/task/jsonata.js.map +1 -1
  96. package/dist-server/engine/task/local-graphql-mutate.d.ts +1 -0
  97. package/dist-server/engine/task/local-graphql-mutate.js +23 -11
  98. package/dist-server/engine/task/local-graphql-mutate.js.map +1 -1
  99. package/dist-server/engine/task/local-graphql-query.d.ts +1 -0
  100. package/dist-server/engine/task/local-graphql-query.js +23 -11
  101. package/dist-server/engine/task/local-graphql-query.js.map +1 -1
  102. package/dist-server/engine/task/log.d.ts +1 -0
  103. package/dist-server/engine/task/log.js +15 -11
  104. package/dist-server/engine/task/log.js.map +1 -1
  105. package/dist-server/engine/task/mqtt-publish.d.ts +1 -0
  106. package/dist-server/engine/task/mqtt-publish.js.map +1 -1
  107. package/dist-server/engine/task/mqtt-subscribe.d.ts +1 -0
  108. package/dist-server/engine/task/mqtt-subscribe.js.map +1 -1
  109. package/dist-server/engine/task/oracle-procedure.d.ts +1 -0
  110. package/dist-server/engine/task/oracle-procedure.js +19 -13
  111. package/dist-server/engine/task/oracle-procedure.js.map +1 -1
  112. package/dist-server/engine/task/pick-pending-scenario.d.ts +1 -0
  113. package/dist-server/engine/task/pick-pending-scenario.js.map +1 -1
  114. package/dist-server/engine/task/publish.d.ts +1 -0
  115. package/dist-server/engine/task/publish.js.map +1 -1
  116. package/dist-server/engine/task/random.d.ts +1 -0
  117. package/dist-server/engine/task/reset-pending-queue.d.ts +1 -0
  118. package/dist-server/engine/task/script.d.ts +1 -0
  119. package/dist-server/engine/task/script.js +35 -18
  120. package/dist-server/engine/task/script.js.map +1 -1
  121. package/dist-server/engine/task/set-domain.d.ts +1 -0
  122. package/dist-server/engine/task/set-domain.js.map +1 -1
  123. package/dist-server/engine/task/sleep.d.ts +1 -0
  124. package/dist-server/engine/task/sleep.js.map +1 -1
  125. package/dist-server/engine/task/socket-listener.d.ts +1 -0
  126. package/dist-server/engine/task/socket-listener.js.map +1 -1
  127. package/dist-server/engine/task/state-read.d.ts +1 -0
  128. package/dist-server/engine/task/state-read.js.map +1 -1
  129. package/dist-server/engine/task/state-write.d.ts +1 -0
  130. package/dist-server/engine/task/state-write.js.map +1 -1
  131. package/dist-server/engine/task/stop-scenario.d.ts +1 -0
  132. package/dist-server/engine/task/sub-scenario.d.ts +1 -0
  133. package/dist-server/engine/task/switch-goto.d.ts +1 -0
  134. package/dist-server/engine/task/switch-range-goto.d.ts +1 -0
  135. package/dist-server/engine/task/switch-range-goto.js.map +1 -1
  136. package/dist-server/engine/task/switch-range-scenario.d.ts +1 -0
  137. package/dist-server/engine/task/switch-range-scenario.js.map +1 -1
  138. package/dist-server/engine/task/switch-range-set.d.ts +1 -0
  139. package/dist-server/engine/task/switch-range-set.js.map +1 -1
  140. package/dist-server/engine/task/switch-scenario.d.ts +1 -0
  141. package/dist-server/engine/task/switch-set.d.ts +1 -0
  142. package/dist-server/engine/task/throw.d.ts +1 -0
  143. package/dist-server/engine/task/utils/headless-pool-for-scenario.d.ts +1 -0
  144. package/dist-server/engine/task/utils/headless-pool-for-scenario.js +1 -2
  145. package/dist-server/engine/task/utils/headless-pool-for-scenario.js.map +1 -1
  146. package/dist-server/engine/task/utils/substitute.d.ts +1 -0
  147. package/dist-server/engine/task/utils/substitute.js +1 -2
  148. package/dist-server/engine/task/utils/substitute.js.map +1 -1
  149. package/dist-server/engine/task/variables.d.ts +1 -0
  150. package/dist-server/engine/task-registry.d.ts +12 -0
  151. package/dist-server/engine/types.d.ts +94 -0
  152. package/dist-server/engine/types.js.map +1 -1
  153. package/dist-server/index.d.ts +6 -0
  154. package/dist-server/index.js +1 -2
  155. package/dist-server/index.js.map +1 -1
  156. package/dist-server/migrations/index.d.ts +1 -0
  157. package/dist-server/restful/index.d.ts +1 -0
  158. package/dist-server/restful/unstable/index.d.ts +7 -0
  159. package/dist-server/restful/unstable/run-scenario.d.ts +1 -0
  160. package/dist-server/restful/unstable/run-scenario.js +0 -1
  161. package/dist-server/restful/unstable/run-scenario.js.map +1 -1
  162. package/dist-server/restful/unstable/scenario-instance.d.ts +1 -0
  163. package/dist-server/restful/unstable/scenario-instances.d.ts +1 -0
  164. package/dist-server/restful/unstable/scenario.d.ts +1 -0
  165. package/dist-server/restful/unstable/scenarios.d.ts +1 -0
  166. package/dist-server/restful/unstable/start-scenario.d.ts +1 -0
  167. package/dist-server/restful/unstable/stop-scenario.d.ts +1 -0
  168. package/dist-server/routers/scenario-schedule-callback-router.d.ts +1 -0
  169. package/dist-server/routers/scenario-schedule-callback-router.js +2 -3
  170. package/dist-server/routers/scenario-schedule-callback-router.js.map +1 -1
  171. package/dist-server/routers/scenario-view-router.d.ts +1 -0
  172. package/dist-server/routers/scenario-view-router.js.map +1 -1
  173. package/dist-server/routes.d.ts +1 -0
  174. package/dist-server/routes.js.map +1 -1
  175. package/dist-server/service/analysis/analysis-query.d.ts +3 -0
  176. package/dist-server/service/analysis/analysis-query.js +2 -2
  177. package/dist-server/service/analysis/analysis-query.js.map +1 -1
  178. package/dist-server/service/analysis/index.d.ts +2 -0
  179. package/dist-server/service/connection/connection-mutation.d.ts +30 -0
  180. package/dist-server/service/connection/connection-mutation.js +6 -10
  181. package/dist-server/service/connection/connection-mutation.js.map +1 -1
  182. package/dist-server/service/connection/connection-query.d.ts +12 -0
  183. package/dist-server/service/connection/connection-query.js +18 -11
  184. package/dist-server/service/connection/connection-query.js.map +1 -1
  185. package/dist-server/service/connection/connection-subscription.d.ts +10 -0
  186. package/dist-server/service/connection/connection-subscription.js +3 -3
  187. package/dist-server/service/connection/connection-subscription.js.map +1 -1
  188. package/dist-server/service/connection/connection-type.d.ts +133 -0
  189. package/dist-server/service/connection/connection-type.js +45 -21
  190. package/dist-server/service/connection/connection-type.js.map +1 -1
  191. package/dist-server/service/connection/index.d.ts +6 -0
  192. package/dist-server/service/connector/connector-query.d.ts +6 -0
  193. package/dist-server/service/connector/connector-query.js +2 -2
  194. package/dist-server/service/connector/connector-query.js.map +1 -1
  195. package/dist-server/service/connector/connector-type.d.ts +12 -0
  196. package/dist-server/service/connector/connector-type.js +4 -4
  197. package/dist-server/service/connector/connector-type.js.map +1 -1
  198. package/dist-server/service/connector/index.d.ts +3 -0
  199. package/dist-server/service/index.d.ts +17 -0
  200. package/dist-server/service/payload-log/index.d.ts +5 -0
  201. package/dist-server/service/payload-log/payload-log-mutation.d.ts +10 -0
  202. package/dist-server/service/payload-log/payload-log-mutation.js +5 -5
  203. package/dist-server/service/payload-log/payload-log-mutation.js.map +1 -1
  204. package/dist-server/service/payload-log/payload-log-query.d.ts +11 -0
  205. package/dist-server/service/payload-log/payload-log-query.js +3 -3
  206. package/dist-server/service/payload-log/payload-log-query.js.map +1 -1
  207. package/dist-server/service/payload-log/payload-log-type.d.ts +15 -0
  208. package/dist-server/service/payload-log/payload-log-type.js +6 -6
  209. package/dist-server/service/payload-log/payload-log-type.js.map +1 -1
  210. package/dist-server/service/payload-log/payload-log.d.ts +23 -0
  211. package/dist-server/service/payload-log/payload-log.js +6 -6
  212. package/dist-server/service/payload-log/payload-log.js.map +1 -1
  213. package/dist-server/service/property-spec.d.ts +12 -0
  214. package/dist-server/service/property-spec.js +6 -2
  215. package/dist-server/service/property-spec.js.map +1 -1
  216. package/dist-server/service/scenario/index.d.ts +5 -0
  217. package/dist-server/service/scenario/scenario-mutation.d.ts +13 -0
  218. package/dist-server/service/scenario/scenario-mutation.js +3 -3
  219. package/dist-server/service/scenario/scenario-mutation.js.map +1 -1
  220. package/dist-server/service/scenario/scenario-query.d.ts +18 -0
  221. package/dist-server/service/scenario/scenario-query.js +3 -3
  222. package/dist-server/service/scenario/scenario-query.js.map +1 -1
  223. package/dist-server/service/scenario/scenario-type.d.ts +30 -0
  224. package/dist-server/service/scenario/scenario-type.js +14 -6
  225. package/dist-server/service/scenario/scenario-type.js.map +1 -1
  226. package/dist-server/service/scenario/scenario.d.ts +36 -0
  227. package/dist-server/service/scenario/scenario.js +18 -9
  228. package/dist-server/service/scenario/scenario.js.map +1 -1
  229. package/dist-server/service/scenario-flow/scenario-flow.d.ts +6 -0
  230. package/dist-server/service/scenario-flow/scenario-flow.js +2 -2
  231. package/dist-server/service/scenario-flow/scenario-flow.js.map +1 -1
  232. package/dist-server/service/scenario-instance/index.d.ts +5 -0
  233. package/dist-server/service/scenario-instance/scenario-instance-mutation.d.ts +6 -0
  234. package/dist-server/service/scenario-instance/scenario-instance-mutation.js +3 -3
  235. package/dist-server/service/scenario-instance/scenario-instance-mutation.js.map +1 -1
  236. package/dist-server/service/scenario-instance/scenario-instance-query.d.ts +6 -0
  237. package/dist-server/service/scenario-instance/scenario-instance-query.js +3 -67
  238. package/dist-server/service/scenario-instance/scenario-instance-query.js.map +1 -1
  239. package/dist-server/service/scenario-instance/scenario-instance-subscription.d.ts +10 -0
  240. package/dist-server/service/scenario-instance/scenario-instance-subscription.js +2 -2
  241. package/dist-server/service/scenario-instance/scenario-instance-subscription.js.map +1 -1
  242. package/dist-server/service/scenario-instance/scenario-instance-type.d.ts +102 -0
  243. package/dist-server/service/scenario-instance/scenario-instance-type.js +127 -33
  244. package/dist-server/service/scenario-instance/scenario-instance-type.js.map +1 -1
  245. package/dist-server/service/scenario-queue/index.d.ts +3 -0
  246. package/dist-server/service/scenario-queue/scenario-queue-subscription.d.ts +6 -0
  247. package/dist-server/service/scenario-queue/scenario-queue-subscription.js +2 -2
  248. package/dist-server/service/scenario-queue/scenario-queue-subscription.js.map +1 -1
  249. package/dist-server/service/scenario-queue/scenario-queue-type.d.ts +11 -0
  250. package/dist-server/service/scenario-queue/scenario-queue-type.js +4 -4
  251. package/dist-server/service/scenario-queue/scenario-queue-type.js.map +1 -1
  252. package/dist-server/service/state-register/index.d.ts +6 -0
  253. package/dist-server/service/state-register/state-register-mutation.d.ts +11 -0
  254. package/dist-server/service/state-register/state-register-mutation.js +2 -2
  255. package/dist-server/service/state-register/state-register-mutation.js.map +1 -1
  256. package/dist-server/service/state-register/state-register-query.d.ts +14 -0
  257. package/dist-server/service/state-register/state-register-query.js +3 -3
  258. package/dist-server/service/state-register/state-register-query.js.map +1 -1
  259. package/dist-server/service/state-register/state-register-type.d.ts +23 -0
  260. package/dist-server/service/state-register/state-register-type.js +6 -6
  261. package/dist-server/service/state-register/state-register-type.js.map +1 -1
  262. package/dist-server/service/state-register/state-register.d.ts +22 -0
  263. package/dist-server/service/state-register/state-register.js +3 -3
  264. package/dist-server/service/state-register/state-register.js.map +1 -1
  265. package/dist-server/service/step/index.d.ts +5 -0
  266. package/dist-server/service/step/step-mutation.d.ts +5 -0
  267. package/dist-server/service/step/step-mutation.js +2 -2
  268. package/dist-server/service/step/step-mutation.js.map +1 -1
  269. package/dist-server/service/step/step-query.d.ts +12 -0
  270. package/dist-server/service/step/step-query.js +3 -3
  271. package/dist-server/service/step/step-query.js.map +1 -1
  272. package/dist-server/service/step/step-type.d.ts +111 -0
  273. package/dist-server/service/step/step-type.js +25 -22
  274. package/dist-server/service/step/step-type.js.map +1 -1
  275. package/dist-server/service/task-type/index.d.ts +3 -0
  276. package/dist-server/service/task-type/task-type-query.d.ts +6 -0
  277. package/dist-server/service/task-type/task-type-query.js +2 -2
  278. package/dist-server/service/task-type/task-type-query.js.map +1 -1
  279. package/dist-server/service/task-type/task-type-type.d.ts +12 -0
  280. package/dist-server/service/task-type/task-type-type.js +4 -4
  281. package/dist-server/service/task-type/task-type-type.js.map +1 -1
  282. package/dist-server/tsconfig.tsbuildinfo +1 -1
  283. package/helps/integration/concept/script-internal-variables.ja.md +21 -1
  284. package/helps/integration/concept/script-internal-variables.ko.md +17 -0
  285. package/helps/integration/concept/script-internal-variables.md +18 -0
  286. package/helps/integration/concept/script-internal-variables.ms.md +19 -1
  287. package/helps/integration/concept/script-internal-variables.zh.md +18 -0
  288. package/helps/integration/connector/mssql-connector.ja.md +13 -9
  289. package/helps/integration/connector/mssql-connector.ko.md +13 -9
  290. package/helps/integration/connector/mssql-connector.md +13 -9
  291. package/helps/integration/connector/mssql-connector.ms.md +13 -9
  292. package/helps/integration/connector/mssql-connector.zh.md +13 -9
  293. package/helps/integration/connector/operato-connector.ja.md +0 -3
  294. package/helps/integration/task/script.ja.md +1 -1
  295. package/helps/integration/task/script.ko.md +1 -1
  296. package/helps/integration/task/script.md +1 -1
  297. package/helps/integration/task/script.ms.md +1 -1
  298. package/helps/integration/task/script.zh.md +1 -1
  299. package/package.json +12 -11
  300. package/server/controllers/scenario-controller.ts +60 -11
  301. package/server/engine/connection-manager.ts +63 -14
  302. package/server/engine/connector/echo-back-connector.ts +2 -1
  303. package/server/engine/connector/graphql-connector.ts +12 -9
  304. package/server/engine/connector/mqtt-connector.ts +2 -1
  305. package/server/engine/connector/mssql-connector.ts +21 -5
  306. package/server/engine/connector/operato-connector.ts +22 -26
  307. package/server/engine/connector/oracle-connector.ts +5 -8
  308. package/server/engine/connector/postgresql-connector.ts +3 -2
  309. package/server/engine/connector/proxy-connector.ts +53 -0
  310. package/server/engine/connector/socket-server.ts +1 -1
  311. package/server/engine/connector/sqlite-connector.ts +2 -5
  312. package/server/engine/edge-client.ts +45 -0
  313. package/server/engine/index.ts +2 -1
  314. package/server/engine/task/database-query.ts +21 -12
  315. package/server/engine/task/graphql-mutate.ts +23 -13
  316. package/server/engine/task/graphql-query.ts +22 -13
  317. package/server/engine/task/http-get.ts +26 -12
  318. package/server/engine/task/http-post.ts +22 -11
  319. package/server/engine/task/jsonata.ts +5 -1
  320. package/server/engine/task/local-graphql-mutate.ts +23 -13
  321. package/server/engine/task/local-graphql-query.ts +23 -11
  322. package/server/engine/task/log.ts +14 -11
  323. package/server/engine/task/oracle-procedure.ts +24 -18
  324. package/server/engine/task/script.ts +33 -18
  325. package/server/engine/types.ts +47 -48
  326. package/server/index.ts +1 -2
  327. package/server/restful/unstable/run-scenario.ts +0 -1
  328. package/server/routers/scenario-schedule-callback-router.ts +2 -2
  329. package/server/service/connection/connection-mutation.ts +9 -29
  330. package/server/service/connection/connection-query.ts +17 -7
  331. package/server/service/connection/connection-subscription.ts +1 -1
  332. package/server/service/connection/connection-type.ts +53 -32
  333. package/server/service/payload-log/payload-log-mutation.ts +1 -1
  334. package/server/service/payload-log/payload-log-query.ts +4 -1
  335. package/server/service/payload-log/payload-log.ts +5 -5
  336. package/server/service/property-spec.ts +3 -0
  337. package/server/service/scenario/scenario-query.ts +1 -1
  338. package/server/service/scenario/scenario-type.ts +6 -0
  339. package/server/service/scenario/scenario.ts +26 -7
  340. package/server/service/scenario-instance/scenario-instance-mutation.ts +7 -4
  341. package/server/service/scenario-instance/scenario-instance-query.ts +4 -30
  342. package/server/service/scenario-instance/scenario-instance-type.ts +105 -19
  343. package/server/service/state-register/state-register-query.ts +4 -1
  344. package/server/service/state-register/state-register.ts +1 -1
  345. package/server/service/step/step-query.ts +1 -1
  346. package/server/service/step/step-type.ts +81 -79
  347. package/translations/en.json +4 -1
  348. package/translations/ja.json +4 -1
  349. package/translations/ko.json +4 -1
  350. package/translations/ms.json +4 -1
  351. package/translations/zh.json +4 -1
@@ -1,4 +1,4 @@
1
- import { Connection, PropertySpec, ScenarioInstanceStatus, Step } from '../service'
1
+ import { Connection, PropertySpec, ScenarioInstance, ScenarioInstanceStatus, Step } from '../service'
2
2
  import { Domain } from '@things-factory/shell'
3
3
  import { User } from '@things-factory/auth-base'
4
4
 
@@ -13,79 +13,79 @@ export interface Connector {
13
13
  }
14
14
 
15
15
  export type Context = {
16
- /**
17
- * Represents the domain context.
18
- */
16
+ /**
17
+ * Represents the domain context.
18
+ */
19
19
  domain: Domain
20
20
 
21
- /**
22
- * User information.
23
- */
21
+ /**
22
+ * User information.
23
+ */
24
24
  user: User
25
25
 
26
- /**
27
- * Language code, for example 'en', 'ko'.
28
- */
26
+ /**
27
+ * Language code, for example 'en', 'ko'.
28
+ */
29
29
  lng: string
30
30
 
31
- /**
32
- * Flag to indicate if the IP is unsafe, can be undefined.
33
- */
31
+ /**
32
+ * Flag to indicate if the IP is unsafe, can be undefined.
33
+ */
34
34
  unsafeIP: boolean | undefined
35
35
 
36
- /**
37
- * List of prohibited privileges, can be undefined.
38
- */
36
+ /**
37
+ * List of prohibited privileges, can be undefined.
38
+ */
39
39
  prohibitedPrivileges: { category: string; privilege: string }[] | undefined
40
40
 
41
- /**
42
- * Logger for logging purposes.
43
- */
41
+ /**
42
+ * Logger for logging purposes.
43
+ */
44
44
  logger: any
45
45
 
46
- /**
47
- * Function to publish events or messages.
48
- */
46
+ /**
47
+ * Function to publish events or messages.
48
+ */
49
49
  publish: Function
50
50
 
51
- /**
52
- * Function to load resources or data.
53
- */
51
+ /**
52
+ * Function to load resources or data.
53
+ */
54
54
  load: Function
55
55
 
56
- /**
57
- * Current status of the scenario instance.
58
- */
56
+ /**
57
+ * Current status of the scenario instance.
58
+ */
59
59
  state: ScenarioInstanceStatus
60
60
 
61
- /**
62
- * General data storage object.
63
- */
61
+ /**
62
+ * General data storage object.
63
+ */
64
64
  data: any
65
65
 
66
- /**
67
- * Variables related to the context.
68
- */
66
+ /**
67
+ * Variables related to the context.
68
+ */
69
69
  variables: Object
70
70
 
71
- /**
72
- * Local GraphQL client object.
73
- */
71
+ /**
72
+ * Local GraphQL client object.
73
+ */
74
74
  client: any /* graphql local client */
75
75
 
76
- /**
77
- * Root object, can be used for various purposes.
78
- */
79
- root: Object
76
+ /**
77
+ * Root object, can be used for various purposes.
78
+ */
79
+ root?: ScenarioInstance
80
80
 
81
- /**
82
- * Array of function closures.
83
- */
81
+ /**
82
+ * Array of function closures.
83
+ */
84
84
  closures: Function[]
85
85
 
86
- /**
87
- * Function to check the state.
88
- */
86
+ /**
87
+ * Function to check the state.
88
+ */
89
89
  checkState: Function
90
90
 
91
91
  /**
@@ -104,7 +104,6 @@ export type Context = {
104
104
  __csv_resources?: any
105
105
  }
106
106
 
107
-
108
107
  export type TaskHandler = (
109
108
  step: Step,
110
109
  context: Context
package/server/index.ts CHANGED
@@ -15,7 +15,6 @@ process.on('bootstrap-module-start' as any, async ({ app, config, client }: any)
15
15
 
16
16
  console.log('Scenario Engine has just started.')
17
17
  } catch (ex) {
18
- ConnectionManager.logger.error(ex)
19
- console.log('Just has failed to start Scenario Engine.')
18
+ ConnectionManager.logger.error('Just has failed to start Scenario Engine.', ex)
20
19
  }
21
20
  })
@@ -21,7 +21,6 @@ router.post('/unstable/run-scenario/:scenarioName', async (context, next) => {
21
21
  runScenario(instanceName: $instanceName, scenarioName: $scenarioName, variables: $variables) {
22
22
  instanceName
23
23
  scenarioName
24
- state
25
24
  data
26
25
  result
27
26
  message
@@ -61,8 +61,8 @@ scenarioScheduleCallbackRouter.post('/callback-schedule-for-scenario', async (co
61
61
 
62
62
  ScenarioEngine.load(scenario.name, scenario, {
63
63
  domain,
64
- user,
65
- variables: client.task?.data
64
+ user
65
+ /* variables: schedule 등록시 variables 는 설정할 방법이 없음. */
66
66
  })
67
67
 
68
68
  context.status = 200
@@ -10,10 +10,7 @@ import { Connection, ConnectionPatch, ConnectionStatus, NewConnection } from './
10
10
  export class ConnectionMutation {
11
11
  @Directive('@transaction')
12
12
  @Mutation(returns => Connection, { description: 'To create new connection' })
13
- async createConnection(
14
- @Arg('connection') connection: NewConnection,
15
- @Ctx() context: ResolverContext
16
- ): Promise<Connection> {
13
+ async createConnection(@Arg('connection') connection: NewConnection, @Ctx() context: ResolverContext): Promise<Connection> {
17
14
  const { domain, user, tx } = context.state
18
15
 
19
16
  return await tx.getRepository(Connection).save({
@@ -26,11 +23,7 @@ export class ConnectionMutation {
26
23
 
27
24
  @Directive('@transaction')
28
25
  @Mutation(returns => Connection, { description: 'To modify connection information' })
29
- async updateConnection(
30
- @Arg('name') name: string,
31
- @Arg('patch') patch: ConnectionPatch,
32
- @Ctx() context: ResolverContext
33
- ): Promise<Connection> {
26
+ async updateConnection(@Arg('name') name: string, @Arg('patch') patch: ConnectionPatch, @Ctx() context: ResolverContext): Promise<Connection> {
34
27
  const { domain, user, tx } = context.state
35
28
 
36
29
  const repository = tx.getRepository(Connection)
@@ -47,10 +40,7 @@ export class ConnectionMutation {
47
40
 
48
41
  @Directive('@transaction')
49
42
  @Mutation(returns => [Connection], { description: "To modify multiple connections' information" })
50
- async updateMultipleConnection(
51
- @Arg('patches', type => [ConnectionPatch]) patches: ConnectionPatch[],
52
- @Ctx() context: ResolverContext
53
- ): Promise<Connection[]> {
43
+ async updateMultipleConnection(@Arg('patches', type => [ConnectionPatch]) patches: ConnectionPatch[], @Ctx() context: ResolverContext): Promise<Connection[]> {
54
44
  const { domain, user, tx } = context.state
55
45
 
56
46
  let results = []
@@ -102,10 +92,7 @@ export class ConnectionMutation {
102
92
 
103
93
  @Directive('@transaction')
104
94
  @Mutation(returns => Boolean, { description: 'To delete multiple connections' })
105
- async deleteConnections(
106
- @Arg('names', type => [String]) names: string[],
107
- @Ctx() context: ResolverContext
108
- ): Promise<boolean> {
95
+ async deleteConnections(@Arg('names', type => [String]) names: string[], @Ctx() context: ResolverContext): Promise<boolean> {
109
96
  const { domain, tx } = context.state
110
97
 
111
98
  await tx.getRepository(Connection).delete({
@@ -122,7 +109,7 @@ export class ConnectionMutation {
122
109
  var repository = getRepository(Connection)
123
110
  var connection = await repository.findOne({
124
111
  where: { domain: { id: domain.id }, name },
125
- relations: ['domain']
112
+ relations: ['domain', 'edge']
126
113
  })
127
114
 
128
115
  await connection.connect()
@@ -130,9 +117,7 @@ export class ConnectionMutation {
130
117
 
131
118
  return {
132
119
  ...connection,
133
- state: ConnectionManager.getConnectionInstance(connection)
134
- ? ConnectionStatus.CONNECTED
135
- : ConnectionStatus.DISCONNECTED
120
+ state: ConnectionManager.getConnectionInstance(connection) ? ConnectionStatus.CONNECTED : ConnectionStatus.DISCONNECTED
136
121
  } as Connection
137
122
  }
138
123
 
@@ -143,7 +128,7 @@ export class ConnectionMutation {
143
128
  var repository = getRepository(Connection)
144
129
  var connection = await repository.findOne({
145
130
  where: { domain: { id: domain.id }, name },
146
- relations: ['domain']
131
+ relations: ['domain', 'edge']
147
132
  })
148
133
 
149
134
  await connection.disconnect()
@@ -151,19 +136,14 @@ export class ConnectionMutation {
151
136
 
152
137
  return {
153
138
  ...connection,
154
- state: ConnectionManager.getConnectionInstance(connection)
155
- ? ConnectionStatus.CONNECTED
156
- : ConnectionStatus.DISCONNECTED
139
+ state: ConnectionManager.getConnectionInstance(connection) ? ConnectionStatus.CONNECTED : ConnectionStatus.DISCONNECTED
157
140
  }
158
141
  }
159
142
 
160
143
  @Directive('@transaction')
161
144
  // @Directive('@privilege(category: "connection", privilege: "mutation", domainOwnerGranted: true)')
162
145
  @Mutation(returns => Boolean, { description: 'To import multiple connections' })
163
- async importConnections(
164
- @Arg('connections', type => [ConnectionPatch]) connections: Connection[],
165
- @Ctx() context: ResolverContext
166
- ): Promise<boolean> {
146
+ async importConnections(@Arg('connections', type => [ConnectionPatch]) connections: Connection[], @Ctx() context: ResolverContext): Promise<boolean> {
167
147
  const { tx, domain, user } = context.state
168
148
 
169
149
  const repository = tx.getRepository(Connection)
@@ -1,6 +1,6 @@
1
1
  import { Arg, Args, Ctx, FieldResolver, Query, Resolver, Root } from 'type-graphql'
2
2
 
3
- import { User } from '@things-factory/auth-base'
3
+ import { Appliance, User } from '@things-factory/auth-base'
4
4
  import { Domain, getQueryBuilderFromListParams, getRepository, ListParam } from '@things-factory/shell'
5
5
 
6
6
  import { ConnectionManager } from '../../engine/connection-manager'
@@ -26,7 +26,10 @@ export class ConnectionQuery {
26
26
  }
27
27
 
28
28
  @Query(returns => ConnectionList, { description: 'To fetch multiple connections' })
29
- async connections(@Args() params: ListParam, @Ctx() context: ResolverContext): Promise<ConnectionList> {
29
+ async connections(
30
+ @Args(type => ListParam) params: ListParam,
31
+ @Ctx() context: ResolverContext
32
+ ): Promise<ConnectionList> {
30
33
  const { domain } = context.state
31
34
 
32
35
  const queryBuilder = getQueryBuilderFromListParams({
@@ -52,26 +55,33 @@ export class ConnectionQuery {
52
55
  fetchConnectionState(@Arg('name') name: string, @Ctx() context: ResolverContext): ConnectionState {
53
56
  const { domain } = context.state
54
57
 
55
- var connection = ConnectionManager.getConnectionInstanceByName(domain, name)
58
+ const connection = ConnectionManager.getConnectionInstanceEntityByName(domain, name)
56
59
 
57
60
  return {
58
- name,
61
+ ...connection,
59
62
  state: connection ? ConnectionStatus.CONNECTED : ConnectionStatus.DISCONNECTED
60
63
  }
61
64
  }
62
65
 
66
+ @FieldResolver(type => Domain)
67
+ async edge(@Root() connection: Connection) {
68
+ return connection.edgeId && (await getRepository(Appliance).findOneBy({ id: connection.edgeId }))
69
+ }
70
+
63
71
  @FieldResolver(type => Domain)
64
72
  async domain(@Root() connection: Connection) {
65
- return connection.domain || (await getRepository(Domain).findOneBy({ id: connection.domainId }))
73
+ return (
74
+ connection.domain || (connection.domainId && (await getRepository(Domain).findOneBy({ id: connection.domainId })))
75
+ )
66
76
  }
67
77
 
68
78
  @FieldResolver(type => User)
69
79
  async updater(@Root() connection: Connection): Promise<User> {
70
- return await getRepository(User).findOneBy({ id: connection.updaterId })
80
+ return connection.updaterId && (await getRepository(User).findOneBy({ id: connection.updaterId }))
71
81
  }
72
82
 
73
83
  @FieldResolver(type => User)
74
84
  async creator(@Root() connection: Connection): Promise<User> {
75
- return await getRepository(User).findOneBy({ id: connection.creatorId })
85
+ return connection.creatorId && (await getRepository(User).findOneBy({ id: connection.creatorId }))
76
86
  }
77
87
  }
@@ -33,7 +33,7 @@ export class ConnectionSubscription {
33
33
 
34
34
  var connections = await getRepository(Connection).find({
35
35
  where,
36
- relations: ['domain']
36
+ relations: ['domain', 'edge']
37
37
  })
38
38
 
39
39
  connections.forEach(connection => {
@@ -10,11 +10,12 @@ import {
10
10
  UpdateDateColumn
11
11
  } from 'typeorm'
12
12
 
13
- import { User } from '@things-factory/auth-base'
13
+ import { User, Appliance } from '@things-factory/auth-base'
14
14
  import { logger } from '@things-factory/env'
15
- import { Domain } from '@things-factory/shell'
15
+ import { Domain, ObjectRef } from '@things-factory/shell'
16
16
 
17
17
  import { ConnectionManager } from '../../engine'
18
+ import { ProxyConnector } from '../../engine/connector/proxy-connector'
18
19
 
19
20
  export enum ConnectionStatus {
20
21
  CONNECTED = 'CONNECTED',
@@ -30,34 +31,34 @@ registerEnumType(ConnectionStatus, {
30
31
  @Index('ix_connection_0', (connection: Connection) => [connection.domain, connection.name], { unique: true })
31
32
  @ObjectType()
32
33
  export class Connection {
33
- /**
34
+ /**
34
35
  * Unique identifier for the connection, generated in UUID format.
35
36
  */
36
37
  @PrimaryGeneratedColumn('uuid')
37
38
  @Field(type => ID)
38
39
  readonly id: string
39
40
 
40
- /**
41
+ /**
41
42
  * Many-to-One relationship with the Domain entity.
42
43
  */
43
44
  @ManyToOne(type => Domain)
44
- @Field({ nullable: true })
45
+ @Field(type => Domain, { nullable: true })
45
46
  domain: Domain
46
47
 
47
- /**
48
+ /**
48
49
  * Stores the ID of the associated Domain.
49
50
  */
50
51
  @RelationId((connection: Connection) => connection.domain)
51
52
  domainId: string
52
53
 
53
- /**
54
+ /**
54
55
  * The name of the connection.
55
56
  */
56
57
  @Column()
57
58
  @Field()
58
59
  name: string
59
60
 
60
- /**
61
+ /**
61
62
  * Optional description for the connection.
62
63
  */
63
64
  @Column({
@@ -66,72 +67,81 @@ export class Connection {
66
67
  @Field({ nullable: true })
67
68
  description: string
68
69
 
69
- /**
70
+ /**
70
71
  * The type of the connection.
71
72
  */
72
73
  @Column()
73
74
  @Field({ nullable: true })
74
75
  type: string
75
76
 
76
- /**
77
+ /**
78
+ * Many-to-One relationship with the Appliance entity which delegate the connection. Optional field.
79
+ */
80
+ @ManyToOne(type => Appliance, { nullable: true })
81
+ @Field({ nullable: true })
82
+ edge: Appliance
83
+
84
+ /**
85
+ * Stores the ID of the Appliance who delegate the connection.
86
+ */
87
+ @RelationId((connection: Connection) => connection.edge)
88
+ edgeId: string
89
+
90
+ /**
77
91
  * The endpoint for the connection.
78
92
  */
79
93
  @Column()
80
94
  @Field({ nullable: true })
81
95
  endpoint: string
82
96
 
83
- /**
97
+ /**
84
98
  * Indicates the active status of the connection.
85
99
  */
86
- @Column({
87
- nullable: true
88
- })
100
+ @Column({ nullable: true })
89
101
  @Field({ nullable: true })
90
102
  active: boolean
91
103
 
92
- /**
104
+ /**
93
105
  * The status of the connection, using the ConnectionStatus type.
94
106
  */
95
107
  @Field({ nullable: true })
96
108
  state: ConnectionStatus
97
109
 
98
- /**
110
+ /**
99
111
  * Additional parameters for the connection, stored as a JSON string.
100
112
  */
101
- @Column({
102
- nullable: true
103
- })
113
+ @Column({ nullable: true })
104
114
  @Field({ nullable: true })
105
115
  params: string
106
116
 
107
- /**
117
+ /**
108
118
  * The date and time when the connection was created.
109
119
  */
110
120
  @CreateDateColumn()
111
121
  @Field({ nullable: true })
112
122
  createdAt: Date
113
123
 
114
- /**
124
+ /**
115
125
  * The date and time when the connection was last updated.
116
126
  */
117
127
  @UpdateDateColumn()
118
128
  @Field({ nullable: true })
119
129
  updatedAt: Date
120
130
 
121
- /**
131
+ /**
122
132
  * Many-to-One relationship with the User entity who created the connection. Optional field.
123
133
  */
124
134
  @ManyToOne(type => User, { nullable: true })
125
135
  @Field({ nullable: true })
126
136
  creator: User
127
137
 
128
- /**
138
+ /**
129
139
  * Stores the ID of the User who created the connection.
130
140
  */
131
141
  @RelationId((connection: Connection) => connection.creator)
132
142
  creatorId: string
133
143
 
134
- /**
144
+ /**
135
145
  * Many-to-One relationship with the User entity who last updated the connection.
136
146
  * Optional field.
137
147
  */
@@ -141,17 +151,18 @@ export class Connection {
141
151
 
142
152
  /**
143
153
  * Stores the ID of the User who last updated the connection.
144
- *
154
+ *
145
155
  */
146
156
  @RelationId((connection: Connection) => connection.updater)
147
157
  updaterId: string
148
158
 
149
159
  /**
150
160
  * Asynchronous method to establish the connection.
151
- *
161
+ *
152
162
  */
153
163
  async connect() {
154
- var connector = ConnectionManager.getConnector(this.type)
164
+ const { type, edge } = this
165
+ const connector = edge ? ProxyConnector.instance : ConnectionManager.getConnector(type)
155
166
  var params = {}
156
167
 
157
168
  try {
@@ -168,11 +179,12 @@ export class Connection {
168
179
 
169
180
  /**
170
181
  * @brief Asynchronous method to disconnect the connection.
171
- *
182
+ *
172
183
  */
173
184
  async disconnect() {
174
185
  try {
175
- var connector = ConnectionManager.getConnector(this.type)
186
+ const { type, edge } = this
187
+ const connector = edge ? ProxyConnector.instance : ConnectionManager.getConnector(type)
176
188
  await connector.disconnect(this)
177
189
  } finally {
178
190
  }
@@ -182,15 +194,15 @@ export class Connection {
182
194
  /**
183
195
  * Connection의 params의 원 타입과 사용 시에 타입 불일치로 인해 임시적으로 생성한 타입으로
184
196
  * 추후, 타입 일치를 통해서 제거할 예정임.
185
- *
197
+ *
186
198
  */
187
199
  export interface InputConnection extends Connection {
188
- params: any;
200
+ params: any
189
201
  }
190
202
 
191
203
  @ObjectType()
192
204
  export class ConnectionState {
193
- @Field({ nullable: true })
205
+ @Field(type => Domain)
194
206
  domain?: Domain
195
207
 
196
208
  @Field({ nullable: true })
@@ -205,6 +217,9 @@ export class ConnectionState {
205
217
  @Field({ nullable: true })
206
218
  type?: string
207
219
 
220
+ @Field(type => Appliance, { nullable: true })
221
+ edge?: Appliance
222
+
208
223
  @Field({ nullable: true })
209
224
  state?: ConnectionStatus
210
225
 
@@ -223,6 +238,9 @@ export class NewConnection {
223
238
  @Field({ nullable: true })
224
239
  type?: string
225
240
 
241
+ @Field(type => ObjectRef, { nullable: true })
242
+ edge?: Appliance
243
+
226
244
  @Field({ nullable: true })
227
245
  endpoint?: string
228
246
 
@@ -244,6 +262,9 @@ export class ConnectionPatch {
244
262
  @Field({ nullable: true })
245
263
  type?: string
246
264
 
265
+ @Field(type => ObjectRef, { nullable: true })
266
+ edge?: Appliance
267
+
247
268
  @Field({ nullable: true })
248
269
  endpoint?: string
249
270
 
@@ -146,6 +146,6 @@ export async function createPayloadLog(
146
146
  updatedAt: new Date()
147
147
  })
148
148
  } catch (error) {
149
- logger.error(`PayloadLog Error: ${error}`)
149
+ logger.error(`PayloadLog Error`, error)
150
150
  }
151
151
  }
@@ -18,7 +18,10 @@ export class PayloadLogQuery {
18
18
  }
19
19
 
20
20
  @Query(returns => PayloadLogList, { description: 'To fetch multiple PayloadLogs' })
21
- async payloadLogs(@Args() params: ListParam, @Ctx() context: ResolverContext): Promise<PayloadLogList> {
21
+ async payloadLogs(
22
+ @Args(type => ListParam) params: ListParam,
23
+ @Ctx() context: ResolverContext
24
+ ): Promise<PayloadLogList> {
22
25
  const { domain } = context.state
23
26
 
24
27
  const convertedParams = convertListParams(params, {
@@ -32,7 +32,7 @@ export class PayloadLog {
32
32
  readonly id: string
33
33
 
34
34
  @ManyToOne(type => Domain)
35
- @Field({ nullable: true })
35
+ @Field(type => Domain)
36
36
  domain?: Domain
37
37
 
38
38
  @RelationId((payloadLog: PayloadLog) => payloadLog.domain)
@@ -47,8 +47,8 @@ export class PayloadLog {
47
47
  DATABASE_TYPE == 'postgres' || DATABASE_TYPE == 'mysql' || DATABASE_TYPE == 'mariadb'
48
48
  ? 'enum'
49
49
  : DATABASE_TYPE == 'oracle'
50
- ? 'varchar2'
51
- : 'smallint',
50
+ ? 'varchar2'
51
+ : 'smallint',
52
52
  enum: PayloadType,
53
53
  default: PayloadType.EGESTION,
54
54
  nullable: true
@@ -81,14 +81,14 @@ export class PayloadLog {
81
81
  updatedAt?: Date
82
82
 
83
83
  @ManyToOne(type => User, { nullable: true })
84
- @Field({ nullable: true })
84
+ @Field(type => User, { nullable: true })
85
85
  creator?: User
86
86
 
87
87
  @RelationId((payloadLog: PayloadLog) => payloadLog.creator)
88
88
  creatorId?: string
89
89
 
90
90
  @ManyToOne(type => User, { nullable: true })
91
- @Field({ nullable: true })
91
+ @Field(type => User, { nullable: true })
92
92
  updater?: User
93
93
 
94
94
  @RelationId((payloadLog: PayloadLog) => payloadLog.updater)
@@ -18,4 +18,7 @@ export class PropertySpec {
18
18
 
19
19
  @Field(type => ScalarObject, { nullable: true })
20
20
  property?: { [key: string]: any }
21
+
22
+ @Field(type => ScalarObject, { nullable: true })
23
+ styles?: { [key: string]: any }
21
24
  }
@@ -26,7 +26,7 @@ export class ScenarioQuery {
26
26
 
27
27
  @Directive('@privilege(category: "scenario", privilege: "query", domainOwnerGranted: true)')
28
28
  @Query(returns => ScenarioList, { description: 'To fetch multiple scenarios' })
29
- async scenarios(@Args() params: ListParam, @Ctx() context: ResolverContext): Promise<ScenarioList> {
29
+ async scenarios(@Args(type => ListParam) params: ListParam, @Ctx() context: ResolverContext): Promise<ScenarioList> {
30
30
  const { domain } = context.state
31
31
 
32
32
  const queryBuilder = getQueryBuilderFromListParams({
@@ -22,6 +22,9 @@ export class NewScenario {
22
22
  @Field({ nullable: true })
23
23
  timezone?: string
24
24
 
25
+ @Field({ nullable: true })
26
+ ttl?: number
27
+
25
28
  @Field({ nullable: true })
26
29
  active?: boolean
27
30
 
@@ -49,6 +52,9 @@ export class ScenarioPatch {
49
52
  @Field({ nullable: true })
50
53
  timezone?: string
51
54
 
55
+ @Field({ nullable: true })
56
+ ttl?: number
57
+
52
58
  @Field({ nullable: true })
53
59
  active?: boolean
54
60