@things-factory/integration-base 9.0.0-beta.24 → 9.0.0-beta.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +8 -8
- package/dist-server/controllers/index.d.ts +0 -2
- package/dist-server/controllers/index.js +0 -6
- package/dist-server/controllers/index.js.map +0 -1
- package/dist-server/controllers/publish-data.d.ts +0 -6
- package/dist-server/controllers/publish-data.js +0 -22
- package/dist-server/controllers/publish-data.js.map +0 -1
- package/dist-server/controllers/scenario-controller.d.ts +0 -6
- package/dist-server/controllers/scenario-controller.js +0 -99
- package/dist-server/controllers/scenario-controller.js.map +0 -1
- package/dist-server/engine/analyzer/analyze-integration.d.ts +0 -5
- package/dist-server/engine/analyzer/analyze-integration.js +0 -96
- package/dist-server/engine/analyzer/analyze-integration.js.map +0 -1
- package/dist-server/engine/connection-manager.d.ts +0 -35
- package/dist-server/engine/connection-manager.js +0 -192
- package/dist-server/engine/connection-manager.js.map +0 -1
- package/dist-server/engine/connector/echo-back-connector.d.ts +0 -9
- package/dist-server/engine/connector/echo-back-connector.js +0 -39
- package/dist-server/engine/connector/echo-back-connector.js.map +0 -1
- package/dist-server/engine/connector/echo-back-server.d.ts +0 -8
- package/dist-server/engine/connector/echo-back-server.js +0 -58
- package/dist-server/engine/connector/echo-back-server.js.map +0 -1
- package/dist-server/engine/connector/graphql-connector.d.ts +0 -19
- package/dist-server/engine/connector/graphql-connector.js +0 -94
- package/dist-server/engine/connector/graphql-connector.js.map +0 -1
- package/dist-server/engine/connector/headless-connector.d.ts +0 -23
- package/dist-server/engine/connector/headless-connector.js +0 -357
- package/dist-server/engine/connector/headless-connector.js.map +0 -1
- package/dist-server/engine/connector/http-connector.d.ts +0 -25
- package/dist-server/engine/connector/http-connector.js +0 -52
- package/dist-server/engine/connector/http-connector.js.map +0 -1
- package/dist-server/engine/connector/index.d.ts +0 -13
- package/dist-server/engine/connector/index.js +0 -16
- package/dist-server/engine/connector/index.js.map +0 -1
- package/dist-server/engine/connector/mqtt-connector.d.ts +0 -14
- package/dist-server/engine/connector/mqtt-connector.js +0 -62
- package/dist-server/engine/connector/mqtt-connector.js.map +0 -1
- package/dist-server/engine/connector/mssql-connector.d.ts +0 -40
- package/dist-server/engine/connector/mssql-connector.js +0 -137
- package/dist-server/engine/connector/mssql-connector.js.map +0 -1
- package/dist-server/engine/connector/mysql-connector.d.ts +0 -13
- package/dist-server/engine/connector/mysql-connector.js +0 -80
- package/dist-server/engine/connector/mysql-connector.js.map +0 -1
- package/dist-server/engine/connector/operato-connector.d.ts +0 -27
- package/dist-server/engine/connector/operato-connector.js +0 -205
- package/dist-server/engine/connector/operato-connector.js.map +0 -1
- package/dist-server/engine/connector/oracle-connector.d.ts +0 -29
- package/dist-server/engine/connector/oracle-connector.js +0 -187
- package/dist-server/engine/connector/oracle-connector.js.map +0 -1
- package/dist-server/engine/connector/postgresql-connector.d.ts +0 -20
- package/dist-server/engine/connector/postgresql-connector.js +0 -136
- package/dist-server/engine/connector/postgresql-connector.js.map +0 -1
- package/dist-server/engine/connector/proxy-connector.d.ts +0 -15
- package/dist-server/engine/connector/proxy-connector.js +0 -44
- package/dist-server/engine/connector/proxy-connector.js.map +0 -1
- package/dist-server/engine/connector/socket-server.d.ts +0 -9
- package/dist-server/engine/connector/socket-server.js +0 -76
- package/dist-server/engine/connector/socket-server.js.map +0 -1
- package/dist-server/engine/connector/sqlite-connector.d.ts +0 -10
- package/dist-server/engine/connector/sqlite-connector.js +0 -58
- package/dist-server/engine/connector/sqlite-connector.js.map +0 -1
- package/dist-server/engine/edge-client.d.ts +0 -18
- package/dist-server/engine/edge-client.js +0 -37
- package/dist-server/engine/edge-client.js.map +0 -1
- package/dist-server/engine/index.d.ts +0 -9
- package/dist-server/engine/index.js +0 -12
- package/dist-server/engine/index.js.map +0 -1
- package/dist-server/engine/pending-queue.d.ts +0 -24
- package/dist-server/engine/pending-queue.js +0 -75
- package/dist-server/engine/pending-queue.js.map +0 -1
- package/dist-server/engine/resource-pool/headless-pool.d.ts +0 -1
- package/dist-server/engine/resource-pool/headless-pool.js +0 -62
- package/dist-server/engine/resource-pool/headless-pool.js.map +0 -1
- package/dist-server/engine/resource-pool/index.d.ts +0 -1
- package/dist-server/engine/resource-pool/index.js +0 -5
- package/dist-server/engine/resource-pool/index.js.map +0 -1
- package/dist-server/engine/scenario-engine.d.ts +0 -11
- package/dist-server/engine/scenario-engine.js +0 -79
- package/dist-server/engine/scenario-engine.js.map +0 -1
- package/dist-server/engine/task/book-up-scenario.d.ts +0 -1
- package/dist-server/engine/task/book-up-scenario.js +0 -63
- package/dist-server/engine/task/book-up-scenario.js.map +0 -1
- package/dist-server/engine/task/csv-readline.d.ts +0 -1
- package/dist-server/engine/task/csv-readline.js +0 -103
- package/dist-server/engine/task/csv-readline.js.map +0 -1
- package/dist-server/engine/task/data-accessor.d.ts +0 -1
- package/dist-server/engine/task/data-accessor.js +0 -28
- package/dist-server/engine/task/data-accessor.js.map +0 -1
- package/dist-server/engine/task/data-mapper.d.ts +0 -1
- package/dist-server/engine/task/data-mapper.js +0 -37
- package/dist-server/engine/task/data-mapper.js.map +0 -1
- package/dist-server/engine/task/database-query.d.ts +0 -1
- package/dist-server/engine/task/database-query.js +0 -46
- package/dist-server/engine/task/database-query.js.map +0 -1
- package/dist-server/engine/task/echo-receive.d.ts +0 -1
- package/dist-server/engine/task/echo-receive.js +0 -15
- package/dist-server/engine/task/echo-receive.js.map +0 -1
- package/dist-server/engine/task/echo-send.d.ts +0 -1
- package/dist-server/engine/task/echo-send.js +0 -24
- package/dist-server/engine/task/echo-send.js.map +0 -1
- package/dist-server/engine/task/empty-check.d.ts +0 -1
- package/dist-server/engine/task/empty-check.js +0 -30
- package/dist-server/engine/task/empty-check.js.map +0 -1
- package/dist-server/engine/task/end.d.ts +0 -1
- package/dist-server/engine/task/end.js +0 -14
- package/dist-server/engine/task/end.js.map +0 -1
- package/dist-server/engine/task/floating-point.d.ts +0 -1
- package/dist-server/engine/task/floating-point.js +0 -62
- package/dist-server/engine/task/floating-point.js.map +0 -1
- package/dist-server/engine/task/goto.d.ts +0 -1
- package/dist-server/engine/task/goto.js +0 -20
- package/dist-server/engine/task/goto.js.map +0 -1
- package/dist-server/engine/task/graphql-mutate.d.ts +0 -1
- package/dist-server/engine/task/graphql-mutate.js +0 -70
- package/dist-server/engine/task/graphql-mutate.js.map +0 -1
- package/dist-server/engine/task/graphql-query.d.ts +0 -1
- package/dist-server/engine/task/graphql-query.js +0 -70
- package/dist-server/engine/task/graphql-query.js.map +0 -1
- package/dist-server/engine/task/headless-post.d.ts +0 -1
- package/dist-server/engine/task/headless-post.js +0 -110
- package/dist-server/engine/task/headless-post.js.map +0 -1
- package/dist-server/engine/task/headless-scrap.d.ts +0 -1
- package/dist-server/engine/task/headless-scrap.js +0 -71
- package/dist-server/engine/task/headless-scrap.js.map +0 -1
- package/dist-server/engine/task/http-get.d.ts +0 -1
- package/dist-server/engine/task/http-get.js +0 -101
- package/dist-server/engine/task/http-get.js.map +0 -1
- package/dist-server/engine/task/http-post.d.ts +0 -1
- package/dist-server/engine/task/http-post.js +0 -130
- package/dist-server/engine/task/http-post.js.map +0 -1
- package/dist-server/engine/task/index.d.ts +0 -45
- package/dist-server/engine/task/index.js +0 -48
- package/dist-server/engine/task/index.js.map +0 -1
- package/dist-server/engine/task/jsonata.d.ts +0 -1
- package/dist-server/engine/task/jsonata.js +0 -37
- package/dist-server/engine/task/jsonata.js.map +0 -1
- package/dist-server/engine/task/local-graphql-mutate.d.ts +0 -1
- package/dist-server/engine/task/local-graphql-mutate.js +0 -89
- package/dist-server/engine/task/local-graphql-mutate.js.map +0 -1
- package/dist-server/engine/task/local-graphql-query.d.ts +0 -1
- package/dist-server/engine/task/local-graphql-query.js +0 -89
- package/dist-server/engine/task/local-graphql-query.js.map +0 -1
- package/dist-server/engine/task/log.d.ts +0 -1
- package/dist-server/engine/task/log.js +0 -68
- package/dist-server/engine/task/log.js.map +0 -1
- package/dist-server/engine/task/mqtt-publish.d.ts +0 -1
- package/dist-server/engine/task/mqtt-publish.js +0 -35
- package/dist-server/engine/task/mqtt-publish.js.map +0 -1
- package/dist-server/engine/task/mqtt-subscribe.d.ts +0 -1
- package/dist-server/engine/task/mqtt-subscribe.js +0 -113
- package/dist-server/engine/task/mqtt-subscribe.js.map +0 -1
- package/dist-server/engine/task/mssql-procedure.d.ts +0 -1
- package/dist-server/engine/task/mssql-procedure.js +0 -94
- package/dist-server/engine/task/mssql-procedure.js.map +0 -1
- package/dist-server/engine/task/oracle-procedure.d.ts +0 -1
- package/dist-server/engine/task/oracle-procedure.js +0 -91
- package/dist-server/engine/task/oracle-procedure.js.map +0 -1
- package/dist-server/engine/task/pick-pending-scenario.d.ts +0 -1
- package/dist-server/engine/task/pick-pending-scenario.js +0 -61
- package/dist-server/engine/task/pick-pending-scenario.js.map +0 -1
- package/dist-server/engine/task/publish.d.ts +0 -1
- package/dist-server/engine/task/publish.js +0 -31
- package/dist-server/engine/task/publish.js.map +0 -1
- package/dist-server/engine/task/random.d.ts +0 -1
- package/dist-server/engine/task/random.js +0 -45
- package/dist-server/engine/task/random.js.map +0 -1
- package/dist-server/engine/task/reset-pending-queue.d.ts +0 -1
- package/dist-server/engine/task/reset-pending-queue.js +0 -13
- package/dist-server/engine/task/reset-pending-queue.js.map +0 -1
- package/dist-server/engine/task/script.d.ts +0 -1
- package/dist-server/engine/task/script.js +0 -55
- package/dist-server/engine/task/script.js.map +0 -1
- package/dist-server/engine/task/set-domain.d.ts +0 -1
- package/dist-server/engine/task/set-domain.js +0 -27
- package/dist-server/engine/task/set-domain.js.map +0 -1
- package/dist-server/engine/task/sleep.d.ts +0 -1
- package/dist-server/engine/task/sleep.js +0 -26
- package/dist-server/engine/task/sleep.js.map +0 -1
- package/dist-server/engine/task/socket-listener.d.ts +0 -1
- package/dist-server/engine/task/socket-listener.js +0 -86
- package/dist-server/engine/task/socket-listener.js.map +0 -1
- package/dist-server/engine/task/state-group-read.d.ts +0 -1
- package/dist-server/engine/task/state-group-read.js +0 -62
- package/dist-server/engine/task/state-group-read.js.map +0 -1
- package/dist-server/engine/task/state-read.d.ts +0 -1
- package/dist-server/engine/task/state-read.js +0 -49
- package/dist-server/engine/task/state-read.js.map +0 -1
- package/dist-server/engine/task/state-write.d.ts +0 -1
- package/dist-server/engine/task/state-write.js +0 -57
- package/dist-server/engine/task/state-write.js.map +0 -1
- package/dist-server/engine/task/stop-scenario.d.ts +0 -1
- package/dist-server/engine/task/stop-scenario.js +0 -35
- package/dist-server/engine/task/stop-scenario.js.map +0 -1
- package/dist-server/engine/task/sub-scenario.d.ts +0 -1
- package/dist-server/engine/task/sub-scenario.js +0 -45
- package/dist-server/engine/task/sub-scenario.js.map +0 -1
- package/dist-server/engine/task/switch-goto.d.ts +0 -1
- package/dist-server/engine/task/switch-goto.js +0 -32
- package/dist-server/engine/task/switch-goto.js.map +0 -1
- package/dist-server/engine/task/switch-range-goto.d.ts +0 -1
- package/dist-server/engine/task/switch-range-goto.js +0 -39
- package/dist-server/engine/task/switch-range-goto.js.map +0 -1
- package/dist-server/engine/task/switch-range-scenario.d.ts +0 -1
- package/dist-server/engine/task/switch-range-scenario.js +0 -60
- package/dist-server/engine/task/switch-range-scenario.js.map +0 -1
- package/dist-server/engine/task/switch-range-set.d.ts +0 -1
- package/dist-server/engine/task/switch-range-set.js +0 -35
- package/dist-server/engine/task/switch-range-set.js.map +0 -1
- package/dist-server/engine/task/switch-scenario.d.ts +0 -1
- package/dist-server/engine/task/switch-scenario.js +0 -53
- package/dist-server/engine/task/switch-scenario.js.map +0 -1
- package/dist-server/engine/task/switch-set.d.ts +0 -1
- package/dist-server/engine/task/switch-set.js +0 -28
- package/dist-server/engine/task/switch-set.js.map +0 -1
- package/dist-server/engine/task/throw.d.ts +0 -1
- package/dist-server/engine/task/throw.js +0 -19
- package/dist-server/engine/task/throw.js.map +0 -1
- package/dist-server/engine/task/utils/headless-pool-for-scenario.d.ts +0 -1
- package/dist-server/engine/task/utils/headless-pool-for-scenario.js +0 -64
- package/dist-server/engine/task/utils/headless-pool-for-scenario.js.map +0 -1
- package/dist-server/engine/task/utils/substitute.d.ts +0 -1
- package/dist-server/engine/task/utils/substitute.js +0 -45
- package/dist-server/engine/task/utils/substitute.js.map +0 -1
- package/dist-server/engine/task/variables.d.ts +0 -1
- package/dist-server/engine/task/variables.js +0 -13
- package/dist-server/engine/task/variables.js.map +0 -1
- package/dist-server/engine/task-registry.d.ts +0 -12
- package/dist-server/engine/task-registry.js +0 -20
- package/dist-server/engine/task-registry.js.map +0 -1
- package/dist-server/engine/types.d.ts +0 -94
- package/dist-server/engine/types.js +0 -3
- package/dist-server/engine/types.js.map +0 -1
- package/dist-server/index.d.ts +0 -6
- package/dist-server/index.js +0 -21
- package/dist-server/index.js.map +0 -1
- package/dist-server/migrations/index.d.ts +0 -1
- package/dist-server/migrations/index.js +0 -12
- package/dist-server/migrations/index.js.map +0 -1
- package/dist-server/restful/index.d.ts +0 -1
- package/dist-server/restful/index.js +0 -4
- package/dist-server/restful/index.js.map +0 -1
- package/dist-server/restful/unstable/index.d.ts +0 -7
- package/dist-server/restful/unstable/index.js +0 -10
- package/dist-server/restful/unstable/index.js.map +0 -1
- package/dist-server/restful/unstable/run-scenario.d.ts +0 -1
- package/dist-server/restful/unstable/run-scenario.js +0 -45
- package/dist-server/restful/unstable/run-scenario.js.map +0 -1
- package/dist-server/restful/unstable/scenario-instance.d.ts +0 -1
- package/dist-server/restful/unstable/scenario-instance.js +0 -52
- package/dist-server/restful/unstable/scenario-instance.js.map +0 -1
- package/dist-server/restful/unstable/scenario-instances.d.ts +0 -1
- package/dist-server/restful/unstable/scenario-instances.js +0 -74
- package/dist-server/restful/unstable/scenario-instances.js.map +0 -1
- package/dist-server/restful/unstable/scenario.d.ts +0 -1
- package/dist-server/restful/unstable/scenario.js +0 -41
- package/dist-server/restful/unstable/scenario.js.map +0 -1
- package/dist-server/restful/unstable/scenarios.d.ts +0 -1
- package/dist-server/restful/unstable/scenarios.js +0 -63
- package/dist-server/restful/unstable/scenarios.js.map +0 -1
- package/dist-server/restful/unstable/start-scenario.d.ts +0 -1
- package/dist-server/restful/unstable/start-scenario.js +0 -33
- package/dist-server/restful/unstable/start-scenario.js.map +0 -1
- package/dist-server/restful/unstable/stop-scenario.d.ts +0 -1
- package/dist-server/restful/unstable/stop-scenario.js +0 -30
- package/dist-server/restful/unstable/stop-scenario.js.map +0 -1
- package/dist-server/routers/scenario-schedule-callback-router.d.ts +0 -1
- package/dist-server/routers/scenario-schedule-callback-router.js +0 -55
- package/dist-server/routers/scenario-schedule-callback-router.js.map +0 -1
- package/dist-server/routers/scenario-view-router.d.ts +0 -1
- package/dist-server/routers/scenario-view-router.js +0 -41
- package/dist-server/routers/scenario-view-router.js.map +0 -1
- package/dist-server/routes.d.ts +0 -1
- package/dist-server/routes.js +0 -23
- package/dist-server/routes.js.map +0 -1
- package/dist-server/service/analysis/analysis-query.d.ts +0 -3
- package/dist-server/service/analysis/analysis-query.js +0 -25
- package/dist-server/service/analysis/analysis-query.js.map +0 -1
- package/dist-server/service/analysis/index.d.ts +0 -2
- package/dist-server/service/analysis/index.js +0 -6
- package/dist-server/service/analysis/index.js.map +0 -1
- package/dist-server/service/connection/connection-mutation.d.ts +0 -30
- package/dist-server/service/connection/connection-mutation.js +0 -182
- package/dist-server/service/connection/connection-mutation.js.map +0 -1
- package/dist-server/service/connection/connection-query.d.ts +0 -12
- package/dist-server/service/connection/connection-query.js +0 -112
- package/dist-server/service/connection/connection-query.js.map +0 -1
- package/dist-server/service/connection/connection-subscription.d.ts +0 -10
- package/dist-server/service/connection/connection-subscription.js +0 -98
- package/dist-server/service/connection/connection-subscription.js.map +0 -1
- package/dist-server/service/connection/connection-type.d.ts +0 -133
- package/dist-server/service/connection/connection-type.js +0 -294
- package/dist-server/service/connection/connection-type.js.map +0 -1
- package/dist-server/service/connection/index.d.ts +0 -6
- package/dist-server/service/connection/index.js +0 -10
- package/dist-server/service/connection/index.js.map +0 -1
- package/dist-server/service/connector/connector-query.d.ts +0 -6
- package/dist-server/service/connector/connector-query.js +0 -77
- package/dist-server/service/connector/connector-query.js.map +0 -1
- package/dist-server/service/connector/connector-type.d.ts +0 -12
- package/dist-server/service/connector/connector-type.js +0 -47
- package/dist-server/service/connector/connector-type.js.map +0 -1
- package/dist-server/service/connector/index.d.ts +0 -3
- package/dist-server/service/connector/index.js +0 -7
- package/dist-server/service/connector/index.js.map +0 -1
- package/dist-server/service/index.d.ts +0 -17
- package/dist-server/service/index.js +0 -55
- package/dist-server/service/index.js.map +0 -1
- package/dist-server/service/payload-log/index.d.ts +0 -5
- package/dist-server/service/payload-log/index.js +0 -9
- package/dist-server/service/payload-log/index.js.map +0 -1
- package/dist-server/service/payload-log/payload-log-mutation.d.ts +0 -10
- package/dist-server/service/payload-log/payload-log-mutation.js +0 -134
- package/dist-server/service/payload-log/payload-log-mutation.js.map +0 -1
- package/dist-server/service/payload-log/payload-log-query.d.ts +0 -11
- package/dist-server/service/payload-log/payload-log-query.js +0 -76
- package/dist-server/service/payload-log/payload-log-query.js.map +0 -1
- package/dist-server/service/payload-log/payload-log-type.d.ts +0 -15
- package/dist-server/service/payload-log/payload-log-type.js +0 -57
- package/dist-server/service/payload-log/payload-log-type.js.map +0 -1
- package/dist-server/service/payload-log/payload-log.d.ts +0 -23
- package/dist-server/service/payload-log/payload-log.js +0 -110
- package/dist-server/service/payload-log/payload-log.js.map +0 -1
- package/dist-server/service/property-spec.d.ts +0 -12
- package/dist-server/service/property-spec.js +0 -37
- package/dist-server/service/property-spec.js.map +0 -1
- package/dist-server/service/scenario/index.d.ts +0 -5
- package/dist-server/service/scenario/index.js +0 -9
- package/dist-server/service/scenario/index.js.map +0 -1
- package/dist-server/service/scenario/scenario-mutation.d.ts +0 -13
- package/dist-server/service/scenario/scenario-mutation.js +0 -327
- package/dist-server/service/scenario/scenario-mutation.js.map +0 -1
- package/dist-server/service/scenario/scenario-query.d.ts +0 -19
- package/dist-server/service/scenario/scenario-query.js +0 -167
- package/dist-server/service/scenario/scenario-query.js.map +0 -1
- package/dist-server/service/scenario/scenario-type.d.ts +0 -30
- package/dist-server/service/scenario/scenario-type.js +0 -111
- package/dist-server/service/scenario/scenario-type.js.map +0 -1
- package/dist-server/service/scenario/scenario.d.ts +0 -38
- package/dist-server/service/scenario/scenario.js +0 -142
- package/dist-server/service/scenario/scenario.js.map +0 -1
- package/dist-server/service/scenario-flow/scenario-flow.d.ts +0 -6
- package/dist-server/service/scenario-flow/scenario-flow.js +0 -28
- package/dist-server/service/scenario-flow/scenario-flow.js.map +0 -1
- package/dist-server/service/scenario-instance/index.d.ts +0 -5
- package/dist-server/service/scenario-instance/index.js +0 -9
- package/dist-server/service/scenario-instance/index.js.map +0 -1
- package/dist-server/service/scenario-instance/scenario-instance-mutation.d.ts +0 -6
- package/dist-server/service/scenario-instance/scenario-instance-mutation.js +0 -54
- package/dist-server/service/scenario-instance/scenario-instance-mutation.js.map +0 -1
- package/dist-server/service/scenario-instance/scenario-instance-query.d.ts +0 -6
- package/dist-server/service/scenario-instance/scenario-instance-query.js +0 -45
- package/dist-server/service/scenario-instance/scenario-instance-query.js.map +0 -1
- package/dist-server/service/scenario-instance/scenario-instance-subscription.d.ts +0 -10
- package/dist-server/service/scenario-instance/scenario-instance-subscription.js +0 -109
- package/dist-server/service/scenario-instance/scenario-instance-subscription.js.map +0 -1
- package/dist-server/service/scenario-instance/scenario-instance-type.d.ts +0 -102
- package/dist-server/service/scenario-instance/scenario-instance-type.js +0 -533
- package/dist-server/service/scenario-instance/scenario-instance-type.js.map +0 -1
- package/dist-server/service/scenario-queue/index.d.ts +0 -3
- package/dist-server/service/scenario-queue/index.js +0 -7
- package/dist-server/service/scenario-queue/index.js.map +0 -1
- package/dist-server/service/scenario-queue/scenario-queue-subscription.d.ts +0 -6
- package/dist-server/service/scenario-queue/scenario-queue-subscription.js +0 -58
- package/dist-server/service/scenario-queue/scenario-queue-subscription.js.map +0 -1
- package/dist-server/service/scenario-queue/scenario-queue-type.d.ts +0 -11
- package/dist-server/service/scenario-queue/scenario-queue-type.js +0 -43
- package/dist-server/service/scenario-queue/scenario-queue-type.js.map +0 -1
- package/dist-server/service/state-register/data-resolver.d.ts +0 -6
- package/dist-server/service/state-register/data-resolver.js +0 -61
- package/dist-server/service/state-register/data-resolver.js.map +0 -1
- package/dist-server/service/state-register/index.d.ts +0 -7
- package/dist-server/service/state-register/index.js +0 -11
- package/dist-server/service/state-register/index.js.map +0 -1
- package/dist-server/service/state-register/state-register-mutation.d.ts +0 -11
- package/dist-server/service/state-register/state-register-mutation.js +0 -153
- package/dist-server/service/state-register/state-register-mutation.js.map +0 -1
- package/dist-server/service/state-register/state-register-query.d.ts +0 -14
- package/dist-server/service/state-register/state-register-query.js +0 -123
- package/dist-server/service/state-register/state-register-query.js.map +0 -1
- package/dist-server/service/state-register/state-register-type.d.ts +0 -29
- package/dist-server/service/state-register/state-register-type.js +0 -114
- package/dist-server/service/state-register/state-register-type.js.map +0 -1
- package/dist-server/service/state-register/state-register.d.ts +0 -25
- package/dist-server/service/state-register/state-register.js +0 -128
- package/dist-server/service/state-register/state-register.js.map +0 -1
- package/dist-server/service/step/index.d.ts +0 -5
- package/dist-server/service/step/index.js +0 -9
- package/dist-server/service/step/index.js.map +0 -1
- package/dist-server/service/step/step-mutation.d.ts +0 -5
- package/dist-server/service/step/step-mutation.js +0 -55
- package/dist-server/service/step/step-mutation.js.map +0 -1
- package/dist-server/service/step/step-query.d.ts +0 -12
- package/dist-server/service/step/step-query.js +0 -89
- package/dist-server/service/step/step-query.js.map +0 -1
- package/dist-server/service/step/step-type.d.ts +0 -111
- package/dist-server/service/step/step-type.js +0 -212
- package/dist-server/service/step/step-type.js.map +0 -1
- package/dist-server/service/task-type/index.d.ts +0 -3
- package/dist-server/service/task-type/index.js +0 -7
- package/dist-server/service/task-type/index.js.map +0 -1
- package/dist-server/service/task-type/task-type-query.d.ts +0 -6
- package/dist-server/service/task-type/task-type-query.js +0 -108
- package/dist-server/service/task-type/task-type-query.js.map +0 -1
- package/dist-server/service/task-type/task-type-type.d.ts +0 -12
- package/dist-server/service/task-type/task-type-type.js +0 -47
- package/dist-server/service/task-type/task-type-type.js.map +0 -1
- package/dist-server/tsconfig.tsbuildinfo +0 -1
@@ -1,327 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.ScenarioMutation = void 0;
|
4
|
-
const tslib_1 = require("tslib");
|
5
|
-
const type_graphql_1 = require("type-graphql");
|
6
|
-
const typeorm_1 = require("typeorm");
|
7
|
-
const scheduler_client_1 = require("@things-factory/scheduler-client");
|
8
|
-
const step_type_1 = require("../step/step-type");
|
9
|
-
const scenario_1 = require("./scenario");
|
10
|
-
const scenario_type_1 = require("./scenario-type");
|
11
|
-
const crypto = require('crypto');
|
12
|
-
let ScenarioMutation = class ScenarioMutation {
|
13
|
-
async createScenario(scenario, context) {
|
14
|
-
const { domain, user, tx } = context.state;
|
15
|
-
return await tx.getRepository(scenario_1.Scenario).save(Object.assign(Object.assign({}, scenario), { domain, creator: user, updater: user }));
|
16
|
-
}
|
17
|
-
async updateScenario(name, patch, context) {
|
18
|
-
const { domain, user, tx } = context.state;
|
19
|
-
const repository = tx.getRepository(scenario_1.Scenario);
|
20
|
-
const scenario = await repository.findOne({
|
21
|
-
where: { domain: { id: domain.id }, name }
|
22
|
-
});
|
23
|
-
if (!scenario) {
|
24
|
-
throw new Error(context.t('error.scenario not found', {
|
25
|
-
scenario: name
|
26
|
-
}));
|
27
|
-
}
|
28
|
-
return await repository.save(Object.assign(Object.assign(Object.assign({}, scenario), patch), { updater: user }));
|
29
|
-
}
|
30
|
-
async updateMultipleScenario(patches, context) {
|
31
|
-
const { domain, user, tx } = context.state;
|
32
|
-
let results = [];
|
33
|
-
const _createRecords = patches.filter((patch) => patch.cuFlag.toUpperCase() === '+');
|
34
|
-
const _updateRecords = patches.filter((patch) => patch.cuFlag.toUpperCase() === 'M');
|
35
|
-
const scenarioRepo = tx.getRepository(scenario_1.Scenario);
|
36
|
-
if (_createRecords.length > 0) {
|
37
|
-
for (let i = 0; i < _createRecords.length; i++) {
|
38
|
-
const newRecord = _createRecords[i];
|
39
|
-
const result = await scenarioRepo.save(Object.assign(Object.assign({}, newRecord), { domain, creator: user, updater: user }));
|
40
|
-
results.push(Object.assign(Object.assign({}, result), { cuFlag: '+' }));
|
41
|
-
}
|
42
|
-
}
|
43
|
-
if (_updateRecords.length > 0) {
|
44
|
-
for (let i = 0; i < _updateRecords.length; i++) {
|
45
|
-
const newRecord = _updateRecords[i];
|
46
|
-
const scenario = await scenarioRepo.findOneBy({ id: newRecord.id });
|
47
|
-
const result = await scenarioRepo.save(Object.assign(Object.assign(Object.assign({}, scenario), newRecord), { updater: user }));
|
48
|
-
results.push(Object.assign(Object.assign({}, result), { cuFlag: 'M' }));
|
49
|
-
}
|
50
|
-
}
|
51
|
-
return results;
|
52
|
-
}
|
53
|
-
async deleteScenario(name, context) {
|
54
|
-
const { domain, tx } = context.state;
|
55
|
-
await tx.getRepository(scenario_1.Scenario).delete({ domain: { id: domain.id }, name });
|
56
|
-
return true;
|
57
|
-
}
|
58
|
-
async deleteScenarios(ids, context) {
|
59
|
-
const { domain, tx } = context.state;
|
60
|
-
await tx.getRepository(scenario_1.Scenario).delete({
|
61
|
-
domain: { id: domain.id },
|
62
|
-
id: (0, typeorm_1.In)(ids)
|
63
|
-
});
|
64
|
-
return true;
|
65
|
-
}
|
66
|
-
async importScenarios(scenarios, context) {
|
67
|
-
const { tx, domain, user } = context.state;
|
68
|
-
const repository = tx.getRepository(scenario_1.Scenario);
|
69
|
-
await Promise.all(scenarios.map(async (scenario) => {
|
70
|
-
const { id, name } = scenario;
|
71
|
-
var savedScenario;
|
72
|
-
if (id) {
|
73
|
-
const sameId = await repository.findOneBy({ id });
|
74
|
-
if (sameId) {
|
75
|
-
if (sameId.domainId != domain.id) {
|
76
|
-
throw `Scenario with id '${id}:${name}' is already taken by another domain`;
|
77
|
-
}
|
78
|
-
const sameName = await repository.findOneBy({ domain: { id: domain.id }, name });
|
79
|
-
if (sameName && sameName.id != id) {
|
80
|
-
throw `Scenario Name '${name}' is already taken by another scenario`;
|
81
|
-
}
|
82
|
-
savedScenario = await repository.save(Object.assign(Object.assign(Object.assign({}, sameId), scenario), { domain, updater: user }));
|
83
|
-
}
|
84
|
-
else {
|
85
|
-
savedScenario = await repository.save(Object.assign(Object.assign({}, scenario), { domain, updater: user, creator: user }));
|
86
|
-
}
|
87
|
-
}
|
88
|
-
else {
|
89
|
-
savedScenario = await repository.save(Object.assign(Object.assign({}, scenario), { domain, updater: user, creator: user }));
|
90
|
-
}
|
91
|
-
await tx.getRepository(step_type_1.Step).delete({ domain: { id: domain.id }, scenario: { id: savedScenario.id } });
|
92
|
-
await tx.getRepository(step_type_1.Step).save(scenario.steps.map((step) => {
|
93
|
-
return Object.assign(Object.assign({}, step), { domain, scenario: savedScenario, updater: user });
|
94
|
-
}));
|
95
|
-
}));
|
96
|
-
return true;
|
97
|
-
}
|
98
|
-
async copyScenarios(ids, context) {
|
99
|
-
const { domain, user, tx } = context.state;
|
100
|
-
const originals = await tx.getRepository(scenario_1.Scenario).find({
|
101
|
-
where: {
|
102
|
-
id: (0, typeorm_1.In)(ids),
|
103
|
-
domain: { id: domain.id }
|
104
|
-
},
|
105
|
-
relations: ['domain', 'steps']
|
106
|
-
});
|
107
|
-
if (originals.length == 0) {
|
108
|
-
return [];
|
109
|
-
}
|
110
|
-
var newSteps = [];
|
111
|
-
var newCopys = originals.map(scenario => {
|
112
|
-
let scenarioId = crypto.randomUUID();
|
113
|
-
newSteps.push(...scenario.steps.map(step => {
|
114
|
-
return {
|
115
|
-
scenario: scenarioId,
|
116
|
-
name: step.name,
|
117
|
-
description: step.description,
|
118
|
-
sequence: step.sequence,
|
119
|
-
task: step.task,
|
120
|
-
connection: step.connection,
|
121
|
-
params: step.params,
|
122
|
-
domain,
|
123
|
-
creator: user,
|
124
|
-
updater: user
|
125
|
-
};
|
126
|
-
}));
|
127
|
-
return {
|
128
|
-
id: scenarioId,
|
129
|
-
name: scenario.name + ' (' + scenarioId + ')',
|
130
|
-
type: scenario.type,
|
131
|
-
description: scenario.description,
|
132
|
-
active: false, // deprecated
|
133
|
-
schedule: scenario.schedule,
|
134
|
-
timezone: scenario.timezone,
|
135
|
-
domain,
|
136
|
-
creator: user,
|
137
|
-
updater: user
|
138
|
-
};
|
139
|
-
});
|
140
|
-
var copiedScenarios = await tx.getRepository(scenario_1.Scenario).save(newCopys);
|
141
|
-
var copiedSteps = await tx.getRepository(step_type_1.Step).save(newSteps);
|
142
|
-
return copiedScenarios.map(scenario => {
|
143
|
-
scenario.steps = copiedSteps.filter(step => step.scenario == scenario.id);
|
144
|
-
return scenario;
|
145
|
-
});
|
146
|
-
}
|
147
|
-
async startScenarioSchedule(scenarioId, context) {
|
148
|
-
const { domain, user, tx } = context.state;
|
149
|
-
var repository = tx.getRepository(scenario_1.Scenario);
|
150
|
-
var scenario = await repository.findOne({
|
151
|
-
where: { domain: { id: domain.id }, id: scenarioId }
|
152
|
-
});
|
153
|
-
if (!scenario) {
|
154
|
-
throw new Error(context.t('error.scenario not found', {
|
155
|
-
scenario: scenarioId
|
156
|
-
}));
|
157
|
-
}
|
158
|
-
if (!scenario.schedule) {
|
159
|
-
throw new Error(context.t('error.schedule is not set', {
|
160
|
-
scenario: scenario.name
|
161
|
-
}));
|
162
|
-
}
|
163
|
-
if (!scenario.timezone) {
|
164
|
-
throw new Error(context.t('error.timezone is not set', {
|
165
|
-
scenario: scenario.name
|
166
|
-
}));
|
167
|
-
}
|
168
|
-
try {
|
169
|
-
var handle = await (0, scheduler_client_1.registerSchedule)({
|
170
|
-
name: scenario.name,
|
171
|
-
client: {
|
172
|
-
application: scheduler_client_1.Application,
|
173
|
-
group: `${domain.id}`,
|
174
|
-
type: 'scenario',
|
175
|
-
key: scenario.id,
|
176
|
-
operation: 'start'
|
177
|
-
},
|
178
|
-
type: 'cron',
|
179
|
-
schedule: scenario.schedule,
|
180
|
-
timezone: scenario.timezone,
|
181
|
-
task: {
|
182
|
-
type: 'rest',
|
183
|
-
connection: {
|
184
|
-
host: `${(0, scheduler_client_1.getCallbackBaseWithDomainContext)(domain)}/callback-schedule-for-scenario`,
|
185
|
-
headers: {
|
186
|
-
'Content-Type': 'application/json',
|
187
|
-
accept: '*/*'
|
188
|
-
}
|
189
|
-
},
|
190
|
-
data: {
|
191
|
-
domainId: domain.id,
|
192
|
-
userId: user.id,
|
193
|
-
scenarioId
|
194
|
-
},
|
195
|
-
history_check: true,
|
196
|
-
failed_policy: 'retry_dlq',
|
197
|
-
max_retry_count: -1,
|
198
|
-
retry_period: 60
|
199
|
-
}
|
200
|
-
});
|
201
|
-
return await repository.save(Object.assign(Object.assign({}, scenario), { scheduleId: handle }));
|
202
|
-
}
|
203
|
-
catch (err) {
|
204
|
-
console.error('startScenarioSchedule', err);
|
205
|
-
}
|
206
|
-
}
|
207
|
-
async stopScenarioSchedule(scenarioId, context) {
|
208
|
-
const { domain, tx } = context.state;
|
209
|
-
var repository = tx.getRepository(scenario_1.Scenario);
|
210
|
-
var scenario = await repository.findOne({
|
211
|
-
where: { domain: { id: domain.id }, id: scenarioId }
|
212
|
-
});
|
213
|
-
if (!scenario) {
|
214
|
-
throw new Error(context.t('error.scenario not found', {
|
215
|
-
scenario: scenarioId
|
216
|
-
}));
|
217
|
-
}
|
218
|
-
try {
|
219
|
-
await (0, scheduler_client_1.unregisterSchedule)(scenario.scheduleId);
|
220
|
-
return await repository.save(Object.assign(Object.assign({}, scenario), { scheduleId: null }));
|
221
|
-
}
|
222
|
-
catch (err) {
|
223
|
-
console.error('stopScenarioSchedule', err);
|
224
|
-
}
|
225
|
-
}
|
226
|
-
};
|
227
|
-
exports.ScenarioMutation = ScenarioMutation;
|
228
|
-
tslib_1.__decorate([
|
229
|
-
(0, type_graphql_1.Directive)('@transaction'),
|
230
|
-
(0, type_graphql_1.Directive)('@privilege(category: "scenario", privilege: "mutation", domainOwnerGranted: true)'),
|
231
|
-
(0, type_graphql_1.Mutation)(returns => scenario_1.Scenario, { description: 'To create new scenario' }),
|
232
|
-
tslib_1.__param(0, (0, type_graphql_1.Arg)('scenario', type => scenario_type_1.NewScenario)),
|
233
|
-
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
234
|
-
tslib_1.__metadata("design:type", Function),
|
235
|
-
tslib_1.__metadata("design:paramtypes", [scenario_type_1.NewScenario, Object]),
|
236
|
-
tslib_1.__metadata("design:returntype", Promise)
|
237
|
-
], ScenarioMutation.prototype, "createScenario", null);
|
238
|
-
tslib_1.__decorate([
|
239
|
-
(0, type_graphql_1.Directive)('@transaction'),
|
240
|
-
(0, type_graphql_1.Directive)('@privilege(category: "scenario", privilege: "mutation", domainOwnerGranted: true)'),
|
241
|
-
(0, type_graphql_1.Mutation)(returns => scenario_1.Scenario, { description: 'To modify scenario information' }),
|
242
|
-
tslib_1.__param(0, (0, type_graphql_1.Arg)('name')),
|
243
|
-
tslib_1.__param(1, (0, type_graphql_1.Arg)('patch', type => scenario_type_1.ScenarioPatch)),
|
244
|
-
tslib_1.__param(2, (0, type_graphql_1.Ctx)()),
|
245
|
-
tslib_1.__metadata("design:type", Function),
|
246
|
-
tslib_1.__metadata("design:paramtypes", [String, scenario_type_1.ScenarioPatch, Object]),
|
247
|
-
tslib_1.__metadata("design:returntype", Promise)
|
248
|
-
], ScenarioMutation.prototype, "updateScenario", null);
|
249
|
-
tslib_1.__decorate([
|
250
|
-
(0, type_graphql_1.Directive)('@transaction'),
|
251
|
-
(0, type_graphql_1.Directive)('@privilege(category: "scenario", privilege: "mutation", domainOwnerGranted: true)'),
|
252
|
-
(0, type_graphql_1.Mutation)(returns => [scenario_1.Scenario], { description: "To modify multiple scenarios' information" }),
|
253
|
-
tslib_1.__param(0, (0, type_graphql_1.Arg)('patches', type => [scenario_type_1.ScenarioPatch])),
|
254
|
-
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
255
|
-
tslib_1.__metadata("design:type", Function),
|
256
|
-
tslib_1.__metadata("design:paramtypes", [Array, Object]),
|
257
|
-
tslib_1.__metadata("design:returntype", Promise)
|
258
|
-
], ScenarioMutation.prototype, "updateMultipleScenario", null);
|
259
|
-
tslib_1.__decorate([
|
260
|
-
(0, type_graphql_1.Directive)('@transaction'),
|
261
|
-
(0, type_graphql_1.Directive)('@privilege(category: "scenario", privilege: "mutation", domainOwnerGranted: true)'),
|
262
|
-
(0, type_graphql_1.Mutation)(returns => Boolean, { description: 'To delete scenario' }),
|
263
|
-
tslib_1.__param(0, (0, type_graphql_1.Arg)('name')),
|
264
|
-
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
265
|
-
tslib_1.__metadata("design:type", Function),
|
266
|
-
tslib_1.__metadata("design:paramtypes", [String, Object]),
|
267
|
-
tslib_1.__metadata("design:returntype", Promise)
|
268
|
-
], ScenarioMutation.prototype, "deleteScenario", null);
|
269
|
-
tslib_1.__decorate([
|
270
|
-
(0, type_graphql_1.Directive)('@transaction'),
|
271
|
-
(0, type_graphql_1.Directive)('@privilege(category: "scenario", privilege: "mutation", domainOwnerGranted: true)'),
|
272
|
-
(0, type_graphql_1.Mutation)(returns => Boolean, { description: 'To delete multiple scenarios' }),
|
273
|
-
tslib_1.__param(0, (0, type_graphql_1.Arg)('ids', type => [String])),
|
274
|
-
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
275
|
-
tslib_1.__metadata("design:type", Function),
|
276
|
-
tslib_1.__metadata("design:paramtypes", [Array, Object]),
|
277
|
-
tslib_1.__metadata("design:returntype", Promise)
|
278
|
-
], ScenarioMutation.prototype, "deleteScenarios", null);
|
279
|
-
tslib_1.__decorate([
|
280
|
-
(0, type_graphql_1.Directive)('@transaction'),
|
281
|
-
(0, type_graphql_1.Directive)('@privilege(category: "scenario", privilege: "mutation", domainOwnerGranted: true)'),
|
282
|
-
(0, type_graphql_1.Mutation)(returns => Boolean, { description: 'To import multiple scenarios' }),
|
283
|
-
tslib_1.__param(0, (0, type_graphql_1.Arg)('scenarios', type => [scenario_type_1.ScenarioPatch])),
|
284
|
-
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
285
|
-
tslib_1.__metadata("design:type", Function),
|
286
|
-
tslib_1.__metadata("design:paramtypes", [Array, Object]),
|
287
|
-
tslib_1.__metadata("design:returntype", Promise)
|
288
|
-
], ScenarioMutation.prototype, "importScenarios", null);
|
289
|
-
tslib_1.__decorate([
|
290
|
-
(0, type_graphql_1.Directive)('@transaction'),
|
291
|
-
(0, type_graphql_1.Directive)('@privilege(category: "scenario", privilege: "mutation", domainOwnerGranted: true)'),
|
292
|
-
(0, type_graphql_1.Mutation)(returns => [scenario_1.Scenario], { description: 'To import multiple scenarios' }),
|
293
|
-
tslib_1.__param(0, (0, type_graphql_1.Arg)('ids', type => [String])),
|
294
|
-
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
295
|
-
tslib_1.__metadata("design:type", Function),
|
296
|
-
tslib_1.__metadata("design:paramtypes", [Array, Object]),
|
297
|
-
tslib_1.__metadata("design:returntype", Promise)
|
298
|
-
], ScenarioMutation.prototype, "copyScenarios", null);
|
299
|
-
tslib_1.__decorate([
|
300
|
-
(0, type_graphql_1.Directive)('@transaction'),
|
301
|
-
(0, type_graphql_1.Directive)('@privilege(category: "scenario", privilege: "mutation", domainOwnerGranted: true)'),
|
302
|
-
(0, type_graphql_1.Mutation)(returns => scenario_1.Scenario, {
|
303
|
-
description: 'To start posting scenario based on the schedule of the given scenario'
|
304
|
-
}),
|
305
|
-
tslib_1.__param(0, (0, type_graphql_1.Arg)('scenarioId')),
|
306
|
-
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
307
|
-
tslib_1.__metadata("design:type", Function),
|
308
|
-
tslib_1.__metadata("design:paramtypes", [String, Object]),
|
309
|
-
tslib_1.__metadata("design:returntype", Promise)
|
310
|
-
], ScenarioMutation.prototype, "startScenarioSchedule", null);
|
311
|
-
tslib_1.__decorate([
|
312
|
-
(0, type_graphql_1.Directive)('@transaction'),
|
313
|
-
(0, type_graphql_1.Directive)('@privilege(category: "scenario", privilege: "mutation", domainOwnerGranted: true)'),
|
314
|
-
(0, type_graphql_1.Mutation)(returns => scenario_1.Scenario, {
|
315
|
-
nullable: true,
|
316
|
-
description: 'To stop posting scenario based on the schedule of the given scenario'
|
317
|
-
}),
|
318
|
-
tslib_1.__param(0, (0, type_graphql_1.Arg)('scenarioId')),
|
319
|
-
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
320
|
-
tslib_1.__metadata("design:type", Function),
|
321
|
-
tslib_1.__metadata("design:paramtypes", [String, Object]),
|
322
|
-
tslib_1.__metadata("design:returntype", Promise)
|
323
|
-
], ScenarioMutation.prototype, "stopScenarioSchedule", null);
|
324
|
-
exports.ScenarioMutation = ScenarioMutation = tslib_1.__decorate([
|
325
|
-
(0, type_graphql_1.Resolver)(scenario_1.Scenario)
|
326
|
-
], ScenarioMutation);
|
327
|
-
//# sourceMappingURL=scenario-mutation.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"scenario-mutation.js","sourceRoot":"","sources":["../../../server/service/scenario/scenario-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\nimport { In } from 'typeorm'\n\nimport {\n Application,\n getCallbackBaseWithDomainContext,\n registerSchedule,\n unregisterSchedule\n} from '@things-factory/scheduler-client'\n\nimport { Step } from '../step/step-type'\nimport { Scenario } from './scenario'\nimport { NewScenario, ScenarioPatch } from './scenario-type'\n\nconst crypto = require('crypto')\n\n@Resolver(Scenario)\nexport class ScenarioMutation {\n @Directive('@transaction')\n @Directive('@privilege(category: \"scenario\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Mutation(returns => Scenario, { description: 'To create new scenario' })\n async createScenario(\n @Arg('scenario', type => NewScenario) scenario: NewScenario,\n @Ctx() context: ResolverContext\n ): Promise<Scenario> {\n const { domain, user, tx } = context.state\n\n return await tx.getRepository(Scenario).save({\n ...scenario,\n domain,\n creator: user,\n updater: user\n })\n }\n\n @Directive('@transaction')\n @Directive('@privilege(category: \"scenario\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Mutation(returns => Scenario, { description: 'To modify scenario information' })\n async updateScenario(\n @Arg('name') name: string,\n @Arg('patch', type => ScenarioPatch) patch: ScenarioPatch,\n @Ctx() context: ResolverContext\n ): Promise<Scenario> {\n const { domain, user, tx } = context.state\n\n const repository = tx.getRepository(Scenario)\n const scenario = await repository.findOne({\n where: { domain: { id: domain.id }, name }\n })\n\n if (!scenario) {\n throw new Error(\n context.t('error.scenario not found', {\n scenario: name\n })\n )\n }\n\n return await repository.save({\n ...scenario,\n ...patch,\n updater: user\n })\n }\n\n @Directive('@transaction')\n @Directive('@privilege(category: \"scenario\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Mutation(returns => [Scenario], { description: \"To modify multiple scenarios' information\" })\n async updateMultipleScenario(\n @Arg('patches', type => [ScenarioPatch]) patches: ScenarioPatch[],\n @Ctx() context: ResolverContext\n ): Promise<Scenario[]> {\n const { domain, user, tx } = context.state\n\n let results = []\n const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')\n const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')\n const scenarioRepo = tx.getRepository(Scenario)\n\n if (_createRecords.length > 0) {\n for (let i = 0; i < _createRecords.length; i++) {\n const newRecord = _createRecords[i]\n\n const result = await scenarioRepo.save({\n ...newRecord,\n domain,\n creator: user,\n updater: user\n })\n\n results.push({ ...result, cuFlag: '+' })\n }\n }\n\n if (_updateRecords.length > 0) {\n for (let i = 0; i < _updateRecords.length; i++) {\n const newRecord = _updateRecords[i]\n const scenario = await scenarioRepo.findOneBy({ id: newRecord.id })\n\n const result = await scenarioRepo.save({\n ...scenario,\n ...newRecord,\n updater: user\n })\n\n results.push({ ...result, cuFlag: 'M' })\n }\n }\n\n return results\n }\n\n @Directive('@transaction')\n @Directive('@privilege(category: \"scenario\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Mutation(returns => Boolean, { description: 'To delete scenario' })\n async deleteScenario(@Arg('name') name: string, @Ctx() context: ResolverContext): Promise<boolean> {\n const { domain, tx } = context.state\n\n await tx.getRepository(Scenario).delete({ domain: { id: domain.id }, name })\n\n return true\n }\n\n @Directive('@transaction')\n @Directive('@privilege(category: \"scenario\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Mutation(returns => Boolean, { description: 'To delete multiple scenarios' })\n async deleteScenarios(\n @Arg('ids', type => [String]) ids: string[],\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n const { domain, tx } = context.state\n\n await tx.getRepository(Scenario).delete({\n domain: { id: domain.id },\n id: In(ids)\n })\n\n return true\n }\n\n @Directive('@transaction')\n @Directive('@privilege(category: \"scenario\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Mutation(returns => Boolean, { description: 'To import multiple scenarios' })\n async importScenarios(\n @Arg('scenarios', type => [ScenarioPatch]) scenarios: Scenario[],\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n const { tx, domain, user } = context.state\n\n const repository = tx.getRepository(Scenario)\n\n await Promise.all(\n scenarios.map(async (scenario: Scenario) => {\n const { id, name } = scenario\n var savedScenario\n\n if (id) {\n const sameId = await repository.findOneBy({ id })\n\n if (sameId) {\n if (sameId.domainId != domain.id) {\n throw `Scenario with id '${id}:${name}' is already taken by another domain`\n }\n\n const sameName = await repository.findOneBy({ domain: { id: domain.id }, name })\n if (sameName && sameName.id != id) {\n throw `Scenario Name '${name}' is already taken by another scenario`\n }\n\n savedScenario = await repository.save({\n ...sameId,\n ...scenario,\n domain,\n updater: user\n })\n } else {\n savedScenario = await repository.save({\n ...scenario,\n domain,\n updater: user,\n creator: user\n })\n }\n } else {\n savedScenario = await repository.save({\n ...scenario,\n domain,\n updater: user,\n creator: user\n })\n }\n\n await tx.getRepository(Step).delete({ domain: { id: domain.id }, scenario: { id: savedScenario.id } })\n await tx.getRepository(Step).save(\n scenario.steps.map((step: Step) => {\n return {\n ...step,\n domain,\n scenario: savedScenario,\n updater: user\n }\n })\n )\n })\n )\n\n return true\n }\n\n @Directive('@transaction')\n @Directive('@privilege(category: \"scenario\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Mutation(returns => [Scenario], { description: 'To import multiple scenarios' })\n async copyScenarios(\n @Arg('ids', type => [String]) ids: string[],\n @Ctx() context: ResolverContext\n ): Promise<Scenario[]> {\n const { domain, user, tx } = context.state\n\n const originals = await tx.getRepository(Scenario).find({\n where: {\n id: In(ids),\n domain: { id: domain.id }\n },\n relations: ['domain', 'steps']\n })\n\n if (originals.length == 0) {\n return []\n }\n\n var newSteps = []\n\n var newCopys = originals.map(scenario => {\n let scenarioId = crypto.randomUUID()\n newSteps.push(\n ...scenario.steps.map(step => {\n return {\n scenario: scenarioId,\n name: step.name,\n description: step.description,\n sequence: step.sequence,\n task: step.task,\n connection: step.connection,\n params: step.params,\n\n domain,\n creator: user,\n updater: user\n }\n })\n )\n\n return {\n id: scenarioId,\n name: scenario.name + ' (' + scenarioId + ')',\n type: scenario.type,\n description: scenario.description,\n active: false, // deprecated\n schedule: scenario.schedule,\n timezone: scenario.timezone,\n\n domain,\n creator: user,\n updater: user\n }\n })\n\n var copiedScenarios = await tx.getRepository(Scenario).save(newCopys)\n var copiedSteps = await tx.getRepository(Step).save(newSteps)\n\n return copiedScenarios.map(scenario => {\n scenario.steps = copiedSteps.filter(step => step.scenario == scenario.id)\n return scenario\n })\n }\n\n @Directive('@transaction')\n @Directive('@privilege(category: \"scenario\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Mutation(returns => Scenario, {\n description: 'To start posting scenario based on the schedule of the given scenario'\n })\n async startScenarioSchedule(\n @Arg('scenarioId') scenarioId: string,\n @Ctx() context: ResolverContext\n ): Promise<Scenario> {\n const { domain, user, tx } = context.state\n\n var repository = tx.getRepository(Scenario)\n var scenario = await repository.findOne({\n where: { domain: { id: domain.id }, id: scenarioId }\n })\n\n if (!scenario) {\n throw new Error(\n context.t('error.scenario not found', {\n scenario: scenarioId\n })\n )\n }\n\n if (!scenario.schedule) {\n throw new Error(\n context.t('error.schedule is not set', {\n scenario: scenario.name\n })\n )\n }\n\n if (!scenario.timezone) {\n throw new Error(\n context.t('error.timezone is not set', {\n scenario: scenario.name\n })\n )\n }\n\n try {\n var handle = await registerSchedule({\n name: scenario.name,\n client: {\n application: Application,\n group: `${domain.id}`,\n type: 'scenario',\n key: scenario.id,\n operation: 'start'\n },\n type: 'cron',\n schedule: scenario.schedule,\n timezone: scenario.timezone,\n task: {\n type: 'rest',\n connection: {\n host: `${getCallbackBaseWithDomainContext(domain)}/callback-schedule-for-scenario`,\n headers: {\n 'Content-Type': 'application/json',\n accept: '*/*'\n }\n },\n data: {\n domainId: domain.id,\n userId: user.id,\n scenarioId\n },\n history_check: true,\n failed_policy: 'retry_dlq',\n max_retry_count: -1,\n retry_period: 60\n }\n })\n\n return await repository.save({\n ...scenario,\n scheduleId: handle\n })\n } catch (err) {\n console.error('startScenarioSchedule', err)\n }\n }\n\n @Directive('@transaction')\n @Directive('@privilege(category: \"scenario\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Mutation(returns => Scenario, {\n nullable: true,\n description: 'To stop posting scenario based on the schedule of the given scenario'\n })\n async stopScenarioSchedule(\n @Arg('scenarioId') scenarioId: string,\n @Ctx() context: ResolverContext\n ): Promise<Scenario | undefined> {\n const { domain, tx } = context.state\n\n var repository = tx.getRepository(Scenario)\n var scenario = await repository.findOne({\n where: { domain: { id: domain.id }, id: scenarioId }\n })\n\n if (!scenario) {\n throw new Error(\n context.t('error.scenario not found', {\n scenario: scenarioId\n })\n )\n }\n\n try {\n await unregisterSchedule(scenario.scheduleId)\n\n return await repository.save({\n ...scenario,\n scheduleId: null\n })\n } catch (err) {\n console.error('stopScenarioSchedule', err)\n }\n }\n}\n"]}
|
@@ -1,19 +0,0 @@
|
|
1
|
-
import { User, Role } from '@things-factory/auth-base';
|
2
|
-
import { Domain, ListParam } from '@things-factory/shell';
|
3
|
-
import { ScenarioInstance } from '../scenario-instance/scenario-instance-type';
|
4
|
-
import { Step } from '../step/step-type';
|
5
|
-
import { Scenario } from './scenario';
|
6
|
-
import { ScenarioList } from './scenario-type';
|
7
|
-
export declare class ScenarioQuery {
|
8
|
-
scenario(id: string, context: ResolverContext): Promise<Scenario>;
|
9
|
-
scenarios(params: ListParam, context: ResolverContext): Promise<ScenarioList>;
|
10
|
-
domain(scenario: Scenario): Promise<Domain>;
|
11
|
-
updater(scenario: Scenario): Promise<User>;
|
12
|
-
creator(scenario: Scenario): Promise<User>;
|
13
|
-
steps(scenario: Scenario, context: ResolverContext): Promise<Step[]>;
|
14
|
-
connectionNames(scenario: Scenario, context: ResolverContext): Promise<string[]>;
|
15
|
-
publishTags(scenario: Scenario, context: ResolverContext): Promise<any[]>;
|
16
|
-
state(scenario: Scenario, context: ResolverContext): Promise<string>;
|
17
|
-
instances(scenario: Scenario, context: ResolverContext): Promise<ScenarioInstance[]>;
|
18
|
-
role(scenario: Scenario): Promise<Role>;
|
19
|
-
}
|
@@ -1,167 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.ScenarioQuery = void 0;
|
4
|
-
const tslib_1 = require("tslib");
|
5
|
-
const type_graphql_1 = require("type-graphql");
|
6
|
-
const typeorm_1 = require("typeorm");
|
7
|
-
const auth_base_1 = require("@things-factory/auth-base");
|
8
|
-
const shell_1 = require("@things-factory/shell");
|
9
|
-
const engine_1 = require("../../engine");
|
10
|
-
const scenario_instance_type_1 = require("../scenario-instance/scenario-instance-type");
|
11
|
-
const step_type_1 = require("../step/step-type");
|
12
|
-
const scenario_1 = require("./scenario");
|
13
|
-
const scenario_type_1 = require("./scenario-type");
|
14
|
-
const connection_type_1 = require("../connection/connection-type");
|
15
|
-
let ScenarioQuery = class ScenarioQuery {
|
16
|
-
async scenario(id, context) {
|
17
|
-
const { domain } = context.state;
|
18
|
-
const scenario = await (0, shell_1.getRepository)(scenario_1.Scenario).findOne({ where: { id } });
|
19
|
-
if (domain.id == scenario.domainId || domain.parentId == scenario.domainId) {
|
20
|
-
return scenario;
|
21
|
-
}
|
22
|
-
}
|
23
|
-
async scenarios(params, context) {
|
24
|
-
const { domain } = context.state;
|
25
|
-
const queryBuilder = (0, shell_1.getQueryBuilderFromListParams)({
|
26
|
-
repository: (0, shell_1.getRepository)(scenario_1.Scenario),
|
27
|
-
params,
|
28
|
-
domain,
|
29
|
-
searchables: ['name', 'description', 'type']
|
30
|
-
});
|
31
|
-
const [items, total] = await queryBuilder.getManyAndCount();
|
32
|
-
return { items, total };
|
33
|
-
}
|
34
|
-
async domain(scenario) {
|
35
|
-
return await (0, shell_1.getRepository)(shell_1.Domain).findOneBy({ id: scenario.domainId });
|
36
|
-
}
|
37
|
-
async updater(scenario) {
|
38
|
-
return await (0, shell_1.getRepository)(auth_base_1.User).findOneBy({ id: scenario.updaterId });
|
39
|
-
}
|
40
|
-
async creator(scenario) {
|
41
|
-
return await (0, shell_1.getRepository)(auth_base_1.User).findOneBy({ id: scenario.creatorId });
|
42
|
-
}
|
43
|
-
async steps(scenario, context) {
|
44
|
-
const { domain } = context.state;
|
45
|
-
return await (0, shell_1.getRepository)(step_type_1.Step).find({
|
46
|
-
where: { domain: { id: domain.id }, scenario: { id: scenario.id } }
|
47
|
-
});
|
48
|
-
}
|
49
|
-
async connectionNames(scenario, context) {
|
50
|
-
const { domain } = context.state;
|
51
|
-
const steps = await (0, shell_1.getRepository)(step_type_1.Step).find({
|
52
|
-
where: { domain: { id: domain.id }, scenario: { id: scenario.id }, connection: (0, typeorm_1.Not)((0, typeorm_1.IsNull)()) }
|
53
|
-
});
|
54
|
-
return steps.map(step => step.connection).filter(Boolean);
|
55
|
-
}
|
56
|
-
async publishTags(scenario, context) {
|
57
|
-
const { domain } = context.state;
|
58
|
-
const steps = await (0, shell_1.getRepository)(step_type_1.Step).find({
|
59
|
-
where: { domain: { id: domain.id }, scenario: { id: scenario.id }, task: 'publish' }
|
60
|
-
});
|
61
|
-
return steps.map(step => { var _a; return (_a = JSON.parse(step.params)) === null || _a === void 0 ? void 0 : _a.tag; }).filter(Boolean);
|
62
|
-
}
|
63
|
-
async state(scenario, context) {
|
64
|
-
var _a;
|
65
|
-
const { domain } = context.state;
|
66
|
-
var instance = engine_1.ScenarioEngine.getScenarioInstance(domain, scenario.name);
|
67
|
-
return instance && scenario_instance_type_1.ScenarioInstanceStatus[(_a = instance.context) === null || _a === void 0 ? void 0 : _a.state];
|
68
|
-
}
|
69
|
-
async instances(scenario, context) {
|
70
|
-
const { domain } = context.state;
|
71
|
-
return engine_1.ScenarioEngine.getScenarioInstances(domain, scenario.name);
|
72
|
-
}
|
73
|
-
async role(scenario) {
|
74
|
-
return scenario.roleId && (await (0, shell_1.getRepository)(auth_base_1.Role).findOneBy({ id: scenario.roleId }));
|
75
|
-
}
|
76
|
-
};
|
77
|
-
exports.ScenarioQuery = ScenarioQuery;
|
78
|
-
tslib_1.__decorate([
|
79
|
-
(0, type_graphql_1.Directive)('@privilege(category: "scenario", privilege: "query", domainOwnerGranted: true)'),
|
80
|
-
(0, type_graphql_1.Query)(returns => scenario_1.Scenario, { description: 'To fetch a scenario' }),
|
81
|
-
tslib_1.__param(0, (0, type_graphql_1.Arg)('id')),
|
82
|
-
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
83
|
-
tslib_1.__metadata("design:type", Function),
|
84
|
-
tslib_1.__metadata("design:paramtypes", [String, Object]),
|
85
|
-
tslib_1.__metadata("design:returntype", Promise)
|
86
|
-
], ScenarioQuery.prototype, "scenario", null);
|
87
|
-
tslib_1.__decorate([
|
88
|
-
(0, type_graphql_1.Directive)('@privilege(category: "scenario", privilege: "query", domainOwnerGranted: true)'),
|
89
|
-
(0, type_graphql_1.Query)(returns => scenario_type_1.ScenarioList, { description: 'To fetch multiple scenarios' }),
|
90
|
-
tslib_1.__param(0, (0, type_graphql_1.Args)(type => shell_1.ListParam)),
|
91
|
-
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
92
|
-
tslib_1.__metadata("design:type", Function),
|
93
|
-
tslib_1.__metadata("design:paramtypes", [shell_1.ListParam, Object]),
|
94
|
-
tslib_1.__metadata("design:returntype", Promise)
|
95
|
-
], ScenarioQuery.prototype, "scenarios", null);
|
96
|
-
tslib_1.__decorate([
|
97
|
-
(0, type_graphql_1.FieldResolver)(type => shell_1.Domain),
|
98
|
-
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
99
|
-
tslib_1.__metadata("design:type", Function),
|
100
|
-
tslib_1.__metadata("design:paramtypes", [scenario_1.Scenario]),
|
101
|
-
tslib_1.__metadata("design:returntype", Promise)
|
102
|
-
], ScenarioQuery.prototype, "domain", null);
|
103
|
-
tslib_1.__decorate([
|
104
|
-
(0, type_graphql_1.FieldResolver)(type => auth_base_1.User),
|
105
|
-
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
106
|
-
tslib_1.__metadata("design:type", Function),
|
107
|
-
tslib_1.__metadata("design:paramtypes", [scenario_1.Scenario]),
|
108
|
-
tslib_1.__metadata("design:returntype", Promise)
|
109
|
-
], ScenarioQuery.prototype, "updater", null);
|
110
|
-
tslib_1.__decorate([
|
111
|
-
(0, type_graphql_1.FieldResolver)(type => auth_base_1.User),
|
112
|
-
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
113
|
-
tslib_1.__metadata("design:type", Function),
|
114
|
-
tslib_1.__metadata("design:paramtypes", [scenario_1.Scenario]),
|
115
|
-
tslib_1.__metadata("design:returntype", Promise)
|
116
|
-
], ScenarioQuery.prototype, "creator", null);
|
117
|
-
tslib_1.__decorate([
|
118
|
-
(0, type_graphql_1.FieldResolver)(type => [step_type_1.Step]),
|
119
|
-
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
120
|
-
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
121
|
-
tslib_1.__metadata("design:type", Function),
|
122
|
-
tslib_1.__metadata("design:paramtypes", [scenario_1.Scenario, Object]),
|
123
|
-
tslib_1.__metadata("design:returntype", Promise)
|
124
|
-
], ScenarioQuery.prototype, "steps", null);
|
125
|
-
tslib_1.__decorate([
|
126
|
-
(0, type_graphql_1.FieldResolver)(type => [connection_type_1.Connection]),
|
127
|
-
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
128
|
-
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
129
|
-
tslib_1.__metadata("design:type", Function),
|
130
|
-
tslib_1.__metadata("design:paramtypes", [scenario_1.Scenario, Object]),
|
131
|
-
tslib_1.__metadata("design:returntype", Promise)
|
132
|
-
], ScenarioQuery.prototype, "connectionNames", null);
|
133
|
-
tslib_1.__decorate([
|
134
|
-
(0, type_graphql_1.FieldResolver)(type => [connection_type_1.Connection]),
|
135
|
-
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
136
|
-
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
137
|
-
tslib_1.__metadata("design:type", Function),
|
138
|
-
tslib_1.__metadata("design:paramtypes", [scenario_1.Scenario, Object]),
|
139
|
-
tslib_1.__metadata("design:returntype", Promise)
|
140
|
-
], ScenarioQuery.prototype, "publishTags", null);
|
141
|
-
tslib_1.__decorate([
|
142
|
-
(0, type_graphql_1.FieldResolver)(type => String, { nullable: true }),
|
143
|
-
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
144
|
-
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
145
|
-
tslib_1.__metadata("design:type", Function),
|
146
|
-
tslib_1.__metadata("design:paramtypes", [scenario_1.Scenario, Object]),
|
147
|
-
tslib_1.__metadata("design:returntype", Promise)
|
148
|
-
], ScenarioQuery.prototype, "state", null);
|
149
|
-
tslib_1.__decorate([
|
150
|
-
(0, type_graphql_1.FieldResolver)(type => [scenario_instance_type_1.ScenarioInstance], { nullable: true }),
|
151
|
-
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
152
|
-
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
153
|
-
tslib_1.__metadata("design:type", Function),
|
154
|
-
tslib_1.__metadata("design:paramtypes", [scenario_1.Scenario, Object]),
|
155
|
-
tslib_1.__metadata("design:returntype", Promise)
|
156
|
-
], ScenarioQuery.prototype, "instances", null);
|
157
|
-
tslib_1.__decorate([
|
158
|
-
(0, type_graphql_1.FieldResolver)(type => auth_base_1.Role),
|
159
|
-
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
160
|
-
tslib_1.__metadata("design:type", Function),
|
161
|
-
tslib_1.__metadata("design:paramtypes", [scenario_1.Scenario]),
|
162
|
-
tslib_1.__metadata("design:returntype", Promise)
|
163
|
-
], ScenarioQuery.prototype, "role", null);
|
164
|
-
exports.ScenarioQuery = ScenarioQuery = tslib_1.__decorate([
|
165
|
-
(0, type_graphql_1.Resolver)(scenario_1.Scenario)
|
166
|
-
], ScenarioQuery);
|
167
|
-
//# sourceMappingURL=scenario-query.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"scenario-query.js","sourceRoot":"","sources":["../../../server/service/scenario/scenario-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Args, Ctx, Directive, FieldResolver, Query, Resolver, Root } from 'type-graphql'\nimport { Not, IsNull } from 'typeorm'\n\nimport { User, Role } from '@things-factory/auth-base'\nimport { Domain, getQueryBuilderFromListParams, getRepository, ListParam } from '@things-factory/shell'\n\nimport { ScenarioEngine } from '../../engine'\nimport { ScenarioInstance, ScenarioInstanceStatus } from '../scenario-instance/scenario-instance-type'\nimport { Step } from '../step/step-type'\nimport { Scenario } from './scenario'\nimport { ScenarioList } from './scenario-type'\nimport { Connection } from '../connection/connection-type'\n\n@Resolver(Scenario)\nexport class ScenarioQuery {\n @Directive('@privilege(category: \"scenario\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => Scenario, { description: 'To fetch a scenario' })\n async scenario(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<Scenario> {\n const { domain } = context.state\n\n const scenario = await getRepository(Scenario).findOne({ where: { id } })\n if (domain.id == scenario.domainId || domain.parentId == scenario.domainId) {\n return scenario\n }\n }\n\n @Directive('@privilege(category: \"scenario\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => ScenarioList, { description: 'To fetch multiple scenarios' })\n async scenarios(@Args(type => ListParam) params: ListParam, @Ctx() context: ResolverContext): Promise<ScenarioList> {\n const { domain } = context.state\n\n const queryBuilder = getQueryBuilderFromListParams({\n repository: getRepository(Scenario),\n params,\n domain,\n searchables: ['name', 'description', 'type']\n })\n\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() scenario: Scenario) {\n return await getRepository(Domain).findOneBy({ id: scenario.domainId })\n }\n\n @FieldResolver(type => User)\n async updater(@Root() scenario: Scenario): Promise<User> {\n return await getRepository(User).findOneBy({ id: scenario.updaterId })\n }\n\n @FieldResolver(type => User)\n async creator(@Root() scenario: Scenario): Promise<User> {\n return await getRepository(User).findOneBy({ id: scenario.creatorId })\n }\n\n @FieldResolver(type => [Step])\n async steps(@Root() scenario: Scenario, @Ctx() context: ResolverContext): Promise<Step[]> {\n const { domain } = context.state\n\n return await getRepository(Step).find({\n where: { domain: { id: domain.id }, scenario: { id: scenario.id } }\n })\n }\n\n @FieldResolver(type => [Connection])\n async connectionNames(@Root() scenario: Scenario, @Ctx() context: ResolverContext) {\n const { domain } = context.state\n\n const steps = await getRepository(Step).find({\n where: { domain: { id: domain.id }, scenario: { id: scenario.id }, connection: Not(IsNull()) }\n })\n\n return steps.map(step => step.connection).filter(Boolean)\n }\n\n @FieldResolver(type => [Connection])\n async publishTags(@Root() scenario: Scenario, @Ctx() context: ResolverContext) {\n const { domain } = context.state\n\n const steps = await getRepository(Step).find({\n where: { domain: { id: domain.id }, scenario: { id: scenario.id }, task: 'publish' }\n })\n\n return steps.map(step => JSON.parse(step.params)?.tag).filter(Boolean)\n }\n\n @FieldResolver(type => String, { nullable: true })\n async state(@Root() scenario: Scenario, @Ctx() context: ResolverContext): Promise<string> {\n const { domain } = context.state\n\n var instance = ScenarioEngine.getScenarioInstance(domain, scenario.name)\n return instance && ScenarioInstanceStatus[instance.context?.state]\n }\n\n @FieldResolver(type => [ScenarioInstance], { nullable: true })\n async instances(@Root() scenario: Scenario, @Ctx() context: ResolverContext): Promise<ScenarioInstance[]> {\n const { domain } = context.state\n\n return ScenarioEngine.getScenarioInstances(domain, scenario.name)\n }\n\n @FieldResolver(type => Role)\n async role(@Root() scenario: Scenario) {\n return scenario.roleId && (await getRepository(Role).findOneBy({ id: scenario.roleId }))\n }\n}\n"]}
|
@@ -1,30 +0,0 @@
|
|
1
|
-
import { ObjectRef } from '@things-factory/shell';
|
2
|
-
import { Scenario } from './scenario';
|
3
|
-
import { StepPatch } from '../step/step-type';
|
4
|
-
export declare class NewScenario {
|
5
|
-
name: string;
|
6
|
-
description?: string;
|
7
|
-
type?: string;
|
8
|
-
schedule?: string;
|
9
|
-
timezone?: string;
|
10
|
-
ttl?: number;
|
11
|
-
active?: boolean;
|
12
|
-
role?: ObjectRef;
|
13
|
-
}
|
14
|
-
export declare class ScenarioPatch {
|
15
|
-
id?: string;
|
16
|
-
name?: string;
|
17
|
-
description?: string;
|
18
|
-
type?: string;
|
19
|
-
schedule?: string;
|
20
|
-
timezone?: string;
|
21
|
-
ttl?: number;
|
22
|
-
active?: boolean;
|
23
|
-
steps?: StepPatch[];
|
24
|
-
role?: ObjectRef;
|
25
|
-
cuFlag?: string;
|
26
|
-
}
|
27
|
-
export declare class ScenarioList {
|
28
|
-
items: Scenario[];
|
29
|
-
total: number;
|
30
|
-
}
|