@nocobase/app-plugin-projects 0.1.0-beta.1 → 0.1.0-beta.10
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 +266 -0
- package/README.md +77 -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 +7 -7
- 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/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 +17 -28
- package/dist/server/routes/schemas.d.ts.map +1 -1
- package/dist/server/routes/schemas.js +382 -292
- 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 +4 -0
- package/dist/shared/attachments.d.ts.map +1 -1
- package/dist/shared/attachments.js +4 -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 +33 -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
|
@@ -29,9 +29,17 @@ export async function updateComment(conn, id, values) {
|
|
|
29
29
|
* A page of an issue's root comments, newest first, continuing strictly after `cursor` (the `createdAt` and `id` of
|
|
30
30
|
* the last root of the previous page). Asks for one more than `limit` to tell whether another page follows.
|
|
31
31
|
*/
|
|
32
|
-
export async function rootsPage(conn, issueId, limit, cursor
|
|
32
|
+
export async function rootsPage(conn, issueId, limit, cursor,
|
|
33
|
+
/** Only these roots. */
|
|
34
|
+
rootIds) {
|
|
35
|
+
if (rootIds?.length === 0)
|
|
36
|
+
return [];
|
|
33
37
|
return comments(conn).findMany({
|
|
34
|
-
filter: (f) => f.and([
|
|
38
|
+
filter: (f) => f.and([
|
|
39
|
+
f.string('issueId').eq(issueId),
|
|
40
|
+
f.string('parentId').eq(null),
|
|
41
|
+
...(rootIds ? [oneOf(f, 'id', rootIds)] : []),
|
|
42
|
+
]),
|
|
35
43
|
...(cursor ? { cursor } : {}),
|
|
36
44
|
sort: (sort) => [sort.field('createdAt').desc(), sort.field('id').desc()],
|
|
37
45
|
limit: limit + 1,
|
|
@@ -59,6 +67,61 @@ export async function commentsOf(conn, issueId, options = {}) {
|
|
|
59
67
|
...(options.limit ? { limit: options.limit } : {}),
|
|
60
68
|
});
|
|
61
69
|
}
|
|
70
|
+
/** One author's newest comments on an issue, newest first: live ones only with `live`, and none after `until`. */
|
|
71
|
+
export async function newestCommentsBy(conn, issueId, author, options) {
|
|
72
|
+
return comments(conn).findMany({
|
|
73
|
+
filter: (f) => f.and([
|
|
74
|
+
f.string('issueId').eq(issueId),
|
|
75
|
+
f.string('authorType').eq(author.type),
|
|
76
|
+
f.string('authorId').eq(author.id),
|
|
77
|
+
...(options.live ? [f.date('deletedAt').empty()] : []),
|
|
78
|
+
...(options.until ? [f.date('createdAt').notAfter(options.until)] : []),
|
|
79
|
+
]),
|
|
80
|
+
sort: (sort) => [sort.field('createdAt').desc(), sort.field('id').desc()],
|
|
81
|
+
limit: options.limit,
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* One author's newest comment on each of `issueIds` (only live ones with `live`), in one query: a comment no later one
|
|
86
|
+
* by the author follows, the same order `newestCommentsBy` reads. Issues without one are left out.
|
|
87
|
+
*/
|
|
88
|
+
export async function newestCommentEachBy(conn, issueIds, author, options = {}) {
|
|
89
|
+
if (issueIds.length === 0)
|
|
90
|
+
return [];
|
|
91
|
+
let query = conn.query
|
|
92
|
+
.selectFrom(`${COMMENTS} as comment`)
|
|
93
|
+
.select([
|
|
94
|
+
'comment.id as id',
|
|
95
|
+
'comment.issueId as issueId',
|
|
96
|
+
'comment.content as content',
|
|
97
|
+
'comment.createdAt as createdAt',
|
|
98
|
+
'comment.deletedAt as deletedAt',
|
|
99
|
+
])
|
|
100
|
+
.where('comment.issueId', 'in', [...new Set(issueIds)])
|
|
101
|
+
.where('comment.authorType', '=', author.type)
|
|
102
|
+
.where('comment.authorId', '=', author.id);
|
|
103
|
+
if (options.live)
|
|
104
|
+
query = query.where('comment.deletedAt', 'is', null);
|
|
105
|
+
return query
|
|
106
|
+
.where((outer) => {
|
|
107
|
+
let newer = outer
|
|
108
|
+
.selectFrom(`${COMMENTS} as newer`)
|
|
109
|
+
.select('newer.id')
|
|
110
|
+
.whereRef('newer.issueId', '=', 'comment.issueId')
|
|
111
|
+
.where('newer.authorType', '=', author.type)
|
|
112
|
+
.where('newer.authorId', '=', author.id);
|
|
113
|
+
if (options.live)
|
|
114
|
+
newer = newer.where('newer.deletedAt', 'is', null);
|
|
115
|
+
return outer.not(outer.exists(newer.where((eb) => eb.or([
|
|
116
|
+
eb('newer.createdAt', '>', eb.ref('comment.createdAt')),
|
|
117
|
+
eb.and([
|
|
118
|
+
eb('newer.createdAt', '=', eb.ref('comment.createdAt')),
|
|
119
|
+
eb('newer.id', '>', eb.ref('comment.id')),
|
|
120
|
+
]),
|
|
121
|
+
]))));
|
|
122
|
+
})
|
|
123
|
+
.execute();
|
|
124
|
+
}
|
|
62
125
|
export async function reactionsFor(conn, commentIds) {
|
|
63
126
|
if (commentIds.length === 0)
|
|
64
127
|
return [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"comment.store.js","sourceRoot":"","sources":["../../../../server/domains/comments/comment.store.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE3C,MAAM,QAAQ,GAAG,YAAY,CAAC;AAC9B,MAAM,SAAS,GAAG,oBAAoB,CAAC;AA+BvC,MAAM,QAAQ,GAAG,CAAC,IAAwB,EAAE,EAAE,CAC5C,IAAI,CAAC,UAAU,CAAgB,QAAQ,CAAC,CAAC;AAC3C,MAAM,SAAS,GAAG,CAAC,IAAwB,EAAE,EAAE,CAC7C,IAAI,CAAC,UAAU,CAAiB,SAAS,CAAC,CAAC;AAE7C,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,IAAwB,EACxB,MAQC;IAED,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC;QAC7B,MAAM,EAAE;YACN,GAAG,MAAM;YACT,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,IAAI;YACf,aAAa,EAAE,IAAI;YACnB,WAAW,EAAE,IAAI;YACjB,UAAU,EAAE,IAAI;YAChB,YAAY,EAAE,IAAI;SACnB;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,IAAwB,EACxB,EAAU;IAEV,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,SAAS,CAAC;AACzE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,IAAwB,EACxB,EAAU,EACV,MAWC;IAED,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC;QAC7B,MAAM,EAAE,EAAE,EAAE,EAAE;QACd,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE;KAC7C,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,IAAwB,EACxB,OAAe,EACf,KAAa,EACb,MAA4D;
|
|
1
|
+
{"version":3,"file":"comment.store.js","sourceRoot":"","sources":["../../../../server/domains/comments/comment.store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { createCommentService, type CommentDeps, type CommentService, } from './comment.service.js';
|
|
2
|
-
export { createCommentQueries, threadPage, type CommentQueries, } from './comment.queries.js';
|
|
2
|
+
export { createCommentQueries, threadPage, type AuthoredComment, type CommentQueries, } from './comment.queries.js';
|
|
3
3
|
export { createCommentRoutes, createIssueCommentRoutes, createMentionRoutes, } from './comment.routes.js';
|
|
4
4
|
export type { CommentReader, CommentWriteOptions, CommentWriter, } from './ports.js';
|
|
5
5
|
export { findComment, type CommentRecord } from './comment.store.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/domains/comments/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,KAAK,WAAW,EAChB,KAAK,cAAc,GACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,oBAAoB,EACpB,UAAU,EACV,KAAK,cAAc,GACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,aAAa,EACb,mBAAmB,EACnB,aAAa,GACd,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/domains/comments/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,KAAK,WAAW,EAChB,KAAK,cAAc,GACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,oBAAoB,EACpB,UAAU,EACV,KAAK,eAAe,EACpB,KAAK,cAAc,GACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,aAAa,EACb,mBAAmB,EACnB,aAAa,GACd,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/domains/comments/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,GAGrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,oBAAoB,EACpB,UAAU,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/domains/comments/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,GAGrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,oBAAoB,EACpB,UAAU,GAGX,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAM7B,OAAO,EAAE,WAAW,EAAsB,MAAM,oBAAoB,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* What other plugins use to write and read comments (an agent runtime posting a reply, a summary, a proposal). They
|
|
3
3
|
* check their own rights; the project plugin keeps the rules of the thread: same issue, roots and replies, mentions
|
|
4
|
-
* of registered kinds only, and
|
|
4
|
+
* of registered kinds only, and the system's comments start no work.
|
|
5
5
|
*/
|
|
6
6
|
import type { DatabaseConnection } from '@nocobase/db';
|
|
7
7
|
import type { Attachment } from '../../../shared/attachments.js';
|
|
@@ -11,12 +11,17 @@ import type { Tx } from '../../kernel/tx.js';
|
|
|
11
11
|
export interface CommentWriteOptions {
|
|
12
12
|
/** Joins this transaction instead of opening one. */
|
|
13
13
|
readonly outer?: Tx;
|
|
14
|
-
/** False: the triggers are not told (they are told
|
|
14
|
+
/** False: the triggers are not told (they are never told of the system's comments). */
|
|
15
15
|
readonly trigger?: boolean;
|
|
16
16
|
/** The comment's kind; `comment` by default. */
|
|
17
17
|
readonly kind?: string;
|
|
18
18
|
/** What the writer wants to trace with the comment, such as `{ runId }`; never returned. */
|
|
19
19
|
readonly origin?: Readonly<Record<string, unknown>>;
|
|
20
|
+
/**
|
|
21
|
+
* The person the comment is written for, as the triggers hear it (`CommentChange.userId`): the person a run acted
|
|
22
|
+
* for, say. Their right to mention is not checked; the triggers check whom they may wake.
|
|
23
|
+
*/
|
|
24
|
+
readonly forUserId?: string;
|
|
20
25
|
}
|
|
21
26
|
export interface CommentWriter {
|
|
22
27
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ports.d.ts","sourceRoot":"","sources":["../../../../server/domains/comments/ports.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAE7C,MAAM,WAAW,mBAAmB;IAClC,qDAAqD;IACrD,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;IACpB,
|
|
1
|
+
{"version":3,"file":"ports.d.ts","sourceRoot":"","sources":["../../../../server/domains/comments/ports.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAE7C,MAAM,WAAW,mBAAmB;IAClC,qDAAqD;IACrD,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;IACpB,uFAAuF;IACvF,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,gDAAgD;IAChD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,4FAA4F;IAC5F,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACpD;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,IAAI,CACF,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE;QACL,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAClC,uEAAuE;QACvE,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;KAC5C,EACD,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC;QACT,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;QAC/B,QAAQ,CAAC,SAAS,EAAE,SAAS,UAAU,EAAE,CAAC;KAC3C,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,aAAa;IAC5B,yFAAyF;IACzF,IAAI,CACF,IAAI,EAAE,kBAAkB,EACxB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;QAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;KACzB,GACA,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;CAC5B;AAED,6FAA6F;AAC7F,MAAM,WAAW,kBAAkB;IACjC,UAAU,CACR,IAAI,EAAE,kBAAkB,EACxB,UAAU,EAAE,SAAS,MAAM,EAAE,GAC5B,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,UAAU,EAAE,CAAC,CAAC,CAAC;IACvD,sGAAsG;IACtG,MAAM,CACJ,EAAE,EAAE,EAAE,EACN,QAAQ,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;KAAE,EACxD,MAAM,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,EACvE,GAAG,EAAE,OAAO,GACX,OAAO,CAAC,SAAS,OAAO,EAAE,CAAC,CAAC;CAChC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import type { Auth } from '@nocobase/app-plugin-authentication';
|
|
1
2
|
import type { Hono } from 'hono';
|
|
2
3
|
import { type ViewerEnv } from '../../access/request.js';
|
|
3
4
|
import type { InvitationService } from './invitation.service.js';
|
|
4
5
|
/** `/api/projects/invitations`: list, invite several addresses, send again, revoke. */
|
|
5
|
-
export declare function createInvitationRoutes(invitations: InvitationService): Hono<ViewerEnv>;
|
|
6
|
+
export declare function createInvitationRoutes(invitations: InvitationService, authentication: Pick<Auth, 'isScopedSession'>): Hono<ViewerEnv>;
|
|
6
7
|
//# sourceMappingURL=invitation.routes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"invitation.routes.d.ts","sourceRoot":"","sources":["../../../../server/domains/invitations/invitation.routes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"invitation.routes.d.ts","sourceRoot":"","sources":["../../../../server/domains/invitations/invitation.routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qCAAqC,CAAC;AAWhE,OAAO,KAAK,EAAW,IAAI,EAAE,MAAM,MAAM,CAAC;AAI1C,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAWnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAKjE,uFAAuF;AACvF,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,iBAAiB,EAC9B,cAAc,EAAE,IAAI,CAAC,IAAI,EAAE,iBAAiB,CAAC,GAC5C,IAAI,CAAC,SAAS,CAAC,CA+HjB"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { apiErrorResponse, apiErrorResponses, apiValidator, cliRoute, dataResponse, describeRoute, emptyResponse, listResponse, } from '@nocobase/app-server/router';
|
|
2
|
+
import { forbidden } from '../../kernel/errors.js';
|
|
2
3
|
import { viewerOf } from '../../access/request.js';
|
|
3
4
|
import { boundedList, domainRouter, tags } from '../../kernel/http.js';
|
|
4
|
-
import { BoundedListMeta, CreateInvitationsBody, InvitationParams, InvitationResultSchema, InvitationResultsSchema, InvitationSchema, } from '../../routes/schemas.js';
|
|
5
|
+
import { BoundedListMeta, CreateInvitationsBody, InvitationParams, ResendInvitationQuery, InvitationResultSchema, InvitationResultsSchema, InvitationSchema, } from '../../routes/schemas.js';
|
|
5
6
|
const access = 'Needs `invite` on the `pm.members` settings item, or leading a project: a lead invites only into projects they lead and manages only their own invitations.';
|
|
6
7
|
/** `/api/projects/invitations`: list, invite several addresses, send again, revoke. */
|
|
7
|
-
export function createInvitationRoutes(invitations) {
|
|
8
|
+
export function createInvitationRoutes(invitations, authentication) {
|
|
8
9
|
const routes = domainRouter();
|
|
9
10
|
const origin = (url) => new URL(url).origin;
|
|
10
11
|
routes.get('/', describeRoute({
|
|
@@ -40,11 +41,15 @@ export function createInvitationRoutes(invitations) {
|
|
|
40
41
|
201: dataResponse(InvitationResultsSchema),
|
|
41
42
|
...apiErrorResponses,
|
|
42
43
|
},
|
|
43
|
-
}), apiValidator('json', CreateInvitationsBody), async (context) =>
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
44
|
+
}), apiValidator('json', CreateInvitationsBody), async (context) => {
|
|
45
|
+
const canReturnLink = await canShareLink(context, authentication);
|
|
46
|
+
const results = await invitations.create(viewerOf(context), context.req.valid('json'), origin(context.req.url));
|
|
47
|
+
return context.json({
|
|
48
|
+
data: {
|
|
49
|
+
results: results.map((result) => canReturnLink ? result : { ...result, inviteUrl: undefined }),
|
|
50
|
+
},
|
|
51
|
+
}, 201);
|
|
52
|
+
});
|
|
48
53
|
routes.post('/:invitationId/resend', describeRoute({
|
|
49
54
|
tags,
|
|
50
55
|
summary: 'Send an invitation again',
|
|
@@ -59,9 +64,16 @@ export function createInvitationRoutes(invitations) {
|
|
|
59
64
|
...apiErrorResponses,
|
|
60
65
|
404: apiErrorResponse(404),
|
|
61
66
|
},
|
|
62
|
-
}), apiValidator('param', InvitationParams), async (context) =>
|
|
63
|
-
|
|
64
|
-
|
|
67
|
+
}), apiValidator('param', InvitationParams), apiValidator('query', ResendInvitationQuery), async (context) => {
|
|
68
|
+
const sendEmail = context.req.valid('query').sendEmail !== 'false';
|
|
69
|
+
const canReturnLink = await canShareLink(context, authentication);
|
|
70
|
+
if (!sendEmail && !canReturnLink)
|
|
71
|
+
throw forbidden('Scoped credentials cannot retrieve invitation links.');
|
|
72
|
+
const result = await invitations.resend(viewerOf(context), context.req.valid('param').invitationId, origin(context.req.url), sendEmail);
|
|
73
|
+
return context.json({
|
|
74
|
+
data: canReturnLink ? result : { ...result, inviteUrl: undefined },
|
|
75
|
+
});
|
|
76
|
+
});
|
|
65
77
|
routes.delete('/:invitationId', describeRoute({
|
|
66
78
|
tags,
|
|
67
79
|
summary: 'Revoke an invitation',
|
|
@@ -83,4 +95,9 @@ export function createInvitationRoutes(invitations) {
|
|
|
83
95
|
});
|
|
84
96
|
return routes;
|
|
85
97
|
}
|
|
98
|
+
/** Scoped automation credentials remain email-only; people use the domain's invitation permissions. */
|
|
99
|
+
async function canShareLink(context, authentication) {
|
|
100
|
+
const auth = context.get('auth');
|
|
101
|
+
return (!!auth && !(await authentication.isScopedSession(auth, context.req.raw)));
|
|
102
|
+
}
|
|
86
103
|
//# sourceMappingURL=invitation.routes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"invitation.routes.js","sourceRoot":"","sources":["../../../../server/domains/invitations/invitation.routes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"invitation.routes.js","sourceRoot":"","sources":["../../../../server/domains/invitations/invitation.routes.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,7 +23,7 @@ export declare const INVITATION_DATA_KEY = "@nocobase/app-plugin-projects";
|
|
|
23
23
|
export interface InvitationService {
|
|
24
24
|
list(viewer: Viewer): Promise<Invitation[]>;
|
|
25
25
|
create(viewer: Viewer, input: CreateInvitationsRequest, origin: string): Promise<InvitationResult[]>;
|
|
26
|
-
resend(viewer: Viewer, id: string, origin: string): Promise<InvitationResult>;
|
|
26
|
+
resend(viewer: Viewer, id: string, origin: string, sendEmail?: boolean): Promise<InvitationResult>;
|
|
27
27
|
revoke(viewer: Viewer, id: string): Promise<void>;
|
|
28
28
|
/** An invitation was accepted: registered with the user management plugin's `onInvitationAccepted`. */
|
|
29
29
|
accepted(context: UserInvitationAcceptedContext): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"invitation.service.d.ts","sourceRoot":"","sources":["../../../../server/domains/invitations/invitation.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAGL,KAAK,6BAA6B,EAElC,KAAK,qBAAqB,EAC3B,MAAM,0CAA0C,CAAC;AAGlD,OAAO,KAAK,EACV,wBAAwB,EACxB,UAAU,EACV,gBAAgB,EACjB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAQpE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAQzD,+DAA+D;AAC/D,MAAM,MAAM,eAAe,GAAG,IAAI,CAChC,qBAAqB,EACnB,QAAQ,GACR,iBAAiB,GACjB,eAAe,GACf,kBAAkB,GAClB,kBAAkB,CACrB,CAAC;AAEF,8DAA8D;AAC9D,eAAO,MAAM,mBAAmB,kCAAkC,CAAC;AAMnE,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAC5C,MAAM,CACJ,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,wBAAwB,EAC/B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAC/B,MAAM,
|
|
1
|
+
{"version":3,"file":"invitation.service.d.ts","sourceRoot":"","sources":["../../../../server/domains/invitations/invitation.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAGL,KAAK,6BAA6B,EAElC,KAAK,qBAAqB,EAC3B,MAAM,0CAA0C,CAAC;AAGlD,OAAO,KAAK,EACV,wBAAwB,EACxB,UAAU,EACV,gBAAgB,EACjB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAQpE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAQzD,+DAA+D;AAC/D,MAAM,MAAM,eAAe,GAAG,IAAI,CAChC,qBAAqB,EACnB,QAAQ,GACR,iBAAiB,GACjB,eAAe,GACf,kBAAkB,GAClB,kBAAkB,CACrB,CAAC;AAEF,8DAA8D;AAC9D,eAAO,MAAM,mBAAmB,kCAAkC,CAAC;AAMnE,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAC5C,MAAM,CACJ,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,wBAAwB,EAC/B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAC/B,MAAM,CACJ,MAAM,EAAE,MAAM,EACd,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,OAAO,GAClB,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC7B,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD,uGAAuG;IACvG,QAAQ,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACjE;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAC;CACvC;AAgFD,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,cAAc,GACnB,iBAAiB,CAoInB"}
|
|
@@ -139,9 +139,25 @@ export function createInvitationService(deps) {
|
|
|
139
139
|
}
|
|
140
140
|
: sentResult(result));
|
|
141
141
|
},
|
|
142
|
-
async resend(viewer, id, origin) {
|
|
143
|
-
await managed(viewer, id);
|
|
144
|
-
|
|
142
|
+
async resend(viewer, id, origin, sendEmail = true) {
|
|
143
|
+
const invitation = await managed(viewer, id);
|
|
144
|
+
const own = invitation.invitedBy.id === viewer.userId;
|
|
145
|
+
if (!own && !sendEmail)
|
|
146
|
+
throw forbidden('Only the inviter can obtain an invitation link.');
|
|
147
|
+
if (own) {
|
|
148
|
+
const conn = deps.tx.read();
|
|
149
|
+
const projectIds = dataOf(invitation.data)?.projectIds ?? [];
|
|
150
|
+
const remaining = await projectNames(conn, projectIds);
|
|
151
|
+
if (projectIds.length > 0 && remaining.size === 0)
|
|
152
|
+
throw invalid('INVALID_PROJECT', 'The invited projects no longer exist.');
|
|
153
|
+
// Acceptance skips deleted projects too; every remaining project still needs current authorization.
|
|
154
|
+
await checkInviter(conn, viewer, projectIds.filter((projectId) => remaining.has(projectId)));
|
|
155
|
+
}
|
|
156
|
+
const result = sentResult(await fromUsers(() => deps.invitations.resendInvitation(id, {
|
|
157
|
+
origin,
|
|
158
|
+
sendEmail,
|
|
159
|
+
})));
|
|
160
|
+
return own ? result : { ...result, inviteUrl: undefined };
|
|
145
161
|
},
|
|
146
162
|
async revoke(viewer, id) {
|
|
147
163
|
await managed(viewer, id);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"invitation.service.js","sourceRoot":"","sources":["../../../../server/domains/invitations/invitation.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EACL,mBAAmB,GAKpB,MAAM,0CAA0C,CAAC;AAQlD,OAAO,EAAE,aAAa,EAAe,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EACL,WAAW,EACX,SAAS,EACT,OAAO,EACP,QAAQ,GACT,MAAM,wBAAwB,CAAC;AAIhC,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAY9B,8DAA8D;AAC9D,MAAM,CAAC,MAAM,mBAAmB,GAAG,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"invitation.service.js","sourceRoot":"","sources":["../../../../server/domains/invitations/invitation.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
export { createIssueService, type IssueDeps, type IssueService, type EventCause, type EventMove, type EventTarget, type IssueUpdateOutcome, } from './issue.service.js';
|
|
2
|
-
export { childCounts, findIssue, findIssueRow, findIssues, issuesOfProject, liveChildren, touchIssueActivity, updateIssue, } from './issue.store.js';
|
|
2
|
+
export { childCounts, findIssue, findIssueRow, findIssues, issuesOfProject, liveChildren, touchIssueActivity, unfinishedStagedChildren, updateIssue, } from './issue.store.js';
|
|
3
3
|
export { canSee, issueVisibleTo, managesIssue, requireEditor, requireVisible, requireVisible as requireVisibleIssue, } from './issue.access.js';
|
|
4
4
|
export type { EventActor } from './issue.events.js';
|
|
5
|
-
export { createIssueQueries, MATCHING_LIMIT, type IssueMatches, type IssueMatchScope, type IssueQueries, } from './issue.queries.js';
|
|
5
|
+
export { createIssueQueries, MATCHING_LIMIT, type IssueMatches, type IssueMatchScope, type IssueQueries, type IssueHierarchy, } from './issue.queries.js';
|
|
6
6
|
export { CONTEXT_COMMENT_LIMIT, createIssueContextProvider, type IssueContext, type IssueContextDirectory, type IssueContextFile, type IssueContextProvider, } from './issue.context.js';
|
|
7
7
|
export { createIssueRoutes } from './issue.routes.js';
|
|
8
8
|
export { createProjectIssues } from './issue.projects.js';
|
|
9
|
-
export { isTerminal,
|
|
9
|
+
export { isTerminal, noRelations, noTriggers, type CommentChange, type IssueChange, type IssueExtras, type IssueRelations, type IssueRules, type IssueTriggers, type StatusCatalog, type StatusService, } from './ports.js';
|
|
10
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/domains/issues/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,kBAAkB,GACxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,WAAW,EACX,SAAS,EACT,YAAY,EACZ,UAAU,EACV,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,WAAW,GACZ,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,MAAM,EACN,cAAc,EACd,YAAY,EACZ,aAAa,EACb,cAAc,EACd,cAAc,IAAI,mBAAmB,GACtC,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/domains/issues/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,kBAAkB,GACxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,WAAW,EACX,SAAS,EACT,YAAY,EACZ,UAAU,EACV,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,wBAAwB,EACxB,WAAW,GACZ,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,MAAM,EACN,cAAc,EACd,YAAY,EACZ,aAAa,EACb,cAAc,EACd,cAAc,IAAI,mBAAmB,GACtC,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,cAAc,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,qBAAqB,EACrB,0BAA0B,EAC1B,KAAK,YAAY,EACjB,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,GAC1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EACL,UAAU,EACV,WAAW,EACX,UAAU,EACV,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,aAAa,GACnB,MAAM,YAAY,CAAC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
export { createIssueService, } from './issue.service.js';
|
|
2
|
-
export { childCounts, findIssue, findIssueRow, findIssues, issuesOfProject, liveChildren, touchIssueActivity, updateIssue, } from './issue.store.js';
|
|
2
|
+
export { childCounts, findIssue, findIssueRow, findIssues, issuesOfProject, liveChildren, touchIssueActivity, unfinishedStagedChildren, updateIssue, } from './issue.store.js';
|
|
3
3
|
export { canSee, issueVisibleTo, managesIssue, requireEditor, requireVisible, requireVisible as requireVisibleIssue, } from './issue.access.js';
|
|
4
4
|
export { createIssueQueries, MATCHING_LIMIT, } from './issue.queries.js';
|
|
5
5
|
export { CONTEXT_COMMENT_LIMIT, createIssueContextProvider, } from './issue.context.js';
|
|
6
6
|
export { createIssueRoutes } from './issue.routes.js';
|
|
7
7
|
export { createProjectIssues } from './issue.projects.js';
|
|
8
|
-
export { isTerminal,
|
|
8
|
+
export { isTerminal, noRelations, noTriggers, } from './ports.js';
|
|
9
9
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/domains/issues/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,GAOnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,WAAW,EACX,SAAS,EACT,YAAY,EACZ,UAAU,EACV,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,WAAW,GACZ,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,MAAM,EACN,cAAc,EACd,YAAY,EACZ,aAAa,EACb,cAAc,EACd,cAAc,IAAI,mBAAmB,GACtC,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,kBAAkB,EAClB,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/domains/issues/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,GAOnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,WAAW,EACX,SAAS,EACT,YAAY,EACZ,UAAU,EACV,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,wBAAwB,EACxB,WAAW,GACZ,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,MAAM,EACN,cAAc,EACd,YAAY,EACZ,aAAa,EACb,cAAc,EACd,cAAc,IAAI,mBAAmB,GACtC,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,kBAAkB,EAClB,cAAc,GAKf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,qBAAqB,EACrB,0BAA0B,GAK3B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EACL,UAAU,EACV,WAAW,EACX,UAAU,GASX,MAAM,YAAY,CAAC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* What an executor of another kind needs to know about an issue to work on it: the issue,
|
|
3
|
-
* kind may move it, its owner, project and repositories, parent and sub-issues, the
|
|
4
|
-
* waiting for approval, and the newest comments. Plain data, read on the caller's connection (a claim's transaction,
|
|
2
|
+
* What an executor of another kind needs to know about an issue to work on it: the issue, the statuses and where the
|
|
3
|
+
* kind may move it, its owner, project and repositories, parent and sub-issues, its files, and the newest comments. Plain data, read on the caller's connection (a claim's transaction,
|
|
5
4
|
* say), with no permission of a person applied: the plugin that asks decides who may see it.
|
|
6
5
|
*/
|
|
7
6
|
import type { DatabaseConnection } from '@nocobase/db';
|
|
@@ -9,7 +8,7 @@ import type { IssueComment } from '../../../shared/comments.js';
|
|
|
9
8
|
import type { StatusCategory } from '../../../shared/issues.js';
|
|
10
9
|
import type { ProjectResourceBinding } from '../../../shared/projects.js';
|
|
11
10
|
import type { KindRegistry } from '../../kernel/kinds.js';
|
|
12
|
-
import type { IssueExtras,
|
|
11
|
+
import type { IssueExtras, StatusService } from './ports.js';
|
|
13
12
|
/** The newest comments an issue context carries. */
|
|
14
13
|
export declare const CONTEXT_COMMENT_LIMIT = 20;
|
|
15
14
|
export interface IssueContextStatus {
|
|
@@ -53,7 +52,7 @@ export interface IssueContext {
|
|
|
53
52
|
/** Markdown. */
|
|
54
53
|
readonly description: string;
|
|
55
54
|
readonly status: IssueContextStatus;
|
|
56
|
-
/** The statuses
|
|
55
|
+
/** The fixed statuses, in order. */
|
|
57
56
|
readonly statuses: readonly IssueContextStatus[];
|
|
58
57
|
/** The statuses the kind asked for may move the issue to from where it is. */
|
|
59
58
|
readonly allowedTransitions: readonly string[];
|
|
@@ -77,21 +76,6 @@ export interface IssueContext {
|
|
|
77
76
|
} | null;
|
|
78
77
|
readonly parent: IssueContextIssueRef | null;
|
|
79
78
|
readonly children: readonly IssueContextIssueRef[];
|
|
80
|
-
readonly checklist: {
|
|
81
|
-
readonly statusKey: string;
|
|
82
|
-
readonly complete: boolean;
|
|
83
|
-
readonly items: readonly {
|
|
84
|
-
readonly key: string;
|
|
85
|
-
readonly label: string;
|
|
86
|
-
readonly required: boolean;
|
|
87
|
-
readonly checked: boolean;
|
|
88
|
-
}[];
|
|
89
|
-
} | null;
|
|
90
|
-
readonly pendingApproval: {
|
|
91
|
-
readonly id: string;
|
|
92
|
-
readonly toStatus: string;
|
|
93
|
-
readonly requestedBy: string | null;
|
|
94
|
-
} | null;
|
|
95
79
|
/** The issue's own files, oldest first. */
|
|
96
80
|
readonly attachments: readonly IssueContextFile[];
|
|
97
81
|
/** The newest comments, oldest first; deleted ones left out. */
|
|
@@ -127,8 +111,8 @@ export interface IssueContextProvider {
|
|
|
127
111
|
}
|
|
128
112
|
export interface IssueContextDeps {
|
|
129
113
|
readonly kinds: KindRegistry;
|
|
130
|
-
readonly statuses:
|
|
131
|
-
readonly extras: () => Pick<IssueExtras, '
|
|
114
|
+
readonly statuses: Pick<StatusService, 'catalog'>;
|
|
115
|
+
readonly extras: () => Pick<IssueExtras, 'attachments'>;
|
|
132
116
|
readonly comments: (conn: DatabaseConnection, issueId: string) => Promise<IssueComment[]>;
|
|
133
117
|
}
|
|
134
118
|
export declare function issuePath(identifier: string): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issue.context.d.ts","sourceRoot":"","sources":["../../../../server/domains/issues/issue.context.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"issue.context.d.ts","sourceRoot":"","sources":["../../../../server/domains/issues/issue.context.ts"],"names":[],"mappings":"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"}
|