tower-studio 0.1.1 → 0.1.3
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/components.json +25 -0
- package/next.config.ts +1 -1
- package/package.json +10 -11
- package/postcss.config.mjs +7 -0
- package/prisma/dev.db +0 -0
- package/prisma/prisma/dev.db +0 -0
- package/prisma/seed.ts +50 -0
- package/scripts/init-tower.ts +10 -0
- package/scripts/post-tool-hook.js +188 -0
- package/scripts/session-start-hook.js +79 -0
- package/scripts/stop-hook.js +78 -0
- package/skills/tower/SKILL.md +375 -0
- package/src/actions/__tests__/agent-actions-username.test.ts +30 -0
- package/src/actions/__tests__/asset-actions.test.ts +251 -0
- package/src/actions/__tests__/assistant-actions.test.ts +20 -0
- package/src/actions/__tests__/cli-profile-actions.test.ts +243 -0
- package/src/actions/__tests__/label-actions.test.ts +187 -0
- package/src/actions/__tests__/note-actions.test.ts +237 -0
- package/src/actions/__tests__/onboarding-actions.test.ts +265 -0
- package/src/actions/__tests__/project-actions.test.ts +179 -0
- package/src/actions/__tests__/prompt-actions.test.ts +213 -0
- package/src/actions/__tests__/report-actions.test.ts +246 -0
- package/src/actions/__tests__/search-code-actions.test.ts +308 -0
- package/src/actions/__tests__/task-actions-overview.test.ts +58 -0
- package/src/actions/__tests__/task-actions-pin.test.ts +79 -0
- package/src/actions/__tests__/workspace-actions.test.ts +256 -0
- package/src/actions/agent-actions.ts +741 -0
- package/src/actions/agent-config-actions.ts +44 -0
- package/src/actions/ai-config-actions.ts +51 -0
- package/src/actions/asset-actions.ts +131 -0
- package/src/actions/assistant-actions.ts +107 -0
- package/src/actions/cli-profile-actions.ts +98 -0
- package/src/actions/config-actions.ts +84 -0
- package/src/actions/file-actions.ts +262 -0
- package/src/actions/git-actions.ts +90 -0
- package/src/actions/label-actions.ts +67 -0
- package/src/actions/note-actions.ts +87 -0
- package/src/actions/onboarding-actions.ts +103 -0
- package/src/actions/preview-actions.ts +76 -0
- package/src/actions/project-actions.ts +222 -0
- package/src/actions/prompt-actions.ts +73 -0
- package/src/actions/report-actions.ts +141 -0
- package/src/actions/search-actions.ts +21 -0
- package/src/actions/search-code-actions.ts +185 -0
- package/src/actions/task-actions.ts +350 -0
- package/src/actions/workspace-actions.ts +224 -0
- package/src/app/api/adapters/test/route.ts +52 -0
- package/src/app/api/browse-fs/route.ts +90 -0
- package/src/app/api/files/assets/[projectId]/[filename]/route.ts +38 -0
- package/src/app/api/git/route.ts +367 -0
- package/src/app/api/internal/assets/[projectId]/[filename]/route.ts +51 -0
- package/src/app/api/internal/assets/reveal/route.ts +71 -0
- package/src/app/api/internal/assistant/chat/route.ts +217 -0
- package/src/app/api/internal/assistant/images/route.ts +51 -0
- package/src/app/api/internal/assistant/route.ts +50 -0
- package/src/app/api/internal/assistant/sessions/route.ts +44 -0
- package/src/app/api/internal/cache/[...segments]/route.ts +59 -0
- package/src/app/api/internal/hooks/install/route.ts +41 -0
- package/src/app/api/internal/hooks/session/route.ts +60 -0
- package/src/app/api/internal/hooks/stop/route.ts +61 -0
- package/src/app/api/internal/hooks/upload/route.ts +173 -0
- package/src/app/api/internal/notifications/pending/route.ts +20 -0
- package/src/app/api/internal/terminal/[taskId]/buffer/route.ts +48 -0
- package/src/app/api/internal/terminal/[taskId]/input/route.ts +64 -0
- package/src/app/api/internal/terminal/[taskId]/start/route.ts +37 -0
- package/src/app/api/tasks/[taskId]/diff/route.ts +224 -0
- package/src/app/api/tasks/[taskId]/merge/route.ts +159 -0
- package/src/app/globals.css +247 -0
- package/src/app/layout.tsx +63 -0
- package/src/app/missions/missions-client.tsx +338 -0
- package/src/app/missions/page.tsx +10 -0
- package/src/app/onboarding/page.tsx +619 -0
- package/src/app/page.tsx +5 -0
- package/src/app/settings/page.tsx +7 -0
- package/src/app/workspaces/[workspaceId]/archive/archive-page-client.tsx +258 -0
- package/src/app/workspaces/[workspaceId]/archive/page.tsx +36 -0
- package/src/app/workspaces/[workspaceId]/assets/assets-page-client.tsx +232 -0
- package/src/app/workspaces/[workspaceId]/assets/page.tsx +36 -0
- package/src/app/workspaces/[workspaceId]/board-page-client.tsx +257 -0
- package/src/app/workspaces/[workspaceId]/notes/notes-page-client.tsx +337 -0
- package/src/app/workspaces/[workspaceId]/notes/page.tsx +39 -0
- package/src/app/workspaces/[workspaceId]/page.tsx +81 -0
- package/src/app/workspaces/[workspaceId]/projects/[projectId]/page.tsx +30 -0
- package/src/app/workspaces/[workspaceId]/tasks/[taskId]/page.tsx +97 -0
- package/src/app/workspaces/[workspaceId]/tasks/[taskId]/task-page-client.tsx +601 -0
- package/src/app/workspaces/page.tsx +13 -0
- package/src/components/assets/asset-item.tsx +128 -0
- package/src/components/assets/asset-list.tsx +31 -0
- package/src/components/assets/asset-upload.tsx +216 -0
- package/src/components/assets/image-lightbox.tsx +72 -0
- package/src/components/assets/text-preview-dialog.tsx +135 -0
- package/src/components/assistant/assistant-chat-bubble.tsx +308 -0
- package/src/components/assistant/assistant-chat.tsx +215 -0
- package/src/components/assistant/assistant-panel.tsx +149 -0
- package/src/components/assistant/assistant-provider.tsx +512 -0
- package/src/components/assistant/image-preview-modal.tsx +60 -0
- package/src/components/assistant/image-thumbnail-strip.tsx +94 -0
- package/src/components/board/board-column.tsx +115 -0
- package/src/components/board/board-filters.tsx +42 -0
- package/src/components/board/board-stats.tsx +52 -0
- package/src/components/board/column-tasks-dialog.tsx +100 -0
- package/src/components/board/create-task-dialog.tsx +362 -0
- package/src/components/board/kanban-board.tsx +169 -0
- package/src/components/board/project-tabs.tsx +93 -0
- package/src/components/board/task-card-context-menu.tsx +121 -0
- package/src/components/board/task-card.tsx +135 -0
- package/src/components/layout/__tests__/top-bar-username.test.tsx +24 -0
- package/src/components/layout/app-sidebar.tsx +662 -0
- package/src/components/layout/folder-browser-dialog.tsx +273 -0
- package/src/components/layout/layout-client.tsx +198 -0
- package/src/components/layout/search-dialog.tsx +196 -0
- package/src/components/layout/sub-page-nav.tsx +54 -0
- package/src/components/layout/top-bar.tsx +265 -0
- package/src/components/missions/grid-layout-presets.ts +19 -0
- package/src/components/missions/grid-preset-picker.tsx +209 -0
- package/src/components/missions/merge-missions.ts +30 -0
- package/src/components/missions/mission-card.tsx +203 -0
- package/src/components/missions/task-picker-dialog.tsx +415 -0
- package/src/components/notes/category-filter.tsx +44 -0
- package/src/components/notes/note-card.tsx +67 -0
- package/src/components/notes/note-editor.tsx +28 -0
- package/src/components/notes/note-list.tsx +30 -0
- package/src/components/notifications/notification-permission-banner.tsx +49 -0
- package/src/components/notifications/use-notification-listener.ts +114 -0
- package/src/components/onboarding/__tests__/onboarding-wizard.test.tsx +185 -0
- package/src/components/onboarding/guided-tour.tsx +255 -0
- package/src/components/onboarding/onboarding-wizard.tsx +84 -0
- package/src/components/onboarding/wizard-step-cli.tsx +53 -0
- package/src/components/onboarding/wizard-step-username.tsx +59 -0
- package/src/components/project/create-project-dialog.tsx +310 -0
- package/src/components/project/import-project-dialog.tsx +414 -0
- package/src/components/providers/theme-provider.tsx +8 -0
- package/src/components/repository/create-branch-dialog.tsx +165 -0
- package/src/components/repository/git-changes-panel.tsx +294 -0
- package/src/components/repository/git-log-panel.tsx +83 -0
- package/src/components/repository/git-stash-panel.tsx +158 -0
- package/src/components/repository/repo-sidebar.tsx +855 -0
- package/src/components/settings/cli-adapter-tester.tsx +144 -0
- package/src/components/settings/settings-page.tsx +2111 -0
- package/src/components/task/code-editor.tsx +376 -0
- package/src/components/task/code-search.tsx +219 -0
- package/src/components/task/diff-editor.tsx +97 -0
- package/src/components/task/editor-git-panel.tsx +792 -0
- package/src/components/task/editor-tabs.tsx +68 -0
- package/src/components/task/execution-timeline.tsx +258 -0
- package/src/components/task/file-tree-context-menu.tsx +113 -0
- package/src/components/task/file-tree-node.tsx +269 -0
- package/src/components/task/file-tree.tsx +575 -0
- package/src/components/task/preview-panel.tsx +281 -0
- package/src/components/task/task-detail-panel.tsx +455 -0
- package/src/components/task/task-diff-view.tsx +207 -0
- package/src/components/task/task-file-changes.tsx +19 -0
- package/src/components/task/task-merge-confirm-dialog.tsx +152 -0
- package/src/components/task/task-metadata.tsx +74 -0
- package/src/components/task/task-notes-panel.tsx +219 -0
- package/src/components/task/task-overview-drawer.tsx +172 -0
- package/src/components/task/task-terminal.tsx +294 -0
- package/src/components/task/terminal-portal.tsx +156 -0
- package/src/components/task/types.ts +6 -0
- package/src/components/ui/avatar.tsx +109 -0
- package/src/components/ui/badge.tsx +52 -0
- package/src/components/ui/button.tsx +58 -0
- package/src/components/ui/card.tsx +103 -0
- package/src/components/ui/command.tsx +196 -0
- package/src/components/ui/dialog.tsx +160 -0
- package/src/components/ui/dropdown-menu.tsx +268 -0
- package/src/components/ui/empty-state.tsx +26 -0
- package/src/components/ui/error-boundary.tsx +58 -0
- package/src/components/ui/input-group.tsx +158 -0
- package/src/components/ui/input.tsx +20 -0
- package/src/components/ui/label.tsx +20 -0
- package/src/components/ui/popover.tsx +90 -0
- package/src/components/ui/scroll-area.tsx +55 -0
- package/src/components/ui/segmented-control.tsx +42 -0
- package/src/components/ui/select.tsx +207 -0
- package/src/components/ui/separator.tsx +25 -0
- package/src/components/ui/sheet.tsx +138 -0
- package/src/components/ui/sonner.tsx +49 -0
- package/src/components/ui/switch.tsx +32 -0
- package/src/components/ui/tabs.tsx +82 -0
- package/src/components/ui/textarea.tsx +18 -0
- package/src/components/ui/toast.tsx +86 -0
- package/src/components/ui/tooltip.tsx +66 -0
- package/src/hooks/__tests__/sse-event-reducer.test.ts +263 -0
- package/src/hooks/__tests__/use-assistant-chat.test.ts +34 -0
- package/src/hooks/__tests__/use-image-upload.test.ts +443 -0
- package/src/hooks/sse-event-reducer.ts +144 -0
- package/src/hooks/use-assistant-chat.ts +190 -0
- package/src/hooks/use-image-upload.ts +140 -0
- package/src/instrumentation.ts +18 -0
- package/src/lib/__tests__/assistant-message-converter.test.ts +162 -0
- package/src/lib/__tests__/assistant-sessions.test.ts +253 -0
- package/src/lib/__tests__/build-multimodal-prompt.test.ts +173 -0
- package/src/lib/__tests__/config-reader.test.ts +75 -0
- package/src/lib/__tests__/diff-parser.test.ts +212 -0
- package/src/lib/__tests__/execution-summary.test.ts +237 -0
- package/src/lib/__tests__/file-serve.test.ts +178 -0
- package/src/lib/__tests__/file-utils.test.ts +177 -0
- package/src/lib/__tests__/internal-api-guard.test.ts +151 -0
- package/src/lib/__tests__/logger.test.ts +181 -0
- package/src/lib/__tests__/platform.test.ts +566 -0
- package/src/lib/__tests__/reveal-route-security.test.ts +65 -0
- package/src/lib/__tests__/schemas.test.ts +377 -0
- package/src/lib/__tests__/terminal-link-provider.test.ts +160 -0
- package/src/lib/__tests__/upload-route-security.test.ts +120 -0
- package/src/lib/ai/__tests__/capability-resolver.test.ts +71 -0
- package/src/lib/ai/__tests__/claude-cli-adapter.test.ts +103 -0
- package/src/lib/ai/__tests__/provider-registry.test.ts +74 -0
- package/src/lib/ai/adapters/cli/claude-cli-adapter.ts +166 -0
- package/src/lib/ai/capability-resolver.ts +81 -0
- package/src/lib/ai/provider-registry.ts +54 -0
- package/src/lib/ai/providers/claude.ts +19 -0
- package/src/lib/ai/providers/index.ts +12 -0
- package/src/lib/ai/types.ts +151 -0
- package/src/lib/assistant-constants.ts +2 -0
- package/src/lib/assistant-message-converter.ts +131 -0
- package/src/lib/assistant-sessions.ts +75 -0
- package/src/lib/build-multimodal-prompt.ts +53 -0
- package/src/lib/claude-session.ts +156 -0
- package/src/lib/cli-test.ts +476 -0
- package/src/lib/config-defaults.ts +121 -0
- package/src/lib/config-reader.ts +16 -0
- package/src/lib/constants.ts +26 -0
- package/src/lib/db.ts +28 -0
- package/src/lib/diff-parser.ts +132 -0
- package/src/lib/execution-summary.ts +287 -0
- package/src/lib/file-serve-client.ts +13 -0
- package/src/lib/file-serve.ts +32 -0
- package/src/lib/file-utils.ts +108 -0
- package/src/lib/fs-security.ts +22 -0
- package/src/lib/fts.ts +83 -0
- package/src/lib/git-api.ts +19 -0
- package/src/lib/git-url.ts +244 -0
- package/src/lib/i18n/en.ts +754 -0
- package/src/lib/i18n/types.ts +4 -0
- package/src/lib/i18n/zh.ts +769 -0
- package/src/lib/i18n.tsx +64 -0
- package/src/lib/init-tower.ts +129 -0
- package/src/lib/instrumentation-tasks.ts +116 -0
- package/src/lib/internal-api-guard.ts +63 -0
- package/src/lib/logger.ts +46 -0
- package/src/lib/mime-magic.ts +67 -0
- package/src/lib/platform.ts +518 -0
- package/src/lib/preview-process.ts +40 -0
- package/src/lib/pty/__tests__/ws-server-assistant.test.ts +7 -0
- package/src/lib/pty/pty-session.ts +157 -0
- package/src/lib/pty/session-store.ts +67 -0
- package/src/lib/pty/ws-server.ts +335 -0
- package/src/lib/schemas.ts +67 -0
- package/src/lib/search.ts +225 -0
- package/src/lib/terminal-link-provider.ts +90 -0
- package/src/lib/tower-dir.ts +69 -0
- package/src/lib/utils.ts +20 -0
- package/src/lib/worktree.ts +184 -0
- package/src/stores/board-store.ts +46 -0
- package/src/stores/task-execution-store.ts +41 -0
- package/src/types/index.ts +36 -0
- package/.next/BUILD_ID +0 -1
- package/.next/app-path-routes-manifest.json +0 -41
- package/.next/build/chunks/0kjx__pnpm_05m.mc_._.js +0 -6681
- package/.next/build/chunks/[root-of-the-server]__0a5dngl._.js +0 -206
- package/.next/build/chunks/[root-of-the-server]__13e2v6w._.js +0 -500
- package/.next/build/chunks/[turbopack-node]_transforms_postcss_ts_0y_r.ay._.js +0 -13
- package/.next/build/chunks/[turbopack]_runtime.js +0 -890
- package/.next/build/package.json +0 -1
- package/.next/build/postcss.js +0 -6
- package/.next/build-manifest.json +0 -22
- package/.next/cache/.previewinfo +0 -1
- package/.next/cache/.rscinfo +0 -1
- package/.next/cache/.tsbuildinfo +0 -1
- package/.next/diagnostics/build-diagnostics.json +0 -6
- package/.next/diagnostics/framework.json +0 -1
- package/.next/diagnostics/route-bundle-stats.json +0 -299
- package/.next/export-marker.json +0 -6
- package/.next/fallback-build-manifest.json +0 -13
- package/.next/images-manifest.json +0 -68
- package/.next/next-minimal-server.js.nft.json +0 -1
- package/.next/next-server.js.nft.json +0 -1
- package/.next/package.json +0 -1
- package/.next/prerender-manifest.json +0 -278
- package/.next/required-server-files.js +0 -338
- package/.next/required-server-files.json +0 -338
- package/.next/routes-manifest.json +0 -312
- package/.next/server/app/_global-error/page/app-paths-manifest.json +0 -3
- package/.next/server/app/_global-error/page/build-manifest.json +0 -18
- package/.next/server/app/_global-error/page/next-font-manifest.json +0 -6
- package/.next/server/app/_global-error/page/react-loadable-manifest.json +0 -1
- package/.next/server/app/_global-error/page/server-reference-manifest.json +0 -4
- package/.next/server/app/_global-error/page.js +0 -12
- package/.next/server/app/_global-error/page.js.nft.json +0 -1
- package/.next/server/app/_global-error/page_client-reference-manifest.js +0 -3
- package/.next/server/app/_global-error.html +0 -1
- package/.next/server/app/_global-error.meta +0 -15
- package/.next/server/app/_global-error.rsc +0 -15
- package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +0 -5
- package/.next/server/app/_global-error.segments/_full.segment.rsc +0 -15
- package/.next/server/app/_global-error.segments/_head.segment.rsc +0 -6
- package/.next/server/app/_global-error.segments/_index.segment.rsc +0 -5
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +0 -1
- package/.next/server/app/_not-found/page/app-paths-manifest.json +0 -3
- package/.next/server/app/_not-found/page/build-manifest.json +0 -18
- package/.next/server/app/_not-found/page/next-font-manifest.json +0 -11
- package/.next/server/app/_not-found/page/react-loadable-manifest.json +0 -16
- package/.next/server/app/_not-found/page/server-reference-manifest.json +0 -233
- package/.next/server/app/_not-found/page.js +0 -20
- package/.next/server/app/_not-found/page.js.nft.json +0 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +0 -3
- package/.next/server/app/_not-found.html +0 -1
- package/.next/server/app/_not-found.meta +0 -16
- package/.next/server/app/_not-found.rsc +0 -24
- package/.next/server/app/_not-found.segments/_full.segment.rsc +0 -24
- package/.next/server/app/_not-found.segments/_head.segment.rsc +0 -6
- package/.next/server/app/_not-found.segments/_index.segment.rsc +0 -12
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +0 -5
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +0 -5
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +0 -4
- package/.next/server/app/api/adapters/test/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/adapters/test/route/build-manifest.json +0 -9
- package/.next/server/app/api/adapters/test/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/adapters/test/route.js +0 -9
- package/.next/server/app/api/adapters/test/route.js.nft.json +0 -1
- package/.next/server/app/api/adapters/test/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/browse-fs/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/browse-fs/route/build-manifest.json +0 -9
- package/.next/server/app/api/browse-fs/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/browse-fs/route.js +0 -7
- package/.next/server/app/api/browse-fs/route.js.nft.json +0 -1
- package/.next/server/app/api/browse-fs/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/files/assets/[projectId]/[filename]/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/files/assets/[projectId]/[filename]/route/build-manifest.json +0 -9
- package/.next/server/app/api/files/assets/[projectId]/[filename]/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/files/assets/[projectId]/[filename]/route.js +0 -7
- package/.next/server/app/api/files/assets/[projectId]/[filename]/route.js.nft.json +0 -1
- package/.next/server/app/api/files/assets/[projectId]/[filename]/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/git/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/git/route/build-manifest.json +0 -9
- package/.next/server/app/api/git/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/git/route.js +0 -8
- package/.next/server/app/api/git/route.js.nft.json +0 -1
- package/.next/server/app/api/git/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/internal/assets/[projectId]/[filename]/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/internal/assets/[projectId]/[filename]/route/build-manifest.json +0 -9
- package/.next/server/app/api/internal/assets/[projectId]/[filename]/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/internal/assets/[projectId]/[filename]/route.js +0 -7
- package/.next/server/app/api/internal/assets/[projectId]/[filename]/route.js.nft.json +0 -1
- package/.next/server/app/api/internal/assets/[projectId]/[filename]/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/internal/assets/reveal/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/internal/assets/reveal/route/build-manifest.json +0 -9
- package/.next/server/app/api/internal/assets/reveal/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/internal/assets/reveal/route.js +0 -7
- package/.next/server/app/api/internal/assets/reveal/route.js.nft.json +0 -1
- package/.next/server/app/api/internal/assets/reveal/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/internal/assistant/chat/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/internal/assistant/chat/route/build-manifest.json +0 -9
- package/.next/server/app/api/internal/assistant/chat/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/internal/assistant/chat/route.js +0 -7
- package/.next/server/app/api/internal/assistant/chat/route.js.nft.json +0 -1
- package/.next/server/app/api/internal/assistant/chat/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/internal/assistant/images/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/internal/assistant/images/route/build-manifest.json +0 -9
- package/.next/server/app/api/internal/assistant/images/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/internal/assistant/images/route.js +0 -9
- package/.next/server/app/api/internal/assistant/images/route.js.nft.json +0 -1
- package/.next/server/app/api/internal/assistant/images/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/internal/assistant/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/internal/assistant/route/build-manifest.json +0 -9
- package/.next/server/app/api/internal/assistant/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/internal/assistant/route.js +0 -7
- package/.next/server/app/api/internal/assistant/route.js.nft.json +0 -1
- package/.next/server/app/api/internal/assistant/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/internal/assistant/sessions/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/internal/assistant/sessions/route/build-manifest.json +0 -9
- package/.next/server/app/api/internal/assistant/sessions/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/internal/assistant/sessions/route.js +0 -7
- package/.next/server/app/api/internal/assistant/sessions/route.js.nft.json +0 -1
- package/.next/server/app/api/internal/assistant/sessions/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/internal/cache/[...segments]/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/internal/cache/[...segments]/route/build-manifest.json +0 -9
- package/.next/server/app/api/internal/cache/[...segments]/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/internal/cache/[...segments]/route.js +0 -7
- package/.next/server/app/api/internal/cache/[...segments]/route.js.nft.json +0 -1
- package/.next/server/app/api/internal/cache/[...segments]/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/internal/hooks/install/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/internal/hooks/install/route/build-manifest.json +0 -9
- package/.next/server/app/api/internal/hooks/install/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/internal/hooks/install/route.js +0 -7
- package/.next/server/app/api/internal/hooks/install/route.js.nft.json +0 -1
- package/.next/server/app/api/internal/hooks/install/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/internal/hooks/session/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/internal/hooks/session/route/build-manifest.json +0 -9
- package/.next/server/app/api/internal/hooks/session/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/internal/hooks/session/route.js +0 -7
- package/.next/server/app/api/internal/hooks/session/route.js.nft.json +0 -1
- package/.next/server/app/api/internal/hooks/session/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/internal/hooks/stop/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/internal/hooks/stop/route/build-manifest.json +0 -9
- package/.next/server/app/api/internal/hooks/stop/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/internal/hooks/stop/route.js +0 -8
- package/.next/server/app/api/internal/hooks/stop/route.js.nft.json +0 -1
- package/.next/server/app/api/internal/hooks/stop/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/internal/hooks/upload/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/internal/hooks/upload/route/build-manifest.json +0 -9
- package/.next/server/app/api/internal/hooks/upload/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/internal/hooks/upload/route.js +0 -7
- package/.next/server/app/api/internal/hooks/upload/route.js.nft.json +0 -1
- package/.next/server/app/api/internal/hooks/upload/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/internal/notifications/pending/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/internal/notifications/pending/route/build-manifest.json +0 -9
- package/.next/server/app/api/internal/notifications/pending/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/internal/notifications/pending/route.js +0 -7
- package/.next/server/app/api/internal/notifications/pending/route.js.nft.json +0 -1
- package/.next/server/app/api/internal/notifications/pending/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/internal/terminal/[taskId]/buffer/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/internal/terminal/[taskId]/buffer/route/build-manifest.json +0 -9
- package/.next/server/app/api/internal/terminal/[taskId]/buffer/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/internal/terminal/[taskId]/buffer/route.js +0 -8
- package/.next/server/app/api/internal/terminal/[taskId]/buffer/route.js.nft.json +0 -1
- package/.next/server/app/api/internal/terminal/[taskId]/buffer/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/internal/terminal/[taskId]/input/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/internal/terminal/[taskId]/input/route/build-manifest.json +0 -9
- package/.next/server/app/api/internal/terminal/[taskId]/input/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/internal/terminal/[taskId]/input/route.js +0 -8
- package/.next/server/app/api/internal/terminal/[taskId]/input/route.js.nft.json +0 -1
- package/.next/server/app/api/internal/terminal/[taskId]/input/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/internal/terminal/[taskId]/start/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/internal/terminal/[taskId]/start/route/build-manifest.json +0 -9
- package/.next/server/app/api/internal/terminal/[taskId]/start/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/internal/terminal/[taskId]/start/route.js +0 -10
- package/.next/server/app/api/internal/terminal/[taskId]/start/route.js.nft.json +0 -1
- package/.next/server/app/api/internal/terminal/[taskId]/start/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/tasks/[taskId]/diff/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/tasks/[taskId]/diff/route/build-manifest.json +0 -9
- package/.next/server/app/api/tasks/[taskId]/diff/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/tasks/[taskId]/diff/route.js +0 -8
- package/.next/server/app/api/tasks/[taskId]/diff/route.js.nft.json +0 -1
- package/.next/server/app/api/tasks/[taskId]/diff/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/tasks/[taskId]/merge/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/tasks/[taskId]/merge/route/build-manifest.json +0 -9
- package/.next/server/app/api/tasks/[taskId]/merge/route/server-reference-manifest.json +0 -4
- package/.next/server/app/api/tasks/[taskId]/merge/route.js +0 -9
- package/.next/server/app/api/tasks/[taskId]/merge/route.js.nft.json +0 -1
- package/.next/server/app/api/tasks/[taskId]/merge/route_client-reference-manifest.js +0 -3
- package/.next/server/app/apple-icon.png/route/app-paths-manifest.json +0 -3
- package/.next/server/app/apple-icon.png/route/build-manifest.json +0 -9
- package/.next/server/app/apple-icon.png/route.js +0 -8
- package/.next/server/app/apple-icon.png/route.js.nft.json +0 -1
- package/.next/server/app/apple-icon.png.meta +0 -1
- package/.next/server/app/favicon.ico/route/app-paths-manifest.json +0 -3
- package/.next/server/app/favicon.ico/route/build-manifest.json +0 -9
- package/.next/server/app/favicon.ico/route.js +0 -8
- package/.next/server/app/favicon.ico/route.js.nft.json +0 -1
- package/.next/server/app/favicon.ico.meta +0 -1
- package/.next/server/app/icon0.svg/route/app-paths-manifest.json +0 -3
- package/.next/server/app/icon0.svg/route/build-manifest.json +0 -9
- package/.next/server/app/icon0.svg/route.js +0 -8
- package/.next/server/app/icon0.svg/route.js.nft.json +0 -1
- package/.next/server/app/icon0.svg.meta +0 -1
- package/.next/server/app/icon1.png/route/app-paths-manifest.json +0 -3
- package/.next/server/app/icon1.png/route/build-manifest.json +0 -9
- package/.next/server/app/icon1.png/route.js +0 -8
- package/.next/server/app/icon1.png/route.js.nft.json +0 -1
- package/.next/server/app/icon1.png.meta +0 -1
- package/.next/server/app/index.html +0 -1
- package/.next/server/app/index.meta +0 -16
- package/.next/server/app/index.rsc +0 -25
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +0 -6
- package/.next/server/app/index.segments/_full.segment.rsc +0 -25
- package/.next/server/app/index.segments/_head.segment.rsc +0 -6
- package/.next/server/app/index.segments/_index.segment.rsc +0 -12
- package/.next/server/app/index.segments/_tree.segment.rsc +0 -6
- package/.next/server/app/manifest.json/route/app-paths-manifest.json +0 -3
- package/.next/server/app/manifest.json/route/build-manifest.json +0 -9
- package/.next/server/app/manifest.json/route.js +0 -7
- package/.next/server/app/manifest.json/route.js.nft.json +0 -1
- package/.next/server/app/manifest.json.meta +0 -1
- package/.next/server/app/missions/page/app-paths-manifest.json +0 -3
- package/.next/server/app/missions/page/build-manifest.json +0 -18
- package/.next/server/app/missions/page/next-font-manifest.json +0 -11
- package/.next/server/app/missions/page/react-loadable-manifest.json +0 -16
- package/.next/server/app/missions/page/server-reference-manifest.json +0 -401
- package/.next/server/app/missions/page.js +0 -22
- package/.next/server/app/missions/page.js.nft.json +0 -1
- package/.next/server/app/missions/page_client-reference-manifest.js +0 -3
- package/.next/server/app/onboarding/page/app-paths-manifest.json +0 -3
- package/.next/server/app/onboarding/page/build-manifest.json +0 -18
- package/.next/server/app/onboarding/page/next-font-manifest.json +0 -11
- package/.next/server/app/onboarding/page/react-loadable-manifest.json +0 -16
- package/.next/server/app/onboarding/page/server-reference-manifest.json +0 -233
- package/.next/server/app/onboarding/page.js +0 -21
- package/.next/server/app/onboarding/page.js.nft.json +0 -1
- package/.next/server/app/onboarding/page_client-reference-manifest.js +0 -3
- package/.next/server/app/onboarding.html +0 -1
- package/.next/server/app/onboarding.meta +0 -15
- package/.next/server/app/onboarding.rsc +0 -30
- package/.next/server/app/onboarding.segments/_full.segment.rsc +0 -30
- package/.next/server/app/onboarding.segments/_head.segment.rsc +0 -6
- package/.next/server/app/onboarding.segments/_index.segment.rsc +0 -12
- package/.next/server/app/onboarding.segments/_tree.segment.rsc +0 -6
- package/.next/server/app/onboarding.segments/onboarding/__PAGE__.segment.rsc +0 -9
- package/.next/server/app/onboarding.segments/onboarding.segment.rsc +0 -5
- package/.next/server/app/page/app-paths-manifest.json +0 -3
- package/.next/server/app/page/build-manifest.json +0 -18
- package/.next/server/app/page/next-font-manifest.json +0 -11
- package/.next/server/app/page/react-loadable-manifest.json +0 -16
- package/.next/server/app/page/server-reference-manifest.json +0 -233
- package/.next/server/app/page.js +0 -21
- package/.next/server/app/page.js.nft.json +0 -1
- package/.next/server/app/page_client-reference-manifest.js +0 -3
- package/.next/server/app/settings/page/app-paths-manifest.json +0 -3
- package/.next/server/app/settings/page/build-manifest.json +0 -18
- package/.next/server/app/settings/page/next-font-manifest.json +0 -11
- package/.next/server/app/settings/page/react-loadable-manifest.json +0 -16
- package/.next/server/app/settings/page/server-reference-manifest.json +0 -341
- package/.next/server/app/settings/page.js +0 -21
- package/.next/server/app/settings/page.js.nft.json +0 -1
- package/.next/server/app/settings/page_client-reference-manifest.js +0 -3
- package/.next/server/app/settings.html +0 -1
- package/.next/server/app/settings.meta +0 -15
- package/.next/server/app/settings.rsc +0 -30
- package/.next/server/app/settings.segments/_full.segment.rsc +0 -30
- package/.next/server/app/settings.segments/_head.segment.rsc +0 -6
- package/.next/server/app/settings.segments/_index.segment.rsc +0 -12
- package/.next/server/app/settings.segments/_tree.segment.rsc +0 -6
- package/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +0 -9
- package/.next/server/app/settings.segments/settings.segment.rsc +0 -5
- package/.next/server/app/workspaces/[workspaceId]/archive/page/app-paths-manifest.json +0 -3
- package/.next/server/app/workspaces/[workspaceId]/archive/page/build-manifest.json +0 -18
- package/.next/server/app/workspaces/[workspaceId]/archive/page/next-font-manifest.json +0 -11
- package/.next/server/app/workspaces/[workspaceId]/archive/page/react-loadable-manifest.json +0 -16
- package/.next/server/app/workspaces/[workspaceId]/archive/page/server-reference-manifest.json +0 -497
- package/.next/server/app/workspaces/[workspaceId]/archive/page.js +0 -21
- package/.next/server/app/workspaces/[workspaceId]/archive/page.js.nft.json +0 -1
- package/.next/server/app/workspaces/[workspaceId]/archive/page_client-reference-manifest.js +0 -3
- package/.next/server/app/workspaces/[workspaceId]/assets/page/app-paths-manifest.json +0 -3
- package/.next/server/app/workspaces/[workspaceId]/assets/page/build-manifest.json +0 -18
- package/.next/server/app/workspaces/[workspaceId]/assets/page/next-font-manifest.json +0 -11
- package/.next/server/app/workspaces/[workspaceId]/assets/page/react-loadable-manifest.json +0 -16
- package/.next/server/app/workspaces/[workspaceId]/assets/page/server-reference-manifest.json +0 -461
- package/.next/server/app/workspaces/[workspaceId]/assets/page.js +0 -21
- package/.next/server/app/workspaces/[workspaceId]/assets/page.js.nft.json +0 -1
- package/.next/server/app/workspaces/[workspaceId]/assets/page_client-reference-manifest.js +0 -3
- package/.next/server/app/workspaces/[workspaceId]/notes/page/app-paths-manifest.json +0 -3
- package/.next/server/app/workspaces/[workspaceId]/notes/page/build-manifest.json +0 -18
- package/.next/server/app/workspaces/[workspaceId]/notes/page/next-font-manifest.json +0 -11
- package/.next/server/app/workspaces/[workspaceId]/notes/page/react-loadable-manifest.json +0 -16
- package/.next/server/app/workspaces/[workspaceId]/notes/page/server-reference-manifest.json +0 -401
- package/.next/server/app/workspaces/[workspaceId]/notes/page.js +0 -21
- package/.next/server/app/workspaces/[workspaceId]/notes/page.js.nft.json +0 -1
- package/.next/server/app/workspaces/[workspaceId]/notes/page_client-reference-manifest.js +0 -3
- package/.next/server/app/workspaces/[workspaceId]/page/app-paths-manifest.json +0 -3
- package/.next/server/app/workspaces/[workspaceId]/page/build-manifest.json +0 -18
- package/.next/server/app/workspaces/[workspaceId]/page/next-font-manifest.json +0 -11
- package/.next/server/app/workspaces/[workspaceId]/page/react-loadable-manifest.json +0 -16
- package/.next/server/app/workspaces/[workspaceId]/page/server-reference-manifest.json +0 -569
- package/.next/server/app/workspaces/[workspaceId]/page.js +0 -22
- package/.next/server/app/workspaces/[workspaceId]/page.js.nft.json +0 -1
- package/.next/server/app/workspaces/[workspaceId]/page_client-reference-manifest.js +0 -3
- package/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/app-paths-manifest.json +0 -3
- package/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/build-manifest.json +0 -18
- package/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/next-font-manifest.json +0 -11
- package/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/react-loadable-manifest.json +0 -16
- package/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/server-reference-manifest.json +0 -233
- package/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page.js +0 -21
- package/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page.js.nft.json +0 -1
- package/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page_client-reference-manifest.js +0 -3
- package/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/app-paths-manifest.json +0 -3
- package/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/build-manifest.json +0 -18
- package/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/next-font-manifest.json +0 -11
- package/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/react-loadable-manifest.json +0 -22
- package/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/server-reference-manifest.json +0 -581
- package/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page.js +0 -23
- package/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page.js.nft.json +0 -1
- package/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page_client-reference-manifest.js +0 -3
- package/.next/server/app/workspaces/page/app-paths-manifest.json +0 -3
- package/.next/server/app/workspaces/page/build-manifest.json +0 -18
- package/.next/server/app/workspaces/page/next-font-manifest.json +0 -11
- package/.next/server/app/workspaces/page/react-loadable-manifest.json +0 -16
- package/.next/server/app/workspaces/page/server-reference-manifest.json +0 -329
- package/.next/server/app/workspaces/page.js +0 -21
- package/.next/server/app/workspaces/page.js.nft.json +0 -1
- package/.next/server/app/workspaces/page_client-reference-manifest.js +0 -3
- package/.next/server/app-paths-manifest.json +0 -41
- package/.next/server/chunks/03j-_@anthropic-ai_claude-agent-sdk_sdk_mjs_04597t~._.js +0 -85
- package/.next/server/chunks/0cve_next-internal_server_app_api_internal_cache_[___segments]_route_actions_09n1sa3.js +0 -3
- package/.next/server/chunks/0tp-_server_app_api_files_assets_[projectId]_[filename]_route_actions_02i2urs.js +0 -3
- package/.next/server/chunks/0tp-_server_app_api_internal_assets_[projectId]_[filename]_route_actions_0kjz576.js +0 -3
- package/.next/server/chunks/0tp-_server_app_api_internal_notifications_pending_route_actions_08bx38r.js +0 -3
- package/.next/server/chunks/0tp-_server_app_api_internal_terminal_[taskId]_buffer_route_actions_0bpyf5x.js +0 -3
- package/.next/server/chunks/0tp-_server_app_api_internal_terminal_[taskId]_input_route_actions_0alu32r.js +0 -3
- package/.next/server/chunks/0tp-_server_app_api_internal_terminal_[taskId]_start_route_actions_0swqog2.js +0 -3
- package/.next/server/chunks/0w1v_zod_v4_classic_external_0m-7hz_.js +0 -39
- package/.next/server/chunks/0~.g__next-internal_server_app_api_internal_assistant_chat_route_actions_0x-qbrh.js +0 -3
- package/.next/server/chunks/0~.g__next-internal_server_app_api_internal_assistant_images_route_actions_0vws40t.js +0 -3
- package/.next/server/chunks/0~.g__next-internal_server_app_api_internal_assistant_sessions_route_actions_0p09rcp.js +0 -3
- package/.next/server/chunks/10ge_next_dist_08.3req._.js +0 -13
- package/.next/server/chunks/10ge_next_dist_esm_build_templates_app-route_00gmiw_.js +0 -3
- package/.next/server/chunks/10ge_next_dist_esm_build_templates_app-route_0jwpolf.js +0 -3
- package/.next/server/chunks/10ge_next_dist_esm_build_templates_app-route_0liabcf.js +0 -3
- package/.next/server/chunks/10ge_next_dist_esm_build_templates_app-route_0z9_0_i.js +0 -3
- package/.next/server/chunks/10ge_next_dist_esm_build_templates_app-route_13w3ubu.js +0 -3
- package/.next/server/chunks/10ge_next_dist_esm_build_templates_app-route_13~vb_i.js +0 -4
- package/.next/server/chunks/[externals]__02xkqim._.js +0 -3
- package/.next/server/chunks/[externals]__09oeovy._.js +0 -3
- package/.next/server/chunks/[externals]__0~rg.xo._.js +0 -3
- package/.next/server/chunks/[externals]__11rejr-._.js +0 -3
- package/.next/server/chunks/[externals]_child_process_0pwkpv9._.js +0 -3
- package/.next/server/chunks/[externals]_next_dist_0g2nsos._.js +0 -3
- package/.next/server/chunks/[externals]_util_0wtvqkc._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__02p-gd5._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0319djr._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__043lk8~._.js +0 -4
- package/.next/server/chunks/[root-of-the-server]__053y9tf._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__05pxb~w._.js +0 -20
- package/.next/server/chunks/[root-of-the-server]__07-am_7._.js +0 -20
- package/.next/server/chunks/[root-of-the-server]__09gjz6h._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0_irb2s._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0c4edwt._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0c7y1r0._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0dj34zn._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0dqta7g._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0j3gbp7._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0ko_rm_._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0miy2g.._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0mt-eeb._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0n-6-hc._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0nur_ir._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0pz60q-._.js +0 -20
- package/.next/server/chunks/[root-of-the-server]__0q~5ya5._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0rpqx55._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0sjsc63._.js +0 -4
- package/.next/server/chunks/[root-of-the-server]__0th.w7w._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0u..agy._.js +0 -11
- package/.next/server/chunks/[root-of-the-server]__0umzekq._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0wu61w.._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__11v.yk_._.js +0 -4
- package/.next/server/chunks/[root-of-the-server]__12._zd-._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__130shf~._.js +0 -3
- package/.next/server/chunks/[turbopack]_runtime.js +0 -903
- package/.next/server/chunks/ssr/03j-_@anthropic-ai_claude-agent-sdk_sdk_mjs_0kr2_y.._.js +0 -84
- package/.next/server/chunks/ssr/040e_@monaco-editor_react_dist_index_mjs_0t4i-ho._.js +0 -3
- package/.next/server/chunks/ssr/040e_@monaco-editor_react_dist_index_mjs_0z6t1fr._.js +0 -3
- package/.next/server/chunks/ssr/0kjx__pnpm_0g9g8h6._.js +0 -3
- package/.next/server/chunks/ssr/0kjx__pnpm_0l.5ii.._.js +0 -3
- package/.next/server/chunks/ssr/0kjx__pnpm_0wrn.h9._.js +0 -14
- package/.next/server/chunks/ssr/0rik_@dnd-kit_core_dist_core_esm_11giptg.js +0 -3
- package/.next/server/chunks/ssr/0~.g_src_app_workspaces_[workspaceId]_tasks_[taskId]_task-page-client_tsx_0bbseig._.js +0 -3
- package/.next/server/chunks/ssr/10ge_next_00.-vj.._.js +0 -18
- package/.next/server/chunks/ssr/10ge_next_dist_01n~t8z._.js +0 -6
- package/.next/server/chunks/ssr/10ge_next_dist_06_-w96._.js +0 -19
- package/.next/server/chunks/ssr/10ge_next_dist_0pw4my6._.js +0 -6
- package/.next/server/chunks/ssr/10ge_next_dist_0wjbiu9._.js +0 -3
- package/.next/server/chunks/ssr/10ge_next_dist_0~ti7jc._.js +0 -3
- package/.next/server/chunks/ssr/10ge_next_dist_10.ihny._.js +0 -3
- package/.next/server/chunks/ssr/10ge_next_dist_client_components_0--gzcy._.js +0 -3
- package/.next/server/chunks/ssr/10ge_next_dist_client_components_0eil7-a._.js +0 -33
- package/.next/server/chunks/ssr/10ge_next_dist_client_components_builtin_forbidden_0nzsnb2.js +0 -3
- package/.next/server/chunks/ssr/10ge_next_dist_client_components_builtin_global-error_125sopd.js +0 -3
- package/.next/server/chunks/ssr/10ge_next_dist_client_components_builtin_unauthorized_0z93cpe.js +0 -3
- package/.next/server/chunks/ssr/10ge_next_dist_compiled_0g45ze2._.js +0 -3
- package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_080g02v.js +0 -4
- package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_08khzah.js +0 -4
- package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_09~o5q0.js +0 -4
- package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_0_rj_f4.js +0 -4
- package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_0c-wmj1.js +0 -4
- package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_0fjd2ua.js +0 -4
- package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_0hpuyf0.js +0 -4
- package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_0knnyic.js +0 -4
- package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_0oi86k6.js +0 -4
- package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_0rmwdra.js +0 -4
- package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_0zgisbd.js +0 -4
- package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_11pz1fw.js +0 -4
- package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_12reczc.js +0 -4
- package/.next/server/chunks/ssr/119e_lucide-react_dist_esm_icons_0636jyq._.js +0 -3
- package/.next/server/chunks/ssr/[externals]__0of4r_r._.js +0 -3
- package/.next/server/chunks/ssr/[externals]__0z1ffhu._.js +0 -3
- package/.next/server/chunks/ssr/[externals]_child_process_0pwkpv9._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0-0j_z3._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0.8y0n9._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0.uoh7q._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__01ws4-7._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__024-5kd._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__02ipahf._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__03.14vw._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__03swpls._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__04xn50b._.js +0 -30
- package/.next/server/chunks/ssr/[root-of-the-server]__05452ke._.js +0 -30
- package/.next/server/chunks/ssr/[root-of-the-server]__06o5v8i._.js +0 -30
- package/.next/server/chunks/ssr/[root-of-the-server]__06sm5cw._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__09m32ch._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0_0kxz4._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0adx8p4._.js +0 -30
- package/.next/server/chunks/ssr/[root-of-the-server]__0bk3s4l._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0d5p5d.._.js +0 -30
- package/.next/server/chunks/ssr/[root-of-the-server]__0d7u1lw._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0fg8.hp._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0gsj3~.._.js +0 -30
- package/.next/server/chunks/ssr/[root-of-the-server]__0i6glcp._.js +0 -30
- package/.next/server/chunks/ssr/[root-of-the-server]__0ibsor_._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0j5~a_o._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0jgbj6l._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0jux8~h._.js +0 -33
- package/.next/server/chunks/ssr/[root-of-the-server]__0l~dc3x._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0n32nv5._.js +0 -30
- package/.next/server/chunks/ssr/[root-of-the-server]__0n8qufu._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0ndt9h3._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0p~u4y6._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0q.du4s._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0rs7pkn._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0sysz2q._.js +0 -47
- package/.next/server/chunks/ssr/[root-of-the-server]__0t25~v8._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0ti70do._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0uevudp._.js +0 -30
- package/.next/server/chunks/ssr/[root-of-the-server]__0v0dk_o._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0vpgotk._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0wwqzmm._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0xt3-qb._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0y-lkvf._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0zvf.ro._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__11m7m-q._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__1223b0_._.js +0 -30
- package/.next/server/chunks/ssr/[root-of-the-server]__12f810l._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__13-by9r._.js +0 -33
- package/.next/server/chunks/ssr/[root-of-the-server]__13-egel._.js +0 -3
- package/.next/server/chunks/ssr/[turbopack]_runtime.js +0 -903
- package/.next/server/chunks/ssr/tower_0-nwtka._.js +0 -3
- package/.next/server/chunks/ssr/tower_0-omr_b._.js +0 -30
- package/.next/server/chunks/ssr/tower_01szasw._.js +0 -3
- package/.next/server/chunks/ssr/tower_035l~qv._.js +0 -3
- package/.next/server/chunks/ssr/tower_03jazku._.js +0 -3
- package/.next/server/chunks/ssr/tower_0_i~57x._.js +0 -3
- package/.next/server/chunks/ssr/tower_0agzi_m._.js +0 -3
- package/.next/server/chunks/ssr/tower_0d.car1._.js +0 -30
- package/.next/server/chunks/ssr/tower_0egtw-7._.js +0 -30
- package/.next/server/chunks/ssr/tower_0h3r32m._.js +0 -30
- package/.next/server/chunks/ssr/tower_0kl_bfy._.js +0 -7
- package/.next/server/chunks/ssr/tower_0le1h0h._.js +0 -3
- package/.next/server/chunks/ssr/tower_0mz4ut.._.js +0 -3
- package/.next/server/chunks/ssr/tower_0nuj.0p._.js +0 -39
- package/.next/server/chunks/ssr/tower_0pcqezm._.js +0 -3
- package/.next/server/chunks/ssr/tower_0r7uuim._.js +0 -30
- package/.next/server/chunks/ssr/tower_0rdk81e._.js +0 -3
- package/.next/server/chunks/ssr/tower_0sojjnu._.js +0 -3
- package/.next/server/chunks/ssr/tower_0tc~.xl._.js +0 -30
- package/.next/server/chunks/ssr/tower_0tuq2iz._.js +0 -30
- package/.next/server/chunks/ssr/tower_0wvk~r.._.js +0 -3
- package/.next/server/chunks/ssr/tower_0xg_zeq._.js +0 -3
- package/.next/server/chunks/ssr/tower_0~oir9k._.js +0 -3
- package/.next/server/chunks/ssr/tower_10p15te._.js +0 -3
- package/.next/server/chunks/ssr/tower_10t13p4._.js +0 -6
- package/.next/server/chunks/ssr/tower_117pzh8._.js +0 -3
- package/.next/server/chunks/ssr/tower_11q5_.m._.js +0 -3
- package/.next/server/chunks/ssr/tower_138qlx5._.js +0 -3
- package/.next/server/chunks/ssr/tower__next-internal_server_app__global-error_page_actions_13t5~qk.js +0 -3
- package/.next/server/chunks/ssr/tower_src_0puzd-6._.js +0 -3
- package/.next/server/chunks/ssr/tower_src_actions_agent-actions_ts_0j.e1tn._.js +0 -4
- package/.next/server/chunks/ssr/tower_src_actions_file-actions_ts_0424lna._.js +0 -3
- package/.next/server/chunks/ssr/tower_src_app_missions_missions-client_tsx_0a9vjyr._.js +0 -3
- package/.next/server/chunks/ssr/tower_src_app_onboarding_page_tsx_0_3krz1._.js +0 -3
- package/.next/server/chunks/ssr/tower_src_app_settings_page_tsx_0vo5e-o._.js +0 -3
- package/.next/server/chunks/ssr/tower_src_app_workspaces_[workspaceId]_assets_assets-page-client_tsx_0zfgzhi._.js +0 -3
- package/.next/server/chunks/ssr/tower_src_app_workspaces_[workspaceId]_board-page-client_tsx_0kjp1u0._.js +0 -7
- package/.next/server/chunks/ssr/tower_src_components_ui_select_tsx_10ajx~2._.js +0 -3
- package/.next/server/chunks/ssr/tower_src_lib_01420_4._.js +0 -3
- package/.next/server/chunks/ssr/tower_src_lib_0i-zjpa._.js +0 -3
- package/.next/server/chunks/ssr/tower_src_lib_0ja~kdb._.js +0 -3
- package/.next/server/chunks/ssr/tower_src_lib_0obw2r8._.js +0 -3
- package/.next/server/chunks/ssr/tower_src_lib_0rgfsuf._.js +0 -3
- package/.next/server/chunks/ssr/tower_src_lib_constants_ts_0o218_c._.js +0 -3
- package/.next/server/chunks/tower_03g~ktv._.js +0 -7
- package/.next/server/chunks/tower_05du07.._.js +0 -10
- package/.next/server/chunks/tower_0a-x6m.._.js +0 -3
- package/.next/server/chunks/tower__next-internal_server_app_api_adapters_test_route_actions_13jw~9b.js +0 -3
- package/.next/server/chunks/tower__next-internal_server_app_api_browse-fs_route_actions_0k5p2xy.js +0 -3
- package/.next/server/chunks/tower__next-internal_server_app_api_git_route_actions_0rvpodb.js +0 -3
- package/.next/server/chunks/tower__next-internal_server_app_api_internal_assets_reveal_route_actions_0idwm6j.js +0 -3
- package/.next/server/chunks/tower__next-internal_server_app_api_internal_assistant_route_actions_0rdz1d..js +0 -3
- package/.next/server/chunks/tower__next-internal_server_app_api_internal_hooks_install_route_actions_06dxleu.js +0 -3
- package/.next/server/chunks/tower__next-internal_server_app_api_internal_hooks_session_route_actions_0wlv4lf.js +0 -3
- package/.next/server/chunks/tower__next-internal_server_app_api_internal_hooks_stop_route_actions_101_oub.js +0 -3
- package/.next/server/chunks/tower__next-internal_server_app_api_internal_hooks_upload_route_actions_0439qz_.js +0 -3
- package/.next/server/chunks/tower__next-internal_server_app_api_tasks_[taskId]_diff_route_actions_0nthc84.js +0 -3
- package/.next/server/chunks/tower__next-internal_server_app_api_tasks_[taskId]_merge_route_actions_0g.x0nb.js +0 -3
- package/.next/server/chunks/tower__next-internal_server_app_apple-icon_png_route_actions_0bni-sb.js +0 -3
- package/.next/server/chunks/tower__next-internal_server_app_favicon_ico_route_actions_0kw~xj2.js +0 -3
- package/.next/server/chunks/tower__next-internal_server_app_icon0_svg_route_actions_0nww9-e.js +0 -3
- package/.next/server/chunks/tower__next-internal_server_app_icon1_png_route_actions_09h.ywu.js +0 -3
- package/.next/server/chunks/tower__next-internal_server_app_manifest_json_route_actions_080ob~r.js +0 -3
- package/.next/server/chunks/tower_src_0..vg-t._.js +0 -3
- package/.next/server/chunks/tower_src_05rqj.1._.js +0 -3
- package/.next/server/chunks/tower_src_lib_0uok6j3._.js +0 -3
- package/.next/server/chunks/tower_src_lib_0w8qt4s._.js +0 -3
- package/.next/server/chunks/tower_src_lib_constants_ts_0cxd4.p._.js +0 -3
- package/.next/server/edge/chunks/0y9m_next_dist_esm_build_templates_edge-wrapper_0cx_eo..js +0 -3
- package/.next/server/edge/chunks/tower_0wvfs38._.js +0 -3
- package/.next/server/functions-config-manifest.json +0 -22
- package/.next/server/instrumentation/middleware-manifest.json +0 -12
- package/.next/server/instrumentation.js +0 -4
- package/.next/server/instrumentation.js.nft.json +0 -1
- package/.next/server/interception-route-rewrite-manifest.js +0 -1
- package/.next/server/middleware-build-manifest.js +0 -22
- package/.next/server/middleware-manifest.json +0 -6
- package/.next/server/next-font-manifest.js +0 -1
- package/.next/server/next-font-manifest.json +0 -55
- package/.next/server/pages/404.html +0 -1
- package/.next/server/pages/500.html +0 -1
- package/.next/server/pages-manifest.json +0 -4
- package/.next/server/prefetch-hints.json +0 -1
- package/.next/server/server-reference-manifest.js +0 -1
- package/.next/server/server-reference-manifest.json +0 -2778
- package/.next/static/chunks/0.uav~g39w7rr.js +0 -1
- package/.next/static/chunks/00z-g3x93ngvn.js +0 -1
- package/.next/static/chunks/02f8le_y~6gnd.js +0 -1
- package/.next/static/chunks/03e.4ymu.j5wl.js +0 -1
- package/.next/static/chunks/03~yq9q893hmn.js +0 -1
- package/.next/static/chunks/05-b9qqm3av9~.js +0 -1
- package/.next/static/chunks/05~v02mkan5z..js +0 -1
- package/.next/static/chunks/06-mw~zl.diaf.js +0 -1
- package/.next/static/chunks/06fsp5nfga486.js +0 -1
- package/.next/static/chunks/07~c.vc82_c1-.js +0 -1
- package/.next/static/chunks/0abtpeymj-58i.js +0 -1
- package/.next/static/chunks/0amhu3hs4zxxw.js +0 -1
- package/.next/static/chunks/0drgc-oztq6o-.css +0 -1
- package/.next/static/chunks/0eaa2lmymh2fx.js +0 -1
- package/.next/static/chunks/0j9qriqni_r1..js +0 -2
- package/.next/static/chunks/0k.u8sxy~e469.js +0 -4
- package/.next/static/chunks/0k_9.73yz~q10.js +0 -1
- package/.next/static/chunks/0ltsz~s~e4wzu.js +0 -1
- package/.next/static/chunks/0lvd52mjiit6s.js +0 -1
- package/.next/static/chunks/0mf7~j7tvqr46.js +0 -1
- package/.next/static/chunks/0mq0uqbbbb1~2.js +0 -1
- package/.next/static/chunks/0neevhl_o1ozu.css +0 -2
- package/.next/static/chunks/0omj~p3uxkic-.js +0 -1
- package/.next/static/chunks/0qe.8bmmwuucu.js +0 -5
- package/.next/static/chunks/0qpq1~6v-eql7.js +0 -1
- package/.next/static/chunks/0t-gr6j-c65qb.js +0 -1
- package/.next/static/chunks/0tcl81ybuob5i.js +0 -1
- package/.next/static/chunks/0uqimvsni_op~.js +0 -1
- package/.next/static/chunks/0uxf0jd91e-0r.js +0 -1
- package/.next/static/chunks/0vn2y~4w7u3ui.js +0 -83
- package/.next/static/chunks/0wt3kws~_yr8z.js +0 -1
- package/.next/static/chunks/0z2bzovqhl2f5.js +0 -1
- package/.next/static/chunks/0z7bwntvfhxzi.js +0 -12
- package/.next/static/chunks/10n23t.1hpb-1.js +0 -1
- package/.next/static/chunks/14xzmrt5ly6gq.js +0 -31
- package/.next/static/chunks/151wr~6x8aclx.js +0 -1
- package/.next/static/chunks/15gjy.xhhriy8.js +0 -5
- package/.next/static/chunks/16ft9mdv3zwse.js +0 -1
- package/.next/static/chunks/16w-ap~msrwpj.js +0 -1
- package/.next/static/chunks/17oc2l.ekcs8b.css +0 -1
- package/.next/static/chunks/turbopack-0wjmrsi.z32s0.js +0 -1
- package/.next/static/dwsGxWRLV_FPRJyEkai5s/_buildManifest.js +0 -11
- package/.next/static/dwsGxWRLV_FPRJyEkai5s/_clientMiddlewareManifest.js +0 -1
- package/.next/static/dwsGxWRLV_FPRJyEkai5s/_ssgManifest.js +0 -1
- package/.next/static/media/4fa387ec64143e14-s.0q3udbd2bu5yp.woff2 +0 -0
- package/.next/static/media/7178b3e590c64307-s.11.cyxs5p-0z~.woff2 +0 -0
- package/.next/static/media/797e433ab948586e-s.p.0.q-h669a_dqa.woff2 +0 -0
- package/.next/static/media/8a480f0b521d4e75-s.06d3mdzz5bre_.woff2 +0 -0
- package/.next/static/media/apple-icon.16aocl-s-v2qz.png +0 -0
- package/.next/static/media/bbc41e54d2fcbd21-s.0gw~uztddq1df.woff2 +0 -0
- package/.next/static/media/caa3a2e1cccd8315-s.p.16t1db8_9y2o~.woff2 +0 -0
- package/.next/static/media/favicon.0y2d6j9cou~8p.ico +0 -0
- package/.next/static/media/icon0.0a6mkq6meyird.svg +0 -1
- package/.next/static/media/icon1.04ux133882seb.png +0 -0
- package/.next/trace +0 -2
- package/.next/trace-build +0 -1
- package/.next/turbopack +0 -0
- package/.next/types/routes.d.ts +0 -103
- package/.next/types/validator.ts +0 -349
- /package/{.next/server/app/apple-icon.png.body → src/app/apple-icon.png} +0 -0
- /package/{.next/server/app/favicon.ico.body → src/app/favicon.ico} +0 -0
- /package/{.next/server/app/icon0.svg.body → src/app/icon0.svg} +0 -0
- /package/{.next/server/app/icon1.png.body → src/app/icon1.png} +0 -0
- /package/{.next/server/app/manifest.json.body → src/app/manifest.json} +0 -0
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
module.exports=[477714,(e,t,r)=>{t.exports=e.x("@prisma/client-44bae9bb3052ac14",()=>require("@prisma/client-44bae9bb3052ac14"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},874533,(e,t,r)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},985726,e=>{"use strict";var t=e.i(298600);let r=["localhost","127.0.0.1","[::1]"],n=new Set(["127.0.0.1","::1","::ffff:127.0.0.1"]),s=/^c[a-z0-9]{20,30}$/;e.s(["requireLocalhost",0,function(e){let s=e.headers.get("x-forwarded-for");if(s&&!s.split(",").map(e=>e.trim()).every(e=>n.has(e)))return t.NextResponse.json({error:"Forbidden"},{status:403});let a=e.headers.get("host")??"";return r.some(e=>a.startsWith(e))?null:t.NextResponse.json({error:"Forbidden"},{status:403})},"validateProjectId",0,function(e){return s.test(e)?null:t.NextResponse.json({error:"Invalid projectId format"},{status:400})},"validateTaskId",0,function(e){return s.test(e)?null:t.NextResponse.json({error:"Invalid taskId format"},{status:400})}])},647085,e=>{"use strict";var t=e.i(477714);let r=globalThis.prisma??new t.PrismaClient({log:[]});process.on("SIGTERM",()=>{r.$disconnect().catch(()=>{})}),process.on("SIGINT",()=>{r.$disconnect().catch(()=>{})}),e.s(["db",0,r])},359703,e=>{"use strict";var t=e.i(902157),r=e.i(874533),n=e.i(750227);function s(e=process.platform){return"win32"===e}function a(e){let t=e.replace(/\r\n|\r|\n/g," ");if(!t.length)return'""';let r=t.replace(/"/g,'""');return/[\s"&<>|^()]/.test(r)?`"${r}"`:r}let o=["CLAUDECODE","CLAUDE_CODE_ENTRYPOINT","CLAUDE_CODE_SESSION","CLAUDE_CODE_PARENT_SESSION"];async function i(e,t={}){let r=t.cwd??process.cwd(),a=t.env??process.env,o=t.platform??process.platform;if(e.includes("/")||e.includes("\\")){let t=n.default.isAbsolute(e)?e:n.default.resolve(r,e);return await p(t,o)?t:null}let l=a.PATH??a.Path??"",u=s(o)?";":":",c=l.split(u).filter(Boolean),d=s(o)?(a.PATHEXT??".EXE;.CMD;.BAT;.COM").split(";").filter(Boolean):[""],m=s(o)&&n.default.extname(e).length>0;for(let t of c)for(let r of s(o)?m?[n.default.join(t,e)]:d.map(r=>n.default.join(t,`${e}${r}`)):[n.default.join(t,e)])if(await p(r,o))return r;return null}let l=e=>(0,r.execSync)(e,{encoding:"utf-8",timeout:5e3});function u(e,t=process.platform,r=l){if(n.default.extname(e)||e.includes("/")||e.includes("\\")||!s(t))return e;try{let t=r(`where ${e}`).trim().split("\n").map(e=>e.trim()).filter(Boolean),n=t.find(e=>/\.(cmd|bat|exe)$/i.test(e));if(n)return n;if(t.length>0)return t[0]}catch{}return e}async function c(e,t,r={}){let n=r.env??process.env,s=r.platform??process.platform;return d(await i(e,r)??e,t,n,s)}function d(e,t,r,o){if(!s(o))return{command:e,args:t};let i=n.default.extname(e).toLowerCase();return".cmd"===i||".bat"===i||".com"===i?{command:r.ComSpec||"cmd.exe",args:["/d","/s","/c",[a(e),...t.map(a)].join(" ")]}:{command:e,args:t}}async function p(e,r=process.platform){try{return await t.promises.access(e,s(r)?t.constants.F_OK:t.constants.X_OK),!0}catch{return!1}}async function m(e=process.platform){return s(e)?f():h()}async function h(){try{let e=await t.promises.readFile("/etc/shells","utf-8"),r=[],s=new Map;for(let t of e.split("\n")){let e=t.replace(/#.*/,"").trim();if(!e||!e.startsWith("/")||!await p(e))continue;let a=n.default.basename(e),o=s.get(a)??0;s.set(a,o+1),o>0&&(a=`${a} (${o+1})`),r.push({name:a,path:e})}return r}catch{let e=[];for(let t of["/bin/zsh","/bin/bash","/bin/sh"])await p(t)&&e.push({name:n.default.basename(t),path:t});return e}}async function f(){let e=[],t=[],r=await i("git",{platform:"win32"});if(r){let e=n.default.resolve(n.default.dirname(r),"..","..");t.push(n.default.join(e,"bin","bash.exe"),n.default.join(e,"usr","bin","bash.exe"))}for(let e of[process.env.ProgramW6432,process.env.ProgramFiles,process.env["ProgramFiles(x86)"],process.env.LocalAppData?n.default.join(process.env.LocalAppData,"Programs"):null].filter(Boolean))t.push(n.default.join(e,"Git","bin","bash.exe"),n.default.join(e,"Git","usr","bin","bash.exe"));let s=process.env.USERPROFILE??"";for(let r of(s&&t.push(n.default.join(s,"scoop","apps","git","current","bin","bash.exe")),process.env.CLAUDE_CODE_GIT_BASH_PATH&&t.unshift(process.env.CLAUDE_CODE_GIT_BASH_PATH),t))if(await p(r,"win32")){e.push({name:"Git Bash",path:r});break}let a=await i("pwsh",{platform:"win32"});a&&e.push({name:"PowerShell",path:a});let o=process.env.windir??"C:\\WINDOWS",l=n.default.join(o,"System32","WindowsPowerShell","v1.0","powershell.exe");await p(l,"win32")&&e.push({name:"Windows PowerShell",path:l});let u=process.env.ComSpec??n.default.join(o,"System32","cmd.exe");return await p(u,"win32")&&e.push({name:"Command Prompt",path:u}),e}let g=[{name:"Terminal",bundleName:"Terminal"},{name:"iTerm2",bundleName:"iTerm"},{name:"Warp",bundleName:"Warp"},{name:"Alacritty",bundleName:"Alacritty"},{name:"WezTerm",bundleName:"WezTerm"},{name:"kitty",bundleName:"kitty"},{name:"Hyper",bundleName:"Hyper"}];async function v(e=process.platform){if("darwin"===e){let t=[];for(let r of g)await p(`/Applications/${r.bundleName}.app`,e)&&t.push({name:r.name,value:r.bundleName});return t}if(s(e)){let t=[],r=await i("wt",{platform:e});return r&&t.push({name:"Windows Terminal",value:r}),t}return[]}e.s(["detectShells",0,m,"detectTerminalApps",0,v,"ensurePathInEnv",0,function(e,t=process.platform){let r=s(t)?"Path":"PATH";return(e.PATH??e.Path??"").length>0?e:{...e,[r]:function(e=process.platform){return s(e)?"C:\\Windows\\System32;C:\\Windows;C:\\Windows\\System32\\Wbem":"/usr/local/bin:/opt/homebrew/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin"}(t)}},"resolveCommandPath",0,i,"resolveCommandPathSync",0,u,"resolveSpawnTarget",0,c,"resolveSpawnTargetSync",0,function(e,t,r=process.platform,n){return d(u(e,r,n),t,process.env,r)},"stripClaudeNestingEnv",0,function(e){let t={...e};for(let e of o)delete t[e];return t}])},47533,e=>{"use strict";var t=e.i(902157),r=e.i(660526),n=e.i(750227),s=e.i(359703);let a=["sonnet","opus","haiku","claude-sonnet-4-6","claude-opus-4-6","claude-haiku-4-5-20251001"];e.s(["ClaudeCliAdapter",0,class{buildSpawnArgs(e){let t=[];e.profileArgs?.length&&t.push(...e.profileArgs),e.resumeSessionId?t.push("--resume",e.resumeSessionId):e.continueLatest?t.push("--continue"):e.prompt&&t.push(e.prompt);let r={...e.profileEnvVars??{},...e.envOverrides??{}};return{command:this.resolveCommand(),args:t,env:r}}buildEnvOverrides(e){let t={TOWER_TASK_ID:e.taskId,TOWER_TASK_TITLE:e.taskTitle,TOWER_STARTED_AT:new Date().toISOString(),TOWER_API_URL:e.apiUrl};return e.callbackUrl&&(t.CALLBACK_URL=e.callbackUrl),t}async installHooks(e){let t=this.readSettings(),r=t.hooks??{},s=this.getPostToolUseArray(t);if(this.findTowerHookIndex(s)>=0)return;let a=n.join(process.cwd(),"scripts","post-tool-hook.js"),o={hooks:[{command:`node "${a}"`,timeout:10,type:"command"}],matcher:"Write|Edit|MultiEdit"};t.hooks={...r,PostToolUse:[...s,o]},this.writeSettings(t)}async uninstallHooks(){let e=this.readSettings(),t=e.hooks??{},r=this.getPostToolUseArray(e).filter(e=>!e.hooks?.some(e=>e.command?.includes("post-tool-hook.js")));e.hooks={...t,PostToolUse:r},this.writeSettings(e)}async isHooksInstalled(){let e=this.readSettings(),t=this.getPostToolUseArray(e);return this.findTowerHookIndex(t)>=0}async isAvailable(){return null!==await this.getVersion()}async getVersion(){try{let{execFile:t}=await e.A(144264),{promisify:r}=await e.A(534777),n=r(t),s=this.resolveCommand(),{stdout:a}=await n(s,["--version"],{timeout:5e3});return a.trim()||null}catch{return null}}async getModels(){return a}getConfigDir(){return n.join(r.homedir(),".claude")}getSettingsPath(){return n.join(this.getConfigDir(),"settings.json")}getSessionsDir(){return n.join(this.getConfigDir(),"projects")}resolveCommand(){return process.env.CLAUDE_CODE_PATH?process.env.CLAUDE_CODE_PATH:(0,s.resolveCommandPathSync)("claude")}readSettings(){try{return JSON.parse(t.readFileSync(this.getSettingsPath(),"utf-8"))}catch{return{}}}writeSettings(e){let r=this.getConfigDir();t.existsSync(r)||t.mkdirSync(r,{recursive:!0}),t.writeFileSync(this.getSettingsPath(),JSON.stringify(e,null,2),"utf-8")}getPostToolUseArray(e){let t=e.hooks;if(!t)return[];let r=t.PostToolUse;return Array.isArray(r)?r:[]}findTowerHookIndex(e){return e.findIndex(e=>e.hooks?.some(e=>e.command?.includes("post-tool-hook.js")))}}])},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},278428,e=>{"use strict";let t;var r=e.i(750227),n=e.i(660526),s=e.i(902157);function a(){return t||(t=(0,r.join)((0,n.homedir)(),".tower"),(0,s.existsSync)(t)||(0,s.mkdirSync)(t,{recursive:!0})),t}e.s(["getAssistantDir",0,function(){let e=(0,r.join)(a(),"assistant");return(0,s.existsSync)(e)||(0,s.mkdirSync)(e,{recursive:!0}),e},"getStorageDir",0,function(){let e=(0,r.join)(a(),"storage");return(0,s.existsSync)(e)||(0,s.mkdirSync)(e,{recursive:!0}),e}])},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},142300,e=>{"use strict";var t=e.i(666680),r=e.i(902157),n=e.i(750227);let s=(0,e.i(278428).getStorageDir)();function a(e){if(!e.startsWith(s+n.sep))throw Error("Path traversal detected")}let o=new Set(["image","screenshot","img","photo","picture","clipboard","paste","untitled"]);e.s(["buildCacheFilename",0,function(e,r){let s=n.basename(e,n.extname(e)),a=t.randomUUID().replace(/-/g,"").slice(0,8),i=s.toLowerCase();if(!s||o.has(i)||/^screenshot[\s_\-]/i.test(s))return`tower_image-${a}${r}`;let l=s.replace(/[^\p{L}\p{N}]/gu,"_").replace(/_+/g,"_").replace(/^_+|_+$/g,"");return`${l||"file"}-${a}${r}`},"ensureAssetsDir",0,function(e){let t,o=(a(t=n.join(s,"assets",e)),t);return r.mkdirSync(o,{recursive:!0}),o},"getAssistantCacheDir",0,function(e="images"){let t=new Date,o=`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}`,i=n.join(s,"cache","assistant",o,e);return a(i),r.mkdirSync(i,{recursive:!0}),i},"getAssistantCacheRoot",0,function(){let e=n.join(s,"cache","assistant");return a(e),e}])},552626,e=>{"use strict";var t=e.i(958699),r=e.i(953193),n=e.i(314093),s=e.i(159515),a=e.i(952192),o=e.i(939747),i=e.i(348399),l=e.i(887426),u=e.i(626524),c=e.i(479201),d=e.i(336951),p=e.i(546302),m=e.i(431732),h=e.i(899284),f=e.i(104600),g=e.i(193695);e.i(792325);var v=e.i(27732),w=e.i(985726),y=e.i(902157),x=e.i(750227);let _=/^\d{4}-\d{2}\/(images|files)\/[^/]+\.(jpg|jpeg|png|gif|webp)$/i;var b=e.i(142300),C=e.i(47533),S=e.i(647085);let A=new C.ClaudeCliAdapter;async function T(t){let r,n=(0,w.requireLocalhost)(t);if(n)return n;try{r=await t.json()}catch{return new Response(JSON.stringify({error:"Invalid JSON body"}),{status:400,headers:{"Content-Type":"application/json"}})}let s=/^\d{4}-\d{2}\/(images|files)\/[^/]+\.(jpg|jpeg|png|gif|webp)$/i,a=Array.isArray(r.imageFilenames)?r.imageFilenames.filter(e=>"string"==typeof e&&s.test(e)):[];if(!r.message?.trim()&&0===a.length)return new Response(JSON.stringify({error:"Message or images required"}),{status:400,headers:{"Content-Type":"application/json"}});let o=new ReadableStream({async start(t){let n=new TextEncoder;function s(e){t.enqueue(n.encode(`data: ${JSON.stringify(e)}
|
|
2
|
-
|
|
3
|
-
`))}try{let{query:t}=await e.A(310068),n=A.resolveCommand(),{ensureTowerDir:o}=await e.A(918790),i=o(),l=a.length>0,u={tools:l?["Read"]:[],allowedTools:l?["mcp__tower__*","Read"]:["mcp__tower__*"],includePartialMessages:!0,cwd:i,pathToClaudeCodeExecutable:n};r.sessionId&&(u.resume=r.sessionId);let c="";if(!r.sessionId){let e=await S.db.systemConfig.findUnique({where:{key:"onboarding.username"}});try{let t=e?JSON.parse(e.value):null;"string"==typeof t&&t.length>0&&(c=`[Context: The user's name is ${t}.]
|
|
4
|
-
|
|
5
|
-
`)}catch{}}let d=`${c}/tower ${r.message}`,p=l?function(e,t,r){if(0===t.length)return e;let n=t.slice(0,10),s=x.resolve(r),a=n.filter(e=>_.test(e)).map(e=>x.resolve(r,e)).filter(e=>!!e.startsWith(s+x.sep)&&y.existsSync(e));if(0===a.length)return e;let o=a.map(e=>`- ${e}`).join("\n");return`${e}
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
The user has attached the following image(s). Use the Read tool to view them:
|
|
9
|
-
${o}`}(d,a,(0,b.getAssistantCacheRoot)()):d;for await(let e of t({prompt:p,options:u}))switch(e.type){case"assistant":{let t=e.message.content.filter(e=>"text"===e.type).map(e=>e.text??"").join(""),r=e.message.content.filter(e=>"tool_use"===e.type);for(let n of(t&&s({type:"text",content:t,sessionId:e.session_id}),r))s({type:"tool_use",content:n.name??"unknown",toolInput:n.input,sessionId:e.session_id});break}case"result":e.subtype?.includes("error")&&s({type:"error",content:e.error??"Execution error"}),s({type:"done",sessionId:e.session_id});break;case"system":"tool_result"===e.subtype&&s({type:"tool_result",content:e.tool_name??"tool",toolOutput:e.content??""});break;case"stream_event":{let t=e.event;"content_block_delta"===t.type&&t.delta?.type==="text_delta"&&t.delta.text?s({type:"text_delta",content:t.delta.text,sessionId:e.session_id}):"content_block_start"===t.type&&t.content_block?.type==="tool_use"&&s({type:"tool_start",content:t.content_block.name??"tool",sessionId:e.session_id})}}}catch(e){s({type:"error",content:"Assistant encountered an error. Please try again."})}finally{s({type:"done"}),t.close()}}});return new Response(o,{headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}e.s(["POST",0,T,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],284293);var R=e.i(284293);let E=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/internal/assistant/chat/route",pathname:"/api/internal/assistant/chat",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/tower/src/app/api/internal/assistant/chat/route.ts",nextConfigOutput:"",userland:R}),{workAsyncStorage:k,workUnitAsyncStorage:P,serverHooks:j}=E;async function I(e,t,n){n.requestMeta&&(0,s.setRequestMeta)(e,n.requestMeta),E.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/internal/assistant/chat/route";w=w.replace(/\/index$/,"")||"/";let y=await E.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:x,params:_,nextConfig:b,parsedUrl:C,isDraftMode:S,prerenderManifest:A,routerServerContext:T,isOnDemandRevalidate:R,revalidateOnlyGenerated:k,resolvedPathname:P,clientReferenceManifest:j,serverActionsManifest:I}=y,N=(0,i.normalizeAppPath)(w),O=!!(A.dynamicRoutes[N]||A.routes[P]),D=async()=>((null==T?void 0:T.render404)?await T.render404(e,t,C,!1):t.end("This page could not be found"),null);if(O&&!S){let e=!!A.routes[P],t=A.dynamicRoutes[N];if(t&&!1===t.fallback&&!e){if(b.adapterPath)return await D();throw new g.NoFallbackError}}let U=null;!O||E.isDev||S||(U="/index"===(U=P)?"/":U);let $=!0===E.isDev||!O,q=O&&!$;I&&j&&(0,o.setManifestsSingleton)({page:w,clientReferenceManifest:j,serverActionsManifest:I});let H=e.method||"GET",L=(0,a.getTracer)(),W=L.getActiveScopeSpan(),M=!!(null==T?void 0:T.isWrappedByNextServer),F=!!(0,s.getRequestMeta)(e,"minimalMode"),B=(0,s.getRequestMeta)(e,"incrementalCache")||await E.getIncrementalCache(e,b,A,F);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let K={params:_,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!b.experimental.authInterrupts},cacheComponents:!!b.cacheComponents,supportsDynamicResponse:$,incrementalCache:B,cacheLifeProfiles:b.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,s)=>E.onRequestError(e,t,n,s,T)},sharedContext:{buildId:x}},G=new l.NodeNextRequest(e),J=new l.NodeNextResponse(t),V=u.NextRequestAdapter.fromNodeNextRequest(G,(0,u.signalFromNodeResponse)(t));try{let s,o=async e=>E.handle(V,K).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=L.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${H} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),s&&s!==e&&(s.setAttribute("http.route",n),s.updateName(t))}else e.updateName(`${H} ${w}`)}),i=async s=>{var a,i;let l=async({previousCacheEntry:r})=>{try{if(!F&&R&&k&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await o(s);e.fetchMetrics=K.renderOpts.fetchMetrics;let i=K.renderOpts.pendingWaitUntil;i&&n.waitUntil&&(n.waitUntil(i),i=void 0);let l=K.renderOpts.collectedTags;if(!O)return await (0,p.sendResponse)(G,J,a,K.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(a.headers);l&&(t[f.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==K.renderOpts.collectedRevalidate&&!(K.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&K.renderOpts.collectedRevalidate,n=void 0===K.renderOpts.collectedExpire||K.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:K.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await E.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:q,isOnDemandRevalidate:R})},!1,T),t}},u=await E.handleResponse({req:e,nextConfig:b,cacheKey:U,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:R,revalidateOnlyGenerated:k,responseGenerator:l,waitUntil:n.waitUntil,isMinimalMode:F});if(!O)return null;if((null==u||null==(a=u.value)?void 0:a.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(i=u.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});F||t.setHeader("x-nextjs-cache",R?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,m.fromNodeOutgoingHttpHeaders)(u.value.headers);return F&&O||c.delete(f.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,h.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(G,J,new Response(u.value.body,{headers:c,status:u.value.status||200})),null};M&&W?await i(W):(s=L.getActiveScopeSpan(),await L.withPropagatedContext(e.headers,()=>L.trace(c.BaseServerSpan.handleRequest,{spanName:`${H} ${w}`,kind:a.SpanKind.SERVER,attributes:{"http.method":H,"http.target":e.url}},i),void 0,!M))}catch(t){if(t instanceof g.NoFallbackError||await E.onRequestError(e,t,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:q,isOnDemandRevalidate:R})},!1,T),O)throw t;return await (0,p.sendResponse)(G,J,new Response(null,{status:500})),null}}e.s(["handler",0,I,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:k,workUnitAsyncStorage:P})},"routeModule",0,E,"serverHooks",0,j,"workAsyncStorage",0,k,"workUnitAsyncStorage",0,P],552626)},144264,e=>{e.v(t=>Promise.all(["server/chunks/[externals]_child_process_0pwkpv9._.js"].map(t=>e.l(t))).then(()=>t(233405)))},534777,e=>{e.v(t=>Promise.all(["server/chunks/[externals]_util_0wtvqkc._.js"].map(t=>e.l(t))).then(()=>t(224361)))},310068,e=>{e.v(t=>Promise.all(["server/chunks/[externals]__11rejr-._.js","server/chunks/03j-_@anthropic-ai_claude-agent-sdk_sdk_mjs_04597t~._.js"].map(t=>e.l(t))).then(()=>t(357807)))},918790,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__07-am_7._.js"].map(t=>e.l(t))).then(()=>t(464525)))}];
|
|
10
|
-
|
|
11
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__0u..agy._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},985726,e=>{"use strict";var t=e.i(298600);let r=["localhost","127.0.0.1","[::1]"],a=new Set(["127.0.0.1","::1","::ffff:127.0.0.1"]),n=/^c[a-z0-9]{20,30}$/;e.s(["requireLocalhost",0,function(e){let n=e.headers.get("x-forwarded-for");if(n&&!n.split(",").map(e=>e.trim()).every(e=>a.has(e)))return t.NextResponse.json({error:"Forbidden"},{status:403});let s=e.headers.get("host")??"";return r.some(e=>s.startsWith(e))?null:t.NextResponse.json({error:"Forbidden"},{status:403})},"validateProjectId",0,function(e){return n.test(e)?null:t.NextResponse.json({error:"Invalid projectId format"},{status:400})},"validateTaskId",0,function(e){return n.test(e)?null:t.NextResponse.json({error:"Invalid taskId format"},{status:400})}])},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},278428,e=>{"use strict";let t;var r=e.i(750227),a=e.i(660526),n=e.i(902157);function s(){return t||(t=(0,r.join)((0,a.homedir)(),".tower"),(0,n.existsSync)(t)||(0,n.mkdirSync)(t,{recursive:!0})),t}e.s(["getAssistantDir",0,function(){let e=(0,r.join)(s(),"assistant");return(0,n.existsSync)(e)||(0,n.mkdirSync)(e,{recursive:!0}),e},"getStorageDir",0,function(){let e=(0,r.join)(s(),"storage");return(0,n.existsSync)(e)||(0,n.mkdirSync)(e,{recursive:!0}),e}])},685371,e=>{"use strict";var t=e.i(750227);let r=(0,e.i(278428).getStorageDir)();e.s(["MIME_MAP",0,{".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".svg":"image/svg+xml",".pdf":"application/pdf",".txt":"text/plain",".md":"text/markdown",".json":"application/json"},"resolveAssetPath",0,function(e,a){let n=t.resolve(r,"assets",e,a),s=t.resolve(r,"assets")+t.sep;return n.startsWith(s)?{resolved:n,error:null}:{resolved:null,error:"Invalid path"}}])},491867,e=>{"use strict";var t=e.i(958699),r=e.i(953193),a=e.i(314093),n=e.i(159515),s=e.i(952192),i=e.i(939747),o=e.i(348399),l=e.i(887426),d=e.i(626524),u=e.i(479201),p=e.i(336951),c=e.i(546302),x=e.i(431732),h=e.i(899284),f=e.i(104600),v=e.i(193695);e.i(792325);var g=e.i(27732),m=e.i(902157),R=e.i(750227),w=e.i(298600),y=e.i(685371),E=e.i(985726);async function j(e,{params:t}){let r,{projectId:a,filename:n}=await t,s=(0,E.validateProjectId)(a);if(s)return s;let{resolved:i,error:o}=(0,y.resolveAssetPath)(a,n);if(o||!i)return w.NextResponse.json({error:"Invalid path"},{status:400});try{r=await m.promises.readFile(i)}catch(e){if("ENOENT"===e.code)return w.NextResponse.json({error:"Not found"},{status:404});return w.NextResponse.json({error:"Failed to read file"},{status:500})}let l=R.extname(n).toLowerCase(),d=y.MIME_MAP[l]??"application/octet-stream";return new Response(new Uint8Array(r),{status:200,headers:{"Content-Type":d}})}e.s(["GET",0,j],870835);var C=e.i(870835);let A=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/files/assets/[projectId]/[filename]/route",pathname:"/api/files/assets/[projectId]/[filename]",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/tower/src/app/api/files/assets/[projectId]/[filename]/route.ts",nextConfigOutput:"",userland:C}),{workAsyncStorage:N,workUnitAsyncStorage:b,serverHooks:I}=A;async function S(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),A.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let m="/api/files/assets/[projectId]/[filename]/route";m=m.replace(/\/index$/,"")||"/";let R=await A.prepare(e,t,{srcPage:m,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:w,params:y,nextConfig:E,parsedUrl:j,isDraftMode:C,prerenderManifest:N,routerServerContext:b,isOnDemandRevalidate:I,revalidateOnlyGenerated:S,resolvedPathname:P,clientReferenceManifest:T,serverActionsManifest:q}=R,k=(0,o.normalizeAppPath)(m),_=!!(N.dynamicRoutes[k]||N.routes[P]),O=async()=>((null==b?void 0:b.render404)?await b.render404(e,t,j,!1):t.end("This page could not be found"),null);if(_&&!C){let e=!!N.routes[P],t=N.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(E.adapterPath)return await O();throw new v.NoFallbackError}}let M=null;!_||A.isDev||C||(M="/index"===(M=P)?"/":M);let H=!0===A.isDev||!_,U=_&&!H;q&&T&&(0,i.setManifestsSingleton)({page:m,clientReferenceManifest:T,serverActionsManifest:q});let D=e.method||"GET",F=(0,s.getTracer)(),$=F.getActiveScopeSpan(),K=!!(null==b?void 0:b.isWrappedByNextServer),L=!!(0,n.getRequestMeta)(e,"minimalMode"),B=(0,n.getRequestMeta)(e,"incrementalCache")||await A.getIncrementalCache(e,E,N,L);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let W={params:y,previewProps:N.preview,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:H,incrementalCache:B,cacheLifeProfiles:E.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>A.onRequestError(e,t,a,n,b)},sharedContext:{buildId:w}},G=new l.NodeNextRequest(e),V=new l.NodeNextResponse(t),X=d.NextRequestAdapter.fromNodeNextRequest(G,(0,d.signalFromNodeResponse)(t));try{let n,i=async e=>A.handle(X,W).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=F.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${D} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),n&&n!==e&&(n.setAttribute("http.route",a),n.updateName(t))}else e.updateName(`${D} ${m}`)}),o=async n=>{var s,o;let l=async({previousCacheEntry:r})=>{try{if(!L&&I&&S&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(n);e.fetchMetrics=W.renderOpts.fetchMetrics;let o=W.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let l=W.renderOpts.collectedTags;if(!_)return await (0,c.sendResponse)(G,V,s,W.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,x.toNodeOutgoingHttpHeaders)(s.headers);l&&(t[f.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==W.renderOpts.collectedRevalidate&&!(W.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&W.renderOpts.collectedRevalidate,a=void 0===W.renderOpts.collectedExpire||W.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:W.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:m,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:I})},!1,b),t}},d=await A.handleResponse({req:e,nextConfig:E,cacheKey:M,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:N,isRoutePPREnabled:!1,isOnDemandRevalidate:I,revalidateOnlyGenerated:S,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:L});if(!_)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(o=d.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});L||t.setHeader("x-nextjs-cache",I?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),C&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,x.fromNodeOutgoingHttpHeaders)(d.value.headers);return L&&_||u.delete(f.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,h.getCacheControlHeader)(d.cacheControl)),await (0,c.sendResponse)(G,V,new Response(d.value.body,{headers:u,status:d.value.status||200})),null};K&&$?await o($):(n=F.getActiveScopeSpan(),await F.withPropagatedContext(e.headers,()=>F.trace(u.BaseServerSpan.handleRequest,{spanName:`${D} ${m}`,kind:s.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},o),void 0,!K))}catch(t){if(t instanceof v.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:I})},!1,b),_)throw t;return await (0,c.sendResponse)(G,V,new Response(null,{status:500})),null}}e.s(["handler",0,S,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:N,workUnitAsyncStorage:b})},"routeModule",0,A,"serverHooks",0,I,"workAsyncStorage",0,N,"workUnitAsyncStorage",0,b],491867)}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__0umzekq._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[581423,(e,t,r)=>{function s(e,t,r,s){return Math.round(e/r)+" "+s+(t>=1.5*r?"s":"")}t.exports=function(e,t){t=t||{};var r,n,a,i,o=typeof e;if("string"===o&&e.length>0){var u=e;if(!((u=String(u)).length>100)){var l=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(u);if(l){var c=parseFloat(l[1]);switch((l[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*c;case"weeks":case"week":case"w":return 6048e5*c;case"days":case"day":case"d":return 864e5*c;case"hours":case"hour":case"hrs":case"hr":case"h":return 36e5*c;case"minutes":case"minute":case"mins":case"min":case"m":return 6e4*c;case"seconds":case"second":case"secs":case"sec":case"s":return 1e3*c;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return c;default:break}}}return}if("number"===o&&isFinite(e)){return t.long?(n=Math.abs(r=e))>=864e5?s(r,n,864e5,"day"):n>=36e5?s(r,n,36e5,"hour"):n>=6e4?s(r,n,6e4,"minute"):n>=1e3?s(r,n,1e3,"second"):r+" ms":(i=Math.abs(a=e))>=864e5?Math.round(a/864e5)+"d":i>=36e5?Math.round(a/36e5)+"h":i>=6e4?Math.round(a/6e4)+"m":i>=1e3?Math.round(a/1e3)+"s":a+"ms"}throw Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))}},543387,(e,t,r)=>{t.exports=function(t){function r(e){let t,n,a,i=null;function o(...e){if(!o.enabled)return;let s=Number(new Date);o.diff=s-(t||s),o.prev=t,o.curr=s,t=s,e[0]=r.coerce(e[0]),"string"!=typeof e[0]&&e.unshift("%O");let n=0;e[0]=e[0].replace(/%([a-zA-Z%])/g,(t,s)=>{if("%%"===t)return"%";n++;let a=r.formatters[s];if("function"==typeof a){let r=e[n];t=a.call(o,r),e.splice(n,1),n--}return t}),r.formatArgs.call(o,e),(o.log||r.log).apply(o,e)}return o.namespace=e,o.useColors=r.useColors(),o.color=r.selectColor(e),o.extend=s,o.destroy=r.destroy,Object.defineProperty(o,"enabled",{enumerable:!0,configurable:!1,get:()=>null!==i?i:(n!==r.namespaces&&(n=r.namespaces,a=r.enabled(e)),a),set:e=>{i=e}}),"function"==typeof r.init&&r.init(o),o}function s(e,t){let s=r(this.namespace+(void 0===t?":":t)+e);return s.log=this.log,s}function n(e,t){let r=0,s=0,n=-1,a=0;for(;r<e.length;)if(s<t.length&&(t[s]===e[r]||"*"===t[s]))"*"===t[s]?(n=s,a=r):r++,s++;else{if(-1===n)return!1;s=n+1,r=++a}for(;s<t.length&&"*"===t[s];)s++;return s===t.length}return r.debug=r,r.default=r,r.coerce=function(e){return e instanceof Error?e.stack||e.message:e},r.disable=function(){let e=[...r.names,...r.skips.map(e=>"-"+e)].join(",");return r.enable(""),e},r.enable=function(e){for(let t of(r.save(e),r.namespaces=e,r.names=[],r.skips=[],("string"==typeof e?e:"").trim().replace(/\s+/g,",").split(",").filter(Boolean)))"-"===t[0]?r.skips.push(t.slice(1)):r.names.push(t)},r.enabled=function(e){for(let t of r.skips)if(n(e,t))return!1;for(let t of r.names)if(n(e,t))return!0;return!1},r.humanize=e.r(581423),r.destroy=function(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")},Object.keys(t).forEach(e=>{r[e]=t[e]}),r.names=[],r.skips=[],r.formatters={},r.selectColor=function(e){let t=0;for(let r=0;r<e.length;r++)t=(t<<5)-t+e.charCodeAt(r)|0;return r.colors[Math.abs(t)%r.colors.length]},r.enable(r.load()),r}},870722,(e,t,r)=>{t.exports=e.x("tty",()=>require("tty"))},652638,(e,t,r)=>{"use strict";t.exports=(e,t=process.argv)=>{let r=e.startsWith("-")?"":1===e.length?"-":"--",s=t.indexOf(r+e),n=t.indexOf("--");return -1!==s&&(-1===n||s<n)}},819798,(e,t,r)=>{"use strict";let s;e.r(446786);let n=e.r(870722),a=e.r(652638),{env:i}=process;function o(e){return 0!==e&&{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function u(e,t){if(0===s)return 0;if(a("color=16m")||a("color=full")||a("color=truecolor"))return 3;if(a("color=256"))return 2;if(e&&!t&&void 0===s)return 0;let r=s||0;if("dumb"===i.TERM)return r;if("CI"in i)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(e=>e in i)||"codeship"===i.CI_NAME?1:r;if("TEAMCITY_VERSION"in i)return+!!/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(i.TEAMCITY_VERSION);if("truecolor"===i.COLORTERM)return 3;if("TERM_PROGRAM"in i){let e=parseInt((i.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(i.TERM_PROGRAM){case"iTerm.app":return e>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(i.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(i.TERM)||"COLORTERM"in i?1:r}a("no-color")||a("no-colors")||a("color=false")||a("color=never")?s=0:(a("color")||a("colors")||a("color=true")||a("color=always"))&&(s=1),"FORCE_COLOR"in i&&(s="true"===i.FORCE_COLOR?1:"false"===i.FORCE_COLOR?0:0===i.FORCE_COLOR.length?1:Math.min(parseInt(i.FORCE_COLOR,10),3)),t.exports={supportsColor:function(e){return o(u(e,e&&e.isTTY))},stdout:o(u(!0,n.isatty(1))),stderr:o(u(!0,n.isatty(2)))}},315465,(e,t,r)=>{let s=e.r(870722),n=e.r(224361);r.init=function(e){e.inspectOpts={};let t=Object.keys(r.inspectOpts);for(let s=0;s<t.length;s++)e.inspectOpts[t[s]]=r.inspectOpts[t[s]]},r.log=function(...e){return process.stderr.write(n.formatWithOptions(r.inspectOpts,...e)+"\n")},r.formatArgs=function(e){let{namespace:s,useColors:n}=this;if(n){let r=this.color,n="\x1b[3"+(r<8?r:"8;5;"+r),a=` ${n};1m${s} \u001B[0m`;e[0]=a+e[0].split("\n").join("\n"+a),e.push(n+"m+"+t.exports.humanize(this.diff)+"\x1b[0m")}else e[0]=(r.inspectOpts.hideDate?"":new Date().toISOString()+" ")+s+" "+e[0]},r.save=function(e){e?process.env.DEBUG=e:delete process.env.DEBUG},r.load=function(){return process.env.DEBUG},r.useColors=function(){return"colors"in r.inspectOpts?!!r.inspectOpts.colors:s.isatty(process.stderr.fd)},r.destroy=n.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."),r.colors=[6,2,3,4,5,1];try{let t=e.r(819798);t&&(t.stderr||t).level>=2&&(r.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch(e){}r.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(e,t)=>t.toUpperCase()),s=process.env[t];return s=!!/^(yes|on|true|enabled)$/i.test(s)||!/^(no|off|false|disabled)$/i.test(s)&&("null"===s?null:Number(s)),e[r]=s,e},{}),t.exports=e.r(543387)(r);let{formatters:a}=t.exports;a.o=function(e){return this.inspectOpts.colors=this.useColors,n.inspect(e,this.inspectOpts).split("\n").map(e=>e.trim()).join(" ")},a.O=function(e){return this.inspectOpts.colors=this.useColors,n.inspect(e,this.inspectOpts)}},986086,(e,t,r)=>{let s;r.formatArgs=function(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+t.exports.humanize(this.diff),!this.useColors)return;let r="color: "+this.color;e.splice(1,0,r,"color: inherit");let s=0,n=0;e[0].replace(/%[a-zA-Z%]/g,e=>{"%%"!==e&&(s++,"%c"===e&&(n=s))}),e.splice(n,0,r)},r.save=function(e){try{e?r.storage.setItem("debug",e):r.storage.removeItem("debug")}catch(e){}},r.load=function(){let e;try{e=r.storage.getItem("debug")||r.storage.getItem("DEBUG")}catch(e){}return!e&&"u">typeof process&&"env"in process&&(e=process.env.DEBUG),e},r.useColors=function(){let e;return!("u">typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("u">typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"u">typeof navigator&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||"u">typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},r.storage=function(){try{return localStorage}catch(e){}}(),s=!1,r.destroy=()=>{s||(s=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))},r.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],r.log=console.debug||console.log||(()=>{}),t.exports=e.r(543387)(r);let{formatters:n}=t.exports;n.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}},411108,(e,t,r)=>{"u"<typeof process||"renderer"===process.type||process.__nwjs?t.exports=e.r(986086):t.exports=e.r(315465)},543218,(e,t,r)=>{"use strict";var s=e.e&&e.e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r,"__esModule",{value:!0});let n=e.r(522734),a=s(e.r(411108)).default("@kwsites/file-exists");r.exists=function(e,t=r.READABLE){return function(e,t,r){a("checking %s",e);try{let s=n.statSync(e);if(s.isFile()&&t)return a("[OK] path represents a file"),!0;if(s.isDirectory()&&r)return a("[OK] path represents a directory"),!0;return a("[FAIL] path represents something other than a file or directory"),!1}catch(e){if("ENOENT"===e.code)return a("[FAIL] path is not accessible: %o",e),!1;throw a("[FATAL] %o",e),e}}(e,(t&r.FILE)>0,(t&r.FOLDER)>0)},r.FILE=1,r.FOLDER=2,r.READABLE=r.FILE+r.FOLDER},413872,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var s=e.r(543218);for(var n in s)r.hasOwnProperty(n)||(r[n]=s[n])},363193,(e,t,r)=>{"use strict";function s(){let e,t,r="pending";return{promise:new Promise((r,s)=>{e=r,t=s}),done(t){"pending"===r&&(r="resolved",e(t))},fail(e){"pending"===r&&(r="rejected",t(e))},get fulfilled(){return"pending"!==r},get status(){return r}}}Object.defineProperty(r,"__esModule",{value:!0}),r.createDeferred=r.deferred=void 0,r.deferred=s,r.createDeferred=s,r.default=s},687769,(e,t,r)=>{t.exports=e.x("node:events",()=>require("node:events"))},11116,e=>{"use strict";let t,r;var s,n,a,i,o,u,l,c,p,f,h,d,m,g,b,y,w,v,k,C,x,_,T,R,O,E,S,A,N,j,F,M,P,$,D,I,U,L,B,q,G,z,H,W,K,V,Z,X,Q,Y,J,ee,et,er,es,en,ea,ei,eo,eu,el,ec,ep,ef,eh,ed,em,eg,eb,ey,ew,ev,ek,eC,ex,e_,eT,eR,eO,eE,eS,eA,eN,ej,eF,eM,eP,e$,eD,eI,eU,eL,eB,eq,eG,ez,eH,eW,eK,eV,eZ,eX=e.i(958699),eQ=e.i(953193),eY=e.i(314093),eJ=e.i(159515),e0=e.i(952192),e1=e.i(939747),e3=e.i(348399),e6=e.i(887426),e9=e.i(626524),e2=e.i(479201),e8=e.i(336951),e4=e.i(546302),e5=e.i(431732),e7=e.i(899284),te=e.i(104600),tt=e.i(193695);e.i(792325);var tr=e.i(27732),ts=e.i(298600),tn=e.i(233405),ta=e.i(522734),ti=e.i(814747),to=e.i(446786),tu=e.i(413872);let tl=new WeakMap;function tc(...e){let t=new String(e);return tl.set(t,e),t}function tp(e){return e instanceof String&&tl.has(e)}function tf(e){return tl.get(e)??[]}var th=e.i(411108),td=e.i(363193),tm=e.i(750227);function*tg(e,t){let r="global"===t;for(let t of e)t.isGlobal===r&&(yield t)}let tb=new Set(["--add","--edit","--remove-section","--rename-section","--replace-all","--unset","--unset-all","-e"]),ty=new Set(["--get","--get-all","--get-color","--get-colorbool","--get-regexp","--get-urlmatch","--list","-l"]),tw=new Set(["edit","remove-section","rename-section","set","unset"]),tv=new Set(["get","get-color","get-colorbool","list"]);function tk(e=!1,t=[]){let r=t.at(0)?.toLowerCase();return void 0===r?null:{isWrite:e,isRead:!e,key:r,value:t.at(1)}}let tC={short:new Map([["c",!0]])},tx={short:new Map([["C",!0],["P",!1],["h",!1],["p",!1],["v",!1],...tC.short.entries()]),long:new Set(["attr-source","config-env","exec-path","git-dir","list-cmds","namespace","super-prefix","work-tree"])},t_={clone:{short:new Map([["b",!0],["j",!0],["l",!1],["n",!1],["o",!0],["q",!1],["s",!1],["u",!0]]),long:new Set(["branch","config","jobs","origin","upload-pack","u","template"])},commit:{short:new Map([["C",!0],["F",!0],["c",!0],["m",!0],["t",!0]]),long:new Set(["file","message","reedit-message","reuse-message","template"])},config:{short:new Map([["e",!1],["f",!0],["l",!1]]),long:new Set(["blob","comment","default","file","type","value"])},fetch:{short:new Map,long:new Set(["upload-pack"])},init:{short:new Map,long:new Set(["template"])},pull:{short:new Map,long:new Set(["upload-pack"])},push:{short:new Map,long:new Set(["exec","receive-pack"])}},tT={short:new Map,long:new Set};function tR(e,t=tx){if(e.startsWith("--")){let r=e.indexOf("=");if(r>2)return[{name:e.slice(0,r),value:e.slice(r+1),needsNext:!1}];let s=e.slice(2);return[{name:e,needsNext:t.long.has(s)}]}if(2===e.length){let r=e.charAt(1);return[{name:e,needsNext:!0===t.short.get(r)}]}return function(e,t){let r=e.slice(1).split(""),s=[];for(let n=0;n<r.length;n++){let a=r[n],i=t.get(a);if(void 0===i)return[{name:e,needsNext:!1}];if(i){let e=r.slice(n+1).join("");if(e&&![...e].every(e=>t.has(e)))return s.push({name:`-${a}`,value:e,needsNext:!1}),s}s.push({name:`-${a}`,needsNext:i})}return s}(e,t.short)}function tO(e,t,r=String(e)){let s="string"==typeof e?RegExp(`\\s*${e.toLowerCase()}`):e;return function(e){if(s.test(e))return{category:t,message:`Configuring ${r} is not permitted without enabling ${t}`}}}function tE(e,t){return tO(RegExp(`\\s*${e.toLowerCase().replace(/\./g,"(..+)?.")}`),t,e)}let tS=[tO("alias","allowUnsafeAlias"),tO("core.askPass","allowUnsafeAskPass"),tO("core.editor","allowUnsafeEditor"),tO("core.fsmonitor","allowUnsafeFsMonitor"),tO("core.gitProxy","allowUnsafeGitProxy"),tO("core.hooksPath","allowUnsafeHooksPath"),tO("core.pager","allowUnsafePager"),tO("core.sshCommand","allowUnsafeSshCommand"),tE("credential.helper","allowUnsafeCredentialHelper"),tE("diff.command","allowUnsafeDiffExternal"),tO("diff.external","allowUnsafeDiffExternal"),tE("diff.textconv","allowUnsafeDiffTextConv"),tE("filter.clean","allowUnsafeFilter"),tE("filter.smudge","allowUnsafeFilter"),tE("gpg.program","allowUnsafeGpgProgram"),tO("init.templateDir","allowUnsafeTemplateDir"),tE("merge.driver","allowUnsafeMergeDriver"),tE("mergetool.path","allowUnsafeMergeDriver"),tE("mergetool.cmd","allowUnsafeMergeDriver"),tE("protocol.allow","allowUnsafeProtocolOverride"),tE("remote.receivepack","allowUnsafePack"),tE("remote.uploadpack","allowUnsafePack"),tO("sequence.editor","allowUnsafeEditor")];function tA(e,t,r,s=String(t)){let n="string"==typeof t?RegExp(`\\s*${t.toLowerCase()}`):t,a=`Use of ${e?`${e} with option `:""}${s} is not permitted without enabling ${r}`;return function(t,s){if((!e||t===e)&&n.test(s))return{category:r,message:a}}}let tN=[tA(null,/--(upload|receive)-pack/,"allowUnsafePack","--upload-pack or --receive-pack"),tA("clone",/^-\w*u/,"allowUnsafePack"),tA("clone","--u","allowUnsafePack"),tA("push","--exec","allowUnsafePack"),tA(null,"--template","allowUnsafeTemplateDir")];function tj(e,t,r){return[...function*(e,t){for(let r of t)for(let t of tN){let s=t(e,r.name);s&&(yield s)}}(e,t),...function*({write:e}){for(let t of e)for(let e of tS){let r=e(t.key);r&&(yield r)}}(r)]}function tF({value:e,name:t}){return void 0!==e?{name:t,value:e}:{name:t}}let tM={editor:"allowUnsafeEditor",git_askpass:"allowUnsafeAskPass",git_config_global:"allowUnsafeConfigPaths",git_config_system:"allowUnsafeConfigPaths",git_config_count:"allowUnsafeConfigEnvCount",git_config:"allowUnsafeConfigPaths",git_editor:"allowUnsafeEditor",git_exec_path:"allowUnsafeConfigPaths",git_external_diff:"allowUnsafeDiffExternal",git_pager:"allowUnsafePager",git_proxy_command:"allowUnsafeGitProxy",git_template_dir:"allowUnsafeTemplateDir",git_sequence_editor:"allowUnsafeEditor",git_ssh:"allowUnsafeSshCommand",git_ssh_command:"allowUnsafeSshCommand",pager:"allowUnsafePager",prefix:"allowUnsafeConfigPaths",ssh_askpass:"allowUnsafeAskPass"};function tP(e){return Object.hasOwn(tM,e)}var t$=e.i(687769),tD=Object.defineProperty,tI=Object.getOwnPropertyDescriptor,tU=Object.getOwnPropertyNames,tL=Object.prototype.hasOwnProperty,tB=(e,t)=>function(){return e&&(t=(0,e[tU(e)[0]])(e=0)),t},tq=(e,t)=>{for(var r in t)tD(e,r,{get:t[r],enumerable:!0})},tG=e=>((e,t,r,s)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let n of tU(t))tL.call(e,n)||n===r||tD(e,n,{get:()=>t[n],enumerable:!(s=tI(t,n))||s.enumerable});return e})(tD({},"__esModule",{value:!0}),e),tz=tB({"src/lib/errors/git-error.ts"(){s=class extends Error{constructor(e,t){super(t),this.task=e,Object.setPrototypeOf(this,new.target.prototype)}}}}),tH=tB({"src/lib/errors/git-response-error.ts"(){tz(),n=class extends s{constructor(e,t){super(void 0,t||String(e)),this.git=e}}}}),tW=tB({"src/lib/errors/task-configuration-error.ts"(){tz(),a=class extends s{constructor(e){super(void 0,e)}}}});function tK(e){return"function"!=typeof e?o:e}function tV(e){return"function"==typeof e&&e!==o}function tZ(e,t){let r=e.indexOf(t);return r<=0?[e,""]:[e.substr(0,r),e.substr(r+1)]}function tX(e,t=0){return h(e)&&e.length>t?e[t]:void 0}function tQ(e,t=0){if(h(e)&&e.length>t)return e[e.length-1-t]}function tY(e="",t=!0,r="\n"){return e.split(r).reduce((e,r)=>{let s=t?r.trim():r;return s&&e.push(s),e},[])}function tJ(e,t){return tY(e,!0).map(e=>t(e))}function t0(e){return(0,tu.exists)(e,tu.FOLDER)}function t1(e,t){return Array.isArray(e)?e.includes(t)||e.push(t):e.add(t),t}function t3(e,t){return Array.isArray(e)&&!e.includes(t)&&e.push(t),e}function t6(e,t){if(Array.isArray(e)){let r=e.indexOf(t);r>=0&&e.splice(r,1)}else e.delete(t);return t}function t9(e){return Array.isArray(e)?e:[e]}function t2(e){return e.replace(/[\s-]+(.)/g,(e,t)=>t.toUpperCase())}function t8(e){return t9(e).map(e=>e instanceof String?e:String(e))}function t4(e,t=0){if(null==e)return t;let r=parseInt(e,10);return Number.isNaN(r)?t:r}function t5(e,t){let r=[];for(let s=0,n=e.length;s<n;s++)r.push(t,e[s]);return r}function t7(e){return(Array.isArray(e)?Buffer.concat(e):e).toString("utf-8")}function re(e,t){let r={};return t.forEach(t=>{void 0!==e[t]&&(r[t]=e[t])}),r}function rt(e=0){return new Promise(t=>setTimeout(t,e))}function rr(e){if(!1!==e)return e}var rs=tB({"src/lib/utils/util.ts"(){ru(),i="\0",o=()=>{},u=Object.prototype.toString.call.bind(Object.prototype.toString)}});function rn(e,t,r){return t(e)?e:arguments.length>2?r:void 0}function ra(e,t){let r=tp(e)?"string":typeof e;return/number|string|boolean/.test(r)&&(!t||!t.includes(r))}function ri(e){return!!e&&"[object Object]"===u(e)}function ro(e){return"function"==typeof e}var ru=tB({"src/lib/utils/argument-filters.ts"(){rs(),l=e=>Array.isArray(e),c=e=>"number"==typeof e,p=e=>"string"==typeof e||tp(e),f=e=>p(e)||Array.isArray(e)&&e.every(p),h=e=>!(null==e||"number|boolean|function".includes(typeof e))&&"number"==typeof e.length}}),rl=tB({"src/lib/utils/exit-codes.ts"(){var e;(e=d||{})[e.SUCCESS=0]="SUCCESS",e[e.ERROR=1]="ERROR",e[e.NOT_FOUND=-2]="NOT_FOUND",e[e.UNCLEAN=128]="UNCLEAN",d=e}}),rc=tB({"src/lib/utils/git-output-streams.ts"(){m=class e{constructor(e,t){this.stdOut=e,this.stdErr=t}asStrings(){return new e(this.stdOut.toString("utf8"),this.stdErr.toString("utf8"))}}}});function rp(){throw Error("LineParser:useMatches not implemented")}var rf=tB({"src/lib/utils/line-parser.ts"(){g=class{constructor(e,t){this.matches=[],this.useMatches=rp,this.parse=(e,t)=>(this.resetMatches(),!!this._regExp.every((t,r)=>this.addMatch(t,r,e(r)))&&!1!==this.useMatches(t,this.prepareMatches())),this._regExp=Array.isArray(e)?e:[e],t&&(this.useMatches=t)}resetMatches(){this.matches.length=0}prepareMatches(){return this.matches}addMatch(e,t,r){let s=r&&e.exec(r);return s&&this.pushMatch(t,s),!!s}pushMatch(e,t){this.matches.push(...t.slice(1))}},b=class extends g{addMatch(e,t,r){return/^remote:\s/.test(String(r))&&super.addMatch(e,t,r)}pushMatch(e,t){(e>0||t.length>1)&&super.pushMatch(e,t)}}}});function rh(...e){let t=process.cwd(),r=Object.assign({baseDir:t,...y},...e.filter(e=>"object"==typeof e&&e));return r.baseDir=r.baseDir||t,r.trimmed=!0===r.trimmed,r}var rd=tB({"src/lib/utils/simple-git-options.ts"(){y={binary:"git",maxConcurrentProcesses:5,config:[],trimmed:!1}}});function rm(e,t=[]){return ri(e)?Object.keys(e).reduce((t,r)=>{let s=e[r];if(tp(s))t.push(s);else if(ra(s,["boolean"]))t.push(r+"="+s);else if(Array.isArray(s))for(let e of s)ra(e,["string","number"])||t.push(r+"="+e);else t.push(r);return t},t):t}function rg(e,t=0,r=!1){var s;let n,a=[];for(let r=0,s=t<0?e.length:t;r<s;r++)"string|number".includes(typeof e[r])&&a.push(String(e[r]));return rm(rb(e),a),r||a.push(...(n="function"==typeof tQ(s=e),t8(rn(tQ(s,+!!n),l,[])))),a}function rb(e){let t=ro(tQ(e));return rn(tQ(e,+!!t),ri)}function ry(e,t=!0){let r=tK(tQ(e));return t||tV(r)?r:void 0}var rw=tB({"src/lib/utils/task-options.ts"(){ru(),rs()}});function rv(e,t){return e(t.stdOut,t.stdErr)}function rk(e,t,r,s=!0){return t9(r).forEach(r=>{for(let n=tY(r,s),a=0,i=n.length;a<i;a++){let r=(e=0)=>{if(!(a+e>=i))return n[a+e]};t.some(({parse:t})=>t(r,e))}}),e}var rC=tB({"src/lib/utils/task-parser.ts"(){rs()}}),rx={};tq(rx,{ExitCodes:()=>d,GitOutputStreams:()=>m,LineParser:()=>g,NOOP:()=>o,NULL:()=>i,RemoteLineParser:()=>b,append:()=>t1,appendTaskOptions:()=>rm,asArray:()=>t9,asCamelCase:()=>t2,asFunction:()=>tK,asNumber:()=>t4,asStringArray:()=>t8,bufferToString:()=>t7,callTaskParser:()=>rv,createInstanceConfig:()=>rh,delay:()=>rt,filterArray:()=>l,filterFunction:()=>ro,filterHasLength:()=>h,filterNumber:()=>c,filterPlainObject:()=>ri,filterPrimitives:()=>ra,filterString:()=>p,filterStringOrStringArray:()=>f,filterType:()=>rn,first:()=>tX,folderExists:()=>t0,forEachLineWithContent:()=>tJ,getTrailingOptions:()=>rg,including:()=>t3,isUserFunction:()=>tV,last:()=>tQ,objectToString:()=>u,orVoid:()=>rr,parseStringResponse:()=>rk,pick:()=>re,prefixedArray:()=>t5,remove:()=>t6,splitOn:()=>tZ,toLinesWithContent:()=>tY,trailingFunctionArgument:()=>ry,trailingOptionsArgument:()=>rb});var r_=tB({"src/lib/utils/index.ts"(){ru(),rl(),rc(),rf(),rd(),rw(),rC(),rs()}}),rT={};function rR(e){switch(e){case"bare":return rE();case"root":return rO()}return{commands:["rev-parse","--is-inside-work-tree"],format:"utf-8",onError:v,parser:k}}function rO(){return{commands:["rev-parse","--git-dir"],format:"utf-8",onError:v,parser:e=>/^\.(git)?$/.test(e.trim())}}function rE(){return{commands:["rev-parse","--is-bare-repository"],format:"utf-8",onError:v,parser:k}}tq(rT,{CheckRepoActions:()=>w,checkIsBareRepoTask:()=>rE,checkIsRepoRootTask:()=>rO,checkIsRepoTask:()=>rR});var rS=tB({"src/lib/tasks/check-is-repo.ts"(){var e;r_(),(e=w||{}).BARE="bare",e.IN_TREE="tree",e.IS_REPO_ROOT="root",w=e,v=({exitCode:e},t,r,s)=>{if(128===e&&/(Not a git repository|Kein Git-Repository)/i.test(String(t)))return r(Buffer.from("false"));s(t)},k=e=>"true"===e.trim()}}),rA=tB({"src/lib/responses/CleanSummary.ts"(){r_(),C=class{constructor(e){this.dryRun=e,this.paths=[],this.files=[],this.folders=[]}},x=/^[a-z]+\s*/i,_=/^[a-z]+\s+[a-z]+\s*/i,T=/\/$/}}),rN={};function rj(e){return{commands:R,format:"empty",parser:e}}function rF(e){return{commands:R,format:"empty",parser(){throw"string"==typeof e?new a(e):e}}}function rM(e,t=!1){return{commands:e,format:"utf-8",parser:e=>t?String(e).trim():e}}function rP(e){return{commands:e,format:"buffer",parser:e=>e}}function r$(e){return"buffer"===e.format}function rD(e){return"empty"===e.format||!e.commands.length}tq(rN,{EMPTY_COMMANDS:()=>R,adhocExecTask:()=>rj,configurationErrorTask:()=>rF,isBufferTask:()=>r$,isEmptyTask:()=>rD,straightThroughBufferTask:()=>rP,straightThroughStringTask:()=>rM});var rI=tB({"src/lib/tasks/task.ts"(){tW(),R=[]}}),rU={};function rL(e,t){let r,s,n,{cleanMode:a,options:i,valid:o}=(s=[],n={cleanMode:!1,options:!0},e.replace(/[^a-z]i/g,"").split("").forEach(e=>{var t,a;"f"===(t=e)||"n"===t?(r=e,n.cleanMode=!0):n.options=n.options&&(a=s[s.length]=`-${e}`,/^-[a-z]$/i.test(a)&&N.has(a.charAt(1)))}),{cleanMode:r,options:s,valid:n});return a?o.options?(i.push(...t),i.some(rG))?rF(O):rB(a,i):rF(S+JSON.stringify(e)):rF(E)}function rB(e,t){return{commands:["clean",`-${e}`,...t],format:"utf-8",parser:t=>{var r;let s,n;return s=new C(r="n"===e),n=r?_:x,tY(t).forEach(e=>{let t=e.replace(n,"");s.paths.push(t),(T.test(t)?s.folders:s.files).push(t)}),s}}}function rq(e){return Array.isArray(e)&&e.every(e=>N.has(e))}function rG(e){return/^-[^\-]/.test(e)?e.indexOf("i")>0:"--interactive"===e}tq(rU,{CONFIG_ERROR_INTERACTIVE_MODE:()=>O,CONFIG_ERROR_MODE_REQUIRED:()=>E,CONFIG_ERROR_UNKNOWN_OPTION:()=>S,CleanOptions:()=>A,cleanTask:()=>rB,cleanWithOptionsTask:()=>rL,isCleanOptionsArray:()=>rq});var rz=tB({"src/lib/tasks/clean.ts"(){var e;rA(),r_(),rI(),O="Git clean interactive mode is not supported",E='Git clean mode parameter ("n" or "f") is required',S="Git clean unknown option found in: ",(e=A||{}).DRY_RUN="n",e.FORCE="f",e.IGNORED_INCLUDED="x",e.IGNORED_ONLY="X",e.EXCLUDING="e",e.QUIET="q",e.RECURSIVE="d",N=new Set(["i",...t8(Object.values(A=e))])}});function*rH(e,t=null){let r=e.split("\0");for(let e=0,s=r.length-1;e<s;){let s=r[e++].replace(/^(file):/,""),n=r[e++],a=t;if(n.includes("\n")){let e=tZ(n,"\n");a=e[0],n=e[1]}yield{file:s,key:a,value:n}}}var rW=tB({"src/lib/responses/ConfigList.ts"(){r_(),j=class{constructor(){this.files=[],this.values=Object.create(null)}get all(){return this._all||(this._all=this.files.reduce((e,t)=>Object.assign(e,this.values[t]),{})),this._all}addFile(e){if(!(e in this.values)){let t=tQ(this.files);this.values[e]=t?Object.create(this.values[t]):{},this.files.push(e)}return this.values[e]}addValue(e,t,r){let s=this.addFile(e);Object.hasOwn(s,t)?Array.isArray(s[t])?s[t].push(r):s[t]=[s[t],r]:s[t]=r,this._all=void 0}}}});function rK(e,t){return"string"==typeof e&&Object.hasOwn(F,e)?e:t}var rV=tB({"src/lib/tasks/config.ts"(){var e;rW(),r_(),(e=F||{}).system="system",e.global="global",e.local="local",e.worktree="worktree",F=e}}),rZ=tB({"src/lib/tasks/diff-name-status.ts"(){var e;(e=M||{}).ADDED="A",e.COPIED="C",e.DELETED="D",e.MODIFIED="M",e.RENAMED="R",e.CHANGED="T",e.UNMERGED="U",e.UNKNOWN="X",e.BROKEN="B",P=new Set(Object.values(M=e))}}),rX=tB({"src/lib/tasks/grep.ts"(){r_(),rI(),$=["-h"],D=Symbol("grepQuery"),U=class{constructor(){this[I]=[]}*[(I=D,Symbol.iterator)](){for(let e of this[D])yield e}and(...e){return e.length&&this[D].push("--and","(",...t5(e,"-e"),")"),this}param(...e){return this[D].push(...t5(e,"-e")),this}}}}),rQ={};function rY(e,t){let r=["reset"];return r0(e)&&r.push(`--${e}`),r.push(...t),rM(r)}function rJ(e){if(r0(e))return e;switch(typeof e){case"string":case"undefined":return"soft"}}function r0(e){return"string"==typeof e&&B.includes(e)}tq(rQ,{ResetMode:()=>L,getResetMode:()=>rJ,resetTask:()=>rY});var r1=tB({"src/lib/tasks/reset.ts"(){var e;r_(),rI(),(e=L||{}).MIXED="mixed",e.SOFT="soft",e.HARD="hard",e.MERGE="merge",e.KEEP="keep",B=t8(Object.values(L=e))}});function r3(e,t,r){return t&&String(t).replace(/\s*/,"")?(s,...n)=>{e(`%s ${s}`,t,...n),r&&r(s,...n)}:r?(t,...s)=>{e(t,...s),r(t,...s)}:e}function r6(e,t,r,s=(0,th.default)("simple-git")){let n=e&&`[${e}]`||"",a=[],i="string"==typeof t?s.extend(t):t,u=function(e,t,{namespace:r}){if("string"==typeof e)return e;let s=t&&t.namespace||"";return s.startsWith(r)?s.substr(r.length+1):s||r}(rn(t,p),i,s);return function t(r){let a=r&&`[${r}]`||"",u=i&&r3(i,a)||o,c=r3(s,`${n} ${a}`,u);return Object.assign(i?u:c,{label:e,sibling:l,info:c,step:t})}(r);function l(t,r){return t1(a,r6(e,u.replace(/^[^:]+/,t),r,s))}}var r9=tB({"src/lib/git-logger.ts"(){r_(),th.default.formatters.L=e=>String(h(e)?e.length:"-"),th.default.formatters.B=e=>Buffer.isBuffer(e)?e.toString("utf8"):u(e)}}),r2=tB({"src/lib/runners/tasks-pending-queue.ts"(){tz(),r9(),q=class e{constructor(e="GitExecutor"){this.logLabel=e,this._queue=new Map}withProgress(e){return this._queue.get(e)}createProgress(t){let r=e.getName(t.commands[0]);return{task:t,logger:r6(this.logLabel,r),name:r}}push(e){let t=this.createProgress(e);return t.logger("Adding task to the queue, commands = %o",e.commands),this._queue.set(e,t),t}fatal(e){for(let[t,{logger:r}]of Array.from(this._queue.entries()))t===e.task?(r.info("Failed %o",e),r("Fatal exception, any as-yet un-started tasks run through this executor will not be attempted")):r.info("A fatal exception occurred in a previous task, the queue has been purged: %o",e.message),this.complete(t);if(0!==this._queue.size)throw Error(`Queue size should be zero after fatal: ${this._queue.size}`)}complete(e){this.withProgress(e)&&this._queue.delete(e)}attempt(e){let t=this.withProgress(e);if(!t)throw new s(void 0,"TasksPendingQueue: attempt called for an unknown task");return t.logger("Starting task"),t}static getName(t="empty"){return`task:${t}:${++e.counter}`}static{this.counter=0}}}});function r8(e,t){return{method:tX(e.commands)||"",commands:t}}function r4(e,t,r,s){return n=>{r("%s received %L bytes",t,n),s("%B",n),e.push(n)}}var r5=tB({"src/lib/runners/git-executor-chain.ts"(){tz(),rI(),r_(),r2(),G=class{constructor(e,t,r){this._executor=e,this._scheduler=t,this._plugins=r,this._chain=Promise.resolve(),this._queue=new q}get cwd(){return this._cwd||this._executor.cwd}set cwd(e){this._cwd=e}get env(){return this._executor.env}get outputHandler(){return this._executor.outputHandler}chain(){return this}push(e){return this._queue.push(e),this._chain=this._chain.then(()=>this.attemptTask(e))}async attemptTask(e){let t=await this._scheduler.next(),r=()=>this._queue.complete(e);try{let{logger:t}=this._queue.attempt(e);return await (rD(e)?this.attemptEmptyTask(e,t):this.attemptRemoteTask(e,t))}catch(t){throw this.onFatalException(e,t)}finally{r(),t()}}onFatalException(e,t){let r=t instanceof s?Object.assign(t,{task:e}):new s(e,t&&String(t));return this._chain=Promise.resolve(),this._queue.fatal(r),r}async attemptRemoteTask(e,t){let r=this._plugins.exec("spawn.binary","",r8(e,e.commands)),s=this._plugins.exec("spawn.args",[...e.commands],{...r8(e,e.commands),env:{...this.env}}),n=await this.gitResponse(e,r,s,this.outputHandler,t.step("SPAWN")),a=await this.handleTaskData(e,s,n,t.step("HANDLE"));return(t("passing response to task's parser as a %s",e.format),r$(e))?rv(e.parser,a):rv(e.parser,a.asStrings())}async attemptEmptyTask(e,t){return t("empty task bypassing child process to call to task's parser"),e.parser(this)}handleTaskData(e,t,r,s){let{exitCode:n,rejection:a,stdOut:i,stdErr:o}=r;return new Promise((l,c)=>{s("Preparing to handle process response exitCode=%d stdOut=",n);let{error:p}=this._plugins.exec("task.error",{error:a},{...r8(e,t),...r});return p&&e.onError?(s.info("exitCode=%s handling with custom error handler"),e.onError(r,p,e=>{s.info("custom error handler treated as success"),s("custom error returned a %s",u(e)),l(new m(Array.isArray(e)?Buffer.concat(e):e,Buffer.concat(o)))},c)):p?(s.info("handling as error: exitCode=%s stdErr=%s rejection=%o",n,o.length,a),c(p)):void(s.info("retrieving task output complete"),l(new m(Buffer.concat(i),Buffer.concat(o))))})}async gitResponse(e,t,r,s,n){let a=n.sibling("output"),i=this._plugins.exec("spawn.options",{cwd:this.cwd,env:this.env,windowsHide:!0},r8(e,e.commands));return new Promise(o=>{let u=[],l=[];n.info("%s %o",t,r),n("%O",i);let c=this._beforeSpawn(e,r);if(c)return o({stdOut:u,stdErr:l,exitCode:9901,rejection:c});this._plugins.exec("spawn.before",void 0,{...r8(e,r),kill(e){c=e||c}});let p=(0,tn.spawn)(t,r,i);p.stdout.on("data",r4(u,"stdOut",n,a.step("stdOut"))),p.stderr.on("data",r4(l,"stdErr",n,a.step("stdErr"))),p.on("error",e=>{n("[ERROR] child process exception %o",e),l.push(Buffer.from(String(e.stack),"ascii"))}),s&&(n("Passing child process stdOut/stdErr to custom outputHandler"),s(t,p.stdout,p.stderr,[...r])),this._plugins.exec("spawn.after",void 0,{...r8(e,r),spawned:p,close(e,t){o({stdOut:u,stdErr:l,exitCode:e,rejection:c||t})},kill(e){p.killed||(c=e,p.kill("SIGINT"))}})})}_beforeSpawn(e,t){let r;return this._plugins.exec("spawn.before",void 0,{...r8(e,t),kill(e){r=e||r}}),r}}}}),r7={};tq(r7,{GitExecutor:()=>z});var se=tB({"src/lib/runners/git-executor.ts"(){r5(),z=class{constructor(e,t,r){this.cwd=e,this._scheduler=t,this._plugins=r,this._chain=new G(this,this._scheduler,this._plugins)}chain(){return new G(this,this._scheduler,this._plugins)}push(e){return this._chain.push(e)}}}}),st=tB({"src/lib/task-callback.ts"(){tH(),r_()}});function sr(e,t){return rj(r=>{if(!t0(e))throw Error(`Git.cwd: cannot change to non-directory "${e}"`);return(t||r).cwd=e})}var ss=tB({"src/lib/tasks/change-working-directory.ts"(){r_(),rI()}});function sn(e){let t=["checkout",...e];return"-b"===t[1]&&t.includes("-B")&&(t[1]=t6(t,"-B")),rM(t)}var sa=tB({"src/lib/tasks/checkout.ts"(){r_(),rI()}}),si=tB({"src/lib/tasks/count-objects.ts"(){r_(),H=new g(/([a-z-]+): (\d+)$/,(e,[t,r])=>{let s=t2(t);Object.hasOwn(e,s)&&(e[s]=t4(r))})}});function so(e){return rk({author:null,branch:"",commit:"",root:!1,summary:{changes:0,insertions:0,deletions:0}},W,e)}var su=tB({"src/lib/parsers/parse-commit.ts"(){r_(),W=[new g(/^\[([^\s]+)( \([^)]+\))? ([^\]]+)/,(e,[t,r,s])=>{e.branch=t,e.commit=s,e.root=!!r}),new g(/\s*Author:\s(.+)/i,(e,[t])=>{let r=t.split("<"),s=r.pop();s&&s.includes("@")&&(e.author={email:s.substr(0,s.length-1),name:r.join("<").trim()})}),new g(/(\d+)[^,]*(?:,\s*(\d+)[^,]*)(?:,\s*(\d+))/g,(e,[t,r,s])=>{e.summary.changes=parseInt(t,10)||0,e.summary.insertions=parseInt(r,10)||0,e.summary.deletions=parseInt(s,10)||0}),new g(/^(\d+)[^,]*(?:,\s*(\d+)[^(]+\(([+-]))?/,(e,[t,r,s])=>{e.summary.changes=parseInt(t,10)||0;let n=parseInt(r,10)||0;"-"===s?e.summary.deletions=n:"+"===s&&(e.summary.insertions=n)})]}}),sl=tB({"src/lib/tasks/commit.ts"(){su(),r_(),rI()}}),sc=tB({"src/lib/tasks/first-commit.ts"(){r_(),rI()}}),sp=tB({"src/lib/tasks/hash-object.ts"(){rI()}}),sf=tB({"src/lib/responses/InitSummary.ts"(){K=class{constructor(e,t,r,s){this.bare=e,this.path=t,this.existing=r,this.gitDir=s}},V=/^Init.+ repository in (.+)$/,Z=/^Rein.+ in (.+)$/}}),sh=tB({"src/lib/tasks/init.ts"(){sf(),X="--bare"}});function sd(e){for(let t=0;t<e.length;t++){let r=Q.exec(e[t]);if(r)return`--${r[1]}`}return""}function sm(e){return Q.test(e)}var sg=tB({"src/lib/args/log-format.ts"(){Q=/^--(stat|numstat|name-only|name-status)(=|$)/}}),sb=tB({"src/lib/responses/DiffSummary.ts"(){Y=class{constructor(){this.changed=0,this.deletions=0,this.insertions=0,this.files=[]}}}});function sy(e=""){let t=er[e];return e=>rk(new Y,t,e,!1)}var sw=tB({"src/lib/parsers/parse-diff-summary.ts"(){sg(),sb(),rZ(),r_(),J=[new g(/^(.+)\s+\|\s+(\d+)(\s+[+\-]+)?$/,(e,[t,r,s=""])=>{e.files.push({file:t.trim(),changes:t4(r),insertions:s.replace(/[^+]/g,"").length,deletions:s.replace(/[^-]/g,"").length,binary:!1})}),new g(/^(.+) \|\s+Bin ([0-9.]+) -> ([0-9.]+) ([a-z]+)/,(e,[t,r,s])=>{e.files.push({file:t.trim(),before:t4(r),after:t4(s),binary:!0})}),new g(/(\d+) files? changed\s*((?:, \d+ [^,]+){0,2})/,(e,[t,r])=>{let s=/(\d+) i/.exec(r),n=/(\d+) d/.exec(r);e.changed=t4(t),e.insertions=t4(s?.[1]),e.deletions=t4(n?.[1])})],ee=[new g(/(\d+)\t(\d+)\t(.+)$/,(e,[t,r,s])=>{let n=t4(t),a=t4(r);e.changed++,e.insertions+=n,e.deletions+=a,e.files.push({file:s,changes:n+a,insertions:n,deletions:a,binary:!1})}),new g(/-\t-\t(.+)$/,(e,[t])=>{e.changed++,e.files.push({file:t,after:0,before:0,binary:!0})})],et=[new g(/(.+)$/,(e,[t])=>{e.changed++,e.files.push({file:t,changes:0,insertions:0,deletions:0,binary:!1})})],er={"":J,"--stat":J,"--numstat":ee,"--name-status":[new g(/([ACDMRTUXB])([0-9]{0,3})\t(.[^\t]*)(\t(.[^\t]*))?$/,(e,[t,r,s,n,a])=>{e.changed++,e.files.push({file:a??s,changes:0,insertions:0,deletions:0,binary:!1,status:rr(P.has(t)&&t),from:rr(!!a&&s!==a&&s),similarity:t4(r)})})],"--name-only":et}}});function sv(e=ea,t=ei,r=""){let s=sy(r);return function(r){let n=tY(r.trim(),!1,es).map(function(r){var n;let a=r.split(en),i=(n=a[0].split(e),t.reduce((e,t,r)=>(e[t]=n[r]||"",e),Object.create({diff:null})));return a.length>1&&a[1].trim()&&(i.diff=s(a[1])),i});return{all:n,latest:n.length&&n[0]||null,total:n.length}}}var sk=tB({"src/lib/parsers/parse-list-log-summary.ts"(){r_(),sw(),sg(),es="òòòòòò ",en=" òò",ea=" ò ",ei=["hash","date","message","refs","author_name","author_email"]}}),sC={};function sx(e){let t=sd(e),r=["diff"];return""===t&&(t="--stat",r.push("--stat=4096")),r.push(...e),s_(r)||{commands:r,format:"utf-8",parser:sy(t)}}function s_(e){let t=e.filter(sm);return t.length>1?rF(`Summary flags are mutually exclusive - pick one of ${t.join(",")}`):t.length&&e.includes("-z")?rF(`Summary flag ${t} parsing is not compatible with null termination option '-z'`):void 0}tq(sC,{diffSummaryTask:()=>sx,validateLogFormatConfig:()=>s_});var sT=tB({"src/lib/tasks/diff.ts"(){sg(),sw(),rI()}});function sR(e={},t=[]){var r;let s,n,a=rn(e.splitter,p,ea),[i,o]=(r=ri(e.format)?e.format:{hash:"%H",date:!1===e.strictDate?"%ai":"%aI",message:"%s",refs:"%D",body:e.multiLine?"%B":"%b",author_name:!1!==e.mailMap?"%aN":"%an",author_email:!1!==e.mailMap?"%aE":"%ae"},s=[],n=[],Object.keys(r).forEach(e=>{s.push(e),n.push(String(r[e]))}),[s,n.join(a)]),u=[],l=[`--pretty=format:${es}${o}${en}`,...t],c=e.n||e["max-count"]||e.maxCount;if(c&&l.push(`--max-count=${c}`),e.from||e.to){let t=!1!==e.symmetric?"...":"..";u.push(`${e.from||""}${t}${e.to||""}`)}return p(e.file)&&l.push("--follow",tc(e.file)),rm(Object.keys(e).reduce((t,r)=>(r in eo||(t[r]=e[r]),t),{}),l),{fields:i,splitter:a,commands:[...l,...u]}}var sO=tB({"src/lib/tasks/log.ts"(){var e;sg(),sk(),r_(),rI(),sT(),(e=eo||{})[e["--pretty"]=0]="--pretty",e[e["max-count"]=1]="max-count",e[e.maxCount=2]="maxCount",e[e.n=3]="n",e[e.file=4]="file",e[e.format=5]="format",e[e.from=6]="from",e[e.to=7]="to",e[e.splitter=8]="splitter",e[e.symmetric=9]="symmetric",e[e.mailMap=10]="mailMap",e[e.multiLine=11]="multiLine",e[e.strictDate=12]="strictDate",eo=e}}),sE=tB({"src/lib/responses/MergeSummary.ts"(){eu=class{constructor(e,t=null,r){this.reason=e,this.file=t,this.meta=r}toString(){return`${this.file}:${this.reason}`}},el=class{constructor(){this.conflicts=[],this.merges=[],this.result="success"}get failed(){return this.conflicts.length>0}get reason(){return this.result}toString(){return this.conflicts.length?`CONFLICTS: ${this.conflicts.join(", ")}`:"OK"}}}}),sS=tB({"src/lib/responses/PullSummary.ts"(){ec=class{constructor(){this.remoteMessages={all:[]},this.created=[],this.deleted=[],this.files=[],this.deletions={},this.insertions={},this.summary={changes:0,deletions:0,insertions:0}}},ep=class{constructor(){this.remote="",this.hash={local:"",remote:""},this.branch={local:"",remote:""},this.message=""}toString(){return this.message}}}});function sA(e){return e.objects=e.objects||{compressing:0,counting:0,enumerating:0,packReused:0,reused:{count:0,delta:0},total:{count:0,delta:0}}}function sN(e){let t=/^\s*(\d+)/.exec(e),r=/delta (\d+)/i.exec(e);return{count:t4(t&&t[1]||"0"),delta:t4(r&&r[1]||"0")}}var sj=tB({"src/lib/parsers/parse-remote-objects.ts"(){r_(),ef=[new b(/^remote:\s*(enumerating|counting|compressing) objects: (\d+),/i,(e,[t,r])=>{let s=t.toLowerCase();Object.assign(sA(e.remoteMessages),{[s]:t4(r)})}),new b(/^remote:\s*(enumerating|counting|compressing) objects: \d+% \(\d+\/(\d+)\),/i,(e,[t,r])=>{let s=t.toLowerCase();Object.assign(sA(e.remoteMessages),{[s]:t4(r)})}),new b(/total ([^,]+), reused ([^,]+), pack-reused (\d+)/i,(e,[t,r,s])=>{let n=sA(e.remoteMessages);n.total=sN(t),n.reused=sN(r),n.packReused=t4(s)})]}});function sF(e,t){return rk({remoteMessages:new ed},eh,t)}var sM=tB({"src/lib/parsers/parse-remote-messages.ts"(){r_(),sj(),eh=[new b(/^remote:\s*(.+)$/,(e,[t])=>(e.remoteMessages.all.push(t.trim()),!1)),...ef,new b([/create a (?:pull|merge) request/i,/\s(https?:\/\/\S+)$/],(e,[t])=>{e.remoteMessages.pullRequestUrl=t}),new b([/found (\d+) vulnerabilities.+\(([^)]+)\)/i,/\s(https?:\/\/\S+)$/],(e,[t,r,s])=>{e.remoteMessages.vulnerabilities={count:t4(t),summary:r,url:s}})],ed=class{constructor(){this.all=[]}}}}),sP=tB({"src/lib/parsers/parse-pull.ts"(){sS(),r_(),sM(),em=/(\d+)\D+((\d+)\D+\(\+\))?(\D+(\d+)\D+\(-\))?/,eg=/^(create|delete) mode \d+ (.+)/,eb=[new g(/^\s*(.+?)\s+\|\s+\d+\s*(\+*)(-*)/,(e,[t,r,s])=>{e.files.push(t),r&&(e.insertions[t]=r.length),s&&(e.deletions[t]=s.length)}),new g(em,(e,[t,,r,,s])=>(void 0!==r||void 0!==s)&&(e.summary.changes=+t||0,e.summary.insertions=+r||0,e.summary.deletions=+s||0,!0)),new g(eg,(e,[t,r])=>{t1(e.files,r),t1("create"===t?e.created:e.deleted,r)})],ey=[new g(/^from\s(.+)$/i,(e,[t])=>void(e.remote=t)),new g(/^fatal:\s(.+)$/,(e,[t])=>void(e.message=t)),new g(/([a-z0-9]+)\.\.([a-z0-9]+)\s+(\S+)\s+->\s+(\S+)$/,(e,[t,r,s,n])=>{e.branch.local=s,e.hash.local=t,e.branch.remote=n,e.hash.remote=r})],ew=(e,t)=>Object.assign(new ec,rk(new ec,eb,[e,t]),sF(e,t))}}),s$=tB({"src/lib/parsers/parse-merge.ts"(){sE(),r_(),sP(),ev=[new g(/^Auto-merging\s+(.+)$/,(e,[t])=>{e.merges.push(t)}),new g(/^CONFLICT\s+\((.+)\): Merge conflict in (.+)$/,(e,[t,r])=>{e.conflicts.push(new eu(t,r))}),new g(/^CONFLICT\s+\((.+\/delete)\): (.+) deleted in (.+) and/,(e,[t,r,s])=>{e.conflicts.push(new eu(t,r,{deleteRef:s}))}),new g(/^CONFLICT\s+\((.+)\):/,(e,[t])=>{e.conflicts.push(new eu(t,null))}),new g(/^Automatic merge failed;\s+(.+)$/,(e,[t])=>{e.result=t})],ek=(e,t)=>Object.assign(eC(e,t),ew(e,t)),eC=e=>rk(new el,ev,e)}});function sD(e){return e.length?{commands:["merge",...e],format:"utf-8",parser(e,t){let r=ek(e,t);if(r.failed)throw new n(r);return r}}:rF("Git.merge requires at least one option")}var sI=tB({"src/lib/tasks/merge.ts"(){tH(),s$(),rI()}}),sU=tB({"src/lib/parsers/parse-push.ts"(){r_(),sM(),ex=[new g(/^Pushing to (.+)$/,(e,[t])=>{e.repo=t}),new g(/^updating local tracking ref '(.+)'/,(e,[t])=>{e.ref={...e.ref||{},local:t}}),new g(/^[=*-]\s+([^:]+):(\S+)\s+\[(.+)]$/,(e,[t,r,s])=>{let n,a,i;e.pushed.push((n=s.includes("deleted"),a=s.includes("tag")||/^refs\/tags/.test(t),{deleted:n,tag:a,branch:!a,new:!(i=!s.includes("new")),alreadyUpdated:i,local:t,remote:r}))}),new g(/^Branch '([^']+)' set up to track remote branch '([^']+)' from '([^']+)'/,(e,[t,r,s])=>{e.branch={...e.branch||{},local:t,remote:r,remoteName:s}}),new g(/^([^:]+):(\S+)\s+([a-z0-9]+)\.\.([a-z0-9]+)$/,(e,[t,r,s,n])=>{e.update={head:{local:t,remote:r},hash:{from:s,to:n}}})],e_=(e,t)=>{let r=eT(e,t),s=sF(e,t);return{...r,...s}},eT=(e,t)=>rk({pushed:[]},ex,[e,t])}}),sL={};function sB(e={},t){return t1(t,"--tags"),sq(e,t)}function sq(e={},t){let r=["push",...t];return e.branch&&r.splice(1,0,e.branch),e.remote&&r.splice(1,0,e.remote),t6(r,"-v"),t1(r,"--verbose"),t1(r,"--porcelain"),{commands:r,format:"utf-8",parser:e_}}tq(sL,{pushTagsTask:()=>sB,pushTask:()=>sq});var sG=tB({"src/lib/tasks/push.ts"(){sU(),r_()}}),sz=tB({"src/lib/tasks/show.ts"(){r_(),rI()}}),sH=tB({"src/lib/responses/FileStatusSummary.ts"(){eR=/^(.+)\0(.+)$/,eO=class{constructor(e,t,r){if(this.path=e,this.index=t,this.working_dir=r,"R"===t||"R"===r){const t=eR.exec(e)||[null,e,e];this.from=t[2]||"",this.path=t[1]||""}}}}});function sW(e){let[t,r]=e.split(i);return{from:r||t,to:t}}function sK(e,t,r){return[`${e}${t}`,r]}function sV(e,...t){return t.map(t=>sK(e,t,(e,t)=>e.conflicted.push(t)))}var sZ=tB({"src/lib/responses/StatusSummary.ts"(){r_(),sH(),eE=class{constructor(){this.not_added=[],this.conflicted=[],this.created=[],this.deleted=[],this.ignored=void 0,this.modified=[],this.renamed=[],this.files=[],this.staged=[],this.ahead=0,this.behind=0,this.current=null,this.tracking=null,this.detached=!1,this.isClean=()=>!this.files.length}},eS=new Map([sK(" ","A",(e,t)=>e.created.push(t)),sK(" ","D",(e,t)=>e.deleted.push(t)),sK(" ","M",(e,t)=>e.modified.push(t)),sK("A"," ",(e,t)=>{e.created.push(t),e.staged.push(t)}),sK("A","M",(e,t)=>{e.created.push(t),e.staged.push(t),e.modified.push(t)}),sK("D"," ",(e,t)=>{e.deleted.push(t),e.staged.push(t)}),sK("M"," ",(e,t)=>{e.modified.push(t),e.staged.push(t)}),sK("M","M",(e,t)=>{e.modified.push(t),e.staged.push(t)}),sK("R"," ",(e,t)=>{e.renamed.push(sW(t))}),sK("R","M",(e,t)=>{let r=sW(t);e.renamed.push(r),e.modified.push(r.to)}),sK("!","!",(e,t)=>{(e.ignored=e.ignored||[]).push(t)}),sK("?","?",(e,t)=>e.not_added.push(t)),...sV("A","A","U"),...sV("D","D","U"),...sV("U","A","D","U"),["##",(e,t)=>{let r=/ahead (\d+)/.exec(t);e.ahead=r&&+r[1]||0,e.behind=(r=/behind (\d+)/.exec(t))&&+r[1]||0,r=/^(.+?(?=(?:\.{3}|\s|$)))/.exec(t),e.current=rn(r?.[1],p,null),r=/\.{3}(\S*)/.exec(t),e.tracking=rn(r?.[1],p,null),(r=/\son\s(\S+?)(?=\.{3}|$)/.exec(t))&&(e.current=rn(r?.[1],p,e.current)),e.detached=/\(no branch\)/.test(t)}]]),eA=function(e){let t=e.split(i),r=new eE;for(let e=0,s=t.length;e<s;){let s=t[e++].trim();s&&("R"===s.charAt(0)&&(s+=i+(t[e++]||"")),function(e,t){let r=t.trim();switch(" "){case r.charAt(2):return s(r.charAt(0),r.charAt(1),r.slice(3));case r.charAt(1):return s(" ",r.charAt(0),r.slice(2));default:return}function s(t,r,s){let n=`${t}${r}`,a=eS.get(n);a&&a(e,s),"##"!==n&&"!!"!==n&&e.files.push(new eO(s,t,r))}}(r,s))}return r}}}),sX=tB({"src/lib/tasks/status.ts"(){sZ(),eN=["--null","-z"]}});function sQ(e=0,t=0,r=0,s="",n=!0){return Object.defineProperty({major:e,minor:t,patch:r,agent:s,installed:n},"toString",{value(){return`${this.major}.${this.minor}.${this.patch}`},configurable:!1,enumerable:!1})}function sY(e){return e===ej?sQ(0,0,0,"",!1):rk(sQ(0,0,0,e),eF,e)}var sJ=tB({"src/lib/tasks/version.ts"(){r_(),ej="installed=false",eF=[new g(/version (\d+)\.(\d+)\.(\d+)(?:\s*\((.+)\))?/,(e,[t,r,s,n=""])=>{Object.assign(e,sQ(t4(t),t4(r),t4(s),n))}),new g(/version (\d+)\.(\d+)\.(\D+)(.+)?$/,(e,[t,r,s,n=""])=>{Object.assign(e,sQ(t4(t),t4(r),s,n))})]}});function s0(e,t,r,...s){return p(r)?t(r,rn(s[0],p),rg(arguments)):rF(`git.${e}() requires a string 'repoPath'`)}var s1=tB({"src/lib/tasks/clone.ts"(){rI(),r_(),eM=(e,t,r)=>{let s=["clone",...r];return p(e)&&s.push(tc(e)),p(t)&&s.push(tc(t)),rM(s)},eP=(e,t,r)=>(t1(r,"--mirror"),eM(e,t,r))}}),s3={};tq(s3,{SimpleGitApi:()=>e$});var s6=tB({"src/lib/simple-git-api.ts"(){st(),ss(),sa(),si(),sl(),rV(),sc(),rX(),sp(),sh(),sO(),sI(),sG(),sz(),sX(),rI(),sJ(),r_(),s1(),Object.assign((e$=class{constructor(e){this._executor=e}_runTask(e,t){let r=this._executor.chain(),s=r.push(e);return t&&function(e,t,r=o){t.then(e=>{r(null,e)},t=>{var s;let a;t?.task===e&&r(t instanceof n?(s=t,a=e=>{console.warn(`simple-git deprecation notice: accessing GitResponseError.${e} should be GitResponseError.git.${e}, this will no longer be available in version 3`),a=o},Object.create(s,Object.getOwnPropertyNames(s.git).reduce(function(e,t){return t in s||(e[t]={enumerable:!1,configurable:!1,get:()=>(a(t),s.git[t])}),e},{}))):t,void 0)})}(e,s,t),Object.create(this,{then:{value:s.then.bind(s)},catch:{value:s.catch.bind(s)},_executor:{value:r}})}add(e){return this._runTask(rM(["add",...t9(e)]),ry(arguments))}cwd(e){let t=ry(arguments);return"string"==typeof e?this._runTask(sr(e,this._executor),t):"string"==typeof e?.path?this._runTask(sr(e.path,e.root&&this._executor||void 0),t):this._runTask(rF("Git.cwd: workingDirectory must be supplied as a string"),t)}hashObject(e,t){var r;let s;return this._runTask((r=!0===t,s=["hash-object",e],r&&s.push("-w"),rM(s,!0)),ry(arguments))}init(e){return this._runTask(function(e=!1,t,r){let s=["init",...r];return e&&!s.includes(X)&&s.splice(1,0,X),{commands:s,format:"utf-8",parser:e=>(function(e,t,r){let s,n=String(r).trim();if(s=V.exec(n))return new K(e,t,!1,s[1]);if(s=Z.exec(n))return new K(e,t,!0,s[1]);let a="",i=n.split(" ");for(;i.length;)if("in"===i.shift()){a=i.join(" ");break}return new K(e,t,/^re/i.test(n),a)})(s.includes("--bare"),t,e)}}(!0===e,this._executor.cwd,rg(arguments)),ry(arguments))}merge(){return this._runTask(sD(rg(arguments)),ry(arguments))}mergeFromTo(e,t){return p(e)&&p(t)?this._runTask(sD([e,t,...rg(arguments)]),ry(arguments,!1)):this._runTask(rF("Git.mergeFromTo requires that the 'remote' and 'branch' arguments are supplied as strings"))}outputHandler(e){return this._executor.outputHandler=e,this}push(){let e=sq({remote:rn(arguments[0],p),branch:rn(arguments[1],p)},rg(arguments));return this._runTask(e,ry(arguments))}stash(){return this._runTask(rM(["stash",...rg(arguments)]),ry(arguments))}status(){var e;return this._runTask((e=rg(arguments),{format:"utf-8",commands:["status","--porcelain","-b","-u","--null",...e.filter(e=>!eN.includes(e))],parser:e=>eA(e)}),ry(arguments))}}).prototype,{checkout(){return this._runTask(sn(rg(arguments,1)),ry(arguments))},checkoutBranch(e,t){return this._runTask(sn(["-b",e,t,...rg(arguments)]),ry(arguments))},checkoutLocalBranch(e){return this._runTask(sn(["-b",e,...rg(arguments)]),ry(arguments))}},{clone(e,...t){return this._runTask(s0("clone",eM,rn(e,p),...t),ry(arguments))},mirror(e,...t){return this._runTask(s0("mirror",eP,rn(e,p),...t),ry(arguments))}},{commit(e,...t){var r,s,n;let a=ry(arguments),i=!f(e)&&rF("git.commit: requires the commit message to be supplied as a string/string[]")||(r=t9(e),s=t9(rn(t[0],f,[])),n=[...t8(rn(t[1],l,[])),...rg(arguments,0,!0)],{commands:["-c","core.abbrev=40","commit",...t5(r,"-m"),...s,...n],format:"utf-8",parser:so});return this._runTask(i,a)}},{addConfig(e,t,...r){var s,n;let a;return this._runTask((s=!0===r[0],n=rK(r[1],"local"),a=["config",`--${n}`],s&&a.push("--add"),a.push(e,t),{commands:a,format:"utf-8",parser:e=>e}),ry(arguments))},getConfig(e,t){var r;let s;return this._runTask((r=rK(t,void 0),s=["config","--null","--show-origin","--get-all",e],r&&s.splice(1,0,`--${r}`),{commands:s,format:"utf-8",parser:t=>(function(e,t){let r=null,s=[],n=new Map;for(let a of rH(e,t))a.key===t&&(s.push(r=a.value),n.has(a.file)||n.set(a.file,[]),n.get(a.file).push(r));return{key:t,paths:Array.from(n.keys()),scopes:n,value:r,values:s}})(t,e)}),ry(arguments))},listConfig(...e){var t;let r;return this._runTask((t=rK(e[0],void 0),r=["config","--list","--show-origin","--null"],t&&r.push(`--${t}`),{commands:r,format:"utf-8",parser:e=>(function(e){let t=new j;for(let r of rH(e))t.addValue(r.file,String(r.key),r.value);return t})(e)}),ry(arguments))}},{countObjects(){return this._runTask({commands:["count-objects","--verbose"],format:"utf-8",parser:e=>rk({count:0,garbage:0,inPack:0,packs:0,prunePackable:0,size:0,sizeGarbage:0,sizePack:0},[H],e)})}},{firstCommit(){return this._runTask(rM(["rev-list","--max-parents=0","HEAD"],!0),ry(arguments))}},{grep(e){let t=ry(arguments),r=rg(arguments);for(let e of $)if(r.includes(e))return this._runTask(rF(`git.grep: use of "${e}" is not supported.`),t);"string"==typeof e&&(e=(function(...e){return new U().param(...e)})().param(e));let s=["grep","--null","-n","--full-name",...r,...e];return this._runTask({commands:s,format:"utf-8",parser:e=>{let t,r;return t=new Set,r={},tJ(e,e=>{let[s,n,a]=e.split(i);t.add(s),(r[s]=r[s]||[]).push({line:t4(n),path:s,preview:a})}),{paths:t,results:r}}},t)}},{log(...e){var t,r;let s,n=ry(arguments),a=sR(rb(arguments),t8(rn(arguments[0],l,[]))),i=function(e,t){return p(e)&&p(t)&&rF("git.log(string, string) should be replaced with git.log({ from: string, to: string })")}(...e)||s_(a.commands)||(s=sv((t=a).splitter,t.fields,sd(r=t.commands)),{commands:["log",...r],format:"utf-8",parser:s});return this._runTask(i,n)}},{showBuffer(){let e=["show",...rg(arguments,1)];return e.includes("--binary")||e.splice(1,0,"--binary"),this._runTask(rP(e),ry(arguments))},show(){let e=["show",...rg(arguments,1)];return this._runTask(rM(e),ry(arguments))}},{version(){return this._runTask({commands:["--version"],format:"utf-8",parser:sY,onError(e,t,r,s){if(-2===e.exitCode)return r(Buffer.from(ej));s(t)}})}})}}),s9={};tq(s9,{Scheduler:()=>eD});var s2=tB({"src/lib/runners/scheduler.ts"(){let e;r_(),r9(),e=0,eD=class{constructor(e=2){this.concurrency=e,this.logger=r6("","scheduler"),this.pending=[],this.running=[],this.logger("Constructed, concurrency=%s",e)}schedule(){if(!this.pending.length||this.running.length>=this.concurrency)return void this.logger("Schedule attempt ignored, pending=%s running=%s concurrency=%s",this.pending.length,this.running.length,this.concurrency);let e=t1(this.running,this.pending.shift());this.logger("Attempting id=%s",e.id),e.done(()=>{this.logger("Completing id=",e.id),t6(this.running,e),this.schedule()})}next(){let{promise:t,id:r}=t1(this.pending,(()=>{e++;let{promise:t,done:r}=(0,td.createDeferred)();return{promise:t,done:r,id:e}})());return this.logger("Scheduling id=%s",r),this.schedule(),t}}}}),s8={};function s4(e,t){return rM(["apply",...t,...e])}tq(s8,{applyPatchTask:()=>s4});var s5=tB({"src/lib/tasks/apply-patch.ts"(){rI()}}),s7=tB({"src/lib/responses/BranchDeleteSummary.ts"(){eI=class{constructor(){this.all=[],this.branches={},this.errors=[]}get success(){return!this.errors.length}}}});function ne(e,t){return 1===t&&eU.test(e)}var nt=tB({"src/lib/parsers/parse-branch-delete.ts"(){s7(),r_(),eU=/^error[^']+'([^']+)'/m,eL=[new g(/(\S+)\s+\(\S+\s([^)]+)\)/,(e,[t,r])=>{let s={branch:t,hash:r,success:!0};e.all.push(s),e.branches[t]=s}),new g(eU,(e,[t])=>{let r={branch:t,hash:null,success:!1};e.errors.push(r),e.all.push(r),e.branches[t]=r})],eB=(e,t)=>rk(new eI,eL,[e,t])}}),nr=tB({"src/lib/responses/BranchSummary.ts"(){eq=class{constructor(){this.all=[],this.branches={},this.current="",this.detached=!1}push(e,t,r,s,n){"*"===e&&(this.detached=t,this.current=r),this.all.push(r),this.branches[r]={current:"*"===e,linkedWorkTree:"+"===e,name:r,commit:s,label:n}}}}});function ns(e){return e?e.charAt(0):""}function nn(e,t=!1){return rk(new eq,t?[ez]:eG,e)}var na=tB({"src/lib/parsers/parse-branch.ts"(){nr(),r_(),eG=[new g(/^([*+]\s)?\((?:HEAD )?detached (?:from|at) (\S+)\)\s+([a-z0-9]+)\s(.*)$/,(e,[t,r,s,n])=>{e.push(ns(t),!0,r,s,n)}),new g(/^([*+]\s)?(\S+)\s+([a-z0-9]+)\s?(.*)$/s,(e,[t,r,s,n])=>{e.push(ns(t),!1,r,s,n)})],ez=new g(/^(\S+)$/s,(e,[t])=>{e.push("*",!1,t,"","")})}}),ni={};function no(e){let t=["-d","-D","--delete"];return e.some(e=>t.includes(e))}function nu(e){let t=no(e),r=e.includes("--show-current"),s=["branch",...e];return 1===s.length&&s.push("-a"),s.includes("-v")||s.splice(1,0,"-v"),{format:"utf-8",commands:s,parser:(e,s)=>t?eB(e,s).all[0]:nn(e,r)}}function nl(){return{format:"utf-8",commands:["branch","-v"],parser:e=>nn(e)}}function nc(e,t=!1){return{format:"utf-8",commands:["branch","-v",t?"-D":"-d",...e],parser:(e,t)=>eB(e,t),onError({exitCode:e,stdOut:t},r,s,n){if(!ne(String(r),e))return n(r);s(t)}}}function np(e,t=!1){let r={format:"utf-8",commands:["branch","-v",t?"-D":"-d",e],parser:(t,r)=>eB(t,r).branches[e],onError({exitCode:e,stdErr:t,stdOut:s},a,i,o){if(!ne(String(a),e))return o(a);throw new n(r.parser(t7(s),t7(t)),String(a))}};return r}tq(ni,{branchLocalTask:()=>nl,branchTask:()=>nu,containsDeleteBranchCommand:()=>no,deleteBranchTask:()=>np,deleteBranchesTask:()=>nc});var nf=tB({"src/lib/tasks/branch.ts"(){tH(),nt(),na(),r_()}});function nh(e){let t=e.trim().replace(/^["']|["']$/g,"");return t&&(0,tm.normalize)(t)}var nd=tB({"src/lib/responses/CheckIgnore.ts"(){eH=e=>e.split(/\n/g).map(nh).filter(Boolean)}}),nm={};function ng(e){return{commands:["check-ignore",...e],format:"utf-8",parser:eH}}tq(nm,{checkIgnoreTask:()=>ng});var nb=tB({"src/lib/tasks/check-ignore.ts"(){nd()}});function ny(e,t){return rk({raw:e,remote:null,branches:[],tags:[],updated:[],deleted:[]},eW,[e,t])}var nw=tB({"src/lib/parsers/parse-fetch.ts"(){r_(),eW=[new g(/From (.+)$/,(e,[t])=>{e.remote=t}),new g(/\* \[new branch]\s+(\S+)\s*-> (.+)$/,(e,[t,r])=>{e.branches.push({name:t,tracking:r})}),new g(/\* \[new tag]\s+(\S+)\s*-> (.+)$/,(e,[t,r])=>{e.tags.push({name:t,tracking:r})}),new g(/- \[deleted]\s+\S+\s*-> (.+)$/,(e,[t])=>{e.deleted.push({tracking:t})}),new g(/\s*([^.]+)\.\.(\S+)\s+(\S+)\s*-> (.+)$/,(e,[t,r,s,n])=>{e.updated.push({name:s,tracking:n,to:r,from:t})})]}}),nv={};function nk(e){return/^--upload-pack(=|$)/.test(e)}function nC(e,t,r){let s=["fetch",...r];return(e&&t&&s.push(e,t),s.find(nk))?rF("git.fetch: potential exploit argument blocked."):{commands:s,format:"utf-8",parser:ny}}tq(nv,{fetchTask:()=>nC});var nx=tB({"src/lib/tasks/fetch.ts"(){nw(),rI()}});function n_(e){return rk({moves:[]},eK,e)}var nT=tB({"src/lib/parsers/parse-move.ts"(){r_(),eK=[new g(/^Renaming (.+) to (.+)$/,(e,[t,r])=>{e.moves.push({from:t,to:r})})]}}),nR={};function nO(e,t){return{commands:["mv","-v",...t9(e),t],format:"utf-8",parser:n_}}tq(nR,{moveTask:()=>nO});var nE=tB({"src/lib/tasks/move.ts"(){nT(),r_()}}),nS={};function nA(e,t,r){let s=["pull",...r];return e&&t&&s.splice(1,0,e,t),{commands:s,format:"utf-8",parser:(e,t)=>ew(e,t),onError(e,t,r,s){var a,i;let o,u=(a=t7(e.stdOut),i=t7(e.stdErr),(o=rk(new ep,ey,[a,i])).message&&o);if(u)return s(new n(u));s(t)}}}tq(nS,{pullTask:()=>nA});var nN=tB({"src/lib/tasks/pull.ts"(){tH(),sP(),r_()}});function nj(e){let t={};return nM(e,([e])=>t[e]={name:e}),Object.values(t)}function nF(e){let t={};return nM(e,([e,r,s])=>{Object.hasOwn(t,e)||(t[e]={name:e,refs:{fetch:"",push:""}}),s&&r&&(t[e].refs[s.replace(/[^a-z]/g,"")]=r)}),Object.values(t)}function nM(e,t){tJ(e,e=>t(e.split(/\s+/)))}var nP=tB({"src/lib/responses/GetRemoteSummary.ts"(){r_()}}),n$={};function nD(e,t,r){return rM(["remote","add",...r,e,t])}function nI(e){let t=["remote"];return e&&t.push("-v"),{commands:t,format:"utf-8",parser:e?nF:nj}}function nU(e){let t=[...e];return"ls-remote"!==t[0]&&t.unshift("ls-remote"),rM(t)}function nL(e){let t=[...e];return"remote"!==t[0]&&t.unshift("remote"),rM(t)}function nB(e){return rM(["remote","remove",e])}tq(n$,{addRemoteTask:()=>nD,getRemotesTask:()=>nI,listRemotesTask:()=>nU,remoteTask:()=>nL,removeRemoteTask:()=>nB});var nq=tB({"src/lib/tasks/remote.ts"(){nP(),rI()}}),nG={};function nz(e={},t){let r=sR(e),s=["stash","list",...r.commands,...t],n=sv(r.splitter,r.fields,sd(s));return s_(s)||{commands:s,format:"utf-8",parser:n}}tq(nG,{stashListTask:()=>nz});var nH=tB({"src/lib/tasks/stash-list.ts"(){sg(),sk(),sT(),sO()}}),nW={};function nK(e,t){return nZ(["add",e,t])}function nV(e){return nZ(["init",...e])}function nZ(e){let t=[...e];return"submodule"!==t[0]&&t.unshift("submodule"),rM(t)}function nX(e){return nZ(["update",...e])}tq(nW,{addSubModuleTask:()=>nK,initSubModuleTask:()=>nV,subModuleTask:()=>nZ,updateSubModuleTask:()=>nX});var nQ=tB({"src/lib/tasks/sub-module.ts"(){rI()}});function nY(e,t){return e===t?0:e>t?1:-1}function nJ(e){return e.trim()}function n0(e){return"string"==typeof e&&parseInt(e.replace(/^\D+/g,""),10)||0}var n1=tB({"src/lib/responses/TagList.ts"(){eV=class{constructor(e,t){this.all=e,this.latest=t}},eZ=function(e,t=!1){let r=e.split("\n").map(nJ).filter(Boolean);t||r.sort(function(e,t){let r=e.split("."),s=t.split(".");if(1===r.length||1===s.length){var n,a;let e;return n=n0(r[0]),a=n0(s[0]),(e=Number.isNaN(n))!==Number.isNaN(a)?e?1:-1:e?nY(n,a):0}for(let e=0,t=Math.max(r.length,s.length);e<t;e++){let t=nY(n0(r[e]),n0(s[e]));if(t)return t}return 0});let s=t?r[0]:[...r].reverse().find(e=>e.indexOf(".")>=0);return new eV(r,s)}}}),n3={};function n6(e=[]){let t=e.some(e=>/^--sort=/.test(e));return{format:"utf-8",commands:["tag","-l",...e],parser:e=>eZ(e,t)}}function n9(e){return{format:"utf-8",commands:["tag",e],parser:()=>({name:e})}}function n2(e,t){return{format:"utf-8",commands:["tag","-a","-m",t,e],parser:()=>({name:e})}}tq(n3,{addAnnotatedTagTask:()=>n2,addTagTask:()=>n9,tagListTask:()=>n6});var n8=tB({"src/lib/tasks/tag.ts"(){n1()}}),n4=(t={"src/git.js"(e,t){var{GitExecutor:r}=(se(),tG(r7)),{SimpleGitApi:s}=(s6(),tG(s3)),{Scheduler:n}=(s2(),tG(s9)),{adhocExecTask:a,configurationErrorTask:i}=(rI(),tG(rN)),{asArray:o,filterArray:u,filterPrimitives:l,filterString:c,filterStringOrStringArray:p,filterType:f,getTrailingOptions:h,trailingFunctionArgument:d,trailingOptionsArgument:m}=(r_(),tG(rx)),{applyPatchTask:g}=(s5(),tG(s8)),{branchTask:b,branchLocalTask:y,deleteBranchesTask:w,deleteBranchTask:v}=(nf(),tG(ni)),{checkIgnoreTask:k}=(nb(),tG(nm)),{checkIsRepoTask:C}=(rS(),tG(rT)),{cleanWithOptionsTask:x,isCleanOptionsArray:_}=(rz(),tG(rU)),{diffSummaryTask:T}=(sT(),tG(sC)),{fetchTask:R}=(nx(),tG(nv)),{moveTask:O}=(nE(),tG(nR)),{pullTask:E}=(nN(),tG(nS)),{pushTagsTask:S}=(sG(),tG(sL)),{addRemoteTask:A,getRemotesTask:N,listRemotesTask:j,remoteTask:F,removeRemoteTask:M}=(nq(),tG(n$)),{getResetMode:P,resetTask:$}=(r1(),tG(rQ)),{stashListTask:D}=(nH(),tG(nG)),{addSubModuleTask:I,initSubModuleTask:U,subModuleTask:L,updateSubModuleTask:B}=(nQ(),tG(nW)),{addAnnotatedTagTask:q,addTagTask:G,tagListTask:z}=(n8(),tG(n3)),{straightThroughBufferTask:H,straightThroughStringTask:W}=(rI(),tG(rN));function K(e,t){this._plugins=t,this._executor=new r(e.baseDir,new n(e.maxConcurrentProcesses),t),this._trimmed=e.trimmed}(K.prototype=Object.create(s.prototype)).constructor=K,K.prototype.customBinary=function(e){return this._plugins.reconfigure("binary",e),this},K.prototype.env=function(e,t){return 1==arguments.length&&"object"==typeof e?this._executor.env=e:(this._executor.env=this._executor.env||{})[e]=t,this},K.prototype.stashList=function(e){return this._runTask(D(m(arguments)||{},u(e)&&e||[]),d(arguments))},K.prototype.mv=function(e,t){return this._runTask(O(e,t),d(arguments))},K.prototype.checkoutLatestTag=function(e){var t=this;return this.pull(function(){t.tags(function(r,s){t.checkout(s.latest,e)})})},K.prototype.pull=function(e,t,r,s){return this._runTask(E(f(e,c),f(t,c),h(arguments)),d(arguments))},K.prototype.fetch=function(e,t){return this._runTask(R(f(e,c),f(t,c),h(arguments)),d(arguments))},K.prototype.silent=function(e){return this._runTask(a(()=>console.warn("simple-git deprecation notice: git.silent: logging should be configured using the `debug` library / `DEBUG` environment variable, this method will be removed.")))},K.prototype.tags=function(e,t){return this._runTask(z(h(arguments)),d(arguments))},K.prototype.rebase=function(){return this._runTask(W(["rebase",...h(arguments)]),d(arguments))},K.prototype.reset=function(e){return this._runTask($(P(e),h(arguments)),d(arguments))},K.prototype.revert=function(e){let t=d(arguments);return"string"!=typeof e?this._runTask(i("Commit must be a string"),t):this._runTask(W(["revert",...h(arguments,0,!0),e]),t)},K.prototype.addTag=function(e){let t="string"==typeof e?G(e):i("Git.addTag requires a tag name");return this._runTask(t,d(arguments))},K.prototype.addAnnotatedTag=function(e,t){return this._runTask(q(e,t),d(arguments))},K.prototype.deleteLocalBranch=function(e,t,r){return this._runTask(v(e,"boolean"==typeof t&&t),d(arguments))},K.prototype.deleteLocalBranches=function(e,t,r){return this._runTask(w(e,"boolean"==typeof t&&t),d(arguments))},K.prototype.branch=function(e,t){return this._runTask(b(h(arguments)),d(arguments))},K.prototype.branchLocal=function(e){return this._runTask(y(),d(arguments))},K.prototype.raw=function(e){let t=!Array.isArray(e),r=[].slice.call(t?arguments:e,0);for(let e=0;e<r.length&&t;e++)if(!l(r[e])){r.splice(e,r.length-e);break}r.push(...h(arguments,0,!0));var s=d(arguments);return r.length?this._runTask(W(r,this._trimmed),s):this._runTask(i("Raw: must supply one or more command to execute"),s)},K.prototype.submoduleAdd=function(e,t,r){return this._runTask(I(e,t),d(arguments))},K.prototype.submoduleUpdate=function(e,t){return this._runTask(B(h(arguments,!0)),d(arguments))},K.prototype.submoduleInit=function(e,t){return this._runTask(U(h(arguments,!0)),d(arguments))},K.prototype.subModule=function(e,t){return this._runTask(L(h(arguments)),d(arguments))},K.prototype.listRemote=function(){return this._runTask(j(h(arguments)),d(arguments))},K.prototype.addRemote=function(e,t,r){return this._runTask(A(e,t,h(arguments)),d(arguments))},K.prototype.removeRemote=function(e,t){return this._runTask(M(e),d(arguments))},K.prototype.getRemotes=function(e,t){return this._runTask(N(!0===e),d(arguments))},K.prototype.remote=function(e,t){return this._runTask(F(h(arguments)),d(arguments))},K.prototype.tag=function(e,t){let r=h(arguments);return"tag"!==r[0]&&r.unshift("tag"),this._runTask(W(r),d(arguments))},K.prototype.updateServerInfo=function(e){return this._runTask(W(["update-server-info"]),d(arguments))},K.prototype.pushTags=function(e,t){let r=S({remote:f(e,c)},h(arguments));return this._runTask(r,d(arguments))},K.prototype.rm=function(e){return this._runTask(W(["rm","-f",...o(e)]),d(arguments))},K.prototype.rmKeepLocal=function(e){return this._runTask(W(["rm","--cached",...o(e)]),d(arguments))},K.prototype.catFile=function(e,t){return this._catFile("utf-8",arguments)},K.prototype.binaryCatFile=function(){return this._catFile("buffer",arguments)},K.prototype._catFile=function(e,t){var r=d(t),s=["cat-file"],n=t[0];if("string"==typeof n)return this._runTask(i("Git.catFile: options must be supplied as an array of strings"),r);Array.isArray(n)&&s.push.apply(s,n);let a="buffer"===e?H(s):W(s);return this._runTask(a,r)},K.prototype.diff=function(e,t){let r=c(e)?i("git.diff: supplying options as a single string is no longer supported, switch to an array of strings"):W(["diff",...h(arguments)]);return this._runTask(r,d(arguments))},K.prototype.diffSummary=function(){return this._runTask(T(h(arguments,1)),d(arguments))},K.prototype.applyPatch=function(e){let t=p(e)?g(o(e),h([].slice.call(arguments,1))):i("git.applyPatch requires one or more string patches as the first argument");return this._runTask(t,d(arguments))},K.prototype.revparse=function(){let e=["rev-parse",...h(arguments,!0)];return this._runTask(W(e,!0),d(arguments))},K.prototype.clean=function(e,t,r){let s=_(e),n=s&&e.join("")||f(e,c)||"",a=h([].slice.call(arguments,+!!s));return this._runTask(x(n,a),d(arguments))},K.prototype.exec=function(e){return this._runTask({commands:[],format:"utf-8",parser(){"function"==typeof e&&e()}})},K.prototype.clearQueue=function(){return this._runTask(a(()=>console.warn("simple-git deprecation notice: clearQueue() is deprecated and will be removed, switch to using the abortPlugin instead.")))},K.prototype.checkIgnore=function(e,t){return this._runTask(k(o(f(e,p,[]))),d(arguments))},K.prototype.checkIsRepo=function(e,t){return this._runTask(C(f(e,c)),d(arguments))},t.exports=K}},function(){return r||(0,t[tU(t)[0]])((r={exports:{}}).exports,r),r.exports});tz();var n5=class extends s{constructor(e,t){super(void 0,t),this.config=e}};tz(),tz();var n7=class extends s{constructor(e,t,r){super(e,r),this.task=e,this.plugin=t,Object.setPrototypeOf(this,new.target.prototype)}};tH(),tW(),rS(),rz(),rV(),rZ(),rX(),r1(),r_(),r_();var ae=(0,td.deferred)().promise;r_();var at="Invalid value supplied for custom binary, restricted characters must be removed or supply the unsafe.allowUnsafeCustomBinary option";function ar(e){return!e||!/^([a-z]:)?([a-z0-9/.\\_~-]+)$/i.test(e)}function as(e,t){if(e.length<1||e.length>2)throw new n7(void 0,"binary","Invalid value supplied for custom binary, requires a single string or an array containing either one or two strings");if(e.some(ar))if(t)console.warn(at);else throw new n7(void 0,"binary",at);let[r,s]=e;return{binary:r,prefix:s}}function an(e){return{type:"task.error",action(t,r){let n=e(t.error,{stdErr:r.stdErr,stdOut:r.stdOut,exitCode:r.exitCode});return Buffer.isBuffer(n)?{error:new s(void 0,n.toString("utf-8"))}:{error:n}}}}tz(),r_();var aa=class{constructor(){this.plugins=new Set,this.events=new t$.EventEmitter}on(e,t){this.events.on(e,t)}reconfigure(e,t){this.events.emit(e,t)}append(e,t){let r=t1(this.plugins,{type:e,action:t});return()=>this.plugins.delete(r)}add(e){let t=[];return t9(e).forEach(e=>e&&this.plugins.add(t1(t,e))),()=>{t.forEach(e=>this.plugins.delete(e))}}exec(e,t,r){let s=t,n=Object.freeze(Object.create(r));for(let t of this.plugins)t.type===e&&(s=t.action(s,n));return s}};r_(),r_(),r_();var ai=n4();tH();var ao=function(e,t){var r;let s,n,a,i,o=new aa,u=rh(e&&("string"==typeof e?{baseDir:e}:e)||{},t);if(!t0(u.baseDir))throw new n5(u,"Cannot use simple-git on a directory that does not exist");return Array.isArray(u.config)&&o.add((s=t5(u.config,"-c"),{type:"spawn.args",action:e=>[...s,...e]})),o.add(function(e={}){return{type:"spawn.args",action(t,{env:r}){var s,n;let a,i,o;for(let u of(s=t,n=r,[...function(...e){var t;let r,{flags:s,taskIndex:n}=function(e,t=[]){let r=0;for(;r<e.length;){let s=String(e[r]);if(!s.startsWith("-")||s.length<2)break;let n=tR(s),a=r+1;for(let r of n){let s={name:r.name,value:r.value,absorbedNext:!1,isGlobal:!0};r.needsNext&&void 0===s.value&&a<e.length&&(s.value=String(e[a]),s.absorbedNext=!0,a++),t.push(s)}r=a}return{flags:t,taskIndex:r}}(e),a=n<e.length?String(e[n]).toLowerCase():null,{positionals:i,pathspecs:o}=function(e,t,r=[]){let s,n=(s=t_[t??""]??tT,{short:new Map([...tC.short.entries(),...s.short.entries()]),long:s.long}),a=[],i=[],o=0;for(;o<e.length;){let t=e[o];if(tp(t)){i.push(...tf(t)),o++;continue}let s=String(t);if("--"===s){for(let t=o+1;t<e.length;t++){let r=e[t];tp(r)?i.push(...tf(r)):i.push(String(r))}break}if(!s.startsWith("-")||s.length<2){a.push(s),o++;continue}let u=tR(s,n),l=o+1;for(let t of u){let s={name:t.name,value:t.value,absorbedNext:!1,isGlobal:!1};t.needsNext&&void 0===s.value&&l<e.length&&!tp(e[l])&&(s.value=String(e[l]),s.absorbedNext=!0,l++),r.push(s)}o=l}return{flags:r,positionals:a,pathspecs:i}}(null!==a?e.slice(n+1):[],a,s),u=(r={read:[],write:[...function*(e){for(let t of e){let e=function({name:e}){return"-c"===e||"--config"===e?"inline":"--config-env"===e?"env":void 0}(t),r=e&&function(e){let t=e?.indexOf("=")||-1;return!e||t<0?null:{key:e.slice(0,t).trim().toLowerCase(),value:e.slice(t+1)}}(t.value);r&&(yield{...r,scope:e})}}(s)]},"config"===a&&function(e,t,r){if(null===r)return;let s=r.isWrite&&void 0!==r.value?{key:r.key,value:r.value,scope:t}:{key:r.key,scope:t};r.isWrite?e.write.push(s):e.read.push(s)}(r,function(e){for(let{name:t}of tg(e,"task"))switch(t){case"--global":return"global";case"--system":return"system";case"--worktree":return"worktree";case"--local":return"local";case"--file":case"-f":return"file"}return"local"}(s),function(e,t){for(let{name:r}of tg(e,"task")){if(tb.has(r))return tk(!0,t);if(ty.has(r))return tk(!1,t)}let r=t.at(0)?.toLowerCase();return void 0===r?null:tw.has(r)?tk(!0,t.slice(1)):tv.has(r)?tk(!1,t.slice(1)):1===t.length?tk(!1,t):tk(!0,t)}(s,i)),r);return{task:a,flags:s.map(tF),paths:o,config:u,vulnerabilities:Object.defineProperty(t=tj(a,s,u),"vulnerabilities",{value:t})}}(...s).vulnerabilities,...(i={read:[],write:[...function*(e){let t=parseInt(e.git_config_count??"0",10);for(let r=0;r<t;r++){let t=e[`git_config_key_${r}`],s=e[`git_config_value_${r}`];void 0!==t&&(yield{key:t.toLowerCase().trim(),value:s,scope:"env"})}}(a=function(e){let t={};for(let[r,s]of Object.entries(e)){let e=r.toLowerCase().trim();(tP(e)||e.startsWith("git"))&&(t[e]=String(s))}return t}(n))]},o=[...function*(e){for(let t of Object.keys(e))if(tP(t)){let e=tM[t];yield{category:e,message:`Use of "${t.toUpperCase()}" is not permitted without enabling ${e}`}}}(a),...tj(null,[],i)],{config:i,vulnerabilities:o}).vulnerabilities]))if(!0!==e[u.category])throw new n7(void 0,"unsafe",u.message);return t}}}(u.unsafe)),o.add(function({onClose:e=!0,onExit:t=50}={}){function r(e,t,r){!1!==e&&(!0===e?t.promise:t.promise.then(()=>rt(e))).then(r.done)}return{type:"spawn.after",async action(s,{spawned:n,close:a}){let i,o,u,l=(i=-1,o={close:(0,td.deferred)(),closeTimeout:(0,td.deferred)(),exit:(0,td.deferred)(),exitTimeout:(0,td.deferred)()},u=Promise.race([!1===e?ae:o.closeTimeout.promise,!1===t?ae:o.exitTimeout.promise]),r(e,o.close,o.closeTimeout),r(t,o.exit,o.exitTimeout),{close(e){i=e,o.close.done()},exit(e){i=e,o.exit.done()},get exitCode(){return i},result:u}),c=!0,p=()=>void(c=!1);n.stdout?.on("data",p),n.stderr?.on("data",p),n.on("error",p),n.on("close",e=>l.close(e)),n.on("exit",e=>l.exit(e));try{await l.result,c&&await rt(50),a(l.exitCode)}catch(e){a(l.exitCode,e)}}}}(u.completion)),u.abort&&o.add(function(e){if(e)return[{type:"spawn.before",action(t,r){e.aborted&&r.kill(new n7(void 0,"abort","Abort already signaled"))}},{type:"spawn.after",action(t,r){function s(){r.kill(new n7(void 0,"abort","Abort signal received"))}e.addEventListener("abort",s),r.spawned.on("close",()=>e.removeEventListener("abort",s))}}]}(u.abort)),u.progress&&o.add((r=u.progress,n="--progress",a=["checkout","clone","fetch","pull","push"],[{type:"spawn.args",action:(e,t)=>a.includes(t.method)?t3(e,n):e},{type:"spawn.after",action(e,t){t.commands.includes(n)&&t.spawned.stderr?.on("data",e=>{let s=/^([\s\S]+?):\s*(\d+)% \((\d+)\/(\d+)\)/.exec(e.toString("utf8"));s&&r({method:t.method,stage:String(s[1].toLowerCase().split(" ",1))||"unknown",progress:t4(s[2]),processed:t4(s[3]),total:t4(s[4])})})}}])),u.timeout&&o.add(function({block:e,stdErr:t=!0,stdOut:r=!0}){if(e>0)return{type:"spawn.after",action(s,n){let a;function i(){a&&clearTimeout(a),a=setTimeout(u,e)}function o(){n.spawned.stdout?.off("data",i),n.spawned.stderr?.off("data",i),n.spawned.off("exit",o),n.spawned.off("close",o),a&&clearTimeout(a)}function u(){o(),n.kill(new n7(void 0,"timeout","block timeout reached"))}r&&n.spawned.stdout?.on("data",i),t&&n.spawned.stderr?.on("data",i),n.spawned.on("exit",o),n.spawned.on("close",o),i()}}}(u.timeout)),u.spawnOptions&&o.add((i=re(u.spawnOptions,["uid","gid"]),{type:"spawn.options",action:e=>({...i,...e})})),o.add({type:"spawn.args",action(e){let t,r=[];function s(e){(t=t||[]).push(...e)}for(let t=0;t<e.length;t++){let n=e[t];if(tp(n)){s(tf(n));continue}if("--"===n){s(e.slice(t+1).flatMap(e=>tp(e)&&tf(e)||e));break}r.push(n)}return t?[...r,"--",...t.map(String)]:r}}),o.add(an(function(e=!1,t=function(e){return!!(e.exitCode&&e.stdErr.length)},r=function(e){return Buffer.concat([...e.stdOut,...e.stdErr])}){return(s,n)=>(e||!s)&&t(n)?r(n):s}(!0))),u.errors&&o.add(an(u.errors)),!function(e,t=["git"],r=!1){let s=as(t9(t),r);e.on("binary",e=>{s=as(t9(e),r)}),e.append("spawn.binary",()=>s.binary),e.append("spawn.args",e=>s.prefix?[s.prefix,...e]:e)}(o,u.binary,u.unsafe?.allowUnsafeCustomBinary),new ai(u,o)};function au(e){return e.startsWith("~/")||"~"===e?ti.default.join(to.default.homedir(),e.slice(1)):e}function al(e){let t=ti.default.normalize(e);if(t.startsWith("..")||ti.default.isAbsolute(t))throw Error("Invalid file path");return t}function ac(e){if(!Array.isArray(e)||0===e.length)throw Error("files required");return e.map(e=>{if("string"!=typeof e||!e.trim())throw Error("invalid file path");return al(e)})}async function ap(e){let t=e.nextUrl.searchParams.get("path");if(!t)return ts.NextResponse.json({error:"path required"},{status:400});try{let r=ti.default.resolve(au(t)),s=ti.default.join(r,".git");if(!ta.default.existsSync(s))return ts.NextResponse.json({isGit:!1,path:r});let n=ao(r),[a,i,o]=await Promise.all([n.status(),n.branch(),n.getRemotes(!0)]),u=i.current,l=i.all.filter(e=>!e.startsWith("remotes/")),c=i.all.filter(e=>e.startsWith("remotes/origin/")).map(e=>e.replace("remotes/origin/","")).filter(e=>"HEAD"!==e),{summary:p,changedFiles:f}=function(e){let t=[];for(let r of e.staged)t.push({file:r,status:"modified",staged:!0});for(let r of e.created){let s=!e.not_added.includes(r);t.push({file:r,status:"added",staged:s})}for(let r of e.deleted)t.push({file:r,status:"deleted",staged:!0});for(let r of e.renamed)t.push({file:r.to??r,status:"renamed",staged:!0});for(let r of e.modified)e.staged.includes(r)||t.push({file:r,status:"modified",staged:!1});for(let r of e.not_added)t.some(e=>e.file===r)||t.push({file:r,status:"untracked",staged:!1});return{summary:{modified:e.modified.length,staged:e.staged.length+e.created.filter(t=>!e.not_added.includes(t)).length+e.deleted.length,untracked:e.not_added.length},changedFiles:t}}(a),h=o.find(e=>"origin"===e.name)?.refs?.fetch??"",d=a.ahead??0,m=a.behind??0,g=parseInt(e.nextUrl.searchParams.get("logLimit")||"20",10),b=Number.isFinite(g)&&g>0?Math.min(g,200):20,y=[];try{y=(await n.log({maxCount:b})).all.map(e=>({hash:e.hash,shortHash:e.hash.slice(0,7),message:e.message,author:e.author_name,date:e.date}))}catch{}let w=[];try{w=(await n.stashList()).all.map((e,t)=>({index:t,message:e.message}))}catch{}let v=!1;if("true"===e.nextUrl.searchParams.get("checkWorktrees"))try{v=(0,tn.execFileSync)("git",["worktree","list","--porcelain"],{cwd:r,encoding:"utf-8",timeout:5e3}).trim().split("\n\n").filter(Boolean).length>1}catch{}return ts.NextResponse.json({isGit:!0,path:r,currentBranch:u,branches:l,remoteBranches:c,remoteUrl:h,statusSummary:p,changedFiles:f,ahead:d,behind:m,commits:y,stashes:w,hasWorktrees:v})}catch{return ts.NextResponse.json({error:"Failed to read git info"},{status:500})}}async function af(e){let t=await e.json(),{action:r,path:s}=t;if("clone"===r){let{url:e,path:r}=t;if(!e||!r)return ts.NextResponse.json({error:"url and path required"},{status:400});if("string"==typeof r&&r.startsWith("~"))return ts.NextResponse.json({error:"请输入绝对路径,不支持 ~ 别名"},{status:400});let s=ti.default.resolve(au(r));if(ta.default.existsSync(s)&&ta.default.readdirSync(s).length>0)return ta.default.existsSync(ti.default.join(s,".git"))?ts.NextResponse.json({success:!0,message:"already_cloned",path:s}):ts.NextResponse.json({error:"Directory already exists and is not empty"},{status:400});try{return ta.default.mkdirSync(ti.default.dirname(s),{recursive:!0}),await ao().clone(e,s),ts.NextResponse.json({success:!0,message:"cloned",path:s})}catch{return ta.default.existsSync(s)&&0===ta.default.readdirSync(s).length&&ta.default.rmdirSync(s),ts.NextResponse.json({error:"Clone failed"},{status:500})}}if(!s)return ts.NextResponse.json({error:"path required"},{status:400});let n=ti.default.resolve(au(s)),a=ao(n);try{switch(r){case"init":if(!ta.default.existsSync(n))return ts.NextResponse.json({error:"Directory not found"},{status:400});await a.init(),await a.add("-A");try{await a.commit("Initial commit",{"--allow-empty":null})}catch{}return ts.NextResponse.json({success:!0});case"checkout":{let e=t.branch;if(!e)return ts.NextResponse.json({error:"branch required"},{status:400});let r=e.replace(/[^a-zA-Z0-9_\-\/\.]/g,"");if(!r)return ts.NextResponse.json({error:"Invalid branch name"},{status:400});try{await a.checkout(r)}catch{try{await a.checkoutBranch(r,`origin/${r}`)}catch{return ts.NextResponse.json({error:`Branch "${e}" not found`},{status:400})}}return ts.NextResponse.json({success:!0,branch:r})}case"fetch":return await a.fetch(["--prune"]),ts.NextResponse.json({success:!0});case"stage":{let e=ac(t.files);return await a.add(e),ts.NextResponse.json({success:!0})}case"unstage":{let e=ac(t.files);return await a.reset(["--",...e]),ts.NextResponse.json({success:!0})}case"commit":{let{message:e}=t;if(!e||"string"!=typeof e||!e.trim())return ts.NextResponse.json({error:"commit message required"},{status:400});try{await a.commit(e.trim())}catch(t){let e=t.message||"";if(e.includes("nothing to commit")||e.includes("no changes added"))return ts.NextResponse.json({error:"Nothing to commit — stage files first"},{status:400});return ts.NextResponse.json({error:"Commit failed"},{status:500})}return ts.NextResponse.json({success:!0})}case"pull":try{let{branch:e}=t;if(e){let t=e.replace(/[^a-zA-Z0-9_\-\/\.]/g,"");await a.pull("origin",t,{"--rebase":null,"--autostash":null})}else await a.pull(["--rebase","--autostash"])}catch{return ts.NextResponse.json({error:"Pull failed"},{status:500})}return ts.NextResponse.json({success:!0});case"push":try{let{branch:e}=t;if(e){let t=e.replace(/[^a-zA-Z0-9_\-\/\.]/g,"");await a.push("origin",t)}else await a.push()}catch{return ts.NextResponse.json({error:"Push failed"},{status:500})}return ts.NextResponse.json({success:!0});case"discard-all":return await a.checkout(["--","."]),await a.clean("f",["-d"]),ts.NextResponse.json({success:!0});case"show":{let{file:e,ref:r}=t;if(!e||"string"!=typeof e)return ts.NextResponse.json({error:"file path required"},{status:400});let s=al(e),n=(r||"HEAD").replace(/[^a-zA-Z0-9_\-\/\.~^]/g,"");try{let e=await a.show(`${n}:${s}`);return ts.NextResponse.json({success:!0,content:e})}catch{return ts.NextResponse.json({success:!0,content:""})}}case"stash-save":{let{message:e}=t,r=["push"];return e&&"string"==typeof e&&e.trim()&&r.push("-m",e.trim()),await a.stash(r),ts.NextResponse.json({success:!0})}case"stash-pop":{let e=t.index,r="number"==typeof e&&Number.isInteger(e)&&e>=0?e:0;return await a.stash(["pop",`stash@{${r}}`]),ts.NextResponse.json({success:!0})}case"stash-drop":{let e=t.index,r="number"==typeof e&&Number.isInteger(e)&&e>=0?e:0;return await a.stash(["drop",`stash@{${r}}`]),ts.NextResponse.json({success:!0})}case"create-branch":{let{branch:e,baseBranch:r}=t;if(!e)return ts.NextResponse.json({error:"branch name required"},{status:400});let s=e.replace(/[^a-zA-Z0-9_\-\/\.]/g,"-"),n=(r||"HEAD").replace(/[^a-zA-Z0-9_\-\/\.]/g,"");return await a.checkoutBranch(s,n),ts.NextResponse.json({success:!0,branch:s})}default:return ts.NextResponse.json({error:"Unknown action"},{status:400})}}catch{return ts.NextResponse.json({error:"Internal git operation failed"},{status:500})}}e.s(["GET",0,ap,"POST",0,af],417343);var ah=e.i(417343);let ad=new eX.AppRouteRouteModule({definition:{kind:eQ.RouteKind.APP_ROUTE,page:"/api/git/route",pathname:"/api/git",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/tower/src/app/api/git/route.ts",nextConfigOutput:"",userland:ah}),{workAsyncStorage:am,workUnitAsyncStorage:ag,serverHooks:ab}=ad;async function ay(e,t,r){r.requestMeta&&(0,eJ.setRequestMeta)(e,r.requestMeta),ad.isDev&&(0,eJ.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let s="/api/git/route";s=s.replace(/\/index$/,"")||"/";let n=await ad.prepare(e,t,{srcPage:s,multiZoneDraftMode:!1});if(!n)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:a,params:i,nextConfig:o,parsedUrl:u,isDraftMode:l,prerenderManifest:c,routerServerContext:p,isOnDemandRevalidate:f,revalidateOnlyGenerated:h,resolvedPathname:d,clientReferenceManifest:m,serverActionsManifest:g}=n,b=(0,e3.normalizeAppPath)(s),y=!!(c.dynamicRoutes[b]||c.routes[d]),w=async()=>((null==p?void 0:p.render404)?await p.render404(e,t,u,!1):t.end("This page could not be found"),null);if(y&&!l){let e=!!c.routes[d],t=c.dynamicRoutes[b];if(t&&!1===t.fallback&&!e){if(o.adapterPath)return await w();throw new tt.NoFallbackError}}let v=null;!y||ad.isDev||l||(v="/index"===(v=d)?"/":v);let k=!0===ad.isDev||!y,C=y&&!k;g&&m&&(0,e1.setManifestsSingleton)({page:s,clientReferenceManifest:m,serverActionsManifest:g});let x=e.method||"GET",_=(0,e0.getTracer)(),T=_.getActiveScopeSpan(),R=!!(null==p?void 0:p.isWrappedByNextServer),O=!!(0,eJ.getRequestMeta)(e,"minimalMode"),E=(0,eJ.getRequestMeta)(e,"incrementalCache")||await ad.getIncrementalCache(e,o,c,O);null==E||E.resetRequestCache(),globalThis.__incrementalCache=E;let S={params:i,previewProps:c.preview,renderOpts:{experimental:{authInterrupts:!!o.experimental.authInterrupts},cacheComponents:!!o.cacheComponents,supportsDynamicResponse:k,incrementalCache:E,cacheLifeProfiles:o.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,s,n)=>ad.onRequestError(e,t,s,n,p)},sharedContext:{buildId:a}},A=new e6.NodeNextRequest(e),N=new e6.NodeNextResponse(t),j=e9.NextRequestAdapter.fromNodeNextRequest(A,(0,e9.signalFromNodeResponse)(t));try{let n,a=async e=>ad.handle(j,S).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=_.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==e2.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${x} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),n&&n!==e&&(n.setAttribute("http.route",a),n.updateName(t))}else e.updateName(`${x} ${s}`)}),i=async n=>{var i,u;let d=async({previousCacheEntry:i})=>{try{if(!O&&f&&h&&!i)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await a(n);e.fetchMetrics=S.renderOpts.fetchMetrics;let o=S.renderOpts.pendingWaitUntil;o&&r.waitUntil&&(r.waitUntil(o),o=void 0);let u=S.renderOpts.collectedTags;if(!y)return await (0,e4.sendResponse)(A,N,s,S.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,e5.toNodeOutgoingHttpHeaders)(s.headers);u&&(t[te.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==S.renderOpts.collectedRevalidate&&!(S.renderOpts.collectedRevalidate>=te.INFINITE_CACHE)&&S.renderOpts.collectedRevalidate,n=void 0===S.renderOpts.collectedExpire||S.renderOpts.collectedExpire>=te.INFINITE_CACHE?void 0:S.renderOpts.collectedExpire;return{value:{kind:tr.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==i?void 0:i.isStale)&&await ad.onRequestError(e,t,{routerKind:"App Router",routePath:s,routeType:"route",revalidateReason:(0,e8.getRevalidateReason)({isStaticGeneration:C,isOnDemandRevalidate:f})},!1,p),t}},m=await ad.handleResponse({req:e,nextConfig:o,cacheKey:v,routeKind:eQ.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:c,isRoutePPREnabled:!1,isOnDemandRevalidate:f,revalidateOnlyGenerated:h,responseGenerator:d,waitUntil:r.waitUntil,isMinimalMode:O});if(!y)return null;if((null==m||null==(i=m.value)?void 0:i.kind)!==tr.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==m||null==(u=m.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});O||t.setHeader("x-nextjs-cache",f?"REVALIDATED":m.isMiss?"MISS":m.isStale?"STALE":"HIT"),l&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,e5.fromNodeOutgoingHttpHeaders)(m.value.headers);return O&&y||g.delete(te.NEXT_CACHE_TAGS_HEADER),!m.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,e7.getCacheControlHeader)(m.cacheControl)),await (0,e4.sendResponse)(A,N,new Response(m.value.body,{headers:g,status:m.value.status||200})),null};R&&T?await i(T):(n=_.getActiveScopeSpan(),await _.withPropagatedContext(e.headers,()=>_.trace(e2.BaseServerSpan.handleRequest,{spanName:`${x} ${s}`,kind:e0.SpanKind.SERVER,attributes:{"http.method":x,"http.target":e.url}},i),void 0,!R))}catch(t){if(t instanceof tt.NoFallbackError||await ad.onRequestError(e,t,{routerKind:"App Router",routePath:b,routeType:"route",revalidateReason:(0,e8.getRevalidateReason)({isStaticGeneration:C,isOnDemandRevalidate:f})},!1,p),y)throw t;return await (0,e4.sendResponse)(A,N,new Response(null,{status:500})),null}}e.s(["handler",0,ay,"patchFetch",0,function(){return(0,eY.patchFetch)({workAsyncStorage:am,workUnitAsyncStorage:ag})},"routeModule",0,ad,"serverHooks",0,ab,"workAsyncStorage",0,am,"workUnitAsyncStorage",0,ag],11116)}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__0wu61w.._.js.map
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
module.exports=[660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},985726,e=>{"use strict";var t=e.i(298600);let r=["localhost","127.0.0.1","[::1]"],s=new Set(["127.0.0.1","::1","::ffff:127.0.0.1"]),i=/^c[a-z0-9]{20,30}$/;e.s(["requireLocalhost",0,function(e){let i=e.headers.get("x-forwarded-for");if(i&&!i.split(",").map(e=>e.trim()).every(e=>s.has(e)))return t.NextResponse.json({error:"Forbidden"},{status:403});let n=e.headers.get("host")??"";return r.some(e=>n.startsWith(e))?null:t.NextResponse.json({error:"Forbidden"},{status:403})},"validateProjectId",0,function(e){return i.test(e)?null:t.NextResponse.json({error:"Invalid projectId format"},{status:400})},"validateTaskId",0,function(e){return i.test(e)?null:t.NextResponse.json({error:"Invalid taskId format"},{status:400})}])},477714,(e,t,r)=>{t.exports=e.x("@prisma/client-44bae9bb3052ac14",()=>require("@prisma/client-44bae9bb3052ac14"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},874533,(e,t,r)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},351032,(e,t,r)=>{t.exports=e.x("node-pty-17f56ec9e6acce49",()=>require("node-pty-17f56ec9e6acce49"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},359703,e=>{"use strict";var t=e.i(902157),r=e.i(874533),s=e.i(750227);function i(e=process.platform){return"win32"===e}function n(e){let t=e.replace(/\r\n|\r|\n/g," ");if(!t.length)return'""';let r=t.replace(/"/g,'""');return/[\s"&<>|^()]/.test(r)?`"${r}"`:r}let o=["CLAUDECODE","CLAUDE_CODE_ENTRYPOINT","CLAUDE_CODE_SESSION","CLAUDE_CODE_PARENT_SESSION"];async function a(e,t={}){let r=t.cwd??process.cwd(),n=t.env??process.env,o=t.platform??process.platform;if(e.includes("/")||e.includes("\\")){let t=s.default.isAbsolute(e)?e:s.default.resolve(r,e);return await p(t,o)?t:null}let l=n.PATH??n.Path??"",c=i(o)?";":":",u=l.split(c).filter(Boolean),d=i(o)?(n.PATHEXT??".EXE;.CMD;.BAT;.COM").split(";").filter(Boolean):[""],m=i(o)&&s.default.extname(e).length>0;for(let t of u)for(let r of i(o)?m?[s.default.join(t,e)]:d.map(r=>s.default.join(t,`${e}${r}`)):[s.default.join(t,e)])if(await p(r,o))return r;return null}let l=e=>(0,r.execSync)(e,{encoding:"utf-8",timeout:5e3});function c(e,t=process.platform,r=l){if(s.default.extname(e)||e.includes("/")||e.includes("\\")||!i(t))return e;try{let t=r(`where ${e}`).trim().split("\n").map(e=>e.trim()).filter(Boolean),s=t.find(e=>/\.(cmd|bat|exe)$/i.test(e));if(s)return s;if(t.length>0)return t[0]}catch{}return e}async function u(e,t,r={}){let s=r.env??process.env,i=r.platform??process.platform;return d(await a(e,r)??e,t,s,i)}function d(e,t,r,o){if(!i(o))return{command:e,args:t};let a=s.default.extname(e).toLowerCase();return".cmd"===a||".bat"===a||".com"===a?{command:r.ComSpec||"cmd.exe",args:["/d","/s","/c",[n(e),...t.map(n)].join(" ")]}:{command:e,args:t}}async function p(e,r=process.platform){try{return await t.promises.access(e,i(r)?t.constants.F_OK:t.constants.X_OK),!0}catch{return!1}}async function m(e=process.platform){return i(e)?h():f()}async function f(){try{let e=await t.promises.readFile("/etc/shells","utf-8"),r=[],i=new Map;for(let t of e.split("\n")){let e=t.replace(/#.*/,"").trim();if(!e||!e.startsWith("/")||!await p(e))continue;let n=s.default.basename(e),o=i.get(n)??0;i.set(n,o+1),o>0&&(n=`${n} (${o+1})`),r.push({name:n,path:e})}return r}catch{let e=[];for(let t of["/bin/zsh","/bin/bash","/bin/sh"])await p(t)&&e.push({name:s.default.basename(t),path:t});return e}}async function h(){let e=[],t=[],r=await a("git",{platform:"win32"});if(r){let e=s.default.resolve(s.default.dirname(r),"..","..");t.push(s.default.join(e,"bin","bash.exe"),s.default.join(e,"usr","bin","bash.exe"))}for(let e of[process.env.ProgramW6432,process.env.ProgramFiles,process.env["ProgramFiles(x86)"],process.env.LocalAppData?s.default.join(process.env.LocalAppData,"Programs"):null].filter(Boolean))t.push(s.default.join(e,"Git","bin","bash.exe"),s.default.join(e,"Git","usr","bin","bash.exe"));let i=process.env.USERPROFILE??"";for(let r of(i&&t.push(s.default.join(i,"scoop","apps","git","current","bin","bash.exe")),process.env.CLAUDE_CODE_GIT_BASH_PATH&&t.unshift(process.env.CLAUDE_CODE_GIT_BASH_PATH),t))if(await p(r,"win32")){e.push({name:"Git Bash",path:r});break}let n=await a("pwsh",{platform:"win32"});n&&e.push({name:"PowerShell",path:n});let o=process.env.windir??"C:\\WINDOWS",l=s.default.join(o,"System32","WindowsPowerShell","v1.0","powershell.exe");await p(l,"win32")&&e.push({name:"Windows PowerShell",path:l});let c=process.env.ComSpec??s.default.join(o,"System32","cmd.exe");return await p(c,"win32")&&e.push({name:"Command Prompt",path:c}),e}let g=[{name:"Terminal",bundleName:"Terminal"},{name:"iTerm2",bundleName:"iTerm"},{name:"Warp",bundleName:"Warp"},{name:"Alacritty",bundleName:"Alacritty"},{name:"WezTerm",bundleName:"WezTerm"},{name:"kitty",bundleName:"kitty"},{name:"Hyper",bundleName:"Hyper"}];async function y(e=process.platform){if("darwin"===e){let t=[];for(let r of g)await p(`/Applications/${r.bundleName}.app`,e)&&t.push({name:r.name,value:r.bundleName});return t}if(i(e)){let t=[],r=await a("wt",{platform:e});return r&&t.push({name:"Windows Terminal",value:r}),t}return[]}e.s(["detectShells",0,m,"detectTerminalApps",0,y,"ensurePathInEnv",0,function(e,t=process.platform){let r=i(t)?"Path":"PATH";return(e.PATH??e.Path??"").length>0?e:{...e,[r]:function(e=process.platform){return i(e)?"C:\\Windows\\System32;C:\\Windows;C:\\Windows\\System32\\Wbem":"/usr/local/bin:/opt/homebrew/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin"}(t)}},"resolveCommandPath",0,a,"resolveCommandPathSync",0,c,"resolveSpawnTarget",0,u,"resolveSpawnTargetSync",0,function(e,t,r=process.platform,s){return d(c(e,r,s),t,process.env,r)},"stripClaudeNestingEnv",0,function(e){let t={...e};for(let e of o)delete t[e];return t}])},112310,e=>{"use strict";var t=e.i(351032),r=e.i(359703);class s{taskId;_pty;killed=!1;disconnectTimer=null;_buffer="";static BUFFER_MAX=51200;_onData;_exitListeners=[];_idleTimer=null;_idleThresholdMs;_onIdle;_idleFired=!1;constructor(e,i,n,o,a,l,c,u,d){this.taskId=e,this._onData=a,this._onIdle=u??null,this._idleThresholdMs=Math.max(d??18e4,18e4);const p=(0,r.stripClaudeNestingEnv)((0,r.ensurePathInEnv)(process.env));this._pty=t.spawn(i,n,{name:"xterm-color",cols:80,rows:24,cwd:o,env:{...p,TERM:"xterm-color",...c}}),this._pty.onData(e=>{this._buffer+=e,this._buffer.length>s.BUFFER_MAX&&(this._buffer=this._buffer.slice(this._buffer.length-s.BUFFER_MAX)),this._resetIdleTimer(),this._onData(e)}),this._pty.onExit(({exitCode:e,signal:t})=>{for(let r of(this.killed=!0,this._idleTimer&&(clearTimeout(this._idleTimer),this._idleTimer=null),l(e,t),this._exitListeners))r(e)}),this._resetIdleTimer()}_resetIdleTimer(){this._idleTimer&&(clearTimeout(this._idleTimer),this._idleTimer=null),null===this._onIdle||this.killed||this._idleFired||(this._idleTimer=setTimeout(()=>{this._idleFired=!0,this._onIdle?.()},this._idleThresholdMs))}setDataListener(e){this._onData=e}setExitListener(e){this._exitListeners=[e]}write(e){this.killed||(this._resetIdleTimer(),this._pty.write(e))}resize(e,t){this.killed||this._pty.resize(e,t)}getBuffer(){return this._buffer}get isIdle(){return this._idleFired}kill(){if(!this.killed){this.killed=!0,this._idleTimer&&(clearTimeout(this._idleTimer),this._idleTimer=null);try{this._pty.kill()}catch{}}}}let i=globalThis;i.__ptySessions||(i.__ptySessions=new Map);let n=i.__ptySessions;function o(e){let t=n.get(e);t&&(n.delete(e),t.disconnectTimer&&(clearTimeout(t.disconnectTimer),t.disconnectTimer=null),t.kill())}function a(){for(let e of n.keys())o(e)}process.once("SIGTERM",()=>{console.error("[session-store] SIGTERM received — cleaning up PTY sessions"),a()}),process.once("SIGINT",()=>{console.error("[session-store] SIGINT received — cleaning up PTY sessions"),a()}),e.s(["createSession",0,function(e,t,i,a,l,c,u,d,p){o(e);let{command:m,args:f}=(0,r.resolveSpawnTargetSync)(t,i),h=new s(e,m,f,a,l,c,u,d,p);return n.set(e,h),h},"destroySession",0,o,"getSession",0,function(e){return n.get(e)}],112310)},647085,e=>{"use strict";var t=e.i(477714);let r=globalThis.prisma??new t.PrismaClient({log:[]});process.on("SIGTERM",()=>{r.$disconnect().catch(()=>{})}),process.on("SIGINT",()=>{r.$disconnect().catch(()=>{})}),e.s(["db",0,r])},451724,e=>{"use strict";var t=e.i(647085);async function r(e,r){let s=await t.db.systemConfig.findUnique({where:{key:e}});if(!s)return r;try{return JSON.parse(s.value)}catch{return r}}e.s(["readConfigValue",0,r])},333956,(e,t,r)=>{"use strict";t.exports=e.r(950820).vendored["react-rsc"].ReactServerDOMTurbopackServer},604719,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"registerServerReference",{enumerable:!0,get:function(){return s.registerServerReference}});let s=e.r(333956)},77129,(e,t,r)=>{"use strict";function s(e){for(let t=0;t<e.length;t++){let r=e[t];if("function"!=typeof r)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof r}.
|
|
2
|
-
Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ensureServerEntryExports",{enumerable:!0,get:function(){return s}})},47533,e=>{"use strict";var t=e.i(902157),r=e.i(660526),s=e.i(750227),i=e.i(359703);let n=["sonnet","opus","haiku","claude-sonnet-4-6","claude-opus-4-6","claude-haiku-4-5-20251001"];e.s(["ClaudeCliAdapter",0,class{buildSpawnArgs(e){let t=[];e.profileArgs?.length&&t.push(...e.profileArgs),e.resumeSessionId?t.push("--resume",e.resumeSessionId):e.continueLatest?t.push("--continue"):e.prompt&&t.push(e.prompt);let r={...e.profileEnvVars??{},...e.envOverrides??{}};return{command:this.resolveCommand(),args:t,env:r}}buildEnvOverrides(e){let t={TOWER_TASK_ID:e.taskId,TOWER_TASK_TITLE:e.taskTitle,TOWER_STARTED_AT:new Date().toISOString(),TOWER_API_URL:e.apiUrl};return e.callbackUrl&&(t.CALLBACK_URL=e.callbackUrl),t}async installHooks(e){let t=this.readSettings(),r=t.hooks??{},i=this.getPostToolUseArray(t);if(this.findTowerHookIndex(i)>=0)return;let n=s.join(process.cwd(),"scripts","post-tool-hook.js"),o={hooks:[{command:`node "${n}"`,timeout:10,type:"command"}],matcher:"Write|Edit|MultiEdit"};t.hooks={...r,PostToolUse:[...i,o]},this.writeSettings(t)}async uninstallHooks(){let e=this.readSettings(),t=e.hooks??{},r=this.getPostToolUseArray(e).filter(e=>!e.hooks?.some(e=>e.command?.includes("post-tool-hook.js")));e.hooks={...t,PostToolUse:r},this.writeSettings(e)}async isHooksInstalled(){let e=this.readSettings(),t=this.getPostToolUseArray(e);return this.findTowerHookIndex(t)>=0}async isAvailable(){return null!==await this.getVersion()}async getVersion(){try{let{execFile:t}=await e.A(144264),{promisify:r}=await e.A(534777),s=r(t),i=this.resolveCommand(),{stdout:n}=await s(i,["--version"],{timeout:5e3});return n.trim()||null}catch{return null}}async getModels(){return n}getConfigDir(){return s.join(r.homedir(),".claude")}getSettingsPath(){return s.join(this.getConfigDir(),"settings.json")}getSessionsDir(){return s.join(this.getConfigDir(),"projects")}resolveCommand(){return process.env.CLAUDE_CODE_PATH?process.env.CLAUDE_CODE_PATH:(0,i.resolveCommandPathSync)("claude")}readSettings(){try{return JSON.parse(t.readFileSync(this.getSettingsPath(),"utf-8"))}catch{return{}}}writeSettings(e){let r=this.getConfigDir();t.existsSync(r)||t.mkdirSync(r,{recursive:!0}),t.writeFileSync(this.getSettingsPath(),JSON.stringify(e,null,2),"utf-8")}getPostToolUseArray(e){let t=e.hooks;if(!t)return[];let r=t.PostToolUse;return Array.isArray(r)?r:[]}findTowerHookIndex(e){return e.findIndex(e=>e.hooks?.some(e=>e.command?.includes("post-tool-hook.js")))}}])},997179,e=>{"use strict";var t=e.i(233405),r=e.i(522734),s=e.i(924868),i=e.i(814747),n=e.i(446786),o=e.i(741550);function a(e){return e.startsWith("~/")||"~"===e?i.default.join(n.default.homedir(),e.slice(1)):e}async function l(e,n,l){let c=a(e),u=i.default.join(c,".worktrees","task-"+n),d="task/"+n;await (0,s.mkdir)(i.default.join(c,".worktrees"),{recursive:!0});let p=(0,t.execFileSync)("git",["worktree","list","--porcelain"],{cwd:c,encoding:"utf-8",timeout:1e4}),m=i.default.normalize(u).replace(/\\/g,"/");if(p.split("\n").some(e=>e.startsWith("worktree ")&&e.slice(9).replace(/\\/g,"/")===m))return{worktreePath:u,worktreeBranch:d};if((0,r.existsSync)(u)&&(o.logger.warn(`[worktree] Directory exists but not tracked by git, removing: ${u}`),(0,t.execFileSync)("git",["worktree","remove",u,"--force"],{cwd:c,encoding:"utf-8",timeout:3e4})),(0,t.execFileSync)("git",["branch","--list",d],{cwd:c,encoding:"utf-8",timeout:5e3}).trim())(0,t.execFileSync)("git",["worktree","add",u,d],{cwd:c,encoding:"utf-8",timeout:3e4});else{let e=l;try{(0,t.execFileSync)("git",["rev-parse","--verify",l],{cwd:c,encoding:"utf-8",timeout:5e3,stdio:["pipe","pipe","pipe"]})}catch{try{(0,t.execFileSync)("git",["rev-parse","--verify",`origin/${l}`],{cwd:c,encoding:"utf-8",timeout:5e3,stdio:["pipe","pipe","pipe"]}),e=`origin/${l}`}catch{throw Error(`Base branch '${l}' does not exist locally or on remote. Available branches: `+(0,t.execFileSync)("git",["branch","-a","--format=%(refname:short)"],{cwd:c,encoding:"utf-8",timeout:5e3}).trim().split("\n").join(", "))}}(0,t.execFileSync)("git",["worktree","add","-b",d,u,e],{cwd:c,encoding:"utf-8",timeout:3e4})}return function(e,t){let s=o.logger.create("worktree");for(let n of["node_modules",".next"]){let o=i.default.join(e,n),a=i.default.join(t,n);if((0,r.existsSync)(o)){try{(0,r.lstatSync)(a);continue}catch{}try{(0,r.symlinkSync)(o,a,"junction"),s.info(`Symlinked ${n}`,{from:o,to:a})}catch(e){s.warn(`Failed to symlink ${n}`,{error:String(e)})}}}}(c,u),{worktreePath:u,worktreeBranch:d}}async function c(e,s){let n=a(e),o=i.default.join(n,".worktrees","task-"+s),l="task/"+s;(0,r.existsSync)(o)&&(0,t.execFileSync)("git",["worktree","remove",o,"--force"],{cwd:n,encoding:"utf-8",timeout:3e4}),(0,t.execFileSync)("git",["branch","--list",l],{cwd:n,encoding:"utf-8",timeout:5e3}).trim()&&(0,t.execFileSync)("git",["branch","-D",l],{cwd:n,encoding:"utf-8",timeout:5e3})}e.s(["createWorktree",0,l,"removeWorktree",0,c])},144264,e=>{e.v(e=>Promise.resolve().then(()=>e(233405)))},534777,e=>{e.v(t=>Promise.all(["server/chunks/[externals]_util_0wtvqkc._.js"].map(t=>e.l(t))).then(()=>t(224361)))},229073,e=>{e.v(e=>Promise.resolve().then(()=>e(112310)))},274428,e=>{e.v(t=>Promise.all(["server/chunks/tower_03g~ktv._.js"].map(t=>e.l(t))).then(()=>t(58556)))},6206,e=>{e.v(t=>Promise.all(["server/chunks/tower_src_0..vg-t._.js"].map(t=>e.l(t))).then(()=>t(652049)))},260815,e=>{e.v(e=>Promise.resolve().then(()=>e(924868)))}];
|
|
3
|
-
|
|
4
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__11v.yk_._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[660526,(e,r,i)=>{r.exports=e.x("node:os",()=>require("node:os"))},278428,e=>{"use strict";let r;var i=e.i(750227),t=e.i(660526),s=e.i(902157);function n(){return r||(r=(0,i.join)((0,t.homedir)(),".tower"),(0,s.existsSync)(r)||(0,s.mkdirSync)(r,{recursive:!0})),r}e.s(["getAssistantDir",0,function(){let e=(0,i.join)(n(),"assistant");return(0,s.existsSync)(e)||(0,s.mkdirSync)(e,{recursive:!0}),e},"getStorageDir",0,function(){let e=(0,i.join)(n(),"storage");return(0,s.existsSync)(e)||(0,s.mkdirSync)(e,{recursive:!0}),e}])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__12._zd-._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},477714,(e,t,r)=>{t.exports=e.x("@prisma/client-44bae9bb3052ac14",()=>require("@prisma/client-44bae9bb3052ac14"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},985726,e=>{"use strict";var t=e.i(298600);let r=["localhost","127.0.0.1","[::1]"],s=new Set(["127.0.0.1","::1","::ffff:127.0.0.1"]),a=/^c[a-z0-9]{20,30}$/;e.s(["requireLocalhost",0,function(e){let a=e.headers.get("x-forwarded-for");if(a&&!a.split(",").map(e=>e.trim()).every(e=>s.has(e)))return t.NextResponse.json({error:"Forbidden"},{status:403});let n=e.headers.get("host")??"";return r.some(e=>n.startsWith(e))?null:t.NextResponse.json({error:"Forbidden"},{status:403})},"validateProjectId",0,function(e){return a.test(e)?null:t.NextResponse.json({error:"Invalid projectId format"},{status:400})},"validateTaskId",0,function(e){return a.test(e)?null:t.NextResponse.json({error:"Invalid taskId format"},{status:400})}])},647085,e=>{"use strict";var t=e.i(477714);let r=globalThis.prisma??new t.PrismaClient({log:[]});process.on("SIGTERM",()=>{r.$disconnect().catch(()=>{})}),process.on("SIGINT",()=>{r.$disconnect().catch(()=>{})}),e.s(["db",0,r])},451724,e=>{"use strict";var t=e.i(647085);async function r(e,r){let s=await t.db.systemConfig.findUnique({where:{key:e}});if(!s)return r;try{return JSON.parse(s.value)}catch{return r}}e.s(["readConfigValue",0,r])},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},278428,e=>{"use strict";let t;var r=e.i(750227),s=e.i(660526),a=e.i(902157);function n(){return t||(t=(0,r.join)((0,s.homedir)(),".tower"),(0,a.existsSync)(t)||(0,a.mkdirSync)(t,{recursive:!0})),t}e.s(["getAssistantDir",0,function(){let e=(0,r.join)(n(),"assistant");return(0,a.existsSync)(e)||(0,a.mkdirSync)(e,{recursive:!0}),e},"getStorageDir",0,function(){let e=(0,r.join)(n(),"storage");return(0,a.existsSync)(e)||(0,a.mkdirSync)(e,{recursive:!0}),e}])},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},142300,e=>{"use strict";var t=e.i(666680),r=e.i(902157),s=e.i(750227);let a=(0,e.i(278428).getStorageDir)();function n(e){if(!e.startsWith(a+s.sep))throw Error("Path traversal detected")}let i=new Set(["image","screenshot","img","photo","picture","clipboard","paste","untitled"]);e.s(["buildCacheFilename",0,function(e,r){let a=s.basename(e,s.extname(e)),n=t.randomUUID().replace(/-/g,"").slice(0,8),o=a.toLowerCase();if(!a||i.has(o)||/^screenshot[\s_\-]/i.test(a))return`tower_image-${n}${r}`;let l=a.replace(/[^\p{L}\p{N}]/gu,"_").replace(/_+/g,"_").replace(/^_+|_+$/g,"");return`${l||"file"}-${n}${r}`},"ensureAssetsDir",0,function(e){let t,i=(n(t=s.join(a,"assets",e)),t);return r.mkdirSync(i,{recursive:!0}),i},"getAssistantCacheDir",0,function(e="images"){let t=new Date,i=`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}`,o=s.join(a,"cache","assistant",i,e);return n(o),r.mkdirSync(o,{recursive:!0}),o},"getAssistantCacheRoot",0,function(){let e=s.join(a,"cache","assistant");return n(e),e}])},771163,e=>{"use strict";var t=e.i(958699),r=e.i(953193),s=e.i(314093),a=e.i(159515),n=e.i(952192),i=e.i(939747),o=e.i(348399),l=e.i(887426),u=e.i(626524),d=e.i(479201),p=e.i(336951),c=e.i(546302),h=e.i(431732),x=e.i(899284),f=e.i(104600),g=e.i(193695);e.i(792325);var m=e.i(27732),v=e.i(298600),R=e.i(924868),w=e.i(522734),y=e.i(814747),j=e.i(647085),b=e.i(985726),C=e.i(451724),E=e.i(142300);let N=["png","jpg","jpeg","gif","webp","svg","pdf","md","txt","json"],S={png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",webp:"image/webp",svg:"image/svg+xml",pdf:"application/pdf",md:"text/markdown",txt:"text/plain",json:"application/json"};async function k(e){let t=(0,b.requireLocalhost)(e);if(t)return t;let r=await (0,C.readConfigValue)("hooks.autoUploadTypes",N);return v.NextResponse.json({types:r})}async function q(e){let t,r,s=(0,b.requireLocalhost)(e);if(s)return s;try{t=await e.json()}catch{return v.NextResponse.json({error:"Invalid JSON body"},{status:400})}let{taskId:a,filePath:n}=t;if(!a||"string"!=typeof a)return v.NextResponse.json({error:"Missing taskId"},{status:400});let i=(0,b.validateTaskId)(a);if(i)return i;if(!n||"string"!=typeof n)return v.NextResponse.json({error:"Missing filePath"},{status:400});try{r=await (0,R.stat)(n)}catch{return v.NextResponse.json({error:"File not found"},{status:404})}let o=await (0,C.readConfigValue)("system.maxUploadBytes",0xa00000);if(r.size>o)return v.NextResponse.json({error:`File exceeds max size (${o} bytes)`},{status:413});let l=y.extname(n).slice(1).toLowerCase();if(!(await (0,C.readConfigValue)("hooks.autoUploadTypes",N)).includes(l))return v.NextResponse.json({error:`File type .${l} not in allowed list`},{status:400});let u=await j.db.task.findUnique({where:{id:a},select:{projectId:!0,project:{select:{localPath:!0}}}});if(!u)return v.NextResponse.json({error:"Task not found"},{status:404});let d=y.resolve(n),p=u.project.localPath,c=process.env.TMPDIR||"/tmp",h=p&&d.startsWith(y.resolve(p)+y.sep),x=d.startsWith(y.resolve(c)+y.sep);if(!h&&!x)return v.NextResponse.json({error:"filePath must be within the project directory or temp directory"},{status:403});let f=u.projectId,g=(0,E.ensureAssetsDir)(f),m=y.basename(n),k=y.join(g,m);if((0,w.existsSync)(k)){let e=y.basename(m,y.extname(m)),t=Date.now();m=`${e}-${t}.${l}`,k=y.join(g,m)}try{await (0,R.copyFile)(n,k)}catch(e){return v.NextResponse.json({error:`Failed to copy file: ${e instanceof Error?e.message:"unknown"}`},{status:500})}let q=S[l]||"application/octet-stream",A=await j.db.projectAsset.create({data:{filename:m,path:k,mimeType:q,size:r.size,projectId:f,taskId:a}});return v.NextResponse.json({success:!0,assetId:A.id})}e.s(["GET",0,k,"POST",0,q,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],231559);var A=e.i(231559);let T=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/internal/hooks/upload/route",pathname:"/api/internal/hooks/upload",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/tower/src/app/api/internal/hooks/upload/route.ts",nextConfigOutput:"",userland:A}),{workAsyncStorage:I,workUnitAsyncStorage:P,serverHooks:_}=T;async function $(e,t,s){s.requestMeta&&(0,a.setRequestMeta)(e,s.requestMeta),T.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let v="/api/internal/hooks/upload/route";v=v.replace(/\/index$/,"")||"/";let R=await T.prepare(e,t,{srcPage:v,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve()),null;let{buildId:w,params:y,nextConfig:j,parsedUrl:b,isDraftMode:C,prerenderManifest:E,routerServerContext:N,isOnDemandRevalidate:S,revalidateOnlyGenerated:k,resolvedPathname:q,clientReferenceManifest:A,serverActionsManifest:I}=R,P=(0,o.normalizeAppPath)(v),_=!!(E.dynamicRoutes[P]||E.routes[q]),$=async()=>((null==N?void 0:N.render404)?await N.render404(e,t,b,!1):t.end("This page could not be found"),null);if(_&&!C){let e=!!E.routes[q],t=E.dynamicRoutes[P];if(t&&!1===t.fallback&&!e){if(j.adapterPath)return await $();throw new g.NoFallbackError}}let O=null;!_||T.isDev||C||(O="/index"===(O=q)?"/":O);let D=!0===T.isDev||!_,U=_&&!D;I&&A&&(0,i.setManifestsSingleton)({page:v,clientReferenceManifest:A,serverActionsManifest:I});let M=e.method||"GET",F=(0,n.getTracer)(),H=F.getActiveScopeSpan(),L=!!(null==N?void 0:N.isWrappedByNextServer),K=!!(0,a.getRequestMeta)(e,"minimalMode"),B=(0,a.getRequestMeta)(e,"incrementalCache")||await T.getIncrementalCache(e,j,E,K);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let V={params:y,previewProps:E.preview,renderOpts:{experimental:{authInterrupts:!!j.experimental.authInterrupts},cacheComponents:!!j.cacheComponents,supportsDynamicResponse:D,incrementalCache:B,cacheLifeProfiles:j.cacheLife,waitUntil:s.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,s,a)=>T.onRequestError(e,t,s,a,N)},sharedContext:{buildId:w}},W=new l.NodeNextRequest(e),z=new l.NodeNextResponse(t),G=u.NextRequestAdapter.fromNodeNextRequest(W,(0,u.signalFromNodeResponse)(t));try{let a,i=async e=>T.handle(G,V).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=F.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=r.get("next.route");if(s){let t=`${M} ${s}`;e.setAttributes({"next.route":s,"http.route":s,"next.span_name":t}),e.updateName(t),a&&a!==e&&(a.setAttribute("http.route",s),a.updateName(t))}else e.updateName(`${M} ${v}`)}),o=async a=>{var n,o;let l=async({previousCacheEntry:r})=>{try{if(!K&&S&&k&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await i(a);e.fetchMetrics=V.renderOpts.fetchMetrics;let o=V.renderOpts.pendingWaitUntil;o&&s.waitUntil&&(s.waitUntil(o),o=void 0);let l=V.renderOpts.collectedTags;if(!_)return await (0,c.sendResponse)(W,z,n,V.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(n.headers);l&&(t[f.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==V.renderOpts.collectedRevalidate&&!(V.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&V.renderOpts.collectedRevalidate,s=void 0===V.renderOpts.collectedExpire||V.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:V.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:s}}}}catch(t){throw(null==r?void 0:r.isStale)&&await T.onRequestError(e,t,{routerKind:"App Router",routePath:v,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:S})},!1,N),t}},u=await T.handleResponse({req:e,nextConfig:j,cacheKey:O,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:E,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:k,responseGenerator:l,waitUntil:s.waitUntil,isMinimalMode:K});if(!_)return null;if((null==u||null==(n=u.value)?void 0:n.kind)!==m.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(o=u.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});K||t.setHeader("x-nextjs-cache",S?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),C&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let d=(0,h.fromNodeOutgoingHttpHeaders)(u.value.headers);return K&&_||d.delete(f.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||d.get("Cache-Control")||d.set("Cache-Control",(0,x.getCacheControlHeader)(u.cacheControl)),await (0,c.sendResponse)(W,z,new Response(u.value.body,{headers:d,status:u.value.status||200})),null};L&&H?await o(H):(a=F.getActiveScopeSpan(),await F.withPropagatedContext(e.headers,()=>F.trace(d.BaseServerSpan.handleRequest,{spanName:`${M} ${v}`,kind:n.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},o),void 0,!L))}catch(t){if(t instanceof g.NoFallbackError||await T.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:S})},!1,N),_)throw t;return await (0,c.sendResponse)(W,z,new Response(null,{status:500})),null}}e.s(["handler",0,$,"patchFetch",0,function(){return(0,s.patchFetch)({workAsyncStorage:I,workUnitAsyncStorage:P})},"routeModule",0,T,"serverHooks",0,_,"workAsyncStorage",0,I,"workUnitAsyncStorage",0,P],771163)}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__130shf~._.js.map
|