@proletariat/cli 0.3.92 → 0.3.94
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/dist/commands/action/create.d.ts +1 -1
- package/dist/commands/action/delete.d.ts +1 -1
- package/dist/commands/action/index.d.ts +1 -1
- package/dist/commands/action/list.d.ts +1 -1
- package/dist/commands/action/run.d.ts +1 -1
- package/dist/commands/action/show.d.ts +1 -1
- package/dist/commands/action/update.d.ts +1 -1
- package/dist/commands/agent/auth.js +2 -6
- package/dist/commands/agent/auth.js.map +1 -1
- package/dist/commands/agent/cleanup.d.ts +1 -1
- package/dist/commands/agent/cleanup.js +5 -5
- package/dist/commands/agent/cleanup.js.map +1 -1
- package/dist/commands/{project/list.d.ts → agent/gc.d.ts} +4 -3
- package/dist/commands/agent/gc.js +75 -0
- package/dist/commands/agent/gc.js.map +1 -0
- package/dist/commands/agent/index.d.ts +1 -1
- package/dist/commands/agent/list.d.ts +1 -1
- package/dist/commands/agent/list.js +2 -2
- package/dist/commands/agent/list.js.map +1 -1
- package/dist/commands/agent/login.d.ts +1 -1
- package/dist/commands/agent/rebuild.d.ts +1 -1
- package/dist/commands/agent/remove.d.ts +1 -1
- package/dist/commands/agent/restart.d.ts +1 -1
- package/dist/commands/agent/shell.d.ts +1 -1
- package/dist/commands/agent/shell.js +3 -5
- package/dist/commands/agent/shell.js.map +1 -1
- package/dist/commands/agent/staff/index.d.ts +1 -1
- package/dist/commands/agent/staff/remove.d.ts +1 -1
- package/dist/commands/agent/status.d.ts +1 -1
- package/dist/commands/agent/visit.d.ts +1 -1
- package/dist/commands/asana/import.d.ts +1 -1
- package/dist/commands/branch/create.d.ts +1 -1
- package/dist/commands/branch/create.js +2 -2
- package/dist/commands/branch/create.js.map +1 -1
- package/dist/commands/branch/index.d.ts +1 -1
- package/dist/commands/branch/list.d.ts +1 -1
- package/dist/commands/branch/validate.d.ts +1 -1
- package/dist/commands/branch/where.d.ts +1 -1
- package/dist/commands/claude/index.js +2 -2
- package/dist/commands/claude/index.js.map +1 -1
- package/dist/commands/claude/open.js +11 -5
- package/dist/commands/claude/open.js.map +1 -1
- package/dist/commands/config/index.js +88 -7
- package/dist/commands/config/index.js.map +1 -1
- package/dist/commands/db/repair.js +2 -2
- package/dist/commands/db/repair.js.map +1 -1
- package/dist/commands/diet.d.ts +1 -1
- package/dist/commands/docker/clean.js +2 -4
- package/dist/commands/docker/clean.js.map +1 -1
- package/dist/commands/docker/index.js +4 -4
- package/dist/commands/docker/index.js.map +1 -1
- package/dist/commands/docker/list.js +2 -4
- package/dist/commands/docker/list.js.map +1 -1
- package/dist/commands/docker/logs.js +2 -4
- package/dist/commands/docker/logs.js.map +1 -1
- package/dist/commands/docker/rebuild-cache.d.ts +12 -0
- package/dist/commands/docker/rebuild-cache.js +144 -0
- package/dist/commands/docker/rebuild-cache.js.map +1 -0
- package/dist/commands/docker/restart.js +2 -4
- package/dist/commands/docker/restart.js.map +1 -1
- package/dist/commands/docker/shell.js +2 -4
- package/dist/commands/docker/shell.js.map +1 -1
- package/dist/commands/docker/start.js +2 -4
- package/dist/commands/docker/start.js.map +1 -1
- package/dist/commands/docker/stop.js +2 -4
- package/dist/commands/docker/stop.js.map +1 -1
- package/dist/commands/docker/sync.js +2 -4
- package/dist/commands/docker/sync.js.map +1 -1
- package/dist/commands/execution/config.d.ts +1 -1
- package/dist/commands/execution/config.js +39 -0
- package/dist/commands/execution/config.js.map +1 -1
- package/dist/commands/execution/index.d.ts +1 -1
- package/dist/commands/execution/list.d.ts +1 -1
- package/dist/commands/execution/list.js +2 -4
- package/dist/commands/execution/list.js.map +1 -1
- package/dist/commands/execution/logs.d.ts +1 -1
- package/dist/commands/execution/logs.js +2 -4
- package/dist/commands/execution/logs.js.map +1 -1
- package/dist/commands/execution/stop.d.ts +1 -1
- package/dist/commands/execution/stop.js +2 -4
- package/dist/commands/execution/stop.js.map +1 -1
- package/dist/commands/execution/view.d.ts +1 -1
- package/dist/commands/execution/view.js +2 -4
- package/dist/commands/execution/view.js.map +1 -1
- package/dist/commands/gh/login.js +2 -1
- package/dist/commands/gh/login.js.map +1 -1
- package/dist/commands/gh/status.js +18 -2
- package/dist/commands/gh/status.js.map +1 -1
- package/dist/commands/{ticket/bulk.d.ts → hook/export.d.ts} +8 -5
- package/dist/commands/hook/export.js +52 -0
- package/dist/commands/hook/export.js.map +1 -0
- package/dist/commands/hook/fire.d.ts +29 -0
- package/dist/commands/hook/fire.js +139 -0
- package/dist/commands/hook/fire.js.map +1 -0
- package/dist/commands/{project → hook}/index.d.ts +5 -5
- package/dist/commands/hook/index.js +53 -0
- package/dist/commands/hook/index.js.map +1 -0
- package/dist/commands/{board/index.d.ts → hook/list.d.ts} +10 -12
- package/dist/commands/hook/list.js +136 -0
- package/dist/commands/hook/list.js.map +1 -0
- package/dist/commands/{project/archive.d.ts → hook/preset.d.ts} +11 -7
- package/dist/commands/hook/preset.js +76 -0
- package/dist/commands/hook/preset.js.map +1 -0
- package/dist/commands/linear/auth.d.ts +1 -1
- package/dist/commands/linear/connect.d.ts +1 -1
- package/dist/commands/linear/import.d.ts +1 -1
- package/dist/commands/linear/status.d.ts +1 -1
- package/dist/commands/linear/sync.d.ts +1 -1
- package/dist/commands/mcp-server.d.ts +8 -2
- package/dist/commands/mcp-server.js +17 -31
- package/dist/commands/mcp-server.js.map +1 -1
- package/dist/commands/monday/connect.d.ts +1 -1
- package/dist/commands/monday/sync.d.ts +1 -1
- package/dist/commands/orchestrate/index.d.ts +35 -0
- package/dist/commands/orchestrate/index.js +267 -0
- package/dist/commands/orchestrate/index.js.map +1 -0
- package/dist/commands/orchestrator/attach.js +2 -3
- package/dist/commands/orchestrator/attach.js.map +1 -1
- package/dist/commands/orchestrator/index.d.ts +1 -1
- package/dist/commands/orchestrator/start.d.ts +3 -3
- package/dist/commands/orchestrator/start.js +32 -43
- package/dist/commands/orchestrator/start.js.map +1 -1
- package/dist/commands/orchestrator/stop.js +21 -26
- package/dist/commands/orchestrator/stop.js.map +1 -1
- package/dist/commands/pr/checks.d.ts +1 -1
- package/dist/commands/pr/close.d.ts +1 -1
- package/dist/commands/pr/create.d.ts +1 -1
- package/dist/commands/pr/index.d.ts +1 -1
- package/dist/commands/pr/link.d.ts +1 -1
- package/dist/commands/pr/list.d.ts +1 -1
- package/dist/commands/pr/merge.d.ts +1 -1
- package/dist/commands/pr/status.d.ts +1 -1
- package/dist/commands/pull.d.ts +1 -1
- package/dist/commands/qa/index.js +3 -3
- package/dist/commands/qa/index.js.map +1 -1
- package/dist/commands/repo/add.d.ts +1 -1
- package/dist/commands/repo/create.d.ts +1 -1
- package/dist/commands/repo/fix-remotes.d.ts +1 -1
- package/dist/commands/repo/index.d.ts +1 -1
- package/dist/commands/repo/list.d.ts +1 -1
- package/dist/commands/repo/remove.d.ts +1 -1
- package/dist/commands/repo/view.d.ts +1 -1
- package/dist/commands/session/attach.d.ts +1 -1
- package/dist/commands/session/attach.js +5 -7
- package/dist/commands/session/attach.js.map +1 -1
- package/dist/commands/session/cleanup.d.ts +1 -1
- package/dist/commands/session/cleanup.js +2 -4
- package/dist/commands/session/cleanup.js.map +1 -1
- package/dist/commands/session/create.d.ts +1 -1
- package/dist/commands/session/exec.d.ts +1 -1
- package/dist/commands/session/exec.js +2 -3
- package/dist/commands/session/exec.js.map +1 -1
- package/dist/commands/session/health.d.ts +1 -1
- package/dist/commands/session/health.js +2 -4
- package/dist/commands/session/health.js.map +1 -1
- package/dist/commands/session/index.d.ts +1 -1
- package/dist/commands/session/inspect.d.ts +1 -1
- package/dist/commands/session/inspect.js +2 -3
- package/dist/commands/session/inspect.js.map +1 -1
- package/dist/commands/session/list.d.ts +1 -1
- package/dist/commands/session/list.js +2 -4
- package/dist/commands/session/list.js.map +1 -1
- package/dist/commands/session/peek.d.ts +1 -1
- package/dist/commands/session/peek.js +3 -6
- package/dist/commands/session/peek.js.map +1 -1
- package/dist/commands/session/poke.js +2 -4
- package/dist/commands/session/poke.js.map +1 -1
- package/dist/commands/session/prune.d.ts +1 -1
- package/dist/commands/session/prune.js +2 -4
- package/dist/commands/session/prune.js.map +1 -1
- package/dist/commands/session/report.d.ts +1 -1
- package/dist/commands/session/report.js +2 -4
- package/dist/commands/session/report.js.map +1 -1
- package/dist/commands/session/restart.d.ts +1 -1
- package/dist/commands/session/restart.js +2 -3
- package/dist/commands/session/restart.js.map +1 -1
- package/dist/commands/shortcut/connect.d.ts +1 -1
- package/dist/commands/support/logs.d.ts +1 -1
- package/dist/commands/ticket/create.d.ts +4 -5
- package/dist/commands/ticket/create.js +69 -88
- package/dist/commands/ticket/create.js.map +1 -1
- package/dist/commands/ticket/delete.d.ts +1 -1
- package/dist/commands/ticket/edit.d.ts +1 -1
- package/dist/commands/ticket/edit.js +22 -14
- package/dist/commands/ticket/edit.js.map +1 -1
- package/dist/commands/ticket/index.d.ts +1 -1
- package/dist/commands/ticket/index.js +6 -36
- package/dist/commands/ticket/index.js.map +1 -1
- package/dist/commands/ticket/list.d.ts +1 -1
- package/dist/commands/ticket/move.d.ts +1 -1
- package/dist/commands/ticket/show.d.ts +8 -7
- package/dist/commands/ticket/show.js +101 -8
- package/dist/commands/ticket/show.js.map +1 -1
- package/dist/commands/ticket/update.d.ts +1 -1
- package/dist/commands/ticket/update.js +31 -14
- package/dist/commands/ticket/update.js.map +1 -1
- package/dist/commands/trello/configure.d.ts +1 -1
- package/dist/commands/trello/import.d.ts +1 -1
- package/dist/commands/trello/sync.d.ts +1 -1
- package/dist/commands/work/asana.d.ts +1 -1
- package/dist/commands/work/complete.d.ts +1 -1
- package/dist/commands/work/complete.js +2 -3
- package/dist/commands/work/complete.js.map +1 -1
- package/dist/commands/work/groom.d.ts +1 -1
- package/dist/commands/work/hooks/add.d.ts +1 -1
- package/dist/commands/work/hooks/add.js +2 -4
- package/dist/commands/work/hooks/add.js.map +1 -1
- package/dist/commands/work/hooks/index.d.ts +1 -1
- package/dist/commands/work/hooks/list.d.ts +1 -1
- package/dist/commands/work/hooks/list.js +2 -4
- package/dist/commands/work/hooks/list.js.map +1 -1
- package/dist/commands/work/hooks/remove.d.ts +1 -1
- package/dist/commands/work/hooks/remove.js +2 -4
- package/dist/commands/work/hooks/remove.js.map +1 -1
- package/dist/commands/work/hooks/toggle.d.ts +1 -1
- package/dist/commands/work/hooks/toggle.js +2 -4
- package/dist/commands/work/hooks/toggle.js.map +1 -1
- package/dist/commands/work/implement.d.ts +1 -1
- package/dist/commands/work/index.d.ts +1 -1
- package/dist/commands/work/index.js +4 -0
- package/dist/commands/work/index.js.map +1 -1
- package/dist/commands/work/jira.d.ts +1 -1
- package/dist/commands/work/linear.d.ts +1 -1
- package/dist/commands/work/peek.d.ts +1 -1
- package/dist/commands/work/ready.d.ts +1 -1
- package/dist/commands/work/ready.js +2 -3
- package/dist/commands/work/ready.js.map +1 -1
- package/dist/commands/work/rebase.d.ts +33 -0
- package/dist/commands/work/rebase.js +394 -0
- package/dist/commands/work/rebase.js.map +1 -0
- package/dist/commands/work/resolve.d.ts +1 -1
- package/dist/commands/work/review.d.ts +1 -1
- package/dist/commands/work/ship.d.ts +2 -1
- package/dist/commands/work/ship.js +49 -4
- package/dist/commands/work/ship.js.map +1 -1
- package/dist/commands/work/shortcut.d.ts +1 -1
- package/dist/commands/work/source/set.d.ts +1 -1
- package/dist/commands/work/source.d.ts +1 -1
- package/dist/commands/work/spawn.d.ts +1 -1
- package/dist/commands/work/spawn.js +2 -4
- package/dist/commands/work/spawn.js.map +1 -1
- package/dist/commands/work/start.d.ts +8 -1
- package/dist/commands/work/start.js +190 -22
- package/dist/commands/work/start.js.map +1 -1
- package/dist/commands/work/status.d.ts +1 -1
- package/dist/commands/work/stop.d.ts +1 -1
- package/dist/commands/work/stop.js +2 -4
- package/dist/commands/work/stop.js.map +1 -1
- package/dist/commands/work/watch.d.ts +1 -1
- package/dist/commands/work/watch.js +2 -4
- package/dist/commands/work/watch.js.map +1 -1
- package/dist/hooks/init.js +2 -2
- package/dist/hooks/init.js.map +1 -1
- package/dist/lib/agents/commands.d.ts +9 -3
- package/dist/lib/agents/commands.js +103 -88
- package/dist/lib/agents/commands.js.map +1 -1
- package/dist/lib/asana/config.js +13 -7
- package/dist/lib/asana/config.js.map +1 -1
- package/dist/lib/clickup/client.d.ts +92 -0
- package/dist/lib/clickup/client.js +150 -0
- package/dist/lib/clickup/client.js.map +1 -0
- package/dist/lib/clickup/config.d.ts +41 -0
- package/dist/lib/clickup/config.js +104 -0
- package/dist/lib/clickup/config.js.map +1 -0
- package/dist/lib/clickup/index.d.ts +4 -0
- package/dist/lib/clickup/index.js +4 -0
- package/dist/lib/clickup/index.js.map +1 -0
- package/dist/lib/clickup/types.d.ts +104 -0
- package/dist/lib/clickup/types.js +34 -0
- package/dist/lib/clickup/types.js.map +1 -0
- package/dist/lib/dashboard/server.js +1 -1
- package/dist/lib/dashboard/server.js.map +1 -1
- package/dist/lib/database/agents.d.ts +62 -4
- package/dist/lib/database/agents.js +161 -8
- package/dist/lib/database/agents.js.map +1 -1
- package/dist/lib/database/credential-store.d.ts +64 -0
- package/dist/lib/database/credential-store.js +306 -0
- package/dist/lib/database/credential-store.js.map +1 -0
- package/dist/lib/database/db-safety.js +4 -4
- package/dist/lib/database/db-safety.js.map +1 -1
- package/dist/lib/database/drizzle-schema.d.ts +2 -2
- package/dist/lib/database/drizzle-schema.js +2 -1
- package/dist/lib/database/drizzle-schema.js.map +1 -1
- package/dist/lib/database/index.d.ts +2 -1
- package/dist/lib/database/index.js +3 -1
- package/dist/lib/database/index.js.map +1 -1
- package/dist/lib/database/migrations/0013_agent_lifecycle_states.d.ts +11 -0
- package/dist/lib/database/migrations/0013_agent_lifecycle_states.js +47 -0
- package/dist/lib/database/migrations/0013_agent_lifecycle_states.js.map +1 -0
- package/dist/lib/database/migrations/0014_agent_work_lifecycle.d.ts +10 -0
- package/dist/lib/database/migrations/0014_agent_work_lifecycle.js +31 -0
- package/dist/lib/database/migrations/0014_agent_work_lifecycle.js.map +1 -0
- package/dist/lib/database/migrations/0015_orchestrate_hooks.d.ts +8 -0
- package/dist/lib/database/migrations/0015_orchestrate_hooks.js +35 -0
- package/dist/lib/database/migrations/0015_orchestrate_hooks.js.map +1 -0
- package/dist/lib/database/migrations/0016_schema_catchup.d.ts +15 -0
- package/dist/lib/database/migrations/0016_schema_catchup.js +154 -0
- package/dist/lib/database/migrations/0016_schema_catchup.js.map +1 -0
- package/dist/lib/database/migrations/index.js +8 -0
- package/dist/lib/database/migrations/index.js.map +1 -1
- package/dist/lib/database/pmo-bootstrap.d.ts +7 -0
- package/dist/lib/database/pmo-bootstrap.js +47 -22
- package/dist/lib/database/pmo-bootstrap.js.map +1 -1
- package/dist/lib/database/workspace-schema.d.ts +1 -1
- package/dist/lib/database/workspace-schema.js +3 -1
- package/dist/lib/database/workspace-schema.js.map +1 -1
- package/dist/lib/database/workspace.js +4 -0
- package/dist/lib/database/workspace.js.map +1 -1
- package/dist/lib/events/events.d.ts +28 -0
- package/dist/lib/events/index.d.ts +1 -1
- package/dist/lib/events/index.js.map +1 -1
- package/dist/lib/execution/config.d.ts +2 -0
- package/dist/lib/execution/config.js +14 -0
- package/dist/lib/execution/config.js.map +1 -1
- package/dist/lib/execution/devcontainer.js +51 -0
- package/dist/lib/execution/devcontainer.js.map +1 -1
- package/dist/lib/execution/runners/devcontainer-tmux.js +1 -1
- package/dist/lib/execution/runners/devcontainer-tmux.js.map +1 -1
- package/dist/lib/execution/runners/devcontainer.js +9 -1
- package/dist/lib/execution/runners/devcontainer.js.map +1 -1
- package/dist/lib/execution/runners/docker-credentials.d.ts +8 -0
- package/dist/lib/execution/runners/docker-credentials.js +20 -3
- package/dist/lib/execution/runners/docker-credentials.js.map +1 -1
- package/dist/lib/execution/runners/docker-management.d.ts +54 -0
- package/dist/lib/execution/runners/docker-management.js +194 -7
- package/dist/lib/execution/runners/docker-management.js.map +1 -1
- package/dist/lib/execution/runners/index.d.ts +1 -1
- package/dist/lib/execution/runners/index.js +1 -1
- package/dist/lib/execution/runners/index.js.map +1 -1
- package/dist/lib/execution/runners/shared.d.ts +23 -1
- package/dist/lib/execution/runners/shared.js +112 -1
- package/dist/lib/execution/runners/shared.js.map +1 -1
- package/dist/lib/execution/session-utils.d.ts +4 -0
- package/dist/lib/execution/session-utils.js +34 -24
- package/dist/lib/execution/session-utils.js.map +1 -1
- package/dist/lib/execution/spawner.js +8 -1
- package/dist/lib/execution/spawner.js.map +1 -1
- package/dist/lib/execution/types.js +1 -1
- package/dist/lib/external-issues/types.d.ts +3 -3
- package/dist/lib/external-issues/types.js +1 -1
- package/dist/lib/external-issues/types.js.map +1 -1
- package/dist/lib/jira/config.js +10 -4
- package/dist/lib/jira/config.js.map +1 -1
- package/dist/lib/linear/client.d.ts +13 -0
- package/dist/lib/linear/client.js +37 -0
- package/dist/lib/linear/client.js.map +1 -1
- package/dist/lib/linear/config.js +13 -8
- package/dist/lib/linear/config.js.map +1 -1
- package/dist/lib/mcp/generator.d.ts +26 -0
- package/dist/lib/mcp/generator.js +219 -0
- package/dist/lib/mcp/generator.js.map +1 -0
- package/dist/lib/mcp/index.d.ts +1 -0
- package/dist/lib/mcp/index.js +1 -0
- package/dist/lib/mcp/index.js.map +1 -1
- package/dist/lib/mcp/tools/index.d.ts +0 -11
- package/dist/lib/mcp/tools/index.js +0 -11
- package/dist/lib/mcp/tools/index.js.map +1 -1
- package/dist/lib/mcp/tools/overrides/index.d.ts +23 -0
- package/dist/lib/mcp/tools/overrides/index.js +30 -0
- package/dist/lib/mcp/tools/overrides/index.js.map +1 -0
- package/dist/lib/mcp/tools/overrides/tmux.d.ts +11 -0
- package/dist/lib/mcp/tools/overrides/tmux.js +184 -0
- package/dist/lib/mcp/tools/overrides/tmux.js.map +1 -0
- package/dist/lib/mcp/tools/overrides/work-start.d.ts +12 -0
- package/dist/lib/mcp/tools/overrides/work-start.js +108 -0
- package/dist/lib/mcp/tools/overrides/work-start.js.map +1 -0
- package/dist/lib/mcp/tools/ticket.js +10 -48
- package/dist/lib/mcp/tools/ticket.js.map +1 -1
- package/dist/lib/monday/config.js +11 -5
- package/dist/lib/monday/config.js.map +1 -1
- package/dist/lib/orchestrate/actions.d.ts +20 -0
- package/dist/lib/orchestrate/actions.js +194 -0
- package/dist/lib/orchestrate/actions.js.map +1 -0
- package/dist/lib/orchestrate/config-loader.d.ts +31 -0
- package/dist/lib/orchestrate/config-loader.js +201 -0
- package/dist/lib/orchestrate/config-loader.js.map +1 -0
- package/dist/lib/orchestrate/engine.d.ts +94 -0
- package/dist/lib/orchestrate/engine.js +290 -0
- package/dist/lib/orchestrate/engine.js.map +1 -0
- package/dist/lib/orchestrate/index.d.ts +16 -0
- package/dist/lib/orchestrate/index.js +14 -0
- package/dist/lib/orchestrate/index.js.map +1 -0
- package/dist/lib/orchestrate/poller.d.ts +58 -0
- package/dist/lib/orchestrate/poller.js +282 -0
- package/dist/lib/orchestrate/poller.js.map +1 -0
- package/dist/lib/orchestrate/presets.d.ts +27 -0
- package/dist/lib/orchestrate/presets.js +65 -0
- package/dist/lib/orchestrate/presets.js.map +1 -0
- package/dist/lib/orchestrate/types.d.ts +93 -0
- package/dist/lib/orchestrate/types.js +46 -0
- package/dist/lib/orchestrate/types.js.map +1 -0
- package/dist/lib/pmo/base-command.d.ts +20 -152
- package/dist/lib/pmo/base-command.js +32 -198
- package/dist/lib/pmo/base-command.js.map +1 -1
- package/dist/lib/pmo/index.d.ts +1 -0
- package/dist/lib/pmo/index.js +3 -0
- package/dist/lib/pmo/index.js.map +1 -1
- package/dist/lib/pmo/storage/base.d.ts +0 -18
- package/dist/lib/pmo/storage/base.js +0 -231
- package/dist/lib/pmo/storage/base.js.map +1 -1
- package/dist/lib/pmo/storage/index.d.ts +1 -76
- package/dist/lib/pmo/storage/index.js +1 -215
- package/dist/lib/pmo/storage/index.js.map +1 -1
- package/dist/lib/pmo/storage/specs.js.map +1 -1
- package/dist/lib/pmo/storage/tickets.d.ts +2 -2
- package/dist/lib/pmo/storage/tickets.js +4 -34
- package/dist/lib/pmo/storage/tickets.js.map +1 -1
- package/dist/lib/pmo/types.d.ts +0 -37
- package/dist/lib/pr/index.d.ts +28 -0
- package/dist/lib/pr/index.js +100 -0
- package/dist/lib/pr/index.js.map +1 -1
- package/dist/lib/providers/clickup-provider.d.ts +28 -0
- package/dist/lib/providers/clickup-provider.js +353 -0
- package/dist/lib/providers/clickup-provider.js.map +1 -0
- package/dist/lib/providers/event-emitting-provider.d.ts +4 -2
- package/dist/lib/providers/event-emitting-provider.js +12 -0
- package/dist/lib/providers/event-emitting-provider.js.map +1 -1
- package/dist/lib/providers/index.d.ts +1 -1
- package/dist/lib/providers/index.js.map +1 -1
- package/dist/lib/providers/linear-provider.d.ts +4 -2
- package/dist/lib/providers/linear-provider.js +106 -0
- package/dist/lib/providers/linear-provider.js.map +1 -1
- package/dist/lib/providers/pmo-provider.d.ts +4 -2
- package/dist/lib/providers/pmo-provider.js +26 -0
- package/dist/lib/providers/pmo-provider.js.map +1 -1
- package/dist/lib/providers/resolver.d.ts +1 -1
- package/dist/lib/providers/resolver.js +16 -5
- package/dist/lib/providers/resolver.js.map +1 -1
- package/dist/lib/providers/types.d.ts +31 -2
- package/dist/lib/runners/claude-code-runner.js +13 -4
- package/dist/lib/runners/claude-code-runner.js.map +1 -1
- package/dist/lib/runtime-command.d.ts +219 -0
- package/dist/lib/runtime-command.js +320 -0
- package/dist/lib/runtime-command.js.map +1 -0
- package/dist/lib/shortcut/config.js +13 -7
- package/dist/lib/shortcut/config.js.map +1 -1
- package/dist/lib/telemetry/analytics.d.ts +1 -1
- package/dist/lib/telemetry/analytics.js +16 -8
- package/dist/lib/telemetry/analytics.js.map +1 -1
- package/dist/lib/trello/config.js +17 -12
- package/dist/lib/trello/config.js.map +1 -1
- package/dist/lib/update-check.d.ts +8 -3
- package/dist/lib/update-check.js +16 -5
- package/dist/lib/update-check.js.map +1 -1
- package/dist/lib/work-lifecycle/events.d.ts +1 -1
- package/dist/lib/work-lifecycle/hooks/types.d.ts +3 -2
- package/dist/lib/work-lifecycle/hooks/types.js +12 -0
- package/dist/lib/work-lifecycle/hooks/types.js.map +1 -1
- package/dist/lib/work-source/config.d.ts +1 -1
- package/dist/lib/work-source/config.js +11 -1
- package/dist/lib/work-source/config.js.map +1 -1
- package/dist/lib/work-source/provider-sources.js +6 -1
- package/dist/lib/work-source/provider-sources.js.map +1 -1
- package/oclif.manifest.json +2682 -3839
- package/package.json +1 -1
- package/dist/commands/board/index.js +0 -263
- package/dist/commands/board/index.js.map +0 -1
- package/dist/commands/board/view.d.ts +0 -15
- package/dist/commands/board/view.js +0 -137
- package/dist/commands/board/view.js.map +0 -1
- package/dist/commands/board/watch.d.ts +0 -15
- package/dist/commands/board/watch.js +0 -59
- package/dist/commands/board/watch.js.map +0 -1
- package/dist/commands/dashboard/index.d.ts +0 -14
- package/dist/commands/dashboard/index.js +0 -117
- package/dist/commands/dashboard/index.js.map +0 -1
- package/dist/commands/dashboard.d.ts +0 -38
- package/dist/commands/dashboard.js +0 -353
- package/dist/commands/dashboard.js.map +0 -1
- package/dist/commands/pmo/init.d.ts +0 -28
- package/dist/commands/pmo/init.js +0 -410
- package/dist/commands/pmo/init.js.map +0 -1
- package/dist/commands/project/archive.js +0 -79
- package/dist/commands/project/archive.js.map +0 -1
- package/dist/commands/project/create.d.ts +0 -24
- package/dist/commands/project/create.js +0 -191
- package/dist/commands/project/create.js.map +0 -1
- package/dist/commands/project/delete.d.ts +0 -18
- package/dist/commands/project/delete.js +0 -115
- package/dist/commands/project/delete.js.map +0 -1
- package/dist/commands/project/index.js +0 -60
- package/dist/commands/project/index.js.map +0 -1
- package/dist/commands/project/list.js +0 -115
- package/dist/commands/project/list.js.map +0 -1
- package/dist/commands/project/spec.d.ts +0 -19
- package/dist/commands/project/spec.js +0 -218
- package/dist/commands/project/spec.js.map +0 -1
- package/dist/commands/project/unarchive.d.ts +0 -17
- package/dist/commands/project/unarchive.js +0 -55
- package/dist/commands/project/unarchive.js.map +0 -1
- package/dist/commands/project/update.d.ts +0 -19
- package/dist/commands/project/update.js +0 -161
- package/dist/commands/project/update.js.map +0 -1
- package/dist/commands/project/view.d.ts +0 -17
- package/dist/commands/project/view.js +0 -107
- package/dist/commands/project/view.js.map +0 -1
- package/dist/commands/ticket/bulk.js +0 -141
- package/dist/commands/ticket/bulk.js.map +0 -1
- package/dist/commands/ticket/cancel.d.ts +0 -17
- package/dist/commands/ticket/cancel.js +0 -206
- package/dist/commands/ticket/cancel.js.map +0 -1
- package/dist/commands/ticket/category.d.ts +0 -15
- package/dist/commands/ticket/category.js +0 -64
- package/dist/commands/ticket/category.js.map +0 -1
- package/dist/commands/ticket/complete.d.ts +0 -17
- package/dist/commands/ticket/complete.js +0 -178
- package/dist/commands/ticket/complete.js.map +0 -1
- package/dist/commands/ticket/epic.d.ts +0 -21
- package/dist/commands/ticket/epic.js +0 -306
- package/dist/commands/ticket/epic.js.map +0 -1
- package/dist/commands/ticket/link/block.d.ts +0 -15
- package/dist/commands/ticket/link/block.js +0 -96
- package/dist/commands/ticket/link/block.js.map +0 -1
- package/dist/commands/ticket/link/duplicates.d.ts +0 -15
- package/dist/commands/ticket/link/duplicates.js +0 -96
- package/dist/commands/ticket/link/duplicates.js.map +0 -1
- package/dist/commands/ticket/link/index.d.ts +0 -14
- package/dist/commands/ticket/link/index.js +0 -99
- package/dist/commands/ticket/link/index.js.map +0 -1
- package/dist/commands/ticket/link/relates.d.ts +0 -15
- package/dist/commands/ticket/link/relates.js +0 -96
- package/dist/commands/ticket/link/relates.js.map +0 -1
- package/dist/commands/ticket/project.d.ts +0 -19
- package/dist/commands/ticket/project.js +0 -257
- package/dist/commands/ticket/project.js.map +0 -1
- package/dist/commands/ticket/reassign.d.ts +0 -20
- package/dist/commands/ticket/reassign.js +0 -311
- package/dist/commands/ticket/reassign.js.map +0 -1
- package/dist/commands/ticket/resolve.d.ts +0 -68
- package/dist/commands/ticket/resolve.js +0 -296
- package/dist/commands/ticket/resolve.js.map +0 -1
- package/dist/commands/ticket/spec.d.ts +0 -19
- package/dist/commands/ticket/spec.js +0 -260
- package/dist/commands/ticket/spec.js.map +0 -1
- package/dist/commands/ticket/status.d.ts +0 -14
- package/dist/commands/ticket/status.js +0 -84
- package/dist/commands/ticket/status.js.map +0 -1
- package/dist/commands/ticket/view.d.ts +0 -14
- package/dist/commands/ticket/view.js +0 -109
- package/dist/commands/ticket/view.js.map +0 -1
- package/dist/lib/mcp/tools/board.d.ts +0 -6
- package/dist/lib/mcp/tools/board.js +0 -190
- package/dist/lib/mcp/tools/board.js.map +0 -1
- package/dist/lib/mcp/tools/category.d.ts +0 -6
- package/dist/lib/mcp/tools/category.js +0 -85
- package/dist/lib/mcp/tools/category.js.map +0 -1
- package/dist/lib/mcp/tools/epic.d.ts +0 -6
- package/dist/lib/mcp/tools/epic.js +0 -184
- package/dist/lib/mcp/tools/epic.js.map +0 -1
- package/dist/lib/mcp/tools/label.d.ts +0 -6
- package/dist/lib/mcp/tools/label.js +0 -339
- package/dist/lib/mcp/tools/label.js.map +0 -1
- package/dist/lib/mcp/tools/phase.d.ts +0 -6
- package/dist/lib/mcp/tools/phase.js +0 -132
- package/dist/lib/mcp/tools/phase.js.map +0 -1
- package/dist/lib/mcp/tools/project.d.ts +0 -6
- package/dist/lib/mcp/tools/project.js +0 -197
- package/dist/lib/mcp/tools/project.js.map +0 -1
- package/dist/lib/mcp/tools/roadmap.d.ts +0 -6
- package/dist/lib/mcp/tools/roadmap.js +0 -124
- package/dist/lib/mcp/tools/roadmap.js.map +0 -1
- package/dist/lib/mcp/tools/status.d.ts +0 -6
- package/dist/lib/mcp/tools/status.js +0 -110
- package/dist/lib/mcp/tools/status.js.map +0 -1
- package/dist/lib/mcp/tools/template.d.ts +0 -6
- package/dist/lib/mcp/tools/template.js +0 -108
- package/dist/lib/mcp/tools/template.js.map +0 -1
- package/dist/lib/mcp/tools/view.d.ts +0 -6
- package/dist/lib/mcp/tools/view.js +0 -77
- package/dist/lib/mcp/tools/view.js.map +0 -1
- package/dist/lib/mcp/tools/workflow.d.ts +0 -6
- package/dist/lib/mcp/tools/workflow.js +0 -96
- package/dist/lib/mcp/tools/workflow.js.map +0 -1
- package/dist/lib/pmo/storage/categories.d.ts +0 -50
- package/dist/lib/pmo/storage/categories.js +0 -206
- package/dist/lib/pmo/storage/categories.js.map +0 -1
- package/dist/lib/pmo/storage/labels.d.ts +0 -55
- package/dist/lib/pmo/storage/labels.js +0 -347
- package/dist/lib/pmo/storage/labels.js.map +0 -1
- package/dist/lib/pmo/storage/phases.d.ts +0 -65
- package/dist/lib/pmo/storage/phases.js +0 -393
- package/dist/lib/pmo/storage/phases.js.map +0 -1
- package/dist/lib/pmo/storage/roadmaps.d.ts +0 -64
- package/dist/lib/pmo/storage/roadmaps.js +0 -373
- package/dist/lib/pmo/storage/roadmaps.js.map +0 -1
- package/dist/lib/pmo/storage/views.d.ts +0 -57
- package/dist/lib/pmo/storage/views.js +0 -456
- package/dist/lib/pmo/storage/views.js.map +0 -1
package/dist/lib/asana/config.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { loadProviderSources, resolveApiKey } from '../work-source/provider-sources.js';
|
|
2
2
|
import { SettingsStore } from '../database/settings-store.js';
|
|
3
|
+
import { getCredential, setCredential, deleteCredential, hasCredential } from '../database/credential-store.js';
|
|
3
4
|
const ASANA_CONFIG_KEYS = {
|
|
4
5
|
accessToken: 'asana.access_token',
|
|
5
6
|
workspaceGid: 'asana.workspace_gid',
|
|
@@ -8,13 +9,13 @@ const ASANA_CONFIG_KEYS = {
|
|
|
8
9
|
projectName: 'asana.project_name',
|
|
9
10
|
};
|
|
10
11
|
export function isAsanaConfigured(db) {
|
|
11
|
-
return
|
|
12
|
+
return hasCredential(db, ASANA_CONFIG_KEYS.accessToken);
|
|
12
13
|
}
|
|
13
14
|
export function loadAsanaConfig(db) {
|
|
14
|
-
const
|
|
15
|
-
const accessToken = settings.get(ASANA_CONFIG_KEYS.accessToken);
|
|
15
|
+
const accessToken = getCredential(db, ASANA_CONFIG_KEYS.accessToken);
|
|
16
16
|
if (!accessToken)
|
|
17
17
|
return null;
|
|
18
|
+
const settings = new SettingsStore(db);
|
|
18
19
|
return {
|
|
19
20
|
accessToken,
|
|
20
21
|
workspaceGid: settings.get(ASANA_CONFIG_KEYS.workspaceGid) ?? undefined,
|
|
@@ -24,7 +25,7 @@ export function loadAsanaConfig(db) {
|
|
|
24
25
|
};
|
|
25
26
|
}
|
|
26
27
|
export function saveAsanaAccessToken(db, accessToken) {
|
|
27
|
-
|
|
28
|
+
setCredential(db, ASANA_CONFIG_KEYS.accessToken, accessToken);
|
|
28
29
|
}
|
|
29
30
|
export function saveAsanaWorkspace(db, workspaceGid, workspaceName) {
|
|
30
31
|
const settings = new SettingsStore(db);
|
|
@@ -39,7 +40,12 @@ export function saveAsanaProject(db, projectGid, projectName) {
|
|
|
39
40
|
export function clearAsanaConfig(db) {
|
|
40
41
|
const settings = new SettingsStore(db);
|
|
41
42
|
for (const key of Object.values(ASANA_CONFIG_KEYS)) {
|
|
42
|
-
|
|
43
|
+
if (key === ASANA_CONFIG_KEYS.accessToken) {
|
|
44
|
+
deleteCredential(db, key);
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
settings.delete(key);
|
|
48
|
+
}
|
|
43
49
|
}
|
|
44
50
|
}
|
|
45
51
|
export function getAsanaAccessToken(db) {
|
|
@@ -61,7 +67,7 @@ export function getAsanaAccessToken(db) {
|
|
|
61
67
|
const envToken = process.env.PRLT_ASANA_ACCESS_TOKEN || process.env.ASANA_ACCESS_TOKEN;
|
|
62
68
|
if (envToken)
|
|
63
69
|
return envToken;
|
|
64
|
-
// 3. Legacy: stored workspace setting
|
|
65
|
-
return
|
|
70
|
+
// 3. Legacy: stored workspace setting (now in credentials.db)
|
|
71
|
+
return getCredential(db, ASANA_CONFIG_KEYS.accessToken);
|
|
66
72
|
}
|
|
67
73
|
//# sourceMappingURL=config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/lib/asana/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAA;AACvF,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/lib/asana/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAA;AACvF,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAA;AAE/G,MAAM,iBAAiB,GAAG;IACxB,WAAW,EAAE,oBAAoB;IACjC,YAAY,EAAE,qBAAqB;IACnC,aAAa,EAAE,sBAAsB;IACrC,UAAU,EAAE,mBAAmB;IAC/B,WAAW,EAAE,oBAAoB;CACzB,CAAA;AAEV,MAAM,UAAU,iBAAiB,CAAC,EAAqB;IACrD,OAAO,aAAa,CAAC,EAAE,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAA;AACzD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,EAAqB;IACnD,MAAM,WAAW,GAAG,aAAa,CAAC,EAAE,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAA;IACpE,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAA;IAE7B,MAAM,QAAQ,GAAG,IAAI,aAAa,CAAC,EAAE,CAAC,CAAA;IACtC,OAAO;QACL,WAAW;QACX,YAAY,EAAE,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,YAAY,CAAC,IAAI,SAAS;QACvE,aAAa,EAAE,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,aAAa,CAAC,IAAI,SAAS;QACzE,UAAU,EAAE,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,UAAU,CAAC,IAAI,SAAS;QACnE,WAAW,EAAE,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,WAAW,CAAC,IAAI,SAAS;KACtE,CAAA;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,EAAqB,EAAE,WAAmB;IAC7E,aAAa,CAAC,EAAE,EAAE,iBAAiB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA;AAC/D,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,EAAqB,EAAE,YAAoB,EAAE,aAAqB;IACnG,MAAM,QAAQ,GAAG,IAAI,aAAa,CAAC,EAAE,CAAC,CAAA;IACtC,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAA;IAC1D,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAA;AAC9D,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAAqB,EAAE,UAAkB,EAAE,WAAmB;IAC7F,MAAM,QAAQ,GAAG,IAAI,aAAa,CAAC,EAAE,CAAC,CAAA;IACtC,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;IACtD,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA;AAC1D,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAAqB;IACpD,MAAM,QAAQ,GAAG,IAAI,aAAa,CAAC,EAAE,CAAC,CAAA;IACtC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACnD,IAAI,GAAG,KAAK,iBAAiB,CAAC,WAAW,EAAE,CAAC;YAC1C,gBAAgB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;QAC3B,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QACtB,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,EAAqB;IACvD,iEAAiE;IACjE,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAA;QACvC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;gBAChC,MAAM,GAAG,GAAG,aAAa,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;gBACrC,IAAI,GAAG;oBAAE,OAAO,GAAG,CAAA;YACrB,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,oDAAoD;IACtD,CAAC;IAED,mCAAmC;IACnC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAA;IACtF,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAA;IAE7B,8DAA8D;IAC9D,OAAO,aAAa,CAAC,EAAE,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAA;AACzD,CAAC"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ClickUp API Client
|
|
3
|
+
*
|
|
4
|
+
* REST wrapper for ClickUp API v2 access.
|
|
5
|
+
* Provides typed access to tasks, lists, spaces, and statuses for the PMO integration.
|
|
6
|
+
*/
|
|
7
|
+
import type { ClickUpTask, ClickUpSpace, ClickUpList, ClickUpStatus } from './types.js';
|
|
8
|
+
export declare class ClickUpClient {
|
|
9
|
+
private apiKey;
|
|
10
|
+
constructor(apiKey: string);
|
|
11
|
+
private request;
|
|
12
|
+
/**
|
|
13
|
+
* Verify the API key is valid and return the authenticated user info.
|
|
14
|
+
*/
|
|
15
|
+
verify(): Promise<{
|
|
16
|
+
userName: string;
|
|
17
|
+
email: string;
|
|
18
|
+
}>;
|
|
19
|
+
/**
|
|
20
|
+
* List teams (workspaces) accessible to the authenticated user.
|
|
21
|
+
*/
|
|
22
|
+
listTeams(): Promise<Array<{
|
|
23
|
+
id: string;
|
|
24
|
+
name: string;
|
|
25
|
+
}>>;
|
|
26
|
+
/**
|
|
27
|
+
* Get a task by ID.
|
|
28
|
+
*/
|
|
29
|
+
getTask(taskId: string): Promise<ClickUpTask>;
|
|
30
|
+
/**
|
|
31
|
+
* Update a task's status.
|
|
32
|
+
*/
|
|
33
|
+
updateTaskStatus(taskId: string, status: string): Promise<void>;
|
|
34
|
+
/**
|
|
35
|
+
* Update a task's fields (name, description, priority, assignees).
|
|
36
|
+
*/
|
|
37
|
+
updateTask(taskId: string, input: {
|
|
38
|
+
name?: string;
|
|
39
|
+
description?: string;
|
|
40
|
+
priority?: number | null;
|
|
41
|
+
status?: string;
|
|
42
|
+
}): Promise<ClickUpTask>;
|
|
43
|
+
/**
|
|
44
|
+
* Add a comment to a task.
|
|
45
|
+
*/
|
|
46
|
+
addComment(taskId: string, commentText: string): Promise<void>;
|
|
47
|
+
/**
|
|
48
|
+
* Create a new task in a list.
|
|
49
|
+
*/
|
|
50
|
+
createTask(listId: string, input: {
|
|
51
|
+
name: string;
|
|
52
|
+
description?: string;
|
|
53
|
+
priority?: number | null;
|
|
54
|
+
status?: string;
|
|
55
|
+
tags?: string[];
|
|
56
|
+
}): Promise<ClickUpTask>;
|
|
57
|
+
/**
|
|
58
|
+
* List tasks in a list with optional filters.
|
|
59
|
+
*/
|
|
60
|
+
listTasks(listId: string, options?: {
|
|
61
|
+
statuses?: string[];
|
|
62
|
+
assignees?: string[];
|
|
63
|
+
page?: number;
|
|
64
|
+
}): Promise<ClickUpTask[]>;
|
|
65
|
+
/**
|
|
66
|
+
* Get statuses for a list.
|
|
67
|
+
*/
|
|
68
|
+
getListStatuses(listId: string): Promise<ClickUpStatus[]>;
|
|
69
|
+
/**
|
|
70
|
+
* Get a list by ID.
|
|
71
|
+
*/
|
|
72
|
+
getList(listId: string): Promise<ClickUpList>;
|
|
73
|
+
/**
|
|
74
|
+
* Get spaces for a team/workspace.
|
|
75
|
+
*/
|
|
76
|
+
listSpaces(teamId: string): Promise<ClickUpSpace[]>;
|
|
77
|
+
/**
|
|
78
|
+
* Delete (trash) a task.
|
|
79
|
+
*/
|
|
80
|
+
deleteTask(taskId: string): Promise<void>;
|
|
81
|
+
/**
|
|
82
|
+
* Assign a user to a task by adding them to the assignees list.
|
|
83
|
+
*/
|
|
84
|
+
addAssignee(taskId: string, assigneeId: number): Promise<void>;
|
|
85
|
+
/**
|
|
86
|
+
* Find a workspace member by email.
|
|
87
|
+
*/
|
|
88
|
+
findMemberByEmail(teamId: string, email: string): Promise<{
|
|
89
|
+
id: number;
|
|
90
|
+
username: string;
|
|
91
|
+
} | null>;
|
|
92
|
+
}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ClickUp API Client
|
|
3
|
+
*
|
|
4
|
+
* REST wrapper for ClickUp API v2 access.
|
|
5
|
+
* Provides typed access to tasks, lists, spaces, and statuses for the PMO integration.
|
|
6
|
+
*/
|
|
7
|
+
const CLICKUP_API_URL = 'https://api.clickup.com/api/v2';
|
|
8
|
+
export class ClickUpClient {
|
|
9
|
+
apiKey;
|
|
10
|
+
constructor(apiKey) {
|
|
11
|
+
this.apiKey = apiKey;
|
|
12
|
+
}
|
|
13
|
+
async request(method, path, body) {
|
|
14
|
+
const url = `${CLICKUP_API_URL}${path}`;
|
|
15
|
+
const options = {
|
|
16
|
+
method,
|
|
17
|
+
headers: {
|
|
18
|
+
'Content-Type': 'application/json',
|
|
19
|
+
Authorization: this.apiKey,
|
|
20
|
+
},
|
|
21
|
+
};
|
|
22
|
+
if (body !== undefined) {
|
|
23
|
+
options.body = JSON.stringify(body);
|
|
24
|
+
}
|
|
25
|
+
const response = await fetch(url, options);
|
|
26
|
+
if (!response.ok) {
|
|
27
|
+
const text = await response.text().catch(() => '');
|
|
28
|
+
throw new Error(`ClickUp API ${method} ${path} failed with status ${response.status}: ${text}`);
|
|
29
|
+
}
|
|
30
|
+
return (await response.json());
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Verify the API key is valid and return the authenticated user info.
|
|
34
|
+
*/
|
|
35
|
+
async verify() {
|
|
36
|
+
const data = await this.request('GET', '/user');
|
|
37
|
+
return {
|
|
38
|
+
userName: data.user.username,
|
|
39
|
+
email: data.user.email,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* List teams (workspaces) accessible to the authenticated user.
|
|
44
|
+
*/
|
|
45
|
+
async listTeams() {
|
|
46
|
+
const data = await this.request('GET', '/team');
|
|
47
|
+
return data.teams;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Get a task by ID.
|
|
51
|
+
*/
|
|
52
|
+
async getTask(taskId) {
|
|
53
|
+
return this.request('GET', `/task/${taskId}?include_subtasks=true`);
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Update a task's status.
|
|
57
|
+
*/
|
|
58
|
+
async updateTaskStatus(taskId, status) {
|
|
59
|
+
await this.request('PUT', `/task/${taskId}`, { status });
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Update a task's fields (name, description, priority, assignees).
|
|
63
|
+
*/
|
|
64
|
+
async updateTask(taskId, input) {
|
|
65
|
+
return this.request('PUT', `/task/${taskId}`, input);
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Add a comment to a task.
|
|
69
|
+
*/
|
|
70
|
+
async addComment(taskId, commentText) {
|
|
71
|
+
await this.request('POST', `/task/${taskId}/comment`, {
|
|
72
|
+
comment_text: commentText,
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Create a new task in a list.
|
|
77
|
+
*/
|
|
78
|
+
async createTask(listId, input) {
|
|
79
|
+
return this.request('POST', `/list/${listId}/task`, input);
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* List tasks in a list with optional filters.
|
|
83
|
+
*/
|
|
84
|
+
async listTasks(listId, options) {
|
|
85
|
+
const params = new URLSearchParams();
|
|
86
|
+
if (options?.statuses) {
|
|
87
|
+
for (const s of options.statuses) {
|
|
88
|
+
params.append('statuses[]', s);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
if (options?.assignees) {
|
|
92
|
+
for (const a of options.assignees) {
|
|
93
|
+
params.append('assignees[]', a);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
if (options?.page !== undefined) {
|
|
97
|
+
params.set('page', String(options.page));
|
|
98
|
+
}
|
|
99
|
+
const qs = params.toString();
|
|
100
|
+
const path = `/list/${listId}/task${qs ? `?${qs}` : ''}`;
|
|
101
|
+
const data = await this.request('GET', path);
|
|
102
|
+
return data.tasks;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Get statuses for a list.
|
|
106
|
+
*/
|
|
107
|
+
async getListStatuses(listId) {
|
|
108
|
+
const data = await this.request('GET', `/list/${listId}`);
|
|
109
|
+
return data.statuses;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Get a list by ID.
|
|
113
|
+
*/
|
|
114
|
+
async getList(listId) {
|
|
115
|
+
return this.request('GET', `/list/${listId}`);
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Get spaces for a team/workspace.
|
|
119
|
+
*/
|
|
120
|
+
async listSpaces(teamId) {
|
|
121
|
+
const data = await this.request('GET', `/team/${teamId}/space?archived=false`);
|
|
122
|
+
return data.spaces;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Delete (trash) a task.
|
|
126
|
+
*/
|
|
127
|
+
async deleteTask(taskId) {
|
|
128
|
+
await this.request('DELETE', `/task/${taskId}`);
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Assign a user to a task by adding them to the assignees list.
|
|
132
|
+
*/
|
|
133
|
+
async addAssignee(taskId, assigneeId) {
|
|
134
|
+
// ClickUp uses a separate endpoint for managing assignees
|
|
135
|
+
await this.request('POST', `/task/${taskId}`, {
|
|
136
|
+
assignees: { add: [assigneeId] },
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Find a workspace member by email.
|
|
141
|
+
*/
|
|
142
|
+
async findMemberByEmail(teamId, email) {
|
|
143
|
+
// ClickUp doesn't have a direct user-by-email endpoint.
|
|
144
|
+
// We list team members and filter.
|
|
145
|
+
const data = await this.request('GET', `/team/${teamId}`);
|
|
146
|
+
const member = data.members?.find((m) => m.user.email.toLowerCase() === email.toLowerCase());
|
|
147
|
+
return member ? { id: member.user.id, username: member.user.username } : null;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/lib/clickup/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ClickUp Configuration Storage
|
|
3
|
+
*
|
|
4
|
+
* Stores ClickUp credentials and preferences in the workspace_settings table.
|
|
5
|
+
*/
|
|
6
|
+
import type Database from 'better-sqlite3';
|
|
7
|
+
import type { ClickUpConfig } from './types.js';
|
|
8
|
+
/**
|
|
9
|
+
* Check if ClickUp is configured (API key is stored).
|
|
10
|
+
*/
|
|
11
|
+
export declare function isClickUpConfigured(db: Database.Database): boolean;
|
|
12
|
+
/**
|
|
13
|
+
* Load ClickUp configuration from the database.
|
|
14
|
+
* Returns null if not configured.
|
|
15
|
+
*/
|
|
16
|
+
export declare function loadClickUpConfig(db: Database.Database): ClickUpConfig | null;
|
|
17
|
+
/**
|
|
18
|
+
* Save ClickUp API key to the database.
|
|
19
|
+
*/
|
|
20
|
+
export declare function saveClickUpApiKey(db: Database.Database, apiKey: string): void;
|
|
21
|
+
/**
|
|
22
|
+
* Save the default list for ClickUp operations.
|
|
23
|
+
*/
|
|
24
|
+
export declare function saveClickUpDefaultList(db: Database.Database, listId: string, listName: string): void;
|
|
25
|
+
/**
|
|
26
|
+
* Save the workspace name.
|
|
27
|
+
*/
|
|
28
|
+
export declare function saveClickUpWorkspace(db: Database.Database, name: string): void;
|
|
29
|
+
/**
|
|
30
|
+
* Clear all ClickUp configuration from the database.
|
|
31
|
+
*/
|
|
32
|
+
export declare function clearClickUpConfig(db: Database.Database): void;
|
|
33
|
+
/**
|
|
34
|
+
* Get the ClickUp API key using the provider-sources resolution chain.
|
|
35
|
+
*
|
|
36
|
+
* Resolution order:
|
|
37
|
+
* 1. If a ClickUp provider source is configured, resolve its apiKeyRef
|
|
38
|
+
* 2. Legacy fallback: PRLT_CLICKUP_API_KEY or CLICKUP_API_KEY environment variables
|
|
39
|
+
* 3. Legacy fallback: workspace_settings key 'clickup.api_key'
|
|
40
|
+
*/
|
|
41
|
+
export declare function getClickUpApiKey(db: Database.Database): string | null;
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ClickUp Configuration Storage
|
|
3
|
+
*
|
|
4
|
+
* Stores ClickUp credentials and preferences in the workspace_settings table.
|
|
5
|
+
*/
|
|
6
|
+
import { loadProviderSources, resolveApiKey } from '../work-source/provider-sources.js';
|
|
7
|
+
import { SettingsStore } from '../database/settings-store.js';
|
|
8
|
+
import { getCredential, setCredential, deleteCredential, hasCredential } from '../database/credential-store.js';
|
|
9
|
+
const CLICKUP_CONFIG_KEYS = {
|
|
10
|
+
apiKey: 'clickup.api_key',
|
|
11
|
+
defaultListId: 'clickup.default_list_id',
|
|
12
|
+
defaultListName: 'clickup.default_list_name',
|
|
13
|
+
workspaceName: 'clickup.workspace_name',
|
|
14
|
+
};
|
|
15
|
+
// =============================================================================
|
|
16
|
+
// Public API
|
|
17
|
+
// =============================================================================
|
|
18
|
+
/**
|
|
19
|
+
* Check if ClickUp is configured (API key is stored).
|
|
20
|
+
*/
|
|
21
|
+
export function isClickUpConfigured(db) {
|
|
22
|
+
return hasCredential(db, CLICKUP_CONFIG_KEYS.apiKey);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Load ClickUp configuration from the database.
|
|
26
|
+
* Returns null if not configured.
|
|
27
|
+
*/
|
|
28
|
+
export function loadClickUpConfig(db) {
|
|
29
|
+
const apiKey = getCredential(db, CLICKUP_CONFIG_KEYS.apiKey);
|
|
30
|
+
if (!apiKey)
|
|
31
|
+
return null;
|
|
32
|
+
const settings = new SettingsStore(db);
|
|
33
|
+
return {
|
|
34
|
+
apiKey,
|
|
35
|
+
defaultListId: settings.get(CLICKUP_CONFIG_KEYS.defaultListId) ?? undefined,
|
|
36
|
+
defaultListName: settings.get(CLICKUP_CONFIG_KEYS.defaultListName) ?? undefined,
|
|
37
|
+
workspaceName: settings.get(CLICKUP_CONFIG_KEYS.workspaceName) ?? undefined,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Save ClickUp API key to the database.
|
|
42
|
+
*/
|
|
43
|
+
export function saveClickUpApiKey(db, apiKey) {
|
|
44
|
+
setCredential(db, CLICKUP_CONFIG_KEYS.apiKey, apiKey);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Save the default list for ClickUp operations.
|
|
48
|
+
*/
|
|
49
|
+
export function saveClickUpDefaultList(db, listId, listName) {
|
|
50
|
+
const settings = new SettingsStore(db);
|
|
51
|
+
settings.set(CLICKUP_CONFIG_KEYS.defaultListId, listId);
|
|
52
|
+
settings.set(CLICKUP_CONFIG_KEYS.defaultListName, listName);
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Save the workspace name.
|
|
56
|
+
*/
|
|
57
|
+
export function saveClickUpWorkspace(db, name) {
|
|
58
|
+
new SettingsStore(db).set(CLICKUP_CONFIG_KEYS.workspaceName, name);
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Clear all ClickUp configuration from the database.
|
|
62
|
+
*/
|
|
63
|
+
export function clearClickUpConfig(db) {
|
|
64
|
+
const settings = new SettingsStore(db);
|
|
65
|
+
for (const key of Object.values(CLICKUP_CONFIG_KEYS)) {
|
|
66
|
+
if (key === CLICKUP_CONFIG_KEYS.apiKey) {
|
|
67
|
+
deleteCredential(db, key);
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
settings.delete(key);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Get the ClickUp API key using the provider-sources resolution chain.
|
|
76
|
+
*
|
|
77
|
+
* Resolution order:
|
|
78
|
+
* 1. If a ClickUp provider source is configured, resolve its apiKeyRef
|
|
79
|
+
* 2. Legacy fallback: PRLT_CLICKUP_API_KEY or CLICKUP_API_KEY environment variables
|
|
80
|
+
* 3. Legacy fallback: workspace_settings key 'clickup.api_key'
|
|
81
|
+
*/
|
|
82
|
+
export function getClickUpApiKey(db) {
|
|
83
|
+
// 1. Try provider sources (supports custom apiKeyRef per source)
|
|
84
|
+
try {
|
|
85
|
+
const sources = loadProviderSources(db);
|
|
86
|
+
for (const source of sources) {
|
|
87
|
+
if (source.provider === 'clickup') {
|
|
88
|
+
const key = resolveApiKey(db, source);
|
|
89
|
+
if (key)
|
|
90
|
+
return key;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
catch {
|
|
95
|
+
// Provider sources table may not exist in older databases
|
|
96
|
+
}
|
|
97
|
+
// 2. Legacy: environment variables
|
|
98
|
+
const envKey = process.env.PRLT_CLICKUP_API_KEY || process.env.CLICKUP_API_KEY;
|
|
99
|
+
if (envKey)
|
|
100
|
+
return envKey;
|
|
101
|
+
// 3. Legacy: stored workspace setting (now in credentials.db)
|
|
102
|
+
return getCredential(db, CLICKUP_CONFIG_KEYS.apiKey);
|
|
103
|
+
}
|
|
104
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/lib/clickup/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAA;AACvF,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAA;AAE/G,MAAM,mBAAmB,GAAG;IAC1B,MAAM,EAAE,iBAAiB;IACzB,aAAa,EAAE,yBAAyB;IACxC,eAAe,EAAE,2BAA2B;IAC5C,aAAa,EAAE,wBAAwB;CAC/B,CAAA;AAEV,gFAAgF;AAChF,aAAa;AACb,gFAAgF;AAEhF;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAAqB;IACvD,OAAO,aAAa,CAAC,EAAE,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAA;AACtD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAAqB;IACrD,MAAM,MAAM,GAAG,aAAa,CAAC,EAAE,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAA;IAC5D,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAA;IAExB,MAAM,QAAQ,GAAG,IAAI,aAAa,CAAC,EAAE,CAAC,CAAA;IACtC,OAAO;QACL,MAAM;QACN,aAAa,EAAE,QAAQ,CAAC,GAAG,CAAC,mBAAmB,CAAC,aAAa,CAAC,IAAI,SAAS;QAC3E,eAAe,EAAE,QAAQ,CAAC,GAAG,CAAC,mBAAmB,CAAC,eAAe,CAAC,IAAI,SAAS;QAC/E,aAAa,EAAE,QAAQ,CAAC,GAAG,CAAC,mBAAmB,CAAC,aAAa,CAAC,IAAI,SAAS;KAC5E,CAAA;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAAqB,EAAE,MAAc;IACrE,aAAa,CAAC,EAAE,EAAE,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AACvD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,EAAqB,EAAE,MAAc,EAAE,QAAgB;IAC5F,MAAM,QAAQ,GAAG,IAAI,aAAa,CAAC,EAAE,CAAC,CAAA;IACtC,QAAQ,CAAC,GAAG,CAAC,mBAAmB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAA;IACvD,QAAQ,CAAC,GAAG,CAAC,mBAAmB,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAA;AAC7D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,EAAqB,EAAE,IAAY;IACtE,IAAI,aAAa,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAA;AACpE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,EAAqB;IACtD,MAAM,QAAQ,GAAG,IAAI,aAAa,CAAC,EAAE,CAAC,CAAA;IACtC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,EAAE,CAAC;QACrD,IAAI,GAAG,KAAK,mBAAmB,CAAC,MAAM,EAAE,CAAC;YACvC,gBAAgB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;QAC3B,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QACtB,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAAqB;IACpD,iEAAiE;IACjE,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAA;QACvC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAClC,MAAM,GAAG,GAAG,aAAa,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;gBACrC,IAAI,GAAG;oBAAE,OAAO,GAAG,CAAA;YACrB,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,0DAA0D;IAC5D,CAAC;IAED,mCAAmC;IACnC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,CAAA;IAC9E,IAAI,MAAM;QAAE,OAAO,MAAM,CAAA;IAEzB,8DAA8D;IAC9D,OAAO,aAAa,CAAC,EAAE,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAA;AACtD,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { ClickUpClient } from './client.js';
|
|
2
|
+
export { isClickUpConfigured, loadClickUpConfig, saveClickUpApiKey, saveClickUpDefaultList, saveClickUpWorkspace, clearClickUpConfig, getClickUpApiKey, } from './config.js';
|
|
3
|
+
export type { ClickUpConfig, ClickUpTask, ClickUpStatus, ClickUpSpace, ClickUpList, } from './types.js';
|
|
4
|
+
export { CLICKUP_PRIORITY_TO_PMO, PMO_PRIORITY_TO_CLICKUP, CLICKUP_STATUS_TYPE_TO_PMO_CATEGORY, } from './types.js';
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { ClickUpClient } from './client.js';
|
|
2
|
+
export { isClickUpConfigured, loadClickUpConfig, saveClickUpApiKey, saveClickUpDefaultList, saveClickUpWorkspace, clearClickUpConfig, getClickUpApiKey, } from './config.js';
|
|
3
|
+
export { CLICKUP_PRIORITY_TO_PMO, PMO_PRIORITY_TO_CLICKUP, CLICKUP_STATUS_TYPE_TO_PMO_CATEGORY, } from './types.js';
|
|
4
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/clickup/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EACtB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,aAAa,CAAA;AAQpB,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,mCAAmC,GACpC,MAAM,YAAY,CAAA"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ClickUp Integration Types
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for the ClickUp ↔ PMO integration layer.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Represents a ClickUp task as fetched from the API.
|
|
8
|
+
*/
|
|
9
|
+
export interface ClickUpTask {
|
|
10
|
+
id: string;
|
|
11
|
+
custom_id: string | null;
|
|
12
|
+
name: string;
|
|
13
|
+
description: string | null;
|
|
14
|
+
status: {
|
|
15
|
+
id: string;
|
|
16
|
+
status: string;
|
|
17
|
+
type: string;
|
|
18
|
+
color: string;
|
|
19
|
+
};
|
|
20
|
+
priority: {
|
|
21
|
+
id: string;
|
|
22
|
+
priority: string;
|
|
23
|
+
color: string;
|
|
24
|
+
} | null;
|
|
25
|
+
assignees: Array<{
|
|
26
|
+
id: number;
|
|
27
|
+
username: string;
|
|
28
|
+
email: string;
|
|
29
|
+
profilePicture: string | null;
|
|
30
|
+
}>;
|
|
31
|
+
tags: Array<{
|
|
32
|
+
name: string;
|
|
33
|
+
tag_fg: string;
|
|
34
|
+
tag_bg: string;
|
|
35
|
+
}>;
|
|
36
|
+
list: {
|
|
37
|
+
id: string;
|
|
38
|
+
name: string;
|
|
39
|
+
};
|
|
40
|
+
folder: {
|
|
41
|
+
id: string;
|
|
42
|
+
name: string;
|
|
43
|
+
};
|
|
44
|
+
space: {
|
|
45
|
+
id: string;
|
|
46
|
+
};
|
|
47
|
+
url: string;
|
|
48
|
+
date_created: string;
|
|
49
|
+
date_updated: string;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Represents a ClickUp status in a list/space.
|
|
53
|
+
*/
|
|
54
|
+
export interface ClickUpStatus {
|
|
55
|
+
id: string;
|
|
56
|
+
status: string;
|
|
57
|
+
type: string;
|
|
58
|
+
color: string;
|
|
59
|
+
orderindex: number;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Represents a ClickUp space.
|
|
63
|
+
*/
|
|
64
|
+
export interface ClickUpSpace {
|
|
65
|
+
id: string;
|
|
66
|
+
name: string;
|
|
67
|
+
statuses: ClickUpStatus[];
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Represents a ClickUp list.
|
|
71
|
+
*/
|
|
72
|
+
export interface ClickUpList {
|
|
73
|
+
id: string;
|
|
74
|
+
name: string;
|
|
75
|
+
statuses: ClickUpStatus[];
|
|
76
|
+
folder: {
|
|
77
|
+
id: string;
|
|
78
|
+
name: string;
|
|
79
|
+
};
|
|
80
|
+
space: {
|
|
81
|
+
id: string;
|
|
82
|
+
name: string;
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* ClickUp connection configuration stored in workspace_settings.
|
|
87
|
+
*/
|
|
88
|
+
export interface ClickUpConfig {
|
|
89
|
+
apiKey: string;
|
|
90
|
+
defaultListId?: string;
|
|
91
|
+
defaultListName?: string;
|
|
92
|
+
workspaceName?: string;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Priority mapping between ClickUp and PMO (P0-P3).
|
|
96
|
+
* ClickUp: 1=Urgent, 2=High, 3=Normal, 4=Low
|
|
97
|
+
* PMO: P0=Critical, P1=High, P2=Medium, P3=Low
|
|
98
|
+
*/
|
|
99
|
+
export declare const CLICKUP_PRIORITY_TO_PMO: Record<string, string>;
|
|
100
|
+
export declare const PMO_PRIORITY_TO_CLICKUP: Record<string, number>;
|
|
101
|
+
/**
|
|
102
|
+
* Map ClickUp status type to PMO state category.
|
|
103
|
+
*/
|
|
104
|
+
export declare const CLICKUP_STATUS_TYPE_TO_PMO_CATEGORY: Record<string, string>;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ClickUp Integration Types
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for the ClickUp ↔ PMO integration layer.
|
|
5
|
+
*/
|
|
6
|
+
// =============================================================================
|
|
7
|
+
// Mapping Types
|
|
8
|
+
// =============================================================================
|
|
9
|
+
/**
|
|
10
|
+
* Priority mapping between ClickUp and PMO (P0-P3).
|
|
11
|
+
* ClickUp: 1=Urgent, 2=High, 3=Normal, 4=Low
|
|
12
|
+
* PMO: P0=Critical, P1=High, P2=Medium, P3=Low
|
|
13
|
+
*/
|
|
14
|
+
export const CLICKUP_PRIORITY_TO_PMO = {
|
|
15
|
+
'1': 'P0', // Urgent → Critical
|
|
16
|
+
'2': 'P1', // High → High
|
|
17
|
+
'3': 'P2', // Normal → Medium
|
|
18
|
+
'4': 'P3', // Low → Low
|
|
19
|
+
};
|
|
20
|
+
export const PMO_PRIORITY_TO_CLICKUP = {
|
|
21
|
+
P0: 1, // Critical → Urgent
|
|
22
|
+
P1: 2, // High → High
|
|
23
|
+
P2: 3, // Medium → Normal
|
|
24
|
+
P3: 4, // Low → Low
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Map ClickUp status type to PMO state category.
|
|
28
|
+
*/
|
|
29
|
+
export const CLICKUP_STATUS_TYPE_TO_PMO_CATEGORY = {
|
|
30
|
+
open: 'unstarted',
|
|
31
|
+
custom: 'started',
|
|
32
|
+
closed: 'completed',
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lib/clickup/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAuGH,gFAAgF;AAChF,gBAAgB;AAChB,gFAAgF;AAEhF;;;;GAIG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAA2B;IAC7D,GAAG,EAAE,IAAI,EAAI,oBAAoB;IACjC,GAAG,EAAE,IAAI,EAAI,cAAc;IAC3B,GAAG,EAAE,IAAI,EAAI,kBAAkB;IAC/B,GAAG,EAAE,IAAI,EAAI,YAAY;CAC1B,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAA2B;IAC7D,EAAE,EAAE,CAAC,EAAM,oBAAoB;IAC/B,EAAE,EAAE,CAAC,EAAM,cAAc;IACzB,EAAE,EAAE,CAAC,EAAM,kBAAkB;IAC7B,EAAE,EAAE,CAAC,EAAM,YAAY;CACxB,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,mCAAmC,GAA2B;IACzE,IAAI,EAAE,WAAW;IACjB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,WAAW;CACpB,CAAA"}
|
|
@@ -101,7 +101,7 @@ export function createDashboardServer(options) {
|
|
|
101
101
|
try {
|
|
102
102
|
client.end();
|
|
103
103
|
}
|
|
104
|
-
catch { /* ignore */ }
|
|
104
|
+
catch { /* client may have already disconnected — safe to ignore */ }
|
|
105
105
|
}
|
|
106
106
|
sseClients.clear();
|
|
107
107
|
server.close(() => resolveClose());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/lib/dashboard/server.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/lib/dashboard/server.ts"],"names":[],"mappings":"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"}
|