@nocobase/app-plugin-projects 0.0.0-stage → 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 +376 -0
- package/README.md +281 -2
- 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 +99 -0
- package/dist/client/api/client.d.ts.map +1 -0
- package/dist/client/api/client.js +246 -0
- package/dist/client/api/client.js.map +1 -0
- package/dist/client/api/keys.d.ts +32 -0
- package/dist/client/api/keys.d.ts.map +1 -0
- package/dist/client/api/keys.js +53 -0
- package/dist/client/api/keys.js.map +1 -0
- 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/data-table-column-header.d.ts +14 -0
- package/dist/client/components/data-table-column-header.d.ts.map +1 -0
- package/dist/client/components/data-table-column-header.js +39 -0
- package/dist/client/components/data-table-column-header.js.map +1 -0
- package/dist/client/components/data-table-pagination.d.ts +15 -0
- package/dist/client/components/data-table-pagination.d.ts.map +1 -0
- package/dist/client/components/data-table-pagination.js +41 -0
- package/dist/client/components/data-table-pagination.js.map +1 -0
- package/dist/client/components/data-table-view-options.d.ts +14 -0
- package/dist/client/components/data-table-view-options.d.ts.map +1 -0
- package/dist/client/components/data-table-view-options.js +18 -0
- package/dist/client/components/data-table-view-options.js.map +1 -0
- package/dist/client/components/data-table-virtual.d.ts +12 -0
- package/dist/client/components/data-table-virtual.d.ts.map +1 -0
- package/dist/client/components/data-table-virtual.js +38 -0
- package/dist/client/components/data-table-virtual.js.map +1 -0
- package/dist/client/components/data-table.d.ts +49 -0
- package/dist/client/components/data-table.d.ts.map +1 -0
- package/dist/client/components/data-table.js +56 -0
- package/dist/client/components/data-table.js.map +1 -0
- package/dist/client/components/date-picker.d.ts +44 -0
- package/dist/client/components/date-picker.d.ts.map +1 -0
- package/dist/client/components/date-picker.js +54 -0
- package/dist/client/components/date-picker.js.map +1 -0
- package/dist/client/components/page-container.d.ts +11 -0
- package/dist/client/components/page-container.d.ts.map +1 -0
- package/dist/client/components/page-container.js +13 -0
- package/dist/client/components/page-container.js.map +1 -0
- package/dist/client/components/page-header.d.ts +16 -0
- package/dist/client/components/page-header.d.ts.map +1 -0
- package/dist/client/components/page-header.js +10 -0
- package/dist/client/components/page-header.js.map +1 -0
- package/dist/client/components/pm-api-key-tag.d.ts +6 -0
- package/dist/client/components/pm-api-key-tag.d.ts.map +1 -0
- package/dist/client/components/pm-api-key-tag.js +10 -0
- package/dist/client/components/pm-api-key-tag.js.map +1 -0
- package/dist/client/components/pm-badges.d.ts +34 -0
- package/dist/client/components/pm-badges.d.ts.map +1 -0
- package/dist/client/components/pm-badges.js +46 -0
- package/dist/client/components/pm-badges.js.map +1 -0
- 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 +34 -0
- package/dist/client/components/pm-executor-select.d.ts.map +1 -0
- package/dist/client/components/pm-executor-select.js +66 -0
- package/dist/client/components/pm-executor-select.js.map +1 -0
- package/dist/client/components/pm-expandable-textarea.d.ts +7 -0
- package/dist/client/components/pm-expandable-textarea.d.ts.map +1 -0
- package/dist/client/components/pm-expandable-textarea.js +18 -0
- package/dist/client/components/pm-expandable-textarea.js.map +1 -0
- package/dist/client/components/pm-kind-icon.d.ts +7 -0
- package/dist/client/components/pm-kind-icon.d.ts.map +1 -0
- package/dist/client/components/pm-kind-icon.js +12 -0
- package/dist/client/components/pm-kind-icon.js.map +1 -0
- package/dist/client/components/pm-labels.d.ts +28 -0
- package/dist/client/components/pm-labels.d.ts.map +1 -0
- package/dist/client/components/pm-labels.js +32 -0
- package/dist/client/components/pm-labels.js.map +1 -0
- package/dist/client/components/pm-live.d.ts +14 -0
- package/dist/client/components/pm-live.d.ts.map +1 -0
- package/dist/client/components/pm-live.js +19 -0
- package/dist/client/components/pm-live.js.map +1 -0
- package/dist/client/components/pm-markdown-toc.d.ts +12 -0
- package/dist/client/components/pm-markdown-toc.d.ts.map +1 -0
- package/dist/client/components/pm-markdown-toc.js +47 -0
- package/dist/client/components/pm-markdown-toc.js.map +1 -0
- package/dist/client/components/pm-markdown.d.ts +15 -0
- package/dist/client/components/pm-markdown.d.ts.map +1 -0
- package/dist/client/components/pm-markdown.js +62 -0
- package/dist/client/components/pm-markdown.js.map +1 -0
- package/dist/client/components/pm-multi-select.d.ts +26 -0
- package/dist/client/components/pm-multi-select.d.ts.map +1 -0
- package/dist/client/components/pm-multi-select.js +48 -0
- package/dist/client/components/pm-multi-select.js.map +1 -0
- package/dist/client/components/pm-property-fields.d.ts +47 -0
- package/dist/client/components/pm-property-fields.d.ts.map +1 -0
- package/dist/client/components/pm-property-fields.js +74 -0
- package/dist/client/components/pm-property-fields.js.map +1 -0
- package/dist/client/components/pm-rich-text-editor.d.ts +53 -0
- package/dist/client/components/pm-rich-text-editor.d.ts.map +1 -0
- package/dist/client/components/pm-rich-text-editor.js +309 -0
- package/dist/client/components/pm-rich-text-editor.js.map +1 -0
- package/dist/client/components/pm-rich-text-extensions.d.ts +40 -0
- package/dist/client/components/pm-rich-text-extensions.d.ts.map +1 -0
- package/dist/client/components/pm-rich-text-extensions.js +178 -0
- package/dist/client/components/pm-rich-text-extensions.js.map +1 -0
- package/dist/client/components/pm-scroll-parent.d.ts +10 -0
- package/dist/client/components/pm-scroll-parent.d.ts.map +1 -0
- package/dist/client/components/pm-scroll-parent.js +19 -0
- package/dist/client/components/pm-scroll-parent.js.map +1 -0
- package/dist/client/components/pm-shortcut-keys.d.ts +16 -0
- package/dist/client/components/pm-shortcut-keys.d.ts.map +1 -0
- package/dist/client/components/pm-shortcut-keys.js +46 -0
- package/dist/client/components/pm-shortcut-keys.js.map +1 -0
- package/dist/client/components/pm-shortcuts.d.ts +21 -0
- package/dist/client/components/pm-shortcuts.d.ts.map +1 -0
- package/dist/client/components/pm-shortcuts.js +71 -0
- package/dist/client/components/pm-shortcuts.js.map +1 -0
- package/dist/client/components/pm-states.d.ts +31 -0
- package/dist/client/components/pm-states.d.ts.map +1 -0
- package/dist/client/components/pm-states.js +46 -0
- package/dist/client/components/pm-states.js.map +1 -0
- package/dist/client/components/pm-tag.d.ts +18 -0
- package/dist/client/components/pm-tag.d.ts.map +1 -0
- package/dist/client/components/pm-tag.js +14 -0
- package/dist/client/components/pm-tag.js.map +1 -0
- package/dist/client/components/pm-tones.d.ts +16 -0
- package/dist/client/components/pm-tones.d.ts.map +1 -0
- package/dist/client/components/pm-tones.js +26 -0
- package/dist/client/components/pm-tones.js.map +1 -0
- package/dist/client/components/route-child-page.d.ts +24 -0
- package/dist/client/components/route-child-page.d.ts.map +1 -0
- package/dist/client/components/route-child-page.js +46 -0
- package/dist/client/components/route-child-page.js.map +1 -0
- package/dist/client/components/route-dialog.d.ts +6 -0
- package/dist/client/components/route-dialog.d.ts.map +1 -0
- package/dist/client/components/route-dialog.js +7 -0
- package/dist/client/components/route-dialog.js.map +1 -0
- package/dist/client/components/route-drawer.d.ts +6 -0
- package/dist/client/components/route-drawer.d.ts.map +1 -0
- package/dist/client/components/route-drawer.js +7 -0
- package/dist/client/components/route-drawer.js.map +1 -0
- package/dist/client/components/route-overlay.d.ts +21 -0
- package/dist/client/components/route-overlay.d.ts.map +1 -0
- package/dist/client/components/route-overlay.js +87 -0
- package/dist/client/components/route-overlay.js.map +1 -0
- package/dist/client/components/ui/alert-dialog.d.ts +19 -0
- package/dist/client/components/ui/alert-dialog.d.ts.map +1 -0
- package/dist/client/components/ui/alert-dialog.js +42 -0
- package/dist/client/components/ui/alert-dialog.js.map +1 -0
- package/dist/client/components/ui/alert.d.ts +13 -0
- package/dist/client/components/ui/alert.d.ts.map +1 -0
- package/dist/client/components/ui/alert.js +31 -0
- package/dist/client/components/ui/alert.js.map +1 -0
- package/dist/client/components/ui/avatar.d.ts +12 -0
- package/dist/client/components/ui/avatar.d.ts.map +1 -0
- package/dist/client/components/ui/avatar.js +23 -0
- package/dist/client/components/ui/avatar.js.map +1 -0
- package/dist/client/components/ui/badge.d.ts +11 -0
- package/dist/client/components/ui/badge.d.ts.map +1 -0
- package/dist/client/components/ui/badge.js +37 -0
- package/dist/client/components/ui/badge.js.map +1 -0
- package/dist/client/components/ui/button-group.d.ts +8 -0
- package/dist/client/components/ui/button-group.d.ts.map +1 -0
- package/dist/client/components/ui/button-group.js +23 -0
- package/dist/client/components/ui/button-group.js.map +1 -0
- package/dist/client/components/ui/button.d.ts +12 -0
- package/dist/client/components/ui/button.d.ts.map +1 -0
- package/dist/client/components/ui/button.js +38 -0
- package/dist/client/components/ui/button.js.map +1 -0
- package/dist/client/components/ui/calendar.d.ts +11 -0
- package/dist/client/components/ui/calendar.d.ts.map +1 -0
- package/dist/client/components/ui/calendar.js +76 -0
- package/dist/client/components/ui/calendar.js.map +1 -0
- package/dist/client/components/ui/card.d.ts +12 -0
- package/dist/client/components/ui/card.d.ts.map +1 -0
- package/dist/client/components/ui/card.js +25 -0
- package/dist/client/components/ui/card.js.map +1 -0
- package/dist/client/components/ui/checkbox.d.ts +5 -0
- package/dist/client/components/ui/checkbox.d.ts.map +1 -0
- package/dist/client/components/ui/checkbox.js +9 -0
- package/dist/client/components/ui/checkbox.js.map +1 -0
- package/dist/client/components/ui/collapsible.d.ts +7 -0
- package/dist/client/components/ui/collapsible.d.ts.map +1 -0
- package/dist/client/components/ui/collapsible.js +13 -0
- package/dist/client/components/ui/collapsible.js.map +1 -0
- package/dist/client/components/ui/combobox.d.ts +25 -0
- package/dist/client/components/ui/combobox.d.ts.map +1 -0
- package/dist/client/components/ui/combobox.js +58 -0
- package/dist/client/components/ui/combobox.js.map +1 -0
- package/dist/client/components/ui/command.d.ts +20 -0
- package/dist/client/components/ui/command.d.ts.map +1 -0
- package/dist/client/components/ui/command.js +35 -0
- package/dist/client/components/ui/command.js.map +1 -0
- package/dist/client/components/ui/dialog.d.ts +18 -0
- package/dist/client/components/ui/dialog.d.ts.map +1 -0
- package/dist/client/components/ui/dialog.js +40 -0
- package/dist/client/components/ui/dialog.js.map +1 -0
- package/dist/client/components/ui/dropdown-menu.d.ts +30 -0
- package/dist/client/components/ui/dropdown-menu.d.ts.map +1 -0
- package/dist/client/components/ui/dropdown-menu.js +51 -0
- package/dist/client/components/ui/dropdown-menu.js.map +1 -0
- package/dist/client/components/ui/empty.d.ts +15 -0
- package/dist/client/components/ui/empty.d.ts.map +1 -0
- package/dist/client/components/ui/empty.js +37 -0
- package/dist/client/components/ui/empty.js.map +1 -0
- package/dist/client/components/ui/field.d.ts +28 -0
- package/dist/client/components/ui/field.d.ts.map +1 -0
- package/dist/client/components/ui/field.js +71 -0
- package/dist/client/components/ui/field.js.map +1 -0
- package/dist/client/components/ui/input-group.d.ts +22 -0
- package/dist/client/components/ui/input-group.d.ts.map +1 -0
- package/dist/client/components/ui/input-group.js +63 -0
- package/dist/client/components/ui/input-group.js.map +1 -0
- package/dist/client/components/ui/input.d.ts +4 -0
- package/dist/client/components/ui/input.d.ts.map +1 -0
- package/dist/client/components/ui/input.js +8 -0
- package/dist/client/components/ui/input.js.map +1 -0
- package/dist/client/components/ui/kbd.d.ts +5 -0
- package/dist/client/components/ui/kbd.d.ts.map +1 -0
- package/dist/client/components/ui/kbd.js +10 -0
- package/dist/client/components/ui/kbd.js.map +1 -0
- package/dist/client/components/ui/label.d.ts +4 -0
- package/dist/client/components/ui/label.d.ts.map +1 -0
- package/dist/client/components/ui/label.js +7 -0
- package/dist/client/components/ui/label.js.map +1 -0
- package/dist/client/components/ui/popover.d.ts +10 -0
- package/dist/client/components/ui/popover.d.ts.map +1 -0
- package/dist/client/components/ui/popover.js +23 -0
- package/dist/client/components/ui/popover.js.map +1 -0
- package/dist/client/components/ui/progress.d.ts +9 -0
- package/dist/client/components/ui/progress.d.ts.map +1 -0
- package/dist/client/components/ui/progress.js +20 -0
- package/dist/client/components/ui/progress.js.map +1 -0
- 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/components/ui/select.d.ts +16 -0
- package/dist/client/components/ui/select.d.ts.map +1 -0
- package/dist/client/components/ui/select.js +34 -0
- package/dist/client/components/ui/select.js.map +1 -0
- package/dist/client/components/ui/separator.d.ts +5 -0
- package/dist/client/components/ui/separator.d.ts.map +1 -0
- package/dist/client/components/ui/separator.js +8 -0
- package/dist/client/components/ui/separator.js.map +1 -0
- package/dist/client/components/ui/skeleton.d.ts +4 -0
- package/dist/client/components/ui/skeleton.d.ts.map +1 -0
- package/dist/client/components/ui/skeleton.js +7 -0
- package/dist/client/components/ui/skeleton.js.map +1 -0
- package/dist/client/components/ui/spinner.d.ts +4 -0
- package/dist/client/components/ui/spinner.d.ts.map +1 -0
- package/dist/client/components/ui/spinner.js +11 -0
- package/dist/client/components/ui/spinner.js.map +1 -0
- package/dist/client/components/ui/switch.d.ts +7 -0
- package/dist/client/components/ui/switch.d.ts.map +1 -0
- package/dist/client/components/ui/switch.js +8 -0
- package/dist/client/components/ui/switch.js.map +1 -0
- package/dist/client/components/ui/table.d.ts +11 -0
- package/dist/client/components/ui/table.d.ts.map +1 -0
- package/dist/client/components/ui/table.js +28 -0
- package/dist/client/components/ui/table.js.map +1 -0
- package/dist/client/components/ui/tabs.d.ts +14 -0
- package/dist/client/components/ui/tabs.d.ts.map +1 -0
- package/dist/client/components/ui/tabs.js +32 -0
- package/dist/client/components/ui/tabs.js.map +1 -0
- package/dist/client/components/ui/textarea.d.ts +4 -0
- package/dist/client/components/ui/textarea.d.ts.map +1 -0
- package/dist/client/components/ui/textarea.js +7 -0
- package/dist/client/components/ui/textarea.js.map +1 -0
- package/dist/client/components/ui/toggle-group.d.ts +12 -0
- package/dist/client/components/ui/toggle-group.d.ts.map +1 -0
- package/dist/client/components/ui/toggle-group.js +24 -0
- package/dist/client/components/ui/toggle-group.js.map +1 -0
- package/dist/client/components/ui/toggle.d.ts +12 -0
- package/dist/client/components/ui/toggle.d.ts.map +1 -0
- package/dist/client/components/ui/toggle.js +29 -0
- package/dist/client/components/ui/toggle.js.map +1 -0
- package/dist/client/components/ui/tooltip.d.ts +8 -0
- package/dist/client/components/ui/tooltip.d.ts.map +1 -0
- package/dist/client/components/ui/tooltip.js +17 -0
- package/dist/client/components/ui/tooltip.js.map +1 -0
- package/dist/client/components/unsaved-changes.d.ts +8 -0
- package/dist/client/components/unsaved-changes.d.ts.map +1 -0
- package/dist/client/components/unsaved-changes.js +19 -0
- package/dist/client/components/unsaved-changes.js.map +1 -0
- package/dist/client/components/use-default-tab.d.ts +7 -0
- package/dist/client/components/use-default-tab.d.ts.map +1 -0
- package/dist/client/components/use-default-tab.js +13 -0
- package/dist/client/components/use-default-tab.js.map +1 -0
- package/dist/client/components/use-new-issue-shortcut.d.ts +12 -0
- package/dist/client/components/use-new-issue-shortcut.d.ts.map +1 -0
- package/dist/client/components/use-new-issue-shortcut.js +43 -0
- package/dist/client/components/use-new-issue-shortcut.js.map +1 -0
- package/dist/client/components/use-route-overlay.d.ts +15 -0
- package/dist/client/components/use-route-overlay.d.ts.map +1 -0
- package/dist/client/components/use-route-overlay.js +15 -0
- package/dist/client/components/use-route-overlay.js.map +1 -0
- package/dist/client/config.d.ts +4 -0
- package/dist/client/config.d.ts.map +1 -0
- package/dist/client/config.js +12 -0
- package/dist/client/config.js.map +1 -0
- package/dist/client/hooks/use-api-key-actors.d.ts +7 -0
- package/dist/client/hooks/use-api-key-actors.d.ts.map +1 -0
- package/dist/client/hooks/use-api-key-actors.js +18 -0
- package/dist/client/hooks/use-api-key-actors.js.map +1 -0
- package/dist/client/hooks/use-attachment-uploads.d.ts +33 -0
- package/dist/client/hooks/use-attachment-uploads.d.ts.map +1 -0
- package/dist/client/hooks/use-attachment-uploads.js +118 -0
- package/dist/client/hooks/use-attachment-uploads.js.map +1 -0
- package/dist/client/hooks/use-notify.d.ts +17 -0
- package/dist/client/hooks/use-notify.d.ts.map +1 -0
- package/dist/client/hooks/use-notify.js +44 -0
- package/dist/client/hooks/use-notify.js.map +1 -0
- package/dist/client/hooks/use-pm-api.d.ts +4 -0
- package/dist/client/hooks/use-pm-api.d.ts.map +1 -0
- package/dist/client/hooks/use-pm-api.js +9 -0
- package/dist/client/hooks/use-pm-api.js.map +1 -0
- package/dist/client/hooks/use-viewer.d.ts +7 -0
- package/dist/client/hooks/use-viewer.d.ts.map +1 -0
- package/dist/client/hooks/use-viewer.js +18 -0
- package/dist/client/hooks/use-viewer.js.map +1 -0
- package/dist/client/index.d.ts +2 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +4 -0
- package/dist/client/index.js.map +1 -0
- package/dist/client/issues.d.ts +35 -0
- package/dist/client/issues.d.ts.map +1 -0
- package/dist/client/issues.js +48 -0
- package/dist/client/issues.js.map +1 -0
- 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/page-context.d.ts +75 -0
- package/dist/client/kit/page-context.d.ts.map +1 -0
- package/dist/client/kit/page-context.js +92 -0
- package/dist/client/kit/page-context.js.map +1 -0
- package/dist/client/kit/page-slots.d.ts +13 -0
- package/dist/client/kit/page-slots.d.ts.map +1 -0
- package/dist/client/kit/page-slots.js +19 -0
- package/dist/client/kit/page-slots.js.map +1 -0
- package/dist/client/kit/plans/api.d.ts +46 -0
- package/dist/client/kit/plans/api.d.ts.map +1 -0
- package/dist/client/kit/plans/api.js +137 -0
- package/dist/client/kit/plans/api.js.map +1 -0
- package/dist/client/kit/plans/lookup.d.ts +27 -0
- package/dist/client/kit/plans/lookup.d.ts.map +1 -0
- package/dist/client/kit/plans/lookup.js +136 -0
- package/dist/client/kit/plans/lookup.js.map +1 -0
- package/dist/client/kit/plans/model.d.ts +94 -0
- package/dist/client/kit/plans/model.d.ts.map +1 -0
- package/dist/client/kit/plans/model.js +307 -0
- package/dist/client/kit/plans/model.js.map +1 -0
- package/dist/client/kit/plans/plan-card.d.ts +29 -0
- package/dist/client/kit/plans/plan-card.d.ts.map +1 -0
- package/dist/client/kit/plans/plan-card.js +105 -0
- package/dist/client/kit/plans/plan-card.js.map +1 -0
- package/dist/client/kit/plans/plan-confirm.d.ts +15 -0
- package/dist/client/kit/plans/plan-confirm.d.ts.map +1 -0
- package/dist/client/kit/plans/plan-confirm.js +39 -0
- package/dist/client/kit/plans/plan-confirm.js.map +1 -0
- package/dist/client/kit/plans/plan-editor.d.ts +42 -0
- package/dist/client/kit/plans/plan-editor.d.ts.map +1 -0
- package/dist/client/kit/plans/plan-editor.js +270 -0
- package/dist/client/kit/plans/plan-editor.js.map +1 -0
- package/dist/client/kit/plans/plan-list-item.d.ts +18 -0
- package/dist/client/kit/plans/plan-list-item.d.ts.map +1 -0
- package/dist/client/kit/plans/plan-list-item.js +23 -0
- package/dist/client/kit/plans/plan-list-item.js.map +1 -0
- package/dist/client/kit/plans/plan-row.d.ts +21 -0
- package/dist/client/kit/plans/plan-row.d.ts.map +1 -0
- package/dist/client/kit/plans/plan-row.js +109 -0
- package/dist/client/kit/plans/plan-row.js.map +1 -0
- package/dist/client/kit/plans/plan-text.d.ts +52 -0
- package/dist/client/kit/plans/plan-text.d.ts.map +1 -0
- package/dist/client/kit/plans/plan-text.js +96 -0
- package/dist/client/kit/plans/plan-text.js.map +1 -0
- package/dist/client/kit/plans/plan-undo.d.ts +9 -0
- package/dist/client/kit/plans/plan-undo.d.ts.map +1 -0
- package/dist/client/kit/plans/plan-undo.js +67 -0
- package/dist/client/kit/plans/plan-undo.js.map +1 -0
- package/dist/client/kit/plans/tones.d.ts +8 -0
- package/dist/client/kit/plans/tones.d.ts.map +1 -0
- package/dist/client/kit/plans/tones.js +18 -0
- package/dist/client/kit/plans/tones.js.map +1 -0
- package/dist/client/kit/plans/use-plan.d.ts +24 -0
- package/dist/client/kit/plans/use-plan.d.ts.map +1 -0
- package/dist/client/kit/plans/use-plan.js +102 -0
- package/dist/client/kit/plans/use-plan.js.map +1 -0
- package/dist/client/kit.d.ts +68 -0
- package/dist/client/kit.d.ts.map +1 -0
- package/dist/client/kit.js +74 -0
- package/dist/client/kit.js.map +1 -0
- package/dist/client/lib/format.d.ts +22 -0
- package/dist/client/lib/format.d.ts.map +1 -0
- package/dist/client/lib/format.js +103 -0
- package/dist/client/lib/format.js.map +1 -0
- 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/kind-order.d.ts +4 -0
- package/dist/client/lib/kind-order.d.ts.map +1 -0
- package/dist/client/lib/kind-order.js +11 -0
- package/dist/client/lib/kind-order.js.map +1 -0
- package/dist/client/lib/kinds.d.ts +13 -0
- package/dist/client/lib/kinds.d.ts.map +1 -0
- package/dist/client/lib/kinds.js +69 -0
- package/dist/client/lib/kinds.js.map +1 -0
- package/dist/client/lib/mentions.d.ts +25 -0
- package/dist/client/lib/mentions.d.ts.map +1 -0
- package/dist/client/lib/mentions.js +33 -0
- package/dist/client/lib/mentions.js.map +1 -0
- package/dist/client/lib/permissions.d.ts +39 -0
- package/dist/client/lib/permissions.d.ts.map +1 -0
- package/dist/client/lib/permissions.js +73 -0
- package/dist/client/lib/permissions.js.map +1 -0
- package/dist/client/lib/principal-name.d.ts +7 -0
- package/dist/client/lib/principal-name.d.ts.map +1 -0
- package/dist/client/lib/principal-name.js +10 -0
- package/dist/client/lib/principal-name.js.map +1 -0
- package/dist/client/lib/remark-cjk-autolink.d.ts +24 -0
- package/dist/client/lib/remark-cjk-autolink.d.ts.map +1 -0
- package/dist/client/lib/remark-cjk-autolink.js +118 -0
- package/dist/client/lib/remark-cjk-autolink.js.map +1 -0
- 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 +22 -0
- package/dist/client/lib/status.d.ts.map +1 -0
- package/dist/client/lib/status.js +53 -0
- package/dist/client/lib/status.js.map +1 -0
- package/dist/client/locales/en-US.d.ts +898 -0
- package/dist/client/locales/en-US.d.ts.map +1 -0
- package/dist/client/locales/en-US.js +893 -0
- package/dist/client/locales/en-US.js.map +1 -0
- package/dist/client/locales/index.d.ts +4 -0
- package/dist/client/locales/index.d.ts.map +1 -0
- package/dist/client/locales/index.js +7 -0
- package/dist/client/locales/index.js.map +1 -0
- package/dist/client/locales/plans.en-US.d.ts +270 -0
- package/dist/client/locales/plans.en-US.d.ts.map +1 -0
- package/dist/client/locales/plans.en-US.js +267 -0
- package/dist/client/locales/plans.en-US.js.map +1 -0
- package/dist/client/locales/plans.zh-CN.d.ts +5 -0
- package/dist/client/locales/plans.zh-CN.d.ts.map +1 -0
- package/dist/client/locales/plans.zh-CN.js +267 -0
- package/dist/client/locales/plans.zh-CN.js.map +1 -0
- package/dist/client/locales/zh-CN.d.ts +4 -0
- package/dist/client/locales/zh-CN.d.ts.map +1 -0
- package/dist/client/locales/zh-CN.js +860 -0
- package/dist/client/locales/zh-CN.js.map +1 -0
- package/dist/client/pages/config/general.d.ts +8 -0
- package/dist/client/pages/config/general.d.ts.map +1 -0
- package/dist/client/pages/config/general.js +65 -0
- package/dist/client/pages/config/general.js.map +1 -0
- package/dist/client/pages/config/labels/create-label-form.d.ts +11 -0
- package/dist/client/pages/config/labels/create-label-form.d.ts.map +1 -0
- package/dist/client/pages/config/labels/create-label-form.js +25 -0
- package/dist/client/pages/config/labels/create-label-form.js.map +1 -0
- package/dist/client/pages/config/labels/label-row.d.ts +13 -0
- package/dist/client/pages/config/labels/label-row.d.ts.map +1 -0
- package/dist/client/pages/config/labels/label-row.js +42 -0
- package/dist/client/pages/config/labels/label-row.js.map +1 -0
- package/dist/client/pages/config/labels.d.ts +7 -0
- package/dist/client/pages/config/labels.d.ts.map +1 -0
- package/dist/client/pages/config/labels.js +70 -0
- package/dist/client/pages/config/labels.js.map +1 -0
- package/dist/client/pages/config/members/emails.d.ts +4 -0
- package/dist/client/pages/config/members/emails.d.ts.map +1 -0
- package/dist/client/pages/config/members/emails.js +15 -0
- package/dist/client/pages/config/members/emails.js.map +1 -0
- package/dist/client/pages/config/members/invitations-section.d.ts +7 -0
- package/dist/client/pages/config/members/invitations-section.d.ts.map +1 -0
- package/dist/client/pages/config/members/invitations-section.js +140 -0
- package/dist/client/pages/config/members/invitations-section.js.map +1 -0
- package/dist/client/pages/config/members/invite-dialog.d.ts +24 -0
- package/dist/client/pages/config/members/invite-dialog.d.ts.map +1 -0
- package/dist/client/pages/config/members/invite-dialog.js +126 -0
- package/dist/client/pages/config/members/invite-dialog.js.map +1 -0
- package/dist/client/pages/config/section-heading.d.ts +9 -0
- package/dist/client/pages/config/section-heading.d.ts.map +1 -0
- package/dist/client/pages/config/section-heading.js +6 -0
- package/dist/client/pages/config/section-heading.js.map +1 -0
- package/dist/client/pages/config/settings-page-header.d.ts +13 -0
- package/dist/client/pages/config/settings-page-header.d.ts.map +1 -0
- package/dist/client/pages/config/settings-page-header.js +14 -0
- package/dist/client/pages/config/settings-page-header.js.map +1 -0
- package/dist/client/pages/intake/intake-ai-progress.d.ts +12 -0
- package/dist/client/pages/intake/intake-ai-progress.d.ts.map +1 -0
- package/dist/client/pages/intake/intake-ai-progress.js +47 -0
- package/dist/client/pages/intake/intake-ai-progress.js.map +1 -0
- package/dist/client/pages/intake/intake-files.d.ts +9 -0
- package/dist/client/pages/intake/intake-files.d.ts.map +1 -0
- package/dist/client/pages/intake/intake-files.js +68 -0
- package/dist/client/pages/intake/intake-files.js.map +1 -0
- package/dist/client/pages/intake/intake-panel.d.ts +27 -0
- package/dist/client/pages/intake/intake-panel.d.ts.map +1 -0
- package/dist/client/pages/intake/intake-panel.js +338 -0
- package/dist/client/pages/intake/intake-panel.js.map +1 -0
- package/dist/client/pages/intake/intake-revise.d.ts +25 -0
- package/dist/client/pages/intake/intake-revise.d.ts.map +1 -0
- package/dist/client/pages/intake/intake-revise.js +44 -0
- package/dist/client/pages/intake/intake-revise.js.map +1 -0
- package/dist/client/pages/intake/invalid-draft.d.ts +10 -0
- package/dist/client/pages/intake/invalid-draft.d.ts.map +1 -0
- package/dist/client/pages/intake/invalid-draft.js +28 -0
- package/dist/client/pages/intake/invalid-draft.js.map +1 -0
- package/dist/client/pages/intake/use-intake-ai.d.ts +13 -0
- package/dist/client/pages/intake/use-intake-ai.d.ts.map +1 -0
- package/dist/client/pages/intake/use-intake-ai.js +37 -0
- package/dist/client/pages/intake/use-intake-ai.js.map +1 -0
- package/dist/client/pages/intake/use-intake-breakdown.d.ts +15 -0
- package/dist/client/pages/intake/use-intake-breakdown.d.ts.map +1 -0
- package/dist/client/pages/intake/use-intake-breakdown.js +48 -0
- package/dist/client/pages/intake/use-intake-breakdown.js.map +1 -0
- package/dist/client/pages/intake/use-intake-uploads.d.ts +25 -0
- package/dist/client/pages/intake/use-intake-uploads.d.ts.map +1 -0
- package/dist/client/pages/intake/use-intake-uploads.js +71 -0
- package/dist/client/pages/intake/use-intake-uploads.js.map +1 -0
- package/dist/client/pages/issues/board/board-model.d.ts +39 -0
- package/dist/client/pages/issues/board/board-model.d.ts.map +1 -0
- package/dist/client/pages/issues/board/board-model.js +59 -0
- package/dist/client/pages/issues/board/board-model.js.map +1 -0
- package/dist/client/pages/issues/board/use-board-move.d.ts +14 -0
- package/dist/client/pages/issues/board/use-board-move.d.ts.map +1 -0
- package/dist/client/pages/issues/board/use-board-move.js +71 -0
- package/dist/client/pages/issues/board/use-board-move.js.map +1 -0
- package/dist/client/pages/issues/detail/comment-cache.d.ts +10 -0
- package/dist/client/pages/issues/detail/comment-cache.d.ts.map +1 -0
- package/dist/client/pages/issues/detail/comment-cache.js +67 -0
- package/dist/client/pages/issues/detail/comment-cache.js.map +1 -0
- package/dist/client/pages/issues/detail/new-subtask.d.ts +13 -0
- package/dist/client/pages/issues/detail/new-subtask.d.ts.map +1 -0
- package/dist/client/pages/issues/detail/new-subtask.js +183 -0
- package/dist/client/pages/issues/detail/new-subtask.js.map +1 -0
- package/dist/client/pages/issues/detail/reaction-model.d.ts +11 -0
- package/dist/client/pages/issues/detail/reaction-model.d.ts.map +1 -0
- package/dist/client/pages/issues/detail/reaction-model.js +41 -0
- package/dist/client/pages/issues/detail/reaction-model.js.map +1 -0
- package/dist/client/pages/issues/detail/subtask-model.d.ts +14 -0
- package/dist/client/pages/issues/detail/subtask-model.d.ts.map +1 -0
- package/dist/client/pages/issues/detail/subtask-model.js +25 -0
- package/dist/client/pages/issues/detail/subtask-model.js.map +1 -0
- package/dist/client/pages/issues/detail/timeline.d.ts +45 -0
- package/dist/client/pages/issues/detail/timeline.d.ts.map +1 -0
- package/dist/client/pages/issues/detail/timeline.js +71 -0
- package/dist/client/pages/issues/detail/timeline.js.map +1 -0
- package/dist/client/pages/issues/detail/use-author-label.d.ts +4 -0
- package/dist/client/pages/issues/detail/use-author-label.d.ts.map +1 -0
- package/dist/client/pages/issues/detail/use-author-label.js +14 -0
- package/dist/client/pages/issues/detail/use-author-label.js.map +1 -0
- package/dist/client/pages/issues/detail/use-confirmed-update.d.ts +21 -0
- package/dist/client/pages/issues/detail/use-confirmed-update.d.ts.map +1 -0
- package/dist/client/pages/issues/detail/use-confirmed-update.js +16 -0
- package/dist/client/pages/issues/detail/use-confirmed-update.js.map +1 -0
- package/dist/client/pages/issues/detail/use-issue-activity.d.ts +50 -0
- package/dist/client/pages/issues/detail/use-issue-activity.d.ts.map +1 -0
- package/dist/client/pages/issues/detail/use-issue-activity.js +156 -0
- package/dist/client/pages/issues/detail/use-issue-activity.js.map +1 -0
- package/dist/client/pages/issues/detail/use-issue-page.d.ts +29 -0
- package/dist/client/pages/issues/detail/use-issue-page.d.ts.map +1 -0
- package/dist/client/pages/issues/detail/use-issue-page.js +118 -0
- package/dist/client/pages/issues/detail/use-issue-page.js.map +1 -0
- package/dist/client/pages/issues/detail/use-issue-update.d.ts +12 -0
- package/dist/client/pages/issues/detail/use-issue-update.d.ts.map +1 -0
- package/dist/client/pages/issues/detail/use-issue-update.js +53 -0
- package/dist/client/pages/issues/detail/use-issue-update.js.map +1 -0
- package/dist/client/pages/issues/detail/use-older-activities.d.ts +14 -0
- package/dist/client/pages/issues/detail/use-older-activities.d.ts.map +1 -0
- package/dist/client/pages/issues/detail/use-older-activities.js +35 -0
- package/dist/client/pages/issues/detail/use-older-activities.js.map +1 -0
- package/dist/client/pages/issues/detail/use-older-threads.d.ts +13 -0
- package/dist/client/pages/issues/detail/use-older-threads.d.ts.map +1 -0
- package/dist/client/pages/issues/detail/use-older-threads.js +33 -0
- package/dist/client/pages/issues/detail/use-older-threads.js.map +1 -0
- package/dist/client/pages/issues/filters.d.ts +39 -0
- package/dist/client/pages/issues/filters.d.ts.map +1 -0
- package/dist/client/pages/issues/filters.js +121 -0
- package/dist/client/pages/issues/filters.js.map +1 -0
- package/dist/client/pages/issues/new-issue-button.d.ts +14 -0
- package/dist/client/pages/issues/new-issue-button.d.ts.map +1 -0
- package/dist/client/pages/issues/new-issue-button.js +23 -0
- package/dist/client/pages/issues/new-issue-button.js.map +1 -0
- package/dist/client/pages/issues/new-issue-form.d.ts +25 -0
- package/dist/client/pages/issues/new-issue-form.d.ts.map +1 -0
- package/dist/client/pages/issues/new-issue-form.js +193 -0
- package/dist/client/pages/issues/new-issue-form.js.map +1 -0
- package/dist/client/pages/issues/new.d.ts +13 -0
- package/dist/client/pages/issues/new.d.ts.map +1 -0
- package/dist/client/pages/issues/new.js +96 -0
- package/dist/client/pages/issues/new.js.map +1 -0
- package/dist/client/pages/issues/use-executor-options.d.ts +10 -0
- package/dist/client/pages/issues/use-executor-options.d.ts.map +1 -0
- package/dist/client/pages/issues/use-executor-options.js +23 -0
- package/dist/client/pages/issues/use-executor-options.js.map +1 -0
- package/dist/client/pages/issues/use-issue-pages.d.ts +32 -0
- package/dist/client/pages/issues/use-issue-pages.d.ts.map +1 -0
- package/dist/client/pages/issues/use-issue-pages.js +107 -0
- package/dist/client/pages/issues/use-issue-pages.js.map +1 -0
- package/dist/client/pages/issues/use-mention-candidates.d.ts +9 -0
- package/dist/client/pages/issues/use-mention-candidates.d.ts.map +1 -0
- package/dist/client/pages/issues/use-mention-candidates.js +48 -0
- package/dist/client/pages/issues/use-mention-candidates.js.map +1 -0
- package/dist/client/pages/issues/use-preset-project.d.ts +6 -0
- package/dist/client/pages/issues/use-preset-project.d.ts.map +1 -0
- package/dist/client/pages/issues/use-preset-project.js +11 -0
- package/dist/client/pages/issues/use-preset-project.js.map +1 -0
- package/dist/client/pages/issues/use-url-search.d.ts +22 -0
- package/dist/client/pages/issues/use-url-search.d.ts.map +1 -0
- package/dist/client/pages/issues/use-url-search.js +70 -0
- package/dist/client/pages/issues/use-url-search.js.map +1 -0
- package/dist/client/pages/my-issues/my-issues-model.d.ts +7 -0
- package/dist/client/pages/my-issues/my-issues-model.d.ts.map +1 -0
- package/dist/client/pages/my-issues/my-issues-model.js +8 -0
- package/dist/client/pages/my-issues/my-issues-model.js.map +1 -0
- package/dist/client/pages/plans/detail.d.ts +7 -0
- package/dist/client/pages/plans/detail.d.ts.map +1 -0
- package/dist/client/pages/plans/detail.js +43 -0
- package/dist/client/pages/plans/detail.js.map +1 -0
- package/dist/client/pages/projects/columns.d.ts +8 -0
- package/dist/client/pages/projects/columns.d.ts.map +1 -0
- package/dist/client/pages/projects/columns.js +75 -0
- package/dist/client/pages/projects/columns.js.map +1 -0
- package/dist/client/pages/projects/detail/resource-rules.d.ts +13 -0
- package/dist/client/pages/projects/detail/resource-rules.d.ts.map +1 -0
- package/dist/client/pages/projects/detail/resource-rules.js +24 -0
- package/dist/client/pages/projects/detail/resource-rules.js.map +1 -0
- package/dist/client/pages/projects/detail/use-project-page.d.ts +64 -0
- package/dist/client/pages/projects/detail/use-project-page.d.ts.map +1 -0
- package/dist/client/pages/projects/detail/use-project-page.js +197 -0
- package/dist/client/pages/projects/detail/use-project-page.js.map +1 -0
- package/dist/client/pages/projects/index.d.ts +8 -0
- package/dist/client/pages/projects/index.d.ts.map +1 -0
- package/dist/client/pages/projects/index.js +50 -0
- package/dist/client/pages/projects/index.js.map +1 -0
- package/dist/client/pages/projects/new.d.ts +4 -0
- package/dist/client/pages/projects/new.d.ts.map +1 -0
- package/dist/client/pages/projects/new.js +118 -0
- package/dist/client/pages/projects/new.js.map +1 -0
- package/dist/client/pages/projects/progress.d.ts +25 -0
- package/dist/client/pages/projects/progress.d.ts.map +1 -0
- package/dist/client/pages/projects/progress.js +50 -0
- package/dist/client/pages/projects/progress.js.map +1 -0
- package/dist/client/pages/projects/project-badges.d.ts +14 -0
- package/dist/client/pages/projects/project-badges.d.ts.map +1 -0
- package/dist/client/pages/projects/project-badges.js +15 -0
- package/dist/client/pages/projects/project-badges.js.map +1 -0
- package/dist/client/pages.d.ts +24 -0
- package/dist/client/pages.d.ts.map +1 -0
- package/dist/client/pages.js +34 -0
- package/dist/client/pages.js.map +1 -0
- package/dist/client/plan-model.d.ts +9 -0
- package/dist/client/plan-model.d.ts.map +1 -0
- package/dist/client/plan-model.js +9 -0
- package/dist/client/plan-model.js.map +1 -0
- package/dist/client/plugin.d.ts +14 -0
- package/dist/client/plugin.d.ts.map +1 -0
- package/dist/client/plugin.js +19 -0
- package/dist/client/plugin.js.map +1 -0
- package/dist/client/projects.d.ts +12 -0
- package/dist/client/projects.d.ts.map +1 -0
- package/dist/client/projects.js +12 -0
- package/dist/client/projects.js.map +1 -0
- package/dist/client/providers/query-provider.d.ts +4 -0
- package/dist/client/providers/query-provider.d.ts.map +1 -0
- package/dist/client/providers/query-provider.js +74 -0
- package/dist/client/providers/query-provider.js.map +1 -0
- package/dist/client/routes.d.ts +25 -0
- package/dist/client/routes.d.ts.map +1 -0
- package/dist/client/routes.js +61 -0
- package/dist/client/routes.js.map +1 -0
- package/dist/database/migrations/.manifest.json +73 -0
- package/dist/database/migrations/202609300001_pm_create_members_settings.d.ts +4 -0
- package/dist/database/migrations/202609300001_pm_create_members_settings.d.ts.map +1 -0
- package/dist/database/migrations/202609300001_pm_create_members_settings.js +40 -0
- package/dist/database/migrations/202609300001_pm_create_members_settings.js.map +1 -0
- package/dist/database/migrations/202609300002_pm_create_projects.d.ts +4 -0
- package/dist/database/migrations/202609300002_pm_create_projects.d.ts.map +1 -0
- package/dist/database/migrations/202609300002_pm_create_projects.js +125 -0
- package/dist/database/migrations/202609300002_pm_create_projects.js.map +1 -0
- package/dist/database/migrations/202609300003_pm_create_labels.d.ts +4 -0
- package/dist/database/migrations/202609300003_pm_create_labels.d.ts.map +1 -0
- package/dist/database/migrations/202609300003_pm_create_labels.js +33 -0
- package/dist/database/migrations/202609300003_pm_create_labels.js.map +1 -0
- package/dist/database/migrations/202609300004_pm_create_issues.d.ts +4 -0
- package/dist/database/migrations/202609300004_pm_create_issues.d.ts.map +1 -0
- package/dist/database/migrations/202609300004_pm_create_issues.js +123 -0
- package/dist/database/migrations/202609300004_pm_create_issues.js.map +1 -0
- package/dist/database/migrations/202609300007_pm_create_workflows.d.ts +4 -0
- package/dist/database/migrations/202609300007_pm_create_workflows.d.ts.map +1 -0
- package/dist/database/migrations/202609300007_pm_create_workflows.js +39 -0
- package/dist/database/migrations/202609300007_pm_create_workflows.js.map +1 -0
- package/dist/database/migrations/202610010011_pm_create_checklist_items.d.ts +4 -0
- package/dist/database/migrations/202610010011_pm_create_checklist_items.d.ts.map +1 -0
- package/dist/database/migrations/202610010011_pm_create_checklist_items.js +40 -0
- package/dist/database/migrations/202610010011_pm_create_checklist_items.js.map +1 -0
- package/dist/database/migrations/202610010012_pm_create_approval_requests.d.ts +4 -0
- package/dist/database/migrations/202610010012_pm_create_approval_requests.d.ts.map +1 -0
- package/dist/database/migrations/202610010012_pm_create_approval_requests.js +48 -0
- package/dist/database/migrations/202610010012_pm_create_approval_requests.js.map +1 -0
- package/dist/database/migrations/202610010013_pm_create_issue_dependencies.d.ts +4 -0
- package/dist/database/migrations/202610010013_pm_create_issue_dependencies.d.ts.map +1 -0
- package/dist/database/migrations/202610010013_pm_create_issue_dependencies.js +45 -0
- package/dist/database/migrations/202610010013_pm_create_issue_dependencies.js.map +1 -0
- package/dist/database/migrations/202610010015_pm_create_comments.d.ts +4 -0
- package/dist/database/migrations/202610010015_pm_create_comments.d.ts.map +1 -0
- package/dist/database/migrations/202610010015_pm_create_comments.js +81 -0
- package/dist/database/migrations/202610010015_pm_create_comments.js.map +1 -0
- package/dist/database/migrations/202610010016_pm_create_issue_subscriptions.d.ts +4 -0
- package/dist/database/migrations/202610010016_pm_create_issue_subscriptions.d.ts.map +1 -0
- package/dist/database/migrations/202610010016_pm_create_issue_subscriptions.js +41 -0
- package/dist/database/migrations/202610010016_pm_create_issue_subscriptions.js.map +1 -0
- package/dist/database/migrations/202610010021_pm_create_plans.d.ts +4 -0
- package/dist/database/migrations/202610010021_pm_create_plans.d.ts.map +1 -0
- package/dist/database/migrations/202610010021_pm_create_plans.js +126 -0
- package/dist/database/migrations/202610010021_pm_create_plans.js.map +1 -0
- package/dist/database/migrations/202610010022_pm_create_attachments.d.ts +4 -0
- package/dist/database/migrations/202610010022_pm_create_attachments.d.ts.map +1 -0
- package/dist/database/migrations/202610010022_pm_create_attachments.js +45 -0
- package/dist/database/migrations/202610010022_pm_create_attachments.js.map +1 -0
- package/dist/database/migrations/202610060001_pm_create_plan_issues.d.ts +4 -0
- package/dist/database/migrations/202610060001_pm_create_plan_issues.d.ts.map +1 -0
- package/dist/database/migrations/202610060001_pm_create_plan_issues.js +41 -0
- package/dist/database/migrations/202610060001_pm_create_plan_issues.js.map +1 -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/database/seeds/.manifest.json +9 -0
- package/dist/database/seeds/202609300005_pm_default_settings.d.ts +4 -0
- package/dist/database/seeds/202609300005_pm_default_settings.d.ts.map +1 -0
- package/dist/database/seeds/202609300005_pm_default_settings.js +29 -0
- package/dist/database/seeds/202609300005_pm_default_settings.js.map +1 -0
- package/dist/package.d.ts +2 -0
- package/dist/package.d.ts.map +1 -0
- package/dist/package.js +2 -0
- package/dist/package.js.map +1 -0
- package/dist/server/access/request.d.ts +37 -0
- package/dist/server/access/request.d.ts.map +1 -0
- package/dist/server/access/request.js +62 -0
- package/dist/server/access/request.js.map +1 -0
- package/dist/server/access/viewer.d.ts +30 -0
- package/dist/server/access/viewer.d.ts.map +1 -0
- package/dist/server/access/viewer.js +30 -0
- package/dist/server/access/viewer.js.map +1 -0
- package/dist/server/composition.d.ts +98 -0
- package/dist/server/composition.d.ts.map +1 -0
- package/dist/server/composition.js +223 -0
- package/dist/server/composition.js.map +1 -0
- package/dist/server/domains/attachments/attachment.routes.d.ts +13 -0
- package/dist/server/domains/attachments/attachment.routes.d.ts.map +1 -0
- package/dist/server/domains/attachments/attachment.routes.js +209 -0
- package/dist/server/domains/attachments/attachment.routes.js.map +1 -0
- package/dist/server/domains/attachments/attachment.service.d.ts +85 -0
- package/dist/server/domains/attachments/attachment.service.d.ts.map +1 -0
- package/dist/server/domains/attachments/attachment.service.js +253 -0
- package/dist/server/domains/attachments/attachment.service.js.map +1 -0
- package/dist/server/domains/attachments/attachment.storage.d.ts +69 -0
- package/dist/server/domains/attachments/attachment.storage.d.ts.map +1 -0
- package/dist/server/domains/attachments/attachment.storage.js +64 -0
- package/dist/server/domains/attachments/attachment.storage.js.map +1 -0
- package/dist/server/domains/attachments/attachment.store.d.ts +49 -0
- package/dist/server/domains/attachments/attachment.store.d.ts.map +1 -0
- package/dist/server/domains/attachments/attachment.store.js +95 -0
- package/dist/server/domains/attachments/attachment.store.js.map +1 -0
- package/dist/server/domains/attachments/index.d.ts +5 -0
- package/dist/server/domains/attachments/index.d.ts.map +1 -0
- package/dist/server/domains/attachments/index.js +5 -0
- package/dist/server/domains/attachments/index.js.map +1 -0
- package/dist/server/domains/comments/comment.access.d.ts +10 -0
- package/dist/server/domains/comments/comment.access.d.ts.map +1 -0
- package/dist/server/domains/comments/comment.access.js +35 -0
- package/dist/server/domains/comments/comment.access.js.map +1 -0
- package/dist/server/domains/comments/comment.events.d.ts +42 -0
- package/dist/server/domains/comments/comment.events.d.ts.map +1 -0
- package/dist/server/domains/comments/comment.events.js +2 -0
- package/dist/server/domains/comments/comment.events.js.map +1 -0
- package/dist/server/domains/comments/comment.queries.d.ts +71 -0
- package/dist/server/domains/comments/comment.queries.d.ts.map +1 -0
- package/dist/server/domains/comments/comment.queries.js +164 -0
- package/dist/server/domains/comments/comment.queries.js.map +1 -0
- package/dist/server/domains/comments/comment.routes.d.ts +23 -0
- package/dist/server/domains/comments/comment.routes.d.ts.map +1 -0
- package/dist/server/domains/comments/comment.routes.js +218 -0
- package/dist/server/domains/comments/comment.routes.js.map +1 -0
- package/dist/server/domains/comments/comment.service.d.ts +37 -0
- package/dist/server/domains/comments/comment.service.d.ts.map +1 -0
- package/dist/server/domains/comments/comment.service.js +296 -0
- package/dist/server/domains/comments/comment.service.js.map +1 -0
- package/dist/server/domains/comments/comment.store.d.ts +77 -0
- package/dist/server/domains/comments/comment.store.d.ts.map +1 -0
- package/dist/server/domains/comments/comment.store.js +152 -0
- package/dist/server/domains/comments/comment.store.js.map +1 -0
- package/dist/server/domains/comments/index.d.ts +6 -0
- package/dist/server/domains/comments/index.d.ts.map +1 -0
- package/dist/server/domains/comments/index.js +5 -0
- package/dist/server/domains/comments/index.js.map +1 -0
- package/dist/server/domains/comments/ports.d.ts +62 -0
- package/dist/server/domains/comments/ports.d.ts.map +1 -0
- package/dist/server/domains/comments/ports.js +2 -0
- package/dist/server/domains/comments/ports.js.map +1 -0
- package/dist/server/domains/invitations/index.d.ts +3 -0
- package/dist/server/domains/invitations/index.d.ts.map +1 -0
- package/dist/server/domains/invitations/index.js +3 -0
- package/dist/server/domains/invitations/index.js.map +1 -0
- package/dist/server/domains/invitations/invitation.routes.d.ts +7 -0
- package/dist/server/domains/invitations/invitation.routes.d.ts.map +1 -0
- package/dist/server/domains/invitations/invitation.routes.js +103 -0
- package/dist/server/domains/invitations/invitation.routes.js.map +1 -0
- package/dist/server/domains/invitations/invitation.service.d.ts +38 -0
- package/dist/server/domains/invitations/invitation.service.d.ts.map +1 -0
- package/dist/server/domains/invitations/invitation.service.js +178 -0
- package/dist/server/domains/invitations/invitation.service.js.map +1 -0
- package/dist/server/domains/issues/index.d.ts +10 -0
- package/dist/server/domains/issues/index.d.ts.map +1 -0
- package/dist/server/domains/issues/index.js +9 -0
- package/dist/server/domains/issues/index.js.map +1 -0
- package/dist/server/domains/issues/issue.access.d.ts +42 -0
- package/dist/server/domains/issues/issue.access.d.ts.map +1 -0
- package/dist/server/domains/issues/issue.access.js +109 -0
- package/dist/server/domains/issues/issue.access.js.map +1 -0
- package/dist/server/domains/issues/issue.context.d.ts +120 -0
- package/dist/server/domains/issues/issue.context.d.ts.map +1 -0
- package/dist/server/domains/issues/issue.context.js +116 -0
- package/dist/server/domains/issues/issue.context.js.map +1 -0
- package/dist/server/domains/issues/issue.events.d.ts +58 -0
- package/dist/server/domains/issues/issue.events.d.ts.map +1 -0
- package/dist/server/domains/issues/issue.events.js +2 -0
- package/dist/server/domains/issues/issue.events.js.map +1 -0
- package/dist/server/domains/issues/issue.fields.d.ts +65 -0
- package/dist/server/domains/issues/issue.fields.d.ts.map +1 -0
- package/dist/server/domains/issues/issue.fields.js +296 -0
- package/dist/server/domains/issues/issue.fields.js.map +1 -0
- package/dist/server/domains/issues/issue.projects.d.ts +8 -0
- package/dist/server/domains/issues/issue.projects.d.ts.map +1 -0
- package/dist/server/domains/issues/issue.projects.js +41 -0
- package/dist/server/domains/issues/issue.projects.js.map +1 -0
- package/dist/server/domains/issues/issue.queries.d.ts +70 -0
- package/dist/server/domains/issues/issue.queries.d.ts.map +1 -0
- package/dist/server/domains/issues/issue.queries.js +360 -0
- package/dist/server/domains/issues/issue.queries.js.map +1 -0
- package/dist/server/domains/issues/issue.routes.d.ts +15 -0
- package/dist/server/domains/issues/issue.routes.d.ts.map +1 -0
- package/dist/server/domains/issues/issue.routes.js +311 -0
- package/dist/server/domains/issues/issue.routes.js.map +1 -0
- package/dist/server/domains/issues/issue.service.d.ts +108 -0
- package/dist/server/domains/issues/issue.service.d.ts.map +1 -0
- package/dist/server/domains/issues/issue.service.js +360 -0
- package/dist/server/domains/issues/issue.service.js.map +1 -0
- package/dist/server/domains/issues/issue.status.d.ts +29 -0
- package/dist/server/domains/issues/issue.status.d.ts.map +1 -0
- package/dist/server/domains/issues/issue.status.js +61 -0
- package/dist/server/domains/issues/issue.status.js.map +1 -0
- package/dist/server/domains/issues/issue.store.d.ts +112 -0
- package/dist/server/domains/issues/issue.store.d.ts.map +1 -0
- package/dist/server/domains/issues/issue.store.js +289 -0
- package/dist/server/domains/issues/issue.store.js.map +1 -0
- package/dist/server/domains/issues/ports.d.ts +140 -0
- package/dist/server/domains/issues/ports.d.ts.map +1 -0
- package/dist/server/domains/issues/ports.js +15 -0
- package/dist/server/domains/issues/ports.js.map +1 -0
- package/dist/server/domains/labels/index.d.ts +3 -0
- package/dist/server/domains/labels/index.d.ts.map +1 -0
- package/dist/server/domains/labels/index.js +3 -0
- package/dist/server/domains/labels/index.js.map +1 -0
- package/dist/server/domains/labels/label.events.d.ts +10 -0
- package/dist/server/domains/labels/label.events.d.ts.map +1 -0
- package/dist/server/domains/labels/label.events.js +2 -0
- package/dist/server/domains/labels/label.events.js.map +1 -0
- package/dist/server/domains/labels/label.routes.d.ts +6 -0
- package/dist/server/domains/labels/label.routes.d.ts.map +1 -0
- package/dist/server/domains/labels/label.routes.js +79 -0
- package/dist/server/domains/labels/label.routes.js.map +1 -0
- package/dist/server/domains/labels/label.service.d.ts +23 -0
- package/dist/server/domains/labels/label.service.d.ts.map +1 -0
- package/dist/server/domains/labels/label.service.js +70 -0
- package/dist/server/domains/labels/label.service.js.map +1 -0
- package/dist/server/domains/labels/label.store.d.ts +16 -0
- package/dist/server/domains/labels/label.store.d.ts.map +1 -0
- package/dist/server/domains/labels/label.store.js +44 -0
- package/dist/server/domains/labels/label.store.js.map +1 -0
- package/dist/server/domains/members/index.d.ts +3 -0
- package/dist/server/domains/members/index.d.ts.map +1 -0
- package/dist/server/domains/members/index.js +3 -0
- package/dist/server/domains/members/index.js.map +1 -0
- package/dist/server/domains/members/member.routes.d.ts +11 -0
- package/dist/server/domains/members/member.routes.d.ts.map +1 -0
- package/dist/server/domains/members/member.routes.js +73 -0
- package/dist/server/domains/members/member.routes.js.map +1 -0
- package/dist/server/domains/members/member.service.d.ts +43 -0
- package/dist/server/domains/members/member.service.d.ts.map +1 -0
- package/dist/server/domains/members/member.service.js +64 -0
- package/dist/server/domains/members/member.service.js.map +1 -0
- package/dist/server/domains/members/member.store.d.ts +5 -0
- package/dist/server/domains/members/member.store.d.ts.map +1 -0
- package/dist/server/domains/members/member.store.js +19 -0
- package/dist/server/domains/members/member.store.js.map +1 -0
- package/dist/server/domains/notices/index.d.ts +4 -0
- package/dist/server/domains/notices/index.d.ts.map +1 -0
- package/dist/server/domains/notices/index.js +3 -0
- package/dist/server/domains/notices/index.js.map +1 -0
- package/dist/server/domains/notices/notice.events.d.ts +11 -0
- package/dist/server/domains/notices/notice.events.d.ts.map +1 -0
- package/dist/server/domains/notices/notice.events.js +2 -0
- package/dist/server/domains/notices/notice.events.js.map +1 -0
- package/dist/server/domains/notices/notice.planner.d.ts +28 -0
- package/dist/server/domains/notices/notice.planner.d.ts.map +1 -0
- package/dist/server/domains/notices/notice.planner.js +115 -0
- package/dist/server/domains/notices/notice.planner.js.map +1 -0
- package/dist/server/domains/notices/notice.rules.d.ts +5 -0
- package/dist/server/domains/notices/notice.rules.d.ts.map +1 -0
- package/dist/server/domains/notices/notice.rules.js +222 -0
- package/dist/server/domains/notices/notice.rules.js.map +1 -0
- package/dist/server/domains/notices/ports.d.ts +52 -0
- package/dist/server/domains/notices/ports.d.ts.map +1 -0
- package/dist/server/domains/notices/ports.js +2 -0
- package/dist/server/domains/notices/ports.js.map +1 -0
- package/dist/server/domains/plans/index.d.ts +7 -0
- package/dist/server/domains/plans/index.d.ts.map +1 -0
- package/dist/server/domains/plans/index.js +5 -0
- package/dist/server/domains/plans/index.js.map +1 -0
- package/dist/server/domains/plans/intake/index.d.ts +7 -0
- package/dist/server/domains/plans/intake/index.d.ts.map +1 -0
- package/dist/server/domains/plans/intake/index.js +6 -0
- package/dist/server/domains/plans/intake/index.js.map +1 -0
- package/dist/server/domains/plans/intake/intake.ai.drafts.d.ts +69 -0
- package/dist/server/domains/plans/intake/intake.ai.drafts.d.ts.map +1 -0
- package/dist/server/domains/plans/intake/intake.ai.drafts.js +273 -0
- package/dist/server/domains/plans/intake/intake.ai.drafts.js.map +1 -0
- package/dist/server/domains/plans/intake/intake.ai.events.d.ts +10 -0
- package/dist/server/domains/plans/intake/intake.ai.events.d.ts.map +1 -0
- package/dist/server/domains/plans/intake/intake.ai.events.js +2 -0
- package/dist/server/domains/plans/intake/intake.ai.events.js.map +1 -0
- package/dist/server/domains/plans/intake/intake.ai.organizer.d.ts +45 -0
- package/dist/server/domains/plans/intake/intake.ai.organizer.d.ts.map +1 -0
- package/dist/server/domains/plans/intake/intake.ai.organizer.js +2 -0
- package/dist/server/domains/plans/intake/intake.ai.organizer.js.map +1 -0
- package/dist/server/domains/plans/intake/intake.ai.service.d.ts +68 -0
- package/dist/server/domains/plans/intake/intake.ai.service.d.ts.map +1 -0
- package/dist/server/domains/plans/intake/intake.ai.service.js +432 -0
- package/dist/server/domains/plans/intake/intake.ai.service.js.map +1 -0
- package/dist/server/domains/plans/intake/intake.ai.store.d.ts +37 -0
- package/dist/server/domains/plans/intake/intake.ai.store.d.ts.map +1 -0
- package/dist/server/domains/plans/intake/intake.ai.store.js +32 -0
- package/dist/server/domains/plans/intake/intake.ai.store.js.map +1 -0
- package/dist/server/domains/plans/intake/intake.attach.d.ts +18 -0
- package/dist/server/domains/plans/intake/intake.attach.d.ts.map +1 -0
- package/dist/server/domains/plans/intake/intake.attach.js +72 -0
- package/dist/server/domains/plans/intake/intake.attach.js.map +1 -0
- package/dist/server/domains/plans/intake/intake.files.d.ts +29 -0
- package/dist/server/domains/plans/intake/intake.files.d.ts.map +1 -0
- package/dist/server/domains/plans/intake/intake.files.js +78 -0
- package/dist/server/domains/plans/intake/intake.files.js.map +1 -0
- package/dist/server/domains/plans/intake/intake.parser.d.ts +35 -0
- package/dist/server/domains/plans/intake/intake.parser.d.ts.map +1 -0
- package/dist/server/domains/plans/intake/intake.parser.js +260 -0
- package/dist/server/domains/plans/intake/intake.parser.js.map +1 -0
- package/dist/server/domains/plans/intake/intake.routes.d.ts +6 -0
- package/dist/server/domains/plans/intake/intake.routes.d.ts.map +1 -0
- package/dist/server/domains/plans/intake/intake.routes.js +194 -0
- package/dist/server/domains/plans/intake/intake.routes.js.map +1 -0
- package/dist/server/domains/plans/intake/intake.service.d.ts +49 -0
- package/dist/server/domains/plans/intake/intake.service.d.ts.map +1 -0
- package/dist/server/domains/plans/intake/intake.service.js +198 -0
- package/dist/server/domains/plans/intake/intake.service.js.map +1 -0
- package/dist/server/domains/plans/intake/intake.text.d.ts +64 -0
- package/dist/server/domains/plans/intake/intake.text.d.ts.map +1 -0
- package/dist/server/domains/plans/intake/intake.text.js +205 -0
- package/dist/server/domains/plans/intake/intake.text.js.map +1 -0
- package/dist/server/domains/plans/plan.access.d.ts +9 -0
- package/dist/server/domains/plans/plan.access.d.ts.map +1 -0
- package/dist/server/domains/plans/plan.access.js +14 -0
- package/dist/server/domains/plans/plan.access.js.map +1 -0
- package/dist/server/domains/plans/plan.engine.d.ts +50 -0
- package/dist/server/domains/plans/plan.engine.d.ts.map +1 -0
- package/dist/server/domains/plans/plan.engine.js +224 -0
- package/dist/server/domains/plans/plan.engine.js.map +1 -0
- package/dist/server/domains/plans/plan.events.d.ts +10 -0
- package/dist/server/domains/plans/plan.events.d.ts.map +1 -0
- package/dist/server/domains/plans/plan.events.js +2 -0
- package/dist/server/domains/plans/plan.events.js.map +1 -0
- package/dist/server/domains/plans/plan.ops.d.ts +72 -0
- package/dist/server/domains/plans/plan.ops.d.ts.map +1 -0
- package/dist/server/domains/plans/plan.ops.js +509 -0
- package/dist/server/domains/plans/plan.ops.js.map +1 -0
- package/dist/server/domains/plans/plan.routes.d.ts +14 -0
- package/dist/server/domains/plans/plan.routes.d.ts.map +1 -0
- package/dist/server/domains/plans/plan.routes.js +248 -0
- package/dist/server/domains/plans/plan.routes.js.map +1 -0
- package/dist/server/domains/plans/plan.schemas.d.ts +17 -0
- package/dist/server/domains/plans/plan.schemas.d.ts.map +1 -0
- package/dist/server/domains/plans/plan.schemas.js +81 -0
- package/dist/server/domains/plans/plan.schemas.js.map +1 -0
- package/dist/server/domains/plans/plan.service.d.ts +28 -0
- package/dist/server/domains/plans/plan.service.d.ts.map +1 -0
- package/dist/server/domains/plans/plan.service.js +837 -0
- package/dist/server/domains/plans/plan.service.js.map +1 -0
- package/dist/server/domains/plans/plan.store.d.ts +76 -0
- package/dist/server/domains/plans/plan.store.d.ts.map +1 -0
- package/dist/server/domains/plans/plan.store.js +145 -0
- package/dist/server/domains/plans/plan.store.js.map +1 -0
- package/dist/server/domains/plans/plan.touched.d.ts +15 -0
- package/dist/server/domains/plans/plan.touched.d.ts.map +1 -0
- package/dist/server/domains/plans/plan.touched.js +43 -0
- package/dist/server/domains/plans/plan.touched.js.map +1 -0
- package/dist/server/domains/plans/plan.undo.d.ts +29 -0
- package/dist/server/domains/plans/plan.undo.d.ts.map +1 -0
- package/dist/server/domains/plans/plan.undo.js +119 -0
- package/dist/server/domains/plans/plan.undo.js.map +1 -0
- package/dist/server/domains/plans/ports.d.ts +91 -0
- package/dist/server/domains/plans/ports.d.ts.map +1 -0
- package/dist/server/domains/plans/ports.js +2 -0
- package/dist/server/domains/plans/ports.js.map +1 -0
- package/dist/server/domains/projects/index.d.ts +6 -0
- package/dist/server/domains/projects/index.d.ts.map +1 -0
- package/dist/server/domains/projects/index.js +5 -0
- package/dist/server/domains/projects/index.js.map +1 -0
- package/dist/server/domains/projects/project-members.d.ts +17 -0
- package/dist/server/domains/projects/project-members.d.ts.map +1 -0
- package/dist/server/domains/projects/project-members.js +21 -0
- package/dist/server/domains/projects/project-members.js.map +1 -0
- package/dist/server/domains/projects/project-resources.d.ts +38 -0
- package/dist/server/domains/projects/project-resources.d.ts.map +1 -0
- package/dist/server/domains/projects/project-resources.js +195 -0
- package/dist/server/domains/projects/project-resources.js.map +1 -0
- package/dist/server/domains/projects/project.access.d.ts +39 -0
- package/dist/server/domains/projects/project.access.d.ts.map +1 -0
- package/dist/server/domains/projects/project.access.js +83 -0
- package/dist/server/domains/projects/project.access.js.map +1 -0
- 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 +9 -0
- package/dist/server/domains/projects/project.routes.d.ts.map +1 -0
- package/dist/server/domains/projects/project.routes.js +244 -0
- package/dist/server/domains/projects/project.routes.js.map +1 -0
- package/dist/server/domains/projects/project.service.d.ts +41 -0
- package/dist/server/domains/projects/project.service.d.ts.map +1 -0
- package/dist/server/domains/projects/project.service.js +135 -0
- package/dist/server/domains/projects/project.service.js.map +1 -0
- package/dist/server/domains/projects/project.store.d.ts +52 -0
- package/dist/server/domains/projects/project.store.d.ts.map +1 -0
- package/dist/server/domains/projects/project.store.js +219 -0
- package/dist/server/domains/projects/project.store.js.map +1 -0
- package/dist/server/domains/reports/index.d.ts +2 -0
- package/dist/server/domains/reports/index.d.ts.map +1 -0
- package/dist/server/domains/reports/index.js +2 -0
- package/dist/server/domains/reports/index.js.map +1 -0
- package/dist/server/domains/reports/report.service.d.ts +146 -0
- package/dist/server/domains/reports/report.service.d.ts.map +1 -0
- package/dist/server/domains/reports/report.service.js +458 -0
- package/dist/server/domains/reports/report.service.js.map +1 -0
- package/dist/server/domains/settings/index.d.ts +3 -0
- package/dist/server/domains/settings/index.d.ts.map +1 -0
- package/dist/server/domains/settings/index.js +3 -0
- package/dist/server/domains/settings/index.js.map +1 -0
- package/dist/server/domains/settings/settings.routes.d.ts +6 -0
- package/dist/server/domains/settings/settings.routes.d.ts.map +1 -0
- package/dist/server/domains/settings/settings.routes.js +39 -0
- package/dist/server/domains/settings/settings.routes.js.map +1 -0
- package/dist/server/domains/settings/settings.service.d.ts +23 -0
- package/dist/server/domains/settings/settings.service.d.ts.map +1 -0
- package/dist/server/domains/settings/settings.service.js +38 -0
- package/dist/server/domains/settings/settings.service.js.map +1 -0
- package/dist/server/domains/settings/settings.store.d.ts +26 -0
- package/dist/server/domains/settings/settings.store.d.ts.map +1 -0
- package/dist/server/domains/settings/settings.store.js +43 -0
- package/dist/server/domains/settings/settings.store.js.map +1 -0
- 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/index.d.ts +3 -0
- package/dist/server/domains/subscriptions/index.d.ts.map +1 -0
- package/dist/server/domains/subscriptions/index.js +3 -0
- package/dist/server/domains/subscriptions/index.js.map +1 -0
- package/dist/server/domains/subscriptions/subscription.events.d.ts +12 -0
- package/dist/server/domains/subscriptions/subscription.events.d.ts.map +1 -0
- package/dist/server/domains/subscriptions/subscription.events.js +2 -0
- package/dist/server/domains/subscriptions/subscription.events.js.map +1 -0
- package/dist/server/domains/subscriptions/subscription.routes.d.ts +6 -0
- package/dist/server/domains/subscriptions/subscription.routes.d.ts.map +1 -0
- package/dist/server/domains/subscriptions/subscription.routes.js +36 -0
- package/dist/server/domains/subscriptions/subscription.routes.js.map +1 -0
- package/dist/server/domains/subscriptions/subscription.service.d.ts +28 -0
- package/dist/server/domains/subscriptions/subscription.service.d.ts.map +1 -0
- package/dist/server/domains/subscriptions/subscription.service.js +50 -0
- package/dist/server/domains/subscriptions/subscription.service.js.map +1 -0
- package/dist/server/domains/subscriptions/subscription.store.d.ts +23 -0
- package/dist/server/domains/subscriptions/subscription.store.d.ts.map +1 -0
- package/dist/server/domains/subscriptions/subscription.store.js +84 -0
- package/dist/server/domains/subscriptions/subscription.store.js.map +1 -0
- package/dist/server/domains/subtasks/index.d.ts +6 -0
- package/dist/server/domains/subtasks/index.d.ts.map +1 -0
- package/dist/server/domains/subtasks/index.js +6 -0
- package/dist/server/domains/subtasks/index.js.map +1 -0
- package/dist/server/domains/subtasks/subtask.blocking.d.ts +27 -0
- package/dist/server/domains/subtasks/subtask.blocking.d.ts.map +1 -0
- package/dist/server/domains/subtasks/subtask.blocking.js +133 -0
- package/dist/server/domains/subtasks/subtask.blocking.js.map +1 -0
- package/dist/server/domains/subtasks/subtask.events.d.ts +40 -0
- package/dist/server/domains/subtasks/subtask.events.d.ts.map +1 -0
- package/dist/server/domains/subtasks/subtask.events.js +2 -0
- package/dist/server/domains/subtasks/subtask.events.js.map +1 -0
- package/dist/server/domains/subtasks/subtask.graph.d.ts +13 -0
- package/dist/server/domains/subtasks/subtask.graph.d.ts.map +1 -0
- package/dist/server/domains/subtasks/subtask.graph.js +65 -0
- package/dist/server/domains/subtasks/subtask.graph.js.map +1 -0
- 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.notices.d.ts +8 -0
- package/dist/server/domains/subtasks/subtask.notices.d.ts.map +1 -0
- package/dist/server/domains/subtasks/subtask.notices.js +70 -0
- package/dist/server/domains/subtasks/subtask.notices.js.map +1 -0
- package/dist/server/domains/subtasks/subtask.release.d.ts +25 -0
- package/dist/server/domains/subtasks/subtask.release.d.ts.map +1 -0
- package/dist/server/domains/subtasks/subtask.release.js +110 -0
- package/dist/server/domains/subtasks/subtask.release.js.map +1 -0
- package/dist/server/domains/subtasks/subtask.routes.d.ts +11 -0
- package/dist/server/domains/subtasks/subtask.routes.d.ts.map +1 -0
- package/dist/server/domains/subtasks/subtask.routes.js +159 -0
- package/dist/server/domains/subtasks/subtask.routes.js.map +1 -0
- package/dist/server/domains/subtasks/subtask.service.d.ts +44 -0
- package/dist/server/domains/subtasks/subtask.service.d.ts.map +1 -0
- package/dist/server/domains/subtasks/subtask.service.js +376 -0
- package/dist/server/domains/subtasks/subtask.service.js.map +1 -0
- package/dist/server/domains/subtasks/subtask.store.d.ts +34 -0
- package/dist/server/domains/subtasks/subtask.store.d.ts.map +1 -0
- package/dist/server/domains/subtasks/subtask.store.js +77 -0
- package/dist/server/domains/subtasks/subtask.store.js.map +1 -0
- package/dist/server/index.d.ts +6 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +6 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/kernel/activity.d.ts +58 -0
- package/dist/server/kernel/activity.d.ts.map +1 -0
- package/dist/server/kernel/activity.js +99 -0
- package/dist/server/kernel/activity.js.map +1 -0
- package/dist/server/kernel/actor.d.ts +30 -0
- package/dist/server/kernel/actor.d.ts.map +1 -0
- package/dist/server/kernel/actor.js +8 -0
- package/dist/server/kernel/actor.js.map +1 -0
- package/dist/server/kernel/db.d.ts +21 -0
- package/dist/server/kernel/db.d.ts.map +1 -0
- package/dist/server/kernel/db.js +41 -0
- package/dist/server/kernel/db.js.map +1 -0
- package/dist/server/kernel/errors.d.ts +26 -0
- package/dist/server/kernel/errors.d.ts.map +1 -0
- package/dist/server/kernel/errors.js +34 -0
- package/dist/server/kernel/errors.js.map +1 -0
- package/dist/server/kernel/events.d.ts +43 -0
- package/dist/server/kernel/events.d.ts.map +1 -0
- package/dist/server/kernel/events.js +64 -0
- package/dist/server/kernel/events.js.map +1 -0
- package/dist/server/kernel/http.d.ts +47 -0
- package/dist/server/kernel/http.d.ts.map +1 -0
- package/dist/server/kernel/http.js +119 -0
- package/dist/server/kernel/http.js.map +1 -0
- package/dist/server/kernel/ids.d.ts +9 -0
- package/dist/server/kernel/ids.d.ts.map +1 -0
- package/dist/server/kernel/ids.js +5 -0
- package/dist/server/kernel/ids.js.map +1 -0
- package/dist/server/kernel/kinds.d.ts +128 -0
- package/dist/server/kernel/kinds.d.ts.map +1 -0
- package/dist/server/kernel/kinds.js +165 -0
- package/dist/server/kernel/kinds.js.map +1 -0
- package/dist/server/kernel/mentions.d.ts +17 -0
- package/dist/server/kernel/mentions.d.ts.map +1 -0
- package/dist/server/kernel/mentions.js +42 -0
- package/dist/server/kernel/mentions.js.map +1 -0
- package/dist/server/kernel/pagination.d.ts +14 -0
- package/dist/server/kernel/pagination.d.ts.map +1 -0
- package/dist/server/kernel/pagination.js +42 -0
- package/dist/server/kernel/pagination.js.map +1 -0
- 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/tx.d.ts +37 -0
- package/dist/server/kernel/tx.d.ts.map +1 -0
- package/dist/server/kernel/tx.js +109 -0
- package/dist/server/kernel/tx.js.map +1 -0
- package/dist/server/kernel/users.d.ts +40 -0
- package/dist/server/kernel/users.d.ts.map +1 -0
- package/dist/server/kernel/users.js +84 -0
- package/dist/server/kernel/users.js.map +1 -0
- package/dist/server/kernel/validate.d.ts +14 -0
- package/dist/server/kernel/validate.d.ts.map +1 -0
- package/dist/server/kernel/validate.js +68 -0
- package/dist/server/kernel/validate.js.map +1 -0
- package/dist/server/kernel/work.d.ts +107 -0
- package/dist/server/kernel/work.d.ts.map +1 -0
- package/dist/server/kernel/work.js +173 -0
- package/dist/server/kernel/work.js.map +1 -0
- package/dist/server/key-scope-objects.d.ts +21 -0
- package/dist/server/key-scope-objects.d.ts.map +1 -0
- package/dist/server/key-scope-objects.js +24 -0
- package/dist/server/key-scope-objects.js.map +1 -0
- package/dist/server/lifecycle/definition.d.ts +71 -0
- package/dist/server/lifecycle/definition.d.ts.map +1 -0
- package/dist/server/lifecycle/definition.js +18 -0
- package/dist/server/lifecycle/definition.js.map +1 -0
- package/dist/server/lifecycle/index.d.ts +10 -0
- package/dist/server/lifecycle/index.d.ts.map +1 -0
- package/dist/server/lifecycle/index.js +10 -0
- package/dist/server/lifecycle/index.js.map +1 -0
- package/dist/server/lifecycle/machine.d.ts +23 -0
- package/dist/server/lifecycle/machine.d.ts.map +1 -0
- package/dist/server/lifecycle/machine.js +27 -0
- package/dist/server/lifecycle/machine.js.map +1 -0
- package/dist/server/lifecycle/move.d.ts +94 -0
- package/dist/server/lifecycle/move.d.ts.map +1 -0
- package/dist/server/lifecycle/move.js +183 -0
- package/dist/server/lifecycle/move.js.map +1 -0
- package/dist/server/lifecycle/registry.d.ts +78 -0
- package/dist/server/lifecycle/registry.d.ts.map +1 -0
- package/dist/server/lifecycle/registry.js +29 -0
- package/dist/server/lifecycle/registry.js.map +1 -0
- package/dist/server/lifecycle/validate.d.ts +34 -0
- package/dist/server/lifecycle/validate.d.ts.map +1 -0
- package/dist/server/lifecycle/validate.js +341 -0
- package/dist/server/lifecycle/validate.js.map +1 -0
- package/dist/server/locales/en-US.d.ts +32 -0
- package/dist/server/locales/en-US.d.ts.map +1 -0
- package/dist/server/locales/en-US.js +30 -0
- package/dist/server/locales/en-US.js.map +1 -0
- package/dist/server/locales/index.d.ts +4 -0
- package/dist/server/locales/index.d.ts.map +1 -0
- package/dist/server/locales/index.js +6 -0
- package/dist/server/locales/index.js.map +1 -0
- package/dist/server/locales/zh-CN.d.ts +4 -0
- package/dist/server/locales/zh-CN.d.ts.map +1 -0
- package/dist/server/locales/zh-CN.js +29 -0
- package/dist/server/locales/zh-CN.js.map +1 -0
- package/dist/server/plugin.d.ts +4 -0
- package/dist/server/plugin.d.ts.map +1 -0
- package/dist/server/plugin.js +17 -0
- package/dist/server/plugin.js.map +1 -0
- package/dist/server/providers/authorization.d.ts +20 -0
- package/dist/server/providers/authorization.d.ts.map +1 -0
- package/dist/server/providers/authorization.js +65 -0
- package/dist/server/providers/authorization.js.map +1 -0
- 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/index.d.ts +4 -0
- package/dist/server/providers/index.d.ts.map +1 -0
- package/dist/server/providers/index.js +8 -0
- package/dist/server/providers/index.js.map +1 -0
- package/dist/server/providers/notifications.d.ts +17 -0
- package/dist/server/providers/notifications.d.ts.map +1 -0
- package/dist/server/providers/notifications.js +217 -0
- package/dist/server/providers/notifications.js.map +1 -0
- package/dist/server/providers/projects.d.ts +20 -0
- package/dist/server/providers/projects.d.ts.map +1 -0
- package/dist/server/providers/projects.js +118 -0
- package/dist/server/providers/projects.js.map +1 -0
- package/dist/server/routes/api.d.ts +4 -0
- package/dist/server/routes/api.d.ts.map +1 -0
- package/dist/server/routes/api.js +94 -0
- package/dist/server/routes/api.js.map +1 -0
- package/dist/server/routes/index.d.ts +5 -0
- package/dist/server/routes/index.d.ts.map +1 -0
- package/dist/server/routes/index.js +6 -0
- package/dist/server/routes/index.js.map +1 -0
- package/dist/server/routes/schemas.d.ts +188 -0
- package/dist/server/routes/schemas.d.ts.map +1 -0
- package/dist/server/routes/schemas.js +1271 -0
- package/dist/server/routes/schemas.js.map +1 -0
- package/dist/server/tokens.d.ts +172 -0
- package/dist/server/tokens.d.ts.map +1 -0
- package/dist/server/tokens.js +46 -0
- package/dist/server/tokens.js.map +1 -0
- package/dist/shared/access.d.ts +188 -0
- package/dist/shared/access.d.ts.map +1 -0
- package/dist/shared/access.js +214 -0
- package/dist/shared/access.js.map +1 -0
- package/dist/shared/attachments.d.ts +84 -0
- package/dist/shared/attachments.d.ts.map +1 -0
- package/dist/shared/attachments.js +65 -0
- package/dist/shared/attachments.js.map +1 -0
- package/dist/shared/comments.d.ts +114 -0
- package/dist/shared/comments.d.ts.map +1 -0
- package/dist/shared/comments.js +20 -0
- package/dist/shared/comments.js.map +1 -0
- package/dist/shared/common.d.ts +28 -0
- package/dist/shared/common.d.ts.map +1 -0
- package/dist/shared/common.js +15 -0
- package/dist/shared/common.js.map +1 -0
- package/dist/shared/intake-ai.d.ts +207 -0
- package/dist/shared/intake-ai.d.ts.map +1 -0
- package/dist/shared/intake-ai.js +111 -0
- package/dist/shared/intake-ai.js.map +1 -0
- package/dist/shared/intake.d.ts +126 -0
- package/dist/shared/intake.d.ts.map +1 -0
- package/dist/shared/intake.js +10 -0
- package/dist/shared/intake.js.map +1 -0
- package/dist/shared/invitations.d.ts +48 -0
- package/dist/shared/invitations.d.ts.map +1 -0
- package/dist/shared/invitations.js +6 -0
- package/dist/shared/invitations.js.map +1 -0
- package/dist/shared/issues.d.ts +242 -0
- package/dist/shared/issues.d.ts.map +1 -0
- package/dist/shared/issues.js +16 -0
- package/dist/shared/issues.js.map +1 -0
- package/dist/shared/kinds.d.ts +43 -0
- package/dist/shared/kinds.d.ts.map +1 -0
- package/dist/shared/kinds.js +9 -0
- package/dist/shared/kinds.js.map +1 -0
- package/dist/shared/labels.d.ts +13 -0
- package/dist/shared/labels.d.ts.map +1 -0
- package/dist/shared/labels.js +2 -0
- package/dist/shared/labels.js.map +1 -0
- package/dist/shared/locales/access.en-US.d.ts +188 -0
- package/dist/shared/locales/access.en-US.d.ts.map +1 -0
- package/dist/shared/locales/access.en-US.js +177 -0
- package/dist/shared/locales/access.en-US.js.map +1 -0
- package/dist/shared/locales/access.zh-CN.d.ts +4 -0
- package/dist/shared/locales/access.zh-CN.d.ts.map +1 -0
- package/dist/shared/locales/access.zh-CN.js +172 -0
- package/dist/shared/locales/access.zh-CN.js.map +1 -0
- package/dist/shared/members.d.ts +27 -0
- package/dist/shared/members.d.ts.map +1 -0
- package/dist/shared/members.js +2 -0
- package/dist/shared/members.js.map +1 -0
- package/dist/shared/plans.d.ts +521 -0
- package/dist/shared/plans.d.ts.map +1 -0
- package/dist/shared/plans.js +69 -0
- package/dist/shared/plans.js.map +1 -0
- package/dist/shared/projects.d.ts +134 -0
- package/dist/shared/projects.d.ts.map +1 -0
- package/dist/shared/projects.js +23 -0
- package/dist/shared/projects.js.map +1 -0
- package/dist/shared/realtime.d.ts +18 -0
- package/dist/shared/realtime.d.ts.map +1 -0
- package/dist/shared/realtime.js +7 -0
- package/dist/shared/realtime.js.map +1 -0
- package/dist/shared/settings.d.ts +9 -0
- package/dist/shared/settings.d.ts.map +1 -0
- package/dist/shared/settings.js +3 -0
- package/dist/shared/settings.js.map +1 -0
- 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/subscriptions.d.ts +13 -0
- package/dist/shared/subscriptions.d.ts.map +1 -0
- package/dist/shared/subscriptions.js +10 -0
- package/dist/shared/subscriptions.js.map +1 -0
- package/dist/shared/subtasks.d.ts +61 -0
- package/dist/shared/subtasks.d.ts.map +1 -0
- package/dist/shared/subtasks.js +11 -0
- package/dist/shared/subtasks.js.map +1 -0
- package/package.json +196 -3
- package/skills/nocobase-app-plugin-projects/SKILL.md +105 -0
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { useTranslation } from '@nocobase/i18n/client';
|
|
2
|
+
import { ACCESS_NAMESPACE } from '../../shared/access.js';
|
|
3
|
+
import { useCallback, useEffect, useRef, useState, } from 'react';
|
|
4
|
+
import { ATTACHMENTS_PER_REQUEST_MAX, ATTACHMENT_SIZE_MAX, } from '../../shared/attachments.js';
|
|
5
|
+
import { useNotify } from './use-notify.js';
|
|
6
|
+
import { usePmApi } from './use-pm-api.js';
|
|
7
|
+
export const ATTACHMENT_SIZE_MB = ATTACHMENT_SIZE_MAX / (1024 * 1024);
|
|
8
|
+
/** A pasted screenshot arrives as `image.png`; name it after the moment so several stay apart. */
|
|
9
|
+
function named(file, index) {
|
|
10
|
+
if (file.name && file.name !== 'image.png')
|
|
11
|
+
return file;
|
|
12
|
+
const stamp = new Date().toISOString().replace(/[-:]/gu, '').slice(0, 15);
|
|
13
|
+
const ext = file.type.split('/')[1]?.replace(/[^a-z0-9]/giu, '') || 'png';
|
|
14
|
+
return new File([file], `screenshot-${stamp}${index > 0 ? `-${index + 1}` : ''}.${ext}`, { type: file.type });
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Files added before an issue or comment is sent (`shared/attachments.ts`): each is uploaded as soon as it is added
|
|
18
|
+
* (picked, pasted or dropped), attached to nothing until the comment takes it; at most
|
|
19
|
+
* `ATTACHMENTS_PER_REQUEST_MAX`, each within the size limit. Taking one back deletes the upload; leaving the page
|
|
20
|
+
* leaves it to the server's purge.
|
|
21
|
+
*/
|
|
22
|
+
export function useAttachmentUploads() {
|
|
23
|
+
const { t } = useTranslation(ACCESS_NAMESPACE);
|
|
24
|
+
const api = usePmApi();
|
|
25
|
+
const notify = useNotify();
|
|
26
|
+
const [uploads, setUploads] = useState([]);
|
|
27
|
+
const counterRef = useRef(0);
|
|
28
|
+
const activeRef = useRef(new Set());
|
|
29
|
+
const controllersRef = useRef(new Map());
|
|
30
|
+
useEffect(() => {
|
|
31
|
+
const running = controllersRef.current;
|
|
32
|
+
return () => {
|
|
33
|
+
for (const controller of running.values())
|
|
34
|
+
controller.abort();
|
|
35
|
+
};
|
|
36
|
+
}, []);
|
|
37
|
+
const add = useCallback(async (files) => {
|
|
38
|
+
// The server refuses more than the maximum anyway; this keeps the reader from uploading what it would refuse.
|
|
39
|
+
const room = ATTACHMENTS_PER_REQUEST_MAX - uploads.length;
|
|
40
|
+
if (files.length > room)
|
|
41
|
+
notify.error(null, t('attachments.tooMany', { count: ATTACHMENTS_PER_REQUEST_MAX }));
|
|
42
|
+
const results = await Promise.all(files.slice(0, Math.max(room, 0)).map(async (original, index) => {
|
|
43
|
+
const file = named(original, index);
|
|
44
|
+
if (file.size > ATTACHMENT_SIZE_MAX) {
|
|
45
|
+
notify.error(null, t('attachments.tooLarge', {
|
|
46
|
+
name: file.name,
|
|
47
|
+
size: ATTACHMENT_SIZE_MB,
|
|
48
|
+
}));
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
counterRef.current += 1;
|
|
52
|
+
const key = `upload-${counterRef.current}`;
|
|
53
|
+
const controller = new AbortController();
|
|
54
|
+
controllersRef.current.set(key, controller);
|
|
55
|
+
activeRef.current.add(key);
|
|
56
|
+
setUploads((current) => [
|
|
57
|
+
...current,
|
|
58
|
+
{ key, name: file.name, size: file.size, attachment: null },
|
|
59
|
+
]);
|
|
60
|
+
try {
|
|
61
|
+
const attachment = await api.uploadAttachment(file, controller.signal);
|
|
62
|
+
if (controller.signal.aborted)
|
|
63
|
+
return undefined;
|
|
64
|
+
setUploads((current) => current.map((upload) => upload.key === key ? { ...upload, attachment } : upload));
|
|
65
|
+
return { key, attachment };
|
|
66
|
+
}
|
|
67
|
+
catch (error) {
|
|
68
|
+
activeRef.current.delete(key);
|
|
69
|
+
setUploads((current) => current.filter((upload) => upload.key !== key));
|
|
70
|
+
if (!controller.signal.aborted)
|
|
71
|
+
notify.error(error, t('attachments.uploadFailed', { name: file.name }));
|
|
72
|
+
return undefined;
|
|
73
|
+
}
|
|
74
|
+
finally {
|
|
75
|
+
controllersRef.current.delete(key);
|
|
76
|
+
}
|
|
77
|
+
}));
|
|
78
|
+
return results.flatMap((result) => result && activeRef.current.has(result.key) ? [result.attachment] : []);
|
|
79
|
+
}, [api, notify, t, uploads.length]);
|
|
80
|
+
return {
|
|
81
|
+
uploads,
|
|
82
|
+
ids: uploads.flatMap((upload) => upload.attachment ? [upload.attachment.id] : []),
|
|
83
|
+
uploading: uploads.some((upload) => upload.attachment === null),
|
|
84
|
+
add,
|
|
85
|
+
remove: (key) => {
|
|
86
|
+
const upload = uploads.find((candidate) => candidate.key === key);
|
|
87
|
+
activeRef.current.delete(key);
|
|
88
|
+
controllersRef.current.get(key)?.abort();
|
|
89
|
+
setUploads((current) => current.filter((candidate) => candidate.key !== key));
|
|
90
|
+
if (upload?.attachment)
|
|
91
|
+
void api.removeAttachment(upload.attachment.id).catch(() => undefined);
|
|
92
|
+
},
|
|
93
|
+
clear: () => {
|
|
94
|
+
activeRef.current.clear();
|
|
95
|
+
setUploads([]);
|
|
96
|
+
},
|
|
97
|
+
onPaste: (event) => {
|
|
98
|
+
const files = [...event.clipboardData.files];
|
|
99
|
+
if (files.length === 0)
|
|
100
|
+
return;
|
|
101
|
+
event.preventDefault();
|
|
102
|
+
event.stopPropagation();
|
|
103
|
+
void add(files);
|
|
104
|
+
},
|
|
105
|
+
onDragOver: (event) => {
|
|
106
|
+
if (event.dataTransfer.types.includes('Files'))
|
|
107
|
+
event.preventDefault();
|
|
108
|
+
},
|
|
109
|
+
onDrop: (event) => {
|
|
110
|
+
if (event.dataTransfer.files.length === 0)
|
|
111
|
+
return;
|
|
112
|
+
event.preventDefault();
|
|
113
|
+
event.stopPropagation();
|
|
114
|
+
void add([...event.dataTransfer.files]);
|
|
115
|
+
},
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
//# sourceMappingURL=use-attachment-uploads.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-attachment-uploads.js","sourceRoot":"","sources":["../../../client/hooks/use-attachment-uploads.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ApiClientError } from '@nocobase/app-client';
|
|
2
|
+
export interface Notify {
|
|
3
|
+
success(title: string): void;
|
|
4
|
+
/** Something the user should know that is neither a success nor a failure, such as a change waiting for approval. */
|
|
5
|
+
info(title: string, description?: string): void;
|
|
6
|
+
/**
|
|
7
|
+
* A failed request, in words: a 403 as "not allowed", a 404 as "no longer exists", a known reason by its translation
|
|
8
|
+
* (`errors.<REASON>`), else the server's message or `fallback`.
|
|
9
|
+
*/
|
|
10
|
+
error(error: unknown, fallback?: string): void;
|
|
11
|
+
}
|
|
12
|
+
/** Toasts through the application's toaster, with one reading of API errors for every page. */
|
|
13
|
+
export declare function useNotify(): Notify;
|
|
14
|
+
export declare function errorText(t: (key: string, options?: Record<string, unknown>) => string, error: unknown, fallback: string): string;
|
|
15
|
+
/** The standard error body's `metadata`: machine-readable facts about the failure, such as a plan's row checks. */
|
|
16
|
+
export declare function errorMetadata(error: ApiClientError): Readonly<Record<string, unknown>> | undefined;
|
|
17
|
+
//# sourceMappingURL=use-notify.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-notify.d.ts","sourceRoot":"","sources":["../../../client/hooks/use-notify.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAc,MAAM,sBAAsB,CAAC;AAMlE,MAAM,WAAW,MAAM;IACrB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,qHAAqH;IACrH,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChD;;;OAGG;IACH,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAChD;AAED,+FAA+F;AAC/F,wBAAgB,SAAS,IAAI,MAAM,CAqBlC;AAED,wBAAgB,SAAS,CACvB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,EAC7D,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,MAAM,GACf,MAAM,CASR;AAED,mHAAmH;AACnH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,cAAc,GACpB,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,SAAS,CAO/C"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { ApiClientError, useToaster } from '@nocobase/app-client';
|
|
2
|
+
import { useTranslation } from '@nocobase/i18n/client';
|
|
3
|
+
import { useMemo } from 'react';
|
|
4
|
+
import { ACCESS_NAMESPACE } from '../../shared/access.js';
|
|
5
|
+
/** Toasts through the application's toaster, with one reading of API errors for every page. */
|
|
6
|
+
export function useNotify() {
|
|
7
|
+
const toaster = useToaster();
|
|
8
|
+
// Named: the issues hooks the application composes its pages from (`client/issues.ts`) call this in its namespace.
|
|
9
|
+
const { t } = useTranslation(ACCESS_NAMESPACE);
|
|
10
|
+
return useMemo(() => ({
|
|
11
|
+
success: (title) => void toaster.show({ type: 'success', title }),
|
|
12
|
+
info: (title, description) => void toaster.show({
|
|
13
|
+
type: 'info',
|
|
14
|
+
title,
|
|
15
|
+
...(description ? { description } : {}),
|
|
16
|
+
}),
|
|
17
|
+
error: (error, fallback) => void toaster.show({
|
|
18
|
+
type: 'error',
|
|
19
|
+
title: errorText(t, error, fallback ?? t('common.requestFailed')),
|
|
20
|
+
}),
|
|
21
|
+
}), [toaster, t]);
|
|
22
|
+
}
|
|
23
|
+
export function errorText(t, error, fallback) {
|
|
24
|
+
if (!(error instanceof ApiClientError))
|
|
25
|
+
return fallback;
|
|
26
|
+
if (error.status === 403)
|
|
27
|
+
return t('common.forbidden');
|
|
28
|
+
if (error.status === 404)
|
|
29
|
+
return t('common.notFound');
|
|
30
|
+
if (error.reason)
|
|
31
|
+
return t(`errors.${error.reason}`, {
|
|
32
|
+
defaultValue: error.message || fallback,
|
|
33
|
+
});
|
|
34
|
+
return fallback;
|
|
35
|
+
}
|
|
36
|
+
/** The standard error body's `metadata`: machine-readable facts about the failure, such as a plan's row checks. */
|
|
37
|
+
export function errorMetadata(error) {
|
|
38
|
+
const payload = error.payload;
|
|
39
|
+
const metadata = payload?.error?.metadata;
|
|
40
|
+
return metadata && typeof metadata === 'object'
|
|
41
|
+
? metadata
|
|
42
|
+
: undefined;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=use-notify.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-notify.js","sourceRoot":"","sources":["../../../client/hooks/use-notify.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEhC,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAa1D,+FAA+F;AAC/F,MAAM,UAAU,SAAS;IACvB,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,mHAAmH;IACnH,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,gBAAgB,CAAC,CAAC;IAC/C,OAAO,OAAO,CACZ,GAAG,EAAE,CAAC,CAAC;QACL,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;QACjE,IAAI,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,CAC3B,KAAK,OAAO,CAAC,IAAI,CAAC;YAChB,IAAI,EAAE,MAAM;YACZ,KAAK;YACL,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxC,CAAC;QACJ,KAAK,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CACzB,KAAK,OAAO,CAAC,IAAI,CAAC;YAChB,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,IAAI,CAAC,CAAC,sBAAsB,CAAC,CAAC;SAClE,CAAC;KACL,CAAC,EACF,CAAC,OAAO,EAAE,CAAC,CAAC,CACb,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,SAAS,CACvB,CAA6D,EAC7D,KAAc,EACd,QAAgB;IAEhB,IAAI,CAAC,CAAC,KAAK,YAAY,cAAc,CAAC;QAAE,OAAO,QAAQ,CAAC;IACxD,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG;QAAE,OAAO,CAAC,CAAC,kBAAkB,CAAC,CAAC;IACvD,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG;QAAE,OAAO,CAAC,CAAC,iBAAiB,CAAC,CAAC;IACtD,IAAI,KAAK,CAAC,MAAM;QACd,OAAO,CAAC,CAAC,UAAU,KAAK,CAAC,MAAM,EAAE,EAAE;YACjC,YAAY,EAAE,KAAK,CAAC,OAAO,IAAI,QAAQ;SACxC,CAAC,CAAC;IACL,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,mHAAmH;AACnH,MAAM,UAAU,aAAa,CAC3B,KAAqB;IAErB,MAAM,OAAO,GAAG,KAAK,CAAC,OAC4C,CAAC;IACnE,MAAM,QAAQ,GAAG,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC;IAC1C,OAAO,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ;QAC7C,CAAC,CAAE,QAA8C;QACjD,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-pm-api.d.ts","sourceRoot":"","sources":["../../../client/hooks/use-pm-api.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,0EAA0E;AAC1E,wBAAgB,QAAQ,IAAI,KAAK,CAGhC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { useApiClient } from '@nocobase/app-client';
|
|
2
|
+
import { useMemo } from 'react';
|
|
3
|
+
import { PmApi } from '../api/client.js';
|
|
4
|
+
/** The typed `/api/projects` client over the application's API client. */
|
|
5
|
+
export function usePmApi() {
|
|
6
|
+
const api = useApiClient();
|
|
7
|
+
return useMemo(() => new PmApi(api), [api]);
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=use-pm-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-pm-api.js","sourceRoot":"","sources":["../../../client/hooks/use-pm-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEhC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,0EAA0E;AAC1E,MAAM,UAAU,QAAQ;IACtB,MAAM,GAAG,GAAG,YAAY,EAAE,CAAC;IAC3B,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;AAC9C,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { Me } from '../../shared/members.js';
|
|
2
|
+
/**
|
|
3
|
+
* The signed-in user and what they may do (`GET /api/projects/me`). Refetched when their permissions change, so controls
|
|
4
|
+
* follow a role change without a reload. Undefined while loading.
|
|
5
|
+
*/
|
|
6
|
+
export declare function useViewer(): Me | undefined;
|
|
7
|
+
//# sourceMappingURL=use-viewer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-viewer.d.ts","sourceRoot":"","sources":["../../../client/hooks/use-viewer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,yBAAyB,CAAC;AAIlD;;;GAGG;AACH,wBAAgB,SAAS,IAAI,EAAE,GAAG,SAAS,CAQ1C"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { useAuthorizationRevision } from '@nocobase/app-plugin-authorization/client';
|
|
2
|
+
import { useQuery } from '@tanstack/react-query';
|
|
3
|
+
import { pmKeys } from '../api/keys.js';
|
|
4
|
+
import { usePmApi } from './use-pm-api.js';
|
|
5
|
+
/**
|
|
6
|
+
* The signed-in user and what they may do (`GET /api/projects/me`). Refetched when their permissions change, so controls
|
|
7
|
+
* follow a role change without a reload. Undefined while loading.
|
|
8
|
+
*/
|
|
9
|
+
export function useViewer() {
|
|
10
|
+
const api = usePmApi();
|
|
11
|
+
const revision = useAuthorizationRevision();
|
|
12
|
+
return useQuery({
|
|
13
|
+
queryKey: [...pmKeys.me, revision],
|
|
14
|
+
queryFn: () => api.me(),
|
|
15
|
+
staleTime: 60_000,
|
|
16
|
+
}).data;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=use-viewer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-viewer.js","sourceRoot":"","sources":["../../../client/hooks/use-viewer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AACrF,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGjD,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C;;;GAGG;AACH,MAAM,UAAU,SAAS;IACvB,MAAM,GAAG,GAAG,QAAQ,EAAE,CAAC;IACvB,MAAM,QAAQ,GAAG,wBAAwB,EAAE,CAAC;IAC5C,OAAO,QAAQ,CAAC;QACd,QAAQ,EAAE,CAAC,GAAG,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC;QAClC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE;QACvB,SAAS,EAAE,MAAM;KAClB,CAAC,CAAC,IAAI,CAAC;AACV,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../client/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../client/index.ts"],"names":[],"mappings":"AAAA,6GAA6G;AAC7G,yBAAyB;AACzB,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { StatusDefinition } from '../shared/issues.js';
|
|
2
|
+
export { findStatus, statusTone } from './lib/status.js';
|
|
3
|
+
export type { PmTone } from './components/pm-tones.js';
|
|
4
|
+
export { ISSUE_FILTER_PARAMS, hasIssueFilters, readIssueFilters, readStoredIssueView, resolveIssueView, storeIssueView, withDeleted, withIssueFilter, withIssueSort, withIssueView, withoutIssueFilters, type IssueFilterKey, type IssueFilters, type IssueView, } from './pages/issues/filters.js';
|
|
5
|
+
export { useUrlSearch, type UrlSearch } from './pages/issues/use-url-search.js';
|
|
6
|
+
export { flattenIssuePages, useBoardPages, useIssuePages, type BoardGroup, type BoardPages, type ColumnMore, } from './pages/issues/use-issue-pages.js';
|
|
7
|
+
export { useBoardMove, type BoardMove, } from './pages/issues/board/use-board-move.js';
|
|
8
|
+
export { buildBoardColumns, type BoardColumn, } from './pages/issues/board/board-model.js';
|
|
9
|
+
export { useExecutorOptions, useHasOtherExecutors, } from './pages/issues/use-executor-options.js';
|
|
10
|
+
export { myIssueFilters } from './pages/my-issues/my-issues-model.js';
|
|
11
|
+
export type { ExecutorOption } from './components/pm-executor-select.js';
|
|
12
|
+
export { canCreateIssues, canDeleteIssues, canEditIssues, } from './lib/permissions.js';
|
|
13
|
+
export { useNotify, type Notify } from './hooks/use-notify.js';
|
|
14
|
+
/**
|
|
15
|
+
* A status's name in the interface language, translated in this plugin's namespace.
|
|
16
|
+
*/
|
|
17
|
+
export declare function useStatusName(): (statuses: readonly StatusDefinition[] | undefined, key: string) => string;
|
|
18
|
+
export { ISSUE_REACTION_EMOJIS, useIssueCommentActions, useIssueTimeline, useMentionSearch, type IssueCommentActions, type IssueTimeline, type MentionCandidate, type NewComment, } from './pages/issues/detail/use-issue-activity.js';
|
|
19
|
+
export type { TimelineEntry, TimelineRun, } from './pages/issues/detail/timeline.js';
|
|
20
|
+
export { useAuthorLabel } from './pages/issues/detail/use-author-label.js';
|
|
21
|
+
export { isBuiltInKind, useKindLabel } from './lib/kinds.js';
|
|
22
|
+
export { useHasMentionableKinds } from './pages/issues/use-mention-candidates.js';
|
|
23
|
+
export { ATTACHMENT_SIZE_MB, useAttachmentUploads, type AttachmentUploads, type PendingUpload, } from './hooks/use-attachment-uploads.js';
|
|
24
|
+
export { useEventTitle } from './lib/status-events.js';
|
|
25
|
+
export { canComment, canDeleteComment, canEditComment, canUploadAttachments, } from './lib/permissions.js';
|
|
26
|
+
export type { CommentThread, IssueComment } from '../shared/comments.js';
|
|
27
|
+
export { useIssueDetail, useIssuePageActions, type IssuePageActions, } from './pages/issues/detail/use-issue-page.js';
|
|
28
|
+
export { useIssueUpdate, type IssueChanges, type IssueUpdate, } from './pages/issues/detail/use-issue-update.js';
|
|
29
|
+
export { useConfirmedUpdate, type ConfirmedUpdate, } from './pages/issues/detail/use-confirmed-update.js';
|
|
30
|
+
export { groupSubtasksByStage, type StageGroup, } from './pages/issues/detail/subtask-model.js';
|
|
31
|
+
export { useIntakeBreakdown, type IntakeBreakdown, } from './pages/intake/use-intake-breakdown.js';
|
|
32
|
+
export { canChangeIssueOwner, canCloseIssue } from './lib/permissions.js';
|
|
33
|
+
export { isClosing } from './lib/status.js';
|
|
34
|
+
export { STAGE_MAX } from '../shared/subtasks.js';
|
|
35
|
+
//# sourceMappingURL=issues.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"issues.d.ts","sourceRoot":"","sources":["../../client/issues.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The headless parts of the issues pages, for an application that composes `/issues`, `/my-issues` and an issue's page
|
|
3
|
+
* itself (for example, from the UI Library's `issue-table`, `kanban`, `issue-detail`, `comment-thread` and
|
|
4
|
+
* `attachment-list`): the issue list and board queries, moving an issue on the board, the filters and view kept in the
|
|
5
|
+
* query string, the executor options, one issue with every change its page makes and its activity line, and the
|
|
6
|
+
* permission and wording helpers. The plugin keeps these stable; the pages built on them are the application's.
|
|
7
|
+
*
|
|
8
|
+
* The New issue dialog and a plan's page stay the plugin's: the application routes them as its `/issues` page's
|
|
9
|
+
* children (`client/pages.ts`, `issueChildRoutes`), and "New sub-issue" under its issue page (`issueDetailChildRoutes`).
|
|
10
|
+
*/
|
|
11
|
+
import { useTranslation } from '@nocobase/i18n/client';
|
|
12
|
+
import { useCallback } from 'react';
|
|
13
|
+
import { ACCESS_NAMESPACE } from '../shared/access.js';
|
|
14
|
+
import { statusName } from './lib/status.js';
|
|
15
|
+
export { findStatus, statusTone } from './lib/status.js';
|
|
16
|
+
export { ISSUE_FILTER_PARAMS, hasIssueFilters, readIssueFilters, readStoredIssueView, resolveIssueView, storeIssueView, withDeleted, withIssueFilter, withIssueSort, withIssueView, withoutIssueFilters, } from './pages/issues/filters.js';
|
|
17
|
+
export { useUrlSearch } from './pages/issues/use-url-search.js';
|
|
18
|
+
export { flattenIssuePages, useBoardPages, useIssuePages, } from './pages/issues/use-issue-pages.js';
|
|
19
|
+
export { useBoardMove, } from './pages/issues/board/use-board-move.js';
|
|
20
|
+
export { buildBoardColumns, } from './pages/issues/board/board-model.js';
|
|
21
|
+
export { useExecutorOptions, useHasOtherExecutors, } from './pages/issues/use-executor-options.js';
|
|
22
|
+
export { myIssueFilters } from './pages/my-issues/my-issues-model.js';
|
|
23
|
+
export { canCreateIssues, canDeleteIssues, canEditIssues, } from './lib/permissions.js';
|
|
24
|
+
export { useNotify } from './hooks/use-notify.js';
|
|
25
|
+
/**
|
|
26
|
+
* A status's name in the interface language, translated in this plugin's namespace.
|
|
27
|
+
*/
|
|
28
|
+
export function useStatusName() {
|
|
29
|
+
const { t } = useTranslation(ACCESS_NAMESPACE);
|
|
30
|
+
return useCallback((statuses, key) => statusName(t, statuses, key), [t]);
|
|
31
|
+
}
|
|
32
|
+
// An issue's page (`/issues/:issueId`), composed by the application from the UI Library's items.
|
|
33
|
+
export { ISSUE_REACTION_EMOJIS, useIssueCommentActions, useIssueTimeline, useMentionSearch, } from './pages/issues/detail/use-issue-activity.js';
|
|
34
|
+
export { useAuthorLabel } from './pages/issues/detail/use-author-label.js';
|
|
35
|
+
export { isBuiltInKind, useKindLabel } from './lib/kinds.js';
|
|
36
|
+
export { useHasMentionableKinds } from './pages/issues/use-mention-candidates.js';
|
|
37
|
+
export { ATTACHMENT_SIZE_MB, useAttachmentUploads, } from './hooks/use-attachment-uploads.js';
|
|
38
|
+
export { useEventTitle } from './lib/status-events.js';
|
|
39
|
+
export { canComment, canDeleteComment, canEditComment, canUploadAttachments, } from './lib/permissions.js';
|
|
40
|
+
export { useIssueDetail, useIssuePageActions, } from './pages/issues/detail/use-issue-page.js';
|
|
41
|
+
export { useIssueUpdate, } from './pages/issues/detail/use-issue-update.js';
|
|
42
|
+
export { useConfirmedUpdate, } from './pages/issues/detail/use-confirmed-update.js';
|
|
43
|
+
export { groupSubtasksByStage, } from './pages/issues/detail/subtask-model.js';
|
|
44
|
+
export { useIntakeBreakdown, } from './pages/intake/use-intake-breakdown.js';
|
|
45
|
+
export { canChangeIssueOwner, canCloseIssue } from './lib/permissions.js';
|
|
46
|
+
export { isClosing } from './lib/status.js';
|
|
47
|
+
export { STAGE_MAX } from '../shared/subtasks.js';
|
|
48
|
+
//# sourceMappingURL=issues.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"issues.js","sourceRoot":"","sources":["../../client/issues.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAGzD,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,eAAe,EACf,aAAa,EACb,aAAa,EACb,mBAAmB,GAIpB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,YAAY,EAAkB,MAAM,kCAAkC,CAAC;AAChF,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,aAAa,GAId,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,YAAY,GAEb,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,iBAAiB,GAElB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAEtE,OAAO,EACL,eAAe,EACf,eAAe,EACf,aAAa,GACd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAe,MAAM,uBAAuB,CAAC;AAE/D;;GAEG;AACH,MAAM,UAAU,aAAa;IAI3B,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,gBAAgB,CAAC,CAAC;IAC/C,OAAO,WAAW,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED,iGAAiG;AACjG,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,EAChB,gBAAgB,GAKjB,MAAM,6CAA6C,CAAC;AAKrD,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0CAA0C,CAAC;AAClF,OAAO,EACL,kBAAkB,EAClB,oBAAoB,GAGrB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,cAAc,EACd,mBAAmB,GAEpB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,cAAc,GAGf,MAAM,2CAA2C,CAAC;AACnD,OAAO,EACL,kBAAkB,GAEnB,MAAM,+CAA+C,CAAC;AACvD,OAAO,EACL,oBAAoB,GAErB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,kBAAkB,GAEnB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type Dispatch, type SetStateAction, type ReactNode, type ReactElement } from 'react';
|
|
2
|
+
import type { IntakeFile } from '../../shared/intake.js';
|
|
3
|
+
export interface IntakeDraft {
|
|
4
|
+
readonly text: string;
|
|
5
|
+
readonly projectId: string | null | undefined;
|
|
6
|
+
readonly uploads: readonly {
|
|
7
|
+
readonly key: string;
|
|
8
|
+
readonly name: string;
|
|
9
|
+
readonly file: IntakeFile | null;
|
|
10
|
+
}[];
|
|
11
|
+
}
|
|
12
|
+
export declare const emptyIntakeDraft: () => IntakeDraft;
|
|
13
|
+
/** Optional application-lifetime owner; without one, the panel retains its local behavior. */
|
|
14
|
+
export declare function IntakeDraftProvider({ children, }: {
|
|
15
|
+
readonly children: ReactNode;
|
|
16
|
+
}): ReactElement;
|
|
17
|
+
export declare function useIntakeDraft(): readonly [
|
|
18
|
+
IntakeDraft,
|
|
19
|
+
Dispatch<SetStateAction<IntakeDraft>>
|
|
20
|
+
];
|
|
21
|
+
//# sourceMappingURL=intake-draft.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"intake-draft.d.ts","sourceRoot":"","sources":["../../../client/kit/intake-draft.tsx"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,QAAQ,EACb,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,YAAY,EAClB,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,OAAO,EAAE,SAAS;QACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;KAClC,EAAE,CAAC;CACL;AACD,eAAO,MAAM,gBAAgB,QAAO,WAIlC,CAAC;AAKH,8FAA8F;AAC9F,wBAAgB,mBAAmB,CAAC,EAClC,QAAQ,GACT,EAAE;IACD,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC;CAC9B,GAAG,YAAY,CAOf;AACD,wBAAgB,cAAc,IAAI,SAAS;IACzC,WAAW;IACX,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;CACtC,CAIA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
/* eslint-disable react-refresh/only-export-components -- draft provider and its hook */
|
|
3
|
+
import { createContext, useContext, useState, } from 'react';
|
|
4
|
+
export const emptyIntakeDraft = () => ({
|
|
5
|
+
text: '',
|
|
6
|
+
projectId: undefined,
|
|
7
|
+
uploads: [],
|
|
8
|
+
});
|
|
9
|
+
const DraftContext = createContext(null);
|
|
10
|
+
/** Optional application-lifetime owner; without one, the panel retains its local behavior. */
|
|
11
|
+
export function IntakeDraftProvider({ children, }) {
|
|
12
|
+
const [draft, setDraft] = useState(emptyIntakeDraft);
|
|
13
|
+
return (_jsx(DraftContext.Provider, { value: [draft, setDraft], children: children }));
|
|
14
|
+
}
|
|
15
|
+
export function useIntakeDraft() {
|
|
16
|
+
const shared = useContext(DraftContext);
|
|
17
|
+
const [draft, setDraft] = useState(emptyIntakeDraft);
|
|
18
|
+
return shared ?? [draft, setDraft];
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=intake-draft.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"intake-draft.js","sourceRoot":"","sources":["../../../client/kit/intake-draft.tsx"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,OAAO,EACL,aAAa,EACb,UAAU,EACV,QAAQ,GAKT,MAAM,OAAO,CAAC;AAYf,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAgB,EAAE,CAAC,CAAC;IAClD,IAAI,EAAE,EAAE;IACR,SAAS,EAAE,SAAS;IACpB,OAAO,EAAE,EAAE;CACZ,CAAC,CAAC;AACH,MAAM,YAAY,GAAG,aAAa,CAEhC,IAAI,CAAC,CAAC;AAER,8FAA8F;AAC9F,MAAM,UAAU,mBAAmB,CAAC,EAClC,QAAQ,GAGT;IACC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAc,gBAAgB,CAAC,CAAC;IAClE,OAAO,CACL,KAAC,YAAY,CAAC,QAAQ,IAAC,KAAK,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,YAC5C,QAAQ,GACa,CACzB,CAAC;AACJ,CAAC;AACD,MAAM,UAAU,cAAc;IAI5B,MAAM,MAAM,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IACxC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAc,gBAAgB,CAAC,CAAC;IAClE,OAAO,MAAM,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AACrC,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What the page shows, for an assistant, and the places an assistant's buttons go. This plugin knows nothing of
|
|
3
|
+
* agents: its pages register what they show (`usePageContextSource`) and place a slot (`IntakeAgentSlot`); all of
|
|
4
|
+
* it is inert until the application mounts a `PageContextProvider` and fills the slot's context — the assembling application does, with the agents plugin's chat panel.
|
|
5
|
+
*
|
|
6
|
+
* A page registers one entry per thing it shows (the issue, the project, a list's filters, the selected inbox item)
|
|
7
|
+
* and the provider keeps them in registration order while the page is mounted. Entries carry ids and a label for the
|
|
8
|
+
* tag only; whoever sends them on resolves the ids again and drops what the asker may not see. Limits as NocoProject
|
|
9
|
+
* had them: at most `PAGE_CONTEXT_MAX_ENTRIES` entries, `PAGE_CONTEXT_MAX_FILTERS` filter keys, a label of
|
|
10
|
+
* `PAGE_CONTEXT_MAX_LABEL` characters and a text of `PAGE_CONTEXT_MAX_TEXT`.
|
|
11
|
+
*/
|
|
12
|
+
import { type ComponentType, type Context } from 'react';
|
|
13
|
+
export declare const PAGE_CONTEXT_MAX_ENTRIES = 10;
|
|
14
|
+
export declare const PAGE_CONTEXT_MAX_FILTERS = 20;
|
|
15
|
+
export declare const PAGE_CONTEXT_MAX_IDS = 10;
|
|
16
|
+
export declare const PAGE_CONTEXT_MAX_LABEL = 200;
|
|
17
|
+
export declare const PAGE_CONTEXT_MAX_TEXT = 2000;
|
|
18
|
+
/** Kinds the plugin's pages register; others may add their own. */
|
|
19
|
+
export type PageContextKind = 'issue' | 'project' | 'issues' | 'inbox' | 'plan' | (string & {});
|
|
20
|
+
export interface PageContextEntry {
|
|
21
|
+
readonly kind: PageContextKind;
|
|
22
|
+
/** The record shown, when it is one. */
|
|
23
|
+
readonly id?: string;
|
|
24
|
+
/** How a tag names it (`PM-12 Fix sign-in`, a project's name). Shown only; never trusted. */
|
|
25
|
+
readonly label?: string;
|
|
26
|
+
/** A list's filters, as the page's query values (`issues`). */
|
|
27
|
+
readonly filters?: Readonly<Record<string, string>>;
|
|
28
|
+
/** The records selected on the page. */
|
|
29
|
+
readonly ids?: readonly string[];
|
|
30
|
+
/** Selected text. */
|
|
31
|
+
readonly text?: string;
|
|
32
|
+
}
|
|
33
|
+
/** Where pages register what they show; the application's provider implements it. */
|
|
34
|
+
export interface PageContextSink {
|
|
35
|
+
/** Registers or replaces `key`'s entry; answers what removes it. */
|
|
36
|
+
register(key: string, entry: PageContextEntry): () => void;
|
|
37
|
+
}
|
|
38
|
+
export declare const PageContextSinkContext: Context<PageContextSink | null>;
|
|
39
|
+
/** An entry within the limits. */
|
|
40
|
+
export declare function normalizeEntry(entry: PageContextEntry): PageContextEntry;
|
|
41
|
+
/**
|
|
42
|
+
* Registers what the page shows while it is mounted; null registers nothing. Without a provider it does nothing. The
|
|
43
|
+
* entry is compared by value, so an object built during render does not register again on every render.
|
|
44
|
+
*/
|
|
45
|
+
export declare function usePageContextSource(entry: PageContextEntry | null): void;
|
|
46
|
+
/** A store of registered entries, for a provider. */
|
|
47
|
+
export interface PageContextStore extends PageContextSink {
|
|
48
|
+
/** The entries, oldest registration first, at most `PAGE_CONTEXT_MAX_ENTRIES`. */
|
|
49
|
+
readonly entries: () => readonly PageContextEntry[];
|
|
50
|
+
readonly subscribe: (listener: () => void) => () => void;
|
|
51
|
+
}
|
|
52
|
+
export declare function createPageContextStore(): PageContextStore;
|
|
53
|
+
/** The store a `PageContextProvider` holds, for `usePageContextEntries`. */
|
|
54
|
+
export declare const PageContextStoreContext: Context<PageContextStore | null>;
|
|
55
|
+
/** What the pages under the nearest `PageContextProvider` show now; empty without one. */
|
|
56
|
+
export declare function usePageContextEntries(): readonly PageContextEntry[];
|
|
57
|
+
/** What the AI draft tab hands to "Let an agent organize". */
|
|
58
|
+
export interface IntakeAgentSlotProps {
|
|
59
|
+
/** The text as typed. */
|
|
60
|
+
readonly text: string;
|
|
61
|
+
/** The uploaded files (`POST /api/projects/intake/files`), the caller's own. */
|
|
62
|
+
readonly fileIds: readonly string[];
|
|
63
|
+
readonly projectId: string | null;
|
|
64
|
+
/** True while the page cannot hand anything over (nothing typed, an upload running). */
|
|
65
|
+
readonly disabled: boolean;
|
|
66
|
+
/** Shows the plan the agent proposed in place of the draft. */
|
|
67
|
+
readonly onPlan: (planId: string) => void;
|
|
68
|
+
readonly className?: string;
|
|
69
|
+
}
|
|
70
|
+
/** What fills the AI draft tab's slot; nothing fills it by default. */
|
|
71
|
+
export interface IntakeAgentSlotFill {
|
|
72
|
+
readonly Organize: ComponentType<IntakeAgentSlotProps>;
|
|
73
|
+
}
|
|
74
|
+
export declare const IntakeAgentSlotContext: Context<IntakeAgentSlotFill | null>;
|
|
75
|
+
//# sourceMappingURL=page-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"page-context.d.ts","sourceRoot":"","sources":["../../../client/kit/page-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAML,KAAK,aAAa,EAClB,KAAK,OAAO,EACb,MAAM,OAAO,CAAC;AAEf,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAC3C,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAC3C,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAC1C,eAAO,MAAM,qBAAqB,OAAO,CAAC;AAE1C,mEAAmE;AACnE,MAAM,MAAM,eAAe,GACzB,OAAO,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAEpE,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,wCAAwC;IACxC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB,6FAA6F;IAC7F,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,+DAA+D;IAC/D,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACpD,wCAAwC;IACxC,QAAQ,CAAC,GAAG,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,qBAAqB;IACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,qFAAqF;AACrF,MAAM,WAAW,eAAe;IAC9B,oEAAoE;IACpE,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,GAAG,MAAM,IAAI,CAAC;CAC5D;AAED,eAAO,MAAM,sBAAsB,EAAE,OAAO,CAAC,eAAe,GAAG,IAAI,CACtB,CAAC;AAE9C,kCAAkC;AAClC,wBAAgB,cAAc,CAAC,KAAK,EAAE,gBAAgB,GAAG,gBAAgB,CAoBxE;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,GAAG,IAAI,CAWzE;AAED,qDAAqD;AACrD,MAAM,WAAW,gBAAiB,SAAQ,eAAe;IACvD,kFAAkF;IAClF,QAAQ,CAAC,OAAO,EAAE,MAAM,SAAS,gBAAgB,EAAE,CAAC;IACpD,QAAQ,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,MAAM,IAAI,CAAC;CAC1D;AAED,wBAAgB,sBAAsB,IAAI,gBAAgB,CA0BzD;AAED,4EAA4E;AAC5E,eAAO,MAAM,uBAAuB,EAAE,OAAO,CAAC,gBAAgB,GAAG,IAAI,CACvB,CAAC;AAK/C,0FAA0F;AAC1F,wBAAgB,qBAAqB,IAAI,SAAS,gBAAgB,EAAE,CAOnE;AAMD,8DAA8D;AAC9D,MAAM,WAAW,oBAAoB;IACnC,yBAAyB;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,gFAAgF;IAChF,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,wFAAwF;IACxF,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,+DAA+D;IAC/D,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,uEAAuE;AACvE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAC;CACxD;AAED,eAAO,MAAM,sBAAsB,EAAE,OAAO,CAAC,mBAAmB,GAAG,IAAI,CACtB,CAAC"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What the page shows, for an assistant, and the places an assistant's buttons go. This plugin knows nothing of
|
|
3
|
+
* agents: its pages register what they show (`usePageContextSource`) and place a slot (`IntakeAgentSlot`); all of
|
|
4
|
+
* it is inert until the application mounts a `PageContextProvider` and fills the slot's context — the assembling application does, with the agents plugin's chat panel.
|
|
5
|
+
*
|
|
6
|
+
* A page registers one entry per thing it shows (the issue, the project, a list's filters, the selected inbox item)
|
|
7
|
+
* and the provider keeps them in registration order while the page is mounted. Entries carry ids and a label for the
|
|
8
|
+
* tag only; whoever sends them on resolves the ids again and drops what the asker may not see. Limits as NocoProject
|
|
9
|
+
* had them: at most `PAGE_CONTEXT_MAX_ENTRIES` entries, `PAGE_CONTEXT_MAX_FILTERS` filter keys, a label of
|
|
10
|
+
* `PAGE_CONTEXT_MAX_LABEL` characters and a text of `PAGE_CONTEXT_MAX_TEXT`.
|
|
11
|
+
*/
|
|
12
|
+
import { createContext, useContext, useEffect, useId, useSyncExternalStore, } from 'react';
|
|
13
|
+
export const PAGE_CONTEXT_MAX_ENTRIES = 10;
|
|
14
|
+
export const PAGE_CONTEXT_MAX_FILTERS = 20;
|
|
15
|
+
export const PAGE_CONTEXT_MAX_IDS = 10;
|
|
16
|
+
export const PAGE_CONTEXT_MAX_LABEL = 200;
|
|
17
|
+
export const PAGE_CONTEXT_MAX_TEXT = 2000;
|
|
18
|
+
export const PageContextSinkContext = createContext(null);
|
|
19
|
+
/** An entry within the limits. */
|
|
20
|
+
export function normalizeEntry(entry) {
|
|
21
|
+
const filters = entry.filters
|
|
22
|
+
? Object.fromEntries(Object.entries(entry.filters)
|
|
23
|
+
.filter(([, value]) => typeof value === 'string' && value !== '')
|
|
24
|
+
.slice(0, PAGE_CONTEXT_MAX_FILTERS))
|
|
25
|
+
: undefined;
|
|
26
|
+
return {
|
|
27
|
+
kind: entry.kind,
|
|
28
|
+
...(entry.id ? { id: entry.id } : {}),
|
|
29
|
+
...(entry.label
|
|
30
|
+
? { label: entry.label.slice(0, PAGE_CONTEXT_MAX_LABEL) }
|
|
31
|
+
: {}),
|
|
32
|
+
...(filters && Object.keys(filters).length > 0 ? { filters } : {}),
|
|
33
|
+
...(entry.ids && entry.ids.length > 0
|
|
34
|
+
? { ids: entry.ids.slice(0, PAGE_CONTEXT_MAX_IDS) }
|
|
35
|
+
: {}),
|
|
36
|
+
...(entry.text ? { text: entry.text.slice(0, PAGE_CONTEXT_MAX_TEXT) } : {}),
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Registers what the page shows while it is mounted; null registers nothing. Without a provider it does nothing. The
|
|
41
|
+
* entry is compared by value, so an object built during render does not register again on every render.
|
|
42
|
+
*/
|
|
43
|
+
export function usePageContextSource(entry) {
|
|
44
|
+
const sink = useContext(PageContextSinkContext);
|
|
45
|
+
const registrationId = useId();
|
|
46
|
+
const serialized = entry ? JSON.stringify(normalizeEntry(entry)) : null;
|
|
47
|
+
useEffect(() => {
|
|
48
|
+
if (!sink || serialized === null)
|
|
49
|
+
return undefined;
|
|
50
|
+
return sink.register(registrationId, JSON.parse(serialized));
|
|
51
|
+
}, [sink, registrationId, serialized]);
|
|
52
|
+
}
|
|
53
|
+
export function createPageContextStore() {
|
|
54
|
+
const byKey = new Map();
|
|
55
|
+
const listeners = new Set();
|
|
56
|
+
let snapshot = [];
|
|
57
|
+
const changed = () => {
|
|
58
|
+
snapshot = [...byKey.values()].slice(0, PAGE_CONTEXT_MAX_ENTRIES);
|
|
59
|
+
for (const listener of listeners)
|
|
60
|
+
listener();
|
|
61
|
+
};
|
|
62
|
+
return {
|
|
63
|
+
register(key, entry) {
|
|
64
|
+
byKey.set(key, normalizeEntry(entry));
|
|
65
|
+
changed();
|
|
66
|
+
return () => {
|
|
67
|
+
if (byKey.get(key) === undefined)
|
|
68
|
+
return;
|
|
69
|
+
byKey.delete(key);
|
|
70
|
+
changed();
|
|
71
|
+
};
|
|
72
|
+
},
|
|
73
|
+
entries: () => snapshot,
|
|
74
|
+
subscribe: (listener) => {
|
|
75
|
+
listeners.add(listener);
|
|
76
|
+
return () => {
|
|
77
|
+
listeners.delete(listener);
|
|
78
|
+
};
|
|
79
|
+
},
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
/** The store a `PageContextProvider` holds, for `usePageContextEntries`. */
|
|
83
|
+
export const PageContextStoreContext = createContext(null);
|
|
84
|
+
const NO_ENTRIES = [];
|
|
85
|
+
const noSubscription = () => () => undefined;
|
|
86
|
+
/** What the pages under the nearest `PageContextProvider` show now; empty without one. */
|
|
87
|
+
export function usePageContextEntries() {
|
|
88
|
+
const store = useContext(PageContextStoreContext);
|
|
89
|
+
return useSyncExternalStore(store ? store.subscribe : noSubscription, store ? store.entries : () => NO_ENTRIES, store ? store.entries : () => NO_ENTRIES);
|
|
90
|
+
}
|
|
91
|
+
export const IntakeAgentSlotContext = createContext(null);
|
|
92
|
+
//# sourceMappingURL=page-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"page-context.js","sourceRoot":"","sources":["../../../client/kit/page-context.ts"],"names":[],"mappings":"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"}
|