@shepai/cli 1.72.6 → 1.72.7-pr187.86f6440
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/packages/core/src/application/use-cases/features/delete-feature.use-case.d.ts +4 -0
- package/dist/packages/core/src/application/use-cases/features/delete-feature.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/features/delete-feature.use-case.js +20 -12
- package/dist/packages/core/src/application/use-cases/repositories/delete-repository.use-case.d.ts +8 -3
- package/dist/packages/core/src/application/use-cases/repositories/delete-repository.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/repositories/delete-repository.use-case.js +17 -4
- package/dist/packages/core/src/infrastructure/repositories/sqlite-feature.repository.js +1 -1
- package/dist/packages/core/src/infrastructure/services/tool-installer/tool-installer.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/tool-installer/tool-installer.service.js +9 -1
- package/dist/packages/core/src/infrastructure/services/tool-installer/tool-metadata.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/tool-installer/tool-metadata.js +5 -0
- package/dist/packages/core/src/infrastructure/services/tool-installer/tools/alacritty.json +2 -2
- package/dist/packages/core/src/infrastructure/services/tool-installer/tools/kitty.json +2 -2
- package/dist/packages/core/src/infrastructure/services/tool-installer/tools/tmux.json +1 -1
- package/dist/packages/core/src/infrastructure/services/tool-installer/tools/vscode.json +1 -1
- package/dist/packages/core/src/infrastructure/services/tool-installer/tools/windsurf.json +1 -1
- package/dist/src/presentation/web/app/(dashboard)/get-graph-data.d.ts.map +1 -1
- package/dist/src/presentation/web/app/(dashboard)/get-graph-data.js +2 -6
- package/dist/src/presentation/web/app/api/tools/[id]/install/route.d.ts.map +1 -1
- package/dist/src/presentation/web/app/api/tools/[id]/install/route.js +9 -4
- package/dist/src/presentation/web/app/api/tools/[id]/install/stream/route.d.ts +7 -0
- package/dist/src/presentation/web/app/api/tools/[id]/install/stream/route.d.ts.map +1 -0
- package/dist/src/presentation/web/app/api/tools/[id]/install/stream/route.js +32 -0
- package/dist/src/presentation/web/app/build-graph-nodes.js +11 -1
- package/dist/src/presentation/web/components/common/base-drawer/base-drawer.d.ts +3 -1
- package/dist/src/presentation/web/components/common/base-drawer/base-drawer.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/base-drawer/base-drawer.js +8 -4
- package/dist/src/presentation/web/components/common/control-center-drawer/create-drawer-client.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/control-center-drawer/create-drawer-client.js +12 -3
- package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.js +6 -2
- package/dist/src/presentation/web/components/common/drawer-action-bar/drawer-action-bar.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/drawer-action-bar/drawer-action-bar.js +1 -1
- package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.js +1 -1
- package/dist/src/presentation/web/components/common/feature-node/feature-node.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-node/feature-node.js +7 -2
- package/dist/src/presentation/web/components/common/repository-node/repository-node.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/repository-node/repository-node.js +6 -2
- package/dist/src/presentation/web/components/features/control-center/control-center-inner.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/control-center/control-center-inner.js +14 -2
- package/dist/src/presentation/web/components/features/control-center/use-control-center-state.d.ts +3 -5
- package/dist/src/presentation/web/components/features/control-center/use-control-center-state.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/control-center/use-control-center-state.js +131 -196
- package/dist/src/presentation/web/components/features/index.d.ts +1 -1
- package/dist/src/presentation/web/components/features/index.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/index.js +1 -1
- package/dist/src/presentation/web/components/features/tools/index.d.ts +1 -1
- package/dist/src/presentation/web/components/features/tools/index.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/tools/index.js +1 -1
- package/dist/src/presentation/web/components/features/tools/tool-card.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/tools/tool-card.js +11 -12
- package/dist/src/presentation/web/components/features/tools/tool-detail-drawer.d.ts +10 -0
- package/dist/src/presentation/web/components/features/tools/tool-detail-drawer.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/tools/tool-detail-drawer.js +88 -0
- package/dist/src/presentation/web/components/features/tools/tool-detail-drawer.stories.d.ts +12 -0
- package/dist/src/presentation/web/components/features/tools/tool-detail-drawer.stories.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/tools/tool-detail-drawer.stories.js +116 -0
- package/dist/src/presentation/web/components/ui/alert-dialog.d.ts +1 -1
- package/dist/src/presentation/web/components/ui/alert-dialog.d.ts.map +1 -1
- package/dist/src/presentation/web/components/ui/alert-dialog.js +7 -2
- package/dist/src/presentation/web/components/ui/dialog.d.ts.map +1 -1
- package/dist/src/presentation/web/components/ui/dialog.js +6 -1
- package/dist/src/presentation/web/hooks/use-tool-install-stream.d.ts +10 -0
- package/dist/src/presentation/web/hooks/use-tool-install-stream.d.ts.map +1 -0
- package/dist/src/presentation/web/hooks/use-tool-install-stream.js +38 -0
- package/dist/src/presentation/web/lib/layout-with-dagre.d.ts +2 -0
- package/dist/src/presentation/web/lib/layout-with-dagre.d.ts.map +1 -1
- package/dist/src/presentation/web/lib/layout-with-dagre.js +86 -4
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/web/.next/BUILD_ID +1 -1
- package/web/.next/app-path-routes-manifest.json +1 -0
- package/web/.next/build-manifest.json +7 -7
- package/web/.next/cache/.previewinfo +1 -1
- package/web/.next/cache/.rscinfo +1 -1
- package/web/.next/cache/.tsbuildinfo +1 -1
- package/web/.next/cache/config.json +3 -3
- package/web/.next/fallback-build-manifest.json +2 -2
- package/web/.next/prerender-manifest.json +3 -3
- package/web/.next/required-server-files.js +1 -1
- package/web/.next/required-server-files.json +1 -1
- package/web/.next/routes-manifest.json +8 -0
- package/web/.next/server/app/(dashboard)/@drawer/create/page/build-manifest.json +5 -5
- package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +14 -14
- package/web/.next/server/app/(dashboard)/@drawer/create/page.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/build-manifest.json +5 -5
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +17 -17
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/build-manifest.json +5 -5
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +12 -12
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/create/page/build-manifest.json +5 -5
- package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +14 -14
- package/web/.next/server/app/(dashboard)/create/page.js +1 -1
- package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page/build-manifest.json +5 -5
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +17 -17
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/page/build-manifest.json +5 -5
- package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +12 -12
- package/web/.next/server/app/(dashboard)/page.js +1 -1
- package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/build-manifest.json +5 -5
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +12 -12
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/_global-error/page/build-manifest.json +5 -5
- package/web/.next/server/app/_global-error.html +2 -2
- package/web/.next/server/app/_global-error.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/web/.next/server/app/_not-found/page/build-manifest.json +5 -5
- package/web/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
- package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/api/tools/[id]/install/route.js +1 -1
- package/web/.next/server/app/api/tools/[id]/install/route.js.nft.json +1 -1
- package/web/.next/server/app/api/tools/[id]/install/stream/route/app-paths-manifest.json +3 -0
- package/web/.next/server/app/api/tools/[id]/install/stream/route/build-manifest.json +11 -0
- package/web/.next/server/app/api/tools/[id]/install/stream/route/server-reference-manifest.json +4 -0
- package/web/.next/server/app/api/tools/[id]/install/stream/route.js +6 -0
- package/web/.next/server/app/api/tools/[id]/install/stream/route.js.map +5 -0
- package/web/.next/server/app/api/tools/[id]/install/stream/route.js.nft.json +1 -0
- package/web/.next/server/app/api/tools/[id]/install/stream/route_client-reference-manifest.js +2 -0
- package/web/.next/server/app/skills/page/build-manifest.json +5 -5
- package/web/.next/server/app/skills/page/server-reference-manifest.json +6 -6
- package/web/.next/server/app/skills/page.js +1 -1
- package/web/.next/server/app/skills/page.js.nft.json +1 -1
- package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/tools/page/build-manifest.json +5 -5
- package/web/.next/server/app/tools/page/server-reference-manifest.json +77 -2
- package/web/.next/server/app/tools/page.js +2 -2
- package/web/.next/server/app/tools/page.js.nft.json +1 -1
- package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/version/page/build-manifest.json +5 -5
- package/web/.next/server/app/version/page/server-reference-manifest.json +1 -1
- package/web/.next/server/app/version/page.js.nft.json +1 -1
- package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app-paths-manifest.json +1 -0
- package/web/.next/server/chunks/[root-of-the-server]__0866d2b5._.js +3 -0
- package/web/.next/server/chunks/[root-of-the-server]__0866d2b5._.js.map +1 -0
- package/web/.next/server/chunks/[root-of-the-server]__e247a485._.js +11 -0
- package/web/.next/server/chunks/[root-of-the-server]__e247a485._.js.map +1 -0
- package/web/.next/server/chunks/f3a1f__next-internal_server_app_api_tools_[id]_install_stream_route_actions_1fe5bd5d.js +3 -0
- package/web/.next/server/chunks/f3a1f__next-internal_server_app_api_tools_[id]_install_stream_route_actions_1fe5bd5d.js.map +1 -0
- package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
- package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_2b7834f6.js +1 -1
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_2b7834f6.js.map +1 -1
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_6923c575.js +1 -1
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_6923c575.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__17a611f0._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__17a611f0._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__249c74f6._.js +1 -1
- package/web/.next/{standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__07385073._.js → server/chunks/ssr/[root-of-the-server]__45dbf93d._.js} +3 -3
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__07385073._.js.map → [root-of-the-server]__45dbf93d._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6b17a22d._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6b17a22d._.js.map +1 -1
- package/web/.next/{standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__8fcb9132._.js → server/chunks/ssr/[root-of-the-server]__6cbc1149._.js} +3 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6cbc1149._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__804c006d._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__804c006d._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__aef6b3cd._.js +3 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__8c1a3d66._.js.map → [root-of-the-server]__aef6b3cd._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c04c8ff2._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c04c8ff2._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c134fc13._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c134fc13._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c18f84a4._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c18f84a4._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_07c2a32a._.js +1 -1
- package/web/.next/server/chunks/ssr/_07c2a32a._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_0e9d6bf7._.js +3 -0
- package/web/.next/server/chunks/ssr/_0e9d6bf7._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_3197d5cb._.js +3 -0
- package/web/.next/server/chunks/ssr/_3197d5cb._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_4e5db14b._.js +7 -0
- package/web/.next/server/chunks/ssr/_4e5db14b._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_61351ed3._.js +3 -0
- package/web/.next/server/chunks/ssr/_61351ed3._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_797dbf60._.js +3 -0
- package/web/.next/server/chunks/ssr/_797dbf60._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_8400c8bb._.js +3 -0
- package/web/.next/server/chunks/ssr/_8400c8bb._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_a29296f0._.js +3 -0
- package/web/.next/server/chunks/ssr/_a29296f0._.js.map +1 -0
- package/web/.next/{standalone/src/presentation/web/.next/server/chunks/ssr/_e50484ec._.js → server/chunks/ssr/_a2a86eed._.js} +2 -2
- package/web/.next/server/chunks/ssr/{_e50484ec._.js.map → _a2a86eed._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/_dd1c549f._.js +3 -0
- package/web/.next/server/chunks/ssr/_dd1c549f._.js.map +1 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_1a32dbcb._.js +2 -2
- package/web/.next/server/chunks/ssr/src_presentation_web_1a32dbcb._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_398553b0._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_398553b0._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_5c87e8e4._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_5c87e8e4._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_f4952172.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_f4952172.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_c1bc6240._.js +2 -2
- package/web/.next/server/chunks/ssr/src_presentation_web_c1bc6240._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_features_tools_tools-page-client_tsx_3d0aa70c._.js +3 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_components_features_tools_tools-page-client_tsx_3d0aa70c._.js.map +1 -0
- package/web/.next/server/middleware-build-manifest.js +5 -5
- package/web/.next/server/pages/500.html +2 -2
- package/web/.next/server/server-reference-manifest.js +1 -1
- package/web/.next/server/server-reference-manifest.json +61 -26
- package/web/.next/standalone/src/presentation/web/.next/BUILD_ID +1 -1
- package/web/.next/standalone/src/presentation/web/.next/app-path-routes-manifest.json +1 -0
- package/web/.next/standalone/src/presentation/web/.next/build-manifest.json +7 -7
- package/web/.next/standalone/src/presentation/web/.next/prerender-manifest.json +3 -3
- package/web/.next/standalone/src/presentation/web/.next/required-server-files.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/routes-manifest.json +8 -0
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/create/page/build-manifest.json +5 -5
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +14 -14
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/create/page.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/build-manifest.json +5 -5
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +17 -17
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/build-manifest.json +5 -5
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +12 -12
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/create/page/build-manifest.json +5 -5
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +14 -14
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/create/page.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/feature/[featureId]/page/build-manifest.json +5 -5
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +17 -17
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/page/build-manifest.json +5 -5
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +12 -12
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/page.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/build-manifest.json +5 -5
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +12 -12
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error/page/build-manifest.json +5 -5
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.html +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.rsc +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_not-found/page/build-manifest.json +5 -5
- package/web/.next/standalone/src/presentation/web/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/api/tools/[id]/install/route.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/api/tools/[id]/install/route.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/api/tools/[id]/install/stream/route/app-paths-manifest.json +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/app/api/tools/[id]/install/stream/route/build-manifest.json +11 -0
- package/web/.next/standalone/src/presentation/web/.next/server/app/api/tools/[id]/install/stream/route/server-reference-manifest.json +4 -0
- package/web/.next/standalone/src/presentation/web/.next/server/app/api/tools/[id]/install/stream/route.js +6 -0
- package/web/.next/standalone/src/presentation/web/.next/server/app/api/tools/[id]/install/stream/route.js.map +5 -0
- package/web/.next/standalone/src/presentation/web/.next/server/app/api/tools/[id]/install/stream/route.js.nft.json +1 -0
- package/web/.next/standalone/src/presentation/web/.next/server/app/api/tools/[id]/install/stream/route_client-reference-manifest.js +2 -0
- package/web/.next/standalone/src/presentation/web/.next/server/app/skills/page/build-manifest.json +5 -5
- package/web/.next/standalone/src/presentation/web/.next/server/app/skills/page/server-reference-manifest.json +6 -6
- package/web/.next/standalone/src/presentation/web/.next/server/app/skills/page.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/skills/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/tools/page/build-manifest.json +5 -5
- package/web/.next/standalone/src/presentation/web/.next/server/app/tools/page/server-reference-manifest.json +77 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/tools/page.js +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/tools/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/version/page/build-manifest.json +5 -5
- package/web/.next/standalone/src/presentation/web/.next/server/app/version/page/server-reference-manifest.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/version/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app-paths-manifest.json +1 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/[root-of-the-server]__0866d2b5._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/[root-of-the-server]__e247a485._.js +11 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/f3a1f__next-internal_server_app_api_tools_[id]_install_stream_route_actions_1fe5bd5d.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_2b7834f6.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_6923c575.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__17a611f0._.js +4 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__249c74f6._.js +1 -1
- package/web/.next/{server/chunks/ssr/[root-of-the-server]__07385073._.js → standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__45dbf93d._.js} +3 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__6b17a22d._.js +1 -1
- package/web/.next/{server/chunks/ssr/[root-of-the-server]__8fcb9132._.js → standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__6cbc1149._.js} +3 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__804c006d._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__aef6b3cd._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__c04c8ff2._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__c134fc13._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__c18f84a4._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_07c2a32a._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_0e9d6bf7._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_3197d5cb._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_4e5db14b._.js +7 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_61351ed3._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_797dbf60._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_8400c8bb._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_a29296f0._.js +3 -0
- package/web/.next/{server/chunks/ssr/_e50484ec._.js → standalone/src/presentation/web/.next/server/chunks/ssr/_a2a86eed._.js} +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_dd1c549f._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_1a32dbcb._.js +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_398553b0._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_5c87e8e4._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_f4952172.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_c1bc6240._.js +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_components_features_tools_tools-page-client_tsx_3d0aa70c._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/middleware-build-manifest.js +5 -5
- package/web/.next/standalone/src/presentation/web/.next/server/pages/500.html +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/server-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/server-reference-manifest.json +61 -26
- package/web/.next/standalone/src/presentation/web/app/(dashboard)/get-graph-data.ts +2 -6
- package/web/.next/standalone/src/presentation/web/app/api/tools/[id]/install/route.ts +14 -6
- package/web/.next/standalone/src/presentation/web/app/api/tools/[id]/install/stream/route.ts +42 -0
- package/web/.next/standalone/src/presentation/web/app/build-graph-nodes.ts +14 -1
- package/web/.next/standalone/src/presentation/web/components/common/base-drawer/base-drawer.tsx +10 -8
- package/web/.next/standalone/src/presentation/web/components/common/control-center-drawer/create-drawer-client.tsx +13 -3
- package/web/.next/standalone/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.tsx +6 -2
- package/web/.next/standalone/src/presentation/web/components/common/drawer-action-bar/drawer-action-bar.tsx +2 -0
- package/web/.next/standalone/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.tsx +8 -5
- package/web/.next/standalone/src/presentation/web/components/common/feature-node/feature-node.tsx +30 -24
- package/web/.next/standalone/src/presentation/web/components/common/repository-node/repository-node.tsx +33 -25
- package/web/.next/standalone/src/presentation/web/components/features/control-center/control-center-inner.tsx +25 -3
- package/web/.next/standalone/src/presentation/web/components/features/control-center/use-control-center-state.ts +184 -230
- package/web/.next/standalone/src/presentation/web/components/features/index.ts +1 -1
- package/web/.next/standalone/src/presentation/web/components/features/tools/index.ts +1 -1
- package/web/.next/standalone/src/presentation/web/components/features/tools/tool-card.tsx +52 -56
- package/web/.next/standalone/src/presentation/web/components/features/tools/tool-detail-drawer.stories.tsx +129 -0
- package/web/.next/standalone/src/presentation/web/components/features/tools/tool-detail-drawer.tsx +277 -0
- package/web/.next/standalone/src/presentation/web/components/ui/alert-dialog.tsx +7 -0
- package/web/.next/standalone/src/presentation/web/components/ui/dialog.tsx +7 -1
- package/web/.next/standalone/src/presentation/web/hooks/use-tool-install-stream.ts +58 -0
- package/web/.next/standalone/src/presentation/web/lib/layout-with-dagre.ts +93 -4
- package/web/.next/standalone/src/presentation/web/server.js +1 -1
- package/web/.next/static/chunks/0c54314c8c9c9739.js +7 -0
- package/web/.next/static/chunks/3969f00d871743f5.js +1 -0
- package/web/.next/static/chunks/5d0a6417c4e4e545.js +1 -0
- package/web/.next/static/chunks/603dfc7302d69eea.js +1 -0
- package/web/.next/static/chunks/6059a88955f582cc.js +1 -0
- package/web/.next/static/chunks/6a97d80f8c80abea.js +5 -0
- package/web/.next/static/chunks/84a181ff3270fd9f.js +1 -0
- package/web/.next/static/chunks/b1ac668fe8c3cfe7.css +2 -0
- package/web/.next/static/chunks/bc08901495944d5d.js +1 -0
- package/web/.next/static/chunks/bfa8014b2e37a6e3.js +1 -0
- package/web/.next/static/chunks/{d4ecce2ac7795bd9.js → c81a2c46730b4afb.js} +1 -1
- package/web/.next/static/chunks/{8b36e07129a1471f.js → ccdb4b72cf686304.js} +1 -1
- package/web/.next/static/chunks/edbd674102e897b4.js +1 -0
- package/web/.next/static/chunks/{412a3ac70c529c5b.js → f089dd8f35a6d79c.js} +1 -1
- package/web/.next/static/chunks/f5a543a8ccb7e8b9.js +1 -0
- package/web/.next/static/chunks/{fc07834e422b1caa.js → fe2a7112664de6d7.js} +1 -1
- package/web/.next/static/chunks/{turbopack-3a8fe0e18e69b0ab.js → turbopack-05820f781f3ffc22.js} +1 -1
- package/web/.next/trace +1 -1
- package/web/.next/trace-build +1 -1
- package/web/.next/types/link.d.ts +1 -0
- package/web/.next/types/routes.d.ts +2 -1
- package/web/.next/types/validator.ts +9 -0
- package/dist/src/presentation/web/components/features/tools/install-instructions.d.ts +0 -9
- package/dist/src/presentation/web/components/features/tools/install-instructions.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/tools/install-instructions.js +0 -19
- package/dist/src/presentation/web/components/features/tools/install-instructions.stories.d.ts +0 -12
- package/dist/src/presentation/web/components/features/tools/install-instructions.stories.d.ts.map +0 -1
- package/dist/src/presentation/web/components/features/tools/install-instructions.stories.js +0 -77
- package/web/.next/server/chunks/[root-of-the-server]__b1f03347._.js +0 -3
- package/web/.next/server/chunks/[root-of-the-server]__b1f03347._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__08ba9bd3._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__08ba9bd3._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6bb00d90._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6bb00d90._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6db85a66._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6db85a66._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__8c1a3d66._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__8fcb9132._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__9d14479b._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__9d14479b._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__d4e51258._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__d4e51258._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__fe2a7deb._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__fe2a7deb._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_00e6c698._.js +0 -3
- package/web/.next/server/chunks/ssr/_00e6c698._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_13566ff3._.js +0 -3
- package/web/.next/server/chunks/ssr/_13566ff3._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_26129e04._.js +0 -3
- package/web/.next/server/chunks/ssr/_26129e04._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_34a58db8._.js +0 -3
- package/web/.next/server/chunks/ssr/_34a58db8._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_37259405._.js +0 -3
- package/web/.next/server/chunks/ssr/_37259405._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_85d0351b._.js +0 -3
- package/web/.next/server/chunks/ssr/_85d0351b._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_cb5b3951._.js +0 -3
- package/web/.next/server/chunks/ssr/_cb5b3951._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_fc3a6895._.js +0 -3
- package/web/.next/server/chunks/ssr/_fc3a6895._.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules__pnpm_3288606c._.js +0 -7
- package/web/.next/server/chunks/ssr/node_modules__pnpm_3288606c._.js.map +0 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/[root-of-the-server]__b1f03347._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__08ba9bd3._.js +0 -4
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__6bb00d90._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__6db85a66._.js +0 -4
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__8c1a3d66._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__9d14479b._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__d4e51258._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__fe2a7deb._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_00e6c698._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_13566ff3._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_26129e04._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_34a58db8._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_37259405._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_85d0351b._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_cb5b3951._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_fc3a6895._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/node_modules__pnpm_3288606c._.js +0 -7
- package/web/.next/standalone/src/presentation/web/components/features/tools/install-instructions.stories.tsx +0 -89
- package/web/.next/standalone/src/presentation/web/components/features/tools/install-instructions.tsx +0 -109
- package/web/.next/static/chunks/06b6b02bab76aee7.js +0 -1
- package/web/.next/static/chunks/06dfd668334ffb4e.js +0 -7
- package/web/.next/static/chunks/07fcc6d17357e905.js +0 -1
- package/web/.next/static/chunks/224ed5f5dbd33154.css +0 -2
- package/web/.next/static/chunks/32957ff277daec59.js +0 -1
- package/web/.next/static/chunks/3e1227e02ef8bcc6.js +0 -5
- package/web/.next/static/chunks/550bf3cb8220cbf0.js +0 -1
- package/web/.next/static/chunks/5f5c607ffae8b918.js +0 -1
- package/web/.next/static/chunks/64d73952a0291431.js +0 -1
- package/web/.next/static/chunks/c7e793951b20a67f.js +0 -1
- package/web/.next/static/chunks/e44849eb58a3335f.js +0 -1
- package/web/.next/static/chunks/ecb2130572a7fbe7.js +0 -1
- /package/web/.next/static/{7K6dTYQIJ7__PLUYLLfZV → 5-_wERRI1P-m4Tl0xR0UI}/_buildManifest.js +0 -0
- /package/web/.next/static/{7K6dTYQIJ7__PLUYLLfZV → 5-_wERRI1P-m4Tl0xR0UI}/_clientMiddlewareManifest.json +0 -0
- /package/web/.next/static/{7K6dTYQIJ7__PLUYLLfZV → 5-_wERRI1P-m4Tl0xR0UI}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[92163,a=>{"use strict";var b=a.i(10973),c=a.i(96960),d=a.i(17300),e=a.i(41305),f=a.i(85536),g=a.i(25700);let h=(0,g.default)("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]);var i=a.i(88064);let j=(0,g.default)("rocket",[["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z",key:"m3kijz"}],["path",{d:"m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z",key:"1fmvmk"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0",key:"1f8sc4"}],["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}]]),k=(0,g.default)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]),l=(0,g.default)("monitor",[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]]);var m=a.i(63698),n=a.i(53170),o=a.i(56926),p=a.i(72016);let q=(0,g.default)("package",[["path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",key:"1a0edw"}],["path",{d:"M12 22V12",key:"d0xqtd"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}]]);var r=a.i(18948),s=a.i(98410),t=a.i(71238),u=a.i(24255);let v={ide:{label:"IDE",icon:l},"cli-agent":{label:"CLI Agent",icon:m.Terminal},vcs:{label:"VCS",icon:n.GitBranch},terminal:{label:"Terminal",icon:m.Terminal}};function w({status:a}){return"available"===a?(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-full bg-emerald-100 px-2 py-0.5 text-xs font-medium text-emerald-700 dark:bg-emerald-900/30 dark:text-emerald-400",children:[(0,b.jsx)(p.Check,{className:"h-3 w-3"}),"Installed"]}):"error"===a?(0,b.jsx)("span",{className:"inline-flex items-center gap-1 rounded-full bg-red-100 px-2 py-0.5 text-xs font-medium text-red-700 dark:bg-red-900/30 dark:text-red-400",children:"Error"}):(0,b.jsx)("span",{className:"inline-flex items-center gap-1 rounded-full bg-amber-100 px-2 py-0.5 text-xs font-medium text-amber-700 dark:bg-amber-900/30 dark:text-amber-400",children:"Missing"})}function x({tool:a,open:d,onClose:e,onRefresh:f,autoStart:g}){let[h,m]=(0,c.useState)(!1),[n,o]=(0,c.useState)(!1),{logs:x,status:y,startInstall:z}=function(a){let[b,d]=(0,c.useState)([]),[e,f]=(0,c.useState)("idle"),[g,h]=(0,c.useState)(null),i=(0,c.useRef)(null),j=(0,c.useCallback)(()=>{i.current&&(i.current.close(),i.current=null)},[]);return(0,c.useEffect)(()=>j,[j]),{logs:b,status:e,result:g,startInstall:(0,c.useCallback)(()=>{j(),d([]),h(null),f("streaming");let b=new EventSource(`/api/tools/${a}/install/stream`);i.current=b,b.onmessage=a=>{d(b=>[...b,a.data])},b.addEventListener("done",a=>{let b=JSON.parse(a.data);h(b),f("error"===b.status?"error":"done"),j()}),b.onerror=()=>{f("error"),j()}},[a,j])}}(a.id),A=(0,c.useRef)(null),B=(0,c.useRef)(!0),C=(0,c.useRef)(!1),D="available"===a.status.status,E="error"===a.status.status,F=D&&!!a.openDirectory,G=!D&&!E&&a.autoInstall;async function H(){o(!0);try{await fetch(`/api/tools/${a.id}/launch`,{method:"POST"})}finally{o(!1)}}(0,c.useEffect)(()=>{d&&g&&G&&"idle"===y&&!C.current&&(C.current=!0,z()),d||(C.current=!1)},[d,g,G,y,z]);let I=(0,c.useCallback)(()=>{let a=A.current;a&&(B.current=a.scrollTop+a.clientHeight>=a.scrollHeight-50)},[]);(0,c.useEffect)(()=>{B.current&&A.current&&(A.current.scrollTop=A.current.scrollHeight)},[x]),(0,c.useEffect)(()=>{"done"===y&&f&&f()},[y,f]);let J=(0,b.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[a.iconUrl?(0,b.jsx)("img",{src:a.iconUrl,alt:"",width:24,height:24,className:"shrink-0 dark:invert"}):(0,b.jsx)(q,{className:"text-muted-foreground h-6 w-6 shrink-0"}),(0,b.jsx)("h2",{className:"text-base font-bold",children:a.name}),(0,b.jsx)(w,{status:a.status.status})]}),(0,b.jsx)("div",{className:"flex items-center gap-1",children:a.tags.map(a=>{let c=v[a]??{label:a,icon:l},d=c.icon;return(0,b.jsxs)("span",{className:"bg-muted text-muted-foreground inline-flex items-center gap-0.5 rounded px-1.5 py-0.5 text-[10px] font-medium",children:[(0,b.jsx)(d,{className:"h-2.5 w-2.5"}),c.label]},a)})})]});return(0,b.jsx)(u.BaseDrawer,{open:d,onClose:e,size:"md",modal:!1,header:J,"data-testid":"tool-detail-drawer",children:(0,b.jsxs)("div",{className:"flex flex-1 flex-col gap-4 overflow-y-auto p-4",children:[(0,b.jsx)("div",{children:(0,b.jsx)("p",{className:"text-muted-foreground text-sm",children:a.description})}),a.installCommand?(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsx)("span",{className:"text-muted-foreground text-xs font-medium",children:"Install command"}),(0,b.jsxs)("div",{className:"relative rounded-md bg-zinc-900 text-zinc-100",children:[(0,b.jsx)("pre",{className:"overflow-x-auto px-3 py-2.5 pr-16 font-mono text-xs leading-relaxed break-all whitespace-pre-wrap",children:(0,b.jsx)("code",{children:a.installCommand})}),(0,b.jsxs)(r.Button,{variant:"ghost",size:"sm",className:"absolute top-1.5 right-1.5 h-7 cursor-pointer px-2 text-zinc-400 hover:text-zinc-100",onClick:function(){a.installCommand&&navigator.clipboard.writeText(a.installCommand).then(()=>{m(!0),setTimeout(()=>m(!1),2e3)})},"aria-label":h?"Copied!":"Copy install command",children:[h?(0,b.jsx)(p.Check,{className:"h-3.5 w-3.5 text-emerald-500"}):(0,b.jsx)(s.Copy,{className:"h-3.5 w-3.5"}),(0,b.jsx)("span",{className:"ml-1 text-[10px]",children:h?"Copied!":"Copy"})]})]})]}):null,(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[G?(0,b.jsxs)(r.Button,{size:"sm",onClick:z,disabled:"streaming"===y,"aria-label":`Install ${a.name}`,className:"cursor-pointer",children:["streaming"===y?(0,b.jsx)(i.Loader2,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}):(0,b.jsx)(k,{className:"mr-1.5 h-3.5 w-3.5"}),"streaming"===y?"Installing...":"Install"]}):null,F?(0,b.jsxs)(r.Button,{size:"sm",variant:"outline",onClick:()=>void H(),disabled:n,"aria-label":`Launch ${a.name}`,className:"cursor-pointer",children:[n?(0,b.jsx)(i.Loader2,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}):(0,b.jsx)(j,{className:"mr-1.5 h-3.5 w-3.5"}),"Launch"]}):null]}),("streaming"===y||"done"===y||"error"===y)&&x.length>0?(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsx)("span",{className:"text-muted-foreground text-xs font-medium",children:"Install log"}),(0,b.jsxs)("div",{ref:A,onScroll:I,className:"max-h-60 overflow-auto rounded-md bg-zinc-900 p-3 font-mono text-xs leading-relaxed text-zinc-100","data-testid":"tool-install-log",children:[x.map(a=>(0,b.jsx)("div",{className:"break-all whitespace-pre-wrap",children:a},a)),"done"===y?(0,b.jsx)("div",{className:"mt-2 border-t border-zinc-700 pt-2 text-emerald-400",children:"Installation complete"}):null,"error"===y?(0,b.jsx)("div",{className:"mt-2 border-t border-zinc-700 pt-2 text-red-400",children:"Installation failed"}):null]})]}):null,a.documentationUrl?(0,b.jsx)(r.Button,{variant:"outline",size:"sm",className:"w-fit cursor-pointer",asChild:!0,children:(0,b.jsxs)("a",{href:a.documentationUrl,target:"_blank",rel:"noopener noreferrer",children:["Documentation",(0,b.jsx)(t.ExternalLink,{className:"ml-1.5 h-3.5 w-3.5"})]})}):null]})})}let y={ide:{label:"IDE",icon:l},"cli-agent":{label:"CLI Agent",icon:m.Terminal},vcs:{label:"VCS",icon:n.GitBranch},terminal:{label:"Terminal",icon:m.Terminal}};function z({tool:a,onRefresh:d,className:e}){let[g,m]=(0,c.useState)(!1),[n,s]=(0,c.useState)(!1),[t,u]=(0,c.useTransition)(),v="available"===a.status.status,w="error"===a.status.status,z=v&&!!a.openDirectory;return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{"data-testid":"tool-card",className:(0,f.cn)("bg-card group flex h-30 w-full flex-col rounded-lg border p-3 shadow-sm transition-shadow hover:shadow-md",e),children:[(0,b.jsxs)("div",{className:"mb-2 flex items-start justify-between gap-2",children:[(0,b.jsxs)("div",{className:"flex min-w-0 items-center gap-2",children:[a.iconUrl?(0,b.jsx)("img",{src:a.iconUrl,alt:"",width:20,height:20,className:"shrink-0 dark:invert"}):(0,b.jsx)(q,{className:"text-muted-foreground h-5 w-5 shrink-0"}),(0,b.jsx)("h3",{"data-testid":"tool-card-name",className:"truncate text-sm font-bold",children:a.name})]}),(0,b.jsx)("div",{"data-testid":"tool-card-tags",className:"flex shrink-0 items-center gap-1",children:a.tags.map(a=>{let c=y[a]??{label:a,icon:l},d=c.icon;return(0,b.jsxs)("span",{className:"bg-muted text-muted-foreground inline-flex items-center gap-0.5 rounded px-1.5 py-0.5 text-[10px] font-medium",children:[(0,b.jsx)(d,{className:"h-2.5 w-2.5"}),c.label]},a)})})]}),(0,b.jsx)("p",{"data-testid":"tool-card-summary",className:"text-muted-foreground mt-1 truncate text-xs",children:a.summary}),(0,b.jsxs)("div",{className:"mt-auto flex items-center justify-between pt-3",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[w&&"error"===a.status.status?(0,b.jsxs)("span",{className:"flex items-center gap-1 truncate text-[10px] text-red-600 dark:text-red-400",title:a.status.errorMessage,children:[(0,b.jsx)(o.CircleX,{className:"h-3 w-3 shrink-0"}),a.status.errorMessage??"Error"]}):v?(0,b.jsxs)("span",{className:"flex items-center gap-1 text-[11px] text-emerald-600 dark:text-emerald-400",children:[(0,b.jsx)(p.Check,{className:"h-3 w-3"}),"Installed"]}):(0,b.jsx)("span",{className:"text-muted-foreground text-[10px]",children:"Not installed"}),a.required?(0,b.jsx)("span",{className:"text-muted-foreground text-[10px] italic",children:"Required"}):null]}),(0,b.jsxs)("div",{className:"flex items-center gap-1",children:[(0,b.jsx)(r.Button,{size:"sm",variant:"ghost",onClick:()=>{s(!1),m(!0)},"aria-label":`View details for ${a.name}`,"data-testid":"tool-card-info-button",className:"h-7 w-7 cursor-pointer rounded-md p-0",children:(0,b.jsx)(h,{className:"h-3.5 w-3.5"})}),v&&z?(0,b.jsxs)(r.Button,{size:"sm",variant:"ghost",onClick:function(){u(async()=>{await fetch(`/api/tools/${a.id}/launch`,{method:"POST"})})},disabled:t,"aria-label":`Launch ${a.name}`,"data-testid":"tool-card-launch-button",className:"hover:bg-primary hover:text-primary-foreground h-7 cursor-pointer rounded-md px-3 text-xs",children:[t?(0,b.jsx)(i.Loader2,{className:"mr-1 h-3 w-3 animate-spin"}):(0,b.jsx)(j,{className:"mr-1 h-3 w-3"}),"Launch"]}):v||w?null:(0,b.jsxs)(r.Button,{size:"sm",variant:a.autoInstall?"default":"outline",onClick:()=>{s(a.autoInstall),m(!0)},"aria-label":`Install ${a.name}`,"data-testid":"tool-card-install-button",className:"h-7 cursor-pointer rounded-md px-3 text-xs",children:[(0,b.jsx)(k,{className:"mr-1 h-3 w-3"}),"Install"]})]})]})]}),(0,b.jsx)(x,{tool:a,open:g,onClose:()=>m(!1),onRefresh:d,autoStart:n})]})}let A={all:()=>!0,ide:a=>a.tags.includes("ide"),"cli-agent":a=>a.tags.includes("cli-agent"),vcs:a=>a.tags.includes("vcs"),terminal:a=>a.tags.includes("terminal")};function B({tools:a,className:g}){let[h,i]=(0,c.useState)(a),[j,k]=(0,c.useState)("all");async function l(){try{let a=await fetch("/api/tools");if(a.ok){let b=await a.json();i(b)}}catch{}}let m=h.filter(A[j]);return(0,b.jsxs)("div",{"data-testid":"tools-page-client",className:(0,f.cn)("space-y-4",g),children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(d.Wrench,{className:"text-muted-foreground h-4 w-4"}),(0,b.jsx)("h1",{className:"text-sm font-bold tracking-tight",children:"Tools"}),(0,b.jsxs)("span",{className:"text-muted-foreground text-[10px]",children:[h.filter(a=>"available"===a.status.status).length,"/",h.length," installed"]})]}),(0,b.jsxs)(e.Tabs,{value:j,onValueChange:a=>k(a),"data-testid":"tools-page-tabs",children:[(0,b.jsxs)(e.TabsList,{className:"h-7",children:[(0,b.jsx)(e.TabsTrigger,{value:"all","data-testid":"tools-tab-all",className:"px-2.5 text-xs",children:"All"}),(0,b.jsx)(e.TabsTrigger,{value:"ide","data-testid":"tools-tab-ide",className:"px-2.5 text-xs",children:"IDEs"}),(0,b.jsx)(e.TabsTrigger,{value:"cli-agent","data-testid":"tools-tab-cli-agent",className:"px-2.5 text-xs",children:"CLI Agents"}),(0,b.jsx)(e.TabsTrigger,{value:"vcs","data-testid":"tools-tab-vcs",className:"px-2.5 text-xs",children:"Version Control"}),(0,b.jsx)(e.TabsTrigger,{value:"terminal","data-testid":"tools-tab-terminal",className:"px-2.5 text-xs",children:"Terminals"})]}),(0,b.jsx)(e.TabsContent,{value:j,className:"mt-3",children:0===m.length?(0,b.jsxs)("div",{"data-testid":"tools-page-empty",className:"text-muted-foreground flex flex-col items-center justify-center py-12 text-center",children:[(0,b.jsx)(d.Wrench,{className:"mb-2 h-6 w-6 opacity-20"}),(0,b.jsx)("p",{className:"text-xs",children:"No tools in this category."})]}):(0,b.jsx)("div",{"data-testid":"tools-page-grid",className:"grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4",children:m.map(a=>(0,b.jsx)(z,{tool:a,onRefresh:l},a.id))})})]})]})}a.s(["ToolsPageClient",()=>B],92163)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=src_presentation_web_components_features_tools_tools-page-client_tsx_3d0aa70c._.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../../src/presentation/web/hooks/use-tool-install-stream.ts","../../../../../../../src/presentation/web/components/features/tools/tool-detail-drawer.tsx","../../../../../../../src/presentation/web/components/features/tools/tool-card.tsx","../../../../../../../src/presentation/web/components/features/tools/tools-page-client.tsx","../../../../../../../node_modules/.pnpm/lucide-react%400.563.0_react%4019.2.4/node_modules/lucide-react/src/icons/package.ts","../../../../../../../node_modules/.pnpm/lucide-react%400.563.0_react%4019.2.4/node_modules/lucide-react/src/icons/rocket.ts","../../../../../../../node_modules/.pnpm/lucide-react%400.563.0_react%4019.2.4/node_modules/lucide-react/src/icons/download.ts","../../../../../../../node_modules/.pnpm/lucide-react%400.563.0_react%4019.2.4/node_modules/lucide-react/src/icons/monitor.ts","../../../../../../../node_modules/.pnpm/lucide-react%400.563.0_react%4019.2.4/node_modules/lucide-react/src/icons/info.ts"],"sourcesContent":["'use client';\n\nimport { useState, useRef, useCallback, useEffect } from 'react';\nimport type { ToolInstallationStatus } from '@shepai/core/domain/generated/output';\n\nexport type InstallStreamStatus = 'idle' | 'streaming' | 'done' | 'error';\n\nexport interface UseToolInstallStreamResult {\n logs: string[];\n status: InstallStreamStatus;\n result: ToolInstallationStatus | null;\n startInstall: () => void;\n}\n\nexport function useToolInstallStream(toolId: string): UseToolInstallStreamResult {\n const [logs, setLogs] = useState<string[]>([]);\n const [status, setStatus] = useState<InstallStreamStatus>('idle');\n const [result, setResult] = useState<ToolInstallationStatus | null>(null);\n const esRef = useRef<EventSource | null>(null);\n\n const cleanup = useCallback(() => {\n if (esRef.current) {\n esRef.current.close();\n esRef.current = null;\n }\n }, []);\n\n // Cleanup on unmount\n useEffect(() => cleanup, [cleanup]);\n\n const startInstall = useCallback(() => {\n cleanup();\n setLogs([]);\n setResult(null);\n setStatus('streaming');\n\n const es = new EventSource(`/api/tools/${toolId}/install/stream`);\n esRef.current = es;\n\n es.onmessage = (event: MessageEvent) => {\n setLogs((prev) => [...prev, event.data]);\n };\n\n es.addEventListener('done', (event: MessageEvent) => {\n const installResult: ToolInstallationStatus = JSON.parse(event.data);\n setResult(installResult);\n setStatus(installResult.status === 'error' ? 'error' : 'done');\n cleanup();\n });\n\n es.onerror = () => {\n setStatus('error');\n cleanup();\n };\n }, [toolId, cleanup]);\n\n return { logs, status, result, startInstall };\n}\n","'use client';\n\nimport { useState, useRef, useEffect, useCallback } from 'react';\nimport {\n Copy,\n Check,\n ExternalLink,\n Download,\n Rocket,\n Loader2,\n Monitor,\n Terminal,\n GitBranch,\n Package,\n} from 'lucide-react';\nimport { Button } from '@/components/ui/button';\nimport { BaseDrawer } from '@/components/common/base-drawer/base-drawer';\nimport { useToolInstallStream } from '@/hooks/use-tool-install-stream';\nimport type { ToolItem } from '@shepai/core/application/use-cases/tools/list-tools.use-case';\n\nexport interface ToolDetailDrawerProps {\n tool: ToolItem;\n open: boolean;\n onClose: () => void;\n onRefresh?: () => Promise<void>;\n autoStart?: boolean;\n}\n\nconst TAG_CONFIG: Record<string, { label: string; icon: typeof Monitor }> = {\n ide: { label: 'IDE', icon: Monitor },\n 'cli-agent': { label: 'CLI Agent', icon: Terminal },\n vcs: { label: 'VCS', icon: GitBranch },\n terminal: { label: 'Terminal', icon: Terminal },\n};\n\nconst AUTO_SCROLL_THRESHOLD = 50;\n\nfunction StatusBadge({ status }: { status: string }) {\n if (status === 'available') {\n return (\n <span className=\"inline-flex items-center gap-1 rounded-full bg-emerald-100 px-2 py-0.5 text-xs font-medium text-emerald-700 dark:bg-emerald-900/30 dark:text-emerald-400\">\n <Check className=\"h-3 w-3\" />\n Installed\n </span>\n );\n }\n if (status === 'error') {\n return (\n <span className=\"inline-flex items-center gap-1 rounded-full bg-red-100 px-2 py-0.5 text-xs font-medium text-red-700 dark:bg-red-900/30 dark:text-red-400\">\n Error\n </span>\n );\n }\n return (\n <span className=\"inline-flex items-center gap-1 rounded-full bg-amber-100 px-2 py-0.5 text-xs font-medium text-amber-700 dark:bg-amber-900/30 dark:text-amber-400\">\n Missing\n </span>\n );\n}\n\nexport function ToolDetailDrawer({\n tool,\n open,\n onClose,\n onRefresh,\n autoStart,\n}: ToolDetailDrawerProps) {\n const [copied, setCopied] = useState(false);\n const [isLaunching, setIsLaunching] = useState(false);\n const { logs, status, startInstall } = useToolInstallStream(tool.id);\n const logRef = useRef<HTMLDivElement>(null);\n const isAtBottomRef = useRef(true);\n const autoStartedRef = useRef(false);\n\n const isInstalled = tool.status.status === 'available';\n const isError = tool.status.status === 'error';\n const canLaunch = isInstalled && Boolean(tool.openDirectory);\n const canInstall = !isInstalled && !isError && tool.autoInstall;\n\n // Auto-start install when drawer opens with autoStart flag\n useEffect(() => {\n if (open && autoStart && canInstall && status === 'idle' && !autoStartedRef.current) {\n autoStartedRef.current = true;\n startInstall();\n }\n if (!open) {\n autoStartedRef.current = false;\n }\n }, [open, autoStart, canInstall, status, startInstall]);\n\n function handleCopy() {\n if (!tool.installCommand) return;\n void navigator.clipboard.writeText(tool.installCommand).then(() => {\n setCopied(true);\n setTimeout(() => setCopied(false), 2000);\n });\n }\n\n async function handleLaunch() {\n setIsLaunching(true);\n try {\n await fetch(`/api/tools/${tool.id}/launch`, { method: 'POST' });\n } finally {\n setIsLaunching(false);\n }\n }\n\n const handleScroll = useCallback(() => {\n const el = logRef.current;\n if (!el) return;\n isAtBottomRef.current =\n el.scrollTop + el.clientHeight >= el.scrollHeight - AUTO_SCROLL_THRESHOLD;\n }, []);\n\n useEffect(() => {\n if (isAtBottomRef.current && logRef.current) {\n logRef.current.scrollTop = logRef.current.scrollHeight;\n }\n }, [logs]);\n\n // Refresh tool status after install completes\n useEffect(() => {\n if (status === 'done' && onRefresh) {\n void onRefresh();\n }\n }, [status, onRefresh]);\n\n const header = (\n <div className=\"flex flex-col gap-2\">\n <div className=\"flex items-center gap-2\">\n {tool.iconUrl ? (\n /* eslint-disable-next-line @next/next/no-img-element */\n <img src={tool.iconUrl} alt=\"\" width={24} height={24} className=\"shrink-0 dark:invert\" />\n ) : (\n <Package className=\"text-muted-foreground h-6 w-6 shrink-0\" />\n )}\n <h2 className=\"text-base font-bold\">{tool.name}</h2>\n <StatusBadge status={tool.status.status} />\n </div>\n <div className=\"flex items-center gap-1\">\n {tool.tags.map((tag) => {\n const config = TAG_CONFIG[tag] ?? { label: tag, icon: Monitor };\n const TagIcon = config.icon;\n return (\n <span\n key={tag}\n className=\"bg-muted text-muted-foreground inline-flex items-center gap-0.5 rounded px-1.5 py-0.5 text-[10px] font-medium\"\n >\n <TagIcon className=\"h-2.5 w-2.5\" />\n {config.label}\n </span>\n );\n })}\n </div>\n </div>\n );\n\n return (\n <BaseDrawer\n open={open}\n onClose={onClose}\n size=\"md\"\n modal={false}\n header={header}\n data-testid=\"tool-detail-drawer\"\n >\n <div className=\"flex flex-1 flex-col gap-4 overflow-y-auto p-4\">\n {/* Description */}\n <div>\n <p className=\"text-muted-foreground text-sm\">{tool.description}</p>\n </div>\n\n {/* Install Command */}\n {tool.installCommand ? (\n <div className=\"flex flex-col gap-1.5\">\n <span className=\"text-muted-foreground text-xs font-medium\">Install command</span>\n <div className=\"relative rounded-md bg-zinc-900 text-zinc-100\">\n <pre className=\"overflow-x-auto px-3 py-2.5 pr-16 font-mono text-xs leading-relaxed break-all whitespace-pre-wrap\">\n <code>{tool.installCommand}</code>\n </pre>\n <Button\n variant=\"ghost\"\n size=\"sm\"\n className=\"absolute top-1.5 right-1.5 h-7 cursor-pointer px-2 text-zinc-400 hover:text-zinc-100\"\n onClick={handleCopy}\n aria-label={copied ? 'Copied!' : 'Copy install command'}\n >\n {copied ? (\n <Check className=\"h-3.5 w-3.5 text-emerald-500\" />\n ) : (\n <Copy className=\"h-3.5 w-3.5\" />\n )}\n <span className=\"ml-1 text-[10px]\">{copied ? 'Copied!' : 'Copy'}</span>\n </Button>\n </div>\n </div>\n ) : null}\n\n {/* Action Bar */}\n <div className=\"flex items-center gap-2\">\n {canInstall ? (\n <Button\n size=\"sm\"\n onClick={startInstall}\n disabled={status === 'streaming'}\n aria-label={`Install ${tool.name}`}\n className=\"cursor-pointer\"\n >\n {status === 'streaming' ? (\n <Loader2 className=\"mr-1.5 h-3.5 w-3.5 animate-spin\" />\n ) : (\n <Download className=\"mr-1.5 h-3.5 w-3.5\" />\n )}\n {status === 'streaming' ? 'Installing...' : 'Install'}\n </Button>\n ) : null}\n {canLaunch ? (\n <Button\n size=\"sm\"\n variant=\"outline\"\n onClick={() => void handleLaunch()}\n disabled={isLaunching}\n aria-label={`Launch ${tool.name}`}\n className=\"cursor-pointer\"\n >\n {isLaunching ? (\n <Loader2 className=\"mr-1.5 h-3.5 w-3.5 animate-spin\" />\n ) : (\n <Rocket className=\"mr-1.5 h-3.5 w-3.5\" />\n )}\n Launch\n </Button>\n ) : null}\n </div>\n\n {/* Install Log */}\n {(status === 'streaming' || status === 'done' || status === 'error') && logs.length > 0 ? (\n <div className=\"flex flex-col gap-1.5\">\n <span className=\"text-muted-foreground text-xs font-medium\">Install log</span>\n <div\n ref={logRef}\n onScroll={handleScroll}\n className=\"max-h-60 overflow-auto rounded-md bg-zinc-900 p-3 font-mono text-xs leading-relaxed text-zinc-100\"\n data-testid=\"tool-install-log\"\n >\n {logs.map((line) => (\n <div key={line} className=\"break-all whitespace-pre-wrap\">\n {line}\n </div>\n ))}\n {status === 'done' ? (\n <div className=\"mt-2 border-t border-zinc-700 pt-2 text-emerald-400\">\n Installation complete\n </div>\n ) : null}\n {status === 'error' ? (\n <div className=\"mt-2 border-t border-zinc-700 pt-2 text-red-400\">\n Installation failed\n </div>\n ) : null}\n </div>\n </div>\n ) : null}\n\n {/* Documentation */}\n {tool.documentationUrl ? (\n <Button variant=\"outline\" size=\"sm\" className=\"w-fit cursor-pointer\" asChild>\n <a href={tool.documentationUrl} target=\"_blank\" rel=\"noopener noreferrer\">\n Documentation\n <ExternalLink className=\"ml-1.5 h-3.5 w-3.5\" />\n </a>\n </Button>\n ) : null}\n </div>\n </BaseDrawer>\n );\n}\n","'use client';\n\nimport { useState, useTransition } from 'react';\nimport {\n Info,\n Loader2,\n Rocket,\n Download,\n Monitor,\n Terminal,\n GitBranch,\n CircleX,\n Check,\n Package,\n} from 'lucide-react';\nimport { Button } from '@/components/ui/button';\nimport { cn } from '@/lib/utils';\nimport { ToolDetailDrawer } from './tool-detail-drawer';\nimport type { ToolItem } from '@shepai/core/application/use-cases/tools/list-tools.use-case';\n\nexport interface ToolCardProps {\n tool: ToolItem;\n onRefresh?: () => Promise<void>;\n className?: string;\n}\n\nconst TAG_CONFIG: Record<string, { label: string; icon: typeof Monitor }> = {\n ide: { label: 'IDE', icon: Monitor },\n 'cli-agent': { label: 'CLI Agent', icon: Terminal },\n vcs: { label: 'VCS', icon: GitBranch },\n terminal: { label: 'Terminal', icon: Terminal },\n};\n\nexport function ToolCard({ tool, onRefresh, className }: ToolCardProps) {\n const [drawerOpen, setDrawerOpen] = useState(false);\n const [autoStartInstall, setAutoStartInstall] = useState(false);\n const [isPending, startTransition] = useTransition();\n\n const isInstalled = tool.status.status === 'available';\n const isError = tool.status.status === 'error';\n const canLaunch = isInstalled && Boolean(tool.openDirectory);\n\n function handleLaunch() {\n startTransition(async () => {\n await fetch(`/api/tools/${tool.id}/launch`, { method: 'POST' });\n });\n }\n\n return (\n <>\n <div\n data-testid=\"tool-card\"\n className={cn(\n 'bg-card group flex h-30 w-full flex-col rounded-lg border p-3 shadow-sm transition-shadow hover:shadow-md',\n className\n )}\n >\n {/* Top row: icon + name left, tag badges right */}\n <div className=\"mb-2 flex items-start justify-between gap-2\">\n <div className=\"flex min-w-0 items-center gap-2\">\n {tool.iconUrl ? (\n /* eslint-disable-next-line @next/next/no-img-element */\n <img\n src={tool.iconUrl}\n alt=\"\"\n width={20}\n height={20}\n className=\"shrink-0 dark:invert\"\n />\n ) : (\n <Package className=\"text-muted-foreground h-5 w-5 shrink-0\" />\n )}\n <h3 data-testid=\"tool-card-name\" className=\"truncate text-sm font-bold\">\n {tool.name}\n </h3>\n </div>\n <div data-testid=\"tool-card-tags\" className=\"flex shrink-0 items-center gap-1\">\n {tool.tags.map((tag) => {\n const config = TAG_CONFIG[tag] ?? { label: tag, icon: Monitor };\n const TagIcon = config.icon;\n return (\n <span\n key={tag}\n className=\"bg-muted text-muted-foreground inline-flex items-center gap-0.5 rounded px-1.5 py-0.5 text-[10px] font-medium\"\n >\n <TagIcon className=\"h-2.5 w-2.5\" />\n {config.label}\n </span>\n );\n })}\n </div>\n </div>\n\n {/* Summary */}\n <p data-testid=\"tool-card-summary\" className=\"text-muted-foreground mt-1 truncate text-xs\">\n {tool.summary}\n </p>\n\n {/* Bottom section — pushed to bottom */}\n <div className=\"mt-auto flex items-center justify-between pt-3\">\n {/* Status text */}\n <div className=\"flex items-center gap-2\">\n {isError && tool.status.status === 'error' ? (\n <span\n className=\"flex items-center gap-1 truncate text-[10px] text-red-600 dark:text-red-400\"\n title={tool.status.errorMessage}\n >\n <CircleX className=\"h-3 w-3 shrink-0\" />\n {tool.status.errorMessage ?? 'Error'}\n </span>\n ) : isInstalled ? (\n <span className=\"flex items-center gap-1 text-[11px] text-emerald-600 dark:text-emerald-400\">\n <Check className=\"h-3 w-3\" />\n Installed\n </span>\n ) : (\n <span className=\"text-muted-foreground text-[10px]\">Not installed</span>\n )}\n {tool.required ? (\n <span className=\"text-muted-foreground text-[10px] italic\">Required</span>\n ) : null}\n </div>\n\n {/* Action buttons */}\n <div className=\"flex items-center gap-1\">\n <Button\n size=\"sm\"\n variant=\"ghost\"\n onClick={() => {\n setAutoStartInstall(false);\n setDrawerOpen(true);\n }}\n aria-label={`View details for ${tool.name}`}\n data-testid=\"tool-card-info-button\"\n className=\"h-7 w-7 cursor-pointer rounded-md p-0\"\n >\n <Info className=\"h-3.5 w-3.5\" />\n </Button>\n {isInstalled && canLaunch ? (\n <Button\n size=\"sm\"\n variant=\"ghost\"\n onClick={handleLaunch}\n disabled={isPending}\n aria-label={`Launch ${tool.name}`}\n data-testid=\"tool-card-launch-button\"\n className=\"hover:bg-primary hover:text-primary-foreground h-7 cursor-pointer rounded-md px-3 text-xs\"\n >\n {isPending ? (\n <Loader2 className=\"mr-1 h-3 w-3 animate-spin\" />\n ) : (\n <Rocket className=\"mr-1 h-3 w-3\" />\n )}\n Launch\n </Button>\n ) : !isInstalled && !isError ? (\n <Button\n size=\"sm\"\n variant={tool.autoInstall ? 'default' : 'outline'}\n onClick={() => {\n setAutoStartInstall(tool.autoInstall);\n setDrawerOpen(true);\n }}\n aria-label={`Install ${tool.name}`}\n data-testid=\"tool-card-install-button\"\n className=\"h-7 cursor-pointer rounded-md px-3 text-xs\"\n >\n <Download className=\"mr-1 h-3 w-3\" />\n Install\n </Button>\n ) : null}\n </div>\n </div>\n </div>\n\n <ToolDetailDrawer\n tool={tool}\n open={drawerOpen}\n onClose={() => setDrawerOpen(false)}\n onRefresh={onRefresh}\n autoStart={autoStartInstall}\n />\n </>\n );\n}\n","'use client';\n\nimport { useState } from 'react';\nimport { Wrench } from 'lucide-react';\nimport { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs';\nimport { cn } from '@/lib/utils';\nimport { ToolCard } from './tool-card';\nimport type { ToolItem } from '@shepai/core/application/use-cases/tools/list-tools.use-case';\n\nexport interface ToolsPageClientProps {\n tools: ToolItem[];\n className?: string;\n}\n\ntype TabValue = 'all' | 'ide' | 'cli-agent' | 'vcs' | 'terminal';\n\nconst TAB_FILTER: Record<TabValue, (tool: ToolItem) => boolean> = {\n all: () => true,\n ide: (tool) => tool.tags.includes('ide'),\n 'cli-agent': (tool) => tool.tags.includes('cli-agent'),\n vcs: (tool) => tool.tags.includes('vcs'),\n terminal: (tool) => tool.tags.includes('terminal'),\n};\n\nexport function ToolsPageClient({ tools: initialTools, className }: ToolsPageClientProps) {\n const [tools, setTools] = useState<ToolItem[]>(initialTools);\n const [activeTab, setActiveTab] = useState<TabValue>('all');\n\n async function refreshTools() {\n try {\n const res = await fetch('/api/tools');\n if (res.ok) {\n const updated = (await res.json()) as ToolItem[];\n setTools(updated);\n }\n } catch {\n // Silently ignore refresh errors; user can re-navigate to refresh\n }\n }\n\n const filtered = tools.filter(TAB_FILTER[activeTab]);\n\n return (\n <div data-testid=\"tools-page-client\" className={cn('space-y-4', className)}>\n {/* Compact header */}\n <div className=\"flex items-center gap-2\">\n <Wrench className=\"text-muted-foreground h-4 w-4\" />\n <h1 className=\"text-sm font-bold tracking-tight\">Tools</h1>\n <span className=\"text-muted-foreground text-[10px]\">\n {tools.filter((t) => t.status.status === 'available').length}/{tools.length} installed\n </span>\n </div>\n\n <Tabs\n value={activeTab}\n onValueChange={(value) => setActiveTab(value as TabValue)}\n data-testid=\"tools-page-tabs\"\n >\n <TabsList className=\"h-7\">\n <TabsTrigger value=\"all\" data-testid=\"tools-tab-all\" className=\"px-2.5 text-xs\">\n All\n </TabsTrigger>\n <TabsTrigger value=\"ide\" data-testid=\"tools-tab-ide\" className=\"px-2.5 text-xs\">\n IDEs\n </TabsTrigger>\n <TabsTrigger\n value=\"cli-agent\"\n data-testid=\"tools-tab-cli-agent\"\n className=\"px-2.5 text-xs\"\n >\n CLI Agents\n </TabsTrigger>\n <TabsTrigger value=\"vcs\" data-testid=\"tools-tab-vcs\" className=\"px-2.5 text-xs\">\n Version Control\n </TabsTrigger>\n <TabsTrigger value=\"terminal\" data-testid=\"tools-tab-terminal\" className=\"px-2.5 text-xs\">\n Terminals\n </TabsTrigger>\n </TabsList>\n\n <TabsContent value={activeTab} className=\"mt-3\">\n {filtered.length === 0 ? (\n <div\n data-testid=\"tools-page-empty\"\n className=\"text-muted-foreground flex flex-col items-center justify-center py-12 text-center\"\n >\n <Wrench className=\"mb-2 h-6 w-6 opacity-20\" />\n <p className=\"text-xs\">No tools in this category.</p>\n </div>\n ) : (\n <div\n data-testid=\"tools-page-grid\"\n className=\"grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4\"\n >\n {filtered.map((tool) => (\n <ToolCard key={tool.id} tool={tool} onRefresh={refreshTools} />\n ))}\n </div>\n )}\n </TabsContent>\n </Tabs>\n </div>\n );\n}\n","import createLucideIcon from '../createLucideIcon';\nimport { IconNode } from '../types';\n\nexport const __iconNode: IconNode = [\n [\n 'path',\n {\n d: 'M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z',\n key: '1a0edw',\n },\n ],\n ['path', { d: 'M12 22V12', key: 'd0xqtd' }],\n ['polyline', { points: '3.29 7 12 12 20.71 7', key: 'ousv84' }],\n ['path', { d: 'm7.5 4.27 9 5.15', key: '1c824w' }],\n];\n\n/**\n * @component @name Package\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview  - https://lucide.dev/icons/package\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Package = createLucideIcon('package', __iconNode);\n\nexport default Package;\n","import createLucideIcon from '../createLucideIcon';\nimport { IconNode } from '../types';\n\nexport const __iconNode: IconNode = [\n [\n 'path',\n {\n d: 'M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z',\n key: 'm3kijz',\n },\n ],\n [\n 'path',\n {\n d: 'm12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z',\n key: '1fmvmk',\n },\n ],\n ['path', { d: 'M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0', key: '1f8sc4' }],\n ['path', { d: 'M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5', key: 'qeys4' }],\n];\n\n/**\n * @component @name Rocket\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview  - https://lucide.dev/icons/rocket\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Rocket = createLucideIcon('rocket', __iconNode);\n\nexport default Rocket;\n","import createLucideIcon from '../createLucideIcon';\nimport { IconNode } from '../types';\n\nexport const __iconNode: IconNode = [\n ['path', { d: 'M12 15V3', key: 'm9g1x1' }],\n ['path', { d: 'M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4', key: 'ih7n3h' }],\n ['path', { d: 'm7 10 5 5 5-5', key: 'brsn70' }],\n];\n\n/**\n * @component @name Download\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview  - https://lucide.dev/icons/download\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Download = createLucideIcon('download', __iconNode);\n\nexport default Download;\n","import createLucideIcon from '../createLucideIcon';\nimport { IconNode } from '../types';\n\nexport const __iconNode: IconNode = [\n ['rect', { width: '20', height: '14', x: '2', y: '3', rx: '2', key: '48i651' }],\n ['line', { x1: '8', x2: '16', y1: '21', y2: '21', key: '1svkeh' }],\n ['line', { x1: '12', x2: '12', y1: '17', y2: '21', key: 'vw1qmm' }],\n];\n\n/**\n * @component @name Monitor\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview  - https://lucide.dev/icons/monitor\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Monitor = createLucideIcon('monitor', __iconNode);\n\nexport default Monitor;\n","import createLucideIcon from '../createLucideIcon';\nimport { IconNode } from '../types';\n\nexport const __iconNode: IconNode = [\n ['circle', { cx: '12', cy: '12', r: '10', key: '1mglay' }],\n ['path', { d: 'M12 16v-4', key: '1dtifu' }],\n ['path', { d: 'M12 8h.01', key: 'e9boi3' }],\n];\n\n/**\n * @component @name Info\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview  - https://lucide.dev/icons/info\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Info = createLucideIcon('info', __iconNode);\n\nexport default Info;\n"],"names":[],"mappings":"wDGEA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,wCKe8B,CDAd,ADAC,AEAa,kBAhBf,GAAA,KAAU,GAAI,CDAH,ADAE,CCAF,ADAE,CCAF,ADAE,EEAO,CFAF,ACAC,ACAC,CFAF,ACAC,ACAI,CAAA,ADAJ,ADAD,QEAgB,CAAA,+CACL,yCNF5C,IAAA,EAAA,EAAA,CAAA,CAAA,OG8BA,CAAA,GAAM,EAAA,CAAA,EAAS,EAAA,OAAA,EAAiB,CAAA,CAAA,CAAA,CAAA,MAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,mHApBhD,CDAD,ACCG,CDDH,CAAA,ACCM,CDDN,ACCM,CDDN,ACCM,CDDN,ACCM,CAAA,CAAA,CAAA,CAAA,2FACH,IAAK,QAAA,EAET,CACA,CAAC,OAAQ,CAAA,AAAE,EAAA,yCAA6C,CAAA,CAAA,CAAA,CAAA,AAAK,QAAA,CAAU,CAAA,EACtE,CAAA,MAAQ,CAAA,AAAE,EAAA,0CAA8C,CAAA,CAAA,CAAA,CAAA,AAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CACzE,yCChBgB,CAAA,ACAH,ACAE,CDAF,ACAE,AFAC,2FACkD,CAAU,CAAA,0CAC5B,ECAD,CAAA,cAc/B,EAAA,2CAhBwB,CAAA,ACAF,CAAA,MDAa,CAAA,ACAF,CAAA,ADAE,CAAA,ACAF,CDAE,ACAF,ADAO,CCAP,ADAO,EAAA,IAAS,CAAA,CAAA,CAAA,CAAA,AAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,SACrE,CDAA,ACAA,ACAA,UDAe,CAAA,ACAV,AFAA,CAAA,AEAA,ADAU,GAAM,CDAhB,AEAa,EDAO,CAAA,ACAF,AFAlB,CAAA,AEAkB,ADAE,CCAF,ADAE,ADApB,CCAoB,ACAF,AFAlB,CEAkB,ADAE,ADApB,GCA8B,CDA9B,ACA8B,CAAA,ADA9B,CAAA,ACA8B,CDA9B,ACA8B,CDA9B,ACAoC,CDApC,ACAoC,CAAA,ADApC,CAAA,ACAoC,CDApC,ACAoC,AAAK,CDAzC,ACAyC,CAAA,ADAzC,CAAA,ACAyC,OAAU,CDAD,CAAA,CAAA,CAAA,CAAA,QCCjD,CCAD,ADAC,ADAD,CAAA,AEAA,ADAC,CDAD,ACAC,ACAD,CAAA,AFAA,ACAC,CCAD,AFAA,ACAC,GAAU,CCAX,AFAA,ACAW,OAAU,KAAM,CAAA,ACAC,AFAN,EAAA,KCAe,CAAA,CAAA,CAAA,CAAA,AAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,GLHpE,IAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OEwBA,CCbS,ADaT,GAAA,EAAgB,CAAA,CAAA,ACZL,CDYK,EAAA,OAAA,EAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAxBG,CAwBQ,CAAA,AAtBxC,CCAA,ADAA,AAsBwC,AGtBzC,ADAA,AEAA,CDAA,AFAC,ACAD,AEAA,AJAC,AAsBwC,CCtBxC,AEAD,ACAA,AFAA,AFAC,AAsBwC,CAtBxC,ACAA,AEAD,ACAA,AFAA,AFsByC,CAAA,ACtBxC,AEAD,ACAA,AFAA,AFAC,CGAD,ACAA,AJAC,ACAA,ACAD,AFsByC,CAAA,CAAA,CAAU,CAAA,AApB7C,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CAAA,ACAA,CAAA,ADAA,CCAA,ADAA,CAAA,ACAA,CDAA,ACAA,CDAA,ACAA,CAAA,ADAA,CCAA,ADAA,CCAA,ADAA,CAAA,ACAA,CDAA,ACAA,CAAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CAAA,ACAA,CAAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CAAA,ACAA,CAAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CAAA,ACAA,CAAA,ADAA,CCAA,A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","ignoreList":[4,5,6,7,8]}
|
|
@@ -8,12 +8,12 @@ globalThis.__BUILD_MANIFEST = {
|
|
|
8
8
|
],
|
|
9
9
|
"lowPriorityFiles": [],
|
|
10
10
|
"rootMainFiles": [
|
|
11
|
-
"static/chunks/
|
|
12
|
-
"static/chunks/
|
|
13
|
-
"static/chunks/4b6cc9f65260f2bd.js",
|
|
14
|
-
"static/chunks/cfe4dc9904fcfddb.js",
|
|
11
|
+
"static/chunks/5d0a6417c4e4e545.js",
|
|
12
|
+
"static/chunks/84a181ff3270fd9f.js",
|
|
15
13
|
"static/chunks/07f00e2e73d322d2.js",
|
|
16
|
-
"static/chunks/
|
|
14
|
+
"static/chunks/cfe4dc9904fcfddb.js",
|
|
15
|
+
"static/chunks/4b6cc9f65260f2bd.js",
|
|
16
|
+
"static/chunks/turbopack-05820f781f3ffc22.js"
|
|
17
17
|
]
|
|
18
18
|
};
|
|
19
19
|
globalThis.__BUILD_MANIFEST.lowPriorityFiles = [
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
<!DOCTYPE html><!--
|
|
2
|
-
@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/
|
|
1
|
+
<!DOCTYPE html><!--5__wERRI1P_m4Tl0xR0UI--><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/5d0a6417c4e4e545.js"/><script src="/_next/static/chunks/84a181ff3270fd9f.js" async=""></script><script src="/_next/static/chunks/07f00e2e73d322d2.js" async=""></script><script src="/_next/static/chunks/cfe4dc9904fcfddb.js" async=""></script><script src="/_next/static/chunks/4b6cc9f65260f2bd.js" async=""></script><script src="/_next/static/chunks/turbopack-05820f781f3ffc22.js" async=""></script><script src="/_next/static/chunks/ab02eec995295bef.js" async=""></script><script src="/_next/static/chunks/fe70e73feb07bcfd.js" async=""></script><title>500: Internal Server Error.</title><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}
|
|
2
|
+
@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/5d0a6417c4e4e545.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[40799,[\"/_next/static/chunks/ab02eec995295bef.js\",\"/_next/static/chunks/fe70e73feb07bcfd.js\"],\"default\"]\n3:I[73006,[\"/_next/static/chunks/ab02eec995295bef.js\",\"/_next/static/chunks/fe70e73feb07bcfd.js\"],\"default\"]\n4:I[66658,[\"/_next/static/chunks/ab02eec995295bef.js\",\"/_next/static/chunks/fe70e73feb07bcfd.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n7:I[66658,[\"/_next/static/chunks/ab02eec995295bef.js\",\"/_next/static/chunks/fe70e73feb07bcfd.js\"],\"ViewportBoundary\"]\n9:I[66658,[\"/_next/static/chunks/ab02eec995295bef.js\",\"/_next/static/chunks/fe70e73feb07bcfd.js\"],\"MetadataBoundary\"]\nb:I[42726,[\"/_next/static/chunks/ab02eec995295bef.js\",\"/_next/static/chunks/fe70e73feb07bcfd.js\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"5-_wERRI1P-m4Tl0xR0UI\",\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"title\",null,{\"children\":\"500: Internal Server Error.\"}]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"lineHeight\":\"48px\"},\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}\\n@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"paddingRight\":23,\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\"},\"children\":\"500\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"28px\"},\"children\":\"Internal Server Error.\"}]}]]}]}]}]]}],[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/ab02eec995295bef.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/fe70e73feb07bcfd.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L7\",null,{\"children\":\"$L8\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L9\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$La\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$b\",\"$undefined\"],\"S\":true}\n"])</script><script>self.__next_f.push([1,"8:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"6:null\na:[]\n"])</script></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
self.__RSC_SERVER_MANIFEST="{\n \"node\": {\n \"00365f5b179e13e6bb4616593d6f3b4d15a4a82e4e\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n },\n \"app/_not-found/page\": {\n \"moduleId\": 66973,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n },\n \"app/skills/page\": {\n \"moduleId\": 87596,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n },\n \"app/tools/page\": {\n \"moduleId\": 19036,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n },\n \"app/version/page\": {\n \"moduleId\": 86139,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\",\n \"app/_not-found/page\": \"action-browser\",\n \"app/skills/page\": \"action-browser\",\n \"app/tools/page\": \"action-browser\",\n \"app/version/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\",\n \"exportedName\": \"pickFolder\"\n },\n \"40512991bebb6aff8054d66d8a66c75ff3cd3df37e\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"getDeploymentLogs\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-logs.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"getDeploymentLogs\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-logs.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"getDeploymentLogs\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-logs.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"getDeploymentLogs\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-logs.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"getDeploymentLogs\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-logs.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"getDeploymentLogs\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-logs.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"getDeploymentLogs\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-logs.ts\"\n },\n \"app/skills/page\": {\n \"moduleId\": 87596,\n \"async\": false,\n \"exportedName\": \"getDeploymentLogs\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-logs.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\",\n \"app/skills/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/get-deployment-logs.ts\",\n \"exportedName\": \"getDeploymentLogs\"\n },\n \"4002f24123c812bbde52103ab4c9896641ec712093\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"deployFeature\",\n \"filename\": \"src/presentation/web/app/actions/deploy-feature.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"deployFeature\",\n \"filename\": \"src/presentation/web/app/actions/deploy-feature.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"deployFeature\",\n \"filename\": \"src/presentation/web/app/actions/deploy-feature.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"deployFeature\",\n \"filename\": \"src/presentation/web/app/actions/deploy-feature.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"deployFeature\",\n \"filename\": \"src/presentation/web/app/actions/deploy-feature.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"deployFeature\",\n \"filename\": \"src/presentation/web/app/actions/deploy-feature.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"deployFeature\",\n \"filename\": \"src/presentation/web/app/actions/deploy-feature.ts\"\n },\n \"app/skills/page\": {\n \"moduleId\": 87596,\n \"async\": false,\n \"exportedName\": \"deployFeature\",\n \"filename\": \"src/presentation/web/app/actions/deploy-feature.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\",\n \"app/skills/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/deploy-feature.ts\",\n \"exportedName\": \"deployFeature\"\n },\n \"4084d20a10c50999fda1abc79d5071db97eb469aae\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"deployRepository\",\n \"filename\": \"src/presentation/web/app/actions/deploy-repository.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"deployRepository\",\n \"filename\": \"src/presentation/web/app/actions/deploy-repository.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"deployRepository\",\n \"filename\": \"src/presentation/web/app/actions/deploy-repository.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"deployRepository\",\n \"filename\": \"src/presentation/web/app/actions/deploy-repository.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"deployRepository\",\n \"filename\": \"src/presentation/web/app/actions/deploy-repository.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"deployRepository\",\n \"filename\": \"src/presentation/web/app/actions/deploy-repository.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"deployRepository\",\n \"filename\": \"src/presentation/web/app/actions/deploy-repository.ts\"\n },\n \"app/skills/page\": {\n \"moduleId\": 87596,\n \"async\": false,\n \"exportedName\": \"deployRepository\",\n \"filename\": \"src/presentation/web/app/actions/deploy-repository.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\",\n \"app/skills/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/deploy-repository.ts\",\n \"exportedName\": \"deployRepository\"\n },\n \"4006e38da5561739000f5578b783b3d7df52b311e3\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"stopDeployment\",\n \"filename\": \"src/presentation/web/app/actions/stop-deployment.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"stopDeployment\",\n \"filename\": \"src/presentation/web/app/actions/stop-deployment.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"stopDeployment\",\n \"filename\": \"src/presentation/web/app/actions/stop-deployment.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"stopDeployment\",\n \"filename\": \"src/presentation/web/app/actions/stop-deployment.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"stopDeployment\",\n \"filename\": \"src/presentation/web/app/actions/stop-deployment.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"stopDeployment\",\n \"filename\": \"src/presentation/web/app/actions/stop-deployment.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"stopDeployment\",\n \"filename\": \"src/presentation/web/app/actions/stop-deployment.ts\"\n },\n \"app/skills/page\": {\n \"moduleId\": 87596,\n \"async\": false,\n \"exportedName\": \"stopDeployment\",\n \"filename\": \"src/presentation/web/app/actions/stop-deployment.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\",\n \"app/skills/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/stop-deployment.ts\",\n \"exportedName\": \"stopDeployment\"\n },\n \"40ace7a87569f698a76c3cf3adfa70c658402edda6\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"getDeploymentStatus\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-status.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"getDeploymentStatus\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-status.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"getDeploymentStatus\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-status.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"getDeploymentStatus\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-status.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"getDeploymentStatus\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-status.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"getDeploymentStatus\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-status.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"getDeploymentStatus\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-status.ts\"\n },\n \"app/skills/page\": {\n \"moduleId\": 87596,\n \"async\": false,\n \"exportedName\": \"getDeploymentStatus\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-status.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\",\n \"app/skills/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/get-deployment-status.ts\",\n \"exportedName\": \"getDeploymentStatus\"\n },\n \"40955fa9ff30f22d451898f2a071f2c8174c6d8ff0\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"openIde\",\n \"filename\": \"src/presentation/web/app/actions/open-ide.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"openIde\",\n \"filename\": \"src/presentation/web/app/actions/open-ide.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"openIde\",\n \"filename\": \"src/presentation/web/app/actions/open-ide.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"openIde\",\n \"filename\": \"src/presentation/web/app/actions/open-ide.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"openIde\",\n \"filename\": \"src/presentation/web/app/actions/open-ide.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"openIde\",\n \"filename\": \"src/presentation/web/app/actions/open-ide.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"openIde\",\n \"filename\": \"src/presentation/web/app/actions/open-ide.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/open-ide.ts\",\n \"exportedName\": \"openIde\"\n },\n \"40b2414a15048c04b7de3c696face8fb064ea53092\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"openShell\",\n \"filename\": \"src/presentation/web/app/actions/open-shell.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"openShell\",\n \"filename\": \"src/presentation/web/app/actions/open-shell.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"openShell\",\n \"filename\": \"src/presentation/web/app/actions/open-shell.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"openShell\",\n \"filename\": \"src/presentation/web/app/actions/open-shell.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"openShell\",\n \"filename\": \"src/presentation/web/app/actions/open-shell.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"openShell\",\n \"filename\": \"src/presentation/web/app/actions/open-shell.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"openShell\",\n \"filename\": \"src/presentation/web/app/actions/open-shell.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/open-shell.ts\",\n \"exportedName\": \"openShell\"\n },\n \"401a0c8bb23c0d542d16aafa66b2a9d737467e8440\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"openFolder\",\n \"filename\": \"src/presentation/web/app/actions/open-folder.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"openFolder\",\n \"filename\": \"src/presentation/web/app/actions/open-folder.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"openFolder\",\n \"filename\": \"src/presentation/web/app/actions/open-folder.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"openFolder\",\n \"filename\": \"src/presentation/web/app/actions/open-folder.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"openFolder\",\n \"filename\": \"src/presentation/web/app/actions/open-folder.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"openFolder\",\n \"filename\": \"src/presentation/web/app/actions/open-folder.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"openFolder\",\n \"filename\": \"src/presentation/web/app/actions/open-folder.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/open-folder.ts\",\n \"exportedName\": \"openFolder\"\n },\n \"40f79c7fc9a54d8cca27c016252b0c7e1192e74280\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"deleteFeature\",\n \"filename\": \"src/presentation/web/app/actions/delete-feature.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"deleteFeature\",\n \"filename\": \"src/presentation/web/app/actions/delete-feature.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"deleteFeature\",\n \"filename\": \"src/presentation/web/app/actions/delete-feature.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"deleteFeature\",\n \"filename\": \"src/presentation/web/app/actions/delete-feature.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"deleteFeature\",\n \"filename\": \"src/presentation/web/app/actions/delete-feature.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"deleteFeature\",\n \"filename\": \"src/presentation/web/app/actions/delete-feature.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"deleteFeature\",\n \"filename\": \"src/presentation/web/app/actions/delete-feature.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/delete-feature.ts\",\n \"exportedName\": \"deleteFeature\"\n },\n \"403e365832bb3a5401687ab46fc3454edadf003676\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"addRepository\",\n \"filename\": \"src/presentation/web/app/actions/add-repository.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"addRepository\",\n \"filename\": \"src/presentation/web/app/actions/add-repository.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"addRepository\",\n \"filename\": \"src/presentation/web/app/actions/add-repository.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"addRepository\",\n \"filename\": \"src/presentation/web/app/actions/add-repository.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"addRepository\",\n \"filename\": \"src/presentation/web/app/actions/add-repository.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"addRepository\",\n \"filename\": \"src/presentation/web/app/actions/add-repository.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"addRepository\",\n \"filename\": \"src/presentation/web/app/actions/add-repository.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/add-repository.ts\",\n \"exportedName\": \"addRepository\"\n },\n \"40aefca144e3fcc160a4af92e4fa3f0ef3578641e4\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"deleteRepository\",\n \"filename\": \"src/presentation/web/app/actions/delete-repository.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"deleteRepository\",\n \"filename\": \"src/presentation/web/app/actions/delete-repository.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"deleteRepository\",\n \"filename\": \"src/presentation/web/app/actions/delete-repository.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"deleteRepository\",\n \"filename\": \"src/presentation/web/app/actions/delete-repository.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"deleteRepository\",\n \"filename\": \"src/presentation/web/app/actions/delete-repository.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"deleteRepository\",\n \"filename\": \"src/presentation/web/app/actions/delete-repository.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"deleteRepository\",\n \"filename\": \"src/presentation/web/app/actions/delete-repository.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/delete-repository.ts\",\n \"exportedName\": \"deleteRepository\"\n },\n \"00e0d3403a2b28b97a7890748e9abad2e2ee74d68b\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"getWorkflowDefaults\",\n \"filename\": \"src/presentation/web/app/actions/get-workflow-defaults.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"getWorkflowDefaults\",\n \"filename\": \"src/presentation/web/app/actions/get-workflow-defaults.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"rsc\",\n \"app/(dashboard)/create/page\": \"rsc\"\n },\n \"filename\": \"src/presentation/web/app/actions/get-workflow-defaults.ts\",\n \"exportedName\": \"getWorkflowDefaults\"\n },\n \"4041ed47b64ab039614115ccb211998816d040582d\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"createFeature\",\n \"filename\": \"src/presentation/web/app/actions/create-feature.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"createFeature\",\n \"filename\": \"src/presentation/web/app/actions/create-feature.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/create-feature.ts\",\n \"exportedName\": \"createFeature\"\n },\n \"604885d48eab1d8641cb5af07bcca2ae9255557f5e\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"approveFeature\",\n \"filename\": \"src/presentation/web/app/actions/approve-feature.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"approveFeature\",\n \"filename\": \"src/presentation/web/app/actions/approve-feature.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/approve-feature.ts\",\n \"exportedName\": \"approveFeature\"\n },\n \"606392fc4a5a2bcd34ea36d87987364377da973da5\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"rejectFeature\",\n \"filename\": \"src/presentation/web/app/actions/reject-feature.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"rejectFeature\",\n \"filename\": \"src/presentation/web/app/actions/reject-feature.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/reject-feature.ts\",\n \"exportedName\": \"rejectFeature\"\n },\n \"40e20322b0c5bcc20820ae4d5913440a26e5b27557\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"getFeatureArtifact\",\n \"filename\": \"src/presentation/web/app/actions/get-feature-artifact.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"getFeatureArtifact\",\n \"filename\": \"src/presentation/web/app/actions/get-feature-artifact.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/get-feature-artifact.ts\",\n \"exportedName\": \"getFeatureArtifact\"\n },\n \"40834419e6e7f3b6c77e8b0cebe456782ff41ba622\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"getResearchArtifact\",\n \"filename\": \"src/presentation/web/app/actions/get-research-artifact.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"getResearchArtifact\",\n \"filename\": \"src/presentation/web/app/actions/get-research-artifact.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/get-research-artifact.ts\",\n \"exportedName\": \"getResearchArtifact\"\n },\n \"40d3c758b61ceb7305366077e78478a3e237de5635\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"getMergeReviewData\",\n \"filename\": \"src/presentation/web/app/actions/get-merge-review-data.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"getMergeReviewData\",\n \"filename\": \"src/presentation/web/app/actions/get-merge-review-data.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/get-merge-review-data.ts\",\n \"exportedName\": \"getMergeReviewData\"\n }\n },\n \"edge\": {},\n \"encryptionKey\": \"SsFvtVRb5Wur3hcwuO+mCwVwprObFIyWwIaZI8BZdNA=\"\n}"
|
|
1
|
+
self.__RSC_SERVER_MANIFEST="{\n \"node\": {\n \"00ae70bfe7e00149d21886db1618cef48af9b9fb9a\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n },\n \"app/_not-found/page\": {\n \"moduleId\": 66973,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n },\n \"app/skills/page\": {\n \"moduleId\": 87596,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n },\n \"app/tools/page\": {\n \"moduleId\": 90322,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n },\n \"app/version/page\": {\n \"moduleId\": 86139,\n \"async\": false,\n \"exportedName\": \"pickFolder\",\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\",\n \"app/_not-found/page\": \"action-browser\",\n \"app/skills/page\": \"action-browser\",\n \"app/tools/page\": \"action-browser\",\n \"app/version/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/pick-folder.ts\",\n \"exportedName\": \"pickFolder\"\n },\n \"4032061694d58ab5e622127982d2fc49b496c5d678\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"getDeploymentLogs\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-logs.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"getDeploymentLogs\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-logs.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"getDeploymentLogs\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-logs.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"getDeploymentLogs\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-logs.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"getDeploymentLogs\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-logs.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"getDeploymentLogs\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-logs.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"getDeploymentLogs\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-logs.ts\"\n },\n \"app/skills/page\": {\n \"moduleId\": 87596,\n \"async\": false,\n \"exportedName\": \"getDeploymentLogs\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-logs.ts\"\n },\n \"app/tools/page\": {\n \"moduleId\": 90322,\n \"async\": false,\n \"exportedName\": \"getDeploymentLogs\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-logs.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\",\n \"app/skills/page\": \"action-browser\",\n \"app/tools/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/get-deployment-logs.ts\",\n \"exportedName\": \"getDeploymentLogs\"\n },\n \"40417a31b2fd522b4c59efbf0f7ded6a310fa828ba\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"deployFeature\",\n \"filename\": \"src/presentation/web/app/actions/deploy-feature.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"deployFeature\",\n \"filename\": \"src/presentation/web/app/actions/deploy-feature.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"deployFeature\",\n \"filename\": \"src/presentation/web/app/actions/deploy-feature.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"deployFeature\",\n \"filename\": \"src/presentation/web/app/actions/deploy-feature.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"deployFeature\",\n \"filename\": \"src/presentation/web/app/actions/deploy-feature.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"deployFeature\",\n \"filename\": \"src/presentation/web/app/actions/deploy-feature.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"deployFeature\",\n \"filename\": \"src/presentation/web/app/actions/deploy-feature.ts\"\n },\n \"app/skills/page\": {\n \"moduleId\": 87596,\n \"async\": false,\n \"exportedName\": \"deployFeature\",\n \"filename\": \"src/presentation/web/app/actions/deploy-feature.ts\"\n },\n \"app/tools/page\": {\n \"moduleId\": 90322,\n \"async\": false,\n \"exportedName\": \"deployFeature\",\n \"filename\": \"src/presentation/web/app/actions/deploy-feature.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\",\n \"app/skills/page\": \"action-browser\",\n \"app/tools/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/deploy-feature.ts\",\n \"exportedName\": \"deployFeature\"\n },\n \"4082829ca4c31244967eb5ca0ec9ecbfecdf37213f\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"deployRepository\",\n \"filename\": \"src/presentation/web/app/actions/deploy-repository.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"deployRepository\",\n \"filename\": \"src/presentation/web/app/actions/deploy-repository.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"deployRepository\",\n \"filename\": \"src/presentation/web/app/actions/deploy-repository.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"deployRepository\",\n \"filename\": \"src/presentation/web/app/actions/deploy-repository.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"deployRepository\",\n \"filename\": \"src/presentation/web/app/actions/deploy-repository.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"deployRepository\",\n \"filename\": \"src/presentation/web/app/actions/deploy-repository.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"deployRepository\",\n \"filename\": \"src/presentation/web/app/actions/deploy-repository.ts\"\n },\n \"app/skills/page\": {\n \"moduleId\": 87596,\n \"async\": false,\n \"exportedName\": \"deployRepository\",\n \"filename\": \"src/presentation/web/app/actions/deploy-repository.ts\"\n },\n \"app/tools/page\": {\n \"moduleId\": 90322,\n \"async\": false,\n \"exportedName\": \"deployRepository\",\n \"filename\": \"src/presentation/web/app/actions/deploy-repository.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\",\n \"app/skills/page\": \"action-browser\",\n \"app/tools/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/deploy-repository.ts\",\n \"exportedName\": \"deployRepository\"\n },\n \"400cfbcf5f3aa3beb2c14bbbc011e2d34741e97503\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"stopDeployment\",\n \"filename\": \"src/presentation/web/app/actions/stop-deployment.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"stopDeployment\",\n \"filename\": \"src/presentation/web/app/actions/stop-deployment.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"stopDeployment\",\n \"filename\": \"src/presentation/web/app/actions/stop-deployment.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"stopDeployment\",\n \"filename\": \"src/presentation/web/app/actions/stop-deployment.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"stopDeployment\",\n \"filename\": \"src/presentation/web/app/actions/stop-deployment.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"stopDeployment\",\n \"filename\": \"src/presentation/web/app/actions/stop-deployment.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"stopDeployment\",\n \"filename\": \"src/presentation/web/app/actions/stop-deployment.ts\"\n },\n \"app/skills/page\": {\n \"moduleId\": 87596,\n \"async\": false,\n \"exportedName\": \"stopDeployment\",\n \"filename\": \"src/presentation/web/app/actions/stop-deployment.ts\"\n },\n \"app/tools/page\": {\n \"moduleId\": 90322,\n \"async\": false,\n \"exportedName\": \"stopDeployment\",\n \"filename\": \"src/presentation/web/app/actions/stop-deployment.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\",\n \"app/skills/page\": \"action-browser\",\n \"app/tools/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/stop-deployment.ts\",\n \"exportedName\": \"stopDeployment\"\n },\n \"4081f656db826ef9b77e6b12344e7c87a3bf2695d9\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"getDeploymentStatus\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-status.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"getDeploymentStatus\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-status.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"getDeploymentStatus\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-status.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"getDeploymentStatus\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-status.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"getDeploymentStatus\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-status.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"getDeploymentStatus\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-status.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"getDeploymentStatus\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-status.ts\"\n },\n \"app/skills/page\": {\n \"moduleId\": 87596,\n \"async\": false,\n \"exportedName\": \"getDeploymentStatus\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-status.ts\"\n },\n \"app/tools/page\": {\n \"moduleId\": 90322,\n \"async\": false,\n \"exportedName\": \"getDeploymentStatus\",\n \"filename\": \"src/presentation/web/app/actions/get-deployment-status.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\",\n \"app/skills/page\": \"action-browser\",\n \"app/tools/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/get-deployment-status.ts\",\n \"exportedName\": \"getDeploymentStatus\"\n },\n \"40bf722e02958bdc4270dd7f8070990b06a519cc75\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"openIde\",\n \"filename\": \"src/presentation/web/app/actions/open-ide.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"openIde\",\n \"filename\": \"src/presentation/web/app/actions/open-ide.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"openIde\",\n \"filename\": \"src/presentation/web/app/actions/open-ide.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"openIde\",\n \"filename\": \"src/presentation/web/app/actions/open-ide.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"openIde\",\n \"filename\": \"src/presentation/web/app/actions/open-ide.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"openIde\",\n \"filename\": \"src/presentation/web/app/actions/open-ide.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"openIde\",\n \"filename\": \"src/presentation/web/app/actions/open-ide.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/open-ide.ts\",\n \"exportedName\": \"openIde\"\n },\n \"404ba987e40074b30bb1704d8abfbdd9bea9bbcf6c\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"openShell\",\n \"filename\": \"src/presentation/web/app/actions/open-shell.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"openShell\",\n \"filename\": \"src/presentation/web/app/actions/open-shell.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"openShell\",\n \"filename\": \"src/presentation/web/app/actions/open-shell.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"openShell\",\n \"filename\": \"src/presentation/web/app/actions/open-shell.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"openShell\",\n \"filename\": \"src/presentation/web/app/actions/open-shell.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"openShell\",\n \"filename\": \"src/presentation/web/app/actions/open-shell.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"openShell\",\n \"filename\": \"src/presentation/web/app/actions/open-shell.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/open-shell.ts\",\n \"exportedName\": \"openShell\"\n },\n \"407e5155624d9d2f404ecef65cd988d87a7fff433d\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"openFolder\",\n \"filename\": \"src/presentation/web/app/actions/open-folder.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"openFolder\",\n \"filename\": \"src/presentation/web/app/actions/open-folder.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"openFolder\",\n \"filename\": \"src/presentation/web/app/actions/open-folder.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"openFolder\",\n \"filename\": \"src/presentation/web/app/actions/open-folder.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"openFolder\",\n \"filename\": \"src/presentation/web/app/actions/open-folder.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"openFolder\",\n \"filename\": \"src/presentation/web/app/actions/open-folder.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"openFolder\",\n \"filename\": \"src/presentation/web/app/actions/open-folder.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/open-folder.ts\",\n \"exportedName\": \"openFolder\"\n },\n \"40276c5f5c7b277941b21055a5874185bd6c23d62a\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"deleteFeature\",\n \"filename\": \"src/presentation/web/app/actions/delete-feature.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"deleteFeature\",\n \"filename\": \"src/presentation/web/app/actions/delete-feature.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"deleteFeature\",\n \"filename\": \"src/presentation/web/app/actions/delete-feature.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"deleteFeature\",\n \"filename\": \"src/presentation/web/app/actions/delete-feature.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"deleteFeature\",\n \"filename\": \"src/presentation/web/app/actions/delete-feature.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"deleteFeature\",\n \"filename\": \"src/presentation/web/app/actions/delete-feature.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"deleteFeature\",\n \"filename\": \"src/presentation/web/app/actions/delete-feature.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/delete-feature.ts\",\n \"exportedName\": \"deleteFeature\"\n },\n \"409939b6e475e4f33d35416f7610d6ac0f54871616\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"addRepository\",\n \"filename\": \"src/presentation/web/app/actions/add-repository.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"addRepository\",\n \"filename\": \"src/presentation/web/app/actions/add-repository.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"addRepository\",\n \"filename\": \"src/presentation/web/app/actions/add-repository.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"addRepository\",\n \"filename\": \"src/presentation/web/app/actions/add-repository.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"addRepository\",\n \"filename\": \"src/presentation/web/app/actions/add-repository.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"addRepository\",\n \"filename\": \"src/presentation/web/app/actions/add-repository.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"addRepository\",\n \"filename\": \"src/presentation/web/app/actions/add-repository.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/add-repository.ts\",\n \"exportedName\": \"addRepository\"\n },\n \"40b81571464a7b6c2c3473872b9314e7a16b5a31a2\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"deleteRepository\",\n \"filename\": \"src/presentation/web/app/actions/delete-repository.ts\"\n },\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"deleteRepository\",\n \"filename\": \"src/presentation/web/app/actions/delete-repository.ts\"\n },\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": {\n \"moduleId\": 12834,\n \"async\": false,\n \"exportedName\": \"deleteRepository\",\n \"filename\": \"src/presentation/web/app/actions/delete-repository.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"deleteRepository\",\n \"filename\": \"src/presentation/web/app/actions/delete-repository.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"deleteRepository\",\n \"filename\": \"src/presentation/web/app/actions/delete-repository.ts\"\n },\n \"app/(dashboard)/page\": {\n \"moduleId\": 21365,\n \"async\": false,\n \"exportedName\": \"deleteRepository\",\n \"filename\": \"src/presentation/web/app/actions/delete-repository.ts\"\n },\n \"app/(dashboard)/repository/[repositoryId]/page\": {\n \"moduleId\": 43068,\n \"async\": false,\n \"exportedName\": \"deleteRepository\",\n \"filename\": \"src/presentation/web/app/actions/delete-repository.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/@drawer/repository/[repositoryId]/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/page\": \"action-browser\",\n \"app/(dashboard)/repository/[repositoryId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/delete-repository.ts\",\n \"exportedName\": \"deleteRepository\"\n },\n \"00bc4e1df12ce2e7c82c43396433ce185b2200a666\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"getWorkflowDefaults\",\n \"filename\": \"src/presentation/web/app/actions/get-workflow-defaults.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"getWorkflowDefaults\",\n \"filename\": \"src/presentation/web/app/actions/get-workflow-defaults.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"rsc\",\n \"app/(dashboard)/create/page\": \"rsc\"\n },\n \"filename\": \"src/presentation/web/app/actions/get-workflow-defaults.ts\",\n \"exportedName\": \"getWorkflowDefaults\"\n },\n \"40a97a4fd715b710440f40286ceed5c335ed531ef5\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/create/page\": {\n \"moduleId\": 42016,\n \"async\": false,\n \"exportedName\": \"createFeature\",\n \"filename\": \"src/presentation/web/app/actions/create-feature.ts\"\n },\n \"app/(dashboard)/create/page\": {\n \"moduleId\": 15434,\n \"async\": false,\n \"exportedName\": \"createFeature\",\n \"filename\": \"src/presentation/web/app/actions/create-feature.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/create/page\": \"action-browser\",\n \"app/(dashboard)/create/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/create-feature.ts\",\n \"exportedName\": \"createFeature\"\n },\n \"601df9c3b5ffc6f4fefaebeca2386b0a76602f0b4f\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"approveFeature\",\n \"filename\": \"src/presentation/web/app/actions/approve-feature.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"approveFeature\",\n \"filename\": \"src/presentation/web/app/actions/approve-feature.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/approve-feature.ts\",\n \"exportedName\": \"approveFeature\"\n },\n \"6041471a233f5cfca41bed8f2f9d3c9c1c3eddae79\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"rejectFeature\",\n \"filename\": \"src/presentation/web/app/actions/reject-feature.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"rejectFeature\",\n \"filename\": \"src/presentation/web/app/actions/reject-feature.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/reject-feature.ts\",\n \"exportedName\": \"rejectFeature\"\n },\n \"40f37a7b3218422435f0e938de55e9a2bd600a5fa7\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"getFeatureArtifact\",\n \"filename\": \"src/presentation/web/app/actions/get-feature-artifact.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"getFeatureArtifact\",\n \"filename\": \"src/presentation/web/app/actions/get-feature-artifact.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/get-feature-artifact.ts\",\n \"exportedName\": \"getFeatureArtifact\"\n },\n \"4063b8a1f55b4395906954cc8b1cba0186616c5224\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"getResearchArtifact\",\n \"filename\": \"src/presentation/web/app/actions/get-research-artifact.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"getResearchArtifact\",\n \"filename\": \"src/presentation/web/app/actions/get-research-artifact.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/get-research-artifact.ts\",\n \"exportedName\": \"getResearchArtifact\"\n },\n \"4048e44b59c2dc682e885573856fe1b97944f27345\": {\n \"workers\": {\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": {\n \"moduleId\": 53432,\n \"async\": false,\n \"exportedName\": \"getMergeReviewData\",\n \"filename\": \"src/presentation/web/app/actions/get-merge-review-data.ts\"\n },\n \"app/(dashboard)/feature/[featureId]/page\": {\n \"moduleId\": 24734,\n \"async\": false,\n \"exportedName\": \"getMergeReviewData\",\n \"filename\": \"src/presentation/web/app/actions/get-merge-review-data.ts\"\n }\n },\n \"layer\": {\n \"app/(dashboard)/@drawer/feature/[featureId]/page\": \"action-browser\",\n \"app/(dashboard)/feature/[featureId]/page\": \"action-browser\"\n },\n \"filename\": \"src/presentation/web/app/actions/get-merge-review-data.ts\",\n \"exportedName\": \"getMergeReviewData\"\n }\n },\n \"edge\": {},\n \"encryptionKey\": \"9QUU6QbgGkYx3jvfxteFLAMFN8vhSUoW6dqwTtMYMw4=\"\n}"
|