@things-factory/worklist 6.0.27 → 6.0.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (183) hide show
  1. package/client/bootstrap.ts +9 -1
  2. package/client/components/activity-starter-form.ts +35 -10
  3. package/client/grist-editor/grist-editor-activity-search-key.ts +79 -0
  4. package/client/grist-editor/popup-activity-search-keys-input.ts +167 -0
  5. package/client/pages/activity/activity-list-page.ts +74 -11
  6. package/client/pages/activity/activity-partial-view.ts +82 -0
  7. package/client/pages/activity/starter-list-page.ts +1 -0
  8. package/client/pages/activity-instance/activity-instance-search-page.ts +377 -0
  9. package/client/pages/activity-instance/activity-instance-view.ts +135 -0
  10. package/client/pages/activity-store/activity-store-page.ts +1 -1
  11. package/client/pages/activity-template/activity-template-list-page.ts +1 -1
  12. package/client/pages/activity-thread/activity-thread-page.ts +8 -3
  13. package/client/pages/activity-thread/activity-thread-view.ts +102 -0
  14. package/client/pages/installable-activity/installable-activity-list-page.ts +1 -1
  15. package/client/pages/todo/approval-waiting-list-page.ts +12 -2
  16. package/client/pages/todo/draft-list-page.ts +13 -2
  17. package/client/pages/todo/todo-list-page.ts +14 -3
  18. package/client/route.ts +4 -0
  19. package/client/types/activity-instance-type.ts +123 -0
  20. package/client/types/activity-instance.ts +124 -0
  21. package/client/types/activity-model-type.ts +40 -0
  22. package/client/types/activity-search-key-item-type.ts +9 -0
  23. package/client/types/activity-thread-type.ts +19 -0
  24. package/client/types/activity-thread.ts +88 -0
  25. package/client/types/activity.ts +97 -0
  26. package/client/{types.js → types/types.ts} +0 -9
  27. package/dist-client/bootstrap.js +4 -1
  28. package/dist-client/bootstrap.js.map +1 -1
  29. package/dist-client/components/activity-starter-form.d.ts +1 -1
  30. package/dist-client/components/activity-starter-form.js +34 -9
  31. package/dist-client/components/activity-starter-form.js.map +1 -1
  32. package/dist-client/grist-editor/grist-editor-activity-search-key.d.ts +12 -0
  33. package/dist-client/grist-editor/grist-editor-activity-search-key.js +70 -0
  34. package/dist-client/grist-editor/grist-editor-activity-search-key.js.map +1 -0
  35. package/dist-client/grist-editor/popup-activity-search-keys-input.d.ts +17 -0
  36. package/dist-client/grist-editor/popup-activity-search-keys-input.js +177 -0
  37. package/dist-client/grist-editor/popup-activity-search-keys-input.js.map +1 -0
  38. package/dist-client/pages/activity/activity-list-page.d.ts +4 -0
  39. package/dist-client/pages/activity/activity-list-page.js +73 -11
  40. package/dist-client/pages/activity/activity-list-page.js.map +1 -1
  41. package/dist-client/pages/activity/activity-partial-view.d.ts +13 -0
  42. package/dist-client/pages/activity/activity-partial-view.js +56 -0
  43. package/dist-client/pages/activity/activity-partial-view.js.map +1 -0
  44. package/dist-client/pages/activity/starter-list-page.js.map +1 -1
  45. package/dist-client/pages/activity-instance/activity-instance-search-page.d.ts +76 -0
  46. package/dist-client/pages/activity-instance/activity-instance-search-page.js +371 -0
  47. package/dist-client/pages/activity-instance/activity-instance-search-page.js.map +1 -0
  48. package/dist-client/pages/activity-instance/activity-instance-view.d.ts +14 -0
  49. package/dist-client/pages/activity-instance/activity-instance-view.js +130 -0
  50. package/dist-client/pages/activity-instance/activity-instance-view.js.map +1 -0
  51. package/dist-client/pages/activity-store/activity-store-page.js +1 -1
  52. package/dist-client/pages/activity-store/activity-store-page.js.map +1 -1
  53. package/dist-client/pages/activity-template/activity-template-list-page.js +1 -1
  54. package/dist-client/pages/activity-template/activity-template-list-page.js.map +1 -1
  55. package/dist-client/pages/activity-thread/activity-thread-page.js +8 -3
  56. package/dist-client/pages/activity-thread/activity-thread-page.js.map +1 -1
  57. package/dist-client/pages/activity-thread/activity-thread-view.d.ts +11 -0
  58. package/dist-client/pages/activity-thread/activity-thread-view.js +103 -0
  59. package/dist-client/pages/activity-thread/activity-thread-view.js.map +1 -0
  60. package/dist-client/pages/installable-activity/installable-activity-list-page.js +1 -1
  61. package/dist-client/pages/installable-activity/installable-activity-list-page.js.map +1 -1
  62. package/dist-client/pages/todo/approval-waiting-list-page.js +12 -2
  63. package/dist-client/pages/todo/approval-waiting-list-page.js.map +1 -1
  64. package/dist-client/pages/todo/draft-list-page.js +12 -2
  65. package/dist-client/pages/todo/draft-list-page.js.map +1 -1
  66. package/dist-client/pages/todo/todo-list-page.js +13 -3
  67. package/dist-client/pages/todo/todo-list-page.js.map +1 -1
  68. package/dist-client/route.d.ts +1 -1
  69. package/dist-client/route.js +3 -0
  70. package/dist-client/route.js.map +1 -1
  71. package/dist-client/tsconfig.tsbuildinfo +1 -1
  72. package/dist-client/types/activity-instance-type.d.ts +76 -0
  73. package/dist-client/types/activity-instance-type.js +11 -0
  74. package/dist-client/types/activity-instance-type.js.map +1 -0
  75. package/dist-client/types/activity-instance.d.ts +70 -0
  76. package/dist-client/types/activity-instance.js +36 -0
  77. package/dist-client/types/activity-instance.js.map +1 -0
  78. package/dist-client/types/activity-model-type.d.ts +31 -0
  79. package/dist-client/types/activity-model-type.js +18 -0
  80. package/dist-client/types/activity-model-type.js.map +1 -0
  81. package/dist-client/types/activity-search-key-item-type.d.ts +6 -0
  82. package/dist-client/types/activity-search-key-item-type.js +3 -0
  83. package/dist-client/types/activity-search-key-item-type.js.map +1 -0
  84. package/dist-client/types/activity-thread-type.d.ts +15 -0
  85. package/dist-client/types/activity-thread-type.js +7 -0
  86. package/dist-client/types/activity-thread-type.js.map +1 -0
  87. package/dist-client/types/activity-thread.d.ts +37 -0
  88. package/dist-client/types/activity-thread.js +51 -0
  89. package/dist-client/types/activity-thread.js.map +1 -0
  90. package/dist-client/types/activity.d.ts +62 -0
  91. package/dist-client/types/activity.js +35 -0
  92. package/dist-client/types/activity.js.map +1 -0
  93. package/dist-client/types/types.d.ts +15 -0
  94. package/dist-client/types/types.js +30 -0
  95. package/dist-client/types/types.js.map +1 -0
  96. package/dist-server/controllers/activity-approval/approve.js +2 -0
  97. package/dist-server/controllers/activity-approval/approve.js.map +1 -1
  98. package/dist-server/controllers/activity-approval/reject.js +2 -0
  99. package/dist-server/controllers/activity-approval/reject.js.map +1 -1
  100. package/dist-server/controllers/activity-extension-controller.js +11 -0
  101. package/dist-server/controllers/activity-extension-controller.js.map +1 -0
  102. package/dist-server/controllers/activity-installation/activity-installation-controller.js +25 -0
  103. package/dist-server/controllers/activity-installation/activity-installation-controller.js.map +1 -0
  104. package/dist-server/controllers/activity-installation/call-webhook.js +41 -0
  105. package/dist-server/controllers/activity-installation/call-webhook.js.map +1 -0
  106. package/dist-server/controllers/activity-installation/callback-registry.js +21 -0
  107. package/dist-server/controllers/activity-installation/callback-registry.js.map +1 -0
  108. package/dist-server/controllers/activity-instance/abort.js +1 -1
  109. package/dist-server/controllers/activity-instance/abort.js.map +1 -1
  110. package/dist-server/controllers/activity-instance/adjust.js +1 -1
  111. package/dist-server/controllers/activity-instance/adjust.js.map +1 -1
  112. package/dist-server/controllers/activity-instance/delegate.js +5 -0
  113. package/dist-server/controllers/activity-instance/delegate.js.map +1 -1
  114. package/dist-server/controllers/activity-instance/draft.js +11 -1
  115. package/dist-server/controllers/activity-instance/draft.js.map +1 -1
  116. package/dist-server/controllers/activity-instance/post.js +38 -3
  117. package/dist-server/controllers/activity-instance/post.js.map +1 -1
  118. package/dist-server/controllers/activity-instance/start.js +1 -1
  119. package/dist-server/controllers/activity-instance/start.js.map +1 -1
  120. package/dist-server/controllers/activity-thread/submit.js +1 -1
  121. package/dist-server/controllers/activity-thread/submit.js.map +1 -1
  122. package/dist-server/controllers/common.js +61 -22
  123. package/dist-server/controllers/common.js.map +1 -1
  124. package/dist-server/controllers/index.js +1 -1
  125. package/dist-server/controllers/index.js.map +1 -1
  126. package/dist-server/service/activity/activity-history.js +15 -0
  127. package/dist-server/service/activity/activity-history.js.map +1 -1
  128. package/dist-server/service/activity/activity-search-key-item-type.js +28 -0
  129. package/dist-server/service/activity/activity-search-key-item-type.js.map +1 -0
  130. package/dist-server/service/activity/activity-type.js +32 -0
  131. package/dist-server/service/activity/activity-type.js.map +1 -1
  132. package/dist-server/service/activity/activity.js +23 -2
  133. package/dist-server/service/activity/activity.js.map +1 -1
  134. package/dist-server/service/activity-approval/event-subscriber.js +1 -1
  135. package/dist-server/service/activity-approval/event-subscriber.js.map +1 -1
  136. package/dist-server/service/activity-instance/activity-instance-history.js +53 -0
  137. package/dist-server/service/activity-instance/activity-instance-history.js.map +1 -1
  138. package/dist-server/service/activity-instance/activity-instance-query.js +29 -0
  139. package/dist-server/service/activity-instance/activity-instance-query.js.map +1 -1
  140. package/dist-server/service/activity-instance/activity-instance.js +53 -0
  141. package/dist-server/service/activity-instance/activity-instance.js.map +1 -1
  142. package/dist-server/service/activity-instance/event-subscriber.js +4 -4
  143. package/dist-server/service/activity-instance/event-subscriber.js.map +1 -1
  144. package/dist-server/service/activity-thread/activity-thread.js +4 -1
  145. package/dist-server/service/activity-thread/activity-thread.js.map +1 -1
  146. package/dist-server/service/installable-activity/installable-activity-mutation.js +1 -1
  147. package/dist-server/service/installable-activity/installable-activity-mutation.js.map +1 -1
  148. package/dist-server/service/installable-activity/installable-activity-query.js +1 -1
  149. package/dist-server/service/installable-activity/installable-activity-query.js.map +1 -1
  150. package/dist-server/service/installable-activity/installable-activity.js.map +1 -1
  151. package/dist-server/tsconfig.tsbuildinfo +1 -1
  152. package/package.json +8 -8
  153. package/server/controllers/activity-approval/approve.ts +3 -0
  154. package/server/controllers/activity-approval/reject.ts +3 -0
  155. package/server/controllers/{activity-installation-controller.ts → activity-installation/activity-installation-controller.ts} +12 -1
  156. package/server/controllers/activity-instance/abort.ts +1 -1
  157. package/server/controllers/activity-instance/adjust.ts +1 -1
  158. package/server/controllers/activity-instance/delegate.ts +9 -1
  159. package/server/controllers/activity-instance/draft.ts +12 -3
  160. package/server/controllers/activity-instance/post.ts +54 -6
  161. package/server/controllers/activity-instance/start.ts +1 -1
  162. package/server/controllers/activity-thread/submit.ts +1 -0
  163. package/server/controllers/common.ts +85 -28
  164. package/server/controllers/index.ts +1 -1
  165. package/server/service/activity/activity-history.ts +13 -0
  166. package/server/service/activity/activity-search-key-item-type.ts +16 -0
  167. package/server/service/activity/activity-type.ts +28 -1
  168. package/server/service/activity/activity.ts +20 -2
  169. package/server/service/activity-approval/event-subscriber.ts +1 -1
  170. package/server/service/activity-instance/activity-instance-history.ts +41 -0
  171. package/server/service/activity-instance/activity-instance-query.ts +30 -1
  172. package/server/service/activity-instance/activity-instance.ts +41 -0
  173. package/server/service/activity-instance/event-subscriber.ts +4 -4
  174. package/server/service/activity-thread/activity-thread.ts +6 -3
  175. package/server/service/installable-activity/installable-activity-mutation.ts +1 -1
  176. package/server/service/installable-activity/installable-activity-query.ts +1 -1
  177. package/server/service/installable-activity/installable-activity.ts +3 -1
  178. package/things-factory.config.js +4 -1
  179. package/translations/en.json +4 -0
  180. package/translations/ko.json +4 -0
  181. package/translations/ms.json +4 -0
  182. package/translations/zh.json +4 -0
  183. /package/server/controllers/{call-webhook.ts → activity-installation/call-webhook.ts} +0 -0
@@ -28,6 +28,22 @@ let ActivityInstanceQuery = class ActivityInstanceQuery {
28
28
  }).getManyAndCount();
29
29
  return { items, total };
30
30
  }
31
+ async activityInstancesByActivity(activityId, params, context) {
32
+ var _a;
33
+ const { domain } = context.state;
34
+ const activity = await (0, shell_1.getRepository)(activity_1.Activity).findOneBy({ id: activityId });
35
+ const searchables = ((_a = activity === null || activity === void 0 ? void 0 : activity.searchKeys) === null || _a === void 0 ? void 0 : _a.map((item, index) => `key0${index + 1}`)) || [];
36
+ const queryBuilder = (0, shell_1.getQueryBuilderFromListParams)({
37
+ repository: (0, shell_1.getRepository)(activity_instance_1.ActivityInstance),
38
+ params,
39
+ domain,
40
+ alias: 'ai',
41
+ searchables: ['name', 'description'].concat(searchables)
42
+ }).where('ai.activity = :activity', { activity: activityId });
43
+ const [items, total] = await queryBuilder.getManyAndCount();
44
+ return { items, total };
45
+ }
46
+ // @Directive('@privilege(category: "activity-instance", privilege: "query", domainOwnerGranted: true)')
31
47
  async pickableActivityList(params, context) {
32
48
  var { domain, user } = context.state;
33
49
  /*
@@ -61,6 +77,7 @@ let ActivityInstanceQuery = class ActivityInstanceQuery {
61
77
  .getManyAndCount();
62
78
  return { items, total };
63
79
  }
80
+ // @Directive('@privilege(category: "activity-instance", privilege: "query", domainOwnerGranted: true)')
64
81
  async draftList(params, context) {
65
82
  var { domain, user } = context.state;
66
83
  /* 생성자가 자신이면서, 아직 Draft 상태인 activity-instance 리스트만 반환 */
@@ -204,6 +221,7 @@ let ActivityInstanceQuery = class ActivityInstanceQuery {
204
221
  }
205
222
  };
206
223
  tslib_1.__decorate([
224
+ (0, type_graphql_1.Directive)('@privilege(category: "activity-instance", privilege: "query", domainOwnerGranted: true)'),
207
225
  (0, type_graphql_1.Query)(returns => activity_instance_1.ActivityInstance, { nullable: true, description: 'To fetch a ActivityInstance' }),
208
226
  tslib_1.__param(0, (0, type_graphql_1.Arg)('id')),
209
227
  tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
@@ -212,6 +230,7 @@ tslib_1.__decorate([
212
230
  tslib_1.__metadata("design:returntype", Promise)
213
231
  ], ActivityInstanceQuery.prototype, "activityInstance", null);
214
232
  tslib_1.__decorate([
233
+ (0, type_graphql_1.Directive)('@privilege(category: "activity-instance", privilege: "query", domainOwnerGranted: true)'),
215
234
  (0, type_graphql_1.Query)(returns => activity_instance_type_1.ActivityInstanceList, { description: 'To fetch multiple ActivityInstances' }),
216
235
  tslib_1.__param(0, (0, type_graphql_1.Args)()),
217
236
  tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
@@ -219,6 +238,16 @@ tslib_1.__decorate([
219
238
  tslib_1.__metadata("design:paramtypes", [shell_1.ListParam, Object]),
220
239
  tslib_1.__metadata("design:returntype", Promise)
221
240
  ], ActivityInstanceQuery.prototype, "activityInstances", null);
241
+ tslib_1.__decorate([
242
+ (0, type_graphql_1.Directive)('@privilege(category: "activity-instance", privilege: "query", domainOwnerGranted: true)'),
243
+ (0, type_graphql_1.Query)(returns => activity_instance_type_1.ActivityInstanceList, { description: 'To fetch multiple activity instances by activity' }),
244
+ tslib_1.__param(0, (0, type_graphql_1.Arg)('activityId')),
245
+ tslib_1.__param(1, (0, type_graphql_1.Args)()),
246
+ tslib_1.__param(2, (0, type_graphql_1.Ctx)()),
247
+ tslib_1.__metadata("design:type", Function),
248
+ tslib_1.__metadata("design:paramtypes", [String, shell_1.ListParam, Object]),
249
+ tslib_1.__metadata("design:returntype", Promise)
250
+ ], ActivityInstanceQuery.prototype, "activityInstancesByActivity", null);
222
251
  tslib_1.__decorate([
223
252
  (0, type_graphql_1.Query)(returns => activity_instance_type_1.ActivityInstanceList, { description: 'To get list of activity instance that a user can pick' }),
224
253
  tslib_1.__param(0, (0, type_graphql_1.Args)()),
@@ -1 +1 @@
1
- {"version":3,"file":"activity-instance-query.js","sourceRoot":"","sources":["../../../server/service/activity-instance/activity-instance-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Args, Ctx, 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 { ActivityThread } from '../activity-thread/activity-thread'\nimport { Activity } from '../activity/activity'\nimport { ActivityInstance, ActivityInstanceStatus, AssigneeItem } from './activity-instance'\nimport { ActivityInstanceList } from './activity-instance-type'\nimport { ApprovalLineItem } from '@things-factory/organization'\n\n@Resolver(ActivityInstance)\nexport class ActivityInstanceQuery {\n @Query(returns => ActivityInstance!, { nullable: true, description: 'To fetch a ActivityInstance' })\n async activityInstance(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<ActivityInstance> {\n const { domain } = context.state\n\n return await getRepository(ActivityInstance).findOne({\n where: { domain: { id: domain.id }, id }\n })\n }\n\n @Query(returns => ActivityInstanceList, { description: 'To fetch multiple ActivityInstances' })\n async activityInstances(@Args() params: ListParam, @Ctx() context: ResolverContext): Promise<ActivityInstanceList> {\n const { domain } = context.state\n\n const [items, total] = await getQueryBuilderFromListParams({\n domain,\n params,\n repository: getRepository(ActivityInstance),\n searchables: ['name', 'description']\n }).getManyAndCount()\n\n return { items, total }\n }\n\n @Query(returns => ActivityInstanceList, { description: 'To get list of activity instance that a user can pick' })\n async pickableActivityList(\n @Args() params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<ActivityInstanceList> {\n var { domain, user } = context.state\n\n /* \n activity-instance 중에서 아직 created 상태이면서, \n activity-instance의 assigneeRole 이 지정되지 않았거나,\n assigneeRole이 지정되었으면 그 Role에 내가 해당된 경우이면서,\n 나는 아직 해당 activity-instance의 thread를 할당받지 않은 경우에 해당하는\n activity-instance 리스트를 모두 가져오는 쿼리이다.\n */\n\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(ActivityInstance),\n params,\n domain,\n alias: 'ai',\n searchables: ['name', 'description']\n })\n .leftJoinAndSelect('ai.activityThreads', 'threads', 'threads.assignee = :user', { user: user.id })\n .andWhere('ai.state IN (:...status)', {\n status: [ActivityInstanceStatus.Posted, ActivityInstanceStatus.WaitingAssignment]\n })\n .andWhere('ai.assigneeRole IN (:...roles)', { roles })\n .andWhere('threads.id IS NULL') /* 이미 내가 할당된 경우는 제외한다. */\n .getManyAndCount()\n\n return { items, total }\n }\n\n @Query(returns => ActivityInstanceList, { description: 'To fetch my own ActivityInstances' })\n async draftList(@Args() params: ListParam, @Ctx() context: ResolverContext): Promise<ActivityInstanceList> {\n var { domain, user } = context.state\n\n /* 생성자가 자신이면서, 아직 Draft 상태인 activity-instance 리스트만 반환 */\n const status = [ActivityInstanceStatus.Draft]\n\n const [items, total] = await getQueryBuilderFromListParams({\n repository: getRepository(ActivityInstance),\n params,\n domain,\n alias: 'ai',\n searchables: ['name', 'description']\n })\n .andWhere('ai.state IN (:...status)', { status })\n .andWhere('ai.creator = :user', { user: user.id })\n .getManyAndCount()\n\n return { items, total }\n }\n\n @FieldResolver(type => Activity)\n async activity(@Root() activityInstance: ActivityInstance): Promise<Activity> {\n const { adhocType, activityId } = activityInstance\n\n if (adhocType !== 'standard') {\n return null\n }\n\n return await getRepository(Activity).findOneBy({ id: activityId })\n }\n\n @FieldResolver(type => [ActivityThread])\n async activityThreads(\n @Root() activityInstance: ActivityInstance,\n @Ctx() context: ResolverContext\n ): Promise<ActivityThread[]> {\n const { user } = context.state\n const { supervisoryRoleId } = activityInstance\n\n if (supervisoryRoleId) {\n /* only user having supervisoryRole can get whole activityThreads */\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 await getRepository(ActivityThread).findBy({\n activityInstance: { id: activityInstance.id },\n assignee: { id: user.id }\n })\n }\n }\n\n return await getRepository(ActivityThread).findBy({\n activityInstance: { id: activityInstance.id }\n })\n }\n\n @FieldResolver(type => Role)\n async assigneeRole(@Root() activityInstance: ActivityInstance): Promise<Role> {\n return (\n activityInstance.assigneeRole ||\n (activityInstance.assigneeRoleId &&\n (await getRepository(Role).findOneBy({\n id: activityInstance.assigneeRoleId\n })))\n )\n }\n\n @FieldResolver(type => [AssigneeItem])\n async assignees(\n @Root() activityInstance: ActivityInstance,\n @Ctx() context: ResolverContext\n ): Promise<AssigneeItem[]> {\n const { domain, user } = context.state\n const { assignees } = activityInstance\n\n if (!assignees || !(assignees instanceof Array)) {\n return null\n }\n\n var assigneeItemList = []\n\n for (let item of assignees) {\n var { type, value: id } = item\n var assignee\n\n switch (type) {\n case 'Employee':\n assignee = await getRepository('Employee').findOneBy({ domain: { id: domain.id }, id })\n break\n case 'Department':\n assignee = await getRepository('Department').findOneBy({ domain: { id: domain.id }, id })\n break\n case 'Role':\n assignee = await getRepository('Role').findOneBy({ domain: { id: domain.id }, id })\n break\n case 'Myself':\n assignee = user\n break\n case 'MyDepartment':\n case 'MySupervisor':\n break\n default:\n }\n\n assignee && assigneeItemList.push({ type, value: id, assignee })\n }\n\n return assigneeItemList\n }\n\n @FieldResolver(type => [ApprovalLineItem])\n async approvalLine(\n @Root() activityInstance: ActivityInstance,\n @Ctx() context: ResolverContext\n ): Promise<ApprovalLineItem[]> {\n const { domain, user } = context.state\n const { approvalLine } = activityInstance\n\n if (!approvalLine || !(approvalLine instanceof Array)) {\n return null\n }\n\n var approvalLineItems = []\n\n for (let item of approvalLine) {\n var { type, value: id } = item\n var approver\n\n switch (type) {\n case 'Employee':\n approver = await getRepository('Employee').findOneBy({ domain: { id: domain.id }, id })\n break\n case 'Department':\n approver = await getRepository('Department').findOneBy({ domain: { id: domain.id }, id })\n break\n case 'Role':\n approver = await getRepository('Role').findOneBy({ domain: { id: domain.id }, id })\n break\n case 'Myself':\n approver = user\n break\n case 'MyDepartment':\n case 'MySupervisor':\n break\n default:\n }\n\n approver && approvalLineItems.push({ type, value: id, approver })\n }\n\n return approvalLineItems\n }\n\n @FieldResolver(type => Role)\n async supervisoryRole(@Root() activityInstance: ActivityInstance): Promise<Role> {\n return (\n activityInstance.supervisoryRole ||\n (activityInstance.supervisoryRoleId &&\n (await getRepository(Role).findOneBy({\n id: activityInstance.supervisoryRoleId\n })))\n )\n }\n\n @FieldResolver(type => String)\n async thumbnail(@Root() activityInstance: ActivityInstance): Promise<string | undefined> {\n const { activityId } = activityInstance\n const attachment: Attachment =\n activityId &&\n (await getRepository(Attachment).findOne({\n where: {\n domain: { id: activityInstance.domainId },\n refBy: activityId\n }\n }))\n\n return attachment?.fullpath\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() activityInstance: ActivityInstance): Promise<Domain> {\n return await getRepository(Domain).findOneBy({ id: activityInstance.domainId })\n }\n\n @FieldResolver(type => User)\n async updater(@Root() activityInstance: ActivityInstance): Promise<User> {\n return await getRepository(User).findOneBy({ id: activityInstance.updaterId })\n }\n\n @FieldResolver(type => User)\n async creator(@Root() activityInstance: ActivityInstance): Promise<User> {\n return await getRepository(User).findOneBy({ id: activityInstance.creatorId })\n }\n}\n"]}
1
+ {"version":3,"file":"activity-instance-query.js","sourceRoot":"","sources":["../../../server/service/activity-instance/activity-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 { ActivityThread } from '../activity-thread/activity-thread'\nimport { Activity } from '../activity/activity'\nimport { ActivityInstance, ActivityInstanceStatus, AssigneeItem } from './activity-instance'\nimport { ActivityInstanceList } from './activity-instance-type'\nimport { ApprovalLineItem } from '@things-factory/organization'\n\n@Resolver(ActivityInstance)\nexport class ActivityInstanceQuery {\n @Directive('@privilege(category: \"activity-instance\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => ActivityInstance!, { nullable: true, description: 'To fetch a ActivityInstance' })\n async activityInstance(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<ActivityInstance> {\n const { domain } = context.state\n\n return await getRepository(ActivityInstance).findOne({\n where: { domain: { id: domain.id }, id }\n })\n }\n\n @Directive('@privilege(category: \"activity-instance\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => ActivityInstanceList, { description: 'To fetch multiple ActivityInstances' })\n async activityInstances(@Args() params: ListParam, @Ctx() context: ResolverContext): Promise<ActivityInstanceList> {\n const { domain } = context.state\n\n const [items, total] = await getQueryBuilderFromListParams({\n domain,\n params,\n repository: getRepository(ActivityInstance),\n searchables: ['name', 'description']\n }).getManyAndCount()\n\n return { items, total }\n }\n\n @Directive('@privilege(category: \"activity-instance\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => ActivityInstanceList, { description: 'To fetch multiple activity instances by activity' })\n async activityInstancesByActivity(\n @Arg('activityId') activityId: string,\n @Args() params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<ActivityInstanceList> {\n const { domain } = context.state\n\n const activity = await getRepository(Activity).findOneBy({ id: activityId })\n const searchables = activity?.searchKeys?.map((item, index) => `key0${index + 1}`) || []\n\n const queryBuilder = getQueryBuilderFromListParams({\n repository: getRepository(ActivityInstance),\n params,\n domain,\n alias: 'ai',\n searchables: ['name', 'description'].concat(searchables)\n }).where('ai.activity = :activity', { activity: activityId })\n\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n // @Directive('@privilege(category: \"activity-instance\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => ActivityInstanceList, { description: 'To get list of activity instance that a user can pick' })\n async pickableActivityList(\n @Args() params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<ActivityInstanceList> {\n var { domain, user } = context.state\n\n /* \n activity-instance 중에서 아직 created 상태이면서, \n activity-instance의 assigneeRole 이 지정되지 않았거나,\n assigneeRole이 지정되었으면 그 Role에 내가 해당된 경우이면서,\n 나는 아직 해당 activity-instance의 thread를 할당받지 않은 경우에 해당하는\n activity-instance 리스트를 모두 가져오는 쿼리이다.\n */\n\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(ActivityInstance),\n params,\n domain,\n alias: 'ai',\n searchables: ['name', 'description']\n })\n .leftJoinAndSelect('ai.activityThreads', 'threads', 'threads.assignee = :user', { user: user.id })\n .andWhere('ai.state IN (:...status)', {\n status: [ActivityInstanceStatus.Posted, ActivityInstanceStatus.WaitingAssignment]\n })\n .andWhere('ai.assigneeRole IN (:...roles)', { roles })\n .andWhere('threads.id IS NULL') /* 이미 내가 할당된 경우는 제외한다. */\n .getManyAndCount()\n\n return { items, total }\n }\n\n // @Directive('@privilege(category: \"activity-instance\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => ActivityInstanceList, { description: 'To fetch my own ActivityInstances' })\n async draftList(@Args() params: ListParam, @Ctx() context: ResolverContext): Promise<ActivityInstanceList> {\n var { domain, user } = context.state\n\n /* 생성자가 자신이면서, 아직 Draft 상태인 activity-instance 리스트만 반환 */\n const status = [ActivityInstanceStatus.Draft]\n\n const [items, total] = await getQueryBuilderFromListParams({\n repository: getRepository(ActivityInstance),\n params,\n domain,\n alias: 'ai',\n searchables: ['name', 'description']\n })\n .andWhere('ai.state IN (:...status)', { status })\n .andWhere('ai.creator = :user', { user: user.id })\n .getManyAndCount()\n\n return { items, total }\n }\n\n @FieldResolver(type => Activity)\n async activity(@Root() activityInstance: ActivityInstance): Promise<Activity> {\n const { adhocType, activityId } = activityInstance\n\n if (adhocType !== 'standard') {\n return null\n }\n\n return await getRepository(Activity).findOneBy({ id: activityId })\n }\n\n @FieldResolver(type => [ActivityThread])\n async activityThreads(\n @Root() activityInstance: ActivityInstance,\n @Ctx() context: ResolverContext\n ): Promise<ActivityThread[]> {\n const { user } = context.state\n const { supervisoryRoleId } = activityInstance\n\n if (supervisoryRoleId) {\n /* only user having supervisoryRole can get whole activityThreads */\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 await getRepository(ActivityThread).findBy({\n activityInstance: { id: activityInstance.id },\n assignee: { id: user.id }\n })\n }\n }\n\n return await getRepository(ActivityThread).findBy({\n activityInstance: { id: activityInstance.id }\n })\n }\n\n @FieldResolver(type => Role)\n async assigneeRole(@Root() activityInstance: ActivityInstance): Promise<Role> {\n return (\n activityInstance.assigneeRole ||\n (activityInstance.assigneeRoleId &&\n (await getRepository(Role).findOneBy({\n id: activityInstance.assigneeRoleId\n })))\n )\n }\n\n @FieldResolver(type => [AssigneeItem])\n async assignees(\n @Root() activityInstance: ActivityInstance,\n @Ctx() context: ResolverContext\n ): Promise<AssigneeItem[]> {\n const { domain, user } = context.state\n const { assignees } = activityInstance\n\n if (!assignees || !(assignees instanceof Array)) {\n return null\n }\n\n var assigneeItemList = []\n\n for (let item of assignees) {\n var { type, value: id } = item\n var assignee\n\n switch (type) {\n case 'Employee':\n assignee = await getRepository('Employee').findOneBy({ domain: { id: domain.id }, id })\n break\n case 'Department':\n assignee = await getRepository('Department').findOneBy({ domain: { id: domain.id }, id })\n break\n case 'Role':\n assignee = await getRepository('Role').findOneBy({ domain: { id: domain.id }, id })\n break\n case 'Myself':\n assignee = user\n break\n case 'MyDepartment':\n case 'MySupervisor':\n break\n default:\n }\n\n assignee && assigneeItemList.push({ type, value: id, assignee })\n }\n\n return assigneeItemList\n }\n\n @FieldResolver(type => [ApprovalLineItem])\n async approvalLine(\n @Root() activityInstance: ActivityInstance,\n @Ctx() context: ResolverContext\n ): Promise<ApprovalLineItem[]> {\n const { domain, user } = context.state\n const { approvalLine } = activityInstance\n\n if (!approvalLine || !(approvalLine instanceof Array)) {\n return null\n }\n\n var approvalLineItems = []\n\n for (let item of approvalLine) {\n var { type, value: id } = item\n var approver\n\n switch (type) {\n case 'Employee':\n approver = await getRepository('Employee').findOneBy({ domain: { id: domain.id }, id })\n break\n case 'Department':\n approver = await getRepository('Department').findOneBy({ domain: { id: domain.id }, id })\n break\n case 'Role':\n approver = await getRepository('Role').findOneBy({ domain: { id: domain.id }, id })\n break\n case 'Myself':\n approver = user\n break\n case 'MyDepartment':\n case 'MySupervisor':\n break\n default:\n }\n\n approver && approvalLineItems.push({ type, value: id, approver })\n }\n\n return approvalLineItems\n }\n\n @FieldResolver(type => Role)\n async supervisoryRole(@Root() activityInstance: ActivityInstance): Promise<Role> {\n return (\n activityInstance.supervisoryRole ||\n (activityInstance.supervisoryRoleId &&\n (await getRepository(Role).findOneBy({\n id: activityInstance.supervisoryRoleId\n })))\n )\n }\n\n @FieldResolver(type => String)\n async thumbnail(@Root() activityInstance: ActivityInstance): Promise<string | undefined> {\n const { activityId } = activityInstance\n const attachment: Attachment =\n activityId &&\n (await getRepository(Attachment).findOne({\n where: {\n domain: { id: activityInstance.domainId },\n refBy: activityId\n }\n }))\n\n return attachment?.fullpath\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() activityInstance: ActivityInstance): Promise<Domain> {\n return await getRepository(Domain).findOneBy({ id: activityInstance.domainId })\n }\n\n @FieldResolver(type => User)\n async updater(@Root() activityInstance: ActivityInstance): Promise<User> {\n return await getRepository(User).findOneBy({ id: activityInstance.updaterId })\n }\n\n @FieldResolver(type => User)\n async creator(@Root() activityInstance: ActivityInstance): Promise<User> {\n return await getRepository(User).findOneBy({ id: activityInstance.creatorId })\n }\n}\n"]}
@@ -46,10 +46,24 @@ exports.AssigneeItem = AssigneeItem;
46
46
  let ActivityInstance = class ActivityInstance {
47
47
  constructor() {
48
48
  this.version = 1;
49
+ this.key01 = '';
50
+ this.key02 = '';
51
+ this.key03 = '';
52
+ this.key04 = '';
53
+ this.key05 = '';
49
54
  this.priority = 1;
50
55
  this.threadsMin = 0;
51
56
  this.threadsMax = 0;
52
57
  }
58
+ isDelegatable() {
59
+ switch (this.state) {
60
+ case ActivityInstanceStatus.Posted:
61
+ case ActivityInstanceStatus.Assigned:
62
+ return true;
63
+ default:
64
+ return false;
65
+ }
66
+ }
53
67
  };
54
68
  tslib_1.__decorate([
55
69
  (0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
@@ -90,6 +104,31 @@ tslib_1.__decorate([
90
104
  (0, type_graphql_1.Field)({ nullable: true }),
91
105
  tslib_1.__metadata("design:type", String)
92
106
  ], ActivityInstance.prototype, "adhocType", void 0);
107
+ tslib_1.__decorate([
108
+ (0, typeorm_1.Column)({ nullable: true, default: '' }),
109
+ (0, type_graphql_1.Field)({ nullable: true }),
110
+ tslib_1.__metadata("design:type", String)
111
+ ], ActivityInstance.prototype, "key01", void 0);
112
+ tslib_1.__decorate([
113
+ (0, typeorm_1.Column)({ nullable: true, default: '' }),
114
+ (0, type_graphql_1.Field)({ nullable: true }),
115
+ tslib_1.__metadata("design:type", String)
116
+ ], ActivityInstance.prototype, "key02", void 0);
117
+ tslib_1.__decorate([
118
+ (0, typeorm_1.Column)({ nullable: true, default: '' }),
119
+ (0, type_graphql_1.Field)({ nullable: true }),
120
+ tslib_1.__metadata("design:type", String)
121
+ ], ActivityInstance.prototype, "key03", void 0);
122
+ tslib_1.__decorate([
123
+ (0, typeorm_1.Column)({ nullable: true, default: '' }),
124
+ (0, type_graphql_1.Field)({ nullable: true }),
125
+ tslib_1.__metadata("design:type", String)
126
+ ], ActivityInstance.prototype, "key04", void 0);
127
+ tslib_1.__decorate([
128
+ (0, typeorm_1.Column)({ nullable: true, default: '' }),
129
+ (0, type_graphql_1.Field)({ nullable: true }),
130
+ tslib_1.__metadata("design:type", String)
131
+ ], ActivityInstance.prototype, "key05", void 0);
93
132
  tslib_1.__decorate([
94
133
  (0, typeorm_1.OneToMany)(type => activity_thread_1.ActivityThread, activityThread => activityThread.activityInstance),
95
134
  (0, type_graphql_1.Field)(type => [activity_thread_1.ActivityThread]),
@@ -202,6 +241,11 @@ tslib_1.__decorate([
202
241
  (0, type_graphql_1.Field)({ nullable: true }),
203
242
  tslib_1.__metadata("design:type", Date)
204
243
  ], ActivityInstance.prototype, "updatedAt", void 0);
244
+ tslib_1.__decorate([
245
+ (0, typeorm_1.Column)({ nullable: true }),
246
+ (0, type_graphql_1.Field)({ nullable: true }),
247
+ tslib_1.__metadata("design:type", Date)
248
+ ], ActivityInstance.prototype, "issuedAt", void 0);
205
249
  tslib_1.__decorate([
206
250
  (0, typeorm_1.Column)({ nullable: true }),
207
251
  (0, type_graphql_1.Field)({ nullable: true }),
@@ -235,6 +279,15 @@ tslib_1.__decorate([
235
279
  (0, typeorm_1.RelationId)((activityInstance) => activityInstance.updater),
236
280
  tslib_1.__metadata("design:type", String)
237
281
  ], ActivityInstance.prototype, "updaterId", void 0);
282
+ tslib_1.__decorate([
283
+ (0, typeorm_1.ManyToOne)(type => auth_base_1.User, { nullable: true }),
284
+ (0, type_graphql_1.Field)({ nullable: true }),
285
+ tslib_1.__metadata("design:type", auth_base_1.User)
286
+ ], ActivityInstance.prototype, "issuer", void 0);
287
+ tslib_1.__decorate([
288
+ (0, typeorm_1.RelationId)((activityInstance) => activityInstance.issuer),
289
+ tslib_1.__metadata("design:type", String)
290
+ ], ActivityInstance.prototype, "issuerId", void 0);
238
291
  tslib_1.__decorate([
239
292
  (0, typeorm_1.ManyToOne)(type => auth_base_1.User, { nullable: true }),
240
293
  (0, type_graphql_1.Field)({ nullable: true }),
@@ -1 +1 @@
1
- {"version":3,"file":"activity-instance.js","sourceRoot":"","sources":["../../../server/service/activity-instance/activity-instance.ts"],"names":[],"mappings":"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","sourcesContent":["import { Field, ID, Int, ObjectType, registerEnumType } from 'type-graphql'\nimport {\n Column,\n CreateDateColumn,\n Entity,\n Index,\n ManyToOne,\n OneToMany,\n PrimaryGeneratedColumn,\n RelationId,\n UpdateDateColumn,\n VersionColumn\n} from 'typeorm'\n\nimport { Role, User } from '@things-factory/auth-base'\nimport { Domain, ScalarObject } from '@things-factory/shell'\nimport { OrgMemberTargetType, OrgMemberTarget, ApprovalLineItem } from '@things-factory/organization'\n\nimport { ActivityThread } from '../activity-thread/activity-thread'\nimport { Activity, ActivityType, ActivityUIType } from '../activity/activity'\n\nexport enum ActivityInstanceStatus {\n Draft = 'draft',\n Posted = 'posted',\n WaitingAssignment = 'waiting-assignment',\n Assigned = 'assigned',\n Started = 'started',\n Pending = 'pending',\n Ended = 'ended',\n Aborted = 'aborted'\n}\n\nregisterEnumType(ActivityInstanceStatus, {\n name: 'ActivityInstanceStatus',\n description: 'state enumeration of a activityInstance'\n})\n\n@ObjectType()\nexport class AssigneeItem {\n @Field(type => OrgMemberTargetType, { nullable: true })\n type?: OrgMemberTargetType\n\n @Field({ nullable: true })\n value?: string\n\n @Field(type => OrgMemberTarget, { nullable: true })\n assignee?: OrgMemberTarget\n}\n\n@Entity()\n@Index(\n 'ix_activity_instance_0',\n (activityInstance: ActivityInstance) => [activityInstance.domain, activityInstance.name],\n { unique: false }\n)\n@Index(\n 'ix_activity_instance_1',\n (activityInstance: ActivityInstance) => [activityInstance.domain, activityInstance.state, activityInstance.priority],\n { unique: false }\n)\n@ObjectType({ description: 'Entity for ActivityInstance' })\nexport class ActivityInstance {\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({ nullable: true })\n domain?: Domain\n\n @RelationId((activityInstance: ActivityInstance) => activityInstance.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 activityType?: ActivityType\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n adhocType?: string\n\n @OneToMany(type => ActivityThread, activityThread => activityThread.activityInstance)\n @Field(type => [ActivityThread])\n activityThreads?: ActivityThread[]\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n uiType?: ActivityUIType\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n uiSource?: string\n\n @Column({ nullable: true, default: 1 })\n @Field({ nullable: true })\n priority?: number = 1\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n state?: ActivityInstanceStatus\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n reason?: string\n\n @Column({ nullable: true, default: 0 })\n @Field(type => Int, { nullable: true })\n threadsMin?: number = 0\n\n @Column({ nullable: true, default: 0 })\n @Field(type => Int, { nullable: true })\n threadsMax?: number = 0\n\n @Column('simple-json', { nullable: true })\n @Field(type => ScalarObject, { nullable: true })\n input?: { [key: string]: any }\n\n @Column('simple-json', { nullable: true })\n @Field(type => ScalarObject, { nullable: true })\n output?: { [key: string]: any }\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n refBy?: string\n\n @ManyToOne(type => Activity, { nullable: true })\n @Field(type => Activity, { nullable: true })\n activity?: Activity\n\n @RelationId((activityInstance: ActivityInstance) => activityInstance.activity)\n activityId?: string\n\n @ManyToOne(type => Role, { nullable: true })\n @Field(type => Role, { nullable: true })\n assigneeRole?: Role\n\n @RelationId((activityInstance: ActivityInstance) => activityInstance.assigneeRole)\n assigneeRoleId?: string\n\n @ManyToOne(type => Role, { nullable: true })\n @Field(type => Role, { nullable: true })\n supervisoryRole?: Role\n\n @RelationId((activityInstance: ActivityInstance) => activityInstance.supervisoryRole)\n supervisoryRoleId?: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n dueAt?: Date\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n transaction?: string\n\n @Column('simple-json', { nullable: true })\n @Field(type => [AssigneeItem], { nullable: true })\n assignees?: AssigneeItem[]\n\n @Column('simple-json', { nullable: true })\n @Field(type => [ApprovalLineItem], { nullable: true })\n approvalLine?: ApprovalLineItem[]\n\n @CreateDateColumn()\n @Field({ nullable: true })\n createdAt?: Date\n\n @UpdateDateColumn()\n @Field({ nullable: true })\n updatedAt?: Date\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n assignedAt?: Date\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n startedAt?: 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((activityInstance: ActivityInstance) => activityInstance.creator)\n creatorId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n updater?: User\n\n @RelationId((activityInstance: ActivityInstance) => activityInstance.updater)\n updaterId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n starter?: User\n\n @RelationId((activityInstance: ActivityInstance) => activityInstance.starter)\n starterId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n terminator?: User\n\n @RelationId((activityInstance: ActivityInstance) => activityInstance.terminator)\n terminatorId?: string\n\n @Field(type => String, { nullable: true })\n thumbnail?: string\n}\n"]}
1
+ {"version":3,"file":"activity-instance.js","sourceRoot":"","sources":["../../../server/service/activity-instance/activity-instance.ts"],"names":[],"mappings":"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","sourcesContent":["import { Field, ID, Int, ObjectType, registerEnumType } from 'type-graphql'\nimport {\n Column,\n CreateDateColumn,\n Entity,\n Index,\n ManyToOne,\n OneToMany,\n PrimaryGeneratedColumn,\n RelationId,\n UpdateDateColumn,\n VersionColumn\n} from 'typeorm'\n\nimport { Role, User } from '@things-factory/auth-base'\nimport { Domain, ScalarObject } from '@things-factory/shell'\nimport { OrgMemberTargetType, OrgMemberTarget, ApprovalLineItem } from '@things-factory/organization'\n\nimport { ActivityThread } from '../activity-thread/activity-thread'\nimport { Activity, ActivityType, ActivityUIType } from '../activity/activity'\n\nexport enum ActivityInstanceStatus {\n Draft = 'draft',\n Posted = 'posted',\n WaitingAssignment = 'waiting-assignment',\n Assigned = 'assigned',\n Started = 'started',\n Pending = 'pending',\n Ended = 'ended',\n Aborted = 'aborted'\n}\n\nregisterEnumType(ActivityInstanceStatus, {\n name: 'ActivityInstanceStatus',\n description: 'state enumeration of a activityInstance'\n})\n\n@ObjectType()\nexport class AssigneeItem {\n @Field(type => OrgMemberTargetType, { nullable: true })\n type?: OrgMemberTargetType\n\n @Field({ nullable: true })\n value?: string\n\n @Field(type => OrgMemberTarget, { nullable: true })\n assignee?: OrgMemberTarget\n}\n\n@Entity()\n@Index(\n 'ix_activity_instance_0',\n (activityInstance: ActivityInstance) => [activityInstance.domain, activityInstance.name],\n { unique: false }\n)\n@Index(\n 'ix_activity_instance_1',\n (activityInstance: ActivityInstance) => [activityInstance.domain, activityInstance.state, activityInstance.priority],\n { unique: false }\n)\n@ObjectType({ description: 'Entity for ActivityInstance' })\nexport class ActivityInstance {\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({ nullable: true })\n domain?: Domain\n\n @RelationId((activityInstance: ActivityInstance) => activityInstance.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 activityType?: ActivityType\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n adhocType?: 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 @OneToMany(type => ActivityThread, activityThread => activityThread.activityInstance)\n @Field(type => [ActivityThread])\n activityThreads?: ActivityThread[]\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n uiType?: ActivityUIType\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n uiSource?: string\n\n @Column({ nullable: true, default: 1 })\n @Field({ nullable: true })\n priority?: number = 1\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n state?: ActivityInstanceStatus\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n reason?: string\n\n @Column({ nullable: true, default: 0 })\n @Field(type => Int, { nullable: true })\n threadsMin?: number = 0\n\n @Column({ nullable: true, default: 0 })\n @Field(type => Int, { nullable: true })\n threadsMax?: number = 0\n\n @Column('simple-json', { nullable: true })\n @Field(type => ScalarObject, { nullable: true })\n input?: { [key: string]: any }\n\n @Column('simple-json', { nullable: true })\n @Field(type => ScalarObject, { nullable: true })\n output?: { [key: string]: any }\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n refBy?: string\n\n @ManyToOne(type => Activity, { nullable: true })\n @Field(type => Activity, { nullable: true })\n activity?: Activity\n\n @RelationId((activityInstance: ActivityInstance) => activityInstance.activity)\n activityId?: string\n\n @ManyToOne(type => Role, { nullable: true })\n @Field(type => Role, { nullable: true })\n assigneeRole?: Role\n\n @RelationId((activityInstance: ActivityInstance) => activityInstance.assigneeRole)\n assigneeRoleId?: string\n\n @ManyToOne(type => Role, { nullable: true })\n @Field(type => Role, { nullable: true })\n supervisoryRole?: Role\n\n @RelationId((activityInstance: ActivityInstance) => activityInstance.supervisoryRole)\n supervisoryRoleId?: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n dueAt?: Date\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n transaction?: string\n\n @Column('simple-json', { nullable: true })\n @Field(type => [AssigneeItem], { nullable: true })\n assignees?: AssigneeItem[]\n\n @Column('simple-json', { nullable: true })\n @Field(type => [ApprovalLineItem], { nullable: true })\n approvalLine?: ApprovalLineItem[]\n\n @CreateDateColumn()\n @Field({ nullable: true })\n createdAt?: Date\n\n @UpdateDateColumn()\n @Field({ nullable: true })\n updatedAt?: Date\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n issuedAt?: Date\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n assignedAt?: Date\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n startedAt?: 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((activityInstance: ActivityInstance) => activityInstance.creator)\n creatorId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n updater?: User\n\n @RelationId((activityInstance: ActivityInstance) => activityInstance.updater)\n updaterId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n issuer?: User\n\n @RelationId((activityInstance: ActivityInstance) => activityInstance.issuer)\n issuerId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n starter?: User\n\n @RelationId((activityInstance: ActivityInstance) => activityInstance.starter)\n starterId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n terminator?: User\n\n @RelationId((activityInstance: ActivityInstance) => activityInstance.terminator)\n terminatorId?: string\n\n @Field(type => String, { nullable: true })\n thumbnail?: string\n\n isDelegatable(): boolean {\n switch (this.state) {\n case ActivityInstanceStatus.Posted:\n case ActivityInstanceStatus.Assigned:\n return true\n default:\n return false\n }\n }\n}\n"]}
@@ -11,14 +11,14 @@ let ActivityInstanceSubscriber = class ActivityInstanceSubscriber {
11
11
  listenTo() {
12
12
  return activity_instance_1.ActivityInstance;
13
13
  }
14
- afterInsert(event) {
15
- const activityInstance = event.entity;
14
+ async afterInsert(event) {
15
+ const { entity: activityInstance, manager: tx } = event;
16
16
  shell_1.pubsub.publish('activity-instance', {
17
17
  activityInstance
18
18
  });
19
19
  }
20
- afterUpdate(event) {
21
- const activityInstance = event.entity;
20
+ async afterUpdate(event) {
21
+ const { entity: activityInstance, manager: tx } = event;
22
22
  shell_1.pubsub.publish('activity-instance', {
23
23
  activityInstance
24
24
  });
@@ -1 +1 @@
1
- {"version":3,"file":"event-subscriber.js","sourceRoot":"","sources":["../../../server/service/activity-instance/event-subscriber.ts"],"names":[],"mappings":";;;;AAAA,qCAA8F;AAE9F,8DAAkE;AAClE,iDAA8C;AAE9C,2DAAsD;AACtD,2EAAqE;AAG9D,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IACrC,QAAQ;QACN,OAAO,oCAAgB,CAAA;IACzB,CAAC;IAED,WAAW,CAAC,KAAoC;QAC9C,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAA;QAErC,cAAM,CAAC,OAAO,CAAC,mBAAmB,EAAE;YAClC,gBAAgB;SACjB,CAAC,CAAA;IACJ,CAAC;IAED,WAAW,CAAC,KAAoC;QAC9C,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAA;QAErC,cAAM,CAAC,OAAO,CAAC,mBAAmB,EAAE;YAClC,gBAAgB;SACjB,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AApBY,0BAA0B;IADtC,IAAA,yBAAe,GAAE;GACL,0BAA0B,CAoBtC;AApBY,gEAA0B;AAuBhC,IAAM,uCAAuC,GAA7C,MAAM,uCAAwC,SAAQ,yCAG5D;IACC,IAAW,MAAM;QACf,OAAO,oCAAgB,CAAA;IACzB,CAAC;IAED,IAAW,aAAa;QACtB,OAAO,mDAAuB,CAAA;IAChC,CAAC;CACF,CAAA;AAXY,uCAAuC;IADnD,IAAA,yBAAe,GAAE;GACL,uCAAuC,CAWnD;AAXY,0FAAuC","sourcesContent":["import { EventSubscriber, EntitySubscriberInterface, InsertEvent, UpdateEvent } from 'typeorm'\n\nimport { HistoryEntitySubscriber } from '@operato/typeorm-history'\nimport { pubsub } from '@things-factory/shell'\n\nimport { ActivityInstance } from './activity-instance'\nimport { ActivityInstanceHistory } from './activity-instance-history'\n\n@EventSubscriber()\nexport class ActivityInstanceSubscriber implements EntitySubscriberInterface<ActivityInstance> {\n listenTo() {\n return ActivityInstance\n }\n\n afterInsert(event: InsertEvent<ActivityInstance>): Promise<any> | void {\n const activityInstance = event.entity\n\n pubsub.publish('activity-instance', {\n activityInstance\n })\n }\n\n afterUpdate(event: UpdateEvent<ActivityInstance>): Promise<any> | void {\n const activityInstance = event.entity\n\n pubsub.publish('activity-instance', {\n activityInstance\n })\n }\n}\n\n@EventSubscriber()\nexport class ActivityInstanceHistoryEntitySubscriber extends HistoryEntitySubscriber<\n ActivityInstance,\n ActivityInstanceHistory\n> {\n public get entity() {\n return ActivityInstance\n }\n\n public get historyEntity() {\n return ActivityInstanceHistory\n }\n}\n"]}
1
+ {"version":3,"file":"event-subscriber.js","sourceRoot":"","sources":["../../../server/service/activity-instance/event-subscriber.ts"],"names":[],"mappings":";;;;AAAA,qCAA8F;AAE9F,8DAAkE;AAClE,iDAA8C;AAE9C,2DAAsD;AACtD,2EAAqE;AAG9D,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IACrC,QAAQ;QACN,OAAO,oCAAgB,CAAA;IACzB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAoC;QACpD,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,KAAK,CAAA;QAEvD,cAAM,CAAC,OAAO,CAAC,mBAAmB,EAAE;YAClC,gBAAgB;SACjB,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAoC;QACpD,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,KAAK,CAAA;QAEvD,cAAM,CAAC,OAAO,CAAC,mBAAmB,EAAE;YAClC,gBAAgB;SACjB,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AApBY,0BAA0B;IADtC,IAAA,yBAAe,GAAE;GACL,0BAA0B,CAoBtC;AApBY,gEAA0B;AAuBhC,IAAM,uCAAuC,GAA7C,MAAM,uCAAwC,SAAQ,yCAG5D;IACC,IAAW,MAAM;QACf,OAAO,oCAAgB,CAAA;IACzB,CAAC;IAED,IAAW,aAAa;QACtB,OAAO,mDAAuB,CAAA;IAChC,CAAC;CACF,CAAA;AAXY,uCAAuC;IADnD,IAAA,yBAAe,GAAE;GACL,uCAAuC,CAWnD;AAXY,0FAAuC","sourcesContent":["import { EventSubscriber, EntitySubscriberInterface, InsertEvent, UpdateEvent } from 'typeorm'\n\nimport { HistoryEntitySubscriber } from '@operato/typeorm-history'\nimport { pubsub } from '@things-factory/shell'\n\nimport { ActivityInstance } from './activity-instance'\nimport { ActivityInstanceHistory } from './activity-instance-history'\n\n@EventSubscriber()\nexport class ActivityInstanceSubscriber implements EntitySubscriberInterface<ActivityInstance> {\n listenTo() {\n return ActivityInstance\n }\n\n async afterInsert(event: InsertEvent<ActivityInstance>): Promise<any | void> {\n const { entity: activityInstance, manager: tx } = event\n\n pubsub.publish('activity-instance', {\n activityInstance\n })\n }\n\n async afterUpdate(event: UpdateEvent<ActivityInstance>): Promise<any | void> {\n const { entity: activityInstance, manager: tx } = event\n\n pubsub.publish('activity-instance', {\n activityInstance\n })\n }\n}\n\n@EventSubscriber()\nexport class ActivityInstanceHistoryEntitySubscriber extends HistoryEntitySubscriber<\n ActivityInstance,\n ActivityInstanceHistory\n> {\n public get entity() {\n return ActivityInstance\n }\n\n public get historyEntity() {\n return ActivityInstanceHistory\n }\n}\n"]}
@@ -39,6 +39,7 @@ let ActivityThread = class ActivityThread {
39
39
  switch (this.state) {
40
40
  case ActivityThreadStatus.Started:
41
41
  case ActivityThreadStatus.Rejected:
42
+ case ActivityThreadStatus.Submitted:
42
43
  return true;
43
44
  default:
44
45
  return false;
@@ -50,9 +51,11 @@ let ActivityThread = class ActivityThread {
50
51
  case ActivityThreadStatus.Started:
51
52
  case ActivityThreadStatus.Ended:
52
53
  case ActivityThreadStatus.Rejected:
54
+ case ActivityThreadStatus.Escalated:
55
+ case ActivityThreadStatus.Aborted:
56
+ case ActivityThreadStatus.Submitted:
53
57
  return true;
54
58
  case ActivityThreadStatus.Delegated:
55
- case ActivityThreadStatus.Aborted:
56
59
  default:
57
60
  return false;
58
61
  }
@@ -1 +1 @@
1
- {"version":3,"file":"activity-thread.js","sourceRoot":"","sources":["../../../server/service/activity-thread/activity-thread.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 OneToMany,\n ManyToOne,\n PrimaryGeneratedColumn,\n RelationId,\n VersionColumn,\n UpdateDateColumn\n} from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\nimport { Domain, ScalarObject } from '@things-factory/shell'\n\nimport { ActivityInstance } from '../activity-instance/activity-instance'\n\nexport enum ActivityThreadStatus {\n Assigned = 'assigned',\n Started = 'started',\n Delegated = 'delegated',\n Submitted = 'submitted',\n Escalated = 'escalated',\n Rejected = 'rejected',\n Ended = 'ended',\n Aborted = 'aborted'\n}\n\nregisterEnumType(ActivityThreadStatus, {\n name: 'ActivityThreadStatus',\n description: 'state enumeration of a ActivityThread'\n})\n\n@Entity()\n@Index(\n 'ix_activity_thread_0',\n (activityThread: ActivityThread) => [activityThread.activityInstance, activityThread.assignee],\n {\n unique: true\n }\n)\n@ObjectType({ description: 'Entity for ActivityThread' })\nexport class ActivityThread {\n @PrimaryGeneratedColumn('uuid')\n @Field(type => ID)\n readonly id: string\n\n @ManyToOne(type => Domain)\n @Field({ nullable: true })\n domain?: Domain\n\n @RelationId((activityThread: ActivityThread) => activityThread.domain)\n domainId?: string\n\n @VersionColumn({ default: 1 })\n @Field({ nullable: true })\n version?: number = 1\n\n @ManyToOne(type => ActivityInstance, activityInstance => activityInstance.activityThreads)\n @Field(type => ActivityInstance, { nullable: true })\n activityInstance?: ActivityInstance\n\n @RelationId((activityThread: ActivityThread) => activityThread.activityInstance)\n activityInstanceId?: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n state?: ActivityThreadStatus\n\n @Column('simple-json', { nullable: true })\n @Field(type => ScalarObject, { nullable: true })\n output?: { [key: string]: any }\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n assignee?: User\n\n @RelationId((activityThread: ActivityThread) => activityThread.assignee)\n assigneeId?: string\n\n @Column({ nullable: true, default: 1 })\n @Field({ nullable: true })\n round: number = 1\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n transaction: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n dueAt?: Date\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n assignedAt?: Date\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n startedAt?: Date\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n terminatedAt?: Date\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({ nullable: true })\n creator?: User\n\n @RelationId((activityThread: ActivityThread) => activityThread.creator)\n creatorId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n updater?: User\n\n @RelationId((activityThread: ActivityThread) => activityThread.updater)\n updaterId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n terminator?: User\n\n @RelationId((activityThread: ActivityThread) => activityThread.terminator)\n terminatorId?: string\n\n isPendingStarted(): boolean {\n switch (this.state) {\n case ActivityThreadStatus.Assigned:\n return true\n default:\n return false\n }\n }\n\n isPendingEnded(): boolean {\n switch (this.state) {\n case ActivityThreadStatus.Started:\n case ActivityThreadStatus.Rejected:\n return true\n default:\n return false\n }\n }\n\n isValid(): boolean {\n switch (this.state) {\n case ActivityThreadStatus.Assigned:\n case ActivityThreadStatus.Started:\n case ActivityThreadStatus.Ended:\n case ActivityThreadStatus.Rejected:\n return true\n case ActivityThreadStatus.Delegated:\n case ActivityThreadStatus.Aborted:\n default:\n return false\n }\n }\n}\n"]}
1
+ {"version":3,"file":"activity-thread.js","sourceRoot":"","sources":["../../../server/service/activity-thread/activity-thread.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 OneToMany,\n ManyToOne,\n PrimaryGeneratedColumn,\n RelationId,\n VersionColumn,\n UpdateDateColumn\n} from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\nimport { Domain, ScalarObject } from '@things-factory/shell'\n\nimport { ActivityInstance } from '../activity-instance/activity-instance'\n\nexport enum ActivityThreadStatus {\n Assigned = 'assigned',\n Started = 'started',\n Delegated = 'delegated',\n Submitted = 'submitted',\n Escalated = 'escalated',\n Rejected = 'rejected',\n Ended = 'ended',\n Aborted = 'aborted'\n}\n\nregisterEnumType(ActivityThreadStatus, {\n name: 'ActivityThreadStatus',\n description: 'state enumeration of a ActivityThread'\n})\n\n@Entity()\n@Index(\n 'ix_activity_thread_0',\n (activityThread: ActivityThread) => [activityThread.activityInstance, activityThread.assignee],\n {\n unique: true\n }\n)\n@ObjectType({ description: 'Entity for ActivityThread' })\nexport class ActivityThread {\n @PrimaryGeneratedColumn('uuid')\n @Field(type => ID)\n readonly id: string\n\n @ManyToOne(type => Domain)\n @Field({ nullable: true })\n domain?: Domain\n\n @RelationId((activityThread: ActivityThread) => activityThread.domain)\n domainId?: string\n\n @VersionColumn({ default: 1 })\n @Field({ nullable: true })\n version?: number = 1\n\n @ManyToOne(type => ActivityInstance, activityInstance => activityInstance.activityThreads)\n @Field(type => ActivityInstance, { nullable: true })\n activityInstance?: ActivityInstance\n\n @RelationId((activityThread: ActivityThread) => activityThread.activityInstance)\n activityInstanceId?: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n state?: ActivityThreadStatus\n\n @Column('simple-json', { nullable: true })\n @Field(type => ScalarObject, { nullable: true })\n output?: { [key: string]: any }\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n assignee?: User\n\n @RelationId((activityThread: ActivityThread) => activityThread.assignee)\n assigneeId?: string\n\n @Column({ nullable: true, default: 1 })\n @Field({ nullable: true })\n round?: number = 1\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n transaction?: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n dueAt?: Date\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n assignedAt?: Date\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n startedAt?: Date\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n terminatedAt?: Date\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({ nullable: true })\n creator?: User\n\n @RelationId((activityThread: ActivityThread) => activityThread.creator)\n creatorId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n updater?: User\n\n @RelationId((activityThread: ActivityThread) => activityThread.updater)\n updaterId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n terminator?: User\n\n @RelationId((activityThread: ActivityThread) => activityThread.terminator)\n terminatorId?: string\n\n isPendingStarted(): boolean {\n switch (this.state) {\n case ActivityThreadStatus.Assigned:\n return true\n default:\n return false\n }\n }\n\n isPendingEnded(): boolean {\n switch (this.state) {\n case ActivityThreadStatus.Started:\n case ActivityThreadStatus.Rejected:\n case ActivityThreadStatus.Submitted:\n return true\n default:\n return false\n }\n }\n\n isValid(): boolean {\n switch (this.state) {\n case ActivityThreadStatus.Assigned:\n case ActivityThreadStatus.Started:\n case ActivityThreadStatus.Ended:\n case ActivityThreadStatus.Rejected:\n case ActivityThreadStatus.Escalated:\n case ActivityThreadStatus.Aborted:\n case ActivityThreadStatus.Submitted:\n return true\n case ActivityThreadStatus.Delegated:\n default:\n return false\n }\n }\n}\n"]}
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.InstallableActivityMutation = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const type_graphql_1 = require("type-graphql");
6
- const activity_installation_controller_1 = require("../../controllers/activity-installation-controller");
6
+ const activity_installation_controller_1 = require("../../controllers/activity-installation/activity-installation-controller");
7
7
  const activity_1 = require("../activity/activity");
8
8
  const installable_activity_1 = require("./installable-activity");
9
9
  let InstallableActivityMutation = class InstallableActivityMutation {
@@ -1 +1 @@
1
- {"version":3,"file":"installable-activity-mutation.js","sourceRoot":"","sources":["../../../server/service/installable-activity/installable-activity-mutation.ts"],"names":[],"mappings":";;;;AAAA,+CAAsE;AAEtE,yGAA0F;AAC1F,mDAA+D;AAC/D,iEAA4D;AAGrD,IAAM,2BAA2B,GAAjC,MAAM,2BAA2B;IAGhC,AAAN,KAAK,CAAC,2BAA2B,CAAc,IAAY,EAAS,OAAwB;QAC1F,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1C,MAAM,mBAAmB,GAAG,wDAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC3D,MAAM,UAAU,GAAG,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAA;QAE7C,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC;YAC1C,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE;YACzB,IAAI;SACL,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,EAAE;YACb,OAAO,MAAM,UAAU,CAAC,IAAI,iCACtB,mBAA2B,KAC/B,KAAK,EAAE,yBAAc,CAAC,QAAQ,EAC9B,MAAM,EACN,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,IAAI,IACb,CAAA;SACH;aAAM;YACL,OAAO,MAAM,UAAU,CAAC,IAAI,+CACvB,QAAQ,GACP,mBAA2B,KAC/B,KAAK,EAAE,yBAAc,CAAC,QAAQ,EAC9B,MAAM,EACN,OAAO,EAAE,IAAI,IACb,CAAA;SACH;IACH,CAAC;IAIK,AAAN,KAAK,CAAC,6BAA6B,CAAc,IAAY,EAAS,OAAwB;QAC5F,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1C,MAAM,UAAU,GAAG,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAA;QAE7C,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC;YAC1C,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE;YACzB,IAAI;SACL,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,EAAE;YACb,OAAM;SACP;QAED,OAAO,MAAM,UAAU,CAAC,IAAI,iCACvB,QAAQ,KACX,KAAK,EAAE,yBAAc,CAAC,UAAU,EAChC,OAAO,EAAE,IAAI,IACb,CAAA;IACJ,CAAC;CACF,CAAA;AAlDO;IAFL,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,mBAAQ,EAAE,EAAE,WAAW,EAAE,8DAA8D,EAAE,CAAC;IAC5E,mBAAA,IAAA,kBAAG,EAAC,MAAM,CAAC,CAAA;IAAgB,mBAAA,IAAA,kBAAG,GAAE,CAAA;;;;8EA2BlE;AAIK;IAFL,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,mBAAQ,EAAE,EAAE,WAAW,EAAE,gEAAgE,EAAE,CAAC;IAC5E,mBAAA,IAAA,kBAAG,EAAC,MAAM,CAAC,CAAA;IAAgB,mBAAA,IAAA,kBAAG,GAAE,CAAA;;;;gFAkBpE;AApDU,2BAA2B;IADvC,IAAA,uBAAQ,EAAC,0CAAmB,CAAC;GACjB,2BAA2B,CAqDvC;AArDY,kEAA2B","sourcesContent":["import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\n\nimport { ActivityInstallations } from '../../controllers/activity-installation-controller'\nimport { Activity, ActivityStatus } from '../activity/activity'\nimport { InstallableActivity } from './installable-activity'\n\n@Resolver(InstallableActivity)\nexport class InstallableActivityMutation {\n @Directive('@transaction')\n @Mutation(returns => Activity, { description: 'To activate installable activity to Activity on given domain' })\n async activateInstallableActivity(@Arg('name') name: string, @Ctx() context: ResolverContext): Promise<Activity> {\n const { domain, user, tx } = context.state\n const installableActivity = ActivityInstallations.get(name)\n const repository = tx.getRepository(Activity)\n\n const activity = await repository.findOneBy({\n domain: { id: domain.id },\n name\n })\n\n if (!activity) {\n return await repository.save({\n ...(installableActivity as any),\n state: ActivityStatus.Released,\n domain,\n creator: user,\n updater: user\n })\n } else {\n return await repository.save({\n ...activity,\n ...(installableActivity as any),\n state: ActivityStatus.Released,\n domain,\n updater: user\n })\n }\n }\n\n @Directive('@transaction')\n @Mutation(returns => Activity, { description: 'To deactivate installable activity to Activity on given domain' })\n async deactivateInstallableActivity(@Arg('name') name: string, @Ctx() context: ResolverContext): Promise<Activity> {\n const { domain, user, tx } = context.state\n const repository = tx.getRepository(Activity)\n\n const activity = await repository.findOneBy({\n domain: { id: domain.id },\n name\n })\n\n if (!activity) {\n return\n }\n\n return await repository.save({\n ...activity,\n state: ActivityStatus.Deprecated,\n updater: user\n })\n }\n}\n"]}
1
+ {"version":3,"file":"installable-activity-mutation.js","sourceRoot":"","sources":["../../../server/service/installable-activity/installable-activity-mutation.ts"],"names":[],"mappings":";;;;AAAA,+CAAsE;AAEtE,+HAAgH;AAChH,mDAA+D;AAC/D,iEAA4D;AAGrD,IAAM,2BAA2B,GAAjC,MAAM,2BAA2B;IAGhC,AAAN,KAAK,CAAC,2BAA2B,CAAc,IAAY,EAAS,OAAwB;QAC1F,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1C,MAAM,mBAAmB,GAAG,wDAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC3D,MAAM,UAAU,GAAG,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAA;QAE7C,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC;YAC1C,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE;YACzB,IAAI;SACL,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,EAAE;YACb,OAAO,MAAM,UAAU,CAAC,IAAI,iCACtB,mBAA2B,KAC/B,KAAK,EAAE,yBAAc,CAAC,QAAQ,EAC9B,MAAM,EACN,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,IAAI,IACb,CAAA;SACH;aAAM;YACL,OAAO,MAAM,UAAU,CAAC,IAAI,+CACvB,QAAQ,GACP,mBAA2B,KAC/B,KAAK,EAAE,yBAAc,CAAC,QAAQ,EAC9B,MAAM,EACN,OAAO,EAAE,IAAI,IACb,CAAA;SACH;IACH,CAAC;IAIK,AAAN,KAAK,CAAC,6BAA6B,CAAc,IAAY,EAAS,OAAwB;QAC5F,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1C,MAAM,UAAU,GAAG,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAA;QAE7C,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC;YAC1C,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE;YACzB,IAAI;SACL,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,EAAE;YACb,OAAM;SACP;QAED,OAAO,MAAM,UAAU,CAAC,IAAI,iCACvB,QAAQ,KACX,KAAK,EAAE,yBAAc,CAAC,UAAU,EAChC,OAAO,EAAE,IAAI,IACb,CAAA;IACJ,CAAC;CACF,CAAA;AAlDO;IAFL,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,mBAAQ,EAAE,EAAE,WAAW,EAAE,8DAA8D,EAAE,CAAC;IAC5E,mBAAA,IAAA,kBAAG,EAAC,MAAM,CAAC,CAAA;IAAgB,mBAAA,IAAA,kBAAG,GAAE,CAAA;;;;8EA2BlE;AAIK;IAFL,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,mBAAQ,EAAE,EAAE,WAAW,EAAE,gEAAgE,EAAE,CAAC;IAC5E,mBAAA,IAAA,kBAAG,EAAC,MAAM,CAAC,CAAA;IAAgB,mBAAA,IAAA,kBAAG,GAAE,CAAA;;;;gFAkBpE;AApDU,2BAA2B;IADvC,IAAA,uBAAQ,EAAC,0CAAmB,CAAC;GACjB,2BAA2B,CAqDvC;AArDY,kEAA2B","sourcesContent":["import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\n\nimport { ActivityInstallations } from '../../controllers/activity-installation/activity-installation-controller'\nimport { Activity, ActivityStatus } from '../activity/activity'\nimport { InstallableActivity } from './installable-activity'\n\n@Resolver(InstallableActivity)\nexport class InstallableActivityMutation {\n @Directive('@transaction')\n @Mutation(returns => Activity, { description: 'To activate installable activity to Activity on given domain' })\n async activateInstallableActivity(@Arg('name') name: string, @Ctx() context: ResolverContext): Promise<Activity> {\n const { domain, user, tx } = context.state\n const installableActivity = ActivityInstallations.get(name)\n const repository = tx.getRepository(Activity)\n\n const activity = await repository.findOneBy({\n domain: { id: domain.id },\n name\n })\n\n if (!activity) {\n return await repository.save({\n ...(installableActivity as any),\n state: ActivityStatus.Released,\n domain,\n creator: user,\n updater: user\n })\n } else {\n return await repository.save({\n ...activity,\n ...(installableActivity as any),\n state: ActivityStatus.Released,\n domain,\n updater: user\n })\n }\n }\n\n @Directive('@transaction')\n @Mutation(returns => Activity, { description: 'To deactivate installable activity to Activity on given domain' })\n async deactivateInstallableActivity(@Arg('name') name: string, @Ctx() context: ResolverContext): Promise<Activity> {\n const { domain, user, tx } = context.state\n const repository = tx.getRepository(Activity)\n\n const activity = await repository.findOneBy({\n domain: { id: domain.id },\n name\n })\n\n if (!activity) {\n return\n }\n\n return await repository.save({\n ...activity,\n state: ActivityStatus.Deprecated,\n updater: user\n })\n }\n}\n"]}
@@ -4,7 +4,7 @@ exports.InstallableActivityQuery = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const type_graphql_1 = require("type-graphql");
6
6
  const shell_1 = require("@things-factory/shell");
7
- const activity_installation_controller_1 = require("../../controllers/activity-installation-controller");
7
+ const activity_installation_controller_1 = require("../../controllers/activity-installation/activity-installation-controller");
8
8
  const activity_1 = require("../activity/activity");
9
9
  const installable_activity_1 = require("./installable-activity");
10
10
  const installable_activity_type_1 = require("./installable-activity-type");
@@ -1 +1 @@
1
- {"version":3,"file":"installable-activity-query.js","sourceRoot":"","sources":["../../../server/service/installable-activity/installable-activity-query.ts"],"names":[],"mappings":";;;;AAAA,+CAAmF;AACnF,iDAAwE;AAExE,yGAA0F;AAC1F,mDAA+C;AAC/C,iEAA4D;AAC5D,2EAAqE;AAG9D,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IAE7B,AAAN,KAAK,CAAC,mBAAmB,CAAc,IAAY,EAAS,OAAwB;QAClF,OAAO,MAAM,wDAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAC9C,CAAC;IAGK,AAAN,KAAK,CAAC,qBAAqB,CACjB,MAAiB,EAClB,OAAwB;QAE/B,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,MAAM,KAAK,GAAG,wDAAqB,CAAC,IAAI,EAAE,CAAA;QAE1C,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE;YACtB,IAAI,CAAC,QAAQ,GAAG,MAAM,IAAA,qBAAa,EAAC,mBAAQ,CAAC,CAAC,SAAS,CAAC;gBACtD,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE;gBACzB,IAAI,EAAE,IAAI,CAAC,IAAI;aAChB,CAAC,CAAA;SACH;QAED,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAA;QAE1B,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IACzB,CAAC;CACF,CAAA;AAxBO;IADL,IAAA,oBAAK,EAAC,OAAO,CAAC,EAAE,CAAC,0CAAoB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,gCAAgC,EAAE,CAAC;IAC/E,mBAAA,IAAA,kBAAG,EAAC,MAAM,CAAC,CAAA;IAAgB,mBAAA,IAAA,kBAAG,GAAE,CAAA;;;;mEAE1D;AAGK;IADL,IAAA,oBAAK,EAAC,OAAO,CAAC,EAAE,CAAC,mDAAuB,EAAE,EAAE,WAAW,EAAE,wCAAwC,EAAE,CAAC;IAElG,mBAAA,IAAA,mBAAI,GAAE,CAAA;IACN,mBAAA,IAAA,kBAAG,GAAE,CAAA;;6CADU,iBAAS;;qEAiB1B;AAzBU,wBAAwB;IADpC,IAAA,uBAAQ,EAAC,0CAAmB,CAAC;GACjB,wBAAwB,CA0BpC;AA1BY,4DAAwB","sourcesContent":["import { Arg, Args, Ctx, Query, Resolver, FieldResolver, Root } from 'type-graphql'\nimport { Domain, getRepository, ListParam } from '@things-factory/shell'\n\nimport { ActivityInstallations } from '../../controllers/activity-installation-controller'\nimport { Activity } from '../activity/activity'\nimport { InstallableActivity } from './installable-activity'\nimport { InstallableActivityList } from './installable-activity-type'\n\n@Resolver(InstallableActivity)\nexport class InstallableActivityQuery {\n @Query(returns => InstallableActivity!, { nullable: true, description: 'To fetch a InstallableActivity' })\n async installableActivity(@Arg('name') name: string, @Ctx() context: ResolverContext): Promise<InstallableActivity> {\n return await ActivityInstallations.get(name)\n }\n\n @Query(returns => InstallableActivityList, { description: 'To fetch multiple InstallableActivitys' })\n async installableActivities(\n @Args() params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<InstallableActivityList> {\n const { domain } = context.state\n\n const items = ActivityInstallations.list()\n\n for (var item of items) {\n item.activity = await getRepository(Activity).findOneBy({\n domain: { id: domain.id },\n name: item.name\n })\n }\n\n const total = items.length\n\n return { items, total }\n }\n}\n"]}
1
+ {"version":3,"file":"installable-activity-query.js","sourceRoot":"","sources":["../../../server/service/installable-activity/installable-activity-query.ts"],"names":[],"mappings":";;;;AAAA,+CAAmF;AACnF,iDAAwE;AAExE,+HAAgH;AAChH,mDAA+C;AAC/C,iEAA4D;AAC5D,2EAAqE;AAG9D,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IAE7B,AAAN,KAAK,CAAC,mBAAmB,CAAc,IAAY,EAAS,OAAwB;QAClF,OAAO,MAAM,wDAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAC9C,CAAC;IAGK,AAAN,KAAK,CAAC,qBAAqB,CACjB,MAAiB,EAClB,OAAwB;QAE/B,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,MAAM,KAAK,GAAG,wDAAqB,CAAC,IAAI,EAAE,CAAA;QAE1C,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE;YACtB,IAAI,CAAC,QAAQ,GAAG,MAAM,IAAA,qBAAa,EAAC,mBAAQ,CAAC,CAAC,SAAS,CAAC;gBACtD,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE;gBACzB,IAAI,EAAE,IAAI,CAAC,IAAI;aAChB,CAAC,CAAA;SACH;QAED,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAA;QAE1B,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IACzB,CAAC;CACF,CAAA;AAxBO;IADL,IAAA,oBAAK,EAAC,OAAO,CAAC,EAAE,CAAC,0CAAoB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,gCAAgC,EAAE,CAAC;IAC/E,mBAAA,IAAA,kBAAG,EAAC,MAAM,CAAC,CAAA;IAAgB,mBAAA,IAAA,kBAAG,GAAE,CAAA;;;;mEAE1D;AAGK;IADL,IAAA,oBAAK,EAAC,OAAO,CAAC,EAAE,CAAC,mDAAuB,EAAE,EAAE,WAAW,EAAE,wCAAwC,EAAE,CAAC;IAElG,mBAAA,IAAA,mBAAI,GAAE,CAAA;IACN,mBAAA,IAAA,kBAAG,GAAE,CAAA;;6CADU,iBAAS;;qEAiB1B;AAzBU,wBAAwB;IADpC,IAAA,uBAAQ,EAAC,0CAAmB,CAAC;GACjB,wBAAwB,CA0BpC;AA1BY,4DAAwB","sourcesContent":["import { Arg, Args, Ctx, Query, Resolver, FieldResolver, Root } from 'type-graphql'\nimport { Domain, getRepository, ListParam } from '@things-factory/shell'\n\nimport { ActivityInstallations } from '../../controllers/activity-installation/activity-installation-controller'\nimport { Activity } from '../activity/activity'\nimport { InstallableActivity } from './installable-activity'\nimport { InstallableActivityList } from './installable-activity-type'\n\n@Resolver(InstallableActivity)\nexport class InstallableActivityQuery {\n @Query(returns => InstallableActivity!, { nullable: true, description: 'To fetch a InstallableActivity' })\n async installableActivity(@Arg('name') name: string, @Ctx() context: ResolverContext): Promise<InstallableActivity> {\n return await ActivityInstallations.get(name)\n }\n\n @Query(returns => InstallableActivityList, { description: 'To fetch multiple InstallableActivitys' })\n async installableActivities(\n @Args() params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<InstallableActivityList> {\n const { domain } = context.state\n\n const items = ActivityInstallations.list()\n\n for (var item of items) {\n item.activity = await getRepository(Activity).findOneBy({\n domain: { id: domain.id },\n name: item.name\n })\n }\n\n const total = items.length\n\n return { items, total }\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"installable-activity.js","sourceRoot":"","sources":["../../../server/service/installable-activity/installable-activity.ts"],"names":[],"mappings":";;;;AAAA,+CAAkE;AAElE,mDAA6E;AAC7E,yEAAmE;AAG5D,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;CA0C/B,CAAA;AAzCC;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;iDACb;AAEb;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,qCAAqC,EAAE,CAAC;;oDAC9D;AAEhB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,sCAAsC,EAAE,CAAC;;qDAC9D;AAEjB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;wDACN;AAEpB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACT;AAEjB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;yDACC;AAE3B;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;sDACP;AAEnB;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,uCAAiB,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDAC5B;AAE3B;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACH;AAEvB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACT;AAEjB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;uDACC;AAE3B;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;yDACL;AAErB;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;sDACxB;AAElB;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,mBAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCACjC,mBAAQ;qDAAA;AAzCR,mBAAmB;IAD/B,IAAA,yBAAU,EAAC,EAAE,WAAW,EAAE,gCAAgC,EAAE,CAAC;GACjD,mBAAmB,CA0C/B;AA1CY,kDAAmB","sourcesContent":["import { Field, ObjectType, registerEnumType } from 'type-graphql'\n\nimport { Activity, ActivityType, ActivityUIType } from '../activity/activity'\nimport { ActivityModelItem } from '../activity/activity-model-type'\n\n@ObjectType({ description: 'Entity for InstallableActivity' })\nexport class InstallableActivity {\n @Field({ nullable: true })\n name?: string\n\n @Field({ nullable: true, description: 'Release information of the Activity' })\n release?: string\n\n @Field({ nullable: true, description: 'Provider information of the Activity' })\n provider?: string\n\n @Field({ nullable: true })\n description?: string\n\n @Field({ nullable: true })\n category?: string\n\n @Field({ nullable: true })\n activityType?: ActivityType\n\n @Field({ nullable: true })\n startable?: boolean\n\n @Field(type => [ActivityModelItem], { nullable: true })\n model?: ActivityModelItem[]\n\n @Field({ nullable: true })\n uiType?: ActivityUIType\n\n @Field({ nullable: true })\n uiSource?: string\n\n @Field({ nullable: true })\n reportType?: ActivityUIType\n\n @Field({ nullable: true })\n reportSource?: string\n\n @Field(type => String, { nullable: true })\n thumbnail?: string\n\n @Field(type => Activity, { nullable: true })\n activity?: Activity\n}\n"]}
1
+ {"version":3,"file":"installable-activity.js","sourceRoot":"","sources":["../../../server/service/installable-activity/installable-activity.ts"],"names":[],"mappings":";;;;AAAA,+CAAgD;AAEhD,mDAA6E;AAC7E,yEAAmE;AAG5D,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;CA4C/B,CAAA;AA3CC;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;iDACb;AAEb;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,qCAAqC,EAAE,CAAC;;oDAC9D;AAEhB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,sCAAsC,EAAE,CAAC;;qDAC9D;AAEjB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;wDACN;AAEpB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACT;AAEjB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;yDACC;AAE3B;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;sDACP;AAEnB;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,uCAAiB,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDAC5B;AAE3B;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACH;AAEvB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACT;AAEjB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;uDACC;AAE3B;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;yDACL;AAErB;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;sDACxB;AAElB;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,mBAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCACjC,mBAAQ;qDAAA;AAzCR,mBAAmB;IAD/B,IAAA,yBAAU,EAAC,EAAE,WAAW,EAAE,gCAAgC,EAAE,CAAC;GACjD,mBAAmB,CA4C/B;AA5CY,kDAAmB","sourcesContent":["import { Field, ObjectType } from 'type-graphql'\n\nimport { Activity, ActivityType, ActivityUIType } from '../activity/activity'\nimport { ActivityModelItem } from '../activity/activity-model-type'\n\n@ObjectType({ description: 'Entity for InstallableActivity' })\nexport class InstallableActivity {\n @Field({ nullable: true })\n name?: string\n\n @Field({ nullable: true, description: 'Release information of the Activity' })\n release?: string\n\n @Field({ nullable: true, description: 'Provider information of the Activity' })\n provider?: string\n\n @Field({ nullable: true })\n description?: string\n\n @Field({ nullable: true })\n category?: string\n\n @Field({ nullable: true })\n activityType?: ActivityType\n\n @Field({ nullable: true })\n startable?: boolean\n\n @Field(type => [ActivityModelItem], { nullable: true })\n model?: ActivityModelItem[]\n\n @Field({ nullable: true })\n uiType?: ActivityUIType\n\n @Field({ nullable: true })\n uiSource?: string\n\n @Field({ nullable: true })\n reportType?: ActivityUIType\n\n @Field({ nullable: true })\n reportSource?: string\n\n @Field(type => String, { nullable: true })\n thumbnail?: string\n\n @Field(type => Activity, { nullable: true })\n activity?: Activity\n\n callback?: (content: any, context: ResolverContext) => void\n}\n"]}