@nocobase/app-plugin-projects 0.1.0-beta.7 → 0.1.0-beta.9

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 (491) hide show
  1. package/CHANGELOG.md +58 -0
  2. package/README.md +60 -104
  3. package/dist/client/api/changed-issues.d.ts +12 -0
  4. package/dist/client/api/changed-issues.d.ts.map +1 -0
  5. package/dist/client/api/changed-issues.js +30 -0
  6. package/dist/client/api/changed-issues.js.map +1 -0
  7. package/dist/client/api/client.d.ts +4 -23
  8. package/dist/client/api/client.d.ts.map +1 -1
  9. package/dist/client/api/client.js +4 -48
  10. package/dist/client/api/client.js.map +1 -1
  11. package/dist/client/api/keys.d.ts +2 -8
  12. package/dist/client/api/keys.d.ts.map +1 -1
  13. package/dist/client/api/keys.js +2 -17
  14. package/dist/client/api/keys.js.map +1 -1
  15. package/dist/client/components/pm-badges.d.ts +1 -1
  16. package/dist/client/components/pm-badges.d.ts.map +1 -1
  17. package/dist/client/components/pm-executor-select.d.ts +2 -0
  18. package/dist/client/components/pm-executor-select.d.ts.map +1 -1
  19. package/dist/client/components/pm-executor-select.js.map +1 -1
  20. package/dist/client/components/ui/radio-group.d.ts +7 -0
  21. package/dist/client/components/ui/radio-group.d.ts.map +1 -0
  22. package/dist/client/components/ui/radio-group.js +12 -0
  23. package/dist/client/components/ui/radio-group.js.map +1 -0
  24. package/dist/client/config.d.ts +0 -2
  25. package/dist/client/config.d.ts.map +1 -1
  26. package/dist/client/config.js +1 -5
  27. package/dist/client/config.js.map +1 -1
  28. package/dist/client/issues.d.ts +2 -4
  29. package/dist/client/issues.d.ts.map +1 -1
  30. package/dist/client/issues.js +2 -3
  31. package/dist/client/issues.js.map +1 -1
  32. package/dist/client/kit/plans/lookup.d.ts +2 -2
  33. package/dist/client/kit/plans/lookup.js +3 -3
  34. package/dist/client/kit/plans/lookup.js.map +1 -1
  35. package/dist/client/kit/plans/plan-row.js +2 -2
  36. package/dist/client/kit/plans/plan-row.js.map +1 -1
  37. package/dist/client/kit.d.ts +3 -9
  38. package/dist/client/kit.d.ts.map +1 -1
  39. package/dist/client/kit.js +3 -9
  40. package/dist/client/kit.js.map +1 -1
  41. package/dist/client/lib/kinds.d.ts +3 -29
  42. package/dist/client/lib/kinds.d.ts.map +1 -1
  43. package/dist/client/lib/kinds.js +7 -46
  44. package/dist/client/lib/kinds.js.map +1 -1
  45. package/dist/client/lib/status-events.d.ts +21 -0
  46. package/dist/client/lib/status-events.d.ts.map +1 -0
  47. package/dist/client/lib/status-events.js +31 -0
  48. package/dist/client/lib/status-events.js.map +1 -0
  49. package/dist/client/lib/status.d.ts +5 -7
  50. package/dist/client/lib/status.d.ts.map +1 -1
  51. package/dist/client/lib/status.js +5 -7
  52. package/dist/client/lib/status.js.map +1 -1
  53. package/dist/client/locales/en-US.d.ts +6 -256
  54. package/dist/client/locales/en-US.d.ts.map +1 -1
  55. package/dist/client/locales/en-US.js +9 -255
  56. package/dist/client/locales/en-US.js.map +1 -1
  57. package/dist/client/locales/zh-CN.d.ts.map +1 -1
  58. package/dist/client/locales/zh-CN.js +10 -248
  59. package/dist/client/locales/zh-CN.js.map +1 -1
  60. package/dist/client/pages/issues/board/board-model.d.ts +1 -1
  61. package/dist/client/pages/issues/board/board-model.js +1 -1
  62. package/dist/client/pages/issues/board/use-board-move.d.ts +2 -8
  63. package/dist/client/pages/issues/board/use-board-move.d.ts.map +1 -1
  64. package/dist/client/pages/issues/board/use-board-move.js +5 -42
  65. package/dist/client/pages/issues/board/use-board-move.js.map +1 -1
  66. package/dist/client/pages/issues/detail/new-subtask.d.ts.map +1 -1
  67. package/dist/client/pages/issues/detail/new-subtask.js +6 -28
  68. package/dist/client/pages/issues/detail/new-subtask.js.map +1 -1
  69. package/dist/client/pages/issues/detail/subtask-model.d.ts +1 -1
  70. package/dist/client/pages/issues/detail/subtask-model.js +1 -1
  71. package/dist/client/pages/issues/detail/use-confirmed-update.d.ts +6 -8
  72. package/dist/client/pages/issues/detail/use-confirmed-update.d.ts.map +1 -1
  73. package/dist/client/pages/issues/detail/use-confirmed-update.js +9 -42
  74. package/dist/client/pages/issues/detail/use-confirmed-update.js.map +1 -1
  75. package/dist/client/pages/issues/detail/use-issue-page.d.ts +0 -4
  76. package/dist/client/pages/issues/detail/use-issue-page.d.ts.map +1 -1
  77. package/dist/client/pages/issues/detail/use-issue-page.js +0 -14
  78. package/dist/client/pages/issues/detail/use-issue-page.js.map +1 -1
  79. package/dist/client/pages/issues/detail/use-issue-update.d.ts +2 -2
  80. package/dist/client/pages/issues/detail/use-issue-update.d.ts.map +1 -1
  81. package/dist/client/pages/issues/detail/use-issue-update.js +4 -6
  82. package/dist/client/pages/issues/detail/use-issue-update.js.map +1 -1
  83. package/dist/client/pages/issues/new-issue-form.d.ts +11 -8
  84. package/dist/client/pages/issues/new-issue-form.d.ts.map +1 -1
  85. package/dist/client/pages/issues/new-issue-form.js +47 -79
  86. package/dist/client/pages/issues/new-issue-form.js.map +1 -1
  87. package/dist/client/pages/issues/new.d.ts.map +1 -1
  88. package/dist/client/pages/issues/new.js +2 -1
  89. package/dist/client/pages/issues/new.js.map +1 -1
  90. package/dist/client/pages/issues/use-executor-options.d.ts +3 -2
  91. package/dist/client/pages/issues/use-executor-options.d.ts.map +1 -1
  92. package/dist/client/pages/issues/use-executor-options.js +5 -23
  93. package/dist/client/pages/issues/use-executor-options.js.map +1 -1
  94. package/dist/client/pages/projects/detail/use-project-page.d.ts +4 -26
  95. package/dist/client/pages/projects/detail/use-project-page.d.ts.map +1 -1
  96. package/dist/client/pages/projects/detail/use-project-page.js +7 -53
  97. package/dist/client/pages/projects/detail/use-project-page.js.map +1 -1
  98. package/dist/client/pages/projects/new.d.ts +1 -1
  99. package/dist/client/pages/projects/new.d.ts.map +1 -1
  100. package/dist/client/pages/projects/new.js +3 -7
  101. package/dist/client/pages/projects/new.js.map +1 -1
  102. package/dist/client/plugin.d.ts +3 -0
  103. package/dist/client/plugin.d.ts.map +1 -1
  104. package/dist/client/plugin.js +8 -1
  105. package/dist/client/plugin.js.map +1 -1
  106. package/dist/client/projects.d.ts +2 -2
  107. package/dist/client/projects.d.ts.map +1 -1
  108. package/dist/client/projects.js +2 -2
  109. package/dist/client/projects.js.map +1 -1
  110. package/dist/client/providers/query-provider.d.ts.map +1 -1
  111. package/dist/client/providers/query-provider.js +13 -10
  112. package/dist/client/providers/query-provider.js.map +1 -1
  113. package/dist/database/migrations/.manifest.json +8 -0
  114. package/dist/database/migrations/202610240010_pm_fixed_statuses.d.ts +4 -0
  115. package/dist/database/migrations/202610240010_pm_fixed_statuses.d.ts.map +1 -0
  116. package/dist/database/migrations/202610240010_pm_fixed_statuses.js +189 -0
  117. package/dist/database/migrations/202610240010_pm_fixed_statuses.js.map +1 -0
  118. package/dist/database/migrations/202610240011_pm_issue_progress.d.ts +4 -0
  119. package/dist/database/migrations/202610240011_pm_issue_progress.d.ts.map +1 -0
  120. package/dist/database/migrations/202610240011_pm_issue_progress.js +19 -0
  121. package/dist/database/migrations/202610240011_pm_issue_progress.js.map +1 -0
  122. package/dist/server/composition.d.ts +11 -17
  123. package/dist/server/composition.d.ts.map +1 -1
  124. package/dist/server/composition.js +11 -56
  125. package/dist/server/composition.js.map +1 -1
  126. package/dist/server/domains/comments/comment.queries.d.ts +31 -0
  127. package/dist/server/domains/comments/comment.queries.d.ts.map +1 -1
  128. package/dist/server/domains/comments/comment.queries.js +27 -1
  129. package/dist/server/domains/comments/comment.queries.js.map +1 -1
  130. package/dist/server/domains/comments/comment.store.d.ts +19 -0
  131. package/dist/server/domains/comments/comment.store.d.ts.map +1 -1
  132. package/dist/server/domains/comments/comment.store.js +55 -0
  133. package/dist/server/domains/comments/comment.store.js.map +1 -1
  134. package/dist/server/domains/comments/index.d.ts +1 -1
  135. package/dist/server/domains/comments/index.d.ts.map +1 -1
  136. package/dist/server/domains/comments/index.js.map +1 -1
  137. package/dist/server/domains/issues/index.d.ts +1 -1
  138. package/dist/server/domains/issues/index.d.ts.map +1 -1
  139. package/dist/server/domains/issues/index.js +1 -1
  140. package/dist/server/domains/issues/index.js.map +1 -1
  141. package/dist/server/domains/issues/issue.context.d.ts +6 -22
  142. package/dist/server/domains/issues/issue.context.d.ts.map +1 -1
  143. package/dist/server/domains/issues/issue.context.js +1 -22
  144. package/dist/server/domains/issues/issue.context.js.map +1 -1
  145. package/dist/server/domains/issues/issue.fields.d.ts +5 -3
  146. package/dist/server/domains/issues/issue.fields.d.ts.map +1 -1
  147. package/dist/server/domains/issues/issue.fields.js +37 -16
  148. package/dist/server/domains/issues/issue.fields.js.map +1 -1
  149. package/dist/server/domains/issues/issue.projects.d.ts +2 -2
  150. package/dist/server/domains/issues/issue.projects.d.ts.map +1 -1
  151. package/dist/server/domains/issues/issue.projects.js +1 -2
  152. package/dist/server/domains/issues/issue.projects.js.map +1 -1
  153. package/dist/server/domains/issues/issue.queries.d.ts +10 -7
  154. package/dist/server/domains/issues/issue.queries.d.ts.map +1 -1
  155. package/dist/server/domains/issues/issue.queries.js +15 -41
  156. package/dist/server/domains/issues/issue.queries.js.map +1 -1
  157. package/dist/server/domains/issues/issue.routes.d.ts +1 -1
  158. package/dist/server/domains/issues/issue.routes.d.ts.map +1 -1
  159. package/dist/server/domains/issues/issue.routes.js +20 -38
  160. package/dist/server/domains/issues/issue.routes.js.map +1 -1
  161. package/dist/server/domains/issues/issue.service.d.ts +20 -44
  162. package/dist/server/domains/issues/issue.service.d.ts.map +1 -1
  163. package/dist/server/domains/issues/issue.service.js +26 -81
  164. package/dist/server/domains/issues/issue.service.js.map +1 -1
  165. package/dist/server/domains/issues/issue.status.d.ts +6 -10
  166. package/dist/server/domains/issues/issue.status.d.ts.map +1 -1
  167. package/dist/server/domains/issues/issue.status.js +3 -20
  168. package/dist/server/domains/issues/issue.status.js.map +1 -1
  169. package/dist/server/domains/issues/issue.store.d.ts +2 -0
  170. package/dist/server/domains/issues/issue.store.d.ts.map +1 -1
  171. package/dist/server/domains/issues/issue.store.js +2 -0
  172. package/dist/server/domains/issues/issue.store.js.map +1 -1
  173. package/dist/server/domains/issues/ports.d.ts +19 -36
  174. package/dist/server/domains/issues/ports.d.ts.map +1 -1
  175. package/dist/server/domains/issues/ports.js +0 -5
  176. package/dist/server/domains/issues/ports.js.map +1 -1
  177. package/dist/server/domains/notices/notice.planner.d.ts +2 -1
  178. package/dist/server/domains/notices/notice.planner.d.ts.map +1 -1
  179. package/dist/server/domains/notices/notice.planner.js +2 -1
  180. package/dist/server/domains/notices/notice.planner.js.map +1 -1
  181. package/dist/server/domains/notices/notice.rules.d.ts +1 -4
  182. package/dist/server/domains/notices/notice.rules.d.ts.map +1 -1
  183. package/dist/server/domains/notices/notice.rules.js +4 -5
  184. package/dist/server/domains/notices/notice.rules.js.map +1 -1
  185. package/dist/server/domains/plans/plan.ops.d.ts +3 -3
  186. package/dist/server/domains/plans/plan.ops.d.ts.map +1 -1
  187. package/dist/server/domains/plans/plan.ops.js +23 -13
  188. package/dist/server/domains/plans/plan.ops.js.map +1 -1
  189. package/dist/server/domains/projects/index.d.ts +1 -1
  190. package/dist/server/domains/projects/index.d.ts.map +1 -1
  191. package/dist/server/domains/projects/index.js.map +1 -1
  192. package/dist/server/domains/projects/project.events.d.ts +10 -0
  193. package/dist/server/domains/projects/project.events.d.ts.map +1 -0
  194. package/dist/server/domains/projects/project.events.js +2 -0
  195. package/dist/server/domains/projects/project.events.js.map +1 -0
  196. package/dist/server/domains/projects/project.routes.d.ts.map +1 -1
  197. package/dist/server/domains/projects/project.routes.js +1 -3
  198. package/dist/server/domains/projects/project.routes.js.map +1 -1
  199. package/dist/server/domains/projects/project.service.d.ts +1 -7
  200. package/dist/server/domains/projects/project.service.d.ts.map +1 -1
  201. package/dist/server/domains/projects/project.service.js +2 -17
  202. package/dist/server/domains/projects/project.service.js.map +1 -1
  203. package/dist/server/domains/projects/project.store.d.ts +0 -1
  204. package/dist/server/domains/projects/project.store.d.ts.map +1 -1
  205. package/dist/server/domains/projects/project.store.js +0 -1
  206. package/dist/server/domains/projects/project.store.js.map +1 -1
  207. package/dist/server/domains/reports/report.service.d.ts +1 -12
  208. package/dist/server/domains/reports/report.service.d.ts.map +1 -1
  209. package/dist/server/domains/reports/report.service.js +23 -79
  210. package/dist/server/domains/reports/report.service.js.map +1 -1
  211. package/dist/server/domains/statuses/event-types.d.ts +16 -0
  212. package/dist/server/domains/statuses/event-types.d.ts.map +1 -0
  213. package/dist/server/domains/statuses/event-types.js +31 -0
  214. package/dist/server/domains/statuses/event-types.js.map +1 -0
  215. package/dist/server/domains/statuses/index.d.ts +4 -0
  216. package/dist/server/domains/statuses/index.d.ts.map +1 -0
  217. package/dist/server/domains/statuses/index.js +4 -0
  218. package/dist/server/domains/statuses/index.js.map +1 -0
  219. package/dist/server/domains/statuses/status.catalog.d.ts +15 -0
  220. package/dist/server/domains/statuses/status.catalog.d.ts.map +1 -0
  221. package/dist/server/domains/statuses/status.catalog.js +119 -0
  222. package/dist/server/domains/statuses/status.catalog.js.map +1 -0
  223. package/dist/server/domains/statuses/status.events.d.ts +15 -0
  224. package/dist/server/domains/statuses/status.events.d.ts.map +1 -0
  225. package/dist/server/domains/statuses/status.events.js +2 -0
  226. package/dist/server/domains/statuses/status.events.js.map +1 -0
  227. package/dist/server/domains/statuses/status.fire.d.ts +48 -0
  228. package/dist/server/domains/statuses/status.fire.d.ts.map +1 -0
  229. package/dist/server/domains/statuses/status.fire.js +38 -0
  230. package/dist/server/domains/statuses/status.fire.js.map +1 -0
  231. package/dist/server/domains/subscriptions/subscription.routes.d.ts.map +1 -1
  232. package/dist/server/domains/subscriptions/subscription.routes.js +4 -2
  233. package/dist/server/domains/subscriptions/subscription.routes.js.map +1 -1
  234. package/dist/server/domains/subtasks/subtask.blocking.d.ts +4 -4
  235. package/dist/server/domains/subtasks/subtask.blocking.d.ts.map +1 -1
  236. package/dist/server/domains/subtasks/subtask.blocking.js +2 -10
  237. package/dist/server/domains/subtasks/subtask.blocking.js.map +1 -1
  238. package/dist/server/domains/subtasks/subtask.release.d.ts +5 -9
  239. package/dist/server/domains/subtasks/subtask.release.d.ts.map +1 -1
  240. package/dist/server/domains/subtasks/subtask.release.js +0 -4
  241. package/dist/server/domains/subtasks/subtask.release.js.map +1 -1
  242. package/dist/server/domains/subtasks/subtask.service.d.ts +1 -3
  243. package/dist/server/domains/subtasks/subtask.service.d.ts.map +1 -1
  244. package/dist/server/domains/subtasks/subtask.service.js +0 -12
  245. package/dist/server/domains/subtasks/subtask.service.js.map +1 -1
  246. package/dist/server/kernel/http.d.ts.map +1 -1
  247. package/dist/server/kernel/http.js +0 -3
  248. package/dist/server/kernel/http.js.map +1 -1
  249. package/dist/server/kernel/kinds.d.ts +24 -6
  250. package/dist/server/kernel/kinds.d.ts.map +1 -1
  251. package/dist/server/kernel/kinds.js +21 -1
  252. package/dist/server/kernel/kinds.js.map +1 -1
  253. package/dist/server/kernel/work.d.ts +8 -4
  254. package/dist/server/kernel/work.d.ts.map +1 -1
  255. package/dist/server/kernel/work.js +21 -10
  256. package/dist/server/kernel/work.js.map +1 -1
  257. package/dist/server/locales/en-US.d.ts +0 -9
  258. package/dist/server/locales/en-US.d.ts.map +1 -1
  259. package/dist/server/locales/en-US.js +0 -9
  260. package/dist/server/locales/en-US.js.map +1 -1
  261. package/dist/server/locales/zh-CN.d.ts.map +1 -1
  262. package/dist/server/locales/zh-CN.js +2 -11
  263. package/dist/server/locales/zh-CN.js.map +1 -1
  264. package/dist/server/providers/change-announcer.d.ts +27 -0
  265. package/dist/server/providers/change-announcer.d.ts.map +1 -0
  266. package/dist/server/providers/change-announcer.js +74 -0
  267. package/dist/server/providers/change-announcer.js.map +1 -0
  268. package/dist/server/providers/notifications.d.ts +1 -0
  269. package/dist/server/providers/notifications.d.ts.map +1 -1
  270. package/dist/server/providers/notifications.js +6 -120
  271. package/dist/server/providers/notifications.js.map +1 -1
  272. package/dist/server/providers/projects.d.ts +3 -8
  273. package/dist/server/providers/projects.d.ts.map +1 -1
  274. package/dist/server/providers/projects.js +14 -37
  275. package/dist/server/providers/projects.js.map +1 -1
  276. package/dist/server/routes/api.d.ts.map +1 -1
  277. package/dist/server/routes/api.js +0 -6
  278. package/dist/server/routes/api.js.map +1 -1
  279. package/dist/server/routes/schemas.d.ts +1 -27
  280. package/dist/server/routes/schemas.d.ts.map +1 -1
  281. package/dist/server/routes/schemas.js +23 -167
  282. package/dist/server/routes/schemas.js.map +1 -1
  283. package/dist/server/tokens.d.ts +12 -34
  284. package/dist/server/tokens.d.ts.map +1 -1
  285. package/dist/server/tokens.js +4 -16
  286. package/dist/server/tokens.js.map +1 -1
  287. package/dist/shared/access.d.ts +0 -1
  288. package/dist/shared/access.d.ts.map +1 -1
  289. package/dist/shared/access.js +2 -11
  290. package/dist/shared/access.js.map +1 -1
  291. package/dist/shared/issues.d.ts +14 -36
  292. package/dist/shared/issues.d.ts.map +1 -1
  293. package/dist/shared/issues.js +1 -0
  294. package/dist/shared/issues.js.map +1 -1
  295. package/dist/shared/kinds.d.ts +3 -1
  296. package/dist/shared/kinds.d.ts.map +1 -1
  297. package/dist/shared/kinds.js +1 -1
  298. package/dist/shared/locales/access.en-US.d.ts +0 -1
  299. package/dist/shared/locales/access.en-US.d.ts.map +1 -1
  300. package/dist/shared/locales/access.en-US.js +1 -2
  301. package/dist/shared/locales/access.en-US.js.map +1 -1
  302. package/dist/shared/locales/access.zh-CN.d.ts.map +1 -1
  303. package/dist/shared/locales/access.zh-CN.js +1 -2
  304. package/dist/shared/locales/access.zh-CN.js.map +1 -1
  305. package/dist/shared/plans.d.ts +6 -6
  306. package/dist/shared/plans.d.ts.map +1 -1
  307. package/dist/shared/plans.js +2 -1
  308. package/dist/shared/plans.js.map +1 -1
  309. package/dist/shared/projects.d.ts +0 -4
  310. package/dist/shared/projects.d.ts.map +1 -1
  311. package/dist/shared/projects.js.map +1 -1
  312. package/dist/shared/realtime.d.ts +9 -3
  313. package/dist/shared/realtime.d.ts.map +1 -1
  314. package/dist/shared/realtime.js +3 -2
  315. package/dist/shared/realtime.js.map +1 -1
  316. package/dist/shared/statuses.d.ts +42 -0
  317. package/dist/shared/statuses.d.ts.map +1 -0
  318. package/dist/shared/statuses.js +73 -0
  319. package/dist/shared/statuses.js.map +1 -0
  320. package/dist/shared/subtasks.d.ts +3 -3
  321. package/dist/shared/subtasks.d.ts.map +1 -1
  322. package/package.json +9 -17
  323. package/skills/nocobase-app-plugin-projects/SKILL.md +27 -51
  324. package/dist/client/hooks/use-workflow-leave-guard.d.ts +0 -3
  325. package/dist/client/hooks/use-workflow-leave-guard.d.ts.map +0 -1
  326. package/dist/client/hooks/use-workflow-leave-guard.js +0 -31
  327. package/dist/client/hooks/use-workflow-leave-guard.js.map +0 -1
  328. package/dist/client/lib/built-in-rule-editors.d.ts +0 -13
  329. package/dist/client/lib/built-in-rule-editors.d.ts.map +0 -1
  330. package/dist/client/lib/built-in-rule-editors.js +0 -86
  331. package/dist/client/lib/built-in-rule-editors.js.map +0 -1
  332. package/dist/client/lib/built-in-rule-types.d.ts +0 -3
  333. package/dist/client/lib/built-in-rule-types.d.ts.map +0 -1
  334. package/dist/client/lib/built-in-rule-types.js +0 -63
  335. package/dist/client/lib/built-in-rule-types.js.map +0 -1
  336. package/dist/client/lib/status-rule-types.d.ts +0 -60
  337. package/dist/client/lib/status-rule-types.d.ts.map +0 -1
  338. package/dist/client/lib/status-rule-types.js +0 -38
  339. package/dist/client/lib/status-rule-types.js.map +0 -1
  340. package/dist/client/lib/workflow-events.d.ts +0 -25
  341. package/dist/client/lib/workflow-events.d.ts.map +0 -1
  342. package/dist/client/lib/workflow-events.js +0 -30
  343. package/dist/client/lib/workflow-events.js.map +0 -1
  344. package/dist/client/pages/config/workflow-detail.d.ts +0 -10
  345. package/dist/client/pages/config/workflow-detail.d.ts.map +0 -1
  346. package/dist/client/pages/config/workflow-detail.js +0 -207
  347. package/dist/client/pages/config/workflow-detail.js.map +0 -1
  348. package/dist/client/pages/config/workflows/flow-editor.d.ts +0 -15
  349. package/dist/client/pages/config/workflows/flow-editor.d.ts.map +0 -1
  350. package/dist/client/pages/config/workflows/flow-editor.js +0 -76
  351. package/dist/client/pages/config/workflows/flow-editor.js.map +0 -1
  352. package/dist/client/pages/config/workflows/status-rules.d.ts +0 -21
  353. package/dist/client/pages/config/workflows/status-rules.d.ts.map +0 -1
  354. package/dist/client/pages/config/workflows/status-rules.js +0 -203
  355. package/dist/client/pages/config/workflows/status-rules.js.map +0 -1
  356. package/dist/client/pages/config/workflows/transitions-matrix.d.ts +0 -20
  357. package/dist/client/pages/config/workflows/transitions-matrix.d.ts.map +0 -1
  358. package/dist/client/pages/config/workflows/transitions-matrix.js +0 -114
  359. package/dist/client/pages/config/workflows/transitions-matrix.js.map +0 -1
  360. package/dist/client/pages/config/workflows/use-status-name.d.ts +0 -4
  361. package/dist/client/pages/config/workflows/use-status-name.d.ts.map +0 -1
  362. package/dist/client/pages/config/workflows/use-status-name.js +0 -17
  363. package/dist/client/pages/config/workflows/use-status-name.js.map +0 -1
  364. package/dist/client/pages/config/workflows/workflow-diagram.d.ts +0 -17
  365. package/dist/client/pages/config/workflows/workflow-diagram.d.ts.map +0 -1
  366. package/dist/client/pages/config/workflows/workflow-diagram.js +0 -298
  367. package/dist/client/pages/config/workflows/workflow-diagram.js.map +0 -1
  368. package/dist/client/pages/config/workflows/workflow-model.d.ts +0 -157
  369. package/dist/client/pages/config/workflows/workflow-model.d.ts.map +0 -1
  370. package/dist/client/pages/config/workflows/workflow-model.js +0 -403
  371. package/dist/client/pages/config/workflows/workflow-model.js.map +0 -1
  372. package/dist/client/pages/config/workflows/workflow-views.d.ts +0 -31
  373. package/dist/client/pages/config/workflows/workflow-views.d.ts.map +0 -1
  374. package/dist/client/pages/config/workflows/workflow-views.js +0 -76
  375. package/dist/client/pages/config/workflows/workflow-views.js.map +0 -1
  376. package/dist/client/pages/config/workflows.d.ts +0 -8
  377. package/dist/client/pages/config/workflows.d.ts.map +0 -1
  378. package/dist/client/pages/config/workflows.js +0 -139
  379. package/dist/client/pages/config/workflows.js.map +0 -1
  380. package/dist/client/pages/issues/detail/start-dialog.d.ts +0 -20
  381. package/dist/client/pages/issues/detail/start-dialog.d.ts.map +0 -1
  382. package/dist/client/pages/issues/detail/start-dialog.js +0 -31
  383. package/dist/client/pages/issues/detail/start-dialog.js.map +0 -1
  384. package/dist/client/pages/projects/workflow-select.d.ts +0 -14
  385. package/dist/client/pages/projects/workflow-select.d.ts.map +0 -1
  386. package/dist/client/pages/projects/workflow-select.js +0 -34
  387. package/dist/client/pages/projects/workflow-select.js.map +0 -1
  388. package/dist/server/domains/approvals/approval.events.d.ts +0 -47
  389. package/dist/server/domains/approvals/approval.events.d.ts.map +0 -1
  390. package/dist/server/domains/approvals/approval.events.js +0 -2
  391. package/dist/server/domains/approvals/approval.events.js.map +0 -1
  392. package/dist/server/domains/approvals/approval.lifecycle.d.ts +0 -8
  393. package/dist/server/domains/approvals/approval.lifecycle.d.ts.map +0 -1
  394. package/dist/server/domains/approvals/approval.lifecycle.js +0 -54
  395. package/dist/server/domains/approvals/approval.lifecycle.js.map +0 -1
  396. package/dist/server/domains/approvals/approval.routes.d.ts +0 -10
  397. package/dist/server/domains/approvals/approval.routes.d.ts.map +0 -1
  398. package/dist/server/domains/approvals/approval.routes.js +0 -87
  399. package/dist/server/domains/approvals/approval.routes.js.map +0 -1
  400. package/dist/server/domains/approvals/approval.service.d.ts +0 -72
  401. package/dist/server/domains/approvals/approval.service.d.ts.map +0 -1
  402. package/dist/server/domains/approvals/approval.service.js +0 -261
  403. package/dist/server/domains/approvals/approval.service.js.map +0 -1
  404. package/dist/server/domains/approvals/approval.store.d.ts +0 -42
  405. package/dist/server/domains/approvals/approval.store.d.ts.map +0 -1
  406. package/dist/server/domains/approvals/approval.store.js +0 -66
  407. package/dist/server/domains/approvals/approval.store.js.map +0 -1
  408. package/dist/server/domains/approvals/index.d.ts +0 -4
  409. package/dist/server/domains/approvals/index.d.ts.map +0 -1
  410. package/dist/server/domains/approvals/index.js +0 -3
  411. package/dist/server/domains/approvals/index.js.map +0 -1
  412. package/dist/server/domains/checklists/checklist.routes.d.ts +0 -9
  413. package/dist/server/domains/checklists/checklist.routes.d.ts.map +0 -1
  414. package/dist/server/domains/checklists/checklist.routes.js +0 -62
  415. package/dist/server/domains/checklists/checklist.routes.js.map +0 -1
  416. package/dist/server/domains/checklists/checklist.service.d.ts +0 -26
  417. package/dist/server/domains/checklists/checklist.service.d.ts.map +0 -1
  418. package/dist/server/domains/checklists/checklist.service.js +0 -80
  419. package/dist/server/domains/checklists/checklist.service.js.map +0 -1
  420. package/dist/server/domains/checklists/checklist.store.d.ts +0 -32
  421. package/dist/server/domains/checklists/checklist.store.d.ts.map +0 -1
  422. package/dist/server/domains/checklists/checklist.store.js +0 -66
  423. package/dist/server/domains/checklists/checklist.store.js.map +0 -1
  424. package/dist/server/domains/checklists/index.d.ts +0 -4
  425. package/dist/server/domains/checklists/index.d.ts.map +0 -1
  426. package/dist/server/domains/checklists/index.js +0 -4
  427. package/dist/server/domains/checklists/index.js.map +0 -1
  428. package/dist/server/domains/workflows/built-in-rule-types.d.ts +0 -40
  429. package/dist/server/domains/workflows/built-in-rule-types.d.ts.map +0 -1
  430. package/dist/server/domains/workflows/built-in-rule-types.js +0 -260
  431. package/dist/server/domains/workflows/built-in-rule-types.js.map +0 -1
  432. package/dist/server/domains/workflows/event-types.d.ts +0 -21
  433. package/dist/server/domains/workflows/event-types.d.ts.map +0 -1
  434. package/dist/server/domains/workflows/event-types.js +0 -31
  435. package/dist/server/domains/workflows/event-types.js.map +0 -1
  436. package/dist/server/domains/workflows/index.d.ts +0 -10
  437. package/dist/server/domains/workflows/index.d.ts.map +0 -1
  438. package/dist/server/domains/workflows/index.js +0 -10
  439. package/dist/server/domains/workflows/index.js.map +0 -1
  440. package/dist/server/domains/workflows/rule-types.d.ts +0 -129
  441. package/dist/server/domains/workflows/rule-types.d.ts.map +0 -1
  442. package/dist/server/domains/workflows/rule-types.js +0 -33
  443. package/dist/server/domains/workflows/rule-types.js.map +0 -1
  444. package/dist/server/domains/workflows/templates.d.ts +0 -62
  445. package/dist/server/domains/workflows/templates.d.ts.map +0 -1
  446. package/dist/server/domains/workflows/templates.js +0 -63
  447. package/dist/server/domains/workflows/templates.js.map +0 -1
  448. package/dist/server/domains/workflows/workflow.diff.d.ts +0 -14
  449. package/dist/server/domains/workflows/workflow.diff.d.ts.map +0 -1
  450. package/dist/server/domains/workflows/workflow.diff.js +0 -80
  451. package/dist/server/domains/workflows/workflow.diff.js.map +0 -1
  452. package/dist/server/domains/workflows/workflow.events.d.ts +0 -26
  453. package/dist/server/domains/workflows/workflow.events.d.ts.map +0 -1
  454. package/dist/server/domains/workflows/workflow.events.js +0 -2
  455. package/dist/server/domains/workflows/workflow.events.js.map +0 -1
  456. package/dist/server/domains/workflows/workflow.fire.d.ts +0 -38
  457. package/dist/server/domains/workflows/workflow.fire.d.ts.map +0 -1
  458. package/dist/server/domains/workflows/workflow.fire.js +0 -57
  459. package/dist/server/domains/workflows/workflow.fire.js.map +0 -1
  460. package/dist/server/domains/workflows/workflow.registry.d.ts +0 -27
  461. package/dist/server/domains/workflows/workflow.registry.d.ts.map +0 -1
  462. package/dist/server/domains/workflows/workflow.registry.js +0 -132
  463. package/dist/server/domains/workflows/workflow.registry.js.map +0 -1
  464. package/dist/server/domains/workflows/workflow.routes.d.ts +0 -6
  465. package/dist/server/domains/workflows/workflow.routes.d.ts.map +0 -1
  466. package/dist/server/domains/workflows/workflow.routes.js +0 -148
  467. package/dist/server/domains/workflows/workflow.routes.js.map +0 -1
  468. package/dist/server/domains/workflows/workflow.rules.d.ts +0 -14
  469. package/dist/server/domains/workflows/workflow.rules.d.ts.map +0 -1
  470. package/dist/server/domains/workflows/workflow.rules.js +0 -212
  471. package/dist/server/domains/workflows/workflow.rules.js.map +0 -1
  472. package/dist/server/domains/workflows/workflow.service.d.ts +0 -71
  473. package/dist/server/domains/workflows/workflow.service.d.ts.map +0 -1
  474. package/dist/server/domains/workflows/workflow.service.js +0 -366
  475. package/dist/server/domains/workflows/workflow.service.js.map +0 -1
  476. package/dist/server/domains/workflows/workflow.store.d.ts +0 -33
  477. package/dist/server/domains/workflows/workflow.store.d.ts.map +0 -1
  478. package/dist/server/domains/workflows/workflow.store.js +0 -148
  479. package/dist/server/domains/workflows/workflow.store.js.map +0 -1
  480. package/dist/shared/approvals.d.ts +0 -37
  481. package/dist/shared/approvals.d.ts.map +0 -1
  482. package/dist/shared/approvals.js +0 -4
  483. package/dist/shared/approvals.js.map +0 -1
  484. package/dist/shared/checklists.d.ts +0 -27
  485. package/dist/shared/checklists.d.ts.map +0 -1
  486. package/dist/shared/checklists.js +0 -7
  487. package/dist/shared/checklists.js.map +0 -1
  488. package/dist/shared/workflows.d.ts +0 -276
  489. package/dist/shared/workflows.d.ts.map +0 -1
  490. package/dist/shared/workflows.js +0 -151
  491. package/dist/shared/workflows.js.map +0 -1
@@ -1,13 +1,13 @@
1
1
  import { apiErrorResponse, apiErrorResponses, apiValidator, cliRoute, dataResponse, describeRoute, emptyResponse, listResponse, } from '@nocobase/app-server/router';
2
2
  import { delegatedWrite, refuseDelegated, viewerOf, } from '../../access/request.js';
3
- import { boundedList, cursorList, domainRouter, referencedBy, tags, personOrRunSecurity, } from '../../kernel/http.js';
4
- import { ActivitySchema, BoundedListMeta, CreateIssueBody, CursorListMeta, CursorPageQuery, IssueBoardQuery, IssueBoardSchema, IssueDetailSchema, IssueListItemSchema, IssueListQuerySchema, IssueParams, IssueSchema, IssueStartsSchema, ProjectFilterQuery, StatusDefinitionSchema, UpdateIssueBody, UpdateIssueResultSchema, } from '../../routes/schemas.js';
3
+ import { boundedList, cursorList, domainRouter, tags, personOrRunSecurity, } from '../../kernel/http.js';
4
+ import { ActivitySchema, BoundedListMeta, CreateIssueBody, CursorListMeta, CursorPageQuery, IssueBoardQuery, IssueBoardSchema, IssueDetailSchema, IssueListItemSchema, IssueListQuerySchema, IssueParams, IssueSchema, StatusDefinitionSchema, UpdateIssueBody, UpdateIssueResultSchema, } from '../../routes/schemas.js';
5
5
  const notFound = apiErrorResponse(404, 'When the issue does not exist or the caller cannot see it.');
6
6
  const idOrKey = '`issueId` is an id or an identifier such as `PM-12`.';
7
- const workflowRefused = 'When the issue’s workflow or its rules refuse the change, such as a status the caller may not move it to, an incomplete checklist (`CHECKLIST_INCOMPLETE`), open sub-issues (`SUBTASKS_OPEN`) or a blocker (`ISSUE_BLOCKED`).';
7
+ const statusRefused = 'When the change is refused, such as a status the caller may not move it to (`TRANSITION_NOT_ALLOWED`) or a status that does not exist (`INVALID_STATUS`).';
8
8
  /**
9
9
  * `/api/projects/issues`. `{issueId}` is an issue id or its identifier (`PM-12`); identifiers always hold a `-`, so
10
- * none equals a fixed segment (`board`, `statuses`, `starts`).
10
+ * none equals a fixed segment (`board`, `statuses`).
11
11
  */
12
12
  export function createIssueRoutes(deps) {
13
13
  const routes = domainRouter();
@@ -60,7 +60,7 @@ export function createIssueRoutes(deps) {
60
60
  flags: {
61
61
  statusKey: {
62
62
  name: 'status',
63
- description: 'The status it starts in: analysis (design first), todo (straight to development, the default) or backlog (nothing starts).',
63
+ description: 'The status it starts in: in_progress (start now) or backlog (nothing starts, the default).',
64
64
  },
65
65
  ownerUserId: { name: 'owner' },
66
66
  parentIssueId: { name: 'parent' },
@@ -69,13 +69,13 @@ export function createIssueRoutes(deps) {
69
69
  description: { contentFile: true },
70
70
  },
71
71
  action: 'pm.issues/create',
72
- examples: ['issue create --file issue.json --status todo'],
72
+ examples: ['issue create --file issue.json --status in_progress'],
73
73
  }),
74
- description: 'Needs `create` on `pm.issues` for the issue’s project. The issue starts in `todo` unless `statusKey` names another status it may start in; the caller owns it unless `ownerUserId` says otherwise.',
74
+ description: 'Needs `create` on `pm.issues` for the issue’s project. The issue starts in `backlog` unless `statusKey` is `in_progress`; the caller owns it unless `ownerUserId` says otherwise. Without `executor` it gets the default executor, if a kind names one.',
75
75
  responses: {
76
76
  201: dataResponse(IssueSchema),
77
77
  ...apiErrorResponses,
78
- 400: apiErrorResponse(400, workflowRefused),
78
+ 400: apiErrorResponse(400, statusRefused),
79
79
  409: apiErrorResponse(409, 'When the dependency graph changed (`DEPENDENCY_GRAPH_CHANGED`): reload and retry.'),
80
80
  },
81
81
  }), apiValidator('json', CreateIssueBody), async (context) => {
@@ -115,30 +115,15 @@ export function createIssueRoutes(deps) {
115
115
  operationId: 'projectsListIssueStatuses',
116
116
  ...cliRoute({
117
117
  command: 'issue status list',
118
- flags: { projectId: { name: 'project' } },
119
118
  columns: ['key', 'name', 'category'],
120
- examples: ['issue status list --project <project>'],
119
+ examples: ['issue status list'],
121
120
  }),
122
- description: 'The statuses of `projectId`’s workflow, or of the default workflow without it. A `projectId` that names no project the caller sees is a 400 naming the field.',
121
+ description: 'The six fixed statuses, in order.',
123
122
  responses: {
124
123
  200: listResponse(StatusDefinitionSchema, BoundedListMeta),
125
124
  ...apiErrorResponses,
126
125
  },
127
- }), apiValidator('query', ProjectFilterQuery), async (context) => context.json(boundedList(await referencedBy('projectId', () => deps.queries.statuses(viewerOf(context), context.req.valid('query').projectId)))));
128
- routes.get('/starts', describeRoute({
129
- tags,
130
- summary: 'List the ways a new issue may start',
131
- operationId: 'projectsListIssueStarts',
132
- // The create form's start picker; `issue status list` and `issue create --help` name the statuses.
133
- ...cliRoute(false),
134
- description: 'The initial status and every status a `startOption` rule offers in `projectId`’s workflow, or the default workflow without it. A `projectId` that names no project the caller sees is a 400 naming the field.',
135
- responses: {
136
- 200: dataResponse(IssueStartsSchema),
137
- ...apiErrorResponses,
138
- },
139
- }), apiValidator('query', ProjectFilterQuery), async (context) => context.json({
140
- data: await referencedBy('projectId', () => deps.queries.starts(viewerOf(context), context.req.valid('query').projectId)),
141
- }));
126
+ }), (context) => context.json(boundedList(deps.queries.statuses())));
142
127
  routes.get('/:issueId', describeRoute({
143
128
  tags,
144
129
  summary: 'Get an issue',
@@ -149,7 +134,7 @@ export function createIssueRoutes(deps) {
149
134
  flags: { issueId: { name: 'issue' } },
150
135
  action: 'pm.issues/view',
151
136
  }),
152
- description: `The issue with its newest activities and comment threads, files, checklist, approvals, sub-issues and dependencies. ${idOrKey}`,
137
+ description: `The issue with its newest activities and comment threads, files, sub-issues and dependencies. ${idOrKey}`,
153
138
  responses: {
154
139
  200: dataResponse(IssueDetailSchema),
155
140
  ...apiErrorResponses,
@@ -158,7 +143,6 @@ export function createIssueRoutes(deps) {
158
143
  }), apiValidator('param', IssueParams), async (context) => context.json({
159
144
  data: await deps.queries.detail(viewerOf(context), context.req.valid('param').issueId),
160
145
  }));
161
- // `{ issue, pendingApproval }`: 202 when the status change waits for approval, the issue then unchanged.
162
146
  routes.patch('/:issueId', describeRoute({
163
147
  tags,
164
148
  summary: 'Update an issue',
@@ -171,7 +155,7 @@ export function createIssueRoutes(deps) {
171
155
  issueId: { name: 'issue' },
172
156
  statusKey: {
173
157
  name: 'status',
174
- description: "Move it to this status, through its workflow's rules and approvals.",
158
+ description: 'Move it to this status: backlog, in_progress, blocked, in_review, done or cancelled.',
175
159
  },
176
160
  revision: { hidden: true },
177
161
  ownerUserId: { name: 'owner' },
@@ -179,19 +163,20 @@ export function createIssueRoutes(deps) {
179
163
  projectId: { name: 'project' },
180
164
  labelIds: { name: 'label' },
181
165
  description: { contentFile: true },
166
+ needsYou: { name: 'needs-you', contentFile: true },
167
+ next: { contentFile: true },
182
168
  },
183
169
  action: 'pm.issues/edit',
184
170
  examples: [
185
- 'issue update PM-12 --status in_review',
171
+ 'issue update PM-12 --status in_review --needs-you "Review the change and accept it or send it back."',
186
172
  'issue update PM-12 --file change.json',
187
173
  ],
188
174
  }),
189
175
  description: `Needs \`edit\` on the issue; closing it and changing its owner need \`close\` and \`change-owner\`. ${idOrKey}`,
190
176
  responses: {
191
177
  200: dataResponse(UpdateIssueResultSchema, 'The issue after the change.'),
192
- 202: dataResponse(UpdateIssueResultSchema, 'The status change waits for approval: the issue is unchanged, nothing else in the request is applied, and `pendingApproval` is the request that holds it.'),
193
178
  ...apiErrorResponses,
194
- 400: apiErrorResponse(400, `${workflowRefused} Also when a status change already waits for approval (\`APPROVAL_PENDING\`).`),
179
+ 400: apiErrorResponse(400, statusRefused),
195
180
  404: notFound,
196
181
  409: apiErrorResponse(409, 'When the issue changed since `revision` (`REVISION_CONFLICT`), or its dependency graph changed (`DEPENDENCY_GRAPH_CHANGED`): read it again and retry.'),
197
182
  },
@@ -205,17 +190,14 @@ export function createIssueRoutes(deps) {
205
190
  });
206
191
  if (delegated)
207
192
  return context.json({
208
- data: {
209
- issue: await deps.queries.detail(viewer, issueId),
210
- pendingApproval: null,
211
- },
193
+ data: { issue: await deps.queries.detail(viewer, issueId) },
212
194
  meta: delegated.meta,
213
195
  });
214
- const { pendingApproval, ...issue } = await deps.issues.update(viewer, issueId, {
196
+ const issue = await deps.issues.update(viewer, issueId, {
215
197
  ...set,
216
198
  revision: revision ?? (await deps.queries.detail(viewer, issueId)).revision,
217
199
  });
218
- return context.json({ data: { issue, pendingApproval: pendingApproval ?? null } }, pendingApproval ? 202 : 200);
200
+ return context.json({ data: { issue } }, 200);
219
201
  });
220
202
  routes.delete('/:issueId', describeRoute({
221
203
  tags,
@@ -1 +1 @@
1
- {"version":3,"file":"issue.routes.js","sourceRoot":"","sources":["../../../../server/domains/issues/issue.routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"issue.routes.js","sourceRoot":"","sources":["../../../../server/domains/issues/issue.routes.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,6 @@
2
2
  * Issue writes: create, update, and an administrator's delete and restore. Each write records its activities and emits
3
3
  * `issue.changed` plus an event saying what happened, and hands the change to the triggers in the same transaction.
4
4
  */
5
- import type { ApprovalRequest } from '../../../shared/approvals.js';
6
- import { type WorkflowEvent } from '../../../shared/workflows.js';
7
5
  import type { CreateIssueRequest, Executor, Issue, UpdateIssueRequest } from '../../../shared/issues.js';
8
6
  import { type Viewer } from '../../access/viewer.js';
9
7
  import type { ActivityRecorder } from '../../kernel/activity.js';
@@ -13,18 +11,13 @@ import type { Tx, TxRunner } from '../../kernel/tx.js';
13
11
  import type { SettingsService } from '../settings/index.js';
14
12
  import './issue.events.js';
15
13
  import { type FieldDeps } from './issue.fields.js';
16
- import { type IssueApprovals, type IssueRelations, type IssueTriggers } from './ports.js';
14
+ import { type IssueRelations, type IssueTriggers } from './ports.js';
17
15
  /** Whether a change may start work now; the client asks when it would. */
18
16
  interface StartOption {
19
17
  readonly start?: boolean;
20
18
  }
21
- /**
22
- * The issue after an update. When the status change waits for approval, the issue is unchanged (nothing in the
23
- * request was applied) and `pendingApproval` is the request that holds it.
24
- */
25
- export type IssueUpdateOutcome = Issue & {
26
- readonly pendingApproval?: ApprovalRequest;
27
- };
19
+ /** The issue after an update. */
20
+ export type IssueUpdateOutcome = Issue;
28
21
  export interface IssueService {
29
22
  create(viewer: Viewer, input: CreateIssueRequest & StartOption): Promise<Issue>;
30
23
  update(viewer: Viewer, idOrKey: string, patch: UpdateIssueRequest & StartOption): Promise<IssueUpdateOutcome>;
@@ -46,35 +39,19 @@ export interface IssueService {
46
39
  retract(viewer: Viewer, idOrKey: string): Promise<void>;
47
40
  restore(viewer: Viewer, idOrKey: string): Promise<Issue>;
48
41
  /**
49
- * For the approvals domain, in its transaction: the move an approver accepted, checked again as the requester's
50
- * (who may, and the guards) and recorded as the system's with the approver named. Null when it moved, else why not.
51
- */
52
- applyApproved(tx: Tx, request: {
53
- readonly id: string;
54
- readonly issueId: string;
55
- readonly fromStatus: string;
56
- readonly toStatus: string;
57
- readonly requestedByType: string;
58
- readonly requestedById: string;
59
- }, approver: Actor): Promise<{
60
- readonly code: string;
61
- readonly message: string;
62
- } | null>;
63
- /**
64
- * In the caller's transaction (the subtasks domain's, or a contributed event's through `workflowEvents.fire`): moves
65
- * the issue where a workflow event takes it, as the system. The activity names the event and its cause, and is
66
- * recorded as `cause.actor` when given (the person whose action the event reports). A guard's refusal is recorded
67
- * as `auto_move_skipped` and nothing moves; without an event transition from its status nothing happens. A finished
68
- * issue ignores the built-in events.
42
+ * In the caller's transaction (a registered status event's, through `statusEvents.fire`): moves the issue where the
43
+ * event takes it, as the system. The activity names the event and its cause, and is recorded as `cause.actor` when
44
+ * given (the person whose action the event reports). A refusal is recorded as `auto_move_skipped` and nothing moves;
45
+ * when the issue is in none of the event's `from` statuses nothing happens.
69
46
  */
70
- fireEvent(tx: Tx, issueId: string, event: WorkflowEvent, cause: EventCause): Promise<EventMove>;
47
+ fireEvent(tx: Tx, issueId: string, event: string, cause: EventCause): Promise<EventMove>;
71
48
  /**
72
- * Where `fireEvent` would take the issue, without moving it: the status its workflow's transition on the event
73
- * enters, or why there is none. Entry conditions are not checked, so a move this answers may still be refused.
49
+ * Where `fireEvent` would take the issue, without moving it: the status the event enters from the issue's status, or
50
+ * why there is none.
74
51
  */
75
- eventTarget(conn: Tx['conn'], issueId: string, event: WorkflowEvent): Promise<EventTarget>;
52
+ eventTarget(conn: Tx['conn'], issueId: string, event: string): Promise<EventTarget>;
76
53
  }
77
- /** Where a workflow event would take an issue (`eventTarget`). */
54
+ /** Where a status event would take an issue (`eventTarget`). */
78
55
  export type EventTarget = {
79
56
  readonly issueId: string;
80
57
  readonly from: string;
@@ -82,12 +59,12 @@ export type EventTarget = {
82
59
  } | {
83
60
  readonly issueId: string;
84
61
  readonly to: null;
85
- /** As `EventMove`'s `ignored`: no such live issue, no transition on the event, or finished and built in. */
86
- readonly reason: 'notFound' | 'noTransition' | 'finished';
62
+ /** As `EventMove`'s `ignored`: no such live issue, or no transition on the event from its status. */
63
+ readonly reason: 'notFound' | 'noTransition';
87
64
  };
88
- /** What made a workflow event happen, as the activity records it. */
65
+ /** What made a status event happen, as the activity records it. */
89
66
  export interface EventCause {
90
- /** The issue whose change caused it (the last sub-issue finished). */
67
+ /** The issue whose change caused it, if any. */
91
68
  readonly issueId?: string;
92
69
  /** Who the activity names; the system when left out. The move itself is always the system's. */
93
70
  readonly actor?: Actor;
@@ -96,7 +73,7 @@ export interface EventCause {
96
73
  /** Kept with the activity, opaque to this plugin. */
97
74
  readonly details?: Readonly<Record<string, unknown>>;
98
75
  }
99
- /** What a workflow event did to one issue. */
76
+ /** What a status event did to one issue. */
100
77
  export type EventMove = {
101
78
  readonly issueId: string;
102
79
  readonly outcome: 'moved';
@@ -105,14 +82,14 @@ export type EventMove = {
105
82
  } | {
106
83
  readonly issueId: string;
107
84
  readonly outcome: 'ignored';
108
- /** No such live issue, no transition on the event from its status, or a finished issue and a built-in event. */
109
- readonly reason: 'notFound' | 'noTransition' | 'finished';
85
+ /** No such live issue, or no transition on the event from its status. */
86
+ readonly reason: 'notFound' | 'noTransition';
110
87
  } | {
111
88
  readonly issueId: string;
112
89
  readonly outcome: 'refused';
113
90
  readonly from: string;
114
91
  readonly to: string;
115
- /** The guard's code, such as `CHECKLIST_INCOMPLETE`, and its message. */
92
+ /** The refusal's code and message. */
116
93
  readonly code: string;
117
94
  readonly message: string;
118
95
  };
@@ -122,7 +99,6 @@ export interface IssueDeps extends FieldDeps {
122
99
  readonly activity: ActivityRecorder;
123
100
  readonly settings: Pick<SettingsService, 'allocateIssueNumber'>;
124
101
  readonly triggers: () => IssueTriggers;
125
- readonly approvals: () => IssueApprovals;
126
102
  readonly relations: () => IssueRelations;
127
103
  }
128
104
  export declare function createIssueService(deps: IssueDeps): IssueService;
@@ -1 +1 @@
1
- {"version":3,"file":"issue.service.d.ts","sourceRoot":"","sources":["../../../../server/domains/issues/issue.service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAEL,KAAK,aAAa,EACnB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EACV,kBAAkB,EAClB,QAAQ,EACR,KAAK,EACL,kBAAkB,EACnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAW,KAAK,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAgB,KAAK,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAOjE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAQ5D,OAAO,mBAAmB,CAAC;AAE3B,OAAO,EAGL,KAAK,SAAS,EACf,MAAM,mBAAmB,CAAC;AAS3B,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,aAAa,EACnB,MAAM,YAAY,CAAC;AAEpB,0EAA0E;AAC1E,UAAU,WAAW;IACnB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG;IACvC,QAAQ,CAAC,eAAe,CAAC,EAAE,eAAe,CAAC;CAC5C,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,MAAM,CACJ,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,kBAAkB,GAAG,WAAW,GACtC,OAAO,CAAC,KAAK,CAAC,CAAC;IAClB,MAAM,CACJ,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,kBAAkB,GAAG,WAAW,GACtC,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC/B,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD;;;;;OAKG;IACH,eAAe,CACb,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GACtD,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACrB;;;OAGG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IACzD;;;OAGG;IACH,aAAa,CACX,EAAE,EAAE,EAAE,EACN,OAAO,EAAE;QACP,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;QAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;QACjC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;KAChC,EACD,QAAQ,EAAE,KAAK,GACd,OAAO,CAAC;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;IACvE;;;;;;OAMG;IACH,SAAS,CACP,EAAE,EAAE,EAAE,EACN,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,UAAU,GAChB,OAAO,CAAC,SAAS,CAAC,CAAC;IACtB;;;OAGG;IACH,WAAW,CACT,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,EAChB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,aAAa,GACnB,OAAO,CAAC,WAAW,CAAC,CAAC;CACzB;AAED,kEAAkE;AAClE,MAAM,MAAM,WAAW,GACnB;IACE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACrB,GACD;IACE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,4GAA4G;IAC5G,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,cAAc,GAAG,UAAU,CAAC;CAC3D,CAAC;AAEN,qEAAqE;AACrE,MAAM,WAAW,UAAU;IACzB,sEAAsE;IACtE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,gGAAgG;IAChG,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;IACvB,mEAAmE;IACnE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,qDAAqD;IACrD,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACtD;AAED,8CAA8C;AAC9C,MAAM,MAAM,SAAS,GACjB;IACE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACrB,GACD;IACE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC;IAC5B,gHAAgH;IAChH,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,cAAc,GAAG,UAAU,CAAC;CAC3D,GACD;IACE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,yEAAyE;IACzE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEN,MAAM,WAAW,SAAU,SAAQ,SAAS;IAC1C,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,EAAE,qBAAqB,CAAC,CAAC;IAChE,QAAQ,CAAC,QAAQ,EAAE,MAAM,aAAa,CAAC;IACvC,QAAQ,CAAC,SAAS,EAAE,MAAM,cAAc,CAAC;IACzC,QAAQ,CAAC,SAAS,EAAE,MAAM,cAAc,CAAC;CAC1C;AA2BD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,SAAS,GAAG,YAAY,CA0bhE"}
1
+ {"version":3,"file":"issue.service.d.ts","sourceRoot":"","sources":["../../../../server/domains/issues/issue.service.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import { isBuiltInEvent, } from '../../../shared/workflows.js';
2
1
  import { scopeOf } from '../../access/viewer.js';
3
2
  import { SYSTEM_ACTOR } from '../../kernel/actor.js';
4
3
  import { DomainError, forbidden, invalid, notFound, } from '../../kernel/errors.js';
@@ -6,7 +5,7 @@ import { mentions, newMentions } from '../../kernel/mentions.js';
6
5
  import { updateProject } from '../projects/index.js';
7
6
  import { requireDeleter, requireCreator, requireEditor, requireVisible, } from './issue.access.js';
8
7
  import './issue.events.js';
9
- import { resolveCreate, resolveUpdate, } from './issue.fields.js';
8
+ import { resolveCreate, resolveUpdate, progressValues, } from './issue.fields.js';
10
9
  import { findIssue, insertIssue, issuesExecutedBy, setIssueLabels, updateIssue, } from './issue.store.js';
11
10
  import { moveIssue } from './issue.status.js';
12
11
  import { isTerminal, } from './ports.js';
@@ -34,13 +33,11 @@ async function reload(tx, id) {
34
33
  }
35
34
  export function createIssueService(deps) {
36
35
  const record = (tx, issueId, actor, action, details = {}) => deps.activity.record(tx.conn, { issueId, actor, action, details });
37
- /** After an update is written: the triggers, the stale approvals, and what changed. */
38
- async function announce(tx, before, after, actor, start, approvedRequest) {
39
- await deps.triggers().onIssueChanged(tx, { before, after, actor, start });
40
- if (before.statusKey !== after.statusKey)
41
- await deps
42
- .approvals()
43
- .supersede(tx, after.id, after.statusKey, approvedRequest);
36
+ /** After an update is written: the triggers, and what changed. */
37
+ async function announce(tx, before, after, actor, start, ownerClaimed = false) {
38
+ await deps
39
+ .triggers()
40
+ .onIssueChanged(tx, { before, after, actor, start, ownerClaimed });
44
41
  await deps.relations().changed(tx, { before, after, actor });
45
42
  tx.emit({ type: 'issue.changed', issueId: after.id });
46
43
  for (const parentId of new Set([before.parentIssueId, after.parentIssueId]))
@@ -75,6 +72,8 @@ export function createIssueService(deps) {
75
72
  title: values.title,
76
73
  description: values.description,
77
74
  statusKey: values.statusKey,
75
+ needsYou: null,
76
+ next: null,
78
77
  priority: values.priority,
79
78
  ownerUserId: values.ownerUserId,
80
79
  executorType: values.executor?.type ?? null,
@@ -126,7 +125,11 @@ export function createIssueService(deps) {
126
125
  return deps.tx.run(async (tx) => {
127
126
  const before = await requireVisible(tx.conn, viewer, idOrKey);
128
127
  requireEditor(viewer);
129
- // Status/workflow changes can release waits, including a parent's automatic move. Take the graph guard
128
+ const ownerClaimed = patch.ownerUserId === before.ownerUserId &&
129
+ viewer.actor.type === 'user' &&
130
+ viewer.actor.via !== 'agent' &&
131
+ viewer.actor.id === before.ownerUserId;
132
+ // Status and project changes can release waits. Take the graph guard
130
133
  // before this issue's first write, in the same order as relationship edits and plan execution.
131
134
  if (patch.parentIssueId !== undefined ||
132
135
  patch.stage !== undefined ||
@@ -144,7 +147,9 @@ export function createIssueService(deps) {
144
147
  : { added: [], removed: [] };
145
148
  if (labels.added.length > 0 || labels.removed.length > 0)
146
149
  activities.push({ action: 'labels_changed', details: labels });
147
- if (activities.length === 0)
150
+ if (activities.length === 0 &&
151
+ Object.keys(values).length === 0 &&
152
+ !ownerClaimed)
148
153
  return;
149
154
  const now = new Date().toISOString();
150
155
  await updateIssue(tx.conn, before.id, { ...values, updatedAt: now, lastActivityAt: now }, patch.revision);
@@ -152,29 +157,14 @@ export function createIssueService(deps) {
152
157
  await record(tx, before.id, viewer.actor, action, details);
153
158
  written = true;
154
159
  };
155
- if (status) {
156
- const moved = await moveIssue(deps, tx, {
160
+ if (status)
161
+ await moveIssue(deps, tx, {
157
162
  issue: before,
158
163
  catalog: status.catalog,
159
164
  to: status.to,
160
165
  actor: viewer.actor,
161
166
  write,
162
167
  });
163
- if (moved.outcome === 'pending') {
164
- const pendingApproval = await deps.approvals().request(tx, {
165
- issue: before,
166
- toStatus: status.to,
167
- actor: viewer.actor,
168
- approvers: moved.approvers,
169
- approverIds: moved.approverIds,
170
- });
171
- return { ...before, pendingApproval };
172
- }
173
- if (moved.outcome === 'moved' && moved.approval !== 'none')
174
- await record(tx, before.id, viewer.actor, moved.approval === 'self'
175
- ? 'approval_self'
176
- : 'approval_no_approver', { from: before.statusKey, to: status.to });
177
- }
178
168
  else
179
169
  await write();
180
170
  if (!written)
@@ -182,59 +172,16 @@ export function createIssueService(deps) {
182
172
  const after = await reload(tx, before.id);
183
173
  if (placed)
184
174
  await deps.relations().placed(tx, after);
185
- await announce(tx, before, after, viewer.actor, patch.start !== false);
186
- return after;
175
+ await announce(tx, before, after, viewer.actor, patch.start !== false, ownerClaimed);
176
+ // Work hooks may update the issue again within this transaction.
177
+ return reload(tx, before.id);
187
178
  });
188
179
  },
189
- async applyApproved(tx, request, approver) {
190
- await deps.relations().lock(tx);
191
- const issue = await findIssue(tx.conn, request.issueId);
192
- if (!issue || issue.deletedAt)
193
- return { code: 'ISSUE_GONE', message: 'The issue was deleted.' };
194
- if (issue.statusKey !== request.fromStatus)
195
- return {
196
- code: 'STATUS_CHANGED',
197
- message: `The issue left ${request.fromStatus} meanwhile.`,
198
- };
199
- const catalog = await deps.statuses.forProject(tx.conn, issue.projectId);
200
- try {
201
- await moveIssue(deps, tx, {
202
- issue,
203
- catalog,
204
- to: request.toStatus,
205
- actor: { type: request.requestedByType, id: request.requestedById },
206
- approved: true,
207
- write: async () => {
208
- const now = new Date().toISOString();
209
- await updateIssue(tx.conn, issue.id, {
210
- statusKey: request.toStatus,
211
- updatedAt: now,
212
- lastActivityAt: now,
213
- });
214
- await record(tx, issue.id, SYSTEM_ACTOR, 'status_changed', {
215
- from: issue.statusKey,
216
- to: request.toStatus,
217
- requestId: request.id,
218
- approvedById: approver.id,
219
- });
220
- },
221
- });
222
- }
223
- catch (error) {
224
- if (error instanceof DomainError)
225
- return { code: error.code, message: error.message };
226
- throw error;
227
- }
228
- await announce(tx, issue, await reload(tx, issue.id), SYSTEM_ACTOR, true, request.id);
229
- return null;
230
- },
231
180
  async eventTarget(conn, issueId, event) {
232
181
  const issue = await findIssue(conn, issueId);
233
182
  if (!issue || issue.deletedAt)
234
183
  return { issueId, to: null, reason: 'notFound' };
235
- const catalog = await deps.statuses.forProject(conn, issue.projectId);
236
- if (isBuiltInEvent(event) && isTerminal(catalog, issue.statusKey))
237
- return { issueId: issue.id, to: null, reason: 'finished' };
184
+ const catalog = deps.statuses.catalog();
238
185
  const to = catalog.machine.eventTarget(issue.statusKey, event);
239
186
  return to === null
240
187
  ? { issueId: issue.id, to: null, reason: 'noTransition' }
@@ -246,9 +193,7 @@ export function createIssueService(deps) {
246
193
  const issue = await findIssue(tx.conn, issueId);
247
194
  if (!issue || issue.deletedAt)
248
195
  return { issueId, outcome: 'ignored', reason: 'notFound' };
249
- const catalog = await deps.statuses.forProject(tx.conn, issue.projectId);
250
- if (isBuiltInEvent(event) && isTerminal(catalog, issue.statusKey))
251
- return { issueId: issue.id, outcome: 'ignored', reason: 'finished' };
196
+ const catalog = deps.statuses.catalog();
252
197
  const to = catalog.machine.eventTarget(issue.statusKey, event);
253
198
  if (to === null)
254
199
  return {
@@ -258,18 +203,19 @@ export function createIssueService(deps) {
258
203
  };
259
204
  const recorded = cause.actor ?? SYSTEM_ACTOR;
260
205
  try {
206
+ const progress = progressValues(issue, { statusKey: to });
261
207
  await moveIssue(deps, tx, {
262
208
  issue,
263
209
  catalog,
264
210
  to,
265
211
  actor: SYSTEM_ACTOR,
266
212
  sourceActor: recorded,
267
- approved: true,
268
213
  event,
269
214
  write: async () => {
270
215
  const now = new Date().toISOString();
271
216
  await updateIssue(tx.conn, issue.id, {
272
217
  statusKey: to,
218
+ ...progress,
273
219
  updatedAt: now,
274
220
  lastActivityAt: now,
275
221
  });
@@ -314,8 +260,7 @@ export function createIssueService(deps) {
314
260
  releaseExecutor: (executor, cause) => deps.tx.run(async (tx) => {
315
261
  const released = [];
316
262
  for (const before of await issuesExecutedBy(tx.conn, executor)) {
317
- const catalog = await deps.statuses.forProject(tx.conn, before.projectId);
318
- if (isTerminal(catalog, before.statusKey))
263
+ if (isTerminal(deps.statuses.catalog(), before.statusKey))
319
264
  continue;
320
265
  const now = new Date().toISOString();
321
266
  await updateIssue(tx.conn, before.id, {
@@ -1 +1 @@
1
- {"version":3,"file":"issue.service.js","sourceRoot":"","sources":["../../../../server/domains/issues/issue.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"issue.service.js","sourceRoot":"","sources":["../../../../server/domains/issues/issue.service.ts"],"names":[],"mappings":"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"}