@things-factory/integration-base 5.0.11 → 6.0.0-alpha.3
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/dist-server/engine/connection-manager.js +1 -2
- package/dist-server/engine/connection-manager.js.map +1 -1
- package/dist-server/engine/connector/graphql-connector.js +4 -4
- package/dist-server/engine/connector/graphql-connector.js.map +1 -1
- package/dist-server/engine/connector/http-connector.js +3 -3
- package/dist-server/engine/connector/http-connector.js.map +1 -1
- package/dist-server/engine/connector/oracle-connector.js +1 -1
- package/dist-server/engine/connector/oracle-connector.js.map +1 -1
- package/dist-server/engine/scenario-engine.js +1 -2
- package/dist-server/engine/scenario-engine.js.map +1 -1
- package/dist-server/engine/task/local-graphql-mutate.js +3 -2
- package/dist-server/engine/task/local-graphql-mutate.js.map +1 -1
- package/dist-server/engine/task/local-graphql-query.js +3 -2
- package/dist-server/engine/task/local-graphql-query.js.map +1 -1
- package/dist-server/engine/task/pick-pending-scenario.js +4 -4
- package/dist-server/engine/task/pick-pending-scenario.js.map +1 -1
- package/dist-server/engine/task/sub-scenario.js +3 -3
- package/dist-server/engine/task/sub-scenario.js.map +1 -1
- package/dist-server/engine/task/switch-range-scenario.js +2 -2
- package/dist-server/engine/task/switch-range-scenario.js.map +1 -1
- package/dist-server/engine/task/switch-scenario.js +2 -2
- package/dist-server/engine/task/switch-scenario.js.map +1 -1
- package/dist-server/routers/scenario-view-router.js +6 -5
- package/dist-server/routers/scenario-view-router.js.map +1 -1
- package/dist-server/service/connection/connection-mutation.js +8 -7
- package/dist-server/service/connection/connection-mutation.js.map +1 -1
- package/dist-server/service/connection/connection-query.js +7 -9
- package/dist-server/service/connection/connection-query.js.map +1 -1
- package/dist-server/service/connection/connection-subscription.js +4 -6
- package/dist-server/service/connection/connection-subscription.js.map +1 -1
- package/dist-server/service/connection/connection-type.js +4 -5
- package/dist-server/service/connection/connection-type.js.map +1 -1
- package/dist-server/service/connector/connector-query.js +4 -4
- package/dist-server/service/connector/connector-query.js.map +1 -1
- package/dist-server/service/payload-log/payload-log-mutation.js +11 -8
- package/dist-server/service/payload-log/payload-log-mutation.js.map +1 -1
- package/dist-server/service/payload-log/payload-log-query.js +7 -9
- package/dist-server/service/payload-log/payload-log-query.js.map +1 -1
- package/dist-server/service/payload-log/payload-log.js +8 -4
- package/dist-server/service/payload-log/payload-log.js.map +1 -1
- package/dist-server/service/scenario/scenario-mutation.js +13 -8
- package/dist-server/service/scenario/scenario-mutation.js.map +1 -1
- package/dist-server/service/scenario/scenario-query.js +9 -11
- package/dist-server/service/scenario/scenario-query.js.map +1 -1
- package/dist-server/service/scenario/scenario-type.js +3 -4
- package/dist-server/service/scenario/scenario-type.js.map +1 -1
- package/dist-server/service/scenario-flow/scenario-flow.js +1 -2
- package/dist-server/service/scenario-flow/scenario-flow.js.map +1 -1
- package/dist-server/service/scenario-instance/scenario-instance-mutation.js +4 -5
- package/dist-server/service/scenario-instance/scenario-instance-mutation.js.map +1 -1
- package/dist-server/service/scenario-instance/scenario-instance-query.js +1 -2
- package/dist-server/service/scenario-instance/scenario-instance-query.js.map +1 -1
- package/dist-server/service/scenario-instance/scenario-instance-subscription.js +1 -2
- package/dist-server/service/scenario-instance/scenario-instance-subscription.js.map +1 -1
- package/dist-server/service/scenario-instance/scenario-instance-type.js +3 -3
- package/dist-server/service/scenario-instance/scenario-instance-type.js.map +1 -1
- package/dist-server/service/scenario-queue/scenario-queue-type.js +1 -2
- package/dist-server/service/scenario-queue/scenario-queue-type.js.map +1 -1
- package/dist-server/service/step/step-mutation.js +3 -3
- package/dist-server/service/step/step-mutation.js.map +1 -1
- package/dist-server/service/step/step-query.js +8 -10
- package/dist-server/service/step/step-query.js.map +1 -1
- package/dist-server/service/step/step-type.js +3 -4
- package/dist-server/service/step/step-type.js.map +1 -1
- package/dist-server/service/task-type/task-type-query.js +5 -5
- package/dist-server/service/task-type/task-type-query.js.map +1 -1
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/package.json +8 -8
- package/server/engine/connection-manager.ts +1 -2
- package/server/engine/connector/graphql-connector.ts +5 -5
- package/server/engine/connector/http-connector.ts +5 -5
- package/server/engine/connector/oracle-connector.ts +1 -1
- package/server/engine/scenario-engine.ts +2 -2
- package/server/engine/task/local-graphql-mutate.ts +3 -2
- package/server/engine/task/local-graphql-query.ts +3 -2
- package/server/engine/task/pick-pending-scenario.ts +4 -3
- package/server/engine/task/sub-scenario.ts +3 -2
- package/server/engine/task/switch-range-scenario.ts +1 -2
- package/server/engine/task/switch-scenario.ts +1 -2
- package/server/routers/scenario-view-router.ts +8 -8
- package/server/service/connection/connection-mutation.ts +21 -13
- package/server/service/connection/connection-query.ts +8 -9
- package/server/service/connection/connection-subscription.ts +5 -4
- package/server/service/connector/connector-query.ts +9 -7
- package/server/service/payload-log/payload-log-mutation.ts +25 -21
- package/server/service/payload-log/payload-log-query.ts +7 -8
- package/server/service/payload-log/payload-log.ts +5 -2
- package/server/service/scenario/scenario-mutation.ts +26 -20
- package/server/service/scenario/scenario-query.ts +11 -12
- package/server/service/scenario-instance/scenario-instance-mutation.ts +6 -7
- package/server/service/scenario-instance/scenario-instance-query.ts +5 -2
- package/server/service/step/step-mutation.ts +5 -5
- package/server/service/step/step-query.ts +8 -9
- package/server/service/task-type/task-type-query.ts +10 -8
- package/db.test.sqlite +0 -0
|
@@ -16,21 +16,20 @@ export class ScenarioMutation {
|
|
|
16
16
|
@Mutation(returns => Scenario, { description: 'To create new scenario' })
|
|
17
17
|
async createScenario(
|
|
18
18
|
@Arg('scenario', type => NewScenario) scenario: NewScenario,
|
|
19
|
-
@Ctx() context:
|
|
19
|
+
@Ctx() context: ResolverContext
|
|
20
20
|
): Promise<Scenario> {
|
|
21
21
|
const { domain, user, tx } = context.state
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
return await tx.getRepository(Scenario).save({
|
|
24
24
|
...scenario,
|
|
25
25
|
domain,
|
|
26
26
|
creator: user,
|
|
27
27
|
updater: user
|
|
28
28
|
})
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
}
|
|
29
|
+
// return {
|
|
30
|
+
// ...saved,
|
|
31
|
+
// state: 'UNLOADED' // ScenarioInstanceStatus.UNLOADED
|
|
32
|
+
// }
|
|
34
33
|
}
|
|
35
34
|
|
|
36
35
|
@Directive('@transaction')
|
|
@@ -38,13 +37,13 @@ export class ScenarioMutation {
|
|
|
38
37
|
async updateScenario(
|
|
39
38
|
@Arg('name') name: string,
|
|
40
39
|
@Arg('patch', type => ScenarioPatch) patch: ScenarioPatch,
|
|
41
|
-
@Ctx() context:
|
|
40
|
+
@Ctx() context: ResolverContext
|
|
42
41
|
): Promise<Scenario> {
|
|
43
42
|
const { domain, user, tx } = context.state
|
|
44
43
|
|
|
45
44
|
const repository = tx.getRepository(Scenario)
|
|
46
45
|
const scenario = await repository.findOne({
|
|
47
|
-
where: { domain, name }
|
|
46
|
+
where: { domain: { id: domain.id }, name }
|
|
48
47
|
})
|
|
49
48
|
|
|
50
49
|
if (!scenario) {
|
|
@@ -66,7 +65,7 @@ export class ScenarioMutation {
|
|
|
66
65
|
@Mutation(returns => [Scenario], { description: "To modify multiple scenarios' information" })
|
|
67
66
|
async updateMultipleScenario(
|
|
68
67
|
@Arg('patches', type => [ScenarioPatch]) patches: ScenarioPatch[],
|
|
69
|
-
@Ctx() context:
|
|
68
|
+
@Ctx() context: ResolverContext
|
|
70
69
|
): Promise<Scenario[]> {
|
|
71
70
|
const { domain, user, tx } = context.state
|
|
72
71
|
|
|
@@ -93,7 +92,7 @@ export class ScenarioMutation {
|
|
|
93
92
|
if (_updateRecords.length > 0) {
|
|
94
93
|
for (let i = 0; i < _updateRecords.length; i++) {
|
|
95
94
|
const newRecord = _updateRecords[i]
|
|
96
|
-
const scenario = await scenarioRepo.
|
|
95
|
+
const scenario = await scenarioRepo.findOneBy({ id: newRecord.id })
|
|
97
96
|
|
|
98
97
|
const result = await scenarioRepo.save({
|
|
99
98
|
...scenario,
|
|
@@ -110,7 +109,7 @@ export class ScenarioMutation {
|
|
|
110
109
|
|
|
111
110
|
@Directive('@transaction')
|
|
112
111
|
@Mutation(returns => Boolean, { description: 'To delete scenario' })
|
|
113
|
-
async deleteScenario(@Arg('name') name: string, @Ctx() context:
|
|
112
|
+
async deleteScenario(@Arg('name') name: string, @Ctx() context: ResolverContext): Promise<boolean> {
|
|
114
113
|
const { domain, tx } = context.state
|
|
115
114
|
|
|
116
115
|
await tx.getRepository(Scenario).delete({ domain, name })
|
|
@@ -120,11 +119,14 @@ export class ScenarioMutation {
|
|
|
120
119
|
|
|
121
120
|
@Directive('@transaction')
|
|
122
121
|
@Mutation(returns => Boolean, { description: 'To delete multiple scenarios' })
|
|
123
|
-
async deleteScenarios(
|
|
122
|
+
async deleteScenarios(
|
|
123
|
+
@Arg('ids', type => [String]) ids: string[],
|
|
124
|
+
@Ctx() context: ResolverContext
|
|
125
|
+
): Promise<boolean> {
|
|
124
126
|
const { domain, tx } = context.state
|
|
125
127
|
|
|
126
128
|
await tx.getRepository(Scenario).delete({
|
|
127
|
-
domain,
|
|
129
|
+
domain: { id: domain.id },
|
|
128
130
|
id: In(ids)
|
|
129
131
|
})
|
|
130
132
|
|
|
@@ -135,7 +137,7 @@ export class ScenarioMutation {
|
|
|
135
137
|
@Mutation(returns => Boolean, { description: 'To import multiple scenarios' })
|
|
136
138
|
async importScenarios(
|
|
137
139
|
@Arg('scenarios', type => [ScenarioPatch]) scenarios: Scenario[],
|
|
138
|
-
@Ctx() context:
|
|
140
|
+
@Ctx() context: ResolverContext
|
|
139
141
|
): Promise<boolean> {
|
|
140
142
|
const tx: EntityManager = context.state.tx
|
|
141
143
|
const domain: Domain = context.state.domain
|
|
@@ -159,7 +161,10 @@ export class ScenarioMutation {
|
|
|
159
161
|
|
|
160
162
|
@Directive('@transaction')
|
|
161
163
|
@Mutation(returns => [Scenario], { description: 'To import multiple scenarios' })
|
|
162
|
-
async copyScenarios(
|
|
164
|
+
async copyScenarios(
|
|
165
|
+
@Arg('ids', type => [String]) ids: string[],
|
|
166
|
+
@Ctx() context: ResolverContext
|
|
167
|
+
): Promise<Scenario[]> {
|
|
163
168
|
const { domain, user, tx } = context.state
|
|
164
169
|
|
|
165
170
|
const originals = await tx.getRepository(Scenario).find({
|
|
@@ -216,10 +221,11 @@ export class ScenarioMutation {
|
|
|
216
221
|
|
|
217
222
|
return copiedScenarios.map(scenario => {
|
|
218
223
|
scenario.steps = copiedSteps.filter(step => step.scenario == scenario.id)
|
|
219
|
-
return
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
224
|
+
return scenario
|
|
225
|
+
// return {
|
|
226
|
+
// ...scenario,
|
|
227
|
+
// state: 'UNLOADED' // ScenarioInstanceStatus.UNLOADED
|
|
228
|
+
// }
|
|
223
229
|
})
|
|
224
230
|
}
|
|
225
231
|
}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { Arg, Args, Ctx, FieldResolver, Query, Resolver, Root } from 'type-graphql'
|
|
2
|
-
import { getRepository } from 'typeorm'
|
|
3
2
|
|
|
4
3
|
import { User } from '@things-factory/auth-base'
|
|
5
|
-
import { Domain, getQueryBuilderFromListParams, ListParam } from '@things-factory/shell'
|
|
4
|
+
import { Domain, getQueryBuilderFromListParams, getRepository, ListParam } from '@things-factory/shell'
|
|
6
5
|
|
|
7
6
|
import { ScenarioEngine } from '../../engine'
|
|
8
7
|
import { ScenarioInstance, ScenarioInstanceStatus } from '../scenario-instance/scenario-instance-type'
|
|
@@ -12,16 +11,16 @@ import { Scenario, ScenarioList } from './scenario-type'
|
|
|
12
11
|
@Resolver(Scenario)
|
|
13
12
|
export class ScenarioQuery {
|
|
14
13
|
@Query(returns => Scenario, { description: 'To fetch a scenario' })
|
|
15
|
-
async scenario(@Arg('id') id: string, @Ctx() context:
|
|
14
|
+
async scenario(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<Scenario> {
|
|
16
15
|
const { domain } = context.state
|
|
17
16
|
|
|
18
17
|
return await getRepository(Scenario).findOne({
|
|
19
|
-
where: { domain, id }
|
|
18
|
+
where: { domain: { id: domain.id }, id }
|
|
20
19
|
})
|
|
21
20
|
}
|
|
22
21
|
|
|
23
22
|
@Query(returns => ScenarioList, { description: 'To fetch multiple scenarios' })
|
|
24
|
-
async scenarios(@Args() params: ListParam, @Ctx() context:
|
|
23
|
+
async scenarios(@Args() params: ListParam, @Ctx() context: ResolverContext): Promise<ScenarioList> {
|
|
25
24
|
const { domain } = context.state
|
|
26
25
|
|
|
27
26
|
const queryBuilder = getQueryBuilderFromListParams({
|
|
@@ -38,32 +37,32 @@ export class ScenarioQuery {
|
|
|
38
37
|
|
|
39
38
|
@FieldResolver(type => Domain)
|
|
40
39
|
async domain(@Root() scenario: Scenario) {
|
|
41
|
-
return await getRepository(Domain).
|
|
40
|
+
return await getRepository(Domain).findOneBy({ id: scenario.domainId })
|
|
42
41
|
}
|
|
43
42
|
|
|
44
43
|
@FieldResolver(type => User)
|
|
45
44
|
async updater(@Root() scenario: Scenario): Promise<User> {
|
|
46
|
-
return await getRepository(User).
|
|
45
|
+
return await getRepository(User).findOneBy({ id: scenario.updaterId })
|
|
47
46
|
}
|
|
48
47
|
|
|
49
48
|
@FieldResolver(type => User)
|
|
50
49
|
async creator(@Root() scenario: Scenario): Promise<User> {
|
|
51
|
-
return await getRepository(User).
|
|
50
|
+
return await getRepository(User).findOneBy({ id: scenario.creatorId })
|
|
52
51
|
}
|
|
53
52
|
|
|
54
53
|
@FieldResolver(type => [Step])
|
|
55
|
-
async steps(@Root() scenario: Scenario, @Ctx() context:
|
|
54
|
+
async steps(@Root() scenario: Scenario, @Ctx() context: ResolverContext): Promise<Step[]> {
|
|
56
55
|
const { domain } = context.state
|
|
57
56
|
|
|
58
57
|
return await getRepository(Step).find({
|
|
59
|
-
where: { domain, scenario }
|
|
58
|
+
where: { domain: { id: domain.id }, scenario: { id: scenario.id } }
|
|
60
59
|
})
|
|
61
60
|
}
|
|
62
61
|
|
|
63
62
|
/* 아래 두개 FieldResolver는 type에는 정의하지 않았지만, 스키마에는 자동으로 추가되는 것으로 보인다. */
|
|
64
63
|
|
|
65
64
|
@FieldResolver(type => String, { nullable: true })
|
|
66
|
-
async state(@Root() scenario: Scenario, @Ctx() context:
|
|
65
|
+
async state(@Root() scenario: Scenario, @Ctx() context: ResolverContext): Promise<string> {
|
|
67
66
|
const { domain } = context.state
|
|
68
67
|
|
|
69
68
|
var instance = ScenarioEngine.getScenarioInstance(domain, scenario.name)
|
|
@@ -71,7 +70,7 @@ export class ScenarioQuery {
|
|
|
71
70
|
}
|
|
72
71
|
|
|
73
72
|
@FieldResolver(type => [ScenarioInstance], { nullable: true })
|
|
74
|
-
async instances(@Root() scenario: Scenario, @Ctx() context:
|
|
73
|
+
async instances(@Root() scenario: Scenario, @Ctx() context: ResolverContext): Promise<ScenarioInstance[]> {
|
|
75
74
|
const { domain } = context.state
|
|
76
75
|
|
|
77
76
|
return ScenarioEngine.getScenarioInstances(domain, scenario.name)
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { Arg, Ctx, Mutation, Resolver } from 'type-graphql'
|
|
2
|
-
import { getRepository } from 'typeorm'
|
|
3
2
|
|
|
4
|
-
import { GraphqlLocalClient, ScalarObject } from '@things-factory/shell'
|
|
3
|
+
import { getRepository, GraphqlLocalClient, ScalarObject } from '@things-factory/shell'
|
|
5
4
|
|
|
6
5
|
import { ScenarioEngine } from '../../engine'
|
|
7
6
|
import { Scenario } from '../scenario/scenario-type'
|
|
@@ -18,7 +17,7 @@ export class ScenarioInstanceMutation {
|
|
|
18
17
|
@Arg('instanceName', { nullable: true }) instanceName: string,
|
|
19
18
|
@Arg('scenarioName') scenarioName: string,
|
|
20
19
|
@Arg('variables', type => ScalarObject, { nullable: true }) variables: any,
|
|
21
|
-
@Ctx() context:
|
|
20
|
+
@Ctx() context: ResolverContext
|
|
22
21
|
): Promise<ScenarioInstance> {
|
|
23
22
|
const { domain } = context.state
|
|
24
23
|
|
|
@@ -26,7 +25,7 @@ export class ScenarioInstanceMutation {
|
|
|
26
25
|
|
|
27
26
|
var repository = getRepository(Scenario)
|
|
28
27
|
var scenario = await repository.findOne({
|
|
29
|
-
where: { domain, name: scenarioName },
|
|
28
|
+
where: { domain: { id: domain.id }, name: scenarioName },
|
|
30
29
|
relations: ['domain', 'steps', 'creator', 'updater']
|
|
31
30
|
})
|
|
32
31
|
|
|
@@ -55,7 +54,7 @@ export class ScenarioInstanceMutation {
|
|
|
55
54
|
@Arg('instanceName', { nullable: true }) instanceName: string,
|
|
56
55
|
@Arg('scenarioName') scenarioName: string,
|
|
57
56
|
@Arg('variables', type => ScalarObject, { nullable: true }) variables: any,
|
|
58
|
-
@Ctx() context:
|
|
57
|
+
@Ctx() context: ResolverContext
|
|
59
58
|
): Promise<ScenarioInstance> {
|
|
60
59
|
const { domain } = context.state
|
|
61
60
|
|
|
@@ -63,7 +62,7 @@ export class ScenarioInstanceMutation {
|
|
|
63
62
|
|
|
64
63
|
var repository = getRepository(Scenario)
|
|
65
64
|
var scenario = await repository.findOne({
|
|
66
|
-
where: { domain, name: scenarioName },
|
|
65
|
+
where: { domain: { id: domain.id }, name: scenarioName },
|
|
67
66
|
relations: ['domain', 'steps', 'creator', 'updater']
|
|
68
67
|
})
|
|
69
68
|
|
|
@@ -82,7 +81,7 @@ export class ScenarioInstanceMutation {
|
|
|
82
81
|
@Mutation(returns => ScenarioInstance, { nullable: true, description: 'To start new scenario instance' })
|
|
83
82
|
async stopScenario(
|
|
84
83
|
@Arg('instanceName', { nullable: true }) instanceName: string,
|
|
85
|
-
@Ctx() context:
|
|
84
|
+
@Ctx() context: ResolverContext
|
|
86
85
|
): Promise<ScenarioInstance | undefined> {
|
|
87
86
|
const { domain } = context.state
|
|
88
87
|
|
|
@@ -13,14 +13,17 @@ import {
|
|
|
13
13
|
@Resolver(ScenarioInstance)
|
|
14
14
|
export class ScenarioInstanceQuery {
|
|
15
15
|
@Query(returns => ScenarioInstance, { description: 'To fetch a scenario instance' })
|
|
16
|
-
async scenarioInstance(
|
|
16
|
+
async scenarioInstance(
|
|
17
|
+
@Arg('instanceName') instanceName: string,
|
|
18
|
+
@Ctx() context: ResolverContext
|
|
19
|
+
): Promise<ScenarioInstance> {
|
|
17
20
|
const { domain } = context.state
|
|
18
21
|
|
|
19
22
|
return ScenarioEngine.getScenarioInstance(domain, instanceName)
|
|
20
23
|
}
|
|
21
24
|
|
|
22
25
|
@Query(returns => ScenarioInstanceList, { description: 'To fetch multiple scenario instances' })
|
|
23
|
-
async scenarioInstances(@Args() params: ListParam, @Ctx() context:
|
|
26
|
+
async scenarioInstances(@Args() params: ListParam, @Ctx() context: ResolverContext): Promise<ScenarioInstanceList> {
|
|
24
27
|
const { domain } = context.state
|
|
25
28
|
|
|
26
29
|
var scenarioInstances = ScenarioEngine.getScenarioInstances(domain)
|
|
@@ -11,15 +11,15 @@ export class StepMutation {
|
|
|
11
11
|
async updateMultipleStep(
|
|
12
12
|
@Arg('scenarioId') scenarioId: string,
|
|
13
13
|
@Arg('patches', type => [StepPatch]) patches: StepPatch[],
|
|
14
|
-
@Ctx() context:
|
|
14
|
+
@Ctx() context: ResolverContext
|
|
15
15
|
): Promise<Step[]> {
|
|
16
16
|
const { domain, user, tx } = context.state
|
|
17
17
|
|
|
18
18
|
let results = []
|
|
19
19
|
const stepRepo = tx.getRepository(Step)
|
|
20
|
-
const scenario = await tx.getRepository(Scenario).
|
|
20
|
+
const scenario = await tx.getRepository(Scenario).findOneBy({ id: scenarioId })
|
|
21
21
|
|
|
22
|
-
await stepRepo.delete({ domain, scenario: scenarioId })
|
|
22
|
+
await stepRepo.delete({ domain: { id: domain.id }, scenario: { id: scenarioId } })
|
|
23
23
|
|
|
24
24
|
for (let i = 0; i < patches.length; i++) {
|
|
25
25
|
const result = await stepRepo.save({
|
|
@@ -39,11 +39,11 @@ export class StepMutation {
|
|
|
39
39
|
|
|
40
40
|
@Directive('@transaction')
|
|
41
41
|
@Mutation(returns => Boolean, { description: 'To delete multiple steps' })
|
|
42
|
-
async deleteSteps(@Arg('ids', type => [String]) ids: string[], @Ctx() context:
|
|
42
|
+
async deleteSteps(@Arg('ids', type => [String]) ids: string[], @Ctx() context: ResolverContext): Promise<boolean> {
|
|
43
43
|
const { domain, tx } = context.state
|
|
44
44
|
|
|
45
45
|
await tx.getRepository(Step).delete({
|
|
46
|
-
domain,
|
|
46
|
+
domain: { id: domain.id },
|
|
47
47
|
id: In(ids)
|
|
48
48
|
})
|
|
49
49
|
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { Arg, Args, Ctx, FieldResolver, Query, Resolver, Root } from 'type-graphql'
|
|
2
|
-
import { getRepository } from 'typeorm'
|
|
3
2
|
|
|
4
3
|
import { User } from '@things-factory/auth-base'
|
|
5
|
-
import { Domain, getQueryBuilderFromListParams, ListParam } from '@things-factory/shell'
|
|
4
|
+
import { Domain, getQueryBuilderFromListParams, getRepository, ListParam } from '@things-factory/shell'
|
|
6
5
|
|
|
7
6
|
import { Scenario } from '../scenario/scenario-type'
|
|
8
7
|
import { Step, StepList } from './step-type'
|
|
@@ -10,16 +9,16 @@ import { Step, StepList } from './step-type'
|
|
|
10
9
|
@Resolver(Step)
|
|
11
10
|
export class StepQuery {
|
|
12
11
|
@Query(returns => Step, { description: 'To fetch a step' })
|
|
13
|
-
async step(@Arg('name') name: string, @Ctx() context:
|
|
12
|
+
async step(@Arg('name') name: string, @Ctx() context: ResolverContext): Promise<Step> {
|
|
14
13
|
const { domain } = context.state
|
|
15
14
|
|
|
16
15
|
return await getRepository(Step).findOne({
|
|
17
|
-
where: { domain, name }
|
|
16
|
+
where: { domain: { id: domain.id }, name }
|
|
18
17
|
})
|
|
19
18
|
}
|
|
20
19
|
|
|
21
20
|
@Query(returns => StepList, { description: 'To fetch multiple steps' })
|
|
22
|
-
async steps(@Args() params: ListParam, @Ctx() context:
|
|
21
|
+
async steps(@Args() params: ListParam, @Ctx() context: ResolverContext): Promise<StepList> {
|
|
23
22
|
const { domain } = context.state
|
|
24
23
|
|
|
25
24
|
const queryBuilder = getQueryBuilderFromListParams({
|
|
@@ -36,21 +35,21 @@ export class StepQuery {
|
|
|
36
35
|
|
|
37
36
|
@FieldResolver(type => Scenario)
|
|
38
37
|
async scenario(@Root() step: Step) {
|
|
39
|
-
return await getRepository(Scenario).
|
|
38
|
+
return await getRepository(Scenario).findOneBy({ id: step.scenarioId })
|
|
40
39
|
}
|
|
41
40
|
|
|
42
41
|
@FieldResolver(type => Domain)
|
|
43
42
|
async domain(@Root() step: Step) {
|
|
44
|
-
return await getRepository(Domain).
|
|
43
|
+
return await getRepository(Domain).findOneBy({ id: step.domainId })
|
|
45
44
|
}
|
|
46
45
|
|
|
47
46
|
@FieldResolver(type => User)
|
|
48
47
|
async updater(@Root() step: Step): Promise<User> {
|
|
49
|
-
return await getRepository(User).
|
|
48
|
+
return await getRepository(User).findOneBy({ id: step.updaterId })
|
|
50
49
|
}
|
|
51
50
|
|
|
52
51
|
@FieldResolver(type => User)
|
|
53
52
|
async creator(@Root() step: Step): Promise<User> {
|
|
54
|
-
return await getRepository(User).
|
|
53
|
+
return await getRepository(User).findOneBy({ id: step.creatorId })
|
|
55
54
|
}
|
|
56
55
|
}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { Arg, Ctx, Query, Resolver } from 'type-graphql'
|
|
2
|
+
|
|
3
|
+
import { getRepository } from '@things-factory/shell'
|
|
4
|
+
|
|
5
|
+
import { ConnectionManager } from '../../engine/connection-manager'
|
|
6
|
+
import { TaskRegistry } from '../../engine/task-registry'
|
|
3
7
|
import { Connection } from '../connection/connection-type'
|
|
4
8
|
import { TaskType, TaskTypeList } from './task-type-type'
|
|
5
|
-
import { TaskRegistry } from '../../engine/task-registry'
|
|
6
|
-
import { ConnectionManager } from '../../engine/connection-manager'
|
|
7
9
|
|
|
8
10
|
@Resolver(TaskType)
|
|
9
11
|
export class TaskTypeQuery {
|
|
10
12
|
@Query(returns => TaskType, { description: 'To fetch a task-type' })
|
|
11
|
-
taskType(@Arg('name') name: string, @Ctx() context:
|
|
13
|
+
taskType(@Arg('name') name: string, @Ctx() context: ResolverContext): TaskType {
|
|
12
14
|
const { description, help, parameterSpec, connectorFree } = (TaskRegistry.getTaskHandler(name) || {}) as any
|
|
13
15
|
|
|
14
16
|
return {
|
|
@@ -21,7 +23,7 @@ export class TaskTypeQuery {
|
|
|
21
23
|
}
|
|
22
24
|
|
|
23
25
|
@Query(returns => TaskTypeList, { description: 'To fetch multiple task-type' })
|
|
24
|
-
taskTypes(@Ctx() context:
|
|
26
|
+
taskTypes(@Ctx() context: ResolverContext): TaskTypeList {
|
|
25
27
|
var taskTypes = TaskRegistry.getTaskHandlers()
|
|
26
28
|
var items = Object.keys(taskTypes)
|
|
27
29
|
.map(name => {
|
|
@@ -47,13 +49,13 @@ export class TaskTypeQuery {
|
|
|
47
49
|
@Query(returns => TaskTypeList, { description: 'To fetch the connector from a task-type' })
|
|
48
50
|
async taskTypesByConnection(
|
|
49
51
|
@Arg('connectionName') connectionName: string,
|
|
50
|
-
@Ctx() context:
|
|
52
|
+
@Ctx() context: ResolverContext
|
|
51
53
|
): Promise<TaskTypeList> {
|
|
52
54
|
var taskPrefixes = []
|
|
53
55
|
|
|
54
56
|
if (connectionName) {
|
|
55
57
|
var connection = await getRepository(Connection).findOne({
|
|
56
|
-
where: { domain: context.state.domain, name: connectionName }
|
|
58
|
+
where: { domain: { id: context.state.domain.id }, name: connectionName }
|
|
57
59
|
})
|
|
58
60
|
|
|
59
61
|
if (connection) {
|
package/db.test.sqlite
DELETED
|
Binary file
|