@things-factory/worklist 10.1.248 → 10.1.250

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 (724) hide show
  1. package/dist-client/activity-cells.d.ts +21 -0
  2. package/dist-client/activity-cells.js +117 -0
  3. package/dist-client/activity-cells.js.map +1 -0
  4. package/dist-client/activity-state-counts.d.ts +6 -0
  5. package/dist-client/activity-state-counts.js +23 -0
  6. package/dist-client/activity-state-counts.js.map +1 -0
  7. package/dist-client/activity-summary-generator.d.ts +2 -0
  8. package/dist-client/activity-summary-generator.js +155 -0
  9. package/dist-client/activity-summary-generator.js.map +1 -0
  10. package/dist-client/approval-progress.d.ts +27 -0
  11. package/dist-client/approval-progress.js +42 -0
  12. package/dist-client/approval-progress.js.map +1 -0
  13. package/dist-client/bootstrap.d.ts +5 -0
  14. package/dist-client/bootstrap.js +63 -0
  15. package/dist-client/bootstrap.js.map +1 -0
  16. package/dist-client/chip-counts.d.ts +7 -0
  17. package/dist-client/chip-counts.js +11 -0
  18. package/dist-client/chip-counts.js.map +1 -0
  19. package/dist-client/chip-filters.d.ts +60 -0
  20. package/dist-client/chip-filters.js +102 -0
  21. package/dist-client/chip-filters.js.map +1 -0
  22. package/dist-client/components/activity-/bowner-view.d.ts +1 -0
  23. package/dist-client/components/activity-/bowner-view.js +104 -0
  24. package/dist-client/components/activity-/bowner-view.js.map +1 -0
  25. package/dist-client/components/activity-approval-ribon.d.ts +31 -0
  26. package/dist-client/components/activity-approval-ribon.js +103 -0
  27. package/dist-client/components/activity-approval-ribon.js.map +1 -0
  28. package/dist-client/components/activity-fields.d.ts +77 -0
  29. package/dist-client/components/activity-fields.js +424 -0
  30. package/dist-client/components/activity-fields.js.map +1 -0
  31. package/dist-client/components/activity-instance-preview.d.ts +2 -0
  32. package/dist-client/components/activity-instance-preview.js +177 -0
  33. package/dist-client/components/activity-instance-preview.js.map +1 -0
  34. package/dist-client/components/activity-instance-ribon.d.ts +32 -0
  35. package/dist-client/components/activity-instance-ribon.js +91 -0
  36. package/dist-client/components/activity-instance-ribon.js.map +1 -0
  37. package/dist-client/components/activity-intro-view.d.ts +1 -0
  38. package/dist-client/components/activity-intro-view.js +104 -0
  39. package/dist-client/components/activity-intro-view.js.map +1 -0
  40. package/dist-client/components/activity-reporter-view.d.ts +1 -0
  41. package/dist-client/components/activity-reporter-view.js +103 -0
  42. package/dist-client/components/activity-reporter-view.js.map +1 -0
  43. package/dist-client/components/activity-starter-form.d.ts +19 -0
  44. package/dist-client/components/activity-starter-form.js +264 -0
  45. package/dist-client/components/activity-starter-form.js.map +1 -0
  46. package/dist-client/components/activity-thread-ribon.d.ts +38 -0
  47. package/dist-client/components/activity-thread-ribon.js +95 -0
  48. package/dist-client/components/activity-thread-ribon.js.map +1 -0
  49. package/dist-client/components/activity-thread-timeline.d.ts +28 -0
  50. package/dist-client/components/activity-thread-timeline.js +339 -0
  51. package/dist-client/components/activity-thread-timeline.js.map +1 -0
  52. package/dist-client/components/can-pick.d.ts +15 -0
  53. package/dist-client/components/can-pick.js +16 -0
  54. package/dist-client/components/can-pick.js.map +1 -0
  55. package/dist-client/components/decision-content.d.ts +35 -0
  56. package/dist-client/components/decision-content.js +331 -0
  57. package/dist-client/components/decision-content.js.map +1 -0
  58. package/dist-client/components/decision-slots.d.ts +153 -0
  59. package/dist-client/components/decision-slots.js +152 -0
  60. package/dist-client/components/decision-slots.js.map +1 -0
  61. package/dist-client/components/mutation-outcome.d.ts +57 -0
  62. package/dist-client/components/mutation-outcome.js +78 -0
  63. package/dist-client/components/mutation-outcome.js.map +1 -0
  64. package/dist-client/components/say-outcome.d.ts +25 -0
  65. package/dist-client/components/say-outcome.js +51 -0
  66. package/dist-client/components/say-outcome.js.map +1 -0
  67. package/dist-client/components/state-ribon.d.ts +48 -0
  68. package/dist-client/components/state-ribon.js +225 -0
  69. package/dist-client/components/state-ribon.js.map +1 -0
  70. package/dist-client/components/timeline-entries.d.ts +38 -0
  71. package/dist-client/components/timeline-entries.js +62 -0
  72. package/dist-client/components/timeline-entries.js.map +1 -0
  73. package/dist-client/components/work-box-groups.d.ts +25 -0
  74. package/dist-client/components/work-box-groups.js +98 -0
  75. package/dist-client/components/work-box-groups.js.map +1 -0
  76. package/dist-client/due.d.ts +16 -0
  77. package/dist-client/due.js +78 -0
  78. package/dist-client/due.js.map +1 -0
  79. package/dist-client/entity360/person-open-work-section.d.ts +23 -0
  80. package/dist-client/entity360/person-open-work-section.js +79 -0
  81. package/dist-client/entity360/person-open-work-section.js.map +1 -0
  82. package/dist-client/grist-editor/grist-editor-activity-search-key.d.ts +12 -0
  83. package/dist-client/grist-editor/grist-editor-activity-search-key.js +70 -0
  84. package/dist-client/grist-editor/grist-editor-activity-search-key.js.map +1 -0
  85. package/dist-client/grist-editor/grist-renderer-activity-search-key.d.ts +3 -0
  86. package/dist-client/grist-editor/grist-renderer-activity-search-key.js +25 -0
  87. package/dist-client/grist-editor/grist-renderer-activity-search-key.js.map +1 -0
  88. package/dist-client/grist-editor/popup-activity-search-keys-input.d.ts +17 -0
  89. package/dist-client/grist-editor/popup-activity-search-keys-input.js +175 -0
  90. package/dist-client/grist-editor/popup-activity-search-keys-input.js.map +1 -0
  91. package/dist-client/index.d.ts +6 -0
  92. package/dist-client/index.js +7 -0
  93. package/dist-client/index.js.map +1 -0
  94. package/dist-client/my-work-menus.d.ts +90 -0
  95. package/dist-client/my-work-menus.js +20 -0
  96. package/dist-client/my-work-menus.js.map +1 -0
  97. package/dist-client/pages/activity/activity-list-page.d.ts +53 -0
  98. package/dist-client/pages/activity/activity-list-page.js +600 -0
  99. package/dist-client/pages/activity/activity-list-page.js.map +1 -0
  100. package/dist-client/pages/activity/activity-model-item-list.d.ts +24 -0
  101. package/dist-client/pages/activity/activity-model-item-list.js +292 -0
  102. package/dist-client/pages/activity/activity-model-item-list.js.map +1 -0
  103. package/dist-client/pages/activity/activity-page.d.ts +56 -0
  104. package/dist-client/pages/activity/activity-page.js +396 -0
  105. package/dist-client/pages/activity/activity-page.js.map +1 -0
  106. package/dist-client/pages/activity/activity-partial-view.d.ts +13 -0
  107. package/dist-client/pages/activity/activity-partial-view.js +56 -0
  108. package/dist-client/pages/activity/activity-partial-view.js.map +1 -0
  109. package/dist-client/pages/activity/assignee-roles-cell.d.ts +32 -0
  110. package/dist-client/pages/activity/assignee-roles-cell.js +26 -0
  111. package/dist-client/pages/activity/assignee-roles-cell.js.map +1 -0
  112. package/dist-client/pages/activity/starter-list-page.d.ts +31 -0
  113. package/dist-client/pages/activity/starter-list-page.js +172 -0
  114. package/dist-client/pages/activity/starter-list-page.js.map +1 -0
  115. package/dist-client/pages/activity-approval/activity-approval-importer.d.ts +23 -0
  116. package/dist-client/pages/activity-approval/activity-approval-importer.js +94 -0
  117. package/dist-client/pages/activity-approval/activity-approval-importer.js.map +1 -0
  118. package/dist-client/pages/activity-approval/activity-approval-list-page.d.ts +55 -0
  119. package/dist-client/pages/activity-approval/activity-approval-list-page.js +253 -0
  120. package/dist-client/pages/activity-approval/activity-approval-list-page.js.map +1 -0
  121. package/dist-client/pages/activity-approval/activity-approval-page.d.ts +158 -0
  122. package/dist-client/pages/activity-approval/activity-approval-page.js +876 -0
  123. package/dist-client/pages/activity-approval/activity-approval-page.js.map +1 -0
  124. package/dist-client/pages/activity-approval/approval-gate.d.ts +29 -0
  125. package/dist-client/pages/activity-approval/approval-gate.js +21 -0
  126. package/dist-client/pages/activity-approval/approval-gate.js.map +1 -0
  127. package/dist-client/pages/activity-catalog/activity-catalog-page.d.ts +31 -0
  128. package/dist-client/pages/activity-catalog/activity-catalog-page.js +420 -0
  129. package/dist-client/pages/activity-catalog/activity-catalog-page.js.map +1 -0
  130. package/dist-client/pages/activity-catalog/activity-detail-actions.d.ts +34 -0
  131. package/dist-client/pages/activity-catalog/activity-detail-actions.js +18 -0
  132. package/dist-client/pages/activity-catalog/activity-detail-actions.js.map +1 -0
  133. package/dist-client/pages/activity-catalog/activity-detail-page.d.ts +90 -0
  134. package/dist-client/pages/activity-catalog/activity-detail-page.js +525 -0
  135. package/dist-client/pages/activity-catalog/activity-detail-page.js.map +1 -0
  136. package/dist-client/pages/activity-catalog/activity-guide.d.ts +16 -0
  137. package/dist-client/pages/activity-catalog/activity-guide.js +5 -0
  138. package/dist-client/pages/activity-catalog/activity-guide.js.map +1 -0
  139. package/dist-client/pages/activity-catalog/activity-panels.d.ts +80 -0
  140. package/dist-client/pages/activity-catalog/activity-panels.js +53 -0
  141. package/dist-client/pages/activity-catalog/activity-panels.js.map +1 -0
  142. package/dist-client/pages/activity-catalog/activity-stage.d.ts +31 -0
  143. package/dist-client/pages/activity-catalog/activity-stage.js +44 -0
  144. package/dist-client/pages/activity-catalog/activity-stage.js.map +1 -0
  145. package/dist-client/pages/activity-instance/activity-instance-list-page.d.ts +42 -0
  146. package/dist-client/pages/activity-instance/activity-instance-list-page.js +306 -0
  147. package/dist-client/pages/activity-instance/activity-instance-list-page.js.map +1 -0
  148. package/dist-client/pages/activity-instance/activity-instance-search-page.d.ts +69 -0
  149. package/dist-client/pages/activity-instance/activity-instance-search-page.js +309 -0
  150. package/dist-client/pages/activity-instance/activity-instance-search-page.js.map +1 -0
  151. package/dist-client/pages/activity-instance/activity-instance-start-page.d.ts +54 -0
  152. package/dist-client/pages/activity-instance/activity-instance-start-page.js +557 -0
  153. package/dist-client/pages/activity-instance/activity-instance-start-page.js.map +1 -0
  154. package/dist-client/pages/activity-instance/activity-instance-view.d.ts +36 -0
  155. package/dist-client/pages/activity-instance/activity-instance-view.js +495 -0
  156. package/dist-client/pages/activity-instance/activity-instance-view.js.map +1 -0
  157. package/dist-client/pages/activity-instance/discard-offer.d.ts +11 -0
  158. package/dist-client/pages/activity-instance/discard-offer.js +11 -0
  159. package/dist-client/pages/activity-instance/discard-offer.js.map +1 -0
  160. package/dist-client/pages/activity-stats/activity-stats-importer.d.ts +23 -0
  161. package/dist-client/pages/activity-stats/activity-stats-importer.js +94 -0
  162. package/dist-client/pages/activity-stats/activity-stats-importer.js.map +1 -0
  163. package/dist-client/pages/activity-stats/activity-stats-list-page.d.ts +55 -0
  164. package/dist-client/pages/activity-stats/activity-stats-list-page.js +253 -0
  165. package/dist-client/pages/activity-stats/activity-stats-list-page.js.map +1 -0
  166. package/dist-client/pages/activity-store/activity-store-page.d.ts +41 -0
  167. package/dist-client/pages/activity-store/activity-store-page.js +210 -0
  168. package/dist-client/pages/activity-store/activity-store-page.js.map +1 -0
  169. package/dist-client/pages/activity-supervisor/reporter-list-page.d.ts +30 -0
  170. package/dist-client/pages/activity-supervisor/reporter-list-page.js +190 -0
  171. package/dist-client/pages/activity-supervisor/reporter-list-page.js.map +1 -0
  172. package/dist-client/pages/activity-template/activity-template-importer.d.ts +11 -0
  173. package/dist-client/pages/activity-template/activity-template-importer.js +98 -0
  174. package/dist-client/pages/activity-template/activity-template-importer.js.map +1 -0
  175. package/dist-client/pages/activity-template/activity-template-list-page.d.ts +53 -0
  176. package/dist-client/pages/activity-template/activity-template-list-page.js +377 -0
  177. package/dist-client/pages/activity-template/activity-template-list-page.js.map +1 -0
  178. package/dist-client/pages/activity-template/activity-template-model-item-list.d.ts +1 -0
  179. package/dist-client/pages/activity-template/activity-template-model-item-list.js +41 -0
  180. package/dist-client/pages/activity-template/activity-template-model-item-list.js.map +1 -0
  181. package/dist-client/pages/activity-thread/activity-thread-importer.d.ts +11 -0
  182. package/dist-client/pages/activity-thread/activity-thread-importer.js +96 -0
  183. package/dist-client/pages/activity-thread/activity-thread-importer.js.map +1 -0
  184. package/dist-client/pages/activity-thread/activity-thread-list-page.d.ts +52 -0
  185. package/dist-client/pages/activity-thread/activity-thread-list-page.js +248 -0
  186. package/dist-client/pages/activity-thread/activity-thread-list-page.js.map +1 -0
  187. package/dist-client/pages/activity-thread/activity-thread-page.d.ts +91 -0
  188. package/dist-client/pages/activity-thread/activity-thread-page.js +594 -0
  189. package/dist-client/pages/activity-thread/activity-thread-page.js.map +1 -0
  190. package/dist-client/pages/activity-thread/activity-thread-view-page.d.ts +56 -0
  191. package/dist-client/pages/activity-thread/activity-thread-view-page.js +386 -0
  192. package/dist-client/pages/activity-thread/activity-thread-view-page.js.map +1 -0
  193. package/dist-client/pages/activity-thread/activity-thread-view.d.ts +31 -0
  194. package/dist-client/pages/activity-thread/activity-thread-view.js +134 -0
  195. package/dist-client/pages/activity-thread/activity-thread-view.js.map +1 -0
  196. package/dist-client/pages/activity-thread/thread-sections.d.ts +34 -0
  197. package/dist-client/pages/activity-thread/thread-sections.js +36 -0
  198. package/dist-client/pages/activity-thread/thread-sections.js.map +1 -0
  199. package/dist-client/pages/approval-progress/approval-progress-page.d.ts +46 -0
  200. package/dist-client/pages/approval-progress/approval-progress-page.js +294 -0
  201. package/dist-client/pages/approval-progress/approval-progress-page.js.map +1 -0
  202. package/dist-client/pages/installable-activity/installable-activity-list-page.d.ts +64 -0
  203. package/dist-client/pages/installable-activity/installable-activity-list-page.js +424 -0
  204. package/dist-client/pages/installable-activity/installable-activity-list-page.js.map +1 -0
  205. package/dist-client/pages/installable-activity/installable-activity-model-item-list.d.ts +1 -0
  206. package/dist-client/pages/installable-activity/installable-activity-model-item-list.js +20 -0
  207. package/dist-client/pages/installable-activity/installable-activity-model-item-list.js.map +1 -0
  208. package/dist-client/pages/todo/approval-done-list-page.d.ts +42 -0
  209. package/dist-client/pages/todo/approval-done-list-page.js +365 -0
  210. package/dist-client/pages/todo/approval-done-list-page.js.map +1 -0
  211. package/dist-client/pages/todo/approval-pending-list-page.d.ts +79 -0
  212. package/dist-client/pages/todo/approval-pending-list-page.js +683 -0
  213. package/dist-client/pages/todo/approval-pending-list-page.js.map +1 -0
  214. package/dist-client/pages/todo/done-list-calendar-page.d.ts +47 -0
  215. package/dist-client/pages/todo/done-list-calendar-page.js +379 -0
  216. package/dist-client/pages/todo/done-list-calendar-page.js.map +1 -0
  217. package/dist-client/pages/todo/draft-list-page.d.ts +64 -0
  218. package/dist-client/pages/todo/draft-list-page.js +404 -0
  219. package/dist-client/pages/todo/draft-list-page.js.map +1 -0
  220. package/dist-client/pages/todo/list-thumbnail.d.ts +25 -0
  221. package/dist-client/pages/todo/list-thumbnail.js +25 -0
  222. package/dist-client/pages/todo/list-thumbnail.js.map +1 -0
  223. package/dist-client/pages/todo/pickable-list-page.d.ts +37 -0
  224. package/dist-client/pages/todo/pickable-list-page.js +271 -0
  225. package/dist-client/pages/todo/pickable-list-page.js.map +1 -0
  226. package/dist-client/pages/todo/todo-list-page.d.ts +66 -0
  227. package/dist-client/pages/todo/todo-list-page.js +503 -0
  228. package/dist-client/pages/todo/todo-list-page.js.map +1 -0
  229. package/dist-client/pages/todo/work-box.d.ts +52 -0
  230. package/dist-client/pages/todo/work-box.js +54 -0
  231. package/dist-client/pages/todo/work-box.js.map +1 -0
  232. package/dist-client/pages/work-door/door-links.d.ts +22 -0
  233. package/dist-client/pages/work-door/door-links.js +20 -0
  234. package/dist-client/pages/work-door/door-links.js.map +1 -0
  235. package/dist-client/pages/work-door/door-sentence.d.ts +75 -0
  236. package/dist-client/pages/work-door/door-sentence.js +107 -0
  237. package/dist-client/pages/work-door/door-sentence.js.map +1 -0
  238. package/dist-client/pages/work-door/door-words.d.ts +48 -0
  239. package/dist-client/pages/work-door/door-words.js +84 -0
  240. package/dist-client/pages/work-door/door-words.js.map +1 -0
  241. package/dist-client/route.d.ts +1 -0
  242. package/dist-client/route.js +80 -0
  243. package/dist-client/route.js.map +1 -0
  244. package/dist-client/templates/activity-approval-context-template.d.ts +3 -0
  245. package/dist-client/templates/activity-approval-context-template.js +105 -0
  246. package/dist-client/templates/activity-approval-context-template.js.map +1 -0
  247. package/dist-client/templates/activity-instance-context-template.d.ts +3 -0
  248. package/dist-client/templates/activity-instance-context-template.js +118 -0
  249. package/dist-client/templates/activity-instance-context-template.js.map +1 -0
  250. package/dist-client/templates/activity-thread-context-template.d.ts +3 -0
  251. package/dist-client/templates/activity-thread-context-template.js +74 -0
  252. package/dist-client/templates/activity-thread-context-template.js.map +1 -0
  253. package/dist-client/templates/context-panel.d.ts +26 -0
  254. package/dist-client/templates/context-panel.js +182 -0
  255. package/dist-client/templates/context-panel.js.map +1 -0
  256. package/dist-client/tsconfig.tsbuildinfo +1 -0
  257. package/dist-client/types/activity-approval.d.ts +36 -0
  258. package/dist-client/types/activity-approval.js +17 -0
  259. package/dist-client/types/activity-approval.js.map +1 -0
  260. package/dist-client/types/activity-instance-type.d.ts +77 -0
  261. package/dist-client/types/activity-instance-type.js +11 -0
  262. package/dist-client/types/activity-instance-type.js.map +1 -0
  263. package/dist-client/types/activity-instance.d.ts +72 -0
  264. package/dist-client/types/activity-instance.js +36 -0
  265. package/dist-client/types/activity-instance.js.map +1 -0
  266. package/dist-client/types/activity-model-type.d.ts +31 -0
  267. package/dist-client/types/activity-model-type.js +18 -0
  268. package/dist-client/types/activity-model-type.js.map +1 -0
  269. package/dist-client/types/activity-search-key-item-type.d.ts +6 -0
  270. package/dist-client/types/activity-search-key-item-type.js +3 -0
  271. package/dist-client/types/activity-search-key-item-type.js.map +1 -0
  272. package/dist-client/types/activity-thread-history.d.ts +28 -0
  273. package/dist-client/types/activity-thread-history.js +7 -0
  274. package/dist-client/types/activity-thread-history.js.map +1 -0
  275. package/dist-client/types/activity-thread-type.d.ts +15 -0
  276. package/dist-client/types/activity-thread-type.js +7 -0
  277. package/dist-client/types/activity-thread-type.js.map +1 -0
  278. package/dist-client/types/activity-thread.d.ts +39 -0
  279. package/dist-client/types/activity-thread.js +18 -0
  280. package/dist-client/types/activity-thread.js.map +1 -0
  281. package/dist-client/types/activity.d.ts +68 -0
  282. package/dist-client/types/activity.js +40 -0
  283. package/dist-client/types/activity.js.map +1 -0
  284. package/dist-client/types/types.d.ts +23 -0
  285. package/dist-client/types/types.js +42 -0
  286. package/dist-client/types/types.js.map +1 -0
  287. package/dist-client/when.d.ts +4 -0
  288. package/dist-client/when.js +72 -0
  289. package/dist-client/when.js.map +1 -0
  290. package/dist-client/work-calendar-sources.d.ts +96 -0
  291. package/dist-client/work-calendar-sources.js +88 -0
  292. package/dist-client/work-calendar-sources.js.map +1 -0
  293. package/dist-server/controllers/activity-approval/_abort.d.ts +5 -0
  294. package/dist-server/controllers/activity-approval/_abort.js +29 -0
  295. package/dist-server/controllers/activity-approval/_abort.js.map +1 -0
  296. package/dist-server/controllers/activity-approval/abort.d.ts +5 -0
  297. package/dist-server/controllers/activity-approval/abort.js +35 -0
  298. package/dist-server/controllers/activity-approval/abort.js.map +1 -0
  299. package/dist-server/controllers/activity-approval/approval-line.d.ts +138 -0
  300. package/dist-server/controllers/activity-approval/approval-line.js +185 -0
  301. package/dist-server/controllers/activity-approval/approval-line.js.map +1 -0
  302. package/dist-server/controllers/activity-approval/approve.d.ts +5 -0
  303. package/dist-server/controllers/activity-approval/approve.js +142 -0
  304. package/dist-server/controllers/activity-approval/approve.js.map +1 -0
  305. package/dist-server/controllers/activity-approval/check-authority.d.ts +8 -0
  306. package/dist-server/controllers/activity-approval/check-authority.js +29 -0
  307. package/dist-server/controllers/activity-approval/check-authority.js.map +1 -0
  308. package/dist-server/controllers/activity-approval/claim.d.ts +42 -0
  309. package/dist-server/controllers/activity-approval/claim.js +77 -0
  310. package/dist-server/controllers/activity-approval/claim.js.map +1 -0
  311. package/dist-server/controllers/activity-approval/create-approval.d.ts +41 -0
  312. package/dist-server/controllers/activity-approval/create-approval.js +85 -0
  313. package/dist-server/controllers/activity-approval/create-approval.js.map +1 -0
  314. package/dist-server/controllers/activity-approval/delegate.d.ts +23 -0
  315. package/dist-server/controllers/activity-approval/delegate.js +113 -0
  316. package/dist-server/controllers/activity-approval/delegate.js.map +1 -0
  317. package/dist-server/controllers/activity-approval/delegation.d.ts +21 -0
  318. package/dist-server/controllers/activity-approval/delegation.js +17 -0
  319. package/dist-server/controllers/activity-approval/delegation.js.map +1 -0
  320. package/dist-server/controllers/activity-approval/opinion.d.ts +10 -0
  321. package/dist-server/controllers/activity-approval/opinion.js +43 -0
  322. package/dist-server/controllers/activity-approval/opinion.js.map +1 -0
  323. package/dist-server/controllers/activity-approval/reject.d.ts +5 -0
  324. package/dist-server/controllers/activity-approval/reject.js +93 -0
  325. package/dist-server/controllers/activity-approval/reject.js.map +1 -0
  326. package/dist-server/controllers/activity-approval/resolve-judgeable-seats.d.ts +21 -0
  327. package/dist-server/controllers/activity-approval/resolve-judgeable-seats.js +60 -0
  328. package/dist-server/controllers/activity-approval/resolve-judgeable-seats.js.map +1 -0
  329. package/dist-server/controllers/activity-approval/save.d.ts +5 -0
  330. package/dist-server/controllers/activity-approval/save.js +56 -0
  331. package/dist-server/controllers/activity-approval/save.js.map +1 -0
  332. package/dist-server/controllers/activity-approval/seat-standing.d.ts +66 -0
  333. package/dist-server/controllers/activity-approval/seat-standing.js +57 -0
  334. package/dist-server/controllers/activity-approval/seat-standing.js.map +1 -0
  335. package/dist-server/controllers/activity-installation/activity-installation-controller.d.ts +79 -0
  336. package/dist-server/controllers/activity-installation/activity-installation-controller.js +99 -0
  337. package/dist-server/controllers/activity-installation/activity-installation-controller.js.map +1 -0
  338. package/dist-server/controllers/activity-installation/call-webhook.d.ts +3 -0
  339. package/dist-server/controllers/activity-installation/call-webhook.js +42 -0
  340. package/dist-server/controllers/activity-installation/call-webhook.js.map +1 -0
  341. package/dist-server/controllers/activity-installation/installable-to-activity.d.ts +77 -0
  342. package/dist-server/controllers/activity-installation/installable-to-activity.js +68 -0
  343. package/dist-server/controllers/activity-installation/installable-to-activity.js.map +1 -0
  344. package/dist-server/controllers/activity-installation/registry-conflict.d.ts +47 -0
  345. package/dist-server/controllers/activity-installation/registry-conflict.js +47 -0
  346. package/dist-server/controllers/activity-installation/registry-conflict.js.map +1 -0
  347. package/dist-server/controllers/activity-instance/abort.d.ts +5 -0
  348. package/dist-server/controllers/activity-instance/abort.js +62 -0
  349. package/dist-server/controllers/activity-instance/abort.js.map +1 -0
  350. package/dist-server/controllers/activity-instance/approval-expectation.d.ts +34 -0
  351. package/dist-server/controllers/activity-instance/approval-expectation.js +18 -0
  352. package/dist-server/controllers/activity-instance/approval-expectation.js.map +1 -0
  353. package/dist-server/controllers/activity-instance/approval-line-input.d.ts +29 -0
  354. package/dist-server/controllers/activity-instance/approval-line-input.js +44 -0
  355. package/dist-server/controllers/activity-instance/approval-line-input.js.map +1 -0
  356. package/dist-server/controllers/activity-instance/assign.d.ts +8 -0
  357. package/dist-server/controllers/activity-instance/assign.js +152 -0
  358. package/dist-server/controllers/activity-instance/assign.js.map +1 -0
  359. package/dist-server/controllers/activity-instance/assignee-input.d.ts +25 -0
  360. package/dist-server/controllers/activity-instance/assignee-input.js +28 -0
  361. package/dist-server/controllers/activity-instance/assignee-input.js.map +1 -0
  362. package/dist-server/controllers/activity-instance/claim-draft.d.ts +17 -0
  363. package/dist-server/controllers/activity-instance/claim-draft.js +30 -0
  364. package/dist-server/controllers/activity-instance/claim-draft.js.map +1 -0
  365. package/dist-server/controllers/activity-instance/discard-draft.d.ts +22 -0
  366. package/dist-server/controllers/activity-instance/discard-draft.js +54 -0
  367. package/dist-server/controllers/activity-instance/discard-draft.js.map +1 -0
  368. package/dist-server/controllers/activity-instance/draft.d.ts +3 -0
  369. package/dist-server/controllers/activity-instance/draft.js +93 -0
  370. package/dist-server/controllers/activity-instance/draft.js.map +1 -0
  371. package/dist-server/controllers/activity-instance/end.d.ts +6 -0
  372. package/dist-server/controllers/activity-instance/end.js +65 -0
  373. package/dist-server/controllers/activity-instance/end.js.map +1 -0
  374. package/dist-server/controllers/activity-instance/entitlement.d.ts +25 -0
  375. package/dist-server/controllers/activity-instance/entitlement.js +110 -0
  376. package/dist-server/controllers/activity-instance/entitlement.js.map +1 -0
  377. package/dist-server/controllers/activity-instance/index.d.ts +6 -0
  378. package/dist-server/controllers/activity-instance/index.js +10 -0
  379. package/dist-server/controllers/activity-instance/index.js.map +1 -0
  380. package/dist-server/controllers/activity-instance/issue.d.ts +3 -0
  381. package/dist-server/controllers/activity-instance/issue.js +272 -0
  382. package/dist-server/controllers/activity-instance/issue.js.map +1 -0
  383. package/dist-server/controllers/activity-instance/pick.d.ts +2 -0
  384. package/dist-server/controllers/activity-instance/pick.js +112 -0
  385. package/dist-server/controllers/activity-instance/pick.js.map +1 -0
  386. package/dist-server/controllers/activity-read/assert-may-read.d.ts +20 -0
  387. package/dist-server/controllers/activity-read/assert-may-read.js +108 -0
  388. package/dist-server/controllers/activity-read/assert-may-read.js.map +1 -0
  389. package/dist-server/controllers/activity-read/participates.d.ts +41 -0
  390. package/dist-server/controllers/activity-read/participates.js +42 -0
  391. package/dist-server/controllers/activity-read/participates.js.map +1 -0
  392. package/dist-server/controllers/activity-thread/_abort.d.ts +5 -0
  393. package/dist-server/controllers/activity-thread/_abort.js +36 -0
  394. package/dist-server/controllers/activity-thread/_abort.js.map +1 -0
  395. package/dist-server/controllers/activity-thread/abort.d.ts +5 -0
  396. package/dist-server/controllers/activity-thread/abort.js +45 -0
  397. package/dist-server/controllers/activity-thread/abort.js.map +1 -0
  398. package/dist-server/controllers/activity-thread/check-authority.d.ts +2 -0
  399. package/dist-server/controllers/activity-thread/check-authority.js +65 -0
  400. package/dist-server/controllers/activity-thread/check-authority.js.map +1 -0
  401. package/dist-server/controllers/activity-thread/delegate.d.ts +7 -0
  402. package/dist-server/controllers/activity-thread/delegate.js +66 -0
  403. package/dist-server/controllers/activity-thread/delegate.js.map +1 -0
  404. package/dist-server/controllers/activity-thread/end.d.ts +6 -0
  405. package/dist-server/controllers/activity-thread/end.js +44 -0
  406. package/dist-server/controllers/activity-thread/end.js.map +1 -0
  407. package/dist-server/controllers/activity-thread/index.d.ts +7 -0
  408. package/dist-server/controllers/activity-thread/index.js +11 -0
  409. package/dist-server/controllers/activity-thread/index.js.map +1 -0
  410. package/dist-server/controllers/activity-thread/restart.d.ts +2 -0
  411. package/dist-server/controllers/activity-thread/restart.js +63 -0
  412. package/dist-server/controllers/activity-thread/restart.js.map +1 -0
  413. package/dist-server/controllers/activity-thread/save.d.ts +3 -0
  414. package/dist-server/controllers/activity-thread/save.js +45 -0
  415. package/dist-server/controllers/activity-thread/save.js.map +1 -0
  416. package/dist-server/controllers/activity-thread/start.d.ts +2 -0
  417. package/dist-server/controllers/activity-thread/start.js +43 -0
  418. package/dist-server/controllers/activity-thread/start.js.map +1 -0
  419. package/dist-server/controllers/activity-thread/submit.d.ts +6 -0
  420. package/dist-server/controllers/activity-thread/submit.js +90 -0
  421. package/dist-server/controllers/activity-thread/submit.js.map +1 -0
  422. package/dist-server/controllers/common.d.ts +34 -0
  423. package/dist-server/controllers/common.js +346 -0
  424. package/dist-server/controllers/common.js.map +1 -0
  425. package/dist-server/controllers/index.d.ts +5 -0
  426. package/dist-server/controllers/index.js +18 -0
  427. package/dist-server/controllers/index.js.map +1 -0
  428. package/dist-server/index.d.ts +6 -0
  429. package/dist-server/index.js +18 -0
  430. package/dist-server/index.js.map +1 -0
  431. package/dist-server/role-tasks.d.ts +2 -0
  432. package/dist-server/role-tasks.js +16 -0
  433. package/dist-server/role-tasks.js.map +1 -0
  434. package/dist-server/routes.d.ts +1 -0
  435. package/dist-server/routes.js +57 -0
  436. package/dist-server/routes.js.map +1 -0
  437. package/dist-server/service/activity/activity-decision-key-item-type.d.ts +206 -0
  438. package/dist-server/service/activity/activity-decision-key-item-type.js +182 -0
  439. package/dist-server/service/activity/activity-decision-key-item-type.js.map +1 -0
  440. package/dist-server/service/activity/activity-history.d.ts +44 -0
  441. package/dist-server/service/activity/activity-history.js +220 -0
  442. package/dist-server/service/activity/activity-history.js.map +1 -0
  443. package/dist-server/service/activity/activity-model-type.d.ts +49 -0
  444. package/dist-server/service/activity/activity-model-type.js +138 -0
  445. package/dist-server/service/activity/activity-model-type.js.map +1 -0
  446. package/dist-server/service/activity/activity-mutation.d.ts +12 -0
  447. package/dist-server/service/activity/activity-mutation.js +416 -0
  448. package/dist-server/service/activity/activity-mutation.js.map +1 -0
  449. package/dist-server/service/activity/activity-query.d.ts +24 -0
  450. package/dist-server/service/activity/activity-query.js +310 -0
  451. package/dist-server/service/activity/activity-query.js.map +1 -0
  452. package/dist-server/service/activity/activity-search-key-item-type.d.ts +6 -0
  453. package/dist-server/service/activity/activity-search-key-item-type.js +28 -0
  454. package/dist-server/service/activity/activity-search-key-item-type.js.map +1 -0
  455. package/dist-server/service/activity/activity-type.d.ts +84 -0
  456. package/dist-server/service/activity/activity-type.js +269 -0
  457. package/dist-server/service/activity/activity-type.js.map +1 -0
  458. package/dist-server/service/activity/activity.d.ts +135 -0
  459. package/dist-server/service/activity/activity.js +328 -0
  460. package/dist-server/service/activity/activity.js.map +1 -0
  461. package/dist-server/service/activity/approval-line-seats.d.ts +12 -0
  462. package/dist-server/service/activity/approval-line-seats.js +68 -0
  463. package/dist-server/service/activity/approval-line-seats.js.map +1 -0
  464. package/dist-server/service/activity/credential-field.d.ts +35 -0
  465. package/dist-server/service/activity/credential-field.js +89 -0
  466. package/dist-server/service/activity/credential-field.js.map +1 -0
  467. package/dist-server/service/activity/decision-key-declaration.d.ts +106 -0
  468. package/dist-server/service/activity/decision-key-declaration.js +181 -0
  469. package/dist-server/service/activity/decision-key-declaration.js.map +1 -0
  470. package/dist-server/service/activity/declaration-guard-subscriber.d.ts +24 -0
  471. package/dist-server/service/activity/declaration-guard-subscriber.js +46 -0
  472. package/dist-server/service/activity/declaration-guard-subscriber.js.map +1 -0
  473. package/dist-server/service/activity/event-subscriber.d.ts +7 -0
  474. package/dist-server/service/activity/event-subscriber.js +21 -0
  475. package/dist-server/service/activity/event-subscriber.js.map +1 -0
  476. package/dist-server/service/activity/freeze-decision-sentences-for.d.ts +11 -0
  477. package/dist-server/service/activity/freeze-decision-sentences-for.js +18 -0
  478. package/dist-server/service/activity/freeze-decision-sentences-for.js.map +1 -0
  479. package/dist-server/service/activity/index.d.ts +9 -0
  480. package/dist-server/service/activity/index.js +13 -0
  481. package/dist-server/service/activity/index.js.map +1 -0
  482. package/dist-server/service/activity/search-key-declaration.d.ts +38 -0
  483. package/dist-server/service/activity/search-key-declaration.js +49 -0
  484. package/dist-server/service/activity/search-key-declaration.js.map +1 -0
  485. package/dist-server/service/activity-approval/activity-approval-mutation.d.ts +8 -0
  486. package/dist-server/service/activity-approval/activity-approval-mutation.js +81 -0
  487. package/dist-server/service/activity-approval/activity-approval-mutation.js.map +1 -0
  488. package/dist-server/service/activity-approval/activity-approval-query.d.ts +42 -0
  489. package/dist-server/service/activity-approval/activity-approval-query.js +391 -0
  490. package/dist-server/service/activity-approval/activity-approval-query.js.map +1 -0
  491. package/dist-server/service/activity-approval/activity-approval-subscription.d.ts +6 -0
  492. package/dist-server/service/activity-approval/activity-approval-subscription.js +39 -0
  493. package/dist-server/service/activity-approval/activity-approval-subscription.js.map +1 -0
  494. package/dist-server/service/activity-approval/activity-approval-type.d.ts +10 -0
  495. package/dist-server/service/activity-approval/activity-approval-type.js +39 -0
  496. package/dist-server/service/activity-approval/activity-approval-type.js.map +1 -0
  497. package/dist-server/service/activity-approval/activity-approval.d.ts +67 -0
  498. package/dist-server/service/activity-approval/activity-approval.js +183 -0
  499. package/dist-server/service/activity-approval/activity-approval.js.map +1 -0
  500. package/dist-server/service/activity-approval/event-subscriber.d.ts +7 -0
  501. package/dist-server/service/activity-approval/event-subscriber.js +46 -0
  502. package/dist-server/service/activity-approval/event-subscriber.js.map +1 -0
  503. package/dist-server/service/activity-approval/index.d.ts +8 -0
  504. package/dist-server/service/activity-approval/index.js +12 -0
  505. package/dist-server/service/activity-approval/index.js.map +1 -0
  506. package/dist-server/service/activity-approval/my-pending-approvals.d.ts +33 -0
  507. package/dist-server/service/activity-approval/my-pending-approvals.js +52 -0
  508. package/dist-server/service/activity-approval/my-pending-approvals.js.map +1 -0
  509. package/dist-server/service/activity-instance/activity-instance-history.d.ts +60 -0
  510. package/dist-server/service/activity-instance/activity-instance-history.js +294 -0
  511. package/dist-server/service/activity-instance/activity-instance-history.js.map +1 -0
  512. package/dist-server/service/activity-instance/activity-instance-mutation.d.ts +16 -0
  513. package/dist-server/service/activity-instance/activity-instance-mutation.js +185 -0
  514. package/dist-server/service/activity-instance/activity-instance-mutation.js.map +1 -0
  515. package/dist-server/service/activity-instance/activity-instance-query.d.ts +27 -0
  516. package/dist-server/service/activity-instance/activity-instance-query.js +386 -0
  517. package/dist-server/service/activity-instance/activity-instance-query.js.map +1 -0
  518. package/dist-server/service/activity-instance/activity-instance-subscription.d.ts +6 -0
  519. package/dist-server/service/activity-instance/activity-instance-subscription.js +39 -0
  520. package/dist-server/service/activity-instance/activity-instance-subscription.js.map +1 -0
  521. package/dist-server/service/activity-instance/activity-instance-type.d.ts +107 -0
  522. package/dist-server/service/activity-instance/activity-instance-type.js +301 -0
  523. package/dist-server/service/activity-instance/activity-instance-type.js.map +1 -0
  524. package/dist-server/service/activity-instance/activity-instance.d.ts +81 -0
  525. package/dist-server/service/activity-instance/activity-instance.js +324 -0
  526. package/dist-server/service/activity-instance/activity-instance.js.map +1 -0
  527. package/dist-server/service/activity-instance/assignee-pool.d.ts +59 -0
  528. package/dist-server/service/activity-instance/assignee-pool.js +99 -0
  529. package/dist-server/service/activity-instance/assignee-pool.js.map +1 -0
  530. package/dist-server/service/activity-instance/draft-list-states.d.ts +39 -0
  531. package/dist-server/service/activity-instance/draft-list-states.js +51 -0
  532. package/dist-server/service/activity-instance/draft-list-states.js.map +1 -0
  533. package/dist-server/service/activity-instance/event-subscriber.d.ts +21 -0
  534. package/dist-server/service/activity-instance/event-subscriber.js +59 -0
  535. package/dist-server/service/activity-instance/event-subscriber.js.map +1 -0
  536. package/dist-server/service/activity-instance/index.d.ts +9 -0
  537. package/dist-server/service/activity-instance/index.js +13 -0
  538. package/dist-server/service/activity-instance/index.js.map +1 -0
  539. package/dist-server/service/activity-instance/request-box.d.ts +2 -0
  540. package/dist-server/service/activity-instance/request-box.js +18 -0
  541. package/dist-server/service/activity-instance/request-box.js.map +1 -0
  542. package/dist-server/service/activity-stats/activity-stats-query.d.ts +9 -0
  543. package/dist-server/service/activity-stats/activity-stats-query.js +230 -0
  544. package/dist-server/service/activity-stats/activity-stats-query.js.map +1 -0
  545. package/dist-server/service/activity-stats/activity-stats-type.d.ts +27 -0
  546. package/dist-server/service/activity-stats/activity-stats-type.js +74 -0
  547. package/dist-server/service/activity-stats/activity-stats-type.js.map +1 -0
  548. package/dist-server/service/activity-stats/event-placement.d.ts +55 -0
  549. package/dist-server/service/activity-stats/event-placement.js +82 -0
  550. package/dist-server/service/activity-stats/event-placement.js.map +1 -0
  551. package/dist-server/service/activity-stats/index.d.ts +2 -0
  552. package/dist-server/service/activity-stats/index.js +6 -0
  553. package/dist-server/service/activity-stats/index.js.map +1 -0
  554. package/dist-server/service/activity-summary/activity-summary-query.d.ts +8 -0
  555. package/dist-server/service/activity-summary/activity-summary-query.js +137 -0
  556. package/dist-server/service/activity-summary/activity-summary-query.js.map +1 -0
  557. package/dist-server/service/activity-summary/activity-summary.d.ts +6 -0
  558. package/dist-server/service/activity-summary/activity-summary.js +28 -0
  559. package/dist-server/service/activity-summary/activity-summary.js.map +1 -0
  560. package/dist-server/service/activity-summary/index.d.ts +5 -0
  561. package/dist-server/service/activity-summary/index.js +9 -0
  562. package/dist-server/service/activity-summary/index.js.map +1 -0
  563. package/dist-server/service/activity-summary/open-work.d.ts +4 -0
  564. package/dist-server/service/activity-summary/open-work.js +51 -0
  565. package/dist-server/service/activity-summary/open-work.js.map +1 -0
  566. package/dist-server/service/activity-summary/person-open-work.d.ts +17 -0
  567. package/dist-server/service/activity-summary/person-open-work.js +68 -0
  568. package/dist-server/service/activity-summary/person-open-work.js.map +1 -0
  569. package/dist-server/service/activity-template/activity-template-history.d.ts +32 -0
  570. package/dist-server/service/activity-template/activity-template-history.js +165 -0
  571. package/dist-server/service/activity-template/activity-template-history.js.map +1 -0
  572. package/dist-server/service/activity-template/activity-template-mutation.d.ts +10 -0
  573. package/dist-server/service/activity-template/activity-template-mutation.js +194 -0
  574. package/dist-server/service/activity-template/activity-template-mutation.js.map +1 -0
  575. package/dist-server/service/activity-template/activity-template-query.d.ts +14 -0
  576. package/dist-server/service/activity-template/activity-template-query.js +112 -0
  577. package/dist-server/service/activity-template/activity-template-query.js.map +1 -0
  578. package/dist-server/service/activity-template/activity-template-type.d.ts +44 -0
  579. package/dist-server/service/activity-template/activity-template-type.js +164 -0
  580. package/dist-server/service/activity-template/activity-template-type.js.map +1 -0
  581. package/dist-server/service/activity-template/activity-template.d.ts +36 -0
  582. package/dist-server/service/activity-template/activity-template.js +154 -0
  583. package/dist-server/service/activity-template/activity-template.js.map +1 -0
  584. package/dist-server/service/activity-template/event-subscriber.d.ts +7 -0
  585. package/dist-server/service/activity-template/event-subscriber.js +21 -0
  586. package/dist-server/service/activity-template/event-subscriber.js.map +1 -0
  587. package/dist-server/service/activity-template/index.d.ts +8 -0
  588. package/dist-server/service/activity-template/index.js +12 -0
  589. package/dist-server/service/activity-template/index.js.map +1 -0
  590. package/dist-server/service/activity-thread/activity-thread-history-query.d.ts +10 -0
  591. package/dist-server/service/activity-thread/activity-thread-history-query.js +69 -0
  592. package/dist-server/service/activity-thread/activity-thread-history-query.js.map +1 -0
  593. package/dist-server/service/activity-thread/activity-thread-history.d.ts +39 -0
  594. package/dist-server/service/activity-thread/activity-thread-history.js +211 -0
  595. package/dist-server/service/activity-thread/activity-thread-history.js.map +1 -0
  596. package/dist-server/service/activity-thread/activity-thread-mutation.d.ts +20 -0
  597. package/dist-server/service/activity-thread/activity-thread-mutation.js +115 -0
  598. package/dist-server/service/activity-thread/activity-thread-mutation.js.map +1 -0
  599. package/dist-server/service/activity-thread/activity-thread-query.d.ts +24 -0
  600. package/dist-server/service/activity-thread/activity-thread-query.js +276 -0
  601. package/dist-server/service/activity-thread/activity-thread-query.js.map +1 -0
  602. package/dist-server/service/activity-thread/activity-thread-subscription.d.ts +6 -0
  603. package/dist-server/service/activity-thread/activity-thread-subscription.js +38 -0
  604. package/dist-server/service/activity-thread/activity-thread-subscription.js.map +1 -0
  605. package/dist-server/service/activity-thread/activity-thread-type.d.ts +15 -0
  606. package/dist-server/service/activity-thread/activity-thread-type.js +50 -0
  607. package/dist-server/service/activity-thread/activity-thread-type.js.map +1 -0
  608. package/dist-server/service/activity-thread/activity-thread.d.ts +47 -0
  609. package/dist-server/service/activity-thread/activity-thread.js +197 -0
  610. package/dist-server/service/activity-thread/activity-thread.js.map +1 -0
  611. package/dist-server/service/activity-thread/event-subscriber.d.ts +13 -0
  612. package/dist-server/service/activity-thread/event-subscriber.js +45 -0
  613. package/dist-server/service/activity-thread/event-subscriber.js.map +1 -0
  614. package/dist-server/service/activity-thread/index.d.ts +10 -0
  615. package/dist-server/service/activity-thread/index.js +14 -0
  616. package/dist-server/service/activity-thread/index.js.map +1 -0
  617. package/dist-server/service/activity-thread/my-open-threads.d.ts +33 -0
  618. package/dist-server/service/activity-thread/my-open-threads.js +85 -0
  619. package/dist-server/service/activity-thread/my-open-threads.js.map +1 -0
  620. package/dist-server/service/activity-thread/todo-order.d.ts +49 -0
  621. package/dist-server/service/activity-thread/todo-order.js +70 -0
  622. package/dist-server/service/activity-thread/todo-order.js.map +1 -0
  623. package/dist-server/service/approval-notice/approval-notice-rules.d.ts +67 -0
  624. package/dist-server/service/approval-notice/approval-notice-rules.js +67 -0
  625. package/dist-server/service/approval-notice/approval-notice-rules.js.map +1 -0
  626. package/dist-server/service/approval-notice/approval-notice.d.ts +11 -0
  627. package/dist-server/service/approval-notice/approval-notice.js +76 -0
  628. package/dist-server/service/approval-notice/approval-notice.js.map +1 -0
  629. package/dist-server/service/approval-progress/approval-progress-query.d.ts +14 -0
  630. package/dist-server/service/approval-progress/approval-progress-query.js +142 -0
  631. package/dist-server/service/approval-progress/approval-progress-query.js.map +1 -0
  632. package/dist-server/service/approval-progress/approval-progress-rule.d.ts +67 -0
  633. package/dist-server/service/approval-progress/approval-progress-rule.js +102 -0
  634. package/dist-server/service/approval-progress/approval-progress-rule.js.map +1 -0
  635. package/dist-server/service/approval-progress/approval-progress-type.d.ts +44 -0
  636. package/dist-server/service/approval-progress/approval-progress-type.js +172 -0
  637. package/dist-server/service/approval-progress/approval-progress-type.js.map +1 -0
  638. package/dist-server/service/approval-progress/index.d.ts +2 -0
  639. package/dist-server/service/approval-progress/index.js +6 -0
  640. package/dist-server/service/approval-progress/index.js.map +1 -0
  641. package/dist-server/service/approval-progress/waiting-on.d.ts +15 -0
  642. package/dist-server/service/approval-progress/waiting-on.js +40 -0
  643. package/dist-server/service/approval-progress/waiting-on.js.map +1 -0
  644. package/dist-server/service/index.d.ts +24 -0
  645. package/dist-server/service/index.js +80 -0
  646. package/dist-server/service/index.js.map +1 -0
  647. package/dist-server/service/installable-activity/activity-readiness.d.ts +58 -0
  648. package/dist-server/service/installable-activity/activity-readiness.js +105 -0
  649. package/dist-server/service/installable-activity/activity-readiness.js.map +1 -0
  650. package/dist-server/service/installable-activity/index.d.ts +6 -0
  651. package/dist-server/service/installable-activity/index.js +10 -0
  652. package/dist-server/service/installable-activity/index.js.map +1 -0
  653. package/dist-server/service/installable-activity/installable-activity-mutation.d.ts +11 -0
  654. package/dist-server/service/installable-activity/installable-activity-mutation.js +83 -0
  655. package/dist-server/service/installable-activity/installable-activity-mutation.js.map +1 -0
  656. package/dist-server/service/installable-activity/installable-activity-query.d.ts +22 -0
  657. package/dist-server/service/installable-activity/installable-activity-query.js +127 -0
  658. package/dist-server/service/installable-activity/installable-activity-query.js.map +1 -0
  659. package/dist-server/service/installable-activity/installable-activity-type.d.ts +5 -0
  660. package/dist-server/service/installable-activity/installable-activity-type.js +21 -0
  661. package/dist-server/service/installable-activity/installable-activity-type.js.map +1 -0
  662. package/dist-server/service/installable-activity/installable-activity.d.ts +92 -0
  663. package/dist-server/service/installable-activity/installable-activity.js +140 -0
  664. package/dist-server/service/installable-activity/installable-activity.js.map +1 -0
  665. package/dist-server/service/nulls-last.d.ts +30 -0
  666. package/dist-server/service/nulls-last.js +37 -0
  667. package/dist-server/service/nulls-last.js.map +1 -0
  668. package/dist-server/service/subscription/roles-of.d.ts +9 -0
  669. package/dist-server/service/subscription/roles-of.js +17 -0
  670. package/dist-server/service/subscription/roles-of.js.map +1 -0
  671. package/dist-server/service/subscription/subscription-filters.d.ts +47 -0
  672. package/dist-server/service/subscription/subscription-filters.js +57 -0
  673. package/dist-server/service/subscription/subscription-filters.js.map +1 -0
  674. package/dist-server/service/work-door/activity-lookup.d.ts +70 -0
  675. package/dist-server/service/work-door/activity-lookup.js +110 -0
  676. package/dist-server/service/work-door/activity-lookup.js.map +1 -0
  677. package/dist-server/service/work-door/approval-line-standing.d.ts +106 -0
  678. package/dist-server/service/work-door/approval-line-standing.js +65 -0
  679. package/dist-server/service/work-door/approval-line-standing.js.map +1 -0
  680. package/dist-server/service/work-door/index.d.ts +15 -0
  681. package/dist-server/service/work-door/index.js +20 -0
  682. package/dist-server/service/work-door/index.js.map +1 -0
  683. package/dist-server/service/work-door/pass-work-door.d.ts +74 -0
  684. package/dist-server/service/work-door/pass-work-door.js +45 -0
  685. package/dist-server/service/work-door/pass-work-door.js.map +1 -0
  686. package/dist-server/service/work-door/work-door-declaration.d.ts +135 -0
  687. package/dist-server/service/work-door/work-door-declaration.js +87 -0
  688. package/dist-server/service/work-door/work-door-declaration.js.map +1 -0
  689. package/dist-server/service/work-door/work-door-event.d.ts +20 -0
  690. package/dist-server/service/work-door/work-door-event.js +25 -0
  691. package/dist-server/service/work-door/work-door-event.js.map +1 -0
  692. package/dist-server/service/work-door/work-door-journal-service.d.ts +47 -0
  693. package/dist-server/service/work-door/work-door-journal-service.js +75 -0
  694. package/dist-server/service/work-door/work-door-journal-service.js.map +1 -0
  695. package/dist-server/service/work-door/work-door-journal.d.ts +30 -0
  696. package/dist-server/service/work-door/work-door-journal.js +94 -0
  697. package/dist-server/service/work-door/work-door-journal.js.map +1 -0
  698. package/dist-server/service/work-door/work-door-not-used.d.ts +39 -0
  699. package/dist-server/service/work-door/work-door-not-used.js +86 -0
  700. package/dist-server/service/work-door/work-door-not-used.js.map +1 -0
  701. package/dist-server/service/work-door/work-door-resolver.d.ts +32 -0
  702. package/dist-server/service/work-door/work-door-resolver.js +152 -0
  703. package/dist-server/service/work-door/work-door-resolver.js.map +1 -0
  704. package/dist-server/service/work-door/work-door-service.d.ts +36 -0
  705. package/dist-server/service/work-door/work-door-service.js +127 -0
  706. package/dist-server/service/work-door/work-door-service.js.map +1 -0
  707. package/dist-server/service/work-door/work-door-type.d.ts +88 -0
  708. package/dist-server/service/work-door/work-door-type.js +206 -0
  709. package/dist-server/service/work-door/work-door-type.js.map +1 -0
  710. package/dist-server/service/work-door/work-door.d.ts +187 -0
  711. package/dist-server/service/work-door/work-door.js +119 -0
  712. package/dist-server/service/work-door/work-door.js.map +1 -0
  713. package/dist-server/tsconfig.tsbuildinfo +1 -0
  714. package/package.json +10 -10
  715. package/shared/approval-step.d.ts +21 -0
  716. package/shared/approval-step.js +55 -0
  717. package/tests/approval-progress-db.test.ts +143 -0
  718. package/things-factory.config.js +1 -0
  719. package/translations/en.json +20 -1
  720. package/translations/es.json +20 -1
  721. package/translations/ja.json +20 -1
  722. package/translations/ko.json +20 -1
  723. package/translations/ms.json +20 -1
  724. package/translations/zh.json +20 -1
@@ -0,0 +1,594 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import '@operato/list-state/ox-page-state.js';
3
+ import '@operato/property-editor/ox-properties-dynamic-view.js';
4
+ import '@operato/board/ox-board-viewer.js';
5
+ import '../../components/activity-thread-ribon.js';
6
+ import '../../components/activity-thread-timeline.js';
7
+ import gql from 'graphql-tag';
8
+ import { css, html, nothing } from 'lit';
9
+ import { unsafeHTML } from 'lit-html/directives/unsafe-html.js';
10
+ import { customElement, query, state } from 'lit/decorators.js';
11
+ import { keyed } from 'lit/directives/keyed.js';
12
+ import { client } from '@operato/graphql';
13
+ import { i18next, localize } from '@operato/i18n';
14
+ import { ranMutation } from '../../components/say-outcome.js';
15
+ import { CustomAlert, navigate, PageView } from '@operato/shell';
16
+ import { CommonButtonStyles, DocumentPageStyles, ScrollbarStyles } from '@operato/styles';
17
+ import { provider } from '@operato/board/board-provider.js';
18
+ import { ActivityFieldsStyles, inputSpecOf, outputSpecOf, renderGiven } from '../../components/activity-fields.js';
19
+ import { DecisionContentStyles, DecisionKeysFields, renderDecision } from '../../components/decision-content.js';
20
+ import { followupActions, sourceAddress } from '../../../shared/task-followup.js';
21
+ import { drawsAnything, submittableIn, threadSectionsOf } from './thread-sections.js';
22
+ const ActivityThreadFetchResult = `\
23
+ { id
24
+ state
25
+ dueAt
26
+ assignedAt
27
+ assignee { id
28
+ name
29
+ }
30
+ updatedAt
31
+ output
32
+ round
33
+ activityApprovals { round
34
+ order
35
+ approver { id name
36
+ }
37
+ judgment
38
+ participation
39
+ comment
40
+ createdAt
41
+ updatedAt
42
+ terminatedAt
43
+ }
44
+ activityThreadHistories { transaction
45
+ reason
46
+ updater { id name
47
+ }
48
+ updatedAt
49
+ state
50
+ output
51
+ }
52
+ activityInstance { id
53
+ name
54
+ description
55
+ state
56
+ rejectionIsFinal
57
+ activity { id
58
+ rejectionIsFinal
59
+ ${DecisionKeysFields}
60
+ model { name
61
+ description
62
+ active
63
+ tag
64
+ inout
65
+ type
66
+ unit
67
+ options
68
+ quantifier
69
+ spec
70
+ hidden
71
+ }
72
+ }
73
+ approvalLine { type
74
+ value
75
+ participation
76
+ notifyAfter
77
+ approver { id
78
+ name
79
+ description
80
+ controlNo
81
+ }
82
+ }
83
+ thumbnail
84
+ input
85
+ output
86
+ uiType
87
+ uiSource
88
+ dueAt
89
+ terminatedAt
90
+ terminator { name
91
+ email
92
+ }
93
+ createdAt
94
+ }
95
+ }`;
96
+ export const ActivityThreadStatus = {
97
+ Unassigned: 'unassigned',
98
+ Assigned: 'assigned',
99
+ Started: 'started',
100
+ Delegated: 'delegated',
101
+ Rejected: 'rejected',
102
+ Ended: 'ended',
103
+ Aborted: 'aborted'
104
+ };
105
+ let ActivityThreadPage = class ActivityThreadPage extends localize(i18next)(PageView) {
106
+ constructor() {
107
+ super(...arguments);
108
+ /**
109
+ * 조회를 마쳤나 — **「아직 안 읽었다」와 「없다」는 다르다.**
110
+ *
111
+ * 전에는 값이 없으면 곧바로 「업무활동 정보가 없습니다」를 그렸다. 그런데 이 화면은 열리자마자
112
+ * 조회를 시작하므로, 응답이 오기 전까지 **없다고 단언하는 화면**이 보인다. 목록에서 줄을 눌러
113
+ * 들어온 사람은 방금 본 건이 없다는 말을 먼저 읽는다.
114
+ *
115
+ * 조회가 끝난 뒤에만 그 말을 한다. 그 전에는 아무 말도 하지 않는다.
116
+ */
117
+ this.loaded = false;
118
+ /** Why the task could not be read - ox-page-state says it, with retry (ADR-0060 decision 8). */
119
+ this.loadError = null;
120
+ }
121
+ static { this.styles = [
122
+ /* The frame owns the page shell and the reading column (ADR-0060 decision 8). */
123
+ DocumentPageStyles,
124
+ ScrollbarStyles,
125
+ ActivityFieldsStyles,
126
+ DecisionContentStyles,
127
+ css `
128
+ :host {
129
+ color: var(--ui-ink, #17242c);
130
+ font-size: var(--ui-t-body, 13px);
131
+ }
132
+
133
+ /* 카드가 담아 주므로 안에 들어오는 화면은 자기 면과 여백을 갖지 않는다. */
134
+ /*
135
+ * 줄어들지 않는다 — 줄어들면 본문이 잘린다.
136
+ *
137
+ * flex 항목인데 크기를 안 정해 두면 기본이 flex: 0 1 auto 다. **1 이 줄어든다는 뜻이다** —
138
+ * 세로가 모자라면 브라우저가 이 칸부터 줄이는데, 여기엔 카드 모서리를 따라 자르려고
139
+ * overflow: hidden 이 걸려 있어서 줄어든 만큼이 **스크롤도 없이 사라진다.**
140
+ *
141
+ * 완료 조회에서 실측했다(1400x620): 칸이 242px 로 줄고 내용은 362px 이라 「업무 내용」 절이
142
+ * 대부분 잘렸고, 잘린 자리 바로 아래에서 타임라인이 시작하니 타임라인이 본문을 덮은 것처럼
143
+ * 보였다. 세로가 넉넉하면 줄일 일이 없어 안 드러난다.
144
+ *
145
+ * 안에 오는 것은 문서다. 높이를 정해 주어야 하는 것은 board 뿐이고 board 는 이 칸을 거치지
146
+ * 않는다(activityContent 참조). 문서는 제 높이로 서고, 모자라면 페이지 전체가 스크롤한다 —
147
+ * :host 의 overflow: auto 가 그 자리다.
148
+ */
149
+ section[hosted] {
150
+ flex: none;
151
+ padding: 0;
152
+ overflow: hidden;
153
+ }
154
+
155
+ ox-board-viewer {
156
+ width: 100%;
157
+ height: 100%;
158
+ }
159
+
160
+ activity-thread-timeline {
161
+ margin: var(--spacing-large, 16px);
162
+ }
163
+ `
164
+ ]; }
165
+ get context() {
166
+ const state = this.activityThread?.state;
167
+ const { restartable, abortable, sourceResubmission } = followupActions(this.activityThread);
168
+ const savable = submittableIn(state) && !sourceResubmission;
169
+ const submittable = savable;
170
+ // const delegatable = savable
171
+ return {
172
+ /*
173
+ * 이 화면이 어떤 틀인가 — 동작 줄이 이것을 읽고 자기 오른쪽 끝을 내용에 맞춘다
174
+ * (ADR-0060 결정 9 보탬). 안 적으면 창 폭이고, 그것은 작업면의 모양이다.
175
+ */
176
+ frame: 'document',
177
+ title: this.lifecycle?.params?.['title'] || i18next.t('title.activity'),
178
+ help: 'worklist/activity-thread-page',
179
+ /*
180
+ * 이 화면은 메뉴에 없다 — 「할 일」에서 줄을 눌러 들어온다. 그래서 왼쪽 메뉴가 가리킬
181
+ * 항목이 없고, 표시가 사라져 들어온 사람이 자기가 어디에 있는지 잃는다.
182
+ *
183
+ * 어느 목록에서 열리는지는 이 화면이 안다. 그것을 적어 둔다.
184
+ */
185
+ menu: this.lifecycle?.params?.['box'] === 'draft-list' ? 'draft-list' : 'todo-list',
186
+ actions: [
187
+ savable && {
188
+ title: i18next.t('button.save'),
189
+ action: this._saveActivityThread.bind(this),
190
+ ...CommonButtonStyles.save
191
+ },
192
+ submittable && {
193
+ title: i18next.t('button.submit'),
194
+ action: this._submitActivityThread.bind(this),
195
+ ...CommonButtonStyles.submit
196
+ },
197
+ // delegatable && { // title: i18next.t('button.delegate'),
198
+ // action: this._delegateActivityThread.bind(this),
199
+ // ...CommonButtonStyles.save
200
+ // },
201
+ abortable && {
202
+ title: i18next.t('button.abort'),
203
+ action: this._abortActivityThread.bind(this),
204
+ ...CommonButtonStyles.cancel
205
+ },
206
+ restartable && {
207
+ title: i18next.t(this.lifecycle?.params?.['box'] === 'draft-list' ? 'button.revise-request' : 'button.restart'),
208
+ action: this._restartActivityThread.bind(this),
209
+ ...CommonButtonStyles.save
210
+ }
211
+ /*
212
+ * 나가기는 동작 줄에 두지 않는다 (ADR-0060 결정 9 보탬 판정 2). 탭의 × 가 이미 하는 일이고,
213
+ * 같은 곳으로 가는 문을 둘 두면 어느 쪽이 무엇을 하는지 사람이 눌러 봐야 안다.
214
+ */
215
+ ].filter(Boolean /* truthy only */)
216
+ // activityThread: this.activityThread
217
+ };
218
+ }
219
+ render() {
220
+ const activityThread = this.activityThread;
221
+ /* Reading and failing both drew nothing at all, so a failure looked like an empty screen. */
222
+ return html `<div class="page">
223
+ <ox-page-state
224
+ .loading=${!this.loaded && !this.loadError}
225
+ .error=${this.loadError}
226
+ @retry=${() => this.lastId && this.fetchActivityThread(this.lastId)}
227
+ >${!activityThread
228
+ ? this.loaded
229
+ ? html `<div empty>
230
+ <span class="title">${i18next.t('text.no activity thread info')}</span>
231
+ <span class="why">${i18next.t('text.no-activity-thread-why')}</span>
232
+ </div>`
233
+ : nothing
234
+ : this.renderThread(activityThread)}</ox-page-state
235
+ >
236
+ </div>`;
237
+ }
238
+ renderThread(activityThread) {
239
+ return html `
240
+ <activity-thread-ribon .activityThread=${activityThread}></activity-thread-ribon>
241
+ ${sourceAddress(activityThread.activityInstance?.input?.sourceHref)
242
+ ? html `<p><a href=${sourceAddress(activityThread.activityInstance.input.sourceHref)}
243
+ @click=${(event) => {
244
+ if (event.button || event.metaKey || event.ctrlKey || event.shiftKey || event.altKey)
245
+ return;
246
+ event.preventDefault();
247
+ navigate(sourceAddress(activityThread.activityInstance.input.sourceHref));
248
+ }}>${i18next.t('button.task-open-source')}</a>
249
+ </p>`
250
+ : nothing}
251
+ ${(activityThread.state === 'rejected' && !followupActions(activityThread).restartable) || followupActions(activityThread).sourceResubmission
252
+ ? html `<p>${i18next.t('text.task-source-resubmit')}</p>` : nothing}
253
+ ${this.activityContent()}
254
+ <!--
255
+ 위에 그린 것이 하나도 없으면 편다 — 그때 확인할 것은 타임라인뿐인데, 접혀 있으면 볼 것이
256
+ 아무것도 없는 화면이 된다.
257
+ -->
258
+ <activity-thread-timeline
259
+ .activityThread=${activityThread}
260
+ ?open=${!drawsAnything(this.sections())}
261
+ short-form
262
+ ></activity-thread-timeline>
263
+ `;
264
+ }
265
+ /** 타임라인 위에 무엇을 그리나 — 규칙은 thread-sections 에 있다. */
266
+ sections() {
267
+ const model = this.activityThread?.activityInstance?.activity?.model;
268
+ return threadSectionsOf({
269
+ decision: this.decision() !== nothing,
270
+ given: inputSpecOf(model).length,
271
+ written: outputSpecOf(model).length,
272
+ state: this.activityThread?.state
273
+ });
274
+ }
275
+ /** 액티비티가 선언한 결재 내용 — 결재 화면과 같은 그리기다. */
276
+ decision() {
277
+ const activityInstance = this.activityThread?.activityInstance;
278
+ return renderDecision(activityInstance?.activity?.decisionKeys, activityInstance?.input);
279
+ }
280
+ activityContent() {
281
+ switch (this.activityThread?.activityInstance?.uiType) {
282
+ case 'template':
283
+ return this.hostedContent(this.templateContent());
284
+ case 'generated':
285
+ return this.generatedContent();
286
+ /* board 는 전체 화면을 쓰는 캔버스라 카드에 담지 않는다(hostedContent 머리말). */
287
+ case 'board':
288
+ return this.boardContent();
289
+ case 'custom-element':
290
+ return this.hostedContent(this.customElementContent());
291
+ case 'page':
292
+ case 'external':
293
+ return html ``;
294
+ default:
295
+ return this.generatedContent();
296
+ }
297
+ }
298
+ /**
299
+ * 화면 종류가 달라도 **같은 자리에 같은 모양으로 놓인다.**
300
+ *
301
+ * worklist 는 네 가지로 내용을 그린다(generated · custom-element · template · board). 그중
302
+ * generated 만 절 카드 안에 있었고 나머지 셋은 면 위에 맨몸으로 놓였다. 그래서 같은 결재 화면이
303
+ * 액티비티에 따라 카드였다가 아니었다가 했다 — 아래의 타임라인 · 의견은 늘 카드라 위계도 어긋났다.
304
+ *
305
+ * board 는 뺀다. 전체 폭 · 전체 높이를 쓰는 캔버스라 카드 안에 넣으면 여백이 두 겹이 되고 크기가
306
+ * 어긋난다.
307
+ *
308
+ * 카드는 여백을 두지 않는다(padding: 0). 안에 들어오는 것이 자기 조판을 갖고 있고, 두 겹으로
309
+ * 주면 안쪽 내용이 카드 가운데로 밀린다.
310
+ */
311
+ hostedContent(content) {
312
+ return html `<section hosted>${content}</section>`;
313
+ }
314
+ templateContent() {
315
+ if (!this.activityThread) {
316
+ return html ``;
317
+ }
318
+ const { uiSource: template } = this.activityThread?.activityInstance;
319
+ return unsafeHTML(template);
320
+ }
321
+ generatedContent() {
322
+ if (!this.activityThread) {
323
+ return html ``;
324
+ }
325
+ var { output, activityInstance } = this.activityThread || {};
326
+ var { input } = activityInstance || {};
327
+ const model = activityInstance?.activity?.model;
328
+ const inputSpec = inputSpecOf(model);
329
+ const outputSpec = outputSpecOf(model);
330
+ if (!output) {
331
+ output = inputSpec
332
+ .filter(item => item.inout === 'inout')
333
+ .reduce((output, item) => {
334
+ output[item.tag] = input[item.tag];
335
+ return output;
336
+ }, {});
337
+ }
338
+ /*
339
+ * **빈 절은 그리지 않는다.**
340
+ *
341
+ * 처분 승인 액티비티에는 `out` 항목이 하나도 없다. 그런데도 화면이 「Output」 상자를 그려서,
342
+ * 무엇을 적어야 하는지 없는데 적는 자리처럼 보였다. 항목이 없으면 그 절이 없는 것이다.
343
+ *
344
+ * 아무것도 없고 제출할 차례면 그 사실을 말한다 — 상태 ribbon 과 제출 버튼만 남은 화면은
345
+ * 사용자에게 「덜 뜬 화면」으로 읽힌다. 제출한 뒤에는 말하지 않는다(thread-sections).
346
+ */
347
+ const sections = this.sections();
348
+ if (sections.emptyNote) {
349
+ return keyed(this.activityThread?.id, html `<section empty>
350
+ <span class="title">${i18next.t('text.no-activity-fields')}</span>
351
+ <span class="why">${i18next.t('text.no-activity-fields-why')}</span>
352
+ </section>`);
353
+ }
354
+ if (!drawsAnything(sections)) {
355
+ return nothing;
356
+ }
357
+ return keyed(this.activityThread?.id, html `
358
+ ${sections.decision ? this.decision() : ''}
359
+ ${sections.given
360
+ ? html `
361
+ <section readonly>
362
+ <h2>${i18next.t('label.activity-input')}</h2>
363
+ ${renderGiven(inputSpec, input)}
364
+ </section>
365
+ `
366
+ : ''}
367
+ ${sections.written
368
+ ? html `
369
+ <section>
370
+ <h2>${i18next.t('field.artifact')}</h2>
371
+ <ox-properties-dynamic-view
372
+ data-name="output"
373
+ .props=${outputSpec}
374
+ .value=${output}
375
+ @property-change=${e => (this.activityThread.output = e.currentTarget.value)}
376
+ ></ox-properties-dynamic-view>
377
+ </section>
378
+ `
379
+ : ''}
380
+ `);
381
+ }
382
+ boardContent() {
383
+ if (!this.activityThread) {
384
+ return html ``;
385
+ }
386
+ const { output, activityInstance } = this.activityThread;
387
+ const { uiSource: boardId, input } = activityInstance || {};
388
+ if (!this.board || this.board.id !== boardId) {
389
+ this.board = { id: boardId };
390
+ }
391
+ /*
392
+ ox-board-viewer에서 provider에 의해 공급되는 board가 각 id별로 instance를 하나씩 밖에 가지지 않으므로,
393
+ 동일한 id의 보드를 다른 page에 뺏기는 경우가 있다.
394
+ 따라서, Page가 active될 때마다 타임스탬프를 refresh key로 설정하였다.
395
+ */
396
+ return keyed(this.activityThread.id, html `
397
+ <ox-board-viewer
398
+ style="background-color: white;"
399
+ .board=${this.board}
400
+ .provider=${provider}
401
+ .values=${{ ...input, ...output }}
402
+ hide-fullscreen
403
+ hide-navigation
404
+ ></ox-board-viewer>
405
+ `);
406
+ }
407
+ customElementContent() {
408
+ if (!this.activityThread) {
409
+ return html ``;
410
+ }
411
+ const { output, activityInstance } = this.activityThread;
412
+ const { uiSource: tagName, input } = activityInstance || {};
413
+ const element = document.createElement(tagName);
414
+ element.id = 'custom-content';
415
+ element.activityId = activityInstance.activity.id;
416
+ element.input = input;
417
+ element.output = output;
418
+ element.activityThread = this.activityThread;
419
+ element.addEventListener('change', (e) => {
420
+ this.activityThread.output = e.detail;
421
+ });
422
+ return element;
423
+ }
424
+ getOutputFromBoard() {
425
+ const outputSpec = outputSpecOf(this.activityThread?.activityInstance?.activity?.model);
426
+ const data = this.oxBoardViewer.getSceneValues();
427
+ return outputSpec.reduce((output, spec) => {
428
+ output[spec.name] = data[spec.name];
429
+ return output;
430
+ }, {});
431
+ }
432
+ updated(changes) {
433
+ if (changes.has('activityThread')) {
434
+ this.updateContext();
435
+ }
436
+ }
437
+ async pageUpdated(changes, lifecycle, changedBefore) {
438
+ if (this.active && lifecycle.resourceId) {
439
+ this.fetchActivityThread(lifecycle.resourceId);
440
+ }
441
+ }
442
+ async fetchActivityThread(id) {
443
+ this.lastId = id;
444
+ this.loadError = null;
445
+ let response;
446
+ try {
447
+ response = await client.query({
448
+ query: gql `
449
+ query activityThread($id: String!) { activityThread(id: $id) ${ActivityThreadFetchResult}
450
+ }
451
+ `,
452
+ variables: { id }
453
+ });
454
+ }
455
+ catch (error) {
456
+ this.loadError = error;
457
+ return;
458
+ }
459
+ if (response.errors?.length || !response.data) {
460
+ this.loadError = response.errors?.length
461
+ ? response.errors
462
+ : new Error(i18next.t('error.activity-thread not found', { activityThread: id }));
463
+ return;
464
+ }
465
+ this.activityThread = response.data.activityThread;
466
+ this.loaded = true;
467
+ this.updateContext();
468
+ }
469
+ async _startActivityThread() {
470
+ var { id, output, reason, activityInstance } = this.activityThread;
471
+ var { uiType } = activityInstance;
472
+ if (uiType === 'board') {
473
+ output = this.getOutputFromBoard();
474
+ }
475
+ const outcome = await ranMutation(() => client.mutate({
476
+ mutation: gql `
477
+ mutation ($id: String!, $output: Object) { startActivityThread(id: $id, output: $output) ${ActivityThreadFetchResult}
478
+ }
479
+ `,
480
+ variables: { id, output }
481
+ }));
482
+ if (outcome.ok) {
483
+ this.activityThread = outcome.data.startActivityThread;
484
+ document.dispatchEvent(new CustomEvent('notify', { detail: { message: i18next.t('text.task_is_started_successfully') } }));
485
+ }
486
+ }
487
+ async _restartActivityThread() {
488
+ var { id, output, activityInstance } = this.activityThread;
489
+ var { uiType } = activityInstance;
490
+ if (uiType === 'board') {
491
+ output = this.getOutputFromBoard();
492
+ }
493
+ const outcome = await ranMutation(() => client.mutate({
494
+ mutation: gql `
495
+ mutation ($id: String!, $output: Object) { restartActivityThread(id: $id, output: $output) ${ActivityThreadFetchResult}
496
+ }
497
+ `,
498
+ variables: { id, output }
499
+ }));
500
+ if (outcome.ok) {
501
+ this.activityThread = outcome.data.restartActivityThread;
502
+ document.dispatchEvent(new CustomEvent('notify', { detail: { message: i18next.t('text.task_is_restarted_successfully') } }));
503
+ }
504
+ }
505
+ async _delegateActivityThread() {
506
+ throw 'not implemented yet';
507
+ }
508
+ async _saveActivityThread() {
509
+ var { id, output, reason, activityInstance } = this.activityThread;
510
+ var { uiType } = activityInstance || {};
511
+ if (uiType === 'board') {
512
+ output = this.getOutputFromBoard();
513
+ }
514
+ const outcome = await ranMutation(() => client.mutate({
515
+ mutation: gql `
516
+ mutation ($id: String!, $save: ActivityThreadSave!) { saveActivityThread(id: $id, save: $save) ${ActivityThreadFetchResult}
517
+ }
518
+ `,
519
+ variables: { id, save: { output } },
520
+ context: { hasUpload: true }
521
+ }));
522
+ if (outcome.ok) {
523
+ this.activityThread = outcome.data.saveActivityThread;
524
+ document.dispatchEvent(new CustomEvent('notify', { detail: { message: i18next.t('text.task_is_saved_successfully') } }));
525
+ }
526
+ }
527
+ async _submitActivityThread() {
528
+ var { id, output, reason, activityInstance } = this.activityThread;
529
+ var { uiType } = activityInstance || {};
530
+ if (uiType === 'board') {
531
+ output = this.getOutputFromBoard();
532
+ }
533
+ const outcome = await ranMutation(() => client.mutate({
534
+ mutation: gql `
535
+ mutation ($id: String!, $output: Object, $reason: String) { submitActivityThread(id: $id, output: $output, reason: $reason) ${ActivityThreadFetchResult}
536
+ }
537
+ `,
538
+ variables: { id, output, reason },
539
+ context: { hasUpload: true }
540
+ }));
541
+ if (outcome.ok) {
542
+ this.activityThread = outcome.data.submitActivityThread;
543
+ document.dispatchEvent(new CustomEvent('notify', { detail: { message: i18next.t('text.task_is_finished_successfully') } }));
544
+ }
545
+ }
546
+ async _abortActivityThread() {
547
+ const answer = await CustomAlert({
548
+ type: 'warning',
549
+ title: i18next.t('button.abort'),
550
+ text: i18next.t('text.task-abort-keeps-history'),
551
+ confirmButton: { text: i18next.t('button.abort') },
552
+ cancelButton: { text: i18next.t('button.cancel') }
553
+ });
554
+ if (!answer?.value)
555
+ return;
556
+ var { id } = this.activityThread;
557
+ const outcome = await ranMutation(() => client.mutate({
558
+ mutation: gql `
559
+ mutation ($id: String!, $reason: String) { abortActivityThread(id: $id, reason: $reason) ${ActivityThreadFetchResult}
560
+ }
561
+ `,
562
+ variables: { id }
563
+ }));
564
+ if (outcome.ok) {
565
+ this.activityThread = outcome.data.abortActivityThread;
566
+ document.dispatchEvent(new CustomEvent('notify', { detail: { message: i18next.t('text.task_is_aborted_successfully') } }));
567
+ }
568
+ }
569
+ };
570
+ __decorate([
571
+ state(),
572
+ __metadata("design:type", Object)
573
+ ], ActivityThreadPage.prototype, "activityThread", void 0);
574
+ __decorate([
575
+ state(),
576
+ __metadata("design:type", Object)
577
+ ], ActivityThreadPage.prototype, "loaded", void 0);
578
+ __decorate([
579
+ state(),
580
+ __metadata("design:type", Object)
581
+ ], ActivityThreadPage.prototype, "loadError", void 0);
582
+ __decorate([
583
+ state(),
584
+ __metadata("design:type", Object)
585
+ ], ActivityThreadPage.prototype, "board", void 0);
586
+ __decorate([
587
+ query('ox-board-viewer'),
588
+ __metadata("design:type", Object)
589
+ ], ActivityThreadPage.prototype, "oxBoardViewer", void 0);
590
+ ActivityThreadPage = __decorate([
591
+ customElement('activity-thread-page')
592
+ ], ActivityThreadPage);
593
+ export { ActivityThreadPage };
594
+ //# sourceMappingURL=activity-thread-page.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"activity-thread-page.js","sourceRoot":"","sources":["../../../client/pages/activity-thread/activity-thread-page.ts"],"names":[],"mappings":"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","sourcesContent":["import '@operato/list-state/ox-page-state.js'\nimport '@operato/property-editor/ox-properties-dynamic-view.js'\nimport '@operato/board/ox-board-viewer.js'\nimport '../../components/activity-thread-ribon.js'\nimport '../../components/activity-thread-timeline.js'\n\nimport gql from 'graphql-tag'\nimport { css, html, nothing } from 'lit'\nimport { DirectiveResult } from 'lit-html/directive.js'\nimport { unsafeHTML } from 'lit-html/directives/unsafe-html.js'\nimport { customElement, property, query, state } from 'lit/decorators.js'\nimport { keyed } from 'lit/directives/keyed.js'\nimport { client } from '@operato/graphql'\nimport { i18next, localize } from '@operato/i18n'\nimport { ranMutation } from '../../components/say-outcome.js'\nimport { CustomAlert, navigate, PageView } from '@operato/shell'\nimport { CommonButtonStyles, DocumentPageStyles, ScrollbarStyles } from '@operato/styles'\nimport { provider } from '@operato/board/board-provider.js'\n\nimport { ActivityFieldsStyles, inputSpecOf, outputSpecOf, renderGiven } from '../../components/activity-fields.js'\nimport { DecisionContentStyles, DecisionKeysFields, renderDecision } from '../../components/decision-content.js'\nimport { followupActions, sourceAddress } from '../../../shared/task-followup.js'\nimport { drawsAnything, submittableIn, threadSectionsOf, ThreadSections } from './thread-sections.js'\n\nconst ActivityThreadFetchResult = `\\\n{ id\n state\n dueAt\n assignedAt\n assignee { id\n name\n }\n updatedAt\n output\n round\n activityApprovals { round\n order\n approver { id name\n }\n judgment\n participation\n comment\n createdAt\n updatedAt\n terminatedAt\n }\n activityThreadHistories { transaction\n reason\n updater { id name\n }\n updatedAt\n state\n output\n }\n activityInstance { id\n name\n description\n state\n rejectionIsFinal\n activity { id\n rejectionIsFinal\n ${DecisionKeysFields}\n model { name\n description\n active\n tag\n inout\n type\n unit\n options\n quantifier\n spec\n hidden\n }\n }\n approvalLine { type\n value\n participation\n notifyAfter\n approver { id\n name\n description\n controlNo\n }\n }\n thumbnail\n input\n output\n uiType\n uiSource\n dueAt\n terminatedAt\n terminator { name\n email\n }\n createdAt\n }\n}`\n\nexport const ActivityThreadStatus = {\n Unassigned: 'unassigned',\n Assigned: 'assigned',\n Started: 'started',\n Delegated: 'delegated',\n Rejected: 'rejected',\n Ended: 'ended',\n Aborted: 'aborted'\n}\n\n@customElement('activity-thread-page')\nexport class ActivityThreadPage extends localize(i18next)(PageView) {\n static styles = [\n /* The frame owns the page shell and the reading column (ADR-0060 decision 8). */\n DocumentPageStyles,\n ScrollbarStyles,\n ActivityFieldsStyles,\n DecisionContentStyles,\n css`\n :host {\n color: var(--ui-ink, #17242c);\n font-size: var(--ui-t-body, 13px);\n }\n\n /* 카드가 담아 주므로 안에 들어오는 화면은 자기 면과 여백을 갖지 않는다. */\n /*\n * 줄어들지 않는다 — 줄어들면 본문이 잘린다.\n *\n * flex 항목인데 크기를 안 정해 두면 기본이 flex: 0 1 auto 다. **1 이 줄어든다는 뜻이다** —\n * 세로가 모자라면 브라우저가 이 칸부터 줄이는데, 여기엔 카드 모서리를 따라 자르려고\n * overflow: hidden 이 걸려 있어서 줄어든 만큼이 **스크롤도 없이 사라진다.**\n *\n * 완료 조회에서 실측했다(1400x620): 칸이 242px 로 줄고 내용은 362px 이라 「업무 내용」 절이\n * 대부분 잘렸고, 잘린 자리 바로 아래에서 타임라인이 시작하니 타임라인이 본문을 덮은 것처럼\n * 보였다. 세로가 넉넉하면 줄일 일이 없어 안 드러난다.\n *\n * 안에 오는 것은 문서다. 높이를 정해 주어야 하는 것은 board 뿐이고 board 는 이 칸을 거치지\n * 않는다(activityContent 참조). 문서는 제 높이로 서고, 모자라면 페이지 전체가 스크롤한다 —\n * :host 의 overflow: auto 가 그 자리다.\n */\n section[hosted] {\n flex: none;\n padding: 0;\n overflow: hidden;\n }\n\n ox-board-viewer {\n width: 100%;\n height: 100%;\n }\n\n activity-thread-timeline {\n margin: var(--spacing-large, 16px);\n }\n `\n ]\n\n @state() activityThread: any\n /**\n * 조회를 마쳤나 — **「아직 안 읽었다」와 「없다」는 다르다.**\n *\n * 전에는 값이 없으면 곧바로 「업무활동 정보가 없습니다」를 그렸다. 그런데 이 화면은 열리자마자\n * 조회를 시작하므로, 응답이 오기 전까지 **없다고 단언하는 화면**이 보인다. 목록에서 줄을 눌러\n * 들어온 사람은 방금 본 건이 없다는 말을 먼저 읽는다.\n *\n * 조회가 끝난 뒤에만 그 말을 한다. 그 전에는 아무 말도 하지 않는다.\n */\n @state() loaded = false\n /** Why the task could not be read - ox-page-state says it, with retry (ADR-0060 decision 8). */\n @state() loadError: unknown = null\n private lastId?: string\n\n @state() board: any\n\n get context() {\n const state = this.activityThread?.state\n\n const { restartable, abortable, sourceResubmission } = followupActions(this.activityThread)\n const savable = submittableIn(state) && !sourceResubmission\n const submittable = savable\n // const delegatable = savable\n\n return {\n /*\n * 이 화면이 어떤 틀인가 — 동작 줄이 이것을 읽고 자기 오른쪽 끝을 내용에 맞춘다\n * (ADR-0060 결정 9 보탬). 안 적으면 창 폭이고, 그것은 작업면의 모양이다.\n */\n frame: 'document',\n title: this.lifecycle?.params?.['title'] || i18next.t('title.activity'),\n help: 'worklist/activity-thread-page',\n /*\n * 이 화면은 메뉴에 없다 — 「할 일」에서 줄을 눌러 들어온다. 그래서 왼쪽 메뉴가 가리킬\n * 항목이 없고, 표시가 사라져 들어온 사람이 자기가 어디에 있는지 잃는다.\n *\n * 어느 목록에서 열리는지는 이 화면이 안다. 그것을 적어 둔다.\n */\n menu: this.lifecycle?.params?.['box'] === 'draft-list' ? 'draft-list' : 'todo-list',\n actions: [\n savable && {\n title: i18next.t('button.save'),\n action: this._saveActivityThread.bind(this),\n ...CommonButtonStyles.save\n },\n\n submittable && {\n title: i18next.t('button.submit'),\n action: this._submitActivityThread.bind(this),\n ...CommonButtonStyles.submit\n },\n\n // delegatable && { // title: i18next.t('button.delegate'),\n // action: this._delegateActivityThread.bind(this),\n // ...CommonButtonStyles.save\n // },\n\n abortable && {\n title: i18next.t('button.abort'),\n action: this._abortActivityThread.bind(this),\n ...CommonButtonStyles.cancel\n },\n\n restartable && {\n title: i18next.t(this.lifecycle?.params?.['box'] === 'draft-list' ? 'button.revise-request' : 'button.restart'),\n action: this._restartActivityThread.bind(this),\n ...CommonButtonStyles.save\n }\n /*\n * 나가기는 동작 줄에 두지 않는다 (ADR-0060 결정 9 보탬 판정 2). 탭의 × 가 이미 하는 일이고,\n * 같은 곳으로 가는 문을 둘 두면 어느 쪽이 무엇을 하는지 사람이 눌러 봐야 안다.\n */\n ].filter(Boolean /* truthy only */)\n // activityThread: this.activityThread\n }\n }\n\n render() {\n const activityThread = this.activityThread\n\n /* Reading and failing both drew nothing at all, so a failure looked like an empty screen. */\n return html`<div class=\"page\">\n <ox-page-state\n .loading=${!this.loaded && !this.loadError}\n .error=${this.loadError}\n @retry=${() => this.lastId && this.fetchActivityThread(this.lastId)}\n >${\n !activityThread\n ? this.loaded\n ? html`<div empty>\n <span class=\"title\">${i18next.t('text.no activity thread info')}</span>\n <span class=\"why\">${i18next.t('text.no-activity-thread-why')}</span>\n </div>`\n : nothing\n : this.renderThread(activityThread)\n }</ox-page-state\n >\n </div>`\n }\n\n private renderThread(activityThread: any) {\n return html`\n <activity-thread-ribon .activityThread=${activityThread}></activity-thread-ribon>\n ${sourceAddress(activityThread.activityInstance?.input?.sourceHref)\n ? html`<p><a href=${sourceAddress(activityThread.activityInstance.input.sourceHref)!}\n @click=${(event: MouseEvent) => {\n if (event.button || event.metaKey || event.ctrlKey || event.shiftKey || event.altKey) return\n event.preventDefault()\n navigate(sourceAddress(activityThread.activityInstance.input.sourceHref)!)\n }}>${i18next.t('button.task-open-source')}</a>\n </p>`\n : nothing}\n ${(activityThread.state === 'rejected' && !followupActions(activityThread).restartable) || followupActions(activityThread).sourceResubmission\n ? html`<p>${i18next.t('text.task-source-resubmit')}</p>` : nothing}\n ${this.activityContent()}\n <!--\n 위에 그린 것이 하나도 없으면 편다 — 그때 확인할 것은 타임라인뿐인데, 접혀 있으면 볼 것이\n 아무것도 없는 화면이 된다.\n -->\n <activity-thread-timeline\n .activityThread=${activityThread}\n ?open=${!drawsAnything(this.sections())}\n short-form\n ></activity-thread-timeline>\n `\n }\n\n /** 타임라인 위에 무엇을 그리나 — 규칙은 thread-sections 에 있다. */\n sections(): ThreadSections {\n const model = this.activityThread?.activityInstance?.activity?.model\n\n return threadSectionsOf({\n decision: this.decision() !== nothing,\n given: inputSpecOf(model).length,\n written: outputSpecOf(model).length,\n state: this.activityThread?.state\n })\n }\n\n /** 액티비티가 선언한 결재 내용 — 결재 화면과 같은 그리기다. */\n decision() {\n const activityInstance = this.activityThread?.activityInstance\n\n return renderDecision(activityInstance?.activity?.decisionKeys, activityInstance?.input)\n }\n\n activityContent() {\n switch (this.activityThread?.activityInstance?.uiType) {\n case 'template':\n return this.hostedContent(this.templateContent())\n case 'generated':\n return this.generatedContent()\n /* board 는 전체 화면을 쓰는 캔버스라 카드에 담지 않는다(hostedContent 머리말). */\n case 'board':\n return this.boardContent()\n case 'custom-element':\n return this.hostedContent(this.customElementContent())\n case 'page':\n case 'external':\n return html``\n default:\n return this.generatedContent()\n }\n }\n\n /**\n * 화면 종류가 달라도 **같은 자리에 같은 모양으로 놓인다.**\n *\n * worklist 는 네 가지로 내용을 그린다(generated · custom-element · template · board). 그중\n * generated 만 절 카드 안에 있었고 나머지 셋은 면 위에 맨몸으로 놓였다. 그래서 같은 결재 화면이\n * 액티비티에 따라 카드였다가 아니었다가 했다 — 아래의 타임라인 · 의견은 늘 카드라 위계도 어긋났다.\n *\n * board 는 뺀다. 전체 폭 · 전체 높이를 쓰는 캔버스라 카드 안에 넣으면 여백이 두 겹이 되고 크기가\n * 어긋난다.\n *\n * 카드는 여백을 두지 않는다(padding: 0). 안에 들어오는 것이 자기 조판을 갖고 있고, 두 겹으로\n * 주면 안쪽 내용이 카드 가운데로 밀린다.\n */\n hostedContent(content: unknown) {\n return html`<section hosted>${content}</section>`\n }\n\n templateContent() {\n if (!this.activityThread) {\n return html``\n }\n\n const { uiSource: template } = this.activityThread?.activityInstance\n return unsafeHTML(template)\n }\n\n generatedContent(): DirectiveResult {\n if (!this.activityThread) {\n return html``\n }\n\n var { output, activityInstance } = this.activityThread || {}\n var { input } = activityInstance || {}\n\n const model = activityInstance?.activity?.model\n const inputSpec = inputSpecOf(model)\n const outputSpec = outputSpecOf(model)\n\n if (!output) {\n output = inputSpec\n .filter(item => item.inout === 'inout')\n .reduce((output, item) => {\n output[item.tag] = input[item.tag]\n return output\n }, {})\n }\n\n /*\n * **빈 절은 그리지 않는다.**\n *\n * 처분 승인 액티비티에는 `out` 항목이 하나도 없다. 그런데도 화면이 「Output」 상자를 그려서,\n * 무엇을 적어야 하는지 없는데 적는 자리처럼 보였다. 항목이 없으면 그 절이 없는 것이다.\n *\n * 아무것도 없고 제출할 차례면 그 사실을 말한다 — 상태 ribbon 과 제출 버튼만 남은 화면은\n * 사용자에게 「덜 뜬 화면」으로 읽힌다. 제출한 뒤에는 말하지 않는다(thread-sections).\n */\n const sections = this.sections()\n\n if (sections.emptyNote) {\n return keyed(\n this.activityThread?.id,\n html`<section empty>\n <span class=\"title\">${i18next.t('text.no-activity-fields')}</span>\n <span class=\"why\">${i18next.t('text.no-activity-fields-why')}</span>\n </section>`\n )\n }\n\n if (!drawsAnything(sections)) {\n return nothing\n }\n\n return keyed(\n this.activityThread?.id,\n html`\n ${sections.decision ? this.decision() : ''}\n ${\n sections.given\n ? html`\n <section readonly>\n <h2>${i18next.t('label.activity-input')}</h2>\n ${renderGiven(inputSpec, input)}\n </section>\n `\n : ''\n }\n ${\n sections.written\n ? html`\n <section>\n <h2>${i18next.t('field.artifact')}</h2>\n <ox-properties-dynamic-view\n data-name=\"output\"\n .props=${outputSpec}\n .value=${output}\n @property-change=${e => (this.activityThread.output = e.currentTarget.value)}\n ></ox-properties-dynamic-view>\n </section>\n `\n : ''\n }\n `\n )\n }\n\n boardContent(): DirectiveResult {\n if (!this.activityThread) {\n return html``\n }\n\n const { output, activityInstance } = this.activityThread\n const { uiSource: boardId, input } = activityInstance || {}\n\n if (!this.board || this.board.id !== boardId) {\n this.board = { id: boardId }\n }\n\n /* \n ox-board-viewer에서 provider에 의해 공급되는 board가 각 id별로 instance를 하나씩 밖에 가지지 않으므로,\n 동일한 id의 보드를 다른 page에 뺏기는 경우가 있다.\n 따라서, Page가 active될 때마다 타임스탬프를 refresh key로 설정하였다.\n */\n return keyed(\n this.activityThread.id,\n html`\n <ox-board-viewer\n style=\"background-color: white;\"\n .board=${this.board}\n .provider=${provider}\n .values=${{ ...input, ...output }}\n hide-fullscreen\n hide-navigation\n ></ox-board-viewer>\n `\n )\n }\n\n customElementContent() {\n if (!this.activityThread) {\n return html``\n }\n\n const { output, activityInstance } = this.activityThread\n const { uiSource: tagName, input } = activityInstance || {}\n\n const element = document.createElement(tagName)\n element.id = 'custom-content'\n element.activityId = activityInstance.activity.id\n element.input = input\n element.output = output\n element.activityThread = this.activityThread\n\n element.addEventListener('change', (e: CustomEvent) => {\n this.activityThread.output = e.detail\n })\n\n return element\n }\n\n @query('ox-board-viewer') oxBoardViewer: any\n\n getOutputFromBoard() {\n const outputSpec = outputSpecOf(this.activityThread?.activityInstance?.activity?.model)\n const data = this.oxBoardViewer.getSceneValues()\n\n return outputSpec.reduce((output, spec) => {\n output[spec.name] = data[spec.name]\n return output\n }, {})\n }\n\n updated(changes) {\n if (changes.has('activityThread')) {\n this.updateContext()\n }\n }\n\n async pageUpdated(changes, lifecycle, changedBefore) {\n if (this.active && lifecycle.resourceId) {\n this.fetchActivityThread(lifecycle.resourceId)\n }\n }\n\n async fetchActivityThread(id) {\n this.lastId = id\n this.loadError = null\n\n let response: any\n try {\n response = await client.query({\n query: gql`\n query activityThread($id: String!) { activityThread(id: $id) ${ActivityThreadFetchResult}\n }\n `,\n variables: { id }\n })\n } catch (error) {\n this.loadError = error\n return\n }\n\n if (response.errors?.length || !response.data) {\n this.loadError = response.errors?.length\n ? response.errors\n : new Error(i18next.t('error.activity-thread not found', { activityThread: id }))\n return\n }\n\n this.activityThread = response.data.activityThread\n this.loaded = true\n\n this.updateContext()\n }\n\n async _startActivityThread() {\n var { id, output, reason, activityInstance } = this.activityThread\n var { uiType } = activityInstance\n\n if (uiType === 'board') {\n output = this.getOutputFromBoard()\n }\n\n const outcome = await ranMutation(() =>\n client.mutate({\n mutation: gql`\n mutation ($id: String!, $output: Object) { startActivityThread(id: $id, output: $output) ${ActivityThreadFetchResult}\n }\n `,\n variables: { id, output }\n })\n )\n\n if (outcome.ok) {\n this.activityThread = outcome.data.startActivityThread\n\n document.dispatchEvent(\n new CustomEvent('notify', { detail: { message: i18next.t('text.task_is_started_successfully') } })\n )\n }\n }\n\n async _restartActivityThread() {\n var { id, output, activityInstance } = this.activityThread\n var { uiType } = activityInstance\n\n if (uiType === 'board') {\n output = this.getOutputFromBoard()\n }\n\n const outcome = await ranMutation(() =>\n client.mutate({\n mutation: gql`\n mutation ($id: String!, $output: Object) { restartActivityThread(id: $id, output: $output) ${ActivityThreadFetchResult}\n }\n `,\n variables: { id, output }\n })\n )\n\n if (outcome.ok) {\n this.activityThread = outcome.data.restartActivityThread\n\n document.dispatchEvent(\n new CustomEvent('notify', { detail: { message: i18next.t('text.task_is_restarted_successfully') } })\n )\n }\n }\n\n async _delegateActivityThread() {\n throw 'not implemented yet'\n }\n\n async _saveActivityThread() {\n var { id, output, reason, activityInstance } = this.activityThread\n var { uiType } = activityInstance || {}\n\n if (uiType === 'board') {\n output = this.getOutputFromBoard()\n }\n\n const outcome = await ranMutation(() =>\n client.mutate({\n mutation: gql`\n mutation ($id: String!, $save: ActivityThreadSave!) { saveActivityThread(id: $id, save: $save) ${ActivityThreadFetchResult}\n }\n `,\n variables: { id, save: { output } },\n context: { hasUpload: true }\n })\n )\n\n if (outcome.ok) {\n this.activityThread = outcome.data.saveActivityThread\n\n document.dispatchEvent(\n new CustomEvent('notify', { detail: { message: i18next.t('text.task_is_saved_successfully') } })\n )\n }\n }\n\n async _submitActivityThread() {\n var { id, output, reason, activityInstance } = this.activityThread\n var { uiType } = activityInstance || {}\n\n if (uiType === 'board') {\n output = this.getOutputFromBoard()\n }\n\n const outcome = await ranMutation(() =>\n client.mutate({\n mutation: gql`\n mutation ($id: String!, $output: Object, $reason: String) { submitActivityThread(id: $id, output: $output, reason: $reason) ${ActivityThreadFetchResult}\n }\n `,\n variables: { id, output, reason },\n context: { hasUpload: true }\n })\n )\n\n if (outcome.ok) {\n this.activityThread = outcome.data.submitActivityThread\n\n document.dispatchEvent(\n new CustomEvent('notify', { detail: { message: i18next.t('text.task_is_finished_successfully') } })\n )\n }\n }\n\n async _abortActivityThread() {\n const answer = await CustomAlert({\n type: 'warning',\n title: i18next.t('button.abort'),\n text: i18next.t('text.task-abort-keeps-history'),\n confirmButton: { text: i18next.t('button.abort') },\n cancelButton: { text: i18next.t('button.cancel') }\n })\n if (!answer?.value) return\n var { id } = this.activityThread\n\n const outcome = await ranMutation(() =>\n client.mutate({\n mutation: gql`\n mutation ($id: String!, $reason: String) { abortActivityThread(id: $id, reason: $reason) ${ActivityThreadFetchResult}\n }\n `,\n variables: { id }\n })\n )\n\n if (outcome.ok) {\n this.activityThread = outcome.data.abortActivityThread\n\n document.dispatchEvent(\n new CustomEvent('notify', { detail: { message: i18next.t('text.task_is_aborted_successfully') } })\n )\n }\n }\n}\n"]}