@things-factory/process 6.0.57
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/CHANGELOG.md +8 -0
- package/assets/images/hatiolab-logo.png +0 -0
- package/client/actions/main.ts +1 -0
- package/client/bootstrap.ts +8 -0
- package/client/index.ts +1 -0
- package/client/pages/main.ts +25 -0
- package/client/pages/process/process-importer.ts +97 -0
- package/client/pages/process/process-list-page.ts +348 -0
- package/client/pages/process-instance/process-instance-importer.ts +97 -0
- package/client/pages/process-instance/process-instance-list-page.ts +348 -0
- package/client/pages/process-thread/process-thread-importer.ts +97 -0
- package/client/pages/process-thread/process-thread-list-page.ts +348 -0
- package/client/reducers/main.ts +17 -0
- package/client/route.ts +19 -0
- package/client/tsconfig.json +11 -0
- package/dist-client/actions/main.d.ts +1 -0
- package/dist-client/actions/main.js +2 -0
- package/dist-client/actions/main.js.map +1 -0
- package/dist-client/bootstrap.d.ts +1 -0
- package/dist-client/bootstrap.js +8 -0
- package/dist-client/bootstrap.js.map +1 -0
- package/dist-client/index.d.ts +1 -0
- package/dist-client/index.js +2 -0
- package/dist-client/index.js.map +1 -0
- package/dist-client/pages/main.d.ts +1 -0
- package/dist-client/pages/main.js +27 -0
- package/dist-client/pages/main.js.map +1 -0
- package/dist-client/pages/process/process-importer.d.ts +22 -0
- package/dist-client/pages/process/process-importer.js +100 -0
- package/dist-client/pages/process/process-importer.js.map +1 -0
- package/dist-client/pages/process/process-list-page.d.ts +62 -0
- package/dist-client/pages/process/process-list-page.js +326 -0
- package/dist-client/pages/process/process-list-page.js.map +1 -0
- package/dist-client/pages/process-instance/process-instance-importer.d.ts +22 -0
- package/dist-client/pages/process-instance/process-instance-importer.js +100 -0
- package/dist-client/pages/process-instance/process-instance-importer.js.map +1 -0
- package/dist-client/pages/process-instance/process-instance-list-page.d.ts +62 -0
- package/dist-client/pages/process-instance/process-instance-list-page.js +326 -0
- package/dist-client/pages/process-instance/process-instance-list-page.js.map +1 -0
- package/dist-client/pages/process-thread/process-thread-importer.d.ts +22 -0
- package/dist-client/pages/process-thread/process-thread-importer.js +100 -0
- package/dist-client/pages/process-thread/process-thread-importer.js.map +1 -0
- package/dist-client/pages/process-thread/process-thread-list-page.d.ts +62 -0
- package/dist-client/pages/process-thread/process-thread-list-page.js +326 -0
- package/dist-client/pages/process-thread/process-thread-list-page.js.map +1 -0
- package/dist-client/reducers/main.d.ts +6 -0
- package/dist-client/reducers/main.js +14 -0
- package/dist-client/reducers/main.js.map +1 -0
- package/dist-client/route.d.ts +1 -0
- package/dist-client/route.js +17 -0
- package/dist-client/route.js.map +1 -0
- package/dist-client/tsconfig.tsbuildinfo +1 -0
- package/dist-server/controllers/common.js +70 -0
- package/dist-server/controllers/common.js.map +1 -0
- package/dist-server/controllers/index.js +1 -0
- package/dist-server/controllers/index.js.map +1 -0
- package/dist-server/controllers/process-instance/abort.js +54 -0
- package/dist-server/controllers/process-instance/abort.js.map +1 -0
- package/dist-server/controllers/process-instance/assign.js +41 -0
- package/dist-server/controllers/process-instance/assign.js.map +1 -0
- package/dist-server/controllers/process-instance/draft.js +74 -0
- package/dist-server/controllers/process-instance/draft.js.map +1 -0
- package/dist-server/controllers/process-instance/end.js +54 -0
- package/dist-server/controllers/process-instance/end.js.map +1 -0
- package/dist-server/controllers/process-instance/index.js +6 -0
- package/dist-server/controllers/process-instance/index.js.map +1 -0
- package/dist-server/controllers/process-instance/issue.js +105 -0
- package/dist-server/controllers/process-instance/issue.js.map +1 -0
- package/dist-server/controllers/process-instance/pick.js +33 -0
- package/dist-server/controllers/process-instance/pick.js.map +1 -0
- package/dist-server/controllers/process-thread/_abort.js +11 -0
- package/dist-server/controllers/process-thread/_abort.js.map +1 -0
- package/dist-server/controllers/process-thread/abort.js +36 -0
- package/dist-server/controllers/process-thread/abort.js.map +1 -0
- package/dist-server/controllers/process-thread/delegate.js +36 -0
- package/dist-server/controllers/process-thread/delegate.js.map +1 -0
- package/dist-server/controllers/process-thread/end.js +35 -0
- package/dist-server/controllers/process-thread/end.js.map +1 -0
- package/dist-server/controllers/process-thread/index.js +7 -0
- package/dist-server/controllers/process-thread/index.js.map +1 -0
- package/dist-server/controllers/process-thread/restart.js +36 -0
- package/dist-server/controllers/process-thread/restart.js.map +1 -0
- package/dist-server/controllers/process-thread/save.js +38 -0
- package/dist-server/controllers/process-thread/save.js.map +1 -0
- package/dist-server/controllers/process-thread/start.js +32 -0
- package/dist-server/controllers/process-thread/start.js.map +1 -0
- package/dist-server/controllers/process-thread/submit.js +37 -0
- package/dist-server/controllers/process-thread/submit.js.map +1 -0
- package/dist-server/index.js +7 -0
- package/dist-server/index.js.map +1 -0
- package/dist-server/middlewares/index.js +8 -0
- package/dist-server/middlewares/index.js.map +1 -0
- package/dist-server/migrations/index.js +12 -0
- package/dist-server/migrations/index.js.map +1 -0
- package/dist-server/routes.js +25 -0
- package/dist-server/routes.js.map +1 -0
- package/dist-server/service/index.js +33 -0
- package/dist-server/service/index.js.map +1 -0
- package/dist-server/service/process/event-subscriber.js +21 -0
- package/dist-server/service/process/event-subscriber.js.map +1 -0
- package/dist-server/service/process/index.js +12 -0
- package/dist-server/service/process/index.js.map +1 -0
- package/dist-server/service/process/process-history.js +113 -0
- package/dist-server/service/process/process-history.js.map +1 -0
- package/dist-server/service/process/process-model-type.js +138 -0
- package/dist-server/service/process/process-model-type.js.map +1 -0
- package/dist-server/service/process/process-mutation.js +179 -0
- package/dist-server/service/process/process-mutation.js.map +1 -0
- package/dist-server/service/process/process-query.js +160 -0
- package/dist-server/service/process/process-query.js.map +1 -0
- package/dist-server/service/process/process-search-key-item-type.js +28 -0
- package/dist-server/service/process/process-search-key-item-type.js.map +1 -0
- package/dist-server/service/process/process-type.js +91 -0
- package/dist-server/service/process/process-type.js.map +1 -0
- package/dist-server/service/process/process.js +112 -0
- package/dist-server/service/process/process.js.map +1 -0
- package/dist-server/service/process-instance/event-subscriber.js +43 -0
- package/dist-server/service/process-instance/event-subscriber.js.map +1 -0
- package/dist-server/service/process-instance/index.js +13 -0
- package/dist-server/service/process-instance/index.js.map +1 -0
- package/dist-server/service/process-instance/process-instance-history.js +173 -0
- package/dist-server/service/process-instance/process-instance-history.js.map +1 -0
- package/dist-server/service/process-instance/process-instance-mutation.js +44 -0
- package/dist-server/service/process-instance/process-instance-mutation.js.map +1 -0
- package/dist-server/service/process-instance/process-instance-query.js +176 -0
- package/dist-server/service/process-instance/process-instance-query.js.map +1 -0
- package/dist-server/service/process-instance/process-instance-subscription.js +54 -0
- package/dist-server/service/process-instance/process-instance-subscription.js.map +1 -0
- package/dist-server/service/process-instance/process-instance-type.js +103 -0
- package/dist-server/service/process-instance/process-instance-type.js.map +1 -0
- package/dist-server/service/process-instance/process-instance.js +177 -0
- package/dist-server/service/process-instance/process-instance.js.map +1 -0
- package/dist-server/service/process-stats/index.js +6 -0
- package/dist-server/service/process-stats/index.js.map +1 -0
- package/dist-server/service/process-stats/process-stats-query.js +61 -0
- package/dist-server/service/process-stats/process-stats-query.js.map +1 -0
- package/dist-server/service/process-stats/process-stats-type.js +43 -0
- package/dist-server/service/process-stats/process-stats-type.js.map +1 -0
- package/dist-server/service/process-summary/index.js +8 -0
- package/dist-server/service/process-summary/index.js.map +1 -0
- package/dist-server/service/process-summary/process-summary-query.js +109 -0
- package/dist-server/service/process-summary/process-summary-query.js.map +1 -0
- package/dist-server/service/process-summary/process-summary.js +28 -0
- package/dist-server/service/process-summary/process-summary.js.map +1 -0
- package/dist-server/service/process-thread/event-subscriber.js +31 -0
- package/dist-server/service/process-thread/event-subscriber.js.map +1 -0
- package/dist-server/service/process-thread/index.js +12 -0
- package/dist-server/service/process-thread/index.js.map +1 -0
- package/dist-server/service/process-thread/process-thread-history.js +194 -0
- package/dist-server/service/process-thread/process-thread-history.js.map +1 -0
- package/dist-server/service/process-thread/process-thread-mutation.js +45 -0
- package/dist-server/service/process-thread/process-thread-mutation.js.map +1 -0
- package/dist-server/service/process-thread/process-thread-query.js +92 -0
- package/dist-server/service/process-thread/process-thread-query.js.map +1 -0
- package/dist-server/service/process-thread/process-thread-subscription.js +45 -0
- package/dist-server/service/process-thread/process-thread-subscription.js.map +1 -0
- package/dist-server/service/process-thread/process-thread-type.js +21 -0
- package/dist-server/service/process-thread/process-thread-type.js.map +1 -0
- package/dist-server/service/process-thread/process-thread.js +101 -0
- package/dist-server/service/process-thread/process-thread.js.map +1 -0
- package/dist-server/tsconfig.tsbuildinfo +1 -0
- package/helps/process/process-instance.md +160 -0
- package/helps/process/process-thread.md +160 -0
- package/helps/process/process.md +160 -0
- package/package.json +44 -0
- package/server/controllers/common.ts +90 -0
- package/server/controllers/index.ts +0 -0
- package/server/controllers/process-instance/abort.ts +75 -0
- package/server/controllers/process-instance/end.ts +74 -0
- package/server/controllers/process-instance/index.ts +2 -0
- package/server/controllers/process-thread/_abort.ts +20 -0
- package/server/controllers/process-thread/abort.ts +48 -0
- package/server/controllers/process-thread/end.ts +54 -0
- package/server/controllers/process-thread/index.ts +3 -0
- package/server/controllers/process-thread/start.ts +49 -0
- package/server/index.ts +4 -0
- package/server/middlewares/index.ts +3 -0
- package/server/migrations/index.ts +9 -0
- package/server/routes.ts +28 -0
- package/server/service/index.ts +32 -0
- package/server/service/process/event-subscriber.ts +17 -0
- package/server/service/process/index.ts +9 -0
- package/server/service/process/process-history.ts +102 -0
- package/server/service/process/process-mutation.ts +210 -0
- package/server/service/process/process-query.ts +117 -0
- package/server/service/process/process-search-key-item-type.ts +16 -0
- package/server/service/process/process-type.ts +65 -0
- package/server/service/process/process.ts +97 -0
- package/server/service/process-instance/event-subscriber.ts +44 -0
- package/server/service/process-instance/index.ts +10 -0
- package/server/service/process-instance/process-instance-history.ts +148 -0
- package/server/service/process-instance/process-instance-mutation.ts +33 -0
- package/server/service/process-instance/process-instance-query.ts +138 -0
- package/server/service/process-instance/process-instance-subscription.ts +52 -0
- package/server/service/process-instance/process-instance-type.ts +71 -0
- package/server/service/process-instance/process-instance.ts +147 -0
- package/server/service/process-stats/index.ts +3 -0
- package/server/service/process-stats/process-stats-query.ts +57 -0
- package/server/service/process-stats/process-stats-type.ts +31 -0
- package/server/service/process-thread/event-subscriber.ts +31 -0
- package/server/service/process-thread/index.ts +9 -0
- package/server/service/process-thread/process-thread-mutation.ts +34 -0
- package/server/service/process-thread/process-thread-query.ts +58 -0
- package/server/service/process-thread/process-thread-subscription.ts +41 -0
- package/server/service/process-thread/process-thread-type.ts +15 -0
- package/server/service/process-thread/process-thread.ts +90 -0
- package/server/tsconfig.json +10 -0
- package/things-factory.config.js +13 -0
- package/translations/en.json +1 -0
- package/translations/ko.json +1 -0
- package/translations/ms.json +1 -0
- package/translations/zh.json +1 -0
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ProcessInstanceHistory = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const type_graphql_1 = require("type-graphql");
|
|
6
|
+
const typeorm_1 = require("typeorm");
|
|
7
|
+
const typeorm_history_1 = require("@operato/typeorm-history");
|
|
8
|
+
const auth_base_1 = require("@things-factory/auth-base");
|
|
9
|
+
const env_1 = require("@things-factory/env");
|
|
10
|
+
const shell_1 = require("@things-factory/shell");
|
|
11
|
+
const process_instance_1 = require("./process-instance");
|
|
12
|
+
const ORMCONFIG = env_1.config.get('ormconfig', {});
|
|
13
|
+
const DATABASE_TYPE = ORMCONFIG.type;
|
|
14
|
+
let ProcessInstanceHistory = class ProcessInstanceHistory {
|
|
15
|
+
constructor() {
|
|
16
|
+
this.version = 1;
|
|
17
|
+
this.key01 = '';
|
|
18
|
+
this.key02 = '';
|
|
19
|
+
this.key03 = '';
|
|
20
|
+
this.key04 = '';
|
|
21
|
+
this.key05 = '';
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
tslib_1.__decorate([
|
|
25
|
+
(0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
|
|
26
|
+
(0, type_graphql_1.Field)(type => type_graphql_1.ID),
|
|
27
|
+
tslib_1.__metadata("design:type", String)
|
|
28
|
+
], ProcessInstanceHistory.prototype, "id", void 0);
|
|
29
|
+
tslib_1.__decorate([
|
|
30
|
+
(0, typeorm_1.Column)({
|
|
31
|
+
nullable: true,
|
|
32
|
+
default: 1
|
|
33
|
+
}),
|
|
34
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
35
|
+
tslib_1.__metadata("design:type", Number)
|
|
36
|
+
], ProcessInstanceHistory.prototype, "version", void 0);
|
|
37
|
+
tslib_1.__decorate([
|
|
38
|
+
(0, typeorm_1.ManyToOne)(type => shell_1.Domain),
|
|
39
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
40
|
+
tslib_1.__metadata("design:type", shell_1.Domain)
|
|
41
|
+
], ProcessInstanceHistory.prototype, "domain", void 0);
|
|
42
|
+
tslib_1.__decorate([
|
|
43
|
+
(0, typeorm_1.RelationId)((processInstance) => processInstance.domain),
|
|
44
|
+
tslib_1.__metadata("design:type", String)
|
|
45
|
+
], ProcessInstanceHistory.prototype, "domainId", void 0);
|
|
46
|
+
tslib_1.__decorate([
|
|
47
|
+
(0, typeorm_1.Column)(),
|
|
48
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
49
|
+
tslib_1.__metadata("design:type", String)
|
|
50
|
+
], ProcessInstanceHistory.prototype, "name", void 0);
|
|
51
|
+
tslib_1.__decorate([
|
|
52
|
+
(0, typeorm_1.Column)({ nullable: true }),
|
|
53
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
54
|
+
tslib_1.__metadata("design:type", String)
|
|
55
|
+
], ProcessInstanceHistory.prototype, "description", void 0);
|
|
56
|
+
tslib_1.__decorate([
|
|
57
|
+
(0, typeorm_1.Column)({ nullable: true, default: '' }),
|
|
58
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
59
|
+
tslib_1.__metadata("design:type", String)
|
|
60
|
+
], ProcessInstanceHistory.prototype, "key01", void 0);
|
|
61
|
+
tslib_1.__decorate([
|
|
62
|
+
(0, typeorm_1.Column)({ nullable: true, default: '' }),
|
|
63
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
64
|
+
tslib_1.__metadata("design:type", String)
|
|
65
|
+
], ProcessInstanceHistory.prototype, "key02", void 0);
|
|
66
|
+
tslib_1.__decorate([
|
|
67
|
+
(0, typeorm_1.Column)({ nullable: true, default: '' }),
|
|
68
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
69
|
+
tslib_1.__metadata("design:type", String)
|
|
70
|
+
], ProcessInstanceHistory.prototype, "key03", void 0);
|
|
71
|
+
tslib_1.__decorate([
|
|
72
|
+
(0, typeorm_1.Column)({ nullable: true, default: '' }),
|
|
73
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
74
|
+
tslib_1.__metadata("design:type", String)
|
|
75
|
+
], ProcessInstanceHistory.prototype, "key04", void 0);
|
|
76
|
+
tslib_1.__decorate([
|
|
77
|
+
(0, typeorm_1.Column)({ nullable: true, default: '' }),
|
|
78
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
79
|
+
tslib_1.__metadata("design:type", String)
|
|
80
|
+
], ProcessInstanceHistory.prototype, "key05", void 0);
|
|
81
|
+
tslib_1.__decorate([
|
|
82
|
+
(0, typeorm_1.Column)({ nullable: true }),
|
|
83
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
84
|
+
tslib_1.__metadata("design:type", String)
|
|
85
|
+
], ProcessInstanceHistory.prototype, "state", void 0);
|
|
86
|
+
tslib_1.__decorate([
|
|
87
|
+
(0, typeorm_1.Column)({ nullable: true }),
|
|
88
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
89
|
+
tslib_1.__metadata("design:type", String)
|
|
90
|
+
], ProcessInstanceHistory.prototype, "reason", void 0);
|
|
91
|
+
tslib_1.__decorate([
|
|
92
|
+
(0, typeorm_1.Column)({ nullable: true }),
|
|
93
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
94
|
+
tslib_1.__metadata("design:type", String)
|
|
95
|
+
], ProcessInstanceHistory.prototype, "refBy", void 0);
|
|
96
|
+
tslib_1.__decorate([
|
|
97
|
+
(0, typeorm_1.ManyToOne)(type => auth_base_1.Role, { nullable: true }),
|
|
98
|
+
(0, type_graphql_1.Field)(type => auth_base_1.Role, { nullable: true }),
|
|
99
|
+
tslib_1.__metadata("design:type", auth_base_1.Role)
|
|
100
|
+
], ProcessInstanceHistory.prototype, "supervisoryRole", void 0);
|
|
101
|
+
tslib_1.__decorate([
|
|
102
|
+
(0, typeorm_1.RelationId)((processInstance) => processInstance.supervisoryRole),
|
|
103
|
+
tslib_1.__metadata("design:type", String)
|
|
104
|
+
], ProcessInstanceHistory.prototype, "supervisoryRoleId", void 0);
|
|
105
|
+
tslib_1.__decorate([
|
|
106
|
+
(0, typeorm_1.Column)({ nullable: true }),
|
|
107
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
108
|
+
tslib_1.__metadata("design:type", Date)
|
|
109
|
+
], ProcessInstanceHistory.prototype, "dueAt", void 0);
|
|
110
|
+
tslib_1.__decorate([
|
|
111
|
+
(0, typeorm_1.Column)(),
|
|
112
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
113
|
+
tslib_1.__metadata("design:type", Date)
|
|
114
|
+
], ProcessInstanceHistory.prototype, "createdAt", void 0);
|
|
115
|
+
tslib_1.__decorate([
|
|
116
|
+
(0, typeorm_1.Column)(),
|
|
117
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
118
|
+
tslib_1.__metadata("design:type", Date)
|
|
119
|
+
], ProcessInstanceHistory.prototype, "updatedAt", void 0);
|
|
120
|
+
tslib_1.__decorate([
|
|
121
|
+
(0, typeorm_1.Column)({ nullable: true }),
|
|
122
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
123
|
+
tslib_1.__metadata("design:type", Date)
|
|
124
|
+
], ProcessInstanceHistory.prototype, "terminatedAt", void 0);
|
|
125
|
+
tslib_1.__decorate([
|
|
126
|
+
(0, typeorm_1.ManyToOne)(type => auth_base_1.User, { nullable: true }),
|
|
127
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
128
|
+
tslib_1.__metadata("design:type", auth_base_1.User)
|
|
129
|
+
], ProcessInstanceHistory.prototype, "creator", void 0);
|
|
130
|
+
tslib_1.__decorate([
|
|
131
|
+
(0, typeorm_1.RelationId)((processInstance) => processInstance.creator),
|
|
132
|
+
tslib_1.__metadata("design:type", String)
|
|
133
|
+
], ProcessInstanceHistory.prototype, "creatorId", void 0);
|
|
134
|
+
tslib_1.__decorate([
|
|
135
|
+
(0, typeorm_1.ManyToOne)(type => auth_base_1.User, { nullable: true }),
|
|
136
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
137
|
+
tslib_1.__metadata("design:type", auth_base_1.User)
|
|
138
|
+
], ProcessInstanceHistory.prototype, "updater", void 0);
|
|
139
|
+
tslib_1.__decorate([
|
|
140
|
+
(0, typeorm_1.RelationId)((processInstance) => processInstance.updater),
|
|
141
|
+
tslib_1.__metadata("design:type", String)
|
|
142
|
+
], ProcessInstanceHistory.prototype, "updaterId", void 0);
|
|
143
|
+
tslib_1.__decorate([
|
|
144
|
+
(0, typeorm_history_1.HistoryOriginalIdColumn)(),
|
|
145
|
+
tslib_1.__metadata("design:type", String)
|
|
146
|
+
], ProcessInstanceHistory.prototype, "originalId", void 0);
|
|
147
|
+
tslib_1.__decorate([
|
|
148
|
+
(0, typeorm_history_1.HistoryActionColumn)({
|
|
149
|
+
nullable: false,
|
|
150
|
+
type: DATABASE_TYPE == 'postgres' || DATABASE_TYPE == 'mysql' || DATABASE_TYPE == 'mariadb'
|
|
151
|
+
? 'enum'
|
|
152
|
+
: DATABASE_TYPE == 'oracle'
|
|
153
|
+
? 'varchar2'
|
|
154
|
+
: 'smallint',
|
|
155
|
+
enum: typeorm_history_1.HistoryActionType
|
|
156
|
+
}),
|
|
157
|
+
tslib_1.__metadata("design:type", String)
|
|
158
|
+
], ProcessInstanceHistory.prototype, "action", void 0);
|
|
159
|
+
ProcessInstanceHistory = tslib_1.__decorate([
|
|
160
|
+
(0, typeorm_1.Entity)(),
|
|
161
|
+
(0, typeorm_1.Index)('ix_process_instance_history_0', (processInstanceHistory) => [
|
|
162
|
+
processInstanceHistory.originalId,
|
|
163
|
+
processInstanceHistory.version
|
|
164
|
+
], { unique: true }),
|
|
165
|
+
(0, typeorm_1.Index)('ix_process_instance_history_1', (processInstanceHistory) => [
|
|
166
|
+
processInstanceHistory.domain,
|
|
167
|
+
processInstanceHistory.originalId,
|
|
168
|
+
processInstanceHistory.version
|
|
169
|
+
], { unique: true }),
|
|
170
|
+
(0, type_graphql_1.ObjectType)({ description: 'History Entity of ProcessInstance' })
|
|
171
|
+
], ProcessInstanceHistory);
|
|
172
|
+
exports.ProcessInstanceHistory = ProcessInstanceHistory;
|
|
173
|
+
//# sourceMappingURL=process-instance-history.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"process-instance-history.js","sourceRoot":"","sources":["../../../server/service/process-instance/process-instance-history.ts"],"names":[],"mappings":"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","sourcesContent":["import { Field, ID, Int, ObjectType } from 'type-graphql'\nimport { Column, Entity, Index, ManyToOne, PrimaryGeneratedColumn, RelationId } from 'typeorm'\n\nimport {\n HistoryActionColumn,\n HistoryActionType,\n HistoryEntityInterface,\n HistoryOriginalIdColumn\n} from '@operato/typeorm-history'\nimport { Role, User } from '@things-factory/auth-base'\nimport { config } from '@things-factory/env'\nimport { Domain, ScalarObject } from '@things-factory/shell'\n\nimport { ProcessInstance, ProcessInstanceStatus } from './process-instance'\n\nconst ORMCONFIG = config.get('ormconfig', {})\nconst DATABASE_TYPE = ORMCONFIG.type\n\n@Entity()\n@Index(\n 'ix_process_instance_history_0',\n (processInstanceHistory: ProcessInstanceHistory) => [\n processInstanceHistory.originalId,\n processInstanceHistory.version\n ],\n { unique: true }\n)\n@Index(\n 'ix_process_instance_history_1',\n (processInstanceHistory: ProcessInstanceHistory) => [\n processInstanceHistory.domain,\n processInstanceHistory.originalId,\n processInstanceHistory.version\n ],\n { unique: true }\n)\n@ObjectType({ description: 'History Entity of ProcessInstance' })\nexport class ProcessInstanceHistory implements HistoryEntityInterface<ProcessInstance> {\n @PrimaryGeneratedColumn('uuid')\n @Field(type => ID)\n readonly id: string\n\n @Column({\n nullable: true,\n default: 1\n })\n @Field({ nullable: true })\n version?: number = 1\n\n @ManyToOne(type => Domain)\n @Field({ nullable: true })\n domain?: Domain\n\n @RelationId((processInstance: ProcessInstance) => processInstance.domain)\n domainId?: string\n\n @Column()\n @Field({ nullable: true })\n name?: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n description?: string\n\n @Column({ nullable: true, default: '' })\n @Field({ nullable: true })\n key01?: string = ''\n\n @Column({ nullable: true, default: '' })\n @Field({ nullable: true })\n key02?: string = ''\n\n @Column({ nullable: true, default: '' })\n @Field({ nullable: true })\n key03?: string = ''\n\n @Column({ nullable: true, default: '' })\n @Field({ nullable: true })\n key04?: string = ''\n\n @Column({ nullable: true, default: '' })\n @Field({ nullable: true })\n key05?: string = ''\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n state?: ProcessInstanceStatus\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n reason?: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n refBy?: string\n\n @ManyToOne(type => Role, { nullable: true })\n @Field(type => Role, { nullable: true })\n supervisoryRole?: Role\n\n @RelationId((processInstance: ProcessInstance) => processInstance.supervisoryRole)\n supervisoryRoleId?: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n dueAt?: Date\n\n @Column()\n @Field({ nullable: true })\n createdAt?: Date\n\n @Column()\n @Field({ nullable: true })\n updatedAt?: Date\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n terminatedAt?: Date\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n creator?: User\n\n @RelationId((processInstance: ProcessInstance) => processInstance.creator)\n creatorId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n updater?: User\n\n @RelationId((processInstance: ProcessInstance) => processInstance.updater)\n updaterId?: string\n\n @HistoryOriginalIdColumn()\n public originalId!: string\n\n @HistoryActionColumn({\n nullable: false,\n type:\n DATABASE_TYPE == 'postgres' || DATABASE_TYPE == 'mysql' || DATABASE_TYPE == 'mariadb'\n ? 'enum'\n : DATABASE_TYPE == 'oracle'\n ? 'varchar2'\n : 'smallint',\n enum: HistoryActionType\n })\n public action!: HistoryActionType\n}\n"]}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ProcessInstanceMutation = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const type_graphql_1 = require("type-graphql");
|
|
6
|
+
const shell_1 = require("@things-factory/shell");
|
|
7
|
+
const process_instance_1 = require("../../controllers/process-instance");
|
|
8
|
+
const process_instance_2 = require("./process-instance");
|
|
9
|
+
let ProcessInstanceMutation = class ProcessInstanceMutation {
|
|
10
|
+
async endProcessInstance(id, output, reason, context) {
|
|
11
|
+
return await (0, process_instance_1.end)({ id, output, reason }, context);
|
|
12
|
+
}
|
|
13
|
+
async abortProcessInstance(id, reason, context) {
|
|
14
|
+
return await (0, process_instance_1.abort)({ id, reason }, context);
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
tslib_1.__decorate([
|
|
18
|
+
(0, type_graphql_1.Directive)('@transaction'),
|
|
19
|
+
(0, type_graphql_1.Directive)('@privilege(category: "process", privilege: "mutation", domainOwnerGranted: true)'),
|
|
20
|
+
(0, type_graphql_1.Mutation)(returns => process_instance_2.ProcessInstance, { description: 'To end a ProcessInstance' }),
|
|
21
|
+
tslib_1.__param(0, (0, type_graphql_1.Arg)('id')),
|
|
22
|
+
tslib_1.__param(1, (0, type_graphql_1.Arg)('output', type => shell_1.ScalarObject, { nullable: true })),
|
|
23
|
+
tslib_1.__param(2, (0, type_graphql_1.Arg)('reason', { nullable: true })),
|
|
24
|
+
tslib_1.__param(3, (0, type_graphql_1.Ctx)()),
|
|
25
|
+
tslib_1.__metadata("design:type", Function),
|
|
26
|
+
tslib_1.__metadata("design:paramtypes", [String, Object, String, Object]),
|
|
27
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
28
|
+
], ProcessInstanceMutation.prototype, "endProcessInstance", null);
|
|
29
|
+
tslib_1.__decorate([
|
|
30
|
+
(0, type_graphql_1.Directive)('@transaction'),
|
|
31
|
+
(0, type_graphql_1.Directive)('@privilege(category: "process", privilege: "mutation", domainOwnerGranted: true)'),
|
|
32
|
+
(0, type_graphql_1.Mutation)(returns => process_instance_2.ProcessInstance, { description: 'To abort a ProcessInstance' }),
|
|
33
|
+
tslib_1.__param(0, (0, type_graphql_1.Arg)('id')),
|
|
34
|
+
tslib_1.__param(1, (0, type_graphql_1.Arg)('reason', { nullable: true })),
|
|
35
|
+
tslib_1.__param(2, (0, type_graphql_1.Ctx)()),
|
|
36
|
+
tslib_1.__metadata("design:type", Function),
|
|
37
|
+
tslib_1.__metadata("design:paramtypes", [String, String, Object]),
|
|
38
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
39
|
+
], ProcessInstanceMutation.prototype, "abortProcessInstance", null);
|
|
40
|
+
ProcessInstanceMutation = tslib_1.__decorate([
|
|
41
|
+
(0, type_graphql_1.Resolver)(process_instance_2.ProcessInstance)
|
|
42
|
+
], ProcessInstanceMutation);
|
|
43
|
+
exports.ProcessInstanceMutation = ProcessInstanceMutation;
|
|
44
|
+
//# sourceMappingURL=process-instance-mutation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"process-instance-mutation.js","sourceRoot":"","sources":["../../../server/service/process-instance/process-instance-mutation.ts"],"names":[],"mappings":";;;;AAAA,+CAAsE;AAEtE,iDAAoD;AAEpD,yEAA+D;AAC/D,yDAAoD;AAI7C,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IAI5B,AAAN,KAAK,CAAC,kBAAkB,CACX,EAAU,EACoC,MAA8B,EACpD,MAAc,EAC1C,OAAwB;QAE/B,OAAO,MAAM,IAAA,sBAAG,EAAC,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,CAAA;IACnD,CAAC;IAKK,AAAN,KAAK,CAAC,oBAAoB,CACb,EAAU,EACc,MAAc,EAC1C,OAAwB;QAE/B,OAAO,MAAM,IAAA,wBAAK,EAAC,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,CAAA;IAC7C,CAAC;CACF,CAAA;AAnBO;IAHL,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,wBAAS,EAAC,kFAAkF,CAAC;IAC7F,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,kCAAe,EAAE,EAAE,WAAW,EAAE,0BAA0B,EAAE,CAAC;IAE/E,mBAAA,IAAA,kBAAG,EAAC,IAAI,CAAC,CAAA;IACT,mBAAA,IAAA,kBAAG,EAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,oBAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;IACvD,mBAAA,IAAA,kBAAG,EAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;IACjC,mBAAA,IAAA,kBAAG,GAAE,CAAA;;;;iEAGP;AAKK;IAHL,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,wBAAS,EAAC,kFAAkF,CAAC;IAC7F,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,kCAAe,EAAE,EAAE,WAAW,EAAE,4BAA4B,EAAE,CAAC;IAEjF,mBAAA,IAAA,kBAAG,EAAC,IAAI,CAAC,CAAA;IACT,mBAAA,IAAA,kBAAG,EAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;IACjC,mBAAA,IAAA,kBAAG,GAAE,CAAA;;;;mEAGP;AAtBU,uBAAuB;IADnC,IAAA,uBAAQ,EAAC,kCAAe,CAAC;GACb,uBAAuB,CAuBnC;AAvBY,0DAAuB","sourcesContent":["import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\n\nimport { ScalarObject } from '@things-factory/shell'\n\nimport { abort, end } from '../../controllers/process-instance'\nimport { ProcessInstance } from './process-instance'\nimport { ProcessInstanceIssue, ProcessInstanceDraft } from './process-instance-type'\n\n@Resolver(ProcessInstance)\nexport class ProcessInstanceMutation {\n @Directive('@transaction')\n @Directive('@privilege(category: \"process\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Mutation(returns => ProcessInstance, { description: 'To end a ProcessInstance' })\n async endProcessInstance(\n @Arg('id') id: string,\n @Arg('output', type => ScalarObject, { nullable: true }) output: { [key: string]: any },\n @Arg('reason', { nullable: true }) reason: string,\n @Ctx() context: ResolverContext\n ): Promise<ProcessInstance> {\n return await end({ id, output, reason }, context)\n }\n\n @Directive('@transaction')\n @Directive('@privilege(category: \"process\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Mutation(returns => ProcessInstance, { description: 'To abort a ProcessInstance' })\n async abortProcessInstance(\n @Arg('id') id: string,\n @Arg('reason', { nullable: true }) reason: string,\n @Ctx() context: ResolverContext\n ): Promise<ProcessInstance> {\n return await abort({ id, reason }, context)\n }\n}\n"]}
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ProcessInstanceQuery = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const type_graphql_1 = require("type-graphql");
|
|
6
|
+
const attachment_base_1 = require("@things-factory/attachment-base");
|
|
7
|
+
const auth_base_1 = require("@things-factory/auth-base");
|
|
8
|
+
const shell_1 = require("@things-factory/shell");
|
|
9
|
+
const process_thread_1 = require("../process-thread/process-thread");
|
|
10
|
+
const process_1 = require("../process/process");
|
|
11
|
+
const process_instance_1 = require("./process-instance");
|
|
12
|
+
const process_instance_type_1 = require("./process-instance-type");
|
|
13
|
+
let ProcessInstanceQuery = class ProcessInstanceQuery {
|
|
14
|
+
async processInstance(id, context) {
|
|
15
|
+
const { domain } = context.state;
|
|
16
|
+
return await (0, shell_1.getRepository)(process_instance_1.ProcessInstance).findOne({
|
|
17
|
+
where: { domain: { id: domain.id }, id }
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
async processInstances(params, context) {
|
|
21
|
+
const { domain } = context.state;
|
|
22
|
+
const [items, total] = await (0, shell_1.getQueryBuilderFromListParams)({
|
|
23
|
+
domain,
|
|
24
|
+
params,
|
|
25
|
+
repository: (0, shell_1.getRepository)(process_instance_1.ProcessInstance),
|
|
26
|
+
searchables: ['name', 'description']
|
|
27
|
+
}).getManyAndCount();
|
|
28
|
+
return { items, total };
|
|
29
|
+
}
|
|
30
|
+
async processInstancesByProcess(processId, params, context) {
|
|
31
|
+
var _a;
|
|
32
|
+
const { domain } = context.state;
|
|
33
|
+
const process = await (0, shell_1.getRepository)(process_1.Process).findOneBy({ id: processId });
|
|
34
|
+
const searchables = ((_a = process === null || process === void 0 ? void 0 : process.searchKeys) === null || _a === void 0 ? void 0 : _a.map((item, index) => `key0${index + 1}`)) || [];
|
|
35
|
+
const queryBuilder = (0, shell_1.getQueryBuilderFromListParams)({
|
|
36
|
+
repository: (0, shell_1.getRepository)(process_instance_1.ProcessInstance),
|
|
37
|
+
params,
|
|
38
|
+
domain,
|
|
39
|
+
alias: 'pi',
|
|
40
|
+
searchables: ['name', 'description'].concat(searchables)
|
|
41
|
+
}).where('pi.process = :process', { process: processId });
|
|
42
|
+
const [items, total] = await queryBuilder.getManyAndCount();
|
|
43
|
+
return { items, total };
|
|
44
|
+
}
|
|
45
|
+
async process(processInstance) {
|
|
46
|
+
const { processId } = processInstance;
|
|
47
|
+
return await (0, shell_1.getRepository)(process_1.Process).findOneBy({ id: processId });
|
|
48
|
+
}
|
|
49
|
+
async processThreads(processInstance, context) {
|
|
50
|
+
const { user } = context.state;
|
|
51
|
+
const { supervisoryRoleId } = processInstance;
|
|
52
|
+
if (supervisoryRoleId) {
|
|
53
|
+
/* only user having supervisoryRole can get whole processThreads */
|
|
54
|
+
const roles = (await (0, shell_1.getRepository)(auth_base_1.User).findOne({
|
|
55
|
+
where: { id: user.id },
|
|
56
|
+
relations: ['roles']
|
|
57
|
+
})).roles.map(role => role.id);
|
|
58
|
+
if (!roles.includes(supervisoryRoleId)) {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
return await (0, shell_1.getRepository)(process_thread_1.ProcessThread).findBy({
|
|
63
|
+
processInstance: { id: processInstance.id }
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
async supervisoryRole(processInstance) {
|
|
67
|
+
return (processInstance.supervisoryRole ||
|
|
68
|
+
(processInstance.supervisoryRoleId &&
|
|
69
|
+
(await (0, shell_1.getRepository)(auth_base_1.Role).findOneBy({
|
|
70
|
+
id: processInstance.supervisoryRoleId
|
|
71
|
+
}))));
|
|
72
|
+
}
|
|
73
|
+
async thumbnail(processInstance) {
|
|
74
|
+
const { processId } = processInstance;
|
|
75
|
+
const attachment = processId &&
|
|
76
|
+
(await (0, shell_1.getRepository)(attachment_base_1.Attachment).findOne({
|
|
77
|
+
where: {
|
|
78
|
+
domain: { id: processInstance.domainId },
|
|
79
|
+
refBy: processId
|
|
80
|
+
}
|
|
81
|
+
}));
|
|
82
|
+
return attachment === null || attachment === void 0 ? void 0 : attachment.fullpath;
|
|
83
|
+
}
|
|
84
|
+
async domain(processInstance) {
|
|
85
|
+
return await (0, shell_1.getRepository)(shell_1.Domain).findOneBy({ id: processInstance.domainId });
|
|
86
|
+
}
|
|
87
|
+
async updater(processInstance) {
|
|
88
|
+
return processInstance.updater && (await (0, shell_1.getRepository)(auth_base_1.User).findOneBy({ id: processInstance.updaterId }));
|
|
89
|
+
}
|
|
90
|
+
async creator(processInstance) {
|
|
91
|
+
return processInstance.creator && (await (0, shell_1.getRepository)(auth_base_1.User).findOneBy({ id: processInstance.creatorId }));
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
tslib_1.__decorate([
|
|
95
|
+
(0, type_graphql_1.Directive)('@privilege(category: "process-instance", privilege: "query", domainOwnerGranted: true)'),
|
|
96
|
+
(0, type_graphql_1.Query)(returns => process_instance_1.ProcessInstance, { nullable: true, description: 'To fetch a ProcessInstance' }),
|
|
97
|
+
tslib_1.__param(0, (0, type_graphql_1.Arg)('id')),
|
|
98
|
+
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
|
99
|
+
tslib_1.__metadata("design:type", Function),
|
|
100
|
+
tslib_1.__metadata("design:paramtypes", [String, Object]),
|
|
101
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
102
|
+
], ProcessInstanceQuery.prototype, "processInstance", null);
|
|
103
|
+
tslib_1.__decorate([
|
|
104
|
+
(0, type_graphql_1.Directive)('@privilege(category: "process-instance", privilege: "query", domainOwnerGranted: true)'),
|
|
105
|
+
(0, type_graphql_1.Query)(returns => process_instance_type_1.ProcessInstanceList, { description: 'To fetch multiple ProcessInstances' }),
|
|
106
|
+
tslib_1.__param(0, (0, type_graphql_1.Args)()),
|
|
107
|
+
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
|
108
|
+
tslib_1.__metadata("design:type", Function),
|
|
109
|
+
tslib_1.__metadata("design:paramtypes", [shell_1.ListParam, Object]),
|
|
110
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
111
|
+
], ProcessInstanceQuery.prototype, "processInstances", null);
|
|
112
|
+
tslib_1.__decorate([
|
|
113
|
+
(0, type_graphql_1.Directive)('@privilege(category: "process-instance", privilege: "query", domainOwnerGranted: true)'),
|
|
114
|
+
(0, type_graphql_1.Query)(returns => process_instance_type_1.ProcessInstanceList, { description: 'To fetch multiple process instances by process' }),
|
|
115
|
+
tslib_1.__param(0, (0, type_graphql_1.Arg)('processId')),
|
|
116
|
+
tslib_1.__param(1, (0, type_graphql_1.Args)()),
|
|
117
|
+
tslib_1.__param(2, (0, type_graphql_1.Ctx)()),
|
|
118
|
+
tslib_1.__metadata("design:type", Function),
|
|
119
|
+
tslib_1.__metadata("design:paramtypes", [String, shell_1.ListParam, Object]),
|
|
120
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
121
|
+
], ProcessInstanceQuery.prototype, "processInstancesByProcess", null);
|
|
122
|
+
tslib_1.__decorate([
|
|
123
|
+
(0, type_graphql_1.FieldResolver)(type => process_1.Process),
|
|
124
|
+
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
|
125
|
+
tslib_1.__metadata("design:type", Function),
|
|
126
|
+
tslib_1.__metadata("design:paramtypes", [process_instance_1.ProcessInstance]),
|
|
127
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
128
|
+
], ProcessInstanceQuery.prototype, "process", null);
|
|
129
|
+
tslib_1.__decorate([
|
|
130
|
+
(0, type_graphql_1.FieldResolver)(type => [process_thread_1.ProcessThread]),
|
|
131
|
+
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
|
132
|
+
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
|
133
|
+
tslib_1.__metadata("design:type", Function),
|
|
134
|
+
tslib_1.__metadata("design:paramtypes", [process_instance_1.ProcessInstance, Object]),
|
|
135
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
136
|
+
], ProcessInstanceQuery.prototype, "processThreads", null);
|
|
137
|
+
tslib_1.__decorate([
|
|
138
|
+
(0, type_graphql_1.FieldResolver)(type => auth_base_1.Role),
|
|
139
|
+
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
|
140
|
+
tslib_1.__metadata("design:type", Function),
|
|
141
|
+
tslib_1.__metadata("design:paramtypes", [process_instance_1.ProcessInstance]),
|
|
142
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
143
|
+
], ProcessInstanceQuery.prototype, "supervisoryRole", null);
|
|
144
|
+
tslib_1.__decorate([
|
|
145
|
+
(0, type_graphql_1.FieldResolver)(type => String),
|
|
146
|
+
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
|
147
|
+
tslib_1.__metadata("design:type", Function),
|
|
148
|
+
tslib_1.__metadata("design:paramtypes", [process_instance_1.ProcessInstance]),
|
|
149
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
150
|
+
], ProcessInstanceQuery.prototype, "thumbnail", null);
|
|
151
|
+
tslib_1.__decorate([
|
|
152
|
+
(0, type_graphql_1.FieldResolver)(type => shell_1.Domain),
|
|
153
|
+
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
|
154
|
+
tslib_1.__metadata("design:type", Function),
|
|
155
|
+
tslib_1.__metadata("design:paramtypes", [process_instance_1.ProcessInstance]),
|
|
156
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
157
|
+
], ProcessInstanceQuery.prototype, "domain", null);
|
|
158
|
+
tslib_1.__decorate([
|
|
159
|
+
(0, type_graphql_1.FieldResolver)(type => auth_base_1.User),
|
|
160
|
+
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
|
161
|
+
tslib_1.__metadata("design:type", Function),
|
|
162
|
+
tslib_1.__metadata("design:paramtypes", [process_instance_1.ProcessInstance]),
|
|
163
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
164
|
+
], ProcessInstanceQuery.prototype, "updater", null);
|
|
165
|
+
tslib_1.__decorate([
|
|
166
|
+
(0, type_graphql_1.FieldResolver)(type => auth_base_1.User),
|
|
167
|
+
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
|
168
|
+
tslib_1.__metadata("design:type", Function),
|
|
169
|
+
tslib_1.__metadata("design:paramtypes", [process_instance_1.ProcessInstance]),
|
|
170
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
171
|
+
], ProcessInstanceQuery.prototype, "creator", null);
|
|
172
|
+
ProcessInstanceQuery = tslib_1.__decorate([
|
|
173
|
+
(0, type_graphql_1.Resolver)(process_instance_1.ProcessInstance)
|
|
174
|
+
], ProcessInstanceQuery);
|
|
175
|
+
exports.ProcessInstanceQuery = ProcessInstanceQuery;
|
|
176
|
+
//# sourceMappingURL=process-instance-query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"process-instance-query.js","sourceRoot":"","sources":["../../../server/service/process-instance/process-instance-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Args, Ctx, Directive, FieldResolver, Query, Resolver, Root } from 'type-graphql'\n\nimport { Attachment } from '@things-factory/attachment-base'\nimport { Role, User } from '@things-factory/auth-base'\nimport { Domain, getQueryBuilderFromListParams, getRepository, ListParam } from '@things-factory/shell'\n\nimport { ProcessThread } from '../process-thread/process-thread'\nimport { Process } from '../process/process'\nimport { ProcessInstance, ProcessInstanceStatus } from './process-instance'\nimport { ProcessInstanceList } from './process-instance-type'\n\n@Resolver(ProcessInstance)\nexport class ProcessInstanceQuery {\n @Directive('@privilege(category: \"process-instance\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => ProcessInstance!, { nullable: true, description: 'To fetch a ProcessInstance' })\n async processInstance(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<ProcessInstance> {\n const { domain } = context.state\n\n return await getRepository(ProcessInstance).findOne({\n where: { domain: { id: domain.id }, id }\n })\n }\n\n @Directive('@privilege(category: \"process-instance\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => ProcessInstanceList, { description: 'To fetch multiple ProcessInstances' })\n async processInstances(@Args() params: ListParam, @Ctx() context: ResolverContext): Promise<ProcessInstanceList> {\n const { domain } = context.state\n\n const [items, total] = await getQueryBuilderFromListParams({\n domain,\n params,\n repository: getRepository(ProcessInstance),\n searchables: ['name', 'description']\n }).getManyAndCount()\n\n return { items, total }\n }\n\n @Directive('@privilege(category: \"process-instance\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => ProcessInstanceList, { description: 'To fetch multiple process instances by process' })\n async processInstancesByProcess(\n @Arg('processId') processId: string,\n @Args() params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<ProcessInstanceList> {\n const { domain } = context.state\n\n const process = await getRepository(Process).findOneBy({ id: processId })\n const searchables = process?.searchKeys?.map((item, index) => `key0${index + 1}`) || []\n\n const queryBuilder = getQueryBuilderFromListParams({\n repository: getRepository(ProcessInstance),\n params,\n domain,\n alias: 'pi',\n searchables: ['name', 'description'].concat(searchables)\n }).where('pi.process = :process', { process: processId })\n\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n @FieldResolver(type => Process)\n async process(@Root() processInstance: ProcessInstance): Promise<Process> {\n const { processId } = processInstance\n\n return await getRepository(Process).findOneBy({ id: processId })\n }\n\n @FieldResolver(type => [ProcessThread])\n async processThreads(\n @Root() processInstance: ProcessInstance,\n @Ctx() context: ResolverContext\n ): Promise<ProcessThread[]> {\n const { user } = context.state\n const { supervisoryRoleId } = processInstance\n\n if (supervisoryRoleId) {\n /* only user having supervisoryRole can get whole processThreads */\n const roles = (\n (await getRepository(User).findOne({\n where: { id: user.id },\n relations: ['roles']\n })) as User\n ).roles.map(role => role.id)\n\n if (!roles.includes(supervisoryRoleId)) {\n return\n }\n }\n\n return await getRepository(ProcessThread).findBy({\n processInstance: { id: processInstance.id }\n })\n }\n\n @FieldResolver(type => Role)\n async supervisoryRole(@Root() processInstance: ProcessInstance): Promise<Role> {\n return (\n processInstance.supervisoryRole ||\n (processInstance.supervisoryRoleId &&\n (await getRepository(Role).findOneBy({\n id: processInstance.supervisoryRoleId\n })))\n )\n }\n\n @FieldResolver(type => String)\n async thumbnail(@Root() processInstance: ProcessInstance): Promise<string | undefined> {\n const { processId } = processInstance\n const attachment: Attachment =\n processId &&\n (await getRepository(Attachment).findOne({\n where: {\n domain: { id: processInstance.domainId },\n refBy: processId\n }\n }))\n\n return attachment?.fullpath\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() processInstance: ProcessInstance): Promise<Domain> {\n return await getRepository(Domain).findOneBy({ id: processInstance.domainId })\n }\n\n @FieldResolver(type => User)\n async updater(@Root() processInstance: ProcessInstance): Promise<User> {\n return processInstance.updater && (await getRepository(User).findOneBy({ id: processInstance.updaterId }))\n }\n\n @FieldResolver(type => User)\n async creator(@Root() processInstance: ProcessInstance): Promise<User> {\n return processInstance.creator && (await getRepository(User).findOneBy({ id: processInstance.creatorId }))\n }\n}\n"]}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ProcessInstanceSubscription = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const graphql_subscriptions_1 = require("graphql-subscriptions");
|
|
6
|
+
const type_graphql_1 = require("type-graphql");
|
|
7
|
+
const auth_base_1 = require("@things-factory/auth-base");
|
|
8
|
+
const shell_1 = require("@things-factory/shell");
|
|
9
|
+
const process_instance_1 = require("./process-instance");
|
|
10
|
+
let ProcessInstanceSubscription = class ProcessInstanceSubscription {
|
|
11
|
+
processInstance(payload) {
|
|
12
|
+
return payload.processInstance;
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
tslib_1.__decorate([
|
|
16
|
+
(0, type_graphql_1.Subscription)({
|
|
17
|
+
subscribe: (_, args, context, info) => {
|
|
18
|
+
var _a;
|
|
19
|
+
const { domain, user } = context.state;
|
|
20
|
+
const subdomain = domain === null || domain === void 0 ? void 0 : domain.subdomain;
|
|
21
|
+
if (!domain) {
|
|
22
|
+
throw new Error('domain required');
|
|
23
|
+
}
|
|
24
|
+
if (!((_a = user.domains) === null || _a === void 0 ? void 0 : _a.find(d => d.subdomain === subdomain)) && !process.superUserGranted(domain, user)) {
|
|
25
|
+
throw new Error(`domain(${subdomain}) is not working for user(${user.email}).`);
|
|
26
|
+
}
|
|
27
|
+
return (0, graphql_subscriptions_1.withFilter)(() => shell_1.pubsub.asyncIterator('process-instance'), async (payload, variables, context, info) => {
|
|
28
|
+
const { processInstance } = payload;
|
|
29
|
+
const { domainId } = processInstance;
|
|
30
|
+
if (domainId !== (domain === null || domain === void 0 ? void 0 : domain.id)) {
|
|
31
|
+
return false;
|
|
32
|
+
}
|
|
33
|
+
if (processInstance.creatorId === user.id) {
|
|
34
|
+
return true;
|
|
35
|
+
}
|
|
36
|
+
// check if the user has that role
|
|
37
|
+
const userWithRoles = await (0, shell_1.getRepository)(auth_base_1.User).findOne({
|
|
38
|
+
where: { id: user.id },
|
|
39
|
+
relations: ['roles']
|
|
40
|
+
});
|
|
41
|
+
return !!userWithRoles.roles.find(role => role.id === processInstance.assigneeRoleId);
|
|
42
|
+
})(_, args, context, info);
|
|
43
|
+
}
|
|
44
|
+
}),
|
|
45
|
+
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
|
46
|
+
tslib_1.__metadata("design:type", Function),
|
|
47
|
+
tslib_1.__metadata("design:paramtypes", [Object]),
|
|
48
|
+
tslib_1.__metadata("design:returntype", process_instance_1.ProcessInstance)
|
|
49
|
+
], ProcessInstanceSubscription.prototype, "processInstance", null);
|
|
50
|
+
ProcessInstanceSubscription = tslib_1.__decorate([
|
|
51
|
+
(0, type_graphql_1.Resolver)(process_instance_1.ProcessInstance)
|
|
52
|
+
], ProcessInstanceSubscription);
|
|
53
|
+
exports.ProcessInstanceSubscription = ProcessInstanceSubscription;
|
|
54
|
+
//# sourceMappingURL=process-instance-subscription.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"process-instance-subscription.js","sourceRoot":"","sources":["../../../server/service/process-instance/process-instance-subscription.ts"],"names":[],"mappings":";;;;AAAA,iEAAkD;AAClD,+CAA2D;AAE3D,yDAAgD;AAChD,iDAA6D;AAE7D,yDAAoD;AAG7C,IAAM,2BAA2B,GAAjC,MAAM,2BAA2B;IAuCtC,eAAe,CAAS,OAA6C;QACnE,OAAO,OAAO,CAAC,eAAe,CAAA;IAChC,CAAC;CACF,CAAA;AAzCC;IAAC,IAAA,2BAAY,EAAC;QACZ,SAAS,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;;YACpC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;YACtC,MAAM,SAAS,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,CAAA;YAEnC,IAAI,CAAC,MAAM,EAAE;gBACX,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;aACnC;YAED,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAA,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE;gBAClG,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,6BAA6B,IAAI,CAAC,KAAK,IAAI,CAAC,CAAA;aAChF;YAED,OAAO,IAAA,kCAAU,EACf,GAAG,EAAE,CAAC,cAAM,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAC9C,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;gBAC1C,MAAM,EAAE,eAAe,EAAE,GAAG,OAAO,CAAA;gBACnC,MAAM,EAAE,QAAQ,EAAE,GAAG,eAAe,CAAA;gBAEpC,IAAI,QAAQ,MAAK,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,EAAE,CAAA,EAAE;oBAC3B,OAAO,KAAK,CAAA;iBACb;gBAED,IAAI,eAAe,CAAC,SAAS,KAAK,IAAI,CAAC,EAAE,EAAE;oBACzC,OAAO,IAAI,CAAA;iBACZ;gBAED,kCAAkC;gBAClC,MAAM,aAAa,GAAS,MAAM,IAAA,qBAAa,EAAC,gBAAI,CAAC,CAAC,OAAO,CAAC;oBAC5D,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE;oBACtB,SAAS,EAAE,CAAC,OAAO,CAAC;iBACrB,CAAC,CAAA;gBAEF,OAAO,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,eAAe,CAAC,cAAc,CAAC,CAAA;YACvF,CAAC,CACF,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;QAC3B,CAAC;KACF,CAAC;IACe,mBAAA,IAAA,mBAAI,GAAE,CAAA;;;4CAAiD,kCAAe;kEAEtF;AAzCU,2BAA2B;IADvC,IAAA,uBAAQ,EAAC,kCAAe,CAAC;GACb,2BAA2B,CA0CvC;AA1CY,kEAA2B","sourcesContent":["import { withFilter } from 'graphql-subscriptions'\nimport { Resolver, Root, Subscription } from 'type-graphql'\n\nimport { User } from '@things-factory/auth-base'\nimport { getRepository, pubsub } from '@things-factory/shell'\n\nimport { ProcessInstance } from './process-instance'\n\n@Resolver(ProcessInstance)\nexport class ProcessInstanceSubscription {\n @Subscription({\n subscribe: (_, args, context, info) => {\n const { domain, user } = context.state\n const subdomain = domain?.subdomain\n\n if (!domain) {\n throw new Error('domain required')\n }\n\n if (!user.domains?.find(d => d.subdomain === subdomain) && !process.superUserGranted(domain, user)) {\n throw new Error(`domain(${subdomain}) is not working for user(${user.email}).`)\n }\n\n return withFilter(\n () => pubsub.asyncIterator('process-instance'),\n async (payload, variables, context, info) => {\n const { processInstance } = payload\n const { domainId } = processInstance\n\n if (domainId !== domain?.id) {\n return false\n }\n\n if (processInstance.creatorId === user.id) {\n return true\n }\n\n // check if the user has that role\n const userWithRoles: User = await getRepository(User).findOne({\n where: { id: user.id },\n relations: ['roles']\n })\n\n return !!userWithRoles.roles.find(role => role.id === processInstance.assigneeRoleId)\n }\n )(_, args, context, info)\n }\n })\n processInstance(@Root() payload: { processInstance: ProcessInstance }): ProcessInstance {\n return payload.processInstance\n }\n}\n"]}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ProcessInstanceList = exports.ProcessInstanceIssue = exports.ProcessInstanceDraft = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const type_graphql_1 = require("type-graphql");
|
|
6
|
+
const auth_base_1 = require("@things-factory/auth-base");
|
|
7
|
+
const shell_1 = require("@things-factory/shell");
|
|
8
|
+
const process_instance_1 = require("./process-instance");
|
|
9
|
+
let ProcessInstanceDraft = class ProcessInstanceDraft {
|
|
10
|
+
};
|
|
11
|
+
tslib_1.__decorate([
|
|
12
|
+
(0, type_graphql_1.Field)(type => type_graphql_1.ID, { nullable: true }),
|
|
13
|
+
tslib_1.__metadata("design:type", String)
|
|
14
|
+
], ProcessInstanceDraft.prototype, "id", void 0);
|
|
15
|
+
tslib_1.__decorate([
|
|
16
|
+
(0, type_graphql_1.Field)(),
|
|
17
|
+
tslib_1.__metadata("design:type", String)
|
|
18
|
+
], ProcessInstanceDraft.prototype, "name", void 0);
|
|
19
|
+
tslib_1.__decorate([
|
|
20
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
21
|
+
tslib_1.__metadata("design:type", String)
|
|
22
|
+
], ProcessInstanceDraft.prototype, "processId", void 0);
|
|
23
|
+
tslib_1.__decorate([
|
|
24
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
25
|
+
tslib_1.__metadata("design:type", String)
|
|
26
|
+
], ProcessInstanceDraft.prototype, "description", void 0);
|
|
27
|
+
tslib_1.__decorate([
|
|
28
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
29
|
+
tslib_1.__metadata("design:type", String)
|
|
30
|
+
], ProcessInstanceDraft.prototype, "reason", void 0);
|
|
31
|
+
tslib_1.__decorate([
|
|
32
|
+
(0, type_graphql_1.Field)(type => shell_1.ScalarDate, { nullable: true }),
|
|
33
|
+
tslib_1.__metadata("design:type", Date)
|
|
34
|
+
], ProcessInstanceDraft.prototype, "dueAt", void 0);
|
|
35
|
+
tslib_1.__decorate([
|
|
36
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
37
|
+
tslib_1.__metadata("design:type", String)
|
|
38
|
+
], ProcessInstanceDraft.prototype, "refBy", void 0);
|
|
39
|
+
tslib_1.__decorate([
|
|
40
|
+
(0, type_graphql_1.Field)(type => shell_1.ObjectRef, { nullable: true }),
|
|
41
|
+
tslib_1.__metadata("design:type", auth_base_1.Role)
|
|
42
|
+
], ProcessInstanceDraft.prototype, "supervisoryRole", void 0);
|
|
43
|
+
ProcessInstanceDraft = tslib_1.__decorate([
|
|
44
|
+
(0, type_graphql_1.InputType)()
|
|
45
|
+
], ProcessInstanceDraft);
|
|
46
|
+
exports.ProcessInstanceDraft = ProcessInstanceDraft;
|
|
47
|
+
let ProcessInstanceIssue = class ProcessInstanceIssue {
|
|
48
|
+
};
|
|
49
|
+
tslib_1.__decorate([
|
|
50
|
+
(0, type_graphql_1.Field)(type => type_graphql_1.ID, { nullable: true }),
|
|
51
|
+
tslib_1.__metadata("design:type", String)
|
|
52
|
+
], ProcessInstanceIssue.prototype, "id", void 0);
|
|
53
|
+
tslib_1.__decorate([
|
|
54
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
55
|
+
tslib_1.__metadata("design:type", String)
|
|
56
|
+
], ProcessInstanceIssue.prototype, "name", void 0);
|
|
57
|
+
tslib_1.__decorate([
|
|
58
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
59
|
+
tslib_1.__metadata("design:type", String)
|
|
60
|
+
], ProcessInstanceIssue.prototype, "processId", void 0);
|
|
61
|
+
tslib_1.__decorate([
|
|
62
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
63
|
+
tslib_1.__metadata("design:type", String)
|
|
64
|
+
], ProcessInstanceIssue.prototype, "description", void 0);
|
|
65
|
+
tslib_1.__decorate([
|
|
66
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
67
|
+
tslib_1.__metadata("design:type", String)
|
|
68
|
+
], ProcessInstanceIssue.prototype, "reason", void 0);
|
|
69
|
+
tslib_1.__decorate([
|
|
70
|
+
(0, type_graphql_1.Field)(type => shell_1.ScalarDate, { nullable: true }),
|
|
71
|
+
tslib_1.__metadata("design:type", Date)
|
|
72
|
+
], ProcessInstanceIssue.prototype, "dueAt", void 0);
|
|
73
|
+
tslib_1.__decorate([
|
|
74
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
75
|
+
tslib_1.__metadata("design:type", String)
|
|
76
|
+
], ProcessInstanceIssue.prototype, "refBy", void 0);
|
|
77
|
+
tslib_1.__decorate([
|
|
78
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
79
|
+
tslib_1.__metadata("design:type", String)
|
|
80
|
+
], ProcessInstanceIssue.prototype, "viewSource", void 0);
|
|
81
|
+
tslib_1.__decorate([
|
|
82
|
+
(0, type_graphql_1.Field)(type => shell_1.ObjectRef, { nullable: true }),
|
|
83
|
+
tslib_1.__metadata("design:type", auth_base_1.Role)
|
|
84
|
+
], ProcessInstanceIssue.prototype, "supervisoryRole", void 0);
|
|
85
|
+
ProcessInstanceIssue = tslib_1.__decorate([
|
|
86
|
+
(0, type_graphql_1.InputType)()
|
|
87
|
+
], ProcessInstanceIssue);
|
|
88
|
+
exports.ProcessInstanceIssue = ProcessInstanceIssue;
|
|
89
|
+
let ProcessInstanceList = class ProcessInstanceList {
|
|
90
|
+
};
|
|
91
|
+
tslib_1.__decorate([
|
|
92
|
+
(0, type_graphql_1.Field)(type => [process_instance_1.ProcessInstance]),
|
|
93
|
+
tslib_1.__metadata("design:type", Array)
|
|
94
|
+
], ProcessInstanceList.prototype, "items", void 0);
|
|
95
|
+
tslib_1.__decorate([
|
|
96
|
+
(0, type_graphql_1.Field)(type => type_graphql_1.Int),
|
|
97
|
+
tslib_1.__metadata("design:type", Number)
|
|
98
|
+
], ProcessInstanceList.prototype, "total", void 0);
|
|
99
|
+
ProcessInstanceList = tslib_1.__decorate([
|
|
100
|
+
(0, type_graphql_1.ObjectType)()
|
|
101
|
+
], ProcessInstanceList);
|
|
102
|
+
exports.ProcessInstanceList = ProcessInstanceList;
|
|
103
|
+
//# sourceMappingURL=process-instance-type.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"process-instance-type.js","sourceRoot":"","sources":["../../../server/service/process-instance/process-instance-type.ts"],"names":[],"mappings":";;;;AAAA,+CAAoE;AAEpE,yDAAgD;AAChD,iDAA2E;AAC3E,yDAAoD;AAG7C,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;CAwBhC,CAAA;AAvBC;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,iBAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDAC3B;AAEX;IAAC,IAAA,oBAAK,GAAE;;kDACI;AAEZ;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;uDACT;AAEjB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;yDACN;AAEpB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;oDACX;AAEf;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,kBAAU,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCACtC,IAAI;mDAAA;AAEZ;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACZ;AAEd;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,iBAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCAC3B,gBAAI;6DAAA;AAvBX,oBAAoB;IADhC,IAAA,wBAAS,GAAE;GACC,oBAAoB,CAwBhC;AAxBY,oDAAoB;AA2B1B,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;CA2BhC,CAAA;AA1BC;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,iBAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDAC3B;AAEX;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDACb;AAEb;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;uDACR;AAElB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;yDACN;AAEpB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;oDACX;AAEf;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,kBAAU,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCACtC,IAAI;mDAAA;AAEZ;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACZ;AAEd;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;wDACP;AAEnB;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,iBAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCAC3B,gBAAI;6DAAA;AA1BX,oBAAoB;IADhC,IAAA,wBAAS,GAAE;GACC,oBAAoB,CA2BhC;AA3BY,oDAAoB;AA8B1B,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;CAM/B,CAAA;AALC;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,kCAAe,CAAC,CAAC;;kDACT;AAExB;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,kBAAG,CAAC;;kDACN;AALF,mBAAmB;IAD/B,IAAA,yBAAU,GAAE;GACA,mBAAmB,CAM/B;AANY,kDAAmB","sourcesContent":["import { Field, ID, InputType, Int, ObjectType } from 'type-graphql'\n\nimport { Role } from '@things-factory/auth-base'\nimport { ObjectRef, ScalarDate, ScalarObject } from '@things-factory/shell'\nimport { ProcessInstance } from './process-instance'\n\n@InputType()\nexport class ProcessInstanceDraft {\n @Field(type => ID, { nullable: true })\n id?: string\n\n @Field()\n name: string\n\n @Field({ nullable: true })\n processId: string\n\n @Field({ nullable: true })\n description?: string\n\n @Field({ nullable: true })\n reason?: string\n\n @Field(type => ScalarDate, { nullable: true })\n dueAt?: Date\n\n @Field({ nullable: true })\n refBy?: string\n\n @Field(type => ObjectRef, { nullable: true })\n supervisoryRole?: Role\n}\n\n@InputType()\nexport class ProcessInstanceIssue {\n @Field(type => ID, { nullable: true })\n id?: string\n\n @Field({ nullable: true })\n name?: string\n\n @Field({ nullable: true })\n processId?: string\n\n @Field({ nullable: true })\n description?: string\n\n @Field({ nullable: true })\n reason?: string\n\n @Field(type => ScalarDate, { nullable: true })\n dueAt?: Date\n\n @Field({ nullable: true })\n refBy?: string\n\n @Field({ nullable: true })\n viewSource?: string\n\n @Field(type => ObjectRef, { nullable: true })\n supervisoryRole?: Role\n}\n\n@ObjectType()\nexport class ProcessInstanceList {\n @Field(type => [ProcessInstance])\n items: ProcessInstance[]\n\n @Field(type => Int)\n total: number\n}\n"]}
|