@nocobase/app-plugin-projects 0.1.0-beta.1 → 0.1.0-beta.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +276 -0
- package/README.md +78 -105
- package/dist/client/api/changed-issues.d.ts +12 -0
- package/dist/client/api/changed-issues.d.ts.map +1 -0
- package/dist/client/api/changed-issues.js +30 -0
- package/dist/client/api/changed-issues.js.map +1 -0
- package/dist/client/api/client.d.ts +8 -25
- package/dist/client/api/client.d.ts.map +1 -1
- package/dist/client/api/client.js +12 -51
- package/dist/client/api/client.js.map +1 -1
- package/dist/client/api/keys.d.ts +2 -8
- package/dist/client/api/keys.d.ts.map +1 -1
- package/dist/client/api/keys.js +2 -17
- package/dist/client/api/keys.js.map +1 -1
- package/dist/client/components/attachment-list.d.ts +77 -0
- package/dist/client/components/attachment-list.d.ts.map +1 -0
- package/dist/client/components/attachment-list.js +147 -0
- package/dist/client/components/attachment-list.js.map +1 -0
- package/dist/client/components/pm-badges.d.ts +1 -1
- package/dist/client/components/pm-badges.d.ts.map +1 -1
- package/dist/client/components/pm-description-image.d.ts +4 -0
- package/dist/client/components/pm-description-image.d.ts.map +1 -0
- package/dist/client/components/pm-description-image.js +61 -0
- package/dist/client/components/pm-description-image.js.map +1 -0
- package/dist/client/components/pm-executor-select.d.ts +2 -0
- package/dist/client/components/pm-executor-select.d.ts.map +1 -1
- package/dist/client/components/pm-executor-select.js.map +1 -1
- package/dist/client/components/pm-rich-text-editor.d.ts +4 -1
- package/dist/client/components/pm-rich-text-editor.d.ts.map +1 -1
- package/dist/client/components/pm-rich-text-editor.js +44 -4
- package/dist/client/components/pm-rich-text-editor.js.map +1 -1
- package/dist/client/components/pm-rich-text-extensions.d.ts +1 -0
- package/dist/client/components/pm-rich-text-extensions.d.ts.map +1 -1
- package/dist/client/components/pm-rich-text-extensions.js +2 -0
- package/dist/client/components/pm-rich-text-extensions.js.map +1 -1
- package/dist/client/components/ui/radio-group.d.ts +7 -0
- package/dist/client/components/ui/radio-group.d.ts.map +1 -0
- package/dist/client/components/ui/radio-group.js +12 -0
- package/dist/client/components/ui/radio-group.js.map +1 -0
- package/dist/client/config.d.ts +0 -2
- package/dist/client/config.d.ts.map +1 -1
- package/dist/client/config.js +1 -5
- package/dist/client/config.js.map +1 -1
- package/dist/client/hooks/use-attachment-uploads.d.ts +2 -2
- package/dist/client/hooks/use-attachment-uploads.d.ts.map +1 -1
- package/dist/client/hooks/use-attachment-uploads.js +28 -13
- package/dist/client/hooks/use-attachment-uploads.js.map +1 -1
- package/dist/client/issues.d.ts +3 -5
- package/dist/client/issues.d.ts.map +1 -1
- package/dist/client/issues.js +3 -4
- package/dist/client/issues.js.map +1 -1
- package/dist/client/kit/intake-draft.d.ts +21 -0
- package/dist/client/kit/intake-draft.d.ts.map +1 -0
- package/dist/client/kit/intake-draft.js +20 -0
- package/dist/client/kit/intake-draft.js.map +1 -0
- package/dist/client/kit/plans/lookup.d.ts +2 -2
- package/dist/client/kit/plans/lookup.js +3 -3
- package/dist/client/kit/plans/lookup.js.map +1 -1
- package/dist/client/kit/plans/plan-confirm.d.ts.map +1 -1
- package/dist/client/kit/plans/plan-confirm.js +2 -2
- package/dist/client/kit/plans/plan-confirm.js.map +1 -1
- package/dist/client/kit/plans/plan-row.js +2 -2
- package/dist/client/kit/plans/plan-row.js.map +1 -1
- package/dist/client/kit.d.ts +7 -9
- package/dist/client/kit.d.ts.map +1 -1
- package/dist/client/kit.js +7 -9
- package/dist/client/kit.js.map +1 -1
- package/dist/client/lib/intake-wait.d.ts +16 -0
- package/dist/client/lib/intake-wait.d.ts.map +1 -0
- package/dist/client/lib/intake-wait.js +12 -0
- package/dist/client/lib/intake-wait.js.map +1 -0
- package/dist/client/lib/kinds.d.ts +3 -29
- package/dist/client/lib/kinds.d.ts.map +1 -1
- package/dist/client/lib/kinds.js +7 -46
- package/dist/client/lib/kinds.js.map +1 -1
- package/dist/client/lib/status-events.d.ts +21 -0
- package/dist/client/lib/status-events.d.ts.map +1 -0
- package/dist/client/lib/status-events.js +31 -0
- package/dist/client/lib/status-events.js.map +1 -0
- package/dist/client/lib/status.d.ts +5 -7
- package/dist/client/lib/status.d.ts.map +1 -1
- package/dist/client/lib/status.js +5 -7
- package/dist/client/lib/status.js.map +1 -1
- package/dist/client/locales/en-US.d.ts +17 -252
- package/dist/client/locales/en-US.d.ts.map +1 -1
- package/dist/client/locales/en-US.js +21 -252
- package/dist/client/locales/en-US.js.map +1 -1
- package/dist/client/locales/plans.en-US.d.ts +1 -8
- package/dist/client/locales/plans.en-US.d.ts.map +1 -1
- package/dist/client/locales/plans.en-US.js +2 -9
- package/dist/client/locales/plans.en-US.js.map +1 -1
- package/dist/client/locales/plans.zh-CN.d.ts.map +1 -1
- package/dist/client/locales/plans.zh-CN.js +2 -9
- package/dist/client/locales/plans.zh-CN.js.map +1 -1
- package/dist/client/locales/zh-CN.d.ts.map +1 -1
- package/dist/client/locales/zh-CN.js +22 -245
- package/dist/client/locales/zh-CN.js.map +1 -1
- package/dist/client/pages/config/members/invitations-section.d.ts.map +1 -1
- package/dist/client/pages/config/members/invitations-section.js +34 -12
- package/dist/client/pages/config/members/invitations-section.js.map +1 -1
- package/dist/client/pages/config/members/invite-dialog.d.ts +5 -4
- package/dist/client/pages/config/members/invite-dialog.d.ts.map +1 -1
- package/dist/client/pages/config/members/invite-dialog.js +14 -9
- package/dist/client/pages/config/members/invite-dialog.js.map +1 -1
- package/dist/client/pages/intake/intake-ai-progress.d.ts.map +1 -1
- package/dist/client/pages/intake/intake-ai-progress.js +10 -13
- package/dist/client/pages/intake/intake-ai-progress.js.map +1 -1
- package/dist/client/pages/intake/intake-files.d.ts.map +1 -1
- package/dist/client/pages/intake/intake-files.js +38 -2
- package/dist/client/pages/intake/intake-files.js.map +1 -1
- package/dist/client/pages/intake/intake-panel.d.ts.map +1 -1
- package/dist/client/pages/intake/intake-panel.js +15 -5
- package/dist/client/pages/intake/intake-panel.js.map +1 -1
- package/dist/client/pages/intake/use-intake-uploads.d.ts.map +1 -1
- package/dist/client/pages/intake/use-intake-uploads.js +9 -3
- package/dist/client/pages/intake/use-intake-uploads.js.map +1 -1
- package/dist/client/pages/issues/board/board-model.d.ts +1 -1
- package/dist/client/pages/issues/board/board-model.js +1 -1
- package/dist/client/pages/issues/board/use-board-move.d.ts +2 -8
- package/dist/client/pages/issues/board/use-board-move.d.ts.map +1 -1
- package/dist/client/pages/issues/board/use-board-move.js +5 -42
- package/dist/client/pages/issues/board/use-board-move.js.map +1 -1
- package/dist/client/pages/issues/detail/new-subtask.d.ts.map +1 -1
- package/dist/client/pages/issues/detail/new-subtask.js +6 -28
- package/dist/client/pages/issues/detail/new-subtask.js.map +1 -1
- package/dist/client/pages/issues/detail/subtask-model.d.ts +1 -1
- package/dist/client/pages/issues/detail/subtask-model.js +1 -1
- package/dist/client/pages/issues/detail/use-confirmed-update.d.ts +6 -8
- package/dist/client/pages/issues/detail/use-confirmed-update.d.ts.map +1 -1
- package/dist/client/pages/issues/detail/use-confirmed-update.js +9 -42
- package/dist/client/pages/issues/detail/use-confirmed-update.js.map +1 -1
- package/dist/client/pages/issues/detail/use-issue-page.d.ts +0 -4
- package/dist/client/pages/issues/detail/use-issue-page.d.ts.map +1 -1
- package/dist/client/pages/issues/detail/use-issue-page.js +0 -14
- package/dist/client/pages/issues/detail/use-issue-page.js.map +1 -1
- package/dist/client/pages/issues/detail/use-issue-update.d.ts +2 -2
- package/dist/client/pages/issues/detail/use-issue-update.d.ts.map +1 -1
- package/dist/client/pages/issues/detail/use-issue-update.js +8 -8
- package/dist/client/pages/issues/detail/use-issue-update.js.map +1 -1
- package/dist/client/pages/issues/filters.d.ts +1 -1
- package/dist/client/pages/issues/filters.d.ts.map +1 -1
- package/dist/client/pages/issues/filters.js +2 -0
- package/dist/client/pages/issues/filters.js.map +1 -1
- package/dist/client/pages/issues/new-issue-button.d.ts.map +1 -1
- package/dist/client/pages/issues/new-issue-button.js +1 -1
- package/dist/client/pages/issues/new-issue-button.js.map +1 -1
- package/dist/client/pages/issues/new-issue-form.d.ts +13 -8
- package/dist/client/pages/issues/new-issue-form.d.ts.map +1 -1
- package/dist/client/pages/issues/new-issue-form.js +87 -83
- package/dist/client/pages/issues/new-issue-form.js.map +1 -1
- package/dist/client/pages/issues/new.d.ts.map +1 -1
- package/dist/client/pages/issues/new.js +3 -1
- package/dist/client/pages/issues/new.js.map +1 -1
- package/dist/client/pages/issues/use-executor-options.d.ts +3 -2
- package/dist/client/pages/issues/use-executor-options.d.ts.map +1 -1
- package/dist/client/pages/issues/use-executor-options.js +5 -23
- package/dist/client/pages/issues/use-executor-options.js.map +1 -1
- package/dist/client/pages/my-issues/my-issues-model.d.ts +2 -5
- package/dist/client/pages/my-issues/my-issues-model.d.ts.map +1 -1
- package/dist/client/pages/my-issues/my-issues-model.js +6 -7
- package/dist/client/pages/my-issues/my-issues-model.js.map +1 -1
- package/dist/client/pages/projects/detail/use-project-page.d.ts +4 -26
- package/dist/client/pages/projects/detail/use-project-page.d.ts.map +1 -1
- package/dist/client/pages/projects/detail/use-project-page.js +7 -53
- package/dist/client/pages/projects/detail/use-project-page.js.map +1 -1
- package/dist/client/pages/projects/new.d.ts +1 -1
- package/dist/client/pages/projects/new.d.ts.map +1 -1
- package/dist/client/pages/projects/new.js +3 -7
- package/dist/client/pages/projects/new.js.map +1 -1
- package/dist/client/plugin.d.ts +3 -0
- package/dist/client/plugin.d.ts.map +1 -1
- package/dist/client/plugin.js +8 -1
- package/dist/client/plugin.js.map +1 -1
- package/dist/client/projects.d.ts +2 -2
- package/dist/client/projects.d.ts.map +1 -1
- package/dist/client/projects.js +2 -2
- package/dist/client/projects.js.map +1 -1
- package/dist/client/providers/query-provider.d.ts.map +1 -1
- package/dist/client/providers/query-provider.js +15 -11
- package/dist/client/providers/query-provider.js.map +1 -1
- package/dist/database/migrations/.manifest.json +16 -0
- package/dist/database/migrations/202610110001_pm_issue_graph_revision.d.ts +4 -0
- package/dist/database/migrations/202610110001_pm_issue_graph_revision.d.ts.map +1 -0
- package/dist/database/migrations/202610110001_pm_issue_graph_revision.js +20 -0
- package/dist/database/migrations/202610110001_pm_issue_graph_revision.js.map +1 -0
- package/dist/database/migrations/202610240010_pm_fixed_statuses.d.ts +4 -0
- package/dist/database/migrations/202610240010_pm_fixed_statuses.d.ts.map +1 -0
- package/dist/database/migrations/202610240010_pm_fixed_statuses.js +189 -0
- package/dist/database/migrations/202610240010_pm_fixed_statuses.js.map +1 -0
- package/dist/database/migrations/202610240011_pm_issue_progress.d.ts +4 -0
- package/dist/database/migrations/202610240011_pm_issue_progress.d.ts.map +1 -0
- package/dist/database/migrations/202610240011_pm_issue_progress.js +19 -0
- package/dist/database/migrations/202610240011_pm_issue_progress.js.map +1 -0
- package/dist/database/migrations/202610240012_pm_issue_acceptance.d.ts +4 -0
- package/dist/database/migrations/202610240012_pm_issue_acceptance.d.ts.map +1 -0
- package/dist/database/migrations/202610240012_pm_issue_acceptance.js +17 -0
- package/dist/database/migrations/202610240012_pm_issue_acceptance.js.map +1 -0
- package/dist/server/access/viewer.d.ts +3 -0
- package/dist/server/access/viewer.d.ts.map +1 -1
- package/dist/server/access/viewer.js.map +1 -1
- package/dist/server/composition.d.ts +11 -17
- package/dist/server/composition.d.ts.map +1 -1
- package/dist/server/composition.js +15 -58
- package/dist/server/composition.js.map +1 -1
- package/dist/server/domains/attachments/attachment.routes.d.ts.map +1 -1
- package/dist/server/domains/attachments/attachment.routes.js +13 -1
- package/dist/server/domains/attachments/attachment.routes.js.map +1 -1
- package/dist/server/domains/attachments/attachment.service.d.ts +3 -1
- package/dist/server/domains/attachments/attachment.service.d.ts.map +1 -1
- package/dist/server/domains/attachments/attachment.service.js +36 -2
- package/dist/server/domains/attachments/attachment.service.js.map +1 -1
- package/dist/server/domains/attachments/attachment.store.d.ts +5 -0
- package/dist/server/domains/attachments/attachment.store.d.ts.map +1 -1
- package/dist/server/domains/attachments/attachment.store.js +27 -0
- package/dist/server/domains/attachments/attachment.store.js.map +1 -1
- package/dist/server/domains/comments/comment.queries.d.ts +42 -8
- package/dist/server/domains/comments/comment.queries.d.ts.map +1 -1
- package/dist/server/domains/comments/comment.queries.js +69 -8
- package/dist/server/domains/comments/comment.queries.js.map +1 -1
- package/dist/server/domains/comments/comment.routes.d.ts +1 -1
- package/dist/server/domains/comments/comment.routes.js +4 -4
- package/dist/server/domains/comments/comment.routes.js.map +1 -1
- package/dist/server/domains/comments/comment.service.d.ts +2 -2
- package/dist/server/domains/comments/comment.service.d.ts.map +1 -1
- package/dist/server/domains/comments/comment.service.js +18 -10
- package/dist/server/domains/comments/comment.service.js.map +1 -1
- package/dist/server/domains/comments/comment.store.d.ts +22 -1
- package/dist/server/domains/comments/comment.store.d.ts.map +1 -1
- package/dist/server/domains/comments/comment.store.js +65 -2
- package/dist/server/domains/comments/comment.store.js.map +1 -1
- package/dist/server/domains/comments/index.d.ts +1 -1
- package/dist/server/domains/comments/index.d.ts.map +1 -1
- package/dist/server/domains/comments/index.js.map +1 -1
- package/dist/server/domains/comments/ports.d.ts +7 -2
- package/dist/server/domains/comments/ports.d.ts.map +1 -1
- package/dist/server/domains/invitations/invitation.routes.d.ts +2 -1
- package/dist/server/domains/invitations/invitation.routes.d.ts.map +1 -1
- package/dist/server/domains/invitations/invitation.routes.js +27 -10
- package/dist/server/domains/invitations/invitation.routes.js.map +1 -1
- package/dist/server/domains/invitations/invitation.service.d.ts +1 -1
- package/dist/server/domains/invitations/invitation.service.d.ts.map +1 -1
- package/dist/server/domains/invitations/invitation.service.js +19 -3
- package/dist/server/domains/invitations/invitation.service.js.map +1 -1
- package/dist/server/domains/issues/index.d.ts +3 -3
- package/dist/server/domains/issues/index.d.ts.map +1 -1
- package/dist/server/domains/issues/index.js +2 -2
- package/dist/server/domains/issues/index.js.map +1 -1
- package/dist/server/domains/issues/issue.context.d.ts +6 -22
- package/dist/server/domains/issues/issue.context.d.ts.map +1 -1
- package/dist/server/domains/issues/issue.context.js +88 -105
- package/dist/server/domains/issues/issue.context.js.map +1 -1
- package/dist/server/domains/issues/issue.events.d.ts +5 -1
- package/dist/server/domains/issues/issue.events.d.ts.map +1 -1
- package/dist/server/domains/issues/issue.fields.d.ts +5 -3
- package/dist/server/domains/issues/issue.fields.d.ts.map +1 -1
- package/dist/server/domains/issues/issue.fields.js +50 -16
- package/dist/server/domains/issues/issue.fields.js.map +1 -1
- package/dist/server/domains/issues/issue.projects.d.ts +2 -2
- package/dist/server/domains/issues/issue.projects.d.ts.map +1 -1
- package/dist/server/domains/issues/issue.projects.js +1 -2
- package/dist/server/domains/issues/issue.projects.js.map +1 -1
- package/dist/server/domains/issues/issue.queries.d.ts +26 -7
- package/dist/server/domains/issues/issue.queries.d.ts.map +1 -1
- package/dist/server/domains/issues/issue.queries.js +137 -58
- package/dist/server/domains/issues/issue.queries.js.map +1 -1
- package/dist/server/domains/issues/issue.routes.d.ts +3 -1
- package/dist/server/domains/issues/issue.routes.d.ts.map +1 -1
- package/dist/server/domains/issues/issue.routes.js +74 -46
- package/dist/server/domains/issues/issue.routes.js.map +1 -1
- package/dist/server/domains/issues/issue.service.d.ts +22 -44
- package/dist/server/domains/issues/issue.service.d.ts.map +1 -1
- package/dist/server/domains/issues/issue.service.js +68 -82
- package/dist/server/domains/issues/issue.service.js.map +1 -1
- package/dist/server/domains/issues/issue.status.d.ts +7 -10
- package/dist/server/domains/issues/issue.status.d.ts.map +1 -1
- package/dist/server/domains/issues/issue.status.js +6 -22
- package/dist/server/domains/issues/issue.status.js.map +1 -1
- package/dist/server/domains/issues/issue.store.d.ts +11 -0
- package/dist/server/domains/issues/issue.store.d.ts.map +1 -1
- package/dist/server/domains/issues/issue.store.js +37 -0
- package/dist/server/domains/issues/issue.store.js.map +1 -1
- package/dist/server/domains/issues/ports.d.ts +35 -36
- package/dist/server/domains/issues/ports.d.ts.map +1 -1
- package/dist/server/domains/issues/ports.js +1 -5
- package/dist/server/domains/issues/ports.js.map +1 -1
- package/dist/server/domains/notices/notice.planner.d.ts +2 -1
- package/dist/server/domains/notices/notice.planner.d.ts.map +1 -1
- package/dist/server/domains/notices/notice.planner.js +2 -1
- package/dist/server/domains/notices/notice.planner.js.map +1 -1
- package/dist/server/domains/notices/notice.rules.d.ts +1 -4
- package/dist/server/domains/notices/notice.rules.d.ts.map +1 -1
- package/dist/server/domains/notices/notice.rules.js +4 -5
- package/dist/server/domains/notices/notice.rules.js.map +1 -1
- package/dist/server/domains/plans/intake/intake.service.d.ts +2 -0
- package/dist/server/domains/plans/intake/intake.service.d.ts.map +1 -1
- package/dist/server/domains/plans/intake/intake.service.js +14 -0
- package/dist/server/domains/plans/intake/intake.service.js.map +1 -1
- package/dist/server/domains/plans/intake/intake.text.d.ts +5 -6
- package/dist/server/domains/plans/intake/intake.text.d.ts.map +1 -1
- package/dist/server/domains/plans/intake/intake.text.js +5 -6
- package/dist/server/domains/plans/intake/intake.text.js.map +1 -1
- package/dist/server/domains/plans/plan.engine.d.ts.map +1 -1
- package/dist/server/domains/plans/plan.engine.js +6 -0
- package/dist/server/domains/plans/plan.engine.js.map +1 -1
- package/dist/server/domains/plans/plan.ops.d.ts +3 -3
- package/dist/server/domains/plans/plan.ops.d.ts.map +1 -1
- package/dist/server/domains/plans/plan.ops.js +23 -13
- package/dist/server/domains/plans/plan.ops.js.map +1 -1
- package/dist/server/domains/plans/plan.schemas.d.ts.map +1 -1
- package/dist/server/domains/plans/plan.schemas.js +26 -10
- package/dist/server/domains/plans/plan.schemas.js.map +1 -1
- package/dist/server/domains/projects/index.d.ts +1 -1
- package/dist/server/domains/projects/index.d.ts.map +1 -1
- package/dist/server/domains/projects/index.js.map +1 -1
- package/dist/server/domains/projects/project-resources.d.ts +5 -0
- package/dist/server/domains/projects/project-resources.d.ts.map +1 -1
- package/dist/server/domains/projects/project-resources.js +43 -1
- package/dist/server/domains/projects/project-resources.js.map +1 -1
- package/dist/server/domains/projects/project.events.d.ts +10 -0
- package/dist/server/domains/projects/project.events.d.ts.map +1 -0
- package/dist/server/domains/projects/project.events.js +2 -0
- package/dist/server/domains/projects/project.events.js.map +1 -0
- package/dist/server/domains/projects/project.routes.d.ts.map +1 -1
- package/dist/server/domains/projects/project.routes.js +1 -3
- package/dist/server/domains/projects/project.routes.js.map +1 -1
- package/dist/server/domains/projects/project.service.d.ts +1 -7
- package/dist/server/domains/projects/project.service.d.ts.map +1 -1
- package/dist/server/domains/projects/project.service.js +2 -17
- package/dist/server/domains/projects/project.service.js.map +1 -1
- package/dist/server/domains/projects/project.store.d.ts +0 -1
- package/dist/server/domains/projects/project.store.d.ts.map +1 -1
- package/dist/server/domains/projects/project.store.js +0 -1
- package/dist/server/domains/projects/project.store.js.map +1 -1
- package/dist/server/domains/reports/report.service.d.ts +1 -12
- package/dist/server/domains/reports/report.service.d.ts.map +1 -1
- package/dist/server/domains/reports/report.service.js +92 -136
- package/dist/server/domains/reports/report.service.js.map +1 -1
- package/dist/server/domains/settings/settings.store.d.ts +4 -4
- package/dist/server/domains/settings/settings.store.js +2 -2
- package/dist/server/domains/statuses/event-types.d.ts +16 -0
- package/dist/server/domains/statuses/event-types.d.ts.map +1 -0
- package/dist/server/domains/statuses/event-types.js +31 -0
- package/dist/server/domains/statuses/event-types.js.map +1 -0
- package/dist/server/domains/statuses/index.d.ts +4 -0
- package/dist/server/domains/statuses/index.d.ts.map +1 -0
- package/dist/server/domains/statuses/index.js +4 -0
- package/dist/server/domains/statuses/index.js.map +1 -0
- package/dist/server/domains/statuses/status.catalog.d.ts +15 -0
- package/dist/server/domains/statuses/status.catalog.d.ts.map +1 -0
- package/dist/server/domains/statuses/status.catalog.js +119 -0
- package/dist/server/domains/statuses/status.catalog.js.map +1 -0
- package/dist/server/domains/statuses/status.events.d.ts +15 -0
- package/dist/server/domains/statuses/status.events.d.ts.map +1 -0
- package/dist/server/domains/statuses/status.events.js +2 -0
- package/dist/server/domains/statuses/status.events.js.map +1 -0
- package/dist/server/domains/statuses/status.fire.d.ts +48 -0
- package/dist/server/domains/statuses/status.fire.d.ts.map +1 -0
- package/dist/server/domains/statuses/status.fire.js +38 -0
- package/dist/server/domains/statuses/status.fire.js.map +1 -0
- package/dist/server/domains/subscriptions/subscription.routes.d.ts.map +1 -1
- package/dist/server/domains/subscriptions/subscription.routes.js +4 -2
- package/dist/server/domains/subscriptions/subscription.routes.js.map +1 -1
- package/dist/server/domains/subtasks/index.d.ts +1 -0
- package/dist/server/domains/subtasks/index.d.ts.map +1 -1
- package/dist/server/domains/subtasks/index.js +1 -0
- package/dist/server/domains/subtasks/index.js.map +1 -1
- package/dist/server/domains/subtasks/subtask.blocking.d.ts +10 -5
- package/dist/server/domains/subtasks/subtask.blocking.d.ts.map +1 -1
- package/dist/server/domains/subtasks/subtask.blocking.js +35 -15
- package/dist/server/domains/subtasks/subtask.blocking.js.map +1 -1
- package/dist/server/domains/subtasks/subtask.guard.d.ts +12 -0
- package/dist/server/domains/subtasks/subtask.guard.d.ts.map +1 -0
- package/dist/server/domains/subtasks/subtask.guard.js +23 -0
- package/dist/server/domains/subtasks/subtask.guard.js.map +1 -0
- package/dist/server/domains/subtasks/subtask.release.d.ts +7 -11
- package/dist/server/domains/subtasks/subtask.release.d.ts.map +1 -1
- package/dist/server/domains/subtasks/subtask.release.js +9 -7
- package/dist/server/domains/subtasks/subtask.release.js.map +1 -1
- package/dist/server/domains/subtasks/subtask.routes.d.ts +1 -0
- package/dist/server/domains/subtasks/subtask.routes.d.ts.map +1 -1
- package/dist/server/domains/subtasks/subtask.routes.js +31 -3
- package/dist/server/domains/subtasks/subtask.routes.js.map +1 -1
- package/dist/server/domains/subtasks/subtask.service.d.ts +5 -5
- package/dist/server/domains/subtasks/subtask.service.d.ts.map +1 -1
- package/dist/server/domains/subtasks/subtask.service.js +98 -20
- package/dist/server/domains/subtasks/subtask.service.js.map +1 -1
- package/dist/server/domains/subtasks/subtask.store.d.ts +7 -0
- package/dist/server/domains/subtasks/subtask.store.d.ts.map +1 -1
- package/dist/server/domains/subtasks/subtask.store.js +34 -0
- package/dist/server/domains/subtasks/subtask.store.js.map +1 -1
- package/dist/server/index.d.ts +1 -0
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +1 -0
- package/dist/server/index.js.map +1 -1
- package/dist/server/kernel/activity.d.ts +5 -2
- package/dist/server/kernel/activity.d.ts.map +1 -1
- package/dist/server/kernel/activity.js +28 -1
- package/dist/server/kernel/activity.js.map +1 -1
- package/dist/server/kernel/actor.d.ts +2 -0
- package/dist/server/kernel/actor.d.ts.map +1 -1
- package/dist/server/kernel/actor.js.map +1 -1
- package/dist/server/kernel/http.d.ts.map +1 -1
- package/dist/server/kernel/http.js +2 -3
- package/dist/server/kernel/http.js.map +1 -1
- package/dist/server/kernel/kinds.d.ts +24 -6
- package/dist/server/kernel/kinds.d.ts.map +1 -1
- package/dist/server/kernel/kinds.js +21 -1
- package/dist/server/kernel/kinds.js.map +1 -1
- package/dist/server/kernel/transaction-read.d.ts +4 -0
- package/dist/server/kernel/transaction-read.d.ts.map +1 -0
- package/dist/server/kernel/transaction-read.js +30 -0
- package/dist/server/kernel/transaction-read.js.map +1 -0
- package/dist/server/kernel/work.d.ts +16 -6
- package/dist/server/kernel/work.d.ts.map +1 -1
- package/dist/server/kernel/work.js +33 -14
- package/dist/server/kernel/work.js.map +1 -1
- package/dist/server/lifecycle/move.d.ts +1 -0
- package/dist/server/lifecycle/move.d.ts.map +1 -1
- package/dist/server/lifecycle/move.js +2 -0
- package/dist/server/lifecycle/move.js.map +1 -1
- package/dist/server/lifecycle/registry.d.ts +5 -0
- package/dist/server/lifecycle/registry.d.ts.map +1 -1
- package/dist/server/lifecycle/registry.js.map +1 -1
- package/dist/server/locales/en-US.d.ts +0 -9
- package/dist/server/locales/en-US.d.ts.map +1 -1
- package/dist/server/locales/en-US.js +0 -9
- package/dist/server/locales/en-US.js.map +1 -1
- package/dist/server/locales/zh-CN.d.ts.map +1 -1
- package/dist/server/locales/zh-CN.js +2 -11
- package/dist/server/locales/zh-CN.js.map +1 -1
- package/dist/server/providers/change-announcer.d.ts +28 -0
- package/dist/server/providers/change-announcer.d.ts.map +1 -0
- package/dist/server/providers/change-announcer.js +75 -0
- package/dist/server/providers/change-announcer.js.map +1 -0
- package/dist/server/providers/notifications.d.ts +1 -0
- package/dist/server/providers/notifications.d.ts.map +1 -1
- package/dist/server/providers/notifications.js +6 -120
- package/dist/server/providers/notifications.js.map +1 -1
- package/dist/server/providers/projects.d.ts +3 -8
- package/dist/server/providers/projects.d.ts.map +1 -1
- package/dist/server/providers/projects.js +14 -37
- package/dist/server/providers/projects.js.map +1 -1
- package/dist/server/routes/api.d.ts.map +1 -1
- package/dist/server/routes/api.js +5 -8
- package/dist/server/routes/api.js.map +1 -1
- package/dist/server/routes/schemas.d.ts +20 -29
- package/dist/server/routes/schemas.d.ts.map +1 -1
- package/dist/server/routes/schemas.js +405 -289
- package/dist/server/routes/schemas.js.map +1 -1
- package/dist/server/tokens.d.ts +22 -35
- package/dist/server/tokens.d.ts.map +1 -1
- package/dist/server/tokens.js +5 -16
- package/dist/server/tokens.js.map +1 -1
- package/dist/shared/access.d.ts +0 -1
- package/dist/shared/access.d.ts.map +1 -1
- package/dist/shared/access.js +2 -11
- package/dist/shared/access.js.map +1 -1
- package/dist/shared/attachments.d.ts +29 -0
- package/dist/shared/attachments.d.ts.map +1 -1
- package/dist/shared/attachments.js +7 -0
- package/dist/shared/attachments.js.map +1 -1
- package/dist/shared/comments.d.ts +3 -0
- package/dist/shared/comments.d.ts.map +1 -1
- package/dist/shared/comments.js.map +1 -1
- package/dist/shared/intake-ai.d.ts +3 -1
- package/dist/shared/intake-ai.d.ts.map +1 -1
- package/dist/shared/intake-ai.js.map +1 -1
- package/dist/shared/invitations.d.ts +1 -1
- package/dist/shared/invitations.d.ts.map +1 -1
- package/dist/shared/issues.d.ts +32 -36
- package/dist/shared/issues.d.ts.map +1 -1
- package/dist/shared/issues.js +5 -0
- package/dist/shared/issues.js.map +1 -1
- package/dist/shared/kinds.d.ts +3 -1
- package/dist/shared/kinds.d.ts.map +1 -1
- package/dist/shared/kinds.js +1 -1
- package/dist/shared/locales/access.en-US.d.ts +0 -1
- package/dist/shared/locales/access.en-US.d.ts.map +1 -1
- package/dist/shared/locales/access.en-US.js +1 -2
- package/dist/shared/locales/access.en-US.js.map +1 -1
- package/dist/shared/locales/access.zh-CN.d.ts.map +1 -1
- package/dist/shared/locales/access.zh-CN.js +1 -2
- package/dist/shared/locales/access.zh-CN.js.map +1 -1
- package/dist/shared/plans.d.ts +28 -10
- package/dist/shared/plans.d.ts.map +1 -1
- package/dist/shared/plans.js +2 -1
- package/dist/shared/plans.js.map +1 -1
- package/dist/shared/projects.d.ts +0 -4
- package/dist/shared/projects.d.ts.map +1 -1
- package/dist/shared/projects.js.map +1 -1
- package/dist/shared/realtime.d.ts +10 -3
- package/dist/shared/realtime.d.ts.map +1 -1
- package/dist/shared/realtime.js +3 -2
- package/dist/shared/realtime.js.map +1 -1
- package/dist/shared/statuses.d.ts +42 -0
- package/dist/shared/statuses.d.ts.map +1 -0
- package/dist/shared/statuses.js +73 -0
- package/dist/shared/statuses.js.map +1 -0
- package/dist/shared/subtasks.d.ts +8 -3
- package/dist/shared/subtasks.d.ts.map +1 -1
- package/package.json +21 -29
- package/skills/nocobase-app-plugin-projects/SKILL.md +34 -57
- package/dist/client/lib/built-in-rule-editors.d.ts +0 -13
- package/dist/client/lib/built-in-rule-editors.d.ts.map +0 -1
- package/dist/client/lib/built-in-rule-editors.js +0 -86
- package/dist/client/lib/built-in-rule-editors.js.map +0 -1
- package/dist/client/lib/built-in-rule-types.d.ts +0 -3
- package/dist/client/lib/built-in-rule-types.d.ts.map +0 -1
- package/dist/client/lib/built-in-rule-types.js +0 -63
- package/dist/client/lib/built-in-rule-types.js.map +0 -1
- package/dist/client/lib/status-rule-types.d.ts +0 -60
- package/dist/client/lib/status-rule-types.d.ts.map +0 -1
- package/dist/client/lib/status-rule-types.js +0 -38
- package/dist/client/lib/status-rule-types.js.map +0 -1
- package/dist/client/lib/workflow-events.d.ts +0 -25
- package/dist/client/lib/workflow-events.d.ts.map +0 -1
- package/dist/client/lib/workflow-events.js +0 -30
- package/dist/client/lib/workflow-events.js.map +0 -1
- package/dist/client/pages/config/workflow-detail.d.ts +0 -10
- package/dist/client/pages/config/workflow-detail.d.ts.map +0 -1
- package/dist/client/pages/config/workflow-detail.js +0 -182
- package/dist/client/pages/config/workflow-detail.js.map +0 -1
- package/dist/client/pages/config/workflows/flow-editor.d.ts +0 -15
- package/dist/client/pages/config/workflows/flow-editor.d.ts.map +0 -1
- package/dist/client/pages/config/workflows/flow-editor.js +0 -76
- package/dist/client/pages/config/workflows/flow-editor.js.map +0 -1
- package/dist/client/pages/config/workflows/status-rules.d.ts +0 -21
- package/dist/client/pages/config/workflows/status-rules.d.ts.map +0 -1
- package/dist/client/pages/config/workflows/status-rules.js +0 -203
- package/dist/client/pages/config/workflows/status-rules.js.map +0 -1
- package/dist/client/pages/config/workflows/transitions-matrix.d.ts +0 -20
- package/dist/client/pages/config/workflows/transitions-matrix.d.ts.map +0 -1
- package/dist/client/pages/config/workflows/transitions-matrix.js +0 -114
- package/dist/client/pages/config/workflows/transitions-matrix.js.map +0 -1
- package/dist/client/pages/config/workflows/use-status-name.d.ts +0 -4
- package/dist/client/pages/config/workflows/use-status-name.d.ts.map +0 -1
- package/dist/client/pages/config/workflows/use-status-name.js +0 -17
- package/dist/client/pages/config/workflows/use-status-name.js.map +0 -1
- package/dist/client/pages/config/workflows/workflow-diagram.d.ts +0 -17
- package/dist/client/pages/config/workflows/workflow-diagram.d.ts.map +0 -1
- package/dist/client/pages/config/workflows/workflow-diagram.js +0 -298
- package/dist/client/pages/config/workflows/workflow-diagram.js.map +0 -1
- package/dist/client/pages/config/workflows/workflow-model.d.ts +0 -157
- package/dist/client/pages/config/workflows/workflow-model.d.ts.map +0 -1
- package/dist/client/pages/config/workflows/workflow-model.js +0 -403
- package/dist/client/pages/config/workflows/workflow-model.js.map +0 -1
- package/dist/client/pages/config/workflows/workflow-views.d.ts +0 -31
- package/dist/client/pages/config/workflows/workflow-views.d.ts.map +0 -1
- package/dist/client/pages/config/workflows/workflow-views.js +0 -76
- package/dist/client/pages/config/workflows/workflow-views.js.map +0 -1
- package/dist/client/pages/config/workflows.d.ts +0 -8
- package/dist/client/pages/config/workflows.d.ts.map +0 -1
- package/dist/client/pages/config/workflows.js +0 -139
- package/dist/client/pages/config/workflows.js.map +0 -1
- package/dist/client/pages/issues/detail/start-dialog.d.ts +0 -20
- package/dist/client/pages/issues/detail/start-dialog.d.ts.map +0 -1
- package/dist/client/pages/issues/detail/start-dialog.js +0 -31
- package/dist/client/pages/issues/detail/start-dialog.js.map +0 -1
- package/dist/client/pages/projects/workflow-select.d.ts +0 -14
- package/dist/client/pages/projects/workflow-select.d.ts.map +0 -1
- package/dist/client/pages/projects/workflow-select.js +0 -34
- package/dist/client/pages/projects/workflow-select.js.map +0 -1
- package/dist/server/domains/approvals/approval.events.d.ts +0 -47
- package/dist/server/domains/approvals/approval.events.d.ts.map +0 -1
- package/dist/server/domains/approvals/approval.events.js +0 -2
- package/dist/server/domains/approvals/approval.events.js.map +0 -1
- package/dist/server/domains/approvals/approval.lifecycle.d.ts +0 -8
- package/dist/server/domains/approvals/approval.lifecycle.d.ts.map +0 -1
- package/dist/server/domains/approvals/approval.lifecycle.js +0 -54
- package/dist/server/domains/approvals/approval.lifecycle.js.map +0 -1
- package/dist/server/domains/approvals/approval.routes.d.ts +0 -10
- package/dist/server/domains/approvals/approval.routes.d.ts.map +0 -1
- package/dist/server/domains/approvals/approval.routes.js +0 -86
- package/dist/server/domains/approvals/approval.routes.js.map +0 -1
- package/dist/server/domains/approvals/approval.service.d.ts +0 -72
- package/dist/server/domains/approvals/approval.service.d.ts.map +0 -1
- package/dist/server/domains/approvals/approval.service.js +0 -261
- package/dist/server/domains/approvals/approval.service.js.map +0 -1
- package/dist/server/domains/approvals/approval.store.d.ts +0 -42
- package/dist/server/domains/approvals/approval.store.d.ts.map +0 -1
- package/dist/server/domains/approvals/approval.store.js +0 -66
- package/dist/server/domains/approvals/approval.store.js.map +0 -1
- package/dist/server/domains/approvals/index.d.ts +0 -4
- package/dist/server/domains/approvals/index.d.ts.map +0 -1
- package/dist/server/domains/approvals/index.js +0 -3
- package/dist/server/domains/approvals/index.js.map +0 -1
- package/dist/server/domains/checklists/checklist.routes.d.ts +0 -9
- package/dist/server/domains/checklists/checklist.routes.d.ts.map +0 -1
- package/dist/server/domains/checklists/checklist.routes.js +0 -62
- package/dist/server/domains/checklists/checklist.routes.js.map +0 -1
- package/dist/server/domains/checklists/checklist.service.d.ts +0 -26
- package/dist/server/domains/checklists/checklist.service.d.ts.map +0 -1
- package/dist/server/domains/checklists/checklist.service.js +0 -80
- package/dist/server/domains/checklists/checklist.service.js.map +0 -1
- package/dist/server/domains/checklists/checklist.store.d.ts +0 -32
- package/dist/server/domains/checklists/checklist.store.d.ts.map +0 -1
- package/dist/server/domains/checklists/checklist.store.js +0 -66
- package/dist/server/domains/checklists/checklist.store.js.map +0 -1
- package/dist/server/domains/checklists/index.d.ts +0 -4
- package/dist/server/domains/checklists/index.d.ts.map +0 -1
- package/dist/server/domains/checklists/index.js +0 -4
- package/dist/server/domains/checklists/index.js.map +0 -1
- package/dist/server/domains/workflows/built-in-rule-types.d.ts +0 -40
- package/dist/server/domains/workflows/built-in-rule-types.d.ts.map +0 -1
- package/dist/server/domains/workflows/built-in-rule-types.js +0 -260
- package/dist/server/domains/workflows/built-in-rule-types.js.map +0 -1
- package/dist/server/domains/workflows/event-types.d.ts +0 -21
- package/dist/server/domains/workflows/event-types.d.ts.map +0 -1
- package/dist/server/domains/workflows/event-types.js +0 -31
- package/dist/server/domains/workflows/event-types.js.map +0 -1
- package/dist/server/domains/workflows/index.d.ts +0 -10
- package/dist/server/domains/workflows/index.d.ts.map +0 -1
- package/dist/server/domains/workflows/index.js +0 -10
- package/dist/server/domains/workflows/index.js.map +0 -1
- package/dist/server/domains/workflows/rule-types.d.ts +0 -125
- package/dist/server/domains/workflows/rule-types.d.ts.map +0 -1
- package/dist/server/domains/workflows/rule-types.js +0 -33
- package/dist/server/domains/workflows/rule-types.js.map +0 -1
- package/dist/server/domains/workflows/templates.d.ts +0 -62
- package/dist/server/domains/workflows/templates.d.ts.map +0 -1
- package/dist/server/domains/workflows/templates.js +0 -63
- package/dist/server/domains/workflows/templates.js.map +0 -1
- package/dist/server/domains/workflows/workflow.diff.d.ts +0 -14
- package/dist/server/domains/workflows/workflow.diff.d.ts.map +0 -1
- package/dist/server/domains/workflows/workflow.diff.js +0 -80
- package/dist/server/domains/workflows/workflow.diff.js.map +0 -1
- package/dist/server/domains/workflows/workflow.events.d.ts +0 -26
- package/dist/server/domains/workflows/workflow.events.d.ts.map +0 -1
- package/dist/server/domains/workflows/workflow.events.js +0 -2
- package/dist/server/domains/workflows/workflow.events.js.map +0 -1
- package/dist/server/domains/workflows/workflow.fire.d.ts +0 -38
- package/dist/server/domains/workflows/workflow.fire.d.ts.map +0 -1
- package/dist/server/domains/workflows/workflow.fire.js +0 -57
- package/dist/server/domains/workflows/workflow.fire.js.map +0 -1
- package/dist/server/domains/workflows/workflow.registry.d.ts +0 -27
- package/dist/server/domains/workflows/workflow.registry.d.ts.map +0 -1
- package/dist/server/domains/workflows/workflow.registry.js +0 -130
- package/dist/server/domains/workflows/workflow.registry.js.map +0 -1
- package/dist/server/domains/workflows/workflow.routes.d.ts +0 -6
- package/dist/server/domains/workflows/workflow.routes.d.ts.map +0 -1
- package/dist/server/domains/workflows/workflow.routes.js +0 -148
- package/dist/server/domains/workflows/workflow.routes.js.map +0 -1
- package/dist/server/domains/workflows/workflow.rules.d.ts +0 -14
- package/dist/server/domains/workflows/workflow.rules.d.ts.map +0 -1
- package/dist/server/domains/workflows/workflow.rules.js +0 -190
- package/dist/server/domains/workflows/workflow.rules.js.map +0 -1
- package/dist/server/domains/workflows/workflow.service.d.ts +0 -71
- package/dist/server/domains/workflows/workflow.service.d.ts.map +0 -1
- package/dist/server/domains/workflows/workflow.service.js +0 -365
- package/dist/server/domains/workflows/workflow.service.js.map +0 -1
- package/dist/server/domains/workflows/workflow.store.d.ts +0 -33
- package/dist/server/domains/workflows/workflow.store.d.ts.map +0 -1
- package/dist/server/domains/workflows/workflow.store.js +0 -148
- package/dist/server/domains/workflows/workflow.store.js.map +0 -1
- package/dist/shared/approvals.d.ts +0 -37
- package/dist/shared/approvals.d.ts.map +0 -1
- package/dist/shared/approvals.js +0 -4
- package/dist/shared/approvals.js.map +0 -1
- package/dist/shared/checklists.d.ts +0 -27
- package/dist/shared/checklists.d.ts.map +0 -1
- package/dist/shared/checklists.js +0 -7
- package/dist/shared/checklists.js.map +0 -1
- package/dist/shared/workflows.d.ts +0 -267
- package/dist/shared/workflows.d.ts.map +0 -1
- package/dist/shared/workflows.js +0 -149
- package/dist/shared/workflows.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zh-CN.d.ts","sourceRoot":"","sources":["../../../server/locales/zh-CN.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,QAAA,MAAM,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"zh-CN.d.ts","sourceRoot":"","sources":["../../../server/locales/zh-CN.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,QAAA,MAAM,IAAI,EAAE,gBAyBX,CAAC;AAEF,eAAe,IAAI,CAAC"}
|
|
@@ -2,12 +2,6 @@ import accessZhCN from '../../shared/locales/access.zh-CN.js';
|
|
|
2
2
|
const zhCN = {
|
|
3
3
|
...accessZhCN,
|
|
4
4
|
notifications: {
|
|
5
|
-
approval: {
|
|
6
|
-
approved: '已批准:{{identifier}} 已改为“{{status}}”',
|
|
7
|
-
rejected: '{{identifier}} 改为“{{status}}”的申请被驳回',
|
|
8
|
-
stale: '{{identifier}} 改为“{{status}}”的申请已批准,但已不再适用',
|
|
9
|
-
},
|
|
10
|
-
approvalRequested: '{{identifier}} 等待你审批:改为“{{status}}”',
|
|
11
5
|
batchDone: '{{identifier}} 的子任务都已完成',
|
|
12
6
|
batchDoneStage: '{{identifier}} 第 {{stage}} 阶段的子任务都已完成',
|
|
13
7
|
commented: '{{actor}} 评论了 {{identifier}}',
|
|
@@ -23,15 +17,12 @@ const zhCN = {
|
|
|
23
17
|
ownerNotified: '{{identifier}} 已进入“{{status}}”',
|
|
24
18
|
},
|
|
25
19
|
status: {
|
|
26
|
-
analysis: '分析中',
|
|
27
20
|
backlog: '待规划',
|
|
28
|
-
blocked: '
|
|
21
|
+
blocked: '阻塞中',
|
|
29
22
|
cancelled: '已取消',
|
|
30
23
|
done: '已完成',
|
|
31
24
|
in_progress: '进行中',
|
|
32
|
-
in_review: '
|
|
33
|
-
proposal_review: '方案评审',
|
|
34
|
-
todo: '待处理',
|
|
25
|
+
in_review: '待验收',
|
|
35
26
|
},
|
|
36
27
|
};
|
|
37
28
|
export default zhCN;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zh-CN.js","sourceRoot":"","sources":["../../../server/locales/zh-CN.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,sCAAsC,CAAC;AAG9D,MAAM,IAAI,GAAqB;IAC7B,GAAG,UAAU;IACb,aAAa,EAAE;QACb,
|
|
1
|
+
{"version":3,"file":"zh-CN.js","sourceRoot":"","sources":["../../../server/locales/zh-CN.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,sCAAsC,CAAC;AAG9D,MAAM,IAAI,GAAqB;IAC7B,GAAG,UAAU;IACb,aAAa,EAAE;QACb,SAAS,EAAE,yBAAyB;QACpC,cAAc,EAAE,uCAAuC;QACvD,SAAS,EAAE,8BAA8B;QACzC,kBAAkB,EAAE,yCAAyC;QAC7D,gBAAgB,EAAE,kCAAkC;QACpD,SAAS,EAAE;YACT,OAAO,EAAE,qCAAqC;YAC9C,WAAW,EAAE,qCAAqC;SACnD;QACD,aAAa,EAAE,+BAA+B;QAC9C,OAAO,EAAE,IAAI;QACb,aAAa,EAAE,gCAAgC;QAC/C,aAAa,EAAE,gCAAgC;KAChD;IACD,MAAM,EAAE;QACN,OAAO,EAAE,KAAK;QACd,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,KAAK;QAChB,IAAI,EAAE,KAAK;QACX,WAAW,EAAE,KAAK;QAClB,SAAS,EAAE,KAAK;KACjB;CACF,CAAC;AAEF,eAAe,IAAI,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Turns domain events into the realtime announcements open pages refresh from (`PM_REALTIME_TOPIC`): the events of a
|
|
3
|
+
* moment are gathered into one announcement per kind of data, so a write that emits several events, or an agent
|
|
4
|
+
* writing in bursts, makes each page refetch once. An issue announcement names the issues that changed when every event
|
|
5
|
+
* named one and none changed which lists an issue belongs in; a page then refreshes only what it shows of those issues.
|
|
6
|
+
*/
|
|
7
|
+
import type { PmChangeDomain, PmChangeEvent } from '../../shared/realtime.js';
|
|
8
|
+
/** How long events are gathered before they are announced. */
|
|
9
|
+
export declare const ANNOUNCE_DELAY_MS = 250;
|
|
10
|
+
/** More issues than this in one announcement are announced as "issues changed", without naming them. */
|
|
11
|
+
export declare const ANNOUNCED_ISSUES_MAX = 100;
|
|
12
|
+
/** The kind of data an event changed, as the browser refreshes it. */
|
|
13
|
+
export declare function domainOf(type: string): PmChangeDomain;
|
|
14
|
+
/** What the announcer reads of a domain event. */
|
|
15
|
+
export interface AnnouncedEvent {
|
|
16
|
+
readonly type: string;
|
|
17
|
+
readonly issueId?: unknown;
|
|
18
|
+
readonly changes?: unknown;
|
|
19
|
+
readonly moved?: unknown;
|
|
20
|
+
}
|
|
21
|
+
export interface ChangeAnnouncer {
|
|
22
|
+
add(event: AnnouncedEvent): void;
|
|
23
|
+
/** Announces what is gathered now. */
|
|
24
|
+
flush(): void;
|
|
25
|
+
close(): void;
|
|
26
|
+
}
|
|
27
|
+
export declare function createChangeAnnouncer(publish: (event: PmChangeEvent) => void, delayMs?: number): ChangeAnnouncer;
|
|
28
|
+
//# sourceMappingURL=change-announcer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"change-announcer.d.ts","sourceRoot":"","sources":["../../../server/providers/change-announcer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9E,8DAA8D;AAC9D,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAErC,wGAAwG;AACxG,eAAO,MAAM,oBAAoB,MAAM,CAAC;AAExC,sEAAsE;AACtE,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAIrD;AAsBD,kDAAkD;AAClD,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IACjC,sCAAsC;IACtC,KAAK,IAAI,IAAI,CAAC;IACd,KAAK,IAAI,IAAI,CAAC;CACf;AAED,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,EACvC,OAAO,GAAE,MAA0B,GAClC,eAAe,CA8CjB"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/** How long events are gathered before they are announced. */
|
|
2
|
+
export const ANNOUNCE_DELAY_MS = 250;
|
|
3
|
+
/** More issues than this in one announcement are announced as "issues changed", without naming them. */
|
|
4
|
+
export const ANNOUNCED_ISSUES_MAX = 100;
|
|
5
|
+
/** The kind of data an event changed, as the browser refreshes it. */
|
|
6
|
+
export function domainOf(type) {
|
|
7
|
+
if (type.startsWith('label.'))
|
|
8
|
+
return 'labels';
|
|
9
|
+
if (type.startsWith('plan.') || type.startsWith('intake.'))
|
|
10
|
+
return 'plans';
|
|
11
|
+
return 'issues';
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Events that may move an issue into or out of a list a page shows: created, deleted, restored, given to someone else,
|
|
15
|
+
* moved to another status, or moved to another project, parent or executor.
|
|
16
|
+
*/
|
|
17
|
+
function movesLists(event) {
|
|
18
|
+
if (event.type === 'issue.created' ||
|
|
19
|
+
event.type === 'issue.deleted' ||
|
|
20
|
+
event.type === 'issue.restored' ||
|
|
21
|
+
(event.type === 'issue.changed' && event.moved === true))
|
|
22
|
+
return true;
|
|
23
|
+
return (event.type === 'issue.updated' &&
|
|
24
|
+
typeof event.changes === 'object' &&
|
|
25
|
+
event.changes !== null &&
|
|
26
|
+
('owner' in event.changes || 'status' in event.changes));
|
|
27
|
+
}
|
|
28
|
+
export function createChangeAnnouncer(publish, delayMs = ANNOUNCE_DELAY_MS) {
|
|
29
|
+
// Per domain: the issues named so far, or null once an event names none.
|
|
30
|
+
let pending = new Map();
|
|
31
|
+
let timer;
|
|
32
|
+
const flush = () => {
|
|
33
|
+
if (timer)
|
|
34
|
+
clearTimeout(timer);
|
|
35
|
+
timer = undefined;
|
|
36
|
+
const gathered = pending;
|
|
37
|
+
pending = new Map();
|
|
38
|
+
for (const [domain, issueIds] of gathered)
|
|
39
|
+
publish(domain === 'issues' &&
|
|
40
|
+
issueIds &&
|
|
41
|
+
issueIds.size > 0 &&
|
|
42
|
+
issueIds.size <= ANNOUNCED_ISSUES_MAX
|
|
43
|
+
? { kind: 'pm.changed', domain, issueIds: [...issueIds] }
|
|
44
|
+
: { kind: 'pm.changed', domain });
|
|
45
|
+
};
|
|
46
|
+
return {
|
|
47
|
+
add(event) {
|
|
48
|
+
const domain = domainOf(event.type);
|
|
49
|
+
const named = domain === 'issues' &&
|
|
50
|
+
typeof event.issueId === 'string' &&
|
|
51
|
+
!movesLists(event)
|
|
52
|
+
? event.issueId
|
|
53
|
+
: null;
|
|
54
|
+
const current = pending.get(domain);
|
|
55
|
+
if (named === null)
|
|
56
|
+
pending.set(domain, null);
|
|
57
|
+
else if (current === undefined)
|
|
58
|
+
pending.set(domain, new Set([named]));
|
|
59
|
+
else
|
|
60
|
+
current?.add(named);
|
|
61
|
+
if (!timer) {
|
|
62
|
+
timer = setTimeout(flush, delayMs);
|
|
63
|
+
timer.unref?.();
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
flush,
|
|
67
|
+
close() {
|
|
68
|
+
if (timer)
|
|
69
|
+
clearTimeout(timer);
|
|
70
|
+
timer = undefined;
|
|
71
|
+
pending = new Map();
|
|
72
|
+
},
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=change-announcer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"change-announcer.js","sourceRoot":"","sources":["../../../server/providers/change-announcer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { AppPluginApplication } from '@nocobase/app-server/plugins';
|
|
2
|
+
import '../domains/statuses/status.events.js';
|
|
2
3
|
import type { DatabaseConnection } from '@nocobase/db';
|
|
3
4
|
import '../domains/notices/notice.events.js';
|
|
4
5
|
import type { DomainEventBus } from '../kernel/events.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notifications.d.ts","sourceRoot":"","sources":["../../../server/providers/notifications.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"notifications.d.ts","sourceRoot":"","sources":["../../../server/providers/notifications.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAIzE,OAAO,sCAAsC,CAAC;AAC9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAKvD,OAAO,qCAAqC,CAAC;AAK7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAGL,KAAK,cAAc,EAEpB,MAAM,cAAc,CAAC;AA0CtB,mDAAmD;AACnD,MAAM,MAAM,gBAAgB,GAAG,CAC7B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,SAAS,MAAM,EAAE,KACvB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;AAEvB;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,mBAAmB,CAAC,EACjD,IAAI,EAAE,MAAM,kBAAkB,GAC7B,gBAAgB,GAAG,SAAS,CAuB9B;AAED,6CAA6C;AAC7C,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,oBAAoB,EACzB,MAAM,EAAE,cAAc,EACtB,SAAS,CAAC,EAAE,gBAAgB,GAC3B,MAAM,IAAI,CAuIZ"}
|
|
@@ -1,14 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Notices for the plugin's events: who is told what, worded once in the application's default language.
|
|
3
3
|
*
|
|
4
|
-
* -
|
|
5
|
-
*
|
|
6
|
-
* - A decided request: the decision is resolved, and whoever asked hears an approval or a rejection
|
|
7
|
-
* (`approval_decided`) unless they decided it themselves; when another kind (an agent) asked, the issue's owner
|
|
8
|
-
* hears it instead.
|
|
9
|
-
* - An approved request that no longer applies (its conditions failed when it was approved): an `approval_stale` notice
|
|
10
|
-
* to the approvers and whoever asked (the owner when another kind asked), except the approver who approved it. A
|
|
11
|
-
* request that went stale because the issue left the status tells nobody.
|
|
4
|
+
* - An issue entered `blocked` or `in_review`, moved by someone other than its owner: an `owner_notified` notice to the
|
|
5
|
+
* owner.
|
|
12
6
|
* - Notices planned in a transaction (`notice.planned`, `domains/notices`): comments, mentions, status changes and
|
|
13
7
|
* assignments.
|
|
14
8
|
* - Sub-issues and dependencies: the rules of `domains/subtasks/subtask.notices.ts` (`dependency_released`,
|
|
@@ -22,7 +16,8 @@
|
|
|
22
16
|
*/
|
|
23
17
|
import { notificationServiceToken, } from '@nocobase/app-plugin-notification/server';
|
|
24
18
|
import { i18nToken } from '@nocobase/app-server/i18n';
|
|
25
|
-
import { hasDefaultName
|
|
19
|
+
import { hasDefaultName } from '../../shared/statuses.js';
|
|
20
|
+
import '../domains/statuses/status.events.js';
|
|
26
21
|
import { findIssue, issueVisibleTo } from '../domains/issues/index.js';
|
|
27
22
|
import { createUserDirectory } from '../kernel/users.js';
|
|
28
23
|
import '../domains/notices/notice.events.js';
|
|
@@ -59,7 +54,6 @@ function directNotices(app) {
|
|
|
59
54
|
},
|
|
60
55
|
});
|
|
61
56
|
},
|
|
62
|
-
resolve: () => Promise.resolve(),
|
|
63
57
|
};
|
|
64
58
|
}
|
|
65
59
|
/**
|
|
@@ -177,7 +171,7 @@ export function startNotifications(app, events, visibleTo) {
|
|
|
177
171
|
params: notice.params,
|
|
178
172
|
});
|
|
179
173
|
}),
|
|
180
|
-
events.on('
|
|
174
|
+
events.on('status.ownerNotified', async (event) => {
|
|
181
175
|
if (!sink())
|
|
182
176
|
return;
|
|
183
177
|
const t = await translator();
|
|
@@ -190,121 +184,13 @@ export function startNotifications(app, events, visibleTo) {
|
|
|
190
184
|
identifier: event.identifier,
|
|
191
185
|
status: statusName(t, event.statusKey, event.statusName),
|
|
192
186
|
}),
|
|
193
|
-
|
|
194
|
-
// it in each reader's.
|
|
195
|
-
body: messageText(event.message, t) ?? event.title,
|
|
187
|
+
body: event.title,
|
|
196
188
|
path: issuePath(event.identifier),
|
|
197
189
|
issue: { id: event.issueId, identifier: event.identifier },
|
|
198
190
|
params: {
|
|
199
191
|
identifier: event.identifier,
|
|
200
192
|
status: event.statusKey,
|
|
201
193
|
statusName: event.statusName,
|
|
202
|
-
...(isLocalizedMessage(event.message)
|
|
203
|
-
? {
|
|
204
|
-
messageKey: event.message.key,
|
|
205
|
-
...(event.message.ns ? { messageNs: event.message.ns } : {}),
|
|
206
|
-
...(event.message.defaultValue
|
|
207
|
-
? { messageDefault: event.message.defaultValue }
|
|
208
|
-
: {}),
|
|
209
|
-
}
|
|
210
|
-
: {}),
|
|
211
|
-
},
|
|
212
|
-
});
|
|
213
|
-
}),
|
|
214
|
-
events.on('approval.requested', async (event) => {
|
|
215
|
-
if (!sink())
|
|
216
|
-
return;
|
|
217
|
-
const t = await translator();
|
|
218
|
-
await send({
|
|
219
|
-
key: `pm:approval-requested:${event.requestId}`,
|
|
220
|
-
kind: 'decision',
|
|
221
|
-
type: 'approval_requested',
|
|
222
|
-
userIds: event.approverUserIds,
|
|
223
|
-
title: t('notifications.approvalRequested', {
|
|
224
|
-
identifier: event.identifier,
|
|
225
|
-
status: statusName(t, event.toStatus, event.toStatusName),
|
|
226
|
-
}),
|
|
227
|
-
body: event.title,
|
|
228
|
-
path: issuePath(event.identifier),
|
|
229
|
-
issue: { id: event.issueId, identifier: event.identifier },
|
|
230
|
-
approvalRequestId: event.requestId,
|
|
231
|
-
params: {
|
|
232
|
-
identifier: event.identifier,
|
|
233
|
-
status: event.toStatus,
|
|
234
|
-
statusName: event.toStatusName,
|
|
235
|
-
},
|
|
236
|
-
});
|
|
237
|
-
}),
|
|
238
|
-
events.on('approval.decided', async (event) => {
|
|
239
|
-
const target = sink();
|
|
240
|
-
if (!target)
|
|
241
|
-
return;
|
|
242
|
-
await target.resolve({
|
|
243
|
-
approvalRequestId: event.requestId,
|
|
244
|
-
outcome: event.status,
|
|
245
|
-
});
|
|
246
|
-
const { requestedBy } = event;
|
|
247
|
-
// Whoever asked hears the outcome; the owner does when another kind (an agent) asked.
|
|
248
|
-
const asker = requestedBy.type === 'user' ? requestedBy.id : event.ownerUserId;
|
|
249
|
-
const t = await translator();
|
|
250
|
-
const status = statusName(t, event.toStatus, event.toStatusName);
|
|
251
|
-
const common = {
|
|
252
|
-
path: issuePath(event.identifier),
|
|
253
|
-
issue: { id: event.issueId, identifier: event.identifier },
|
|
254
|
-
approvalRequestId: event.requestId,
|
|
255
|
-
};
|
|
256
|
-
if (event.status === 'stale' && event.staleReason) {
|
|
257
|
-
const userIds = [...event.approverUserIds, ...(asker ? [asker] : [])]
|
|
258
|
-
.filter((userId) => userId !== event.staleReason?.attemptedById)
|
|
259
|
-
.filter((userId, index, all) => all.indexOf(userId) === index);
|
|
260
|
-
if (userIds.length > 0)
|
|
261
|
-
await send({
|
|
262
|
-
...common,
|
|
263
|
-
key: `pm:approval-stale:${event.requestId}`,
|
|
264
|
-
kind: 'info',
|
|
265
|
-
type: 'approval_stale',
|
|
266
|
-
userIds,
|
|
267
|
-
title: t('notifications.approval.stale', {
|
|
268
|
-
identifier: event.identifier,
|
|
269
|
-
status,
|
|
270
|
-
}),
|
|
271
|
-
body: event.staleReason.message ?? event.title,
|
|
272
|
-
params: {
|
|
273
|
-
identifier: event.identifier,
|
|
274
|
-
status: event.toStatus,
|
|
275
|
-
statusName: event.toStatusName,
|
|
276
|
-
outcome: event.status,
|
|
277
|
-
code: event.staleReason.code,
|
|
278
|
-
...(event.staleReason.message
|
|
279
|
-
? { message: event.staleReason.message }
|
|
280
|
-
: {}),
|
|
281
|
-
},
|
|
282
|
-
});
|
|
283
|
-
return;
|
|
284
|
-
}
|
|
285
|
-
if (event.status !== 'approved' && event.status !== 'rejected')
|
|
286
|
-
return;
|
|
287
|
-
if (!asker || asker === event.decidedById)
|
|
288
|
-
return;
|
|
289
|
-
await send({
|
|
290
|
-
...common,
|
|
291
|
-
key: `pm:approval-decided:${event.requestId}`,
|
|
292
|
-
kind: 'info',
|
|
293
|
-
type: 'approval_decided',
|
|
294
|
-
userIds: [asker],
|
|
295
|
-
title: t(`notifications.approval.${event.status}`, {
|
|
296
|
-
identifier: event.identifier,
|
|
297
|
-
status,
|
|
298
|
-
}),
|
|
299
|
-
body: event.comment ?? event.title,
|
|
300
|
-
params: {
|
|
301
|
-
identifier: event.identifier,
|
|
302
|
-
status: event.toStatus,
|
|
303
|
-
statusName: event.toStatusName,
|
|
304
|
-
outcome: event.status,
|
|
305
|
-
...(requestedBy.type === 'user'
|
|
306
|
-
? {}
|
|
307
|
-
: { requestedByType: requestedBy.type }),
|
|
308
194
|
},
|
|
309
195
|
});
|
|
310
196
|
}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notifications.js","sourceRoot":"","sources":["../../../server/providers/notifications.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"notifications.js","sourceRoot":"","sources":["../../../server/providers/notifications.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import type { AppPluginApplication } from '@nocobase/app-server/plugins';
|
|
2
2
|
import { ServiceProvider } from '@nocobase/service-provider';
|
|
3
3
|
/**
|
|
4
|
-
* Binds the plugin's services; they are created on first use. At boot,
|
|
5
|
-
*
|
|
6
|
-
*
|
|
4
|
+
* Binds the plugin's services; they are created on first use. At boot, unused files start to be purged every hour,
|
|
5
|
+
* accepting an invitation from the member settings starts to add the invitee to its projects, and changes are announced
|
|
6
|
+
* on the realtime topic so open pages refresh.
|
|
7
7
|
*/
|
|
8
8
|
export declare class ProjectsProvider extends ServiceProvider<AppPluginApplication> {
|
|
9
9
|
readonly name: string;
|
|
@@ -15,11 +15,6 @@ export declare class ProjectsProvider extends ServiceProvider<AppPluginApplicati
|
|
|
15
15
|
* after boot. A pass is safe to run on several instances at once: a row is deleted only while still unattached.
|
|
16
16
|
*/
|
|
17
17
|
private schedulePurge;
|
|
18
|
-
/**
|
|
19
|
-
* Waits for the templates the plugins added while booting to be workflows, so the first request already sees them
|
|
20
|
-
* (a template's `makeDefault`, say) instead of the built-in statuses.
|
|
21
|
-
*/
|
|
22
|
-
ready(): Promise<void>;
|
|
23
18
|
shutdown(): Promise<void>;
|
|
24
19
|
}
|
|
25
20
|
//# sourceMappingURL=projects.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../../server/providers/projects.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAGzE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../../server/providers/projects.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAGzE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AA4B7D;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,eAAe,CAAC,oBAAoB,CAAC;IACzE,SAAgB,IAAI,EAAE,MAAM,CAAa;IACzC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsB;IAE/B,QAAQ,IAAI,IAAI;IAuDhB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAyCrC;;;OAGG;IACH,OAAO,CAAC,aAAa;IAmBL,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAI1C"}
|
|
@@ -7,47 +7,34 @@ import { databaseManagerToken } from '@nocobase/db';
|
|
|
7
7
|
import { ServiceProvider } from '@nocobase/service-provider';
|
|
8
8
|
import { PM_REALTIME_TOPIC, } from '../../shared/realtime.js';
|
|
9
9
|
import { createProjects } from '../composition.js';
|
|
10
|
+
import { createChangeAnnouncer } from './change-announcer.js';
|
|
10
11
|
import { createAttachmentStorage } from '../domains/attachments/index.js';
|
|
11
|
-
import {
|
|
12
|
+
import { createStatusEventTypes } from '../domains/statuses/index.js';
|
|
12
13
|
import { createKindRegistry } from '../kernel/kinds.js';
|
|
13
14
|
import { createUserDirectory } from '../kernel/users.js';
|
|
14
|
-
import { projectsAccessToken, projectsIntakeOrganizerToken, projectsKindsToken, projectsNoticeRulesToken, projectsPlanHooksToken,
|
|
15
|
+
import { projectsAccessToken, projectsIntakeOrganizerToken, projectsKindsToken, projectsNoticeRulesToken, projectsPlanHooksToken, projectsStatusEventsToken, projectsToken, projectsTriggersToken, } from '../tokens.js';
|
|
15
16
|
import { NAMESPACE } from './authorization.js';
|
|
16
17
|
import { createVisibilityFilter, startNotifications } from './notifications.js';
|
|
17
18
|
const PURGE_DELAY_MS = 60_000;
|
|
18
19
|
const PURGE_INTERVAL_MS = 60 * 60_000;
|
|
19
|
-
/** The kind of data an event changed, as the browser refreshes it. */
|
|
20
|
-
function domainOf(type) {
|
|
21
|
-
if (type.startsWith('label.'))
|
|
22
|
-
return 'labels';
|
|
23
|
-
if (type === 'workflow.changed')
|
|
24
|
-
return 'workflows';
|
|
25
|
-
if (type.startsWith('plan.') || type.startsWith('intake.'))
|
|
26
|
-
return 'plans';
|
|
27
|
-
return 'issues';
|
|
28
|
-
}
|
|
29
20
|
/**
|
|
30
|
-
* Binds the plugin's services; they are created on first use. At boot,
|
|
31
|
-
*
|
|
32
|
-
*
|
|
21
|
+
* Binds the plugin's services; they are created on first use. At boot, unused files start to be purged every hour,
|
|
22
|
+
* accepting an invitation from the member settings starts to add the invitee to its projects, and changes are announced
|
|
23
|
+
* on the realtime topic so open pages refresh.
|
|
33
24
|
*/
|
|
34
25
|
export class ProjectsProvider extends ServiceProvider {
|
|
35
26
|
name = NAMESPACE;
|
|
36
27
|
releases = [];
|
|
37
28
|
register() {
|
|
38
29
|
this.app.container.singleton(projectsKindsToken, () => createKindRegistry(createUserDirectory()));
|
|
39
|
-
this.app.container.singleton(
|
|
40
|
-
this.app.container.singleton(projectsWorkflowEventsToken, () => createWorkflowEventTypes());
|
|
41
|
-
this.app.container.singleton(projectsWorkflowTemplatesToken, () => createWorkflowTemplates());
|
|
30
|
+
this.app.container.singleton(projectsStatusEventsToken, () => createStatusEventTypes());
|
|
42
31
|
this.app.container.singleton(projectsToken, (resolver) => createProjects({
|
|
43
32
|
database: resolver.resolve(databaseManagerToken),
|
|
44
33
|
idGenerator: resolver.resolve(idGeneratorToken),
|
|
45
34
|
access: resolver.resolve(projectsAccessToken),
|
|
46
35
|
invitations: resolver.resolve(userManagementServiceToken),
|
|
47
36
|
kinds: resolver.resolve(projectsKindsToken),
|
|
48
|
-
|
|
49
|
-
workflowEvents: resolver.resolve(projectsWorkflowEventsToken),
|
|
50
|
-
templates: resolver.resolve(projectsWorkflowTemplatesToken),
|
|
37
|
+
statusEvents: resolver.resolve(projectsStatusEventsToken),
|
|
51
38
|
// Resolved on each use: a plugin may bind its triggers after this one registers.
|
|
52
39
|
triggers: () => this.app.container.has(projectsTriggersToken)
|
|
53
40
|
? this.app.container.resolve(projectsTriggersToken)
|
|
@@ -79,26 +66,25 @@ export class ProjectsProvider extends ServiceProvider {
|
|
|
79
66
|
if (this.releases.length > 0)
|
|
80
67
|
return Promise.resolve();
|
|
81
68
|
const { container } = this.app;
|
|
82
|
-
const { invitations, events, tx
|
|
83
|
-
// Other plugins' templates become workflows once: those added before this boot now, the others as they come.
|
|
84
|
-
this.releases.push(templates.installWith((template) => workflows.installTemplate(template).catch((error) => {
|
|
85
|
-
console.error(`Projects could not install the workflow template ${template.key}.`, error);
|
|
86
|
-
})));
|
|
69
|
+
const { invitations, events, tx } = container.resolve(projectsToken);
|
|
87
70
|
this.releases.push(container
|
|
88
71
|
.resolve(userManagementServiceToken)
|
|
89
72
|
.onInvitationAccepted((context) => invitations.accepted(context)), startNotifications(this.app, events, createVisibilityFilter(container.resolve(projectsAccessToken), () => tx.read())));
|
|
90
73
|
if (container.has(realtimeServiceToken)) {
|
|
91
74
|
const topic = container
|
|
92
75
|
.resolve(realtimeServiceToken)
|
|
76
|
+
// Announcements name issues by id: signed-in connections only.
|
|
93
77
|
.defineTopic(PM_REALTIME_TOPIC, {
|
|
94
78
|
audience: 'public',
|
|
79
|
+
authenticated: true,
|
|
95
80
|
});
|
|
81
|
+
const announcer = createChangeAnnouncer((change) => topic.publish(change));
|
|
96
82
|
this.releases.push(events.onAny((event) => {
|
|
97
83
|
// Planned notices are delivered, not shown.
|
|
98
84
|
if (event.type.startsWith('notice.'))
|
|
99
85
|
return;
|
|
100
|
-
|
|
101
|
-
}), () => topic.close());
|
|
86
|
+
announcer.add(event);
|
|
87
|
+
}), () => announcer.close(), () => topic.close());
|
|
102
88
|
}
|
|
103
89
|
this.releases.push(this.schedulePurge());
|
|
104
90
|
return Promise.resolve();
|
|
@@ -123,15 +109,6 @@ export class ProjectsProvider extends ServiceProvider {
|
|
|
123
109
|
clearInterval(every);
|
|
124
110
|
};
|
|
125
111
|
}
|
|
126
|
-
/**
|
|
127
|
-
* Waits for the templates the plugins added while booting to be workflows, so the first request already sees them
|
|
128
|
-
* (a template's `makeDefault`, say) instead of the built-in statuses.
|
|
129
|
-
*/
|
|
130
|
-
async ready() {
|
|
131
|
-
await this.app.container
|
|
132
|
-
.resolve(projectsWorkflowTemplatesToken)
|
|
133
|
-
.installed();
|
|
134
|
-
}
|
|
135
112
|
shutdown() {
|
|
136
113
|
for (const release of this.releases.splice(0))
|
|
137
114
|
release();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projects.js","sourceRoot":"","sources":["../../../server/providers/projects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,kCAAkC,CAAC;AACpF,OAAO,EAAE,0BAA0B,EAAE,MAAM,0CAA0C,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAErE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D,OAAO,EACL,iBAAiB,
|
|
1
|
+
{"version":3,"file":"projects.js","sourceRoot":"","sources":["../../../server/providers/projects.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../server/routes/api.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../server/routes/api.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,6BAA6B,CAAC;AAoCrC,eAAO,MAAM,SAAS,EAAE,uBAAuB,CAAC,oBAAoB,CAsGhE,CAAC"}
|
|
@@ -8,9 +8,7 @@ import { authorizationToken } from '@nocobase/app-plugin-authorization';
|
|
|
8
8
|
import { ApiError, defineApiRoutes, } from '@nocobase/app-server/router';
|
|
9
9
|
import { Hono } from 'hono';
|
|
10
10
|
import { viewerMiddleware } from '../access/request.js';
|
|
11
|
-
import { createApprovalRoutes } from '../domains/approvals/index.js';
|
|
12
11
|
import { createAttachmentRoutes, createIssueAttachmentRoutes, } from '../domains/attachments/index.js';
|
|
13
|
-
import { createChecklistRoutes } from '../domains/checklists/index.js';
|
|
14
12
|
import { createCommentRoutes, createIssueCommentRoutes, createMentionRoutes, } from '../domains/comments/index.js';
|
|
15
13
|
import { createInvitationRoutes } from '../domains/invitations/index.js';
|
|
16
14
|
import { createIssueRoutes } from '../domains/issues/index.js';
|
|
@@ -22,9 +20,8 @@ import { createProjectRoutes } from '../domains/projects/index.js';
|
|
|
22
20
|
import { createSettingsRoutes } from '../domains/settings/index.js';
|
|
23
21
|
import { createSubscriptionRoutes } from '../domains/subscriptions/index.js';
|
|
24
22
|
import { createSubtaskRoutes } from '../domains/subtasks/index.js';
|
|
25
|
-
import { createWorkflowRoutes } from '../domains/workflows/index.js';
|
|
26
23
|
import { domainRouter, PROJECTS_DOMAIN } from '../kernel/http.js';
|
|
27
|
-
import { projectsAccessToken, projectsDelegatedWritesToken, projectsPlanSourceToken, projectsRequestActorToken, projectsToken, } from '../tokens.js';
|
|
24
|
+
import { projectsAccessToken, projectsDelegatedWritesToken, projectsPlanSourceToken, projectsRequestActorToken, projectsToken, projectsIssueSessionToken, } from '../tokens.js';
|
|
28
25
|
export const apiRoutes = defineApiRoutes((app) => {
|
|
29
26
|
const { container } = app;
|
|
30
27
|
const authentication = container.resolve(authenticationToken);
|
|
@@ -63,11 +60,9 @@ export const apiRoutes = defineApiRoutes((app) => {
|
|
|
63
60
|
// Every fixed segment comes before `/:projectId`, which would otherwise take it for a project id.
|
|
64
61
|
projects.route('/', createMemberRoutes(services.members));
|
|
65
62
|
projects.route('/', createMentionRoutes(services.commentQueries));
|
|
66
|
-
projects.route('/invitations', createInvitationRoutes(services.invitations));
|
|
63
|
+
projects.route('/invitations', createInvitationRoutes(services.invitations, authentication));
|
|
67
64
|
projects.route('/settings', createSettingsRoutes(services.settings));
|
|
68
65
|
projects.route('/labels', createLabelRoutes(services.labels));
|
|
69
|
-
projects.route('/workflows', createWorkflowRoutes(services.workflows));
|
|
70
|
-
projects.route('/approvals', createApprovalRoutes(services.approvals));
|
|
71
66
|
projects.route('/plans', createPlanRoutes(services.plans, {
|
|
72
67
|
sourceOf: () => container.has(projectsPlanSourceToken)
|
|
73
68
|
? container.resolve(projectsPlanSourceToken)
|
|
@@ -76,7 +71,6 @@ export const apiRoutes = defineApiRoutes((app) => {
|
|
|
76
71
|
projects.route('/intake', createIntakeRoutes(services.intake, services.intakeAi));
|
|
77
72
|
projects.route('/attachments', createAttachmentRoutes(services.attachments));
|
|
78
73
|
projects.route('/comments', createCommentRoutes(services.comments));
|
|
79
|
-
projects.route('/issues', createChecklistRoutes(services.checklists));
|
|
80
74
|
projects.route('/issues', createSubtaskRoutes(services.subtasks));
|
|
81
75
|
projects.route('/issues', createIssueCommentRoutes({
|
|
82
76
|
comments: services.comments,
|
|
@@ -88,6 +82,9 @@ export const apiRoutes = defineApiRoutes((app) => {
|
|
|
88
82
|
projects.route('/issues', createIssueRoutes({
|
|
89
83
|
issues: services.issues,
|
|
90
84
|
queries: services.issueQueries,
|
|
85
|
+
session: () => container.has(projectsIssueSessionToken)
|
|
86
|
+
? container.resolve(projectsIssueSessionToken)
|
|
87
|
+
: undefined,
|
|
91
88
|
}));
|
|
92
89
|
projects.route('/', createProjectRoutes(services.projects));
|
|
93
90
|
const router = new Hono();
|