@things-factory/process 6.2.177 → 6.2.178
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-client/pages/event/event-importer.js.map +1 -1
- package/dist-client/pages/event/event-list-page.js.map +1 -1
- package/dist-client/pages/gateway/gateway-importer.js.map +1 -1
- package/dist-client/pages/gateway/gateway-list-page.js.map +1 -1
- package/dist-client/pages/main.js.map +1 -1
- package/dist-client/pages/process/process-importer.js.map +1 -1
- package/dist-client/pages/process/process-list-page.js.map +1 -1
- package/dist-client/pages/process-instance/process-instance-importer.js.map +1 -1
- package/dist-client/pages/process-instance/process-instance-list-page.js.map +1 -1
- package/dist-client/pages/process-thread/process-thread-importer.js.map +1 -1
- package/dist-client/pages/process-thread/process-thread-list-page.js.map +1 -1
- package/dist-client/reducers/main.js.map +1 -1
- package/dist-client/route.js.map +1 -1
- package/dist-client/tsconfig.tsbuildinfo +1 -1
- package/dist-server/controllers/common.d.ts +10 -0
- package/dist-server/controllers/common.js +4 -5
- package/dist-server/controllers/common.js.map +1 -1
- package/dist-server/controllers/index.d.ts +0 -0
- package/dist-server/controllers/process-instance/abort.d.ts +5 -0
- package/dist-server/controllers/process-instance/abort.js +1 -2
- package/dist-server/controllers/process-instance/abort.js.map +1 -1
- package/dist-server/controllers/process-instance/end.d.ts +6 -0
- package/dist-server/controllers/process-instance/end.js +1 -2
- package/dist-server/controllers/process-instance/end.js.map +1 -1
- package/dist-server/controllers/process-instance/index.d.ts +2 -0
- package/dist-server/controllers/process-thread/_abort.d.ts +5 -0
- package/dist-server/controllers/process-thread/_abort.js +1 -2
- package/dist-server/controllers/process-thread/_abort.js.map +1 -1
- package/dist-server/controllers/process-thread/abort.d.ts +5 -0
- package/dist-server/controllers/process-thread/abort.js +1 -2
- package/dist-server/controllers/process-thread/abort.js.map +1 -1
- package/dist-server/controllers/process-thread/end.d.ts +6 -0
- package/dist-server/controllers/process-thread/end.js +1 -2
- package/dist-server/controllers/process-thread/end.js.map +1 -1
- package/dist-server/controllers/process-thread/index.d.ts +3 -0
- package/dist-server/controllers/process-thread/start.d.ts +2 -0
- package/dist-server/controllers/process-thread/start.js +1 -2
- package/dist-server/controllers/process-thread/start.js.map +1 -1
- package/dist-server/index.d.ts +3 -0
- package/dist-server/middlewares/index.d.ts +1 -0
- package/dist-server/middlewares/index.js +1 -2
- package/dist-server/middlewares/index.js.map +1 -1
- package/dist-server/migrations/index.d.ts +1 -0
- package/dist-server/routes.d.ts +1 -0
- package/dist-server/service/index.d.ts +8 -0
- package/dist-server/service/process/event-subscriber.d.ts +7 -0
- package/dist-server/service/process/event-subscriber.js +2 -2
- package/dist-server/service/process/event-subscriber.js.map +1 -1
- package/dist-server/service/process/index.d.ts +8 -0
- package/dist-server/service/process/process-history.d.ts +23 -0
- package/dist-server/service/process/process-history.js +2 -2
- package/dist-server/service/process/process-history.js.map +1 -1
- package/dist-server/service/process/process-mutation.d.ts +10 -0
- package/dist-server/service/process/process-mutation.js +2 -2
- package/dist-server/service/process/process-mutation.js.map +1 -1
- package/dist-server/service/process/process-query.d.ts +15 -0
- package/dist-server/service/process/process-query.js +2 -2
- package/dist-server/service/process/process-query.js.map +1 -1
- package/dist-server/service/process/process-search-key-item-type.d.ts +6 -0
- package/dist-server/service/process/process-search-key-item-type.js +2 -2
- package/dist-server/service/process/process-search-key-item-type.js.map +1 -1
- package/dist-server/service/process/process-type.d.ts +26 -0
- package/dist-server/service/process/process-type.js +6 -6
- package/dist-server/service/process/process-type.js.map +1 -1
- package/dist-server/service/process/process.d.ts +27 -0
- package/dist-server/service/process/process.js +3 -3
- package/dist-server/service/process/process.js.map +1 -1
- package/dist-server/service/process-instance/event-subscriber.d.ts +13 -0
- package/dist-server/service/process-instance/event-subscriber.js +4 -4
- package/dist-server/service/process-instance/event-subscriber.js.map +1 -1
- package/dist-server/service/process-instance/index.d.ts +9 -0
- package/dist-server/service/process-instance/process-instance-history.d.ts +32 -0
- package/dist-server/service/process-instance/process-instance-history.js +2 -2
- package/dist-server/service/process-instance/process-instance-history.js.map +1 -1
- package/dist-server/service/process-instance/process-instance-mutation.d.ts +7 -0
- package/dist-server/service/process-instance/process-instance-mutation.js +2 -2
- package/dist-server/service/process-instance/process-instance-mutation.js.map +1 -1
- package/dist-server/service/process-instance/process-instance-query.d.ts +18 -0
- package/dist-server/service/process-instance/process-instance-query.js +2 -2
- package/dist-server/service/process-instance/process-instance-query.js.map +1 -1
- package/dist-server/service/process-instance/process-instance-subscription.d.ts +6 -0
- package/dist-server/service/process-instance/process-instance-subscription.js +2 -2
- package/dist-server/service/process-instance/process-instance-subscription.js.map +1 -1
- package/dist-server/service/process-instance/process-instance-type.d.ts +27 -0
- package/dist-server/service/process-instance/process-instance-type.js +6 -6
- package/dist-server/service/process-instance/process-instance-type.js.map +1 -1
- package/dist-server/service/process-instance/process-instance.d.ts +40 -0
- package/dist-server/service/process-instance/process-instance.js +3 -3
- package/dist-server/service/process-instance/process-instance.js.map +1 -1
- package/dist-server/service/process-stats/index.d.ts +2 -0
- package/dist-server/service/process-stats/process-stats-query.d.ts +4 -0
- package/dist-server/service/process-stats/process-stats-query.js +4 -5
- package/dist-server/service/process-stats/process-stats-query.js.map +1 -1
- package/dist-server/service/process-stats/process-stats-type.d.ts +13 -0
- package/dist-server/service/process-stats/process-stats-type.js +3 -3
- package/dist-server/service/process-stats/process-stats-type.js.map +1 -1
- package/dist-server/service/process-thread/event-subscriber.d.ts +7 -0
- package/dist-server/service/process-thread/event-subscriber.js +2 -2
- package/dist-server/service/process-thread/event-subscriber.js.map +1 -1
- package/dist-server/service/process-thread/index.d.ts +8 -0
- package/dist-server/service/process-thread/process-thread-mutation.d.ts +7 -0
- package/dist-server/service/process-thread/process-thread-mutation.js +2 -2
- package/dist-server/service/process-thread/process-thread-mutation.js.map +1 -1
- package/dist-server/service/process-thread/process-thread-query.d.ts +13 -0
- package/dist-server/service/process-thread/process-thread-query.js +2 -2
- package/dist-server/service/process-thread/process-thread-query.js.map +1 -1
- package/dist-server/service/process-thread/process-thread-subscription.d.ts +6 -0
- package/dist-server/service/process-thread/process-thread-subscription.js +2 -2
- package/dist-server/service/process-thread/process-thread-subscription.js.map +1 -1
- package/dist-server/service/process-thread/process-thread-type.d.ts +5 -0
- package/dist-server/service/process-thread/process-thread-type.js +2 -2
- package/dist-server/service/process-thread/process-thread-type.js.map +1 -1
- package/dist-server/service/process-thread/process-thread.d.ts +29 -0
- package/dist-server/service/process-thread/process-thread.js +3 -3
- package/dist-server/service/process-thread/process-thread.js.map +1 -1
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/package.json +10 -10
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Role, User } from '@things-factory/auth-base';
|
|
2
|
+
import { Domain, ListParam } from '@things-factory/shell';
|
|
3
|
+
import { Process } from './process';
|
|
4
|
+
import { ProcessList } from './process-type';
|
|
5
|
+
export declare class ProcessQuery {
|
|
6
|
+
process(id: string, context: ResolverContext): Promise<Process>;
|
|
7
|
+
processByName(name: string, context: ResolverContext): Promise<Process>;
|
|
8
|
+
processes(params: ListParam, context: ResolverContext): Promise<ProcessList>;
|
|
9
|
+
supervisableProcesses(params: ListParam, context: ResolverContext): Promise<ProcessList>;
|
|
10
|
+
supervisoryRole(process: Process): Promise<Role>;
|
|
11
|
+
thumbnail(process: Process): Promise<string | undefined>;
|
|
12
|
+
domain(process: Process): Promise<Domain>;
|
|
13
|
+
updater(process: Process): Promise<User>;
|
|
14
|
+
creator(process: Process): Promise<User>;
|
|
15
|
+
}
|
|
@@ -82,6 +82,7 @@ let ProcessQuery = class ProcessQuery {
|
|
|
82
82
|
return await (0, shell_1.getRepository)(auth_base_1.User).findOneBy({ id: process.creatorId });
|
|
83
83
|
}
|
|
84
84
|
};
|
|
85
|
+
exports.ProcessQuery = ProcessQuery;
|
|
85
86
|
tslib_1.__decorate([
|
|
86
87
|
(0, type_graphql_1.Directive)('@privilege(category: "process", privilege: "query", domainOwnerGranted: true)'),
|
|
87
88
|
(0, type_graphql_1.Query)(returns => process_1.Process, { nullable: true, description: 'To fetch a Process' }),
|
|
@@ -153,8 +154,7 @@ tslib_1.__decorate([
|
|
|
153
154
|
tslib_1.__metadata("design:paramtypes", [process_1.Process]),
|
|
154
155
|
tslib_1.__metadata("design:returntype", Promise)
|
|
155
156
|
], ProcessQuery.prototype, "creator", null);
|
|
156
|
-
ProcessQuery = tslib_1.__decorate([
|
|
157
|
+
exports.ProcessQuery = ProcessQuery = tslib_1.__decorate([
|
|
157
158
|
(0, type_graphql_1.Resolver)(process_1.Process)
|
|
158
159
|
], ProcessQuery);
|
|
159
|
-
exports.ProcessQuery = ProcessQuery;
|
|
160
160
|
//# sourceMappingURL=process-query.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-query.js","sourceRoot":"","sources":["../../../server/service/process/process-query.ts"],"names":[],"mappings":";;;;AAAA,+CAA8F;AAE9F,qEAA4D;AAC5D,yDAAsD;AACtD,iDAAuG;AAEvG,uCAAmC;AACnC,iDAA4C;AAGrC,IAAM,YAAY,GAAlB,MAAM,YAAY;IAGjB,AAAN,KAAK,CAAC,OAAO,CAAY,EAAU,EAAS,OAAwB;QAClE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,OAAO,MAAM,IAAA,qBAAa,EAAC,iBAAO,CAAC,CAAC,OAAO,CAAC;YAC1C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;SACzC,CAAC,CAAA;IACJ,CAAC;IAIK,AAAN,KAAK,CAAC,aAAa,CAAc,IAAY,EAAS,OAAwB;QAC5E,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,OAAO,MAAM,IAAA,qBAAa,EAAC,iBAAO,CAAC,CAAC,OAAO,CAAC;YAC1C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE;SAC3C,CAAC,CAAA;IACJ,CAAC;IAIK,AAAN,KAAK,CAAC,SAAS,CAAS,MAAiB,EAAS,OAAwB;QACxE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,MAAM,YAAY,GAAG,IAAA,qCAA6B,EAAC;YACjD,MAAM;YACN,MAAM;YACN,UAAU,EAAE,IAAA,qBAAa,EAAC,iBAAO,CAAC;YAClC,KAAK,EAAE,SAAS;YAChB,WAAW,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,iBAAiB,CAAC;SACxD,CAAC,CAAA;QAEF,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,YAAY,CAAC,eAAe,EAAE,CAAA;QAE3D,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IACzB,CAAC;IAIK,AAAN,KAAK,CAAC,qBAAqB,CAAS,MAAiB,EAAS,OAAwB;QACpF,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEpC,uDAAuD;QACvD,IAAI,GAAG,MAAM,IAAA,qBAAa,EAAC,gBAAI,CAAC,CAAC,OAAO,CAAC;YACvC,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE;YACtB,SAAS,EAAE,CAAC,OAAO,CAAC;SACrB,CAAC,CAAA;QACF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAEzF,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"process-query.js","sourceRoot":"","sources":["../../../server/service/process/process-query.ts"],"names":[],"mappings":";;;;AAAA,+CAA8F;AAE9F,qEAA4D;AAC5D,yDAAsD;AACtD,iDAAuG;AAEvG,uCAAmC;AACnC,iDAA4C;AAGrC,IAAM,YAAY,GAAlB,MAAM,YAAY;IAGjB,AAAN,KAAK,CAAC,OAAO,CAAY,EAAU,EAAS,OAAwB;QAClE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,OAAO,MAAM,IAAA,qBAAa,EAAC,iBAAO,CAAC,CAAC,OAAO,CAAC;YAC1C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;SACzC,CAAC,CAAA;IACJ,CAAC;IAIK,AAAN,KAAK,CAAC,aAAa,CAAc,IAAY,EAAS,OAAwB;QAC5E,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,OAAO,MAAM,IAAA,qBAAa,EAAC,iBAAO,CAAC,CAAC,OAAO,CAAC;YAC1C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE;SAC3C,CAAC,CAAA;IACJ,CAAC;IAIK,AAAN,KAAK,CAAC,SAAS,CAAS,MAAiB,EAAS,OAAwB;QACxE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,MAAM,YAAY,GAAG,IAAA,qCAA6B,EAAC;YACjD,MAAM;YACN,MAAM;YACN,UAAU,EAAE,IAAA,qBAAa,EAAC,iBAAO,CAAC;YAClC,KAAK,EAAE,SAAS;YAChB,WAAW,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,iBAAiB,CAAC;SACxD,CAAC,CAAA;QAEF,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,YAAY,CAAC,eAAe,EAAE,CAAA;QAE3D,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IACzB,CAAC;IAIK,AAAN,KAAK,CAAC,qBAAqB,CAAS,MAAiB,EAAS,OAAwB;QACpF,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEpC,uDAAuD;QACvD,IAAI,GAAG,MAAM,IAAA,qBAAa,EAAC,gBAAI,CAAC,CAAC,OAAO,CAAC;YACvC,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE;YACtB,SAAS,EAAE,CAAC,OAAO,CAAC;SACrB,CAAC,CAAA;QACF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAEzF,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAClB,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAA;QAChC,CAAC;QAED,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,IAAA,qCAA6B,EAAC;YACzD,UAAU,EAAE,IAAA,qBAAa,EAAC,iBAAO,CAAC;YAClC,MAAM;YACN,MAAM;YACN,KAAK,EAAE,SAAS;YAChB,WAAW,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC;SACrC,CAAC;aACC,QAAQ,CAAC,wCAAwC,EAAE,EAAE,KAAK,EAAE,CAAC;aAC7D,eAAe,EAAE,CAAA;QAEpB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IACzB,CAAC;IAGK,AAAN,KAAK,CAAC,eAAe,CAAS,OAAgB;QAC5C,OAAO,CACL,OAAO,CAAC,eAAe;YACvB,CAAC,OAAO,CAAC,iBAAiB;gBACxB,CAAC,MAAM,IAAA,qBAAa,EAAC,gBAAI,CAAC,CAAC,SAAS,CAAC;oBACnC,EAAE,EAAE,OAAO,CAAC,iBAAiB;iBAC9B,CAAC,CAAC,CAAC,CACP,CAAA;IACH,CAAC;IAGK,AAAN,KAAK,CAAC,SAAS,CAAS,OAAgB;QACtC,MAAM,UAAU,GAAe,MAAM,IAAA,qBAAa,EAAC,4BAAU,CAAC,CAAC,OAAO,CAAC;YACrE,KAAK,EAAE;gBACL,MAAM,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,QAAQ,EAAE;gBAChC,OAAO,EAAE,iBAAO,CAAC,IAAI;gBACrB,KAAK,EAAE,OAAO,CAAC,EAAE;aAClB;SACF,CAAC,CAAA;QAEF,OAAO,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,CAAA;IAC7B,CAAC;IAGK,AAAN,KAAK,CAAC,MAAM,CAAS,OAAgB;QACnC,OAAO,MAAM,IAAA,qBAAa,EAAC,cAAM,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAA;IACxE,CAAC;IAGK,AAAN,KAAK,CAAC,OAAO,CAAS,OAAgB;QACpC,OAAO,MAAM,IAAA,qBAAa,EAAC,gBAAI,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAA;IACvE,CAAC;IAGK,AAAN,KAAK,CAAC,OAAO,CAAS,OAAgB;QACpC,OAAO,MAAM,IAAA,qBAAa,EAAC,gBAAI,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAA;IACvE,CAAC;CACF,CAAA;AA1GY,oCAAY;AAGjB;IAFL,IAAA,wBAAS,EAAC,+EAA+E,CAAC;IAC1F,IAAA,oBAAK,EAAC,OAAO,CAAC,EAAE,CAAC,iBAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,oBAAoB,EAAE,CAAC;IACnE,mBAAA,IAAA,kBAAG,EAAC,IAAI,CAAC,CAAA;IAAc,mBAAA,IAAA,kBAAG,GAAE,CAAA;;;;2CAM1C;AAIK;IAFL,IAAA,wBAAS,EAAC,+EAA+E,CAAC;IAC1F,IAAA,oBAAK,EAAC,OAAO,CAAC,EAAE,CAAC,iBAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,4BAA4B,EAAE,CAAC;IACrE,mBAAA,IAAA,kBAAG,EAAC,MAAM,CAAC,CAAA;IAAgB,mBAAA,IAAA,kBAAG,GAAE,CAAA;;;;iDAMpD;AAIK;IAFL,IAAA,wBAAS,EAAC,+EAA+E,CAAC;IAC1F,IAAA,oBAAK,EAAC,OAAO,CAAC,EAAE,CAAC,0BAAW,EAAE,EAAE,WAAW,EAAE,6BAA6B,EAAE,CAAC;IAC7D,mBAAA,IAAA,mBAAI,GAAE,CAAA;IAAqB,mBAAA,IAAA,kBAAG,GAAE,CAAA;;6CAAjB,iBAAS;;6CAcxC;AAIK;IAFL,IAAA,wBAAS,EAAC,+EAA+E,CAAC;IAC1F,IAAA,oBAAK,EAAC,OAAO,CAAC,EAAE,CAAC,0BAAW,EAAE,EAAE,WAAW,EAAE,qDAAqD,EAAE,CAAC;IACzE,mBAAA,IAAA,mBAAI,GAAE,CAAA;IAAqB,mBAAA,IAAA,kBAAG,GAAE,CAAA;;6CAAjB,iBAAS;;yDAyBpD;AAGK;IADL,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,CAAC;IACL,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAU,iBAAO;;mDAQ7C;AAGK;IADL,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC;IACb,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAU,iBAAO;;6CAUvC;AAGK;IADL,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,cAAM,CAAC;IAChB,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAU,iBAAO;;0CAEpC;AAGK;IADL,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,CAAC;IACb,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAU,iBAAO;;2CAErC;AAGK;IADL,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,CAAC;IACb,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAU,iBAAO;;2CAErC;uBAzGU,YAAY;IADxB,IAAA,uBAAQ,EAAC,iBAAO,CAAC;GACL,YAAY,CA0GxB","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 { Process } from './process'\nimport { ProcessList } from './process-type'\n\n@Resolver(Process)\nexport class ProcessQuery {\n @Directive('@privilege(category: \"process\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => Process!, { nullable: true, description: 'To fetch a Process' })\n async process(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<Process> {\n const { domain } = context.state\n\n return await getRepository(Process).findOne({\n where: { domain: { id: domain.id }, id }\n })\n }\n\n @Directive('@privilege(category: \"process\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => Process!, { nullable: true, description: 'To fetch a Process by name' })\n async processByName(@Arg('name') name: string, @Ctx() context: ResolverContext): Promise<Process> {\n const { domain } = context.state\n\n return await getRepository(Process).findOne({\n where: { domain: { id: domain.id }, name }\n })\n }\n\n @Directive('@privilege(category: \"process\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => ProcessList, { description: 'To fetch multiple Processes' })\n async processes(@Args() params: ListParam, @Ctx() context: ResolverContext): Promise<ProcessList> {\n const { domain } = context.state\n\n const queryBuilder = getQueryBuilderFromListParams({\n domain,\n params,\n repository: getRepository(Process),\n alias: 'process',\n searchables: ['name', 'description', 'supervisoryRole']\n })\n\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n @Directive('@privilege(category: \"process\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => ProcessList, { description: 'To fetch the list of processes that I can report on' })\n async supervisableProcesses(@Args() params: ListParam, @Ctx() context: ResolverContext): Promise<ProcessList> {\n var { domain, user } = context.state\n\n /* 조회한 사용자가 assigner 역할을 가진 process-instance 리스트만 반환 */\n user = await getRepository(User).findOne({\n where: { id: user.id },\n relations: ['roles']\n })\n const roles = user.roles.filter(role => role.domainId === domain.id).map(role => role.id)\n\n if (!roles.length) {\n return { items: [], total: 0 }\n }\n\n const [items, total] = await getQueryBuilderFromListParams({\n repository: getRepository(Process),\n params,\n domain,\n alias: 'process',\n searchables: ['name', 'description']\n })\n .andWhere(`process.supervisoryRole IN (:...roles)`, { roles })\n .getManyAndCount()\n\n return { items, total }\n }\n\n @FieldResolver(type => Role)\n async supervisoryRole(@Root() process: Process): Promise<Role> {\n return (\n process.supervisoryRole ||\n (process.supervisoryRoleId &&\n (await getRepository(Role).findOneBy({\n id: process.supervisoryRoleId\n })))\n )\n }\n\n @FieldResolver(type => String)\n async thumbnail(@Root() process: Process): Promise<string | undefined> {\n const attachment: Attachment = await getRepository(Attachment).findOne({\n where: {\n domain: { id: process.domainId },\n refType: Process.name,\n refBy: process.id\n }\n })\n\n return attachment?.fullpath\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() process: Process): Promise<Domain> {\n return await getRepository(Domain).findOneBy({ id: process.domainId })\n }\n\n @FieldResolver(type => User)\n async updater(@Root() process: Process): Promise<User> {\n return await getRepository(User).findOneBy({ id: process.updaterId })\n }\n\n @FieldResolver(type => User)\n async creator(@Root() process: Process): Promise<User> {\n return await getRepository(User).findOneBy({ id: process.creatorId })\n }\n}\n"]}
|
|
@@ -5,6 +5,7 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const type_graphql_1 = require("type-graphql");
|
|
6
6
|
let ProcessSearchKeyItem = class ProcessSearchKeyItem {
|
|
7
7
|
};
|
|
8
|
+
exports.ProcessSearchKeyItem = ProcessSearchKeyItem;
|
|
8
9
|
tslib_1.__decorate([
|
|
9
10
|
(0, type_graphql_1.Field)(),
|
|
10
11
|
tslib_1.__metadata("design:type", String)
|
|
@@ -21,8 +22,7 @@ tslib_1.__decorate([
|
|
|
21
22
|
(0, type_graphql_1.Field)({ nullable: true }),
|
|
22
23
|
tslib_1.__metadata("design:type", String)
|
|
23
24
|
], ProcessSearchKeyItem.prototype, "tKey", void 0);
|
|
24
|
-
ProcessSearchKeyItem = tslib_1.__decorate([
|
|
25
|
+
exports.ProcessSearchKeyItem = ProcessSearchKeyItem = tslib_1.__decorate([
|
|
25
26
|
(0, type_graphql_1.ObjectType)({ description: 'Entity for ProcessSearchKeyItem' })
|
|
26
27
|
], ProcessSearchKeyItem);
|
|
27
|
-
exports.ProcessSearchKeyItem = ProcessSearchKeyItem;
|
|
28
28
|
//# sourceMappingURL=process-search-key-item-type.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-search-key-item-type.js","sourceRoot":"","sources":["../../../server/service/process/process-search-key-item-type.ts"],"names":[],"mappings":";;;;AAAA,+CAAgD;AAGzC,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;CAYhC,CAAA;
|
|
1
|
+
{"version":3,"file":"process-search-key-item-type.js","sourceRoot":"","sources":["../../../server/service/process/process-search-key-item-type.ts"],"names":[],"mappings":";;;;AAAA,+CAAgD;AAGzC,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;CAYhC,CAAA;AAZY,oDAAoB;AAE/B;IADC,IAAA,oBAAK,GAAE;;kDACI;AAGZ;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;yDACN;AAGpB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;sDACV;AAGhB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDACb;+BAXF,oBAAoB;IADhC,IAAA,yBAAU,EAAC,EAAE,WAAW,EAAE,iCAAiC,EAAE,CAAC;GAClD,oBAAoB,CAYhC","sourcesContent":["import { Field, ObjectType } from 'type-graphql'\n\n@ObjectType({ description: 'Entity for ProcessSearchKeyItem' })\nexport class ProcessSearchKeyItem {\n @Field()\n name: string\n\n @Field({ nullable: true })\n description?: string\n\n @Field({ nullable: true })\n inputKey: string\n\n @Field({ nullable: true })\n tKey?: string\n}\n"]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { FileUpload } from 'graphql-upload/GraphQLUpload.js';
|
|
2
|
+
import { ObjectRef } from '@things-factory/shell';
|
|
3
|
+
import { Process, ProcessStatus } from './process';
|
|
4
|
+
import { ProcessSearchKeyItem } from './process-search-key-item-type';
|
|
5
|
+
export declare class NewProcess {
|
|
6
|
+
name: string;
|
|
7
|
+
description?: string;
|
|
8
|
+
searchKeys?: ProcessSearchKeyItem[];
|
|
9
|
+
state?: ProcessStatus;
|
|
10
|
+
supervisoryRole?: ObjectRef;
|
|
11
|
+
thumbnail?: FileUpload;
|
|
12
|
+
}
|
|
13
|
+
export declare class ProcessPatch {
|
|
14
|
+
id?: string;
|
|
15
|
+
name?: string;
|
|
16
|
+
description?: string;
|
|
17
|
+
searchKeys?: ProcessSearchKeyItem[];
|
|
18
|
+
state?: ProcessStatus;
|
|
19
|
+
supervisoryRole?: ObjectRef;
|
|
20
|
+
thumbnail?: FileUpload;
|
|
21
|
+
cuFlag?: string;
|
|
22
|
+
}
|
|
23
|
+
export declare class ProcessList {
|
|
24
|
+
items: Process[];
|
|
25
|
+
total: number;
|
|
26
|
+
}
|
|
@@ -8,6 +8,7 @@ const shell_1 = require("@things-factory/shell");
|
|
|
8
8
|
const process_1 = require("./process");
|
|
9
9
|
let NewProcess = class NewProcess {
|
|
10
10
|
};
|
|
11
|
+
exports.NewProcess = NewProcess;
|
|
11
12
|
tslib_1.__decorate([
|
|
12
13
|
(0, type_graphql_1.Field)(),
|
|
13
14
|
tslib_1.__metadata("design:type", String)
|
|
@@ -32,12 +33,12 @@ tslib_1.__decorate([
|
|
|
32
33
|
(0, type_graphql_1.Field)(type => GraphQLUpload_js_1.default, { nullable: true }),
|
|
33
34
|
tslib_1.__metadata("design:type", Object)
|
|
34
35
|
], NewProcess.prototype, "thumbnail", void 0);
|
|
35
|
-
NewProcess = tslib_1.__decorate([
|
|
36
|
+
exports.NewProcess = NewProcess = tslib_1.__decorate([
|
|
36
37
|
(0, type_graphql_1.InputType)()
|
|
37
38
|
], NewProcess);
|
|
38
|
-
exports.NewProcess = NewProcess;
|
|
39
39
|
let ProcessPatch = class ProcessPatch {
|
|
40
40
|
};
|
|
41
|
+
exports.ProcessPatch = ProcessPatch;
|
|
41
42
|
tslib_1.__decorate([
|
|
42
43
|
(0, type_graphql_1.Field)(type => type_graphql_1.ID, { nullable: true }),
|
|
43
44
|
tslib_1.__metadata("design:type", String)
|
|
@@ -70,12 +71,12 @@ tslib_1.__decorate([
|
|
|
70
71
|
(0, type_graphql_1.Field)({ nullable: true }),
|
|
71
72
|
tslib_1.__metadata("design:type", String)
|
|
72
73
|
], ProcessPatch.prototype, "cuFlag", void 0);
|
|
73
|
-
ProcessPatch = tslib_1.__decorate([
|
|
74
|
+
exports.ProcessPatch = ProcessPatch = tslib_1.__decorate([
|
|
74
75
|
(0, type_graphql_1.InputType)()
|
|
75
76
|
], ProcessPatch);
|
|
76
|
-
exports.ProcessPatch = ProcessPatch;
|
|
77
77
|
let ProcessList = class ProcessList {
|
|
78
78
|
};
|
|
79
|
+
exports.ProcessList = ProcessList;
|
|
79
80
|
tslib_1.__decorate([
|
|
80
81
|
(0, type_graphql_1.Field)(type => [process_1.Process]),
|
|
81
82
|
tslib_1.__metadata("design:type", Array)
|
|
@@ -84,8 +85,7 @@ tslib_1.__decorate([
|
|
|
84
85
|
(0, type_graphql_1.Field)(type => type_graphql_1.Int),
|
|
85
86
|
tslib_1.__metadata("design:type", Number)
|
|
86
87
|
], ProcessList.prototype, "total", void 0);
|
|
87
|
-
ProcessList = tslib_1.__decorate([
|
|
88
|
+
exports.ProcessList = ProcessList = tslib_1.__decorate([
|
|
88
89
|
(0, type_graphql_1.ObjectType)()
|
|
89
90
|
], ProcessList);
|
|
90
|
-
exports.ProcessList = ProcessList;
|
|
91
91
|
//# sourceMappingURL=process-type.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-type.js","sourceRoot":"","sources":["../../../server/service/process/process-type.ts"],"names":[],"mappings":";;;;AACA,+FAA2D;AAC3D,+CAAoE;AAEpE,iDAA+D;AAE/D,uCAAkD;AAI3C,IAAM,UAAU,GAAhB,MAAM,UAAU;CAkBtB,CAAA;
|
|
1
|
+
{"version":3,"file":"process-type.js","sourceRoot":"","sources":["../../../server/service/process/process-type.ts"],"names":[],"mappings":";;;;AACA,+FAA2D;AAC3D,+CAAoE;AAEpE,iDAA+D;AAE/D,uCAAkD;AAI3C,IAAM,UAAU,GAAhB,MAAM,UAAU;CAkBtB,CAAA;AAlBY,gCAAU;AAErB;IADC,IAAA,oBAAK,GAAE;;wCACI;AAGZ;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;+CACN;AAGpB;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,oBAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;8CACb;AAGnC;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;yCACL;AAGrB;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,iBAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCAC3B,iBAAS;mDAAA;AAG3B;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,0BAAa,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;6CAC3B;qBAjBX,UAAU;IADtB,IAAA,wBAAS,GAAE;GACC,UAAU,CAkBtB;AAGM,IAAM,YAAY,GAAlB,MAAM,YAAY;CAwBxB,CAAA;AAxBY,oCAAY;AAEvB;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,iBAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;wCAC3B;AAGX;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;0CACb;AAGb;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;iDACN;AAGpB;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,oBAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDACb;AAGnC;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;2CACL;AAGrB;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,iBAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCAC3B,iBAAS;qDAAA;AAG3B;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,0BAAa,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;+CAC3B;AAGtB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;4CACX;uBAvBJ,YAAY;IADxB,IAAA,wBAAS,GAAE;GACC,YAAY,CAwBxB;AAGM,IAAM,WAAW,GAAjB,MAAM,WAAW;CAMvB,CAAA;AANY,kCAAW;AAEtB;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,iBAAO,CAAC,CAAC;;0CACT;AAGhB;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,kBAAG,CAAC;;0CACN;sBALF,WAAW;IADvB,IAAA,yBAAU,GAAE;GACA,WAAW,CAMvB","sourcesContent":["import type { FileUpload } from 'graphql-upload/GraphQLUpload.js'\nimport GraphQLUpload from 'graphql-upload/GraphQLUpload.js'\nimport { Field, ID, InputType, Int, ObjectType } from 'type-graphql'\n\nimport { ObjectRef, ScalarObject } from '@things-factory/shell'\n\nimport { Process, ProcessStatus } from './process'\nimport { ProcessSearchKeyItem } from './process-search-key-item-type'\n\n@InputType()\nexport class NewProcess {\n @Field()\n name: string\n\n @Field({ nullable: true })\n description?: string\n\n @Field(type => ScalarObject, { nullable: true })\n searchKeys?: ProcessSearchKeyItem[]\n\n @Field({ nullable: true })\n state?: ProcessStatus\n\n @Field(type => ObjectRef, { nullable: true })\n supervisoryRole?: ObjectRef\n\n @Field(type => GraphQLUpload, { nullable: true })\n thumbnail?: FileUpload\n}\n\n@InputType()\nexport class ProcessPatch {\n @Field(type => ID, { nullable: true })\n id?: string\n\n @Field({ nullable: true })\n name?: string\n\n @Field({ nullable: true })\n description?: string\n\n @Field(type => ScalarObject, { nullable: true })\n searchKeys?: ProcessSearchKeyItem[]\n\n @Field({ nullable: true })\n state?: ProcessStatus\n\n @Field(type => ObjectRef, { nullable: true })\n supervisoryRole?: ObjectRef\n\n @Field(type => GraphQLUpload, { nullable: true })\n thumbnail?: FileUpload\n\n @Field({ nullable: true })\n cuFlag?: string\n}\n\n@ObjectType()\nexport class ProcessList {\n @Field(type => [Process])\n items: Process[]\n\n @Field(type => Int)\n total: number\n}\n"]}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Role, User } from '@things-factory/auth-base';
|
|
2
|
+
import { Domain } from '@things-factory/shell';
|
|
3
|
+
import { ProcessSearchKeyItem } from './process-search-key-item-type';
|
|
4
|
+
export declare enum ProcessStatus {
|
|
5
|
+
Draft = "draft",
|
|
6
|
+
Released = "released",
|
|
7
|
+
Deprecated = "deprecated"
|
|
8
|
+
}
|
|
9
|
+
export declare class Process {
|
|
10
|
+
readonly id: string;
|
|
11
|
+
version?: number;
|
|
12
|
+
domain?: Domain;
|
|
13
|
+
domainId?: string;
|
|
14
|
+
name?: string;
|
|
15
|
+
description?: string;
|
|
16
|
+
state?: ProcessStatus;
|
|
17
|
+
searchKeys?: ProcessSearchKeyItem[];
|
|
18
|
+
supervisoryRole?: Role;
|
|
19
|
+
supervisoryRoleId?: string;
|
|
20
|
+
createdAt?: Date;
|
|
21
|
+
updatedAt?: Date;
|
|
22
|
+
creator?: User;
|
|
23
|
+
creatorId?: string;
|
|
24
|
+
updater?: User;
|
|
25
|
+
updaterId?: string;
|
|
26
|
+
thumbnail?: string;
|
|
27
|
+
}
|
|
@@ -12,7 +12,7 @@ var ProcessStatus;
|
|
|
12
12
|
ProcessStatus["Draft"] = "draft";
|
|
13
13
|
ProcessStatus["Released"] = "released";
|
|
14
14
|
ProcessStatus["Deprecated"] = "deprecated";
|
|
15
|
-
})(ProcessStatus
|
|
15
|
+
})(ProcessStatus || (exports.ProcessStatus = ProcessStatus = {}));
|
|
16
16
|
(0, type_graphql_1.registerEnumType)(ProcessStatus, {
|
|
17
17
|
name: 'ProcessStatus',
|
|
18
18
|
description: 'state enumeration of a process'
|
|
@@ -22,6 +22,7 @@ let Process = class Process {
|
|
|
22
22
|
this.version = 1;
|
|
23
23
|
}
|
|
24
24
|
};
|
|
25
|
+
exports.Process = Process;
|
|
25
26
|
tslib_1.__decorate([
|
|
26
27
|
(0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
|
|
27
28
|
(0, type_graphql_1.Field)(type => type_graphql_1.ID),
|
|
@@ -102,11 +103,10 @@ tslib_1.__decorate([
|
|
|
102
103
|
(0, type_graphql_1.Field)(type => String, { nullable: true }),
|
|
103
104
|
tslib_1.__metadata("design:type", String)
|
|
104
105
|
], Process.prototype, "thumbnail", void 0);
|
|
105
|
-
Process = tslib_1.__decorate([
|
|
106
|
+
exports.Process = Process = tslib_1.__decorate([
|
|
106
107
|
(0, typeorm_1.Entity)(),
|
|
107
108
|
(0, typeorm_1.Index)('ix_process_0', (process) => [process.domain, process.name], { unique: true }),
|
|
108
109
|
(0, typeorm_1.Index)('ix_process_1', (process) => [process.domain, process.state], { unique: false }),
|
|
109
110
|
(0, type_graphql_1.ObjectType)({ description: 'Entity for Process' })
|
|
110
111
|
], Process);
|
|
111
|
-
exports.Process = Process;
|
|
112
112
|
//# sourceMappingURL=process.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process.js","sourceRoot":"","sources":["../../../server/service/process/process.ts"],"names":[],"mappings":";;;;AAAA,+CAAsE;AACtE,qCAUgB;AAEhB,yDAAsD;AACtD,iDAA8C;AAE9C,iFAAqE;AAErE,IAAY,aAIX;AAJD,WAAY,aAAa;IACvB,gCAAe,CAAA;IACf,sCAAqB,CAAA;IACrB,0CAAyB,CAAA;AAC3B,CAAC,EAJW,aAAa,
|
|
1
|
+
{"version":3,"file":"process.js","sourceRoot":"","sources":["../../../server/service/process/process.ts"],"names":[],"mappings":"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","sourcesContent":["import { Field, ID, ObjectType, registerEnumType } from 'type-graphql'\nimport {\n Column,\n CreateDateColumn,\n Entity,\n Index,\n ManyToOne,\n PrimaryGeneratedColumn,\n RelationId,\n UpdateDateColumn,\n VersionColumn\n} from 'typeorm'\n\nimport { Role, User } from '@things-factory/auth-base'\nimport { Domain } from '@things-factory/shell'\n\nimport { ProcessSearchKeyItem } from './process-search-key-item-type'\n\nexport enum ProcessStatus {\n Draft = 'draft',\n Released = 'released',\n Deprecated = 'deprecated'\n}\n\nregisterEnumType(ProcessStatus, {\n name: 'ProcessStatus',\n description: 'state enumeration of a process'\n})\n\n@Entity()\n@Index('ix_process_0', (process: Process) => [process.domain, process.name], { unique: true })\n@Index('ix_process_1', (process: Process) => [process.domain, process.state], { unique: false })\n@ObjectType({ description: 'Entity for Process' })\nexport class Process {\n @PrimaryGeneratedColumn('uuid')\n @Field(type => ID)\n readonly id: string\n\n @VersionColumn()\n @Field({ nullable: true })\n version?: number = 1\n\n @ManyToOne(type => Domain)\n @Field(type => Domain, { nullable: true })\n domain?: Domain\n\n @RelationId((process: Process) => process.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 })\n @Field({ nullable: true })\n state?: ProcessStatus\n\n @Column('simple-json', { nullable: true })\n @Field(type => [ProcessSearchKeyItem], { nullable: true })\n searchKeys?: ProcessSearchKeyItem[]\n\n @ManyToOne(type => Role, { nullable: true })\n @Field(type => Role, { nullable: true, description: 'The final authority on a given process.' })\n supervisoryRole?: Role\n\n @RelationId((process: Process) => process.supervisoryRole)\n supervisoryRoleId?: string\n\n @CreateDateColumn()\n @Field({ nullable: true })\n createdAt?: Date\n\n @UpdateDateColumn()\n @Field({ nullable: true })\n updatedAt?: Date\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true })\n creator?: User\n\n @RelationId((process: Process) => process.creator)\n creatorId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true })\n updater?: User\n\n @RelationId((process: Process) => process.updater)\n updaterId?: string\n\n @Field(type => String, { nullable: true })\n thumbnail?: string\n}\n"]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { EntitySubscriberInterface, InsertEvent, UpdateEvent } from 'typeorm';
|
|
2
|
+
import { HistoryEntitySubscriber } from '@operato/typeorm-history';
|
|
3
|
+
import { ProcessInstance } from './process-instance';
|
|
4
|
+
import { ProcessInstanceHistory } from './process-instance-history';
|
|
5
|
+
export declare class ProcessInstanceSubscriber implements EntitySubscriberInterface<ProcessInstance> {
|
|
6
|
+
listenTo(): typeof ProcessInstance;
|
|
7
|
+
afterInsert(event: InsertEvent<ProcessInstance>): Promise<any | void>;
|
|
8
|
+
afterUpdate(event: UpdateEvent<ProcessInstance>): Promise<any | void>;
|
|
9
|
+
}
|
|
10
|
+
export declare class ProcessInstanceHistoryEntitySubscriber extends HistoryEntitySubscriber<ProcessInstance, ProcessInstanceHistory> {
|
|
11
|
+
get entity(): typeof ProcessInstance;
|
|
12
|
+
get historyEntity(): typeof ProcessInstanceHistory;
|
|
13
|
+
}
|
|
@@ -24,10 +24,10 @@ let ProcessInstanceSubscriber = class ProcessInstanceSubscriber {
|
|
|
24
24
|
});
|
|
25
25
|
}
|
|
26
26
|
};
|
|
27
|
-
ProcessInstanceSubscriber =
|
|
27
|
+
exports.ProcessInstanceSubscriber = ProcessInstanceSubscriber;
|
|
28
|
+
exports.ProcessInstanceSubscriber = ProcessInstanceSubscriber = tslib_1.__decorate([
|
|
28
29
|
(0, typeorm_1.EventSubscriber)()
|
|
29
30
|
], ProcessInstanceSubscriber);
|
|
30
|
-
exports.ProcessInstanceSubscriber = ProcessInstanceSubscriber;
|
|
31
31
|
let ProcessInstanceHistoryEntitySubscriber = class ProcessInstanceHistoryEntitySubscriber extends typeorm_history_1.HistoryEntitySubscriber {
|
|
32
32
|
get entity() {
|
|
33
33
|
return process_instance_1.ProcessInstance;
|
|
@@ -36,8 +36,8 @@ let ProcessInstanceHistoryEntitySubscriber = class ProcessInstanceHistoryEntityS
|
|
|
36
36
|
return process_instance_history_1.ProcessInstanceHistory;
|
|
37
37
|
}
|
|
38
38
|
};
|
|
39
|
-
ProcessInstanceHistoryEntitySubscriber =
|
|
39
|
+
exports.ProcessInstanceHistoryEntitySubscriber = ProcessInstanceHistoryEntitySubscriber;
|
|
40
|
+
exports.ProcessInstanceHistoryEntitySubscriber = ProcessInstanceHistoryEntitySubscriber = tslib_1.__decorate([
|
|
40
41
|
(0, typeorm_1.EventSubscriber)()
|
|
41
42
|
], ProcessInstanceHistoryEntitySubscriber);
|
|
42
|
-
exports.ProcessInstanceHistoryEntitySubscriber = ProcessInstanceHistoryEntitySubscriber;
|
|
43
43
|
//# sourceMappingURL=event-subscriber.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-subscriber.js","sourceRoot":"","sources":["../../../server/service/process-instance/event-subscriber.ts"],"names":[],"mappings":";;;;AAAA,qCAA8F;AAE9F,8DAAkE;AAClE,iDAA8C;AAE9C,yDAAoD;AACpD,yEAAmE;AAG5D,IAAM,yBAAyB,GAA/B,MAAM,yBAAyB;IACpC,QAAQ;QACN,OAAO,kCAAe,CAAA;IACxB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAmC;QACnD,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,KAAK,CAAA;QAEtD,cAAM,CAAC,OAAO,CAAC,kBAAkB,EAAE;YACjC,eAAe;SAChB,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAmC;QACnD,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,KAAK,CAAA;QAEtD,cAAM,CAAC,OAAO,CAAC,kBAAkB,EAAE;YACjC,eAAe;SAChB,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AApBY,yBAAyB;IADrC,IAAA,yBAAe,GAAE;GACL,yBAAyB,CAoBrC;
|
|
1
|
+
{"version":3,"file":"event-subscriber.js","sourceRoot":"","sources":["../../../server/service/process-instance/event-subscriber.ts"],"names":[],"mappings":";;;;AAAA,qCAA8F;AAE9F,8DAAkE;AAClE,iDAA8C;AAE9C,yDAAoD;AACpD,yEAAmE;AAG5D,IAAM,yBAAyB,GAA/B,MAAM,yBAAyB;IACpC,QAAQ;QACN,OAAO,kCAAe,CAAA;IACxB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAmC;QACnD,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,KAAK,CAAA;QAEtD,cAAM,CAAC,OAAO,CAAC,kBAAkB,EAAE;YACjC,eAAe;SAChB,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAmC;QACnD,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,KAAK,CAAA;QAEtD,cAAM,CAAC,OAAO,CAAC,kBAAkB,EAAE;YACjC,eAAe;SAChB,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AApBY,8DAAyB;oCAAzB,yBAAyB;IADrC,IAAA,yBAAe,GAAE;GACL,yBAAyB,CAoBrC;AAGM,IAAM,sCAAsC,GAA5C,MAAM,sCAAuC,SAAQ,yCAG3D;IACC,IAAW,MAAM;QACf,OAAO,kCAAe,CAAA;IACxB,CAAC;IAED,IAAW,aAAa;QACtB,OAAO,iDAAsB,CAAA;IAC/B,CAAC;CACF,CAAA;AAXY,wFAAsC;iDAAtC,sCAAsC;IADlD,IAAA,yBAAe,GAAE;GACL,sCAAsC,CAWlD","sourcesContent":["import { EventSubscriber, EntitySubscriberInterface, InsertEvent, UpdateEvent } from 'typeorm'\n\nimport { HistoryEntitySubscriber } from '@operato/typeorm-history'\nimport { pubsub } from '@things-factory/shell'\n\nimport { ProcessInstance } from './process-instance'\nimport { ProcessInstanceHistory } from './process-instance-history'\n\n@EventSubscriber()\nexport class ProcessInstanceSubscriber implements EntitySubscriberInterface<ProcessInstance> {\n listenTo() {\n return ProcessInstance\n }\n\n async afterInsert(event: InsertEvent<ProcessInstance>): Promise<any | void> {\n const { entity: processInstance, manager: tx } = event\n\n pubsub.publish('process-instance', {\n processInstance\n })\n }\n\n async afterUpdate(event: UpdateEvent<ProcessInstance>): Promise<any | void> {\n const { entity: processInstance, manager: tx } = event\n\n pubsub.publish('process-instance', {\n processInstance\n })\n }\n}\n\n@EventSubscriber()\nexport class ProcessInstanceHistoryEntitySubscriber extends HistoryEntitySubscriber<\n ProcessInstance,\n ProcessInstanceHistory\n> {\n public get entity() {\n return ProcessInstance\n }\n\n public get historyEntity() {\n return ProcessInstanceHistory\n }\n}\n"]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ProcessInstance } from './process-instance';
|
|
2
|
+
import { ProcessInstanceHistory } from './process-instance-history';
|
|
3
|
+
import { ProcessInstanceMutation } from './process-instance-mutation';
|
|
4
|
+
import { ProcessInstanceQuery } from './process-instance-query';
|
|
5
|
+
import { ProcessInstanceSubscription } from './process-instance-subscription';
|
|
6
|
+
import { ProcessInstanceHistoryEntitySubscriber, ProcessInstanceSubscriber } from './event-subscriber';
|
|
7
|
+
export declare const entities: (typeof ProcessInstance | typeof ProcessInstanceHistory)[];
|
|
8
|
+
export declare const resolvers: (typeof ProcessInstanceMutation | typeof ProcessInstanceQuery | typeof ProcessInstanceSubscription)[];
|
|
9
|
+
export declare const subscribers: (typeof ProcessInstanceSubscriber | typeof ProcessInstanceHistoryEntitySubscriber)[];
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { HistoryActionType, HistoryEntityInterface } from '@operato/typeorm-history';
|
|
2
|
+
import { Role, User } from '@things-factory/auth-base';
|
|
3
|
+
import { Domain } from '@things-factory/shell';
|
|
4
|
+
import { ProcessInstance, ProcessInstanceStatus } from './process-instance';
|
|
5
|
+
export declare class ProcessInstanceHistory implements HistoryEntityInterface<ProcessInstance> {
|
|
6
|
+
readonly id: string;
|
|
7
|
+
version?: number;
|
|
8
|
+
domain?: Domain;
|
|
9
|
+
domainId?: string;
|
|
10
|
+
name?: string;
|
|
11
|
+
description?: string;
|
|
12
|
+
key01?: string;
|
|
13
|
+
key02?: string;
|
|
14
|
+
key03?: string;
|
|
15
|
+
key04?: string;
|
|
16
|
+
key05?: string;
|
|
17
|
+
state?: ProcessInstanceStatus;
|
|
18
|
+
reason?: string;
|
|
19
|
+
refBy?: string;
|
|
20
|
+
supervisoryRole?: Role;
|
|
21
|
+
supervisoryRoleId?: string;
|
|
22
|
+
dueAt?: Date;
|
|
23
|
+
createdAt?: Date;
|
|
24
|
+
updatedAt?: Date;
|
|
25
|
+
terminatedAt?: Date;
|
|
26
|
+
creator?: User;
|
|
27
|
+
creatorId?: string;
|
|
28
|
+
updater?: User;
|
|
29
|
+
updaterId?: string;
|
|
30
|
+
originalId: string;
|
|
31
|
+
action: HistoryActionType;
|
|
32
|
+
}
|
|
@@ -21,6 +21,7 @@ let ProcessInstanceHistory = class ProcessInstanceHistory {
|
|
|
21
21
|
this.key05 = '';
|
|
22
22
|
}
|
|
23
23
|
};
|
|
24
|
+
exports.ProcessInstanceHistory = ProcessInstanceHistory;
|
|
24
25
|
tslib_1.__decorate([
|
|
25
26
|
(0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
|
|
26
27
|
(0, type_graphql_1.Field)(type => type_graphql_1.ID),
|
|
@@ -156,7 +157,7 @@ tslib_1.__decorate([
|
|
|
156
157
|
}),
|
|
157
158
|
tslib_1.__metadata("design:type", String)
|
|
158
159
|
], ProcessInstanceHistory.prototype, "action", void 0);
|
|
159
|
-
ProcessInstanceHistory = tslib_1.__decorate([
|
|
160
|
+
exports.ProcessInstanceHistory = ProcessInstanceHistory = tslib_1.__decorate([
|
|
160
161
|
(0, typeorm_1.Entity)(),
|
|
161
162
|
(0, typeorm_1.Index)('ix_process_instance_history_0', (processInstanceHistory) => [
|
|
162
163
|
processInstanceHistory.originalId,
|
|
@@ -169,5 +170,4 @@ ProcessInstanceHistory = tslib_1.__decorate([
|
|
|
169
170
|
], { unique: true }),
|
|
170
171
|
(0, type_graphql_1.ObjectType)({ description: 'History Entity of ProcessInstance' })
|
|
171
172
|
], ProcessInstanceHistory);
|
|
172
|
-
exports.ProcessInstanceHistory = ProcessInstanceHistory;
|
|
173
173
|
//# sourceMappingURL=process-instance-history.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-instance-history.js","sourceRoot":"","sources":["../../../server/service/process-instance/process-instance-history.ts"],"names":[],"mappings":";;;;AAAA,+CAAyD;AACzD,qCAA8F;AAE9F,8DAKiC;AACjC,yDAAsD;AACtD,6CAA4C;AAC5C,iDAA4D;AAE5D,yDAA2E;AAE3E,MAAM,SAAS,GAAG,YAAM,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;AAC7C,MAAM,aAAa,GAAG,SAAS,CAAC,IAAI,CAAA;AAqB7B,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAA5B;QAUL,YAAO,GAAY,CAAC,CAAA;QAmBpB,UAAK,GAAY,EAAE,CAAA;QAInB,UAAK,GAAY,EAAE,CAAA;QAInB,UAAK,GAAY,EAAE,CAAA;QAInB,UAAK,GAAY,EAAE,CAAA;QAInB,UAAK,GAAY,EAAE,CAAA;IAiErB,CAAC;CAAA,CAAA;
|
|
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,7 @@
|
|
|
1
|
+
import { ProcessInstance } from './process-instance';
|
|
2
|
+
export declare class ProcessInstanceMutation {
|
|
3
|
+
endProcessInstance(id: string, output: {
|
|
4
|
+
[key: string]: any;
|
|
5
|
+
}, reason: string, context: ResolverContext): Promise<ProcessInstance>;
|
|
6
|
+
abortProcessInstance(id: string, reason: string, context: ResolverContext): Promise<ProcessInstance>;
|
|
7
|
+
}
|
|
@@ -14,6 +14,7 @@ let ProcessInstanceMutation = class ProcessInstanceMutation {
|
|
|
14
14
|
return await (0, process_instance_1.abort)({ id, reason }, context);
|
|
15
15
|
}
|
|
16
16
|
};
|
|
17
|
+
exports.ProcessInstanceMutation = ProcessInstanceMutation;
|
|
17
18
|
tslib_1.__decorate([
|
|
18
19
|
(0, type_graphql_1.Directive)('@transaction'),
|
|
19
20
|
(0, type_graphql_1.Directive)('@privilege(category: "process", privilege: "mutation", domainOwnerGranted: true)'),
|
|
@@ -37,8 +38,7 @@ tslib_1.__decorate([
|
|
|
37
38
|
tslib_1.__metadata("design:paramtypes", [String, String, Object]),
|
|
38
39
|
tslib_1.__metadata("design:returntype", Promise)
|
|
39
40
|
], ProcessInstanceMutation.prototype, "abortProcessInstance", null);
|
|
40
|
-
ProcessInstanceMutation = tslib_1.__decorate([
|
|
41
|
+
exports.ProcessInstanceMutation = ProcessInstanceMutation = tslib_1.__decorate([
|
|
41
42
|
(0, type_graphql_1.Resolver)(process_instance_2.ProcessInstance)
|
|
42
43
|
], ProcessInstanceMutation);
|
|
43
|
-
exports.ProcessInstanceMutation = ProcessInstanceMutation;
|
|
44
44
|
//# sourceMappingURL=process-instance-mutation.js.map
|
|
@@ -1 +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;
|
|
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;AAvBY,0DAAuB;AAI5B;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;kCAtBU,uBAAuB;IADnC,IAAA,uBAAQ,EAAC,kCAAe,CAAC;GACb,uBAAuB,CAuBnC","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,18 @@
|
|
|
1
|
+
import { Role, User } from '@things-factory/auth-base';
|
|
2
|
+
import { Domain, ListParam } from '@things-factory/shell';
|
|
3
|
+
import { ProcessThread } from '../process-thread/process-thread';
|
|
4
|
+
import { Process } from '../process/process';
|
|
5
|
+
import { ProcessInstance } from './process-instance';
|
|
6
|
+
import { ProcessInstanceList } from './process-instance-type';
|
|
7
|
+
export declare class ProcessInstanceQuery {
|
|
8
|
+
processInstance(id: string, context: ResolverContext): Promise<ProcessInstance>;
|
|
9
|
+
processInstances(params: ListParam, context: ResolverContext): Promise<ProcessInstanceList>;
|
|
10
|
+
processInstancesByProcess(processId: string, params: ListParam, context: ResolverContext): Promise<ProcessInstanceList>;
|
|
11
|
+
process(processInstance: ProcessInstance): Promise<Process>;
|
|
12
|
+
processThreads(processInstance: ProcessInstance, context: ResolverContext): Promise<ProcessThread[]>;
|
|
13
|
+
supervisoryRole(processInstance: ProcessInstance): Promise<Role>;
|
|
14
|
+
thumbnail(processInstance: ProcessInstance): Promise<string | undefined>;
|
|
15
|
+
domain(processInstance: ProcessInstance): Promise<Domain>;
|
|
16
|
+
updater(processInstance: ProcessInstance): Promise<User>;
|
|
17
|
+
creator(processInstance: ProcessInstance): Promise<User>;
|
|
18
|
+
}
|
|
@@ -91,6 +91,7 @@ let ProcessInstanceQuery = class ProcessInstanceQuery {
|
|
|
91
91
|
return processInstance.creatorId && (await (0, shell_1.getRepository)(auth_base_1.User).findOneBy({ id: processInstance.creatorId }));
|
|
92
92
|
}
|
|
93
93
|
};
|
|
94
|
+
exports.ProcessInstanceQuery = ProcessInstanceQuery;
|
|
94
95
|
tslib_1.__decorate([
|
|
95
96
|
(0, type_graphql_1.Directive)('@privilege(category: "process-instance", privilege: "query", domainOwnerGranted: true)'),
|
|
96
97
|
(0, type_graphql_1.Query)(returns => process_instance_1.ProcessInstance, { nullable: true, description: 'To fetch a ProcessInstance' }),
|
|
@@ -169,8 +170,7 @@ tslib_1.__decorate([
|
|
|
169
170
|
tslib_1.__metadata("design:paramtypes", [process_instance_1.ProcessInstance]),
|
|
170
171
|
tslib_1.__metadata("design:returntype", Promise)
|
|
171
172
|
], ProcessInstanceQuery.prototype, "creator", null);
|
|
172
|
-
ProcessInstanceQuery = tslib_1.__decorate([
|
|
173
|
+
exports.ProcessInstanceQuery = ProcessInstanceQuery = tslib_1.__decorate([
|
|
173
174
|
(0, type_graphql_1.Resolver)(process_instance_1.ProcessInstance)
|
|
174
175
|
], ProcessInstanceQuery);
|
|
175
|
-
exports.ProcessInstanceQuery = ProcessInstanceQuery;
|
|
176
176
|
//# sourceMappingURL=process-instance-query.js.map
|
|
@@ -1 +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.updaterId && (await getRepository(User).findOneBy({ id: processInstance.updaterId }))\n }\n\n @FieldResolver(type => User)\n async creator(@Root() processInstance: ProcessInstance): Promise<User> {\n return processInstance.creatorId && (await getRepository(User).findOneBy({ id: processInstance.creatorId }))\n }\n}\n"]}
|
|
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.updaterId && (await getRepository(User).findOneBy({ id: processInstance.updaterId }))\n }\n\n @FieldResolver(type => User)\n async creator(@Root() processInstance: ProcessInstance): Promise<User> {\n return processInstance.creatorId && (await getRepository(User).findOneBy({ id: processInstance.creatorId }))\n }\n}\n"]}
|