@shepai/cli 1.130.0 → 1.130.1-pr396.844e95f
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/apis/json-schema/FeatureFlags.yaml +5 -0
- package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.d.ts +73 -5
- package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.d.ts.map +1 -1
- package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.js +6 -4
- package/dist/packages/core/src/application/use-cases/features/rebase-feature-on-main.use-case.d.ts +28 -0
- package/dist/packages/core/src/application/use-cases/features/rebase-feature-on-main.use-case.d.ts.map +1 -0
- package/dist/packages/core/src/application/use-cases/features/rebase-feature-on-main.use-case.js +81 -0
- package/dist/packages/core/src/application/use-cases/repositories/sync-repository-main.use-case.d.ts +16 -0
- package/dist/packages/core/src/application/use-cases/repositories/sync-repository-main.use-case.d.ts.map +1 -0
- package/dist/packages/core/src/application/use-cases/repositories/sync-repository-main.use-case.js +43 -0
- package/dist/packages/core/src/domain/factories/settings-defaults.factory.d.ts.map +1 -1
- package/dist/packages/core/src/domain/factories/settings-defaults.factory.js +1 -0
- package/dist/packages/core/src/domain/generated/output.d.ts +4 -0
- package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/di/container.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/di/container.js +15 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts +1 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.js +2 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/042-add-feature-flag-git-rebase-sync.d.ts +11 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/042-add-feature-flag-git-rebase-sync.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/042-add-feature-flag-git-rebase-sync.js +17 -0
- package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.js +3 -2
- package/dist/packages/core/src/infrastructure/services/agents/common/agent-validator.service.js +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/common/executors/cursor-executor.service.d.ts +5 -5
- package/dist/packages/core/src/infrastructure/services/agents/common/executors/cursor-executor.service.js +8 -8
- package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.prompt.d.ts +35 -0
- package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.prompt.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.prompt.js +66 -0
- package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.service.d.ts +42 -0
- package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.service.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.service.js +169 -0
- package/dist/packages/core/src/infrastructure/services/deployment/deployment.service.d.ts +21 -1
- package/dist/packages/core/src/infrastructure/services/deployment/deployment.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/deployment/deployment.service.js +152 -12
- package/dist/packages/core/src/infrastructure/services/deployment/detect-dev-script.d.ts +1 -0
- package/dist/packages/core/src/infrastructure/services/deployment/detect-dev-script.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/deployment/detect-dev-script.js +3 -2
- package/dist/packages/core/src/infrastructure/services/git/git-pr.service.d.ts +6 -0
- package/dist/packages/core/src/infrastructure/services/git/git-pr.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/git/git-pr.service.js +134 -0
- 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 +5 -12
- package/dist/src/presentation/web/app/actions/check-agent-auth.js +1 -1
- package/dist/src/presentation/web/app/actions/rebase-feature.d.ts +5 -0
- package/dist/src/presentation/web/app/actions/rebase-feature.d.ts.map +1 -0
- package/dist/src/presentation/web/app/actions/rebase-feature.js +16 -0
- package/dist/src/presentation/web/app/actions/sync-repository.d.ts +5 -0
- package/dist/src/presentation/web/app/actions/sync-repository.d.ts.map +1 -0
- package/dist/src/presentation/web/app/actions/sync-repository.js +16 -0
- 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 +2 -1
- package/dist/src/presentation/web/components/common/control-center-drawer/repository-drawer-client.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/control-center-drawer/repository-drawer-client.js +4 -4
- package/dist/src/presentation/web/components/common/feature-drawer/use-feature-actions.d.ts +4 -0
- package/dist/src/presentation/web/components/common/feature-drawer/use-feature-actions.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-drawer/use-feature-actions.js +32 -1
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.d.ts +4 -1
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.js +2 -2
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.d.ts +4 -1
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.js +8 -3
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.stories.d.ts +6 -0
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.stories.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.stories.js +30 -0
- package/dist/src/presentation/web/components/common/open-action-menu/open-action-menu.stories.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/open-action-menu/open-action-menu.stories.js +3 -0
- package/dist/src/presentation/web/components/common/repository-node/repository-drawer.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/repository-node/repository-drawer.js +5 -3
- package/dist/src/presentation/web/components/common/repository-node/repository-node.js +1 -1
- package/dist/src/presentation/web/components/common/repository-node/use-repository-actions.d.ts +4 -0
- package/dist/src/presentation/web/components/common/repository-node/use-repository-actions.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/repository-node/use-repository-actions.js +11 -0
- package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.js +3 -0
- package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.stories.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.stories.js +3 -0
- package/dist/src/presentation/web/components/features/settings/settings-page-client.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/settings/settings-page-client.js +5 -0
- package/dist/src/presentation/web/components/features/settings/settings-page-client.stories.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/settings/settings-page-client.stories.js +1 -0
- package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.stories.d.ts.map +1 -1
- package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.stories.js +1 -0
- package/dist/src/presentation/web/dev-server.js +7 -0
- package/dist/src/presentation/web/hooks/feature-flags-context.d.ts.map +1 -1
- package/dist/src/presentation/web/hooks/feature-flags-context.js +1 -0
- package/dist/src/presentation/web/lib/feature-flags.d.ts +2 -0
- package/dist/src/presentation/web/lib/feature-flags.d.ts.map +1 -1
- package/dist/src/presentation/web/lib/feature-flags.js +5 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/web/.next/BUILD_ID +1 -1
- package/web/.next/build-manifest.json +2 -2
- package/web/.next/fallback-build-manifest.json +2 -2
- package/web/.next/prerender-manifest.json +3 -3
- package/web/.next/required-server-files.js +3 -3
- package/web/.next/required-server-files.json +3 -3
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +63 -48
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js +2 -2
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +63 -48
- package/web/.next/server/app/(dashboard)/@drawer/create/page.js +2 -2
- 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]/[tab]/page/server-reference-manifest.json +90 -60
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js +2 -2
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +90 -60
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +2 -2
- 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/server-reference-manifest.json +59 -44
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js +2 -2
- 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/server-reference-manifest.json +63 -48
- package/web/.next/server/app/(dashboard)/create/page.js +2 -2
- 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]/[tab]/page/server-reference-manifest.json +90 -60
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js +2 -2
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +90 -60
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +2 -2
- 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/server-reference-manifest.json +59 -44
- package/web/.next/server/app/(dashboard)/page.js +2 -2
- 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/server-reference-manifest.json +59 -44
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js +2 -2
- 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.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/server-reference-manifest.json +3 -3
- package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/api/attachments/preview/route.js.nft.json +1 -1
- package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
- package/web/.next/server/app/api/graph-data/route.js.nft.json +1 -1
- package/web/.next/server/app/settings/page/server-reference-manifest.json +8 -8
- package/web/.next/server/app/settings/page.js.nft.json +1 -1
- package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/skills/page/server-reference-manifest.json +8 -8
- 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/server-reference-manifest.json +8 -8
- 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/server-reference-manifest.json +3 -3
- package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
- package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js +1 -1
- package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js.map +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js.map +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__d1dc8fcd._.js.map +1 -1
- 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/[root-of-the-server]__357d99f9._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__39ecb785._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__39ecb785._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__43f51aa6._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__43f51aa6._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__465c0deb._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__465c0deb._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__5142820f._.js +2 -2
- package/web/.next/server/chunks/ssr/[root-of-the-server]__5142820f._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__57018345._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6bb00d90._.js +2 -2
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6bb00d90._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__7894f27f._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__7894f27f._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__815546bd._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__815546bd._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__84f72684._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__8b6d1e18._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__8b6d1e18._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__8f6c27af._.js +6 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__8f6c27af._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__910e9de5._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__910e9de5._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__a04af228._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__a04af228._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__a32728d0._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__a32728d0._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__d6ab9c36._.js +6 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__d6ab9c36._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__f2eb7d62._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__f2eb7d62._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__f3036814._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__f3036814._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_0020fddd._.js +1 -1
- package/web/.next/server/chunks/ssr/_0020fddd._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_02ec1aea._.js +1 -1
- package/web/.next/server/chunks/ssr/_02ec1aea._.js.map +1 -1
- package/web/.next/server/chunks/ssr/{_2081d51d._.js → _140d896d._.js} +2 -2
- package/web/.next/server/chunks/ssr/{_2081d51d._.js.map → _140d896d._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/_7dca1882._.js +1 -1
- package/web/.next/server/chunks/ssr/_7dca1882._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_a37f5f18._.js +1 -1
- package/web/.next/server/chunks/ssr/_a37f5f18._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_a9f57758._.js +1 -1
- package/web/.next/server/chunks/ssr/_a9f57758._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_b3f6e6e9._.js +3 -0
- package/web/.next/server/chunks/ssr/_b3f6e6e9._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_d4b20e29._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_d8575088._.js +1 -1
- package/web/.next/server/chunks/ssr/_d8575088._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_f39a1adb._.js +1 -1
- package/web/.next/server/chunks/ssr/_f39a1adb._.js.map +1 -1
- package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
- package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
- package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js +1 -1
- package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1b176e3c.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1b176e3c.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_bd9f0dda.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_bd9f0dda.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-ide_ts_baaca5d5._.js +3 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-ide_ts_baaca5d5._.js.map +1 -0
- 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_e599bb8c._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.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_e0b3ea67._.js +3 -0
- package/web/.next/server/chunks/ssr/{src_presentation_web_de41598a._.js.map → src_presentation_web_e0b3ea67._.js.map} +1 -1
- 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 +410 -296
- package/web/.next/static/chunks/1abca3015dac5760.js +1 -0
- package/web/.next/static/chunks/{724dfca1907b26d7.js → 2a8589502f1a3fee.js} +1 -1
- package/web/.next/static/chunks/{3b5d54efc5f21506.js → 30ebb9e7d1c85344.js} +1 -1
- package/web/.next/static/chunks/{090b4b644f4526bf.js → 3862a16b8161e178.js} +1 -1
- package/web/.next/static/chunks/{747b3443a866e39f.js → 4c141b4e9a55bce7.js} +1 -1
- package/web/.next/static/chunks/{90a32a641dd33f9a.js → 67d61a2c2eba7344.js} +1 -1
- package/web/.next/static/chunks/{22d08ce7fbc67732.js → 81b305ae4f28a883.js} +1 -1
- package/web/.next/static/chunks/{f8ce00057329618b.js → ba4f86a38068e68f.js} +1 -1
- package/web/.next/static/chunks/{339e72cfa282c94b.js → bb21c9f0d314b89b.js} +1 -1
- package/web/.next/static/chunks/bfda4e4194a4a633.js +1 -0
- package/web/.next/static/chunks/{8d936038e7d013d2.js → c016b9d991594eef.js} +1 -1
- package/web/.next/static/chunks/{bdf477379453ead2.js → c329033db1c63a56.js} +2 -2
- package/web/.next/static/chunks/{9387d6dde6140968.js → e9d1ed018e858117.js} +2 -2
- package/web/.next/static/chunks/{0b7fe2ac4f078f54.js → f070c67389a686ff.js} +1 -1
- package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_4e741df2.js +0 -3
- package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_4e741df2.js.map +0 -1
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_026fdffa.js +0 -3
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_026fdffa.js.map +0 -1
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_8b91e197.js +0 -3
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_8b91e197.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__755cfe02._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__755cfe02._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__99ab2519._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__99ab2519._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__a628fb91._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__a628fb91._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__bfba58e6._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__bfba58e6._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c3ab8422._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c3ab8422._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_c6edd1ef._.js +0 -3
- package/web/.next/server/chunks/ssr/_c6edd1ef._.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_8e7fe0d1._.js +0 -5
- package/web/.next/server/chunks/ssr/src_presentation_web_8e7fe0d1._.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_ca051134.js +0 -3
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_ca051134.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_b9023017._.js +0 -5
- package/web/.next/server/chunks/ssr/src_presentation_web_b9023017._.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_de41598a._.js +0 -3
- package/web/.next/static/chunks/bcdcdce9139bfd25.js +0 -1
- package/web/.next/static/chunks/eb9841ec4d80af01.js +0 -1
- /package/web/.next/static/{FkranKu-K5LY21_CdI_Jp → g-QN4RQQtXsVFedVM1Dcs}/_buildManifest.js +0 -0
- /package/web/.next/static/{FkranKu-K5LY21_CdI_Jp → g-QN4RQQtXsVFedVM1Dcs}/_clientMiddlewareManifest.json +0 -0
- /package/web/.next/static/{FkranKu-K5LY21_CdI_Jp → g-QN4RQQtXsVFedVM1Dcs}/_ssgManifest.js +0 -0
|
@@ -8,6 +8,6 @@ For more information, see https://radix-ui.com/primitives/docs/components/alert-
|
|
|
8
8
|
|
|
9
9
|
If you want to hide the \`${r.titleName}\`, you can wrap it with our VisuallyHidden component.
|
|
10
10
|
|
|
11
|
-
For more information, see https://radix-ui.com/primitives/docs/components/${r.docsSlug}`;return t.useEffect(()=>{e&&(document.getElementById(e)||console.error(o))},[o,e]),null},Y=({contentRef:e,descriptionId:r})=>{let o=X("DialogDescriptionWarning"),n=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${o.contentName}}.`;return t.useEffect(()=>{let t=e.current?.getAttribute("aria-describedby");r&&t&&(document.getElementById(r)||console.warn(n))},[n,e,r]),null};e.s(["Close",()=>H,"Content",()=>S,"Description",()=>B,"Dialog",()=>C,"DialogClose",()=>H,"DialogContent",()=>S,"DialogDescription",()=>B,"DialogOverlay",()=>O,"DialogPortal",()=>E,"DialogTitle",()=>L,"DialogTrigger",()=>D,"Overlay",()=>O,"Portal",()=>E,"Root",()=>C,"Title",()=>L,"Trigger",()=>D,"WarningProvider",()=>q,"createDialogScope",()=>x])},90033,e=>{"use strict";var t=e.i(567);e.s(["Dialog",0,t])},2828,e=>{"use strict";var t=e.i(20314),r=e.i(79054),o=e.i(91967),n=e.i(5978),i=e.i(22528),a=e.i(53532),l=e.i(13123),s=e.i(52740),d=e.i(39979),u=e.i(85995),c=e.i(87620),p=e.i(86874),f=e.i(36589),g=e.i(1693),[m,h]=(0,i.createContextScope)("Tooltip",[s.createPopperScope]),v=(0,s.createPopperScope)(),y="TooltipProvider",x="tooltip.open",[b,w]=m(y),C=e=>{let{__scopeTooltip:o,delayDuration:n=700,skipDelayDuration:i=300,disableHoverableContent:a=!1,children:l}=e,s=r.useRef(!0),d=r.useRef(!1),u=r.useRef(0);return r.useEffect(()=>{let e=u.current;return()=>window.clearTimeout(e)},[]),(0,t.jsx)(b,{scope:o,isOpenDelayedRef:s,delayDuration:n,onOpen:r.useCallback(()=>{window.clearTimeout(u.current),s.current=!1},[]),onClose:r.useCallback(()=>{window.clearTimeout(u.current),u.current=window.setTimeout(()=>s.current=!0,i)},[i]),isPointerInTransitRef:d,onPointerInTransitChange:r.useCallback(e=>{d.current=e},[]),disableHoverableContent:a,children:l})};C.displayName=y;var j="Tooltip",[D,P]=m(j),_=e=>{let{__scopeTooltip:o,children:n,open:i,defaultOpen:a,onOpenChange:d,disableHoverableContent:u,delayDuration:c}=e,p=w(j,e.__scopeTooltip),g=v(o),[m,h]=r.useState(null),y=(0,l.useId)(),b=r.useRef(0),C=u??p.disableHoverableContent,P=c??p.delayDuration,_=r.useRef(!1),[R,E]=(0,f.useControllableState)({prop:i,defaultProp:a??!1,onChange:e=>{e?(p.onOpen(),document.dispatchEvent(new CustomEvent(x))):p.onClose(),d?.(e)},caller:j}),T=r.useMemo(()=>R?_.current?"delayed-open":"instant-open":"closed",[R]),O=r.useCallback(()=>{window.clearTimeout(b.current),b.current=0,_.current=!1,E(!0)},[E]),N=r.useCallback(()=>{window.clearTimeout(b.current),b.current=0,E(!1)},[E]),A=r.useCallback(()=>{window.clearTimeout(b.current),b.current=window.setTimeout(()=>{_.current=!0,E(!0),b.current=0},P)},[P,E]);return r.useEffect(()=>()=>{b.current&&(window.clearTimeout(b.current),b.current=0)},[]),(0,t.jsx)(s.Root,{...g,children:(0,t.jsx)(D,{scope:o,contentId:y,open:R,stateAttribute:T,trigger:m,onTriggerChange:h,onTriggerEnter:r.useCallback(()=>{p.isOpenDelayedRef.current?A():O()},[p.isOpenDelayedRef,A,O]),onTriggerLeave:r.useCallback(()=>{C?N():(window.clearTimeout(b.current),b.current=0)},[N,C]),onOpen:O,onClose:N,disableHoverableContent:C,children:n})})};_.displayName=j;var R="TooltipTrigger",E=r.forwardRef((e,i)=>{let{__scopeTooltip:a,...l}=e,d=P(R,a),u=w(R,a),p=v(a),f=r.useRef(null),g=(0,n.useComposedRefs)(i,f,d.onTriggerChange),m=r.useRef(!1),h=r.useRef(!1),y=r.useCallback(()=>m.current=!1,[]);return r.useEffect(()=>()=>document.removeEventListener("pointerup",y),[y]),(0,t.jsx)(s.Anchor,{asChild:!0,...p,children:(0,t.jsx)(c.Primitive.button,{"aria-describedby":d.open?d.contentId:void 0,"data-state":d.stateAttribute,...l,ref:g,onPointerMove:(0,o.composeEventHandlers)(e.onPointerMove,e=>{"touch"!==e.pointerType&&(h.current||u.isPointerInTransitRef.current||(d.onTriggerEnter(),h.current=!0))}),onPointerLeave:(0,o.composeEventHandlers)(e.onPointerLeave,()=>{d.onTriggerLeave(),h.current=!1}),onPointerDown:(0,o.composeEventHandlers)(e.onPointerDown,()=>{d.open&&d.onClose(),m.current=!0,document.addEventListener("pointerup",y,{once:!0})}),onFocus:(0,o.composeEventHandlers)(e.onFocus,()=>{m.current||d.onOpen()}),onBlur:(0,o.composeEventHandlers)(e.onBlur,d.onClose),onClick:(0,o.composeEventHandlers)(e.onClick,d.onClose)})})});E.displayName=R;var T="TooltipPortal",[O,N]=m(T,{forceMount:void 0}),A=e=>{let{__scopeTooltip:r,forceMount:o,children:n,container:i}=e,a=P(T,r);return(0,t.jsx)(O,{scope:r,forceMount:o,children:(0,t.jsx)(u.Presence,{present:o||a.open,children:(0,t.jsx)(d.Portal,{asChild:!0,container:i,children:n})})})};A.displayName=T;var k="TooltipContent",S=r.forwardRef((e,r)=>{let o=N(k,e.__scopeTooltip),{forceMount:n=o.forceMount,side:i="top",...a}=e,l=P(k,e.__scopeTooltip);return(0,t.jsx)(u.Presence,{present:n||l.open,children:l.disableHoverableContent?(0,t.jsx)(L,{side:i,...a,ref:r}):(0,t.jsx)(I,{side:i,...a,ref:r})})}),I=r.forwardRef((e,o)=>{let i=P(k,e.__scopeTooltip),a=w(k,e.__scopeTooltip),l=r.useRef(null),s=(0,n.useComposedRefs)(o,l),[d,u]=r.useState(null),{trigger:c,onClose:p}=i,f=l.current,{onPointerInTransitChange:g}=a,m=r.useCallback(()=>{u(null),g(!1)},[g]),h=r.useCallback((e,t)=>{let r,o=e.currentTarget,n={x:e.clientX,y:e.clientY},i=function(e,t){let r=Math.abs(t.top-e.y),o=Math.abs(t.bottom-e.y),n=Math.abs(t.right-e.x),i=Math.abs(t.left-e.x);switch(Math.min(r,o,n,i)){case i:return"left";case n:return"right";case r:return"top";case o:return"bottom";default:throw Error("unreachable")}}(n,o.getBoundingClientRect());u(((r=[...function(e,t,r=5){let o=[];switch(t){case"top":o.push({x:e.x-r,y:e.y+r},{x:e.x+r,y:e.y+r});break;case"bottom":o.push({x:e.x-r,y:e.y-r},{x:e.x+r,y:e.y-r});break;case"left":o.push({x:e.x+r,y:e.y-r},{x:e.x+r,y:e.y+r});break;case"right":o.push({x:e.x-r,y:e.y-r},{x:e.x-r,y:e.y+r})}return o}(n,i),...function(e){let{top:t,right:r,bottom:o,left:n}=e;return[{x:n,y:t},{x:r,y:t},{x:r,y:o},{x:n,y:o}]}(t.getBoundingClientRect())].slice()).sort((e,t)=>e.x<t.x?-1:e.x>t.x?1:e.y<t.y?-1:1*!!(e.y>t.y)),function(e){if(e.length<=1)return e.slice();let t=[];for(let r=0;r<e.length;r++){let o=e[r];for(;t.length>=2;){let e=t[t.length-1],r=t[t.length-2];if((e.x-r.x)*(o.y-r.y)>=(e.y-r.y)*(o.x-r.x))t.pop();else break}t.push(o)}t.pop();let r=[];for(let t=e.length-1;t>=0;t--){let o=e[t];for(;r.length>=2;){let e=r[r.length-1],t=r[r.length-2];if((e.x-t.x)*(o.y-t.y)>=(e.y-t.y)*(o.x-t.x))r.pop();else break}r.push(o)}return(r.pop(),1===t.length&&1===r.length&&t[0].x===r[0].x&&t[0].y===r[0].y)?t:t.concat(r)}(r))),g(!0)},[g]);return r.useEffect(()=>()=>m(),[m]),r.useEffect(()=>{if(c&&f){let e=e=>h(e,f),t=e=>h(e,c);return c.addEventListener("pointerleave",e),f.addEventListener("pointerleave",t),()=>{c.removeEventListener("pointerleave",e),f.removeEventListener("pointerleave",t)}}},[c,f,h,m]),r.useEffect(()=>{if(d){let e=e=>{let t=e.target,r={x:e.clientX,y:e.clientY},o=c?.contains(t)||f?.contains(t),n=!function(e,t){let{x:r,y:o}=e,n=!1;for(let e=0,i=t.length-1;e<t.length;i=e++){let a=t[e],l=t[i],s=a.x,d=a.y,u=l.x,c=l.y;d>o!=c>o&&r<(u-s)*(o-d)/(c-d)+s&&(n=!n)}return n}(r,d);o?m():n&&(m(),p())};return document.addEventListener("pointermove",e),()=>document.removeEventListener("pointermove",e)}},[c,f,d,p,m]),(0,t.jsx)(L,{...e,ref:s})}),[z,M]=m(j,{isInside:!1}),F=(0,p.createSlottable)("TooltipContent"),L=r.forwardRef((e,o)=>{let{__scopeTooltip:n,children:i,"aria-label":l,onEscapeKeyDown:d,onPointerDownOutside:u,...c}=e,p=P(k,n),f=v(n),{onClose:m}=p;return r.useEffect(()=>(document.addEventListener(x,m),()=>document.removeEventListener(x,m)),[m]),r.useEffect(()=>{if(p.trigger){let e=e=>{let t=e.target;t?.contains(p.trigger)&&m()};return window.addEventListener("scroll",e,{capture:!0}),()=>window.removeEventListener("scroll",e,{capture:!0})}},[p.trigger,m]),(0,t.jsx)(a.DismissableLayer,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:d,onPointerDownOutside:u,onFocusOutside:e=>e.preventDefault(),onDismiss:m,children:(0,t.jsxs)(s.Content,{"data-state":p.stateAttribute,...f,...c,ref:o,style:{...c.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[(0,t.jsx)(F,{children:i}),(0,t.jsx)(z,{scope:n,isInside:!0,children:(0,t.jsx)(g.Root,{id:p.contentId,role:"tooltip",children:l||i})})]})})});S.displayName=k;var $="TooltipArrow",B=r.forwardRef((e,r)=>{let{__scopeTooltip:o,...n}=e,i=v(o);return M($,o).isInside?null:(0,t.jsx)(s.Arrow,{...i,...n,ref:r})});B.displayName=$,e.s(["Arrow",()=>B,"Content",()=>S,"Portal",()=>A,"Provider",()=>C,"Root",()=>_,"Tooltip",()=>_,"TooltipArrow",()=>B,"TooltipContent",()=>S,"TooltipPortal",()=>A,"TooltipProvider",()=>C,"TooltipTrigger",()=>E,"Trigger",()=>E,"createTooltipScope",()=>h],30643);var G=e.i(30643),G=G,H=e.i(31777);function U({delayDuration:e=0,...r}){return(0,t.jsx)(G.Provider,{"data-slot":"tooltip-provider",delayDuration:e,...r})}function W({...e}){return(0,t.jsx)(G.Root,{"data-slot":"tooltip",...e})}function q({...e}){return(0,t.jsx)(G.Trigger,{"data-slot":"tooltip-trigger",...e})}function X({className:e,sideOffset:r=0,children:o,...n}){return(0,t.jsx)(G.Portal,{children:(0,t.jsxs)(G.Content,{"data-slot":"tooltip-content",sideOffset:r,className:(0,H.cn)("bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance",e),...n,children:[o,(0,t.jsx)(G.Arrow,{className:"bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]"})]})})}e.s(["Tooltip",()=>W,"TooltipContent",()=>X,"TooltipProvider",()=>U,"TooltipTrigger",()=>q],2828)},51251,14748,e=>{"use strict";let t=(0,e.i(3645).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);e.s(["default",()=>t],14748),e.s(["CircleAlert",()=>t],51251)},83428,15506,e=>{"use strict";let t=(0,e.i(3645).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["default",()=>t],15506),e.s(["Loader2",()=>t],83428)},2287,60253,e=>{"use strict";var t=e.i(20314),r=e.i(79054),o=e.i(90033),n=e.i(90537);e.s(["X",()=>n.default],60253);var n=n,i=e.i(31777);let a=o.Dialog.Root,l=o.Dialog.Trigger,s=o.Dialog.Portal,d=o.Dialog.Close,u=r.forwardRef(({className:e,onClick:r,...n},a)=>(0,t.jsx)(o.Dialog.Overlay,{ref:a,className:(0,i.cn)("data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 fixed inset-0 z-50 bg-black/80 duration-150",e),onClick:e=>{e.stopPropagation(),r?.(e)},...n}));u.displayName=o.Dialog.Overlay.displayName;let c=r.forwardRef(({className:e,children:r,...a},l)=>(0,t.jsxs)(s,{children:[(0,t.jsx)(u,{}),(0,t.jsxs)(o.Dialog.Content,{ref:l,className:(0,i.cn)("bg-background data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border p-6 shadow-lg duration-150 sm:rounded-lg",e),...a,children:[r,(0,t.jsxs)(o.Dialog.Close,{className:"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 cursor-pointer rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:pointer-events-none",children:[(0,t.jsx)(n.default,{className:"h-4 w-4"}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})]})]}));c.displayName=o.Dialog.Content.displayName;let p=({className:e,...r})=>(0,t.jsx)("div",{className:(0,i.cn)("flex flex-col space-y-1.5 text-center sm:text-left",e),...r});p.displayName="DialogHeader";let f=({className:e,...r})=>(0,t.jsx)("div",{className:(0,i.cn)("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...r});f.displayName="DialogFooter";let g=r.forwardRef(({className:e,...r},n)=>(0,t.jsx)(o.Dialog.Title,{ref:n,className:(0,i.cn)("text-lg leading-none font-semibold tracking-tight",e),...r}));g.displayName=o.Dialog.Title.displayName;let m=r.forwardRef(({className:e,...r},n)=>(0,t.jsx)(o.Dialog.Description,{ref:n,className:(0,i.cn)("text-muted-foreground text-sm",e),...r}));m.displayName=o.Dialog.Description.displayName,e.s(["Dialog",()=>a,"DialogClose",()=>d,"DialogContent",()=>c,"DialogDescription",()=>m,"DialogFooter",()=>f,"DialogHeader",()=>p,"DialogTitle",()=>g,"DialogTrigger",()=>l],2287)},8361,73709,18354,e=>{"use strict";var t=e.i(44172),r=e.i(79054);let o="shep-sound-enabled",n="shep:sound-toggle";function i(){let[e,t]=(0,r.useState)(!0);(0,r.useEffect)(()=>{"false"===localStorage.getItem(o)&&t(!1);let e=e=>{t(e.detail)};return window.addEventListener(n,e),()=>window.removeEventListener(n,e)},[]);let i=(0,r.useCallback)(()=>{let r=!e;localStorage.setItem(o,String(r)),t(r),window.dispatchEvent(new CustomEvent(n,{detail:r}))},[e]);return{enabled:e,toggle:i}}e.s(["useSoundEnabled",()=>i],73709);let a=new Map,l={navigate:{sound:"tap_01",volume:.2},"menu-item":{sound:"tap_01",volume:.2},select:{sound:"select",volume:.3},"toggle-on":{sound:"toggle_on",volume:.3},"toggle-off":{sound:"toggle_off",volume:.3},click:{sound:"tap_01",volume:.3},cancel:{sound:"transition_down",volume:.3},expand:{sound:"swipe",volume:.3},collapse:{sound:"swipe",volume:.3},"menu-open":{sound:"select",volume:.3},copy:{sound:"select",volume:.3},"drawer-open":{sound:"transition_up",volume:.4},"drawer-close":{sound:"transition_down",volume:.4},submit:{sound:"button",volume:.4},approve:{sound:"celebration",volume:.5},reject:{sound:"caution",volume:.5},create:{sound:"transition_up",volume:.5},delete:{sound:"transition_down",volume:.5},"notification-success":{sound:"celebration",volume:.5},"notification-error":{sound:"caution",volume:.5},"notification-warning":{sound:"notification",volume:.5},"notification-info":{sound:"button",volume:.5}};function s(e){let{sound:t,volume:o}=l[e];return function(e,t={}){let{volume:o=1,loop:n=!1}=t,{enabled:l}=i(),s=(0,r.useRef)(null),d=(0,r.useRef)(!1);return(0,r.useEffect)(()=>{let t,r=((t=a.get(e))||((t=new Audio(`/sounds/${e}.wav`)).preload="auto",a.set(e,t)),t);return r.loop=n,r.volume=Math.max(0,Math.min(1,o)),r.addEventListener("ended",()=>{d.current=!1}),s.current=r,()=>{r.pause(),s.current=null,d.current=!1}},[e,n,o]),{play:(0,r.useCallback)(()=>{if(!l)return;let e=s.current;e&&(e.currentTime=0,e.play()?.catch(e=>{}),d.current=!0)},[l,e]),stop:(0,r.useCallback)(()=>{let e=s.current;e&&(e.pause(),e.currentTime=0,d.current=!1)},[]),isPlaying:d.current}}(t,{volume:o})}e.s(["useSoundAction",()=>s],8361);let d=!!t.default.env.NEXT_PUBLIC_DEBUG,u=()=>void 0;function c(e){return{info:d?(...t)=>console.info(e,...t):u,debug:d?(...t)=>console.debug(e,...t):u,warn:(...t)=>console.warn(e,...t),error:(...t)=>console.error(e,...t)}}e.s(["createLogger",()=>c],18354)},75921,e=>{"use strict";var t=e.i(20314),r=e.i(79054);let o=(0,r.createContext)({skills:!1,envDeploy:!0,debug:!1,githubImport:!1,adoptBranch:!1,reactFileManager:!1});function n({children:e,flags:r}){return(0,t.jsx)(o.Provider,{value:r,children:e})}function i(){return(0,r.useContext)(o)}e.s(["FeatureFlagsProvider",()=>n,"useFeatureFlags",()=>i])},31406,(e,t,r)=>{t.exports=e.r(67013)},80764,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return n}});let o=e.r(79054);function n(e,t){let r=(0,o.useRef)(null),n=(0,o.useRef)(null);return(0,o.useCallback)(o=>{if(null===o){let e=r.current;e&&(r.current=null,e());let t=n.current;t&&(n.current=null,t())}else e&&(r.current=i(e,o)),t&&(n.current=i(t,o))},[e,t])}function i(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},47904,(e,t,r)=>{"use strict";function o({widthInt:e,heightInt:t,blurWidth:r,blurHeight:o,blurDataURL:n,objectFit:i}){let a=r?40*r:e,l=o?40*o:t,s=a&&l?`viewBox='0 0 ${a} ${l}'`:"";return`%3Csvg xmlns='http://www.w3.org/2000/svg' ${s}%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='${s?"none":"contain"===i?"xMidYMid":"cover"===i?"xMidYMid slice":"none"}' style='filter: url(%23b);' href='${n}'/%3E%3C/svg%3E`}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImageBlurSvg",{enumerable:!0,get:function(){return o}})},49261,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var o={VALID_LOADERS:function(){return i},imageConfigDefault:function(){return a}};for(var n in o)Object.defineProperty(r,n,{enumerable:!0,get:o[n]});let i=["default","imgix","cloudinary","akamai","custom"],a={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],path:"/_next/image",loader:"default",loaderFile:"",domains:[],disableStaticImages:!1,minimumCacheTTL:14400,formats:["image/webp"],maximumRedirects:3,maximumResponseBody:5e7,dangerouslyAllowLocalIP:!1,dangerouslyAllowSVG:!1,contentSecurityPolicy:"script-src 'none'; frame-src 'none'; sandbox;",contentDispositionType:"attachment",localPatterns:void 0,remotePatterns:[],qualities:[75],unoptimized:!1}},81241,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImgProps",{enumerable:!0,get:function(){return d}}),e.r(24270);let o=e.r(22193),n=e.r(47904),i=e.r(49261),a=["-moz-initial","fill","none","scale-down",void 0];function l(e){return void 0!==e.default}function s(e){return void 0===e?e:"number"==typeof e?Number.isFinite(e)?e:NaN:"string"==typeof e&&/^[0-9]+$/.test(e)?parseInt(e,10):NaN}function d({src:e,sizes:t,unoptimized:r=!1,priority:d=!1,preload:u=!1,loading:c,className:p,quality:f,width:g,height:m,fill:h=!1,style:v,overrideSrc:y,onLoad:x,onLoadingComplete:b,placeholder:w="empty",blurDataURL:C,fetchPriority:j,decoding:D="async",layout:P,objectFit:_,objectPosition:R,lazyBoundary:E,lazyRoot:T,...O},N){var A;let k,S,I,{imgConf:z,showAltText:M,blurComplete:F,defaultLoader:L}=N,$=z||i.imageConfigDefault;if("allSizes"in $)k=$;else{let e=[...$.deviceSizes,...$.imageSizes].sort((e,t)=>e-t),t=$.deviceSizes.sort((e,t)=>e-t),r=$.qualities?.sort((e,t)=>e-t);k={...$,allSizes:e,deviceSizes:t,qualities:r}}if(void 0===L)throw Object.defineProperty(Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config"),"__NEXT_ERROR_CODE",{value:"E163",enumerable:!1,configurable:!0});let B=O.loader||L;delete O.loader,delete O.srcSet;let G="__next_img_default"in B;if(G){if("custom"===k.loader)throw Object.defineProperty(Error(`Image with src "${e}" is missing "loader" prop.
|
|
11
|
+
For more information, see https://radix-ui.com/primitives/docs/components/${r.docsSlug}`;return t.useEffect(()=>{e&&(document.getElementById(e)||console.error(o))},[o,e]),null},Y=({contentRef:e,descriptionId:r})=>{let o=X("DialogDescriptionWarning"),n=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${o.contentName}}.`;return t.useEffect(()=>{let t=e.current?.getAttribute("aria-describedby");r&&t&&(document.getElementById(r)||console.warn(n))},[n,e,r]),null};e.s(["Close",()=>H,"Content",()=>S,"Description",()=>B,"Dialog",()=>C,"DialogClose",()=>H,"DialogContent",()=>S,"DialogDescription",()=>B,"DialogOverlay",()=>O,"DialogPortal",()=>E,"DialogTitle",()=>L,"DialogTrigger",()=>D,"Overlay",()=>O,"Portal",()=>E,"Root",()=>C,"Title",()=>L,"Trigger",()=>D,"WarningProvider",()=>q,"createDialogScope",()=>x])},90033,e=>{"use strict";var t=e.i(567);e.s(["Dialog",0,t])},2828,e=>{"use strict";var t=e.i(20314),r=e.i(79054),o=e.i(91967),n=e.i(5978),i=e.i(22528),a=e.i(53532),l=e.i(13123),s=e.i(52740),d=e.i(39979),u=e.i(85995),c=e.i(87620),p=e.i(86874),f=e.i(36589),g=e.i(1693),[m,h]=(0,i.createContextScope)("Tooltip",[s.createPopperScope]),v=(0,s.createPopperScope)(),y="TooltipProvider",x="tooltip.open",[b,w]=m(y),C=e=>{let{__scopeTooltip:o,delayDuration:n=700,skipDelayDuration:i=300,disableHoverableContent:a=!1,children:l}=e,s=r.useRef(!0),d=r.useRef(!1),u=r.useRef(0);return r.useEffect(()=>{let e=u.current;return()=>window.clearTimeout(e)},[]),(0,t.jsx)(b,{scope:o,isOpenDelayedRef:s,delayDuration:n,onOpen:r.useCallback(()=>{window.clearTimeout(u.current),s.current=!1},[]),onClose:r.useCallback(()=>{window.clearTimeout(u.current),u.current=window.setTimeout(()=>s.current=!0,i)},[i]),isPointerInTransitRef:d,onPointerInTransitChange:r.useCallback(e=>{d.current=e},[]),disableHoverableContent:a,children:l})};C.displayName=y;var j="Tooltip",[D,P]=m(j),_=e=>{let{__scopeTooltip:o,children:n,open:i,defaultOpen:a,onOpenChange:d,disableHoverableContent:u,delayDuration:c}=e,p=w(j,e.__scopeTooltip),g=v(o),[m,h]=r.useState(null),y=(0,l.useId)(),b=r.useRef(0),C=u??p.disableHoverableContent,P=c??p.delayDuration,_=r.useRef(!1),[R,E]=(0,f.useControllableState)({prop:i,defaultProp:a??!1,onChange:e=>{e?(p.onOpen(),document.dispatchEvent(new CustomEvent(x))):p.onClose(),d?.(e)},caller:j}),T=r.useMemo(()=>R?_.current?"delayed-open":"instant-open":"closed",[R]),O=r.useCallback(()=>{window.clearTimeout(b.current),b.current=0,_.current=!1,E(!0)},[E]),N=r.useCallback(()=>{window.clearTimeout(b.current),b.current=0,E(!1)},[E]),A=r.useCallback(()=>{window.clearTimeout(b.current),b.current=window.setTimeout(()=>{_.current=!0,E(!0),b.current=0},P)},[P,E]);return r.useEffect(()=>()=>{b.current&&(window.clearTimeout(b.current),b.current=0)},[]),(0,t.jsx)(s.Root,{...g,children:(0,t.jsx)(D,{scope:o,contentId:y,open:R,stateAttribute:T,trigger:m,onTriggerChange:h,onTriggerEnter:r.useCallback(()=>{p.isOpenDelayedRef.current?A():O()},[p.isOpenDelayedRef,A,O]),onTriggerLeave:r.useCallback(()=>{C?N():(window.clearTimeout(b.current),b.current=0)},[N,C]),onOpen:O,onClose:N,disableHoverableContent:C,children:n})})};_.displayName=j;var R="TooltipTrigger",E=r.forwardRef((e,i)=>{let{__scopeTooltip:a,...l}=e,d=P(R,a),u=w(R,a),p=v(a),f=r.useRef(null),g=(0,n.useComposedRefs)(i,f,d.onTriggerChange),m=r.useRef(!1),h=r.useRef(!1),y=r.useCallback(()=>m.current=!1,[]);return r.useEffect(()=>()=>document.removeEventListener("pointerup",y),[y]),(0,t.jsx)(s.Anchor,{asChild:!0,...p,children:(0,t.jsx)(c.Primitive.button,{"aria-describedby":d.open?d.contentId:void 0,"data-state":d.stateAttribute,...l,ref:g,onPointerMove:(0,o.composeEventHandlers)(e.onPointerMove,e=>{"touch"!==e.pointerType&&(h.current||u.isPointerInTransitRef.current||(d.onTriggerEnter(),h.current=!0))}),onPointerLeave:(0,o.composeEventHandlers)(e.onPointerLeave,()=>{d.onTriggerLeave(),h.current=!1}),onPointerDown:(0,o.composeEventHandlers)(e.onPointerDown,()=>{d.open&&d.onClose(),m.current=!0,document.addEventListener("pointerup",y,{once:!0})}),onFocus:(0,o.composeEventHandlers)(e.onFocus,()=>{m.current||d.onOpen()}),onBlur:(0,o.composeEventHandlers)(e.onBlur,d.onClose),onClick:(0,o.composeEventHandlers)(e.onClick,d.onClose)})})});E.displayName=R;var T="TooltipPortal",[O,N]=m(T,{forceMount:void 0}),A=e=>{let{__scopeTooltip:r,forceMount:o,children:n,container:i}=e,a=P(T,r);return(0,t.jsx)(O,{scope:r,forceMount:o,children:(0,t.jsx)(u.Presence,{present:o||a.open,children:(0,t.jsx)(d.Portal,{asChild:!0,container:i,children:n})})})};A.displayName=T;var k="TooltipContent",S=r.forwardRef((e,r)=>{let o=N(k,e.__scopeTooltip),{forceMount:n=o.forceMount,side:i="top",...a}=e,l=P(k,e.__scopeTooltip);return(0,t.jsx)(u.Presence,{present:n||l.open,children:l.disableHoverableContent?(0,t.jsx)(L,{side:i,...a,ref:r}):(0,t.jsx)(I,{side:i,...a,ref:r})})}),I=r.forwardRef((e,o)=>{let i=P(k,e.__scopeTooltip),a=w(k,e.__scopeTooltip),l=r.useRef(null),s=(0,n.useComposedRefs)(o,l),[d,u]=r.useState(null),{trigger:c,onClose:p}=i,f=l.current,{onPointerInTransitChange:g}=a,m=r.useCallback(()=>{u(null),g(!1)},[g]),h=r.useCallback((e,t)=>{let r,o=e.currentTarget,n={x:e.clientX,y:e.clientY},i=function(e,t){let r=Math.abs(t.top-e.y),o=Math.abs(t.bottom-e.y),n=Math.abs(t.right-e.x),i=Math.abs(t.left-e.x);switch(Math.min(r,o,n,i)){case i:return"left";case n:return"right";case r:return"top";case o:return"bottom";default:throw Error("unreachable")}}(n,o.getBoundingClientRect());u(((r=[...function(e,t,r=5){let o=[];switch(t){case"top":o.push({x:e.x-r,y:e.y+r},{x:e.x+r,y:e.y+r});break;case"bottom":o.push({x:e.x-r,y:e.y-r},{x:e.x+r,y:e.y-r});break;case"left":o.push({x:e.x+r,y:e.y-r},{x:e.x+r,y:e.y+r});break;case"right":o.push({x:e.x-r,y:e.y-r},{x:e.x-r,y:e.y+r})}return o}(n,i),...function(e){let{top:t,right:r,bottom:o,left:n}=e;return[{x:n,y:t},{x:r,y:t},{x:r,y:o},{x:n,y:o}]}(t.getBoundingClientRect())].slice()).sort((e,t)=>e.x<t.x?-1:e.x>t.x?1:e.y<t.y?-1:1*!!(e.y>t.y)),function(e){if(e.length<=1)return e.slice();let t=[];for(let r=0;r<e.length;r++){let o=e[r];for(;t.length>=2;){let e=t[t.length-1],r=t[t.length-2];if((e.x-r.x)*(o.y-r.y)>=(e.y-r.y)*(o.x-r.x))t.pop();else break}t.push(o)}t.pop();let r=[];for(let t=e.length-1;t>=0;t--){let o=e[t];for(;r.length>=2;){let e=r[r.length-1],t=r[r.length-2];if((e.x-t.x)*(o.y-t.y)>=(e.y-t.y)*(o.x-t.x))r.pop();else break}r.push(o)}return(r.pop(),1===t.length&&1===r.length&&t[0].x===r[0].x&&t[0].y===r[0].y)?t:t.concat(r)}(r))),g(!0)},[g]);return r.useEffect(()=>()=>m(),[m]),r.useEffect(()=>{if(c&&f){let e=e=>h(e,f),t=e=>h(e,c);return c.addEventListener("pointerleave",e),f.addEventListener("pointerleave",t),()=>{c.removeEventListener("pointerleave",e),f.removeEventListener("pointerleave",t)}}},[c,f,h,m]),r.useEffect(()=>{if(d){let e=e=>{let t=e.target,r={x:e.clientX,y:e.clientY},o=c?.contains(t)||f?.contains(t),n=!function(e,t){let{x:r,y:o}=e,n=!1;for(let e=0,i=t.length-1;e<t.length;i=e++){let a=t[e],l=t[i],s=a.x,d=a.y,u=l.x,c=l.y;d>o!=c>o&&r<(u-s)*(o-d)/(c-d)+s&&(n=!n)}return n}(r,d);o?m():n&&(m(),p())};return document.addEventListener("pointermove",e),()=>document.removeEventListener("pointermove",e)}},[c,f,d,p,m]),(0,t.jsx)(L,{...e,ref:s})}),[z,M]=m(j,{isInside:!1}),F=(0,p.createSlottable)("TooltipContent"),L=r.forwardRef((e,o)=>{let{__scopeTooltip:n,children:i,"aria-label":l,onEscapeKeyDown:d,onPointerDownOutside:u,...c}=e,p=P(k,n),f=v(n),{onClose:m}=p;return r.useEffect(()=>(document.addEventListener(x,m),()=>document.removeEventListener(x,m)),[m]),r.useEffect(()=>{if(p.trigger){let e=e=>{let t=e.target;t?.contains(p.trigger)&&m()};return window.addEventListener("scroll",e,{capture:!0}),()=>window.removeEventListener("scroll",e,{capture:!0})}},[p.trigger,m]),(0,t.jsx)(a.DismissableLayer,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:d,onPointerDownOutside:u,onFocusOutside:e=>e.preventDefault(),onDismiss:m,children:(0,t.jsxs)(s.Content,{"data-state":p.stateAttribute,...f,...c,ref:o,style:{...c.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[(0,t.jsx)(F,{children:i}),(0,t.jsx)(z,{scope:n,isInside:!0,children:(0,t.jsx)(g.Root,{id:p.contentId,role:"tooltip",children:l||i})})]})})});S.displayName=k;var $="TooltipArrow",B=r.forwardRef((e,r)=>{let{__scopeTooltip:o,...n}=e,i=v(o);return M($,o).isInside?null:(0,t.jsx)(s.Arrow,{...i,...n,ref:r})});B.displayName=$,e.s(["Arrow",()=>B,"Content",()=>S,"Portal",()=>A,"Provider",()=>C,"Root",()=>_,"Tooltip",()=>_,"TooltipArrow",()=>B,"TooltipContent",()=>S,"TooltipPortal",()=>A,"TooltipProvider",()=>C,"TooltipTrigger",()=>E,"Trigger",()=>E,"createTooltipScope",()=>h],30643);var G=e.i(30643),G=G,H=e.i(31777);function U({delayDuration:e=0,...r}){return(0,t.jsx)(G.Provider,{"data-slot":"tooltip-provider",delayDuration:e,...r})}function W({...e}){return(0,t.jsx)(G.Root,{"data-slot":"tooltip",...e})}function q({...e}){return(0,t.jsx)(G.Trigger,{"data-slot":"tooltip-trigger",...e})}function X({className:e,sideOffset:r=0,children:o,...n}){return(0,t.jsx)(G.Portal,{children:(0,t.jsxs)(G.Content,{"data-slot":"tooltip-content",sideOffset:r,className:(0,H.cn)("bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance",e),...n,children:[o,(0,t.jsx)(G.Arrow,{className:"bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]"})]})})}e.s(["Tooltip",()=>W,"TooltipContent",()=>X,"TooltipProvider",()=>U,"TooltipTrigger",()=>q],2828)},51251,14748,e=>{"use strict";let t=(0,e.i(3645).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);e.s(["default",()=>t],14748),e.s(["CircleAlert",()=>t],51251)},83428,15506,e=>{"use strict";let t=(0,e.i(3645).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["default",()=>t],15506),e.s(["Loader2",()=>t],83428)},2287,60253,e=>{"use strict";var t=e.i(20314),r=e.i(79054),o=e.i(90033),n=e.i(90537);e.s(["X",()=>n.default],60253);var n=n,i=e.i(31777);let a=o.Dialog.Root,l=o.Dialog.Trigger,s=o.Dialog.Portal,d=o.Dialog.Close,u=r.forwardRef(({className:e,onClick:r,...n},a)=>(0,t.jsx)(o.Dialog.Overlay,{ref:a,className:(0,i.cn)("data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 fixed inset-0 z-50 bg-black/80 duration-150",e),onClick:e=>{e.stopPropagation(),r?.(e)},...n}));u.displayName=o.Dialog.Overlay.displayName;let c=r.forwardRef(({className:e,children:r,...a},l)=>(0,t.jsxs)(s,{children:[(0,t.jsx)(u,{}),(0,t.jsxs)(o.Dialog.Content,{ref:l,className:(0,i.cn)("bg-background data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border p-6 shadow-lg duration-150 sm:rounded-lg",e),...a,children:[r,(0,t.jsxs)(o.Dialog.Close,{className:"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 cursor-pointer rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:pointer-events-none",children:[(0,t.jsx)(n.default,{className:"h-4 w-4"}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})]})]}));c.displayName=o.Dialog.Content.displayName;let p=({className:e,...r})=>(0,t.jsx)("div",{className:(0,i.cn)("flex flex-col space-y-1.5 text-center sm:text-left",e),...r});p.displayName="DialogHeader";let f=({className:e,...r})=>(0,t.jsx)("div",{className:(0,i.cn)("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...r});f.displayName="DialogFooter";let g=r.forwardRef(({className:e,...r},n)=>(0,t.jsx)(o.Dialog.Title,{ref:n,className:(0,i.cn)("text-lg leading-none font-semibold tracking-tight",e),...r}));g.displayName=o.Dialog.Title.displayName;let m=r.forwardRef(({className:e,...r},n)=>(0,t.jsx)(o.Dialog.Description,{ref:n,className:(0,i.cn)("text-muted-foreground text-sm",e),...r}));m.displayName=o.Dialog.Description.displayName,e.s(["Dialog",()=>a,"DialogClose",()=>d,"DialogContent",()=>c,"DialogDescription",()=>m,"DialogFooter",()=>f,"DialogHeader",()=>p,"DialogTitle",()=>g,"DialogTrigger",()=>l],2287)},8361,73709,18354,e=>{"use strict";var t=e.i(44172),r=e.i(79054);let o="shep-sound-enabled",n="shep:sound-toggle";function i(){let[e,t]=(0,r.useState)(!0);(0,r.useEffect)(()=>{"false"===localStorage.getItem(o)&&t(!1);let e=e=>{t(e.detail)};return window.addEventListener(n,e),()=>window.removeEventListener(n,e)},[]);let i=(0,r.useCallback)(()=>{let r=!e;localStorage.setItem(o,String(r)),t(r),window.dispatchEvent(new CustomEvent(n,{detail:r}))},[e]);return{enabled:e,toggle:i}}e.s(["useSoundEnabled",()=>i],73709);let a=new Map,l={navigate:{sound:"tap_01",volume:.2},"menu-item":{sound:"tap_01",volume:.2},select:{sound:"select",volume:.3},"toggle-on":{sound:"toggle_on",volume:.3},"toggle-off":{sound:"toggle_off",volume:.3},click:{sound:"tap_01",volume:.3},cancel:{sound:"transition_down",volume:.3},expand:{sound:"swipe",volume:.3},collapse:{sound:"swipe",volume:.3},"menu-open":{sound:"select",volume:.3},copy:{sound:"select",volume:.3},"drawer-open":{sound:"transition_up",volume:.4},"drawer-close":{sound:"transition_down",volume:.4},submit:{sound:"button",volume:.4},approve:{sound:"celebration",volume:.5},reject:{sound:"caution",volume:.5},create:{sound:"transition_up",volume:.5},delete:{sound:"transition_down",volume:.5},"notification-success":{sound:"celebration",volume:.5},"notification-error":{sound:"caution",volume:.5},"notification-warning":{sound:"notification",volume:.5},"notification-info":{sound:"button",volume:.5}};function s(e){let{sound:t,volume:o}=l[e];return function(e,t={}){let{volume:o=1,loop:n=!1}=t,{enabled:l}=i(),s=(0,r.useRef)(null),d=(0,r.useRef)(!1);return(0,r.useEffect)(()=>{let t,r=((t=a.get(e))||((t=new Audio(`/sounds/${e}.wav`)).preload="auto",a.set(e,t)),t);return r.loop=n,r.volume=Math.max(0,Math.min(1,o)),r.addEventListener("ended",()=>{d.current=!1}),s.current=r,()=>{r.pause(),s.current=null,d.current=!1}},[e,n,o]),{play:(0,r.useCallback)(()=>{if(!l)return;let e=s.current;e&&(e.currentTime=0,e.play()?.catch(e=>{}),d.current=!0)},[l,e]),stop:(0,r.useCallback)(()=>{let e=s.current;e&&(e.pause(),e.currentTime=0,d.current=!1)},[]),isPlaying:d.current}}(t,{volume:o})}e.s(["useSoundAction",()=>s],8361);let d=!!t.default.env.NEXT_PUBLIC_DEBUG,u=()=>void 0;function c(e){return{info:d?(...t)=>console.info(e,...t):u,debug:d?(...t)=>console.debug(e,...t):u,warn:(...t)=>console.warn(e,...t),error:(...t)=>console.error(e,...t)}}e.s(["createLogger",()=>c],18354)},75921,e=>{"use strict";var t=e.i(20314),r=e.i(79054);let o=(0,r.createContext)({skills:!1,envDeploy:!0,debug:!1,githubImport:!1,adoptBranch:!1,gitRebaseSync:!1,reactFileManager:!1});function n({children:e,flags:r}){return(0,t.jsx)(o.Provider,{value:r,children:e})}function i(){return(0,r.useContext)(o)}e.s(["FeatureFlagsProvider",()=>n,"useFeatureFlags",()=>i])},31406,(e,t,r)=>{t.exports=e.r(67013)},80764,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return n}});let o=e.r(79054);function n(e,t){let r=(0,o.useRef)(null),n=(0,o.useRef)(null);return(0,o.useCallback)(o=>{if(null===o){let e=r.current;e&&(r.current=null,e());let t=n.current;t&&(n.current=null,t())}else e&&(r.current=i(e,o)),t&&(n.current=i(t,o))},[e,t])}function i(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},47904,(e,t,r)=>{"use strict";function o({widthInt:e,heightInt:t,blurWidth:r,blurHeight:o,blurDataURL:n,objectFit:i}){let a=r?40*r:e,l=o?40*o:t,s=a&&l?`viewBox='0 0 ${a} ${l}'`:"";return`%3Csvg xmlns='http://www.w3.org/2000/svg' ${s}%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='${s?"none":"contain"===i?"xMidYMid":"cover"===i?"xMidYMid slice":"none"}' style='filter: url(%23b);' href='${n}'/%3E%3C/svg%3E`}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImageBlurSvg",{enumerable:!0,get:function(){return o}})},49261,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var o={VALID_LOADERS:function(){return i},imageConfigDefault:function(){return a}};for(var n in o)Object.defineProperty(r,n,{enumerable:!0,get:o[n]});let i=["default","imgix","cloudinary","akamai","custom"],a={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],path:"/_next/image",loader:"default",loaderFile:"",domains:[],disableStaticImages:!1,minimumCacheTTL:14400,formats:["image/webp"],maximumRedirects:3,maximumResponseBody:5e7,dangerouslyAllowLocalIP:!1,dangerouslyAllowSVG:!1,contentSecurityPolicy:"script-src 'none'; frame-src 'none'; sandbox;",contentDispositionType:"attachment",localPatterns:void 0,remotePatterns:[],qualities:[75],unoptimized:!1}},81241,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImgProps",{enumerable:!0,get:function(){return d}}),e.r(24270);let o=e.r(22193),n=e.r(47904),i=e.r(49261),a=["-moz-initial","fill","none","scale-down",void 0];function l(e){return void 0!==e.default}function s(e){return void 0===e?e:"number"==typeof e?Number.isFinite(e)?e:NaN:"string"==typeof e&&/^[0-9]+$/.test(e)?parseInt(e,10):NaN}function d({src:e,sizes:t,unoptimized:r=!1,priority:d=!1,preload:u=!1,loading:c,className:p,quality:f,width:g,height:m,fill:h=!1,style:v,overrideSrc:y,onLoad:x,onLoadingComplete:b,placeholder:w="empty",blurDataURL:C,fetchPriority:j,decoding:D="async",layout:P,objectFit:_,objectPosition:R,lazyBoundary:E,lazyRoot:T,...O},N){var A;let k,S,I,{imgConf:z,showAltText:M,blurComplete:F,defaultLoader:L}=N,$=z||i.imageConfigDefault;if("allSizes"in $)k=$;else{let e=[...$.deviceSizes,...$.imageSizes].sort((e,t)=>e-t),t=$.deviceSizes.sort((e,t)=>e-t),r=$.qualities?.sort((e,t)=>e-t);k={...$,allSizes:e,deviceSizes:t,qualities:r}}if(void 0===L)throw Object.defineProperty(Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config"),"__NEXT_ERROR_CODE",{value:"E163",enumerable:!1,configurable:!0});let B=O.loader||L;delete O.loader,delete O.srcSet;let G="__next_img_default"in B;if(G){if("custom"===k.loader)throw Object.defineProperty(Error(`Image with src "${e}" is missing "loader" prop.
|
|
12
12
|
Read more: https://nextjs.org/docs/messages/next-image-missing-loader`),"__NEXT_ERROR_CODE",{value:"E252",enumerable:!1,configurable:!0})}else{let e=B;B=t=>{let{config:r,...o}=t;return e(o)}}if(P){"fill"===P&&(h=!0);let e={intrinsic:{maxWidth:"100%",height:"auto"},responsive:{width:"100%",height:"auto"}}[P];e&&(v={...v,...e});let r={responsive:"100vw",fill:"100vw"}[P];r&&!t&&(t=r)}let H="",U=s(g),W=s(m);if((A=e)&&"object"==typeof A&&(l(A)||void 0!==A.src)){let t=l(e)?e.default:e;if(!t.src)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received ${JSON.stringify(t)}`),"__NEXT_ERROR_CODE",{value:"E460",enumerable:!1,configurable:!0});if(!t.height||!t.width)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received ${JSON.stringify(t)}`),"__NEXT_ERROR_CODE",{value:"E48",enumerable:!1,configurable:!0});if(S=t.blurWidth,I=t.blurHeight,C=C||t.blurDataURL,H=t.src,!h)if(U||W){if(U&&!W){let e=U/t.width;W=Math.round(t.height*e)}else if(!U&&W){let e=W/t.height;U=Math.round(t.width*e)}}else U=t.width,W=t.height}let q=!d&&!u&&("lazy"===c||void 0===c);(!(e="string"==typeof e?e:H)||e.startsWith("data:")||e.startsWith("blob:"))&&(r=!0,q=!1),k.unoptimized&&(r=!0),G&&!k.dangerouslyAllowSVG&&e.split("?",1)[0].endsWith(".svg")&&(r=!0);let X=s(f),V=Object.assign(h?{position:"absolute",height:"100%",width:"100%",left:0,top:0,right:0,bottom:0,objectFit:_,objectPosition:R}:{},M?{}:{color:"transparent"},v),Y=F||"empty"===w?null:"blur"===w?`url("data:image/svg+xml;charset=utf-8,${(0,n.getImageBlurSvg)({widthInt:U,heightInt:W,blurWidth:S,blurHeight:I,blurDataURL:C||"",objectFit:V.objectFit})}")`:`url("${w}")`,K=a.includes(V.objectFit)?"fill"===V.objectFit?"100% 100%":"cover":V.objectFit,J=Y?{backgroundSize:K,backgroundPosition:V.objectPosition||"50% 50%",backgroundRepeat:"no-repeat",backgroundImage:Y}:{},Q=function({config:e,src:t,unoptimized:r,width:n,quality:i,sizes:a,loader:l}){if(r){let e=(0,o.getDeploymentId)();if(t.startsWith("/")&&!t.startsWith("//")&&e){let r=t.includes("?")?"&":"?";t=`${t}${r}dpl=${e}`}return{src:t,srcSet:void 0,sizes:void 0}}let{widths:s,kind:d}=function({deviceSizes:e,allSizes:t},r,o){if(o){let r=/(^|\s)(1?\d?\d)vw/g,n=[];for(let e;e=r.exec(o);)n.push(parseInt(e[2]));if(n.length){let r=.01*Math.min(...n);return{widths:t.filter(t=>t>=e[0]*r),kind:"w"}}return{widths:t,kind:"w"}}return"number"!=typeof r?{widths:e,kind:"w"}:{widths:[...new Set([r,2*r].map(e=>t.find(t=>t>=e)||t[t.length-1]))],kind:"x"}}(e,n,a),u=s.length-1;return{sizes:a||"w"!==d?a:"100vw",srcSet:s.map((r,o)=>`${l({config:e,src:t,quality:i,width:r})} ${"w"===d?r:o+1}${d}`).join(", "),src:l({config:e,src:t,quality:i,width:s[u]})}}({config:k,src:e,unoptimized:r,width:U,quality:X,sizes:t,loader:B}),Z=q?"lazy":c;return{props:{...O,loading:Z,fetchPriority:j,width:U,height:W,decoding:D,className:p,style:{...V,...J},sizes:Q.sizes,srcSet:Q.srcSet,src:y||Q.src},meta:{unoptimized:r,preload:u||d,placeholder:w,fill:h}}}},38820,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return l}});let o=e.r(79054),n="u"<typeof window,i=n?()=>{}:o.useLayoutEffect,a=n?()=>{}:o.useEffect;function l(e){let{headManager:t,reduceComponentsToState:r}=e;function l(){if(t&&t.mountedInstances){let e=o.Children.toArray(Array.from(t.mountedInstances).filter(Boolean));t.updateHead(r(e))}}return n&&(t?.mountedInstances?.add(e.children),l()),i(()=>(t?.mountedInstances?.add(e.children),()=>{t?.mountedInstances?.delete(e.children)})),i(()=>(t&&(t._pendingUpdate=l),()=>{t&&(t._pendingUpdate=l)})),a(()=>(t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null),()=>{t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null)})),null}},79646,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var o={default:function(){return m},defaultHead:function(){return c}};for(var n in o)Object.defineProperty(r,n,{enumerable:!0,get:o[n]});let i=e.r(81258),a=e.r(44066),l=e.r(20314),s=a._(e.r(79054)),d=i._(e.r(38820)),u=e.r(84210);function c(){return[(0,l.jsx)("meta",{charSet:"utf-8"},"charset"),(0,l.jsx)("meta",{name:"viewport",content:"width=device-width"},"viewport")]}function p(e,t){return"string"==typeof t||"number"==typeof t?e:t.type===s.default.Fragment?e.concat(s.default.Children.toArray(t.props.children).reduce((e,t)=>"string"==typeof t||"number"==typeof t?e:e.concat(t),[])):e.concat(t)}e.r(24270);let f=["name","httpEquiv","charSet","itemProp"];function g(e){let t,r,o,n;return e.reduce(p,[]).reverse().concat(c().reverse()).filter((t=new Set,r=new Set,o=new Set,n={},e=>{let i=!0,a=!1;if(e.key&&"number"!=typeof e.key&&e.key.indexOf("$")>0){a=!0;let r=e.key.slice(e.key.indexOf("$")+1);t.has(r)?i=!1:t.add(r)}switch(e.type){case"title":case"base":r.has(e.type)?i=!1:r.add(e.type);break;case"meta":for(let t=0,r=f.length;t<r;t++){let r=f[t];if(e.props.hasOwnProperty(r))if("charSet"===r)o.has(r)?i=!1:o.add(r);else{let t=e.props[r],o=n[r]||new Set;("name"!==r||!a)&&o.has(t)?i=!1:(o.add(t),n[r]=o)}}}return i})).reverse().map((e,t)=>{let r=e.key||t;return s.default.cloneElement(e,{key:r})})}let m=function({children:e}){let t=(0,s.useContext)(u.HeadManagerContext);return(0,l.jsx)(d.default,{reduceComponentsToState:g,headManager:t,children:e})};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},5160,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ImageConfigContext",{enumerable:!0,get:function(){return i}});let o=e.r(81258)._(e.r(79054)),n=e.r(49261),i=o.default.createContext(n.imageConfigDefault)},2880,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"RouterContext",{enumerable:!0,get:function(){return o}});let o=e.r(81258)._(e.r(79054)).default.createContext(null)},36200,(e,t,r)=>{"use strict";function o(e,t){let r=e||75;return t?.qualities?.length?t.qualities.reduce((e,t)=>Math.abs(t-r)<Math.abs(e-r)?t:e,0):r}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"findClosestQuality",{enumerable:!0,get:function(){return o}})},78200,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return a}});let o=e.r(36200),n=e.r(22193);function i({config:e,src:t,width:r,quality:i}){if(t.startsWith("/")&&t.includes("?")&&e.localPatterns?.length===1&&"**"===e.localPatterns[0].pathname&&""===e.localPatterns[0].search)throw Object.defineProperty(Error(`Image with src "${t}" is using a query string which is not configured in images.localPatterns.
|
|
13
13
|
Read more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`),"__NEXT_ERROR_CODE",{value:"E871",enumerable:!1,configurable:!0});let a=(0,o.findClosestQuality)(i,e),l=(0,n.getDeploymentId)();return`${e.path}?url=${encodeURIComponent(t)}&w=${r}&q=${a}${t.startsWith("/")&&l?`&dpl=${l}`:""}`}i.__next_img_default=!0;let a=i},81819,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"Image",{enumerable:!0,get:function(){return b}});let o=e.r(81258),n=e.r(44066),i=e.r(20314),a=n._(e.r(79054)),l=o._(e.r(26036)),s=o._(e.r(79646)),d=e.r(81241),u=e.r(49261),c=e.r(5160);e.r(24270);let p=e.r(2880),f=o._(e.r(78200)),g=e.r(80764),m={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!1};function h(e,t,r,o,n,i,a){let l=e?.src;e&&e["data-loaded-src"]!==l&&(e["data-loaded-src"]=l,("decode"in e?e.decode():Promise.resolve()).catch(()=>{}).then(()=>{if(e.parentElement&&e.isConnected){if("empty"!==t&&n(!0),r?.current){let t=new Event("load");Object.defineProperty(t,"target",{writable:!1,value:e});let o=!1,n=!1;r.current({...t,nativeEvent:t,currentTarget:e,target:e,isDefaultPrevented:()=>o,isPropagationStopped:()=>n,persist:()=>{},preventDefault:()=>{o=!0,t.preventDefault()},stopPropagation:()=>{n=!0,t.stopPropagation()}})}o?.current&&o.current(e)}}))}function v(e){return a.use?{fetchPriority:e}:{fetchpriority:e}}"u"<typeof window&&(globalThis.__NEXT_IMAGE_IMPORTED=!0);let y=(0,a.forwardRef)(({src:e,srcSet:t,sizes:r,height:o,width:n,decoding:l,className:s,style:d,fetchPriority:u,placeholder:c,loading:p,unoptimized:f,fill:m,onLoadRef:y,onLoadingCompleteRef:x,setBlurComplete:b,setShowAltText:w,sizesInput:C,onLoad:j,onError:D,...P},_)=>{let R=(0,a.useCallback)(e=>{e&&(D&&(e.src=e.src),e.complete&&h(e,c,y,x,b,f,C))},[e,c,y,x,b,D,f,C]),E=(0,g.useMergedRef)(_,R);return(0,i.jsx)("img",{...P,...v(u),loading:p,width:n,height:o,decoding:l,"data-nimg":m?"fill":"1",className:s,style:d,sizes:r,srcSet:t,src:e,ref:E,onLoad:e=>{h(e.currentTarget,c,y,x,b,f,C)},onError:e=>{w(!0),"empty"!==c&&b(!0),D&&D(e)}})});function x({isAppRouter:e,imgAttributes:t}){let r={as:"image",imageSrcSet:t.srcSet,imageSizes:t.sizes,crossOrigin:t.crossOrigin,referrerPolicy:t.referrerPolicy,...v(t.fetchPriority)};return e&&l.default.preload?(l.default.preload(t.src,r),null):(0,i.jsx)(s.default,{children:(0,i.jsx)("link",{rel:"preload",href:t.srcSet?void 0:t.src,...r},"__nimg-"+t.src+t.srcSet+t.sizes)})}let b=(0,a.forwardRef)((e,t)=>{let r=(0,a.useContext)(p.RouterContext),o=(0,a.useContext)(c.ImageConfigContext),n=(0,a.useMemo)(()=>{let e=m||o||u.imageConfigDefault,t=[...e.deviceSizes,...e.imageSizes].sort((e,t)=>e-t),r=e.deviceSizes.sort((e,t)=>e-t),n=e.qualities?.sort((e,t)=>e-t);return{...e,allSizes:t,deviceSizes:r,qualities:n,localPatterns:"u"<typeof window?o?.localPatterns:e.localPatterns}},[o]),{onLoad:l,onLoadingComplete:s}=e,g=(0,a.useRef)(l);(0,a.useEffect)(()=>{g.current=l},[l]);let h=(0,a.useRef)(s);(0,a.useEffect)(()=>{h.current=s},[s]);let[v,b]=(0,a.useState)(!1),[w,C]=(0,a.useState)(!1),{props:j,meta:D}=(0,d.getImgProps)(e,{defaultLoader:f.default,imgConf:n,blurComplete:v,showAltText:w});return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(y,{...j,unoptimized:D.unoptimized,placeholder:D.placeholder,fill:D.fill,onLoadRef:g,onLoadingCompleteRef:h,setBlurComplete:b,setShowAltText:C,sizesInput:e.sizes,ref:t}),D.preload?(0,i.jsx)(x,{isAppRouter:!r,imgAttributes:j}):null]})});("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},78639,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var o={default:function(){return u},getImageProps:function(){return d}};for(var n in o)Object.defineProperty(r,n,{enumerable:!0,get:o[n]});let i=e.r(81258),a=e.r(81241),l=e.r(81819),s=i._(e.r(78200));function d(e){let{props:t}=(0,a.getImgProps)(e,{defaultLoader:s.default,imgConf:{deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!1}});for(let[e,r]of Object.entries(t))void 0===r&&delete t[e];return{props:t}}let u=l.Image},98804,(e,t,r)=>{t.exports=e.r(78639)},86782,29847,e=>{"use strict";var t=e.i(20314),r=e.i(98804),o=e.i(31777);function n(e,n){function i({className:i}){return(0,t.jsx)(r.default,{src:e,alt:n,width:24,height:24,className:(0,o.cn)("rounded-sm object-contain",i)})}return i.displayName=`BrandIcon(${n})`,i}function i(e){return(0,t.jsxs)("svg",{viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[(0,t.jsx)("circle",{cx:"12",cy:"12",r:"9",stroke:"currentColor",strokeWidth:"2"}),(0,t.jsx)("circle",{cx:"12",cy:"12",r:"3",fill:"currentColor"})]})}function a({className:e,...r}){return(0,t.jsxs)("svg",{viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:(0,o.cn)("h-6 w-6",e),...r,children:[(0,t.jsx)("defs",{children:(0,t.jsxs)("linearGradient",{id:"dev-flask-grad",x1:"6",y1:"22",x2:"18",y2:"8",gradientUnits:"userSpaceOnUse",children:[(0,t.jsx)("stop",{offset:"0%",stopColor:"#8B5CF6"}),(0,t.jsx)("stop",{offset:"50%",stopColor:"#EC4899"}),(0,t.jsx)("stop",{offset:"100%",stopColor:"#F59E0B"})]})}),(0,t.jsx)("path",{d:"M9 2h6v6l4.5 9a2 2 0 0 1-1.79 2.89H6.29A2 2 0 0 1 4.5 17L9 8V2z",fill:"url(#dev-flask-grad)",opacity:"0.9"}),(0,t.jsx)("path",{d:"M9 2h6v6l4.5 9a2 2 0 0 1-1.79 2.89H6.29A2 2 0 0 1 4.5 17L9 8V2z",stroke:"url(#dev-flask-grad)",strokeWidth:"1.5",fill:"none"}),(0,t.jsx)("circle",{cx:"10",cy:"14",r:"1.2",fill:"white",opacity:"0.7"}),(0,t.jsx)("circle",{cx:"13.5",cy:"16",r:"0.8",fill:"white",opacity:"0.5"}),(0,t.jsx)("circle",{cx:"11.5",cy:"17.5",r:"0.6",fill:"white",opacity:"0.4"}),(0,t.jsx)("path",{d:"M16 4l1-2 1 2-2 1 2 1-1 2-1-2-2-1z",fill:"#F59E0B"})]})}a.displayName="DevAgentIcon";let l={"claude-code":n("/icons/agents/claude-ai-icon.svg","Claude Code"),cursor:n("/icons/agents/cursor.jpeg","Cursor"),"gemini-cli":n("/icons/agents/gemini-cli.jpeg","Gemini CLI"),aider:n("/icons/agents/aider.png","Aider"),continue:n("/icons/agents/continue.jpeg","Continue"),dev:a};function s(e){return e&&e in l?l[e]:i}e.s(["agentTypeLabels",0,{"claude-code":"Claude Code",cursor:"Cursor","gemini-cli":"Gemini CLI",aider:"Aider",continue:"Continue",dev:"Demo"},"getAgentTypeIcon",()=>s],86782);let d={"claude-opus-4-6":{displayName:"Opus 4.6",description:"Most capable, complex tasks"},"claude-sonnet-4-6":{displayName:"Sonnet 4.6",description:"Fast & balanced"},"claude-haiku-4-5":{displayName:"Haiku 4.5",description:"Lightweight & quick"},"gemini-3.1-pro":{displayName:"Gemini 3.1 Pro",description:"Advanced reasoning"},"gemini-3-flash":{displayName:"Gemini 3 Flash",description:"Ultra-fast responses"},"gemini-2.5-pro":{displayName:"Gemini 2.5 Pro",description:"Reliable workhorse"},"gemini-2.5-flash":{displayName:"Gemini 2.5 Flash",description:"Speed-optimized"},"gpt-5.4-high":{displayName:"GPT-5.4",description:"Latest reasoning model"},"gpt-5.2":{displayName:"GPT-5.2",description:"Flagship model"},"gpt-5.3-codex":{displayName:"GPT-5.3 Codex",description:"Code specialist"},"composer-1.5":{displayName:"Composer 1.5",description:"Multi-file editing"},"grok-code":{displayName:"Grok Code",description:"xAI code model"},"gpt-8":{displayName:"GPT-8",description:"Writes code before you think it"},"opus-7":{displayName:"Opus 7",description:"Achieved consciousness, ships on time"}},u={displayName:"",description:""};function c(e){let t=d[e];return t||{...u,displayName:e.replace(/^claude-/,"").replace(/^gemini-/,"Gemini ").replace(/^gpt-/,"GPT-").replace(/-/g," ").replace(/\b\w/g,e=>e.toUpperCase())}}e.s(["getModelMeta",()=>c],29847)}]);
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[70500,a=>{"use strict";var b=a.i(12513),c=a.i(73101),d=a.i(65324),e=a.i(33841),f=a.i(46646),g=a.i(68670),h=a.i(85321),i=a.i(84095),j=a.i(56799),k=a.i(80496),l=a.i(94691),m=a.i(41872),n=a.i(9959),o=a.i(23504),p=a.i(27900),q=a.i(50845),r=a.i(26604),s=a.i(54723),t=a.i(18942),u=a.i(49560),v=a.i(39353),w=a.i(29207),x=a.i(92658),y=a.i(96380),z=a.i(12581);async function A(a){let{branchName:b,repositoryPath:c}=a;if(!b?.trim())return{error:"Branch name is required"};if(!c?.trim())return{error:"Repository path is required"};try{let a=(0,y.resolve)("AdoptBranchUseCase");return{feature:(await a.execute({branchName:b,repositoryPath:c})).feature}}catch(a){return{error:a instanceof Error?a.message:"Failed to adopt branch"}}}async function B(a){if(!a?.trim())return[];try{let b=(0,y.resolve)("IWorktreeService");return await b.listBranches(a)}catch{return[]}}(0,z.ensureServerEntryExports)([A]),(0,x.registerServerReference)(A,"4046fc3070d9ca3afc4d0f001cead42405e65aacc3",null),(0,z.ensureServerEntryExports)([B]),(0,x.registerServerReference)(B,"409935f974f1bcb6ee8902413b3998c69f5b29b9dd",null),a.s([],80106),a.i(80106),a.s(["001989f77f6f1619ed39454930de7d9302a7cb73df",()=>b.pickFolder,"001ab63ed63ebe18ed2a02b43e9da5c071532e1dc8",()=>m.isAgentSetupComplete,"00899330109aad6789ce17f375887ce0d3b43e7dfd",()=>n.checkAgentAuth,"00e0a4fb8a4912837de20d66d304c3bb8cae0c57d3",()=>o.getAllAgentModels,"40010cba5632be2424e4a32829e7456fb667e66df8",()=>k.openFolder,"40071075a81485557c8301dd1e29dbf3bf20d28fb6",()=>l.getDeploymentLogs,"401158c59b59dadafd6007b2bcf7f93052b28f6743",()=>i.openIde,"4019719528b914aad8ec7781d767c3292a08c8cf14",()=>c.listGitHubRepositories,"4023892bae2788e9ea1965df2ee531894f11164216",()=>j.openShell,"402544627ed63a1ebfd1d3c04cb06b3648ea14d7be",()=>h.getDeploymentStatus,"402a83ca273e9c596679dccfd660ce97d38ba71d9c",()=>d.importGitHubRepository,"4046fc3070d9ca3afc4d0f001cead42405e65aacc3",()=>A,"404dfce5f5af065f4c00f4f15173763a0340bad94f",()=>s.startFeature,"40613aa7fe9cd17cbd2f178547f9ea1b8d11e82975",()=>e.deployFeature,"409935f974f1bcb6ee8902413b3998c69f5b29b9dd",()=>B,"40ac1f49d31b49d5b5c4deea3e8b0af692a928457d",()=>t.stopFeature,"40b2e9e0d96442353753cb0263386a6e438bd54293",()=>v.deleteRepository,"40d1174464ccb5d7b13f5a05c4b41c39ab1d4b3dff",()=>w.getFeatureMetadata,"40dc2ca0b380cff9f41824177c52efc14e49ab3039",()=>g.stopDeployment,"40e6e6a2c63d2865cad728e5fbc533aec5f5d1a91d",()=>u.addRepository,"40f3fc1e570708d9c4c0e5a039cf6576ae6a08b58a",()=>r.resumeFeature,"40fecf2571c49ed237ef2da51f33a86d81814a73b1",()=>f.deployRepository,"6002de584c13818935416f4240136510fa33874179",()=>p.updateAgentAndModel,"78ee04f5fc932d0ac4b252e0d0243ecc1343495e19",()=>q.deleteFeature],70500)}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=744ca_web__next-internal_server_app_%28dashboard%29_%40drawer_adopt_page_actions_4e741df2.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../src/presentation/web/.next-internal/server/app/%28dashboard%29/%40drawer/adopt/page/actions.js%20%28server%20actions%20loader%29","../../../../../../../src/presentation/web/app/actions/adopt-branch.ts","../../../../../../../src/presentation/web/app/actions/list-branches.ts"],"sourcesContent":["export {pickFolder as '001989f77f6f1619ed39454930de7d9302a7cb73df'} from 'ACTIONS_MODULE0'\nexport {listGitHubRepositories as '4019719528b914aad8ec7781d767c3292a08c8cf14'} from 'ACTIONS_MODULE1'\nexport {importGitHubRepository as '402a83ca273e9c596679dccfd660ce97d38ba71d9c'} from 'ACTIONS_MODULE2'\nexport {deployFeature as '40613aa7fe9cd17cbd2f178547f9ea1b8d11e82975'} from 'ACTIONS_MODULE3'\nexport {deployRepository as '40fecf2571c49ed237ef2da51f33a86d81814a73b1'} from 'ACTIONS_MODULE4'\nexport {stopDeployment as '40dc2ca0b380cff9f41824177c52efc14e49ab3039'} from 'ACTIONS_MODULE5'\nexport {getDeploymentStatus as '402544627ed63a1ebfd1d3c04cb06b3648ea14d7be'} from 'ACTIONS_MODULE6'\nexport {openIde as '401158c59b59dadafd6007b2bcf7f93052b28f6743'} from 'ACTIONS_MODULE7'\nexport {openShell as '4023892bae2788e9ea1965df2ee531894f11164216'} from 'ACTIONS_MODULE8'\nexport {openFolder as '40010cba5632be2424e4a32829e7456fb667e66df8'} from 'ACTIONS_MODULE9'\nexport {getDeploymentLogs as '40071075a81485557c8301dd1e29dbf3bf20d28fb6'} from 'ACTIONS_MODULE10'\nexport {isAgentSetupComplete as '001ab63ed63ebe18ed2a02b43e9da5c071532e1dc8'} from 'ACTIONS_MODULE11'\nexport {checkAgentAuth as '00899330109aad6789ce17f375887ce0d3b43e7dfd'} from 'ACTIONS_MODULE12'\nexport {getAllAgentModels as '00e0a4fb8a4912837de20d66d304c3bb8cae0c57d3'} from 'ACTIONS_MODULE13'\nexport {updateAgentAndModel as '6002de584c13818935416f4240136510fa33874179'} from 'ACTIONS_MODULE14'\nexport {deleteFeature as '78ee04f5fc932d0ac4b252e0d0243ecc1343495e19'} from 'ACTIONS_MODULE15'\nexport {resumeFeature as '40f3fc1e570708d9c4c0e5a039cf6576ae6a08b58a'} from 'ACTIONS_MODULE16'\nexport {startFeature as '404dfce5f5af065f4c00f4f15173763a0340bad94f'} from 'ACTIONS_MODULE17'\nexport {stopFeature as '40ac1f49d31b49d5b5c4deea3e8b0af692a928457d'} from 'ACTIONS_MODULE18'\nexport {addRepository as '40e6e6a2c63d2865cad728e5fbc533aec5f5d1a91d'} from 'ACTIONS_MODULE19'\nexport {deleteRepository as '40b2e9e0d96442353753cb0263386a6e438bd54293'} from 'ACTIONS_MODULE20'\nexport {getFeatureMetadata as '40d1174464ccb5d7b13f5a05c4b41c39ab1d4b3dff'} from 'ACTIONS_MODULE21'\nexport {adoptBranch as '4046fc3070d9ca3afc4d0f001cead42405e65aacc3'} from 'ACTIONS_MODULE22'\nexport {listBranches as '409935f974f1bcb6ee8902413b3998c69f5b29b9dd'} from 'ACTIONS_MODULE23'\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { AdoptBranchUseCase } from '@shepai/core/application/use-cases/features/adopt-branch.use-case';\nimport type { Feature } from '@shepai/core/domain/generated/output';\n\ninterface AdoptBranchInput {\n branchName: string;\n repositoryPath: string;\n}\n\nexport async function adoptBranch(\n input: AdoptBranchInput\n): Promise<{ feature?: Feature; error?: string }> {\n const { branchName, repositoryPath } = input;\n\n if (!branchName?.trim()) {\n return { error: 'Branch name is required' };\n }\n if (!repositoryPath?.trim()) {\n return { error: 'Repository path is required' };\n }\n\n try {\n const useCase = resolve<AdoptBranchUseCase>('AdoptBranchUseCase');\n const result = await useCase.execute({ branchName, repositoryPath });\n return { feature: result.feature };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to adopt branch';\n return { error: message };\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { IWorktreeService } from '@shepai/core/application/ports/output/services/worktree-service.interface';\n\n/**\n * Server action that returns all branch names (local + remote) for a repository.\n * Used by the adopt branch drawer to populate the branch combobox.\n */\nexport async function listBranches(repositoryPath: string): Promise<string[]> {\n if (!repositoryPath?.trim()) {\n return [];\n }\n\n try {\n const worktreeService = resolve<IWorktreeService>('IWorktreeService');\n return await worktreeService.listBranches(repositoryPath);\n } catch {\n return [];\n }\n}\n"],"names":[],"mappings":"uCAAA,IAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,MACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,oBCnBA,EAAA,EAAA,CAAA,CAAA,oBASO,eAAe,EACpB,CAAuB,EAEvB,GAAM,YAAE,CAAU,gBAAE,CAAc,CAAE,CAAG,EAEvC,GAAI,CAAC,GAAY,OACf,CADuB,KAChB,CAAE,MAAO,yBAA0B,EAE5C,GAAI,CAAC,GAAgB,OACnB,CAD2B,KACpB,CAAE,MAAO,6BAA8B,EAGhD,GAAI,CACF,IAAM,EAAU,CAAA,EAAA,EAAA,OAAA,AAAO,EAAqB,sBAE5C,MAAO,CAAE,QAAS,CADH,MAAM,EAAQ,OAAO,CAAC,YAAE,iBAAY,CAAe,EAAA,EACzC,OAAO,AAAC,CACnC,CAAE,MAAO,EAAgB,CAEvB,MAAO,CAAE,MADO,CACA,YADiB,MAAQ,EAAM,OAAO,CAAG,wBACjC,CAC1B,CACF,CCtBO,eAAe,EAAa,CAAsB,EACvD,GAAI,CAAC,GAAgB,OACnB,CAD2B,KACpB,EAAE,CAGX,GAAI,CACF,IAAM,EAAkB,CAAA,EAAA,EAAA,OAAA,AAAO,EAAmB,oBAClD,OAAO,MAAM,EAAgB,YAAY,CAAC,EAC5C,CAAE,KAAM,CACN,MAAO,EAAE,AACX,CACF,iCDTsB,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,sCCFA,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA"}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[4585,a=>{"use strict";var b=a.i(12513),c=a.i(73101),d=a.i(65324),e=a.i(33841),f=a.i(46646),g=a.i(68670),h=a.i(85321),i=a.i(84095),j=a.i(56799),k=a.i(80496),l=a.i(94691),m=a.i(41872),n=a.i(9959),o=a.i(23504),p=a.i(27900),q=a.i(50845),r=a.i(26604),s=a.i(54723),t=a.i(18942),u=a.i(49560),v=a.i(39353),w=a.i(29207);a.s([],78424),a.i(78424),a.s(["001989f77f6f1619ed39454930de7d9302a7cb73df",()=>b.pickFolder,"001ab63ed63ebe18ed2a02b43e9da5c071532e1dc8",()=>m.isAgentSetupComplete,"00899330109aad6789ce17f375887ce0d3b43e7dfd",()=>n.checkAgentAuth,"00e0a4fb8a4912837de20d66d304c3bb8cae0c57d3",()=>o.getAllAgentModels,"40010cba5632be2424e4a32829e7456fb667e66df8",()=>k.openFolder,"40071075a81485557c8301dd1e29dbf3bf20d28fb6",()=>l.getDeploymentLogs,"401158c59b59dadafd6007b2bcf7f93052b28f6743",()=>i.openIde,"4019719528b914aad8ec7781d767c3292a08c8cf14",()=>c.listGitHubRepositories,"4023892bae2788e9ea1965df2ee531894f11164216",()=>j.openShell,"402544627ed63a1ebfd1d3c04cb06b3648ea14d7be",()=>h.getDeploymentStatus,"402a83ca273e9c596679dccfd660ce97d38ba71d9c",()=>d.importGitHubRepository,"404dfce5f5af065f4c00f4f15173763a0340bad94f",()=>s.startFeature,"40613aa7fe9cd17cbd2f178547f9ea1b8d11e82975",()=>e.deployFeature,"40ac1f49d31b49d5b5c4deea3e8b0af692a928457d",()=>t.stopFeature,"40b2e9e0d96442353753cb0263386a6e438bd54293",()=>v.deleteRepository,"40d1174464ccb5d7b13f5a05c4b41c39ab1d4b3dff",()=>w.getFeatureMetadata,"40dc2ca0b380cff9f41824177c52efc14e49ab3039",()=>g.stopDeployment,"40e6e6a2c63d2865cad728e5fbc533aec5f5d1a91d",()=>u.addRepository,"40f3fc1e570708d9c4c0e5a039cf6576ae6a08b58a",()=>r.resumeFeature,"40fecf2571c49ed237ef2da51f33a86d81814a73b1",()=>f.deployRepository,"6002de584c13818935416f4240136510fa33874179",()=>p.updateAgentAndModel,"78ee04f5fc932d0ac4b252e0d0243ecc1343495e19",()=>q.deleteFeature],4585)}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=8ba4b_server_app_%28dashboard%29_%40drawer_repository_%5BrepositoryId%5D_page_actions_026fdffa.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../src/presentation/web/.next-internal/server/app/%28dashboard%29/%40drawer/repository/%5BrepositoryId%5D/page/actions.js%20%28server%20actions%20loader%29"],"sourcesContent":["export {pickFolder as '001989f77f6f1619ed39454930de7d9302a7cb73df'} from 'ACTIONS_MODULE0'\nexport {listGitHubRepositories as '4019719528b914aad8ec7781d767c3292a08c8cf14'} from 'ACTIONS_MODULE1'\nexport {importGitHubRepository as '402a83ca273e9c596679dccfd660ce97d38ba71d9c'} from 'ACTIONS_MODULE2'\nexport {deployFeature as '40613aa7fe9cd17cbd2f178547f9ea1b8d11e82975'} from 'ACTIONS_MODULE3'\nexport {deployRepository as '40fecf2571c49ed237ef2da51f33a86d81814a73b1'} from 'ACTIONS_MODULE4'\nexport {stopDeployment as '40dc2ca0b380cff9f41824177c52efc14e49ab3039'} from 'ACTIONS_MODULE5'\nexport {getDeploymentStatus as '402544627ed63a1ebfd1d3c04cb06b3648ea14d7be'} from 'ACTIONS_MODULE6'\nexport {openIde as '401158c59b59dadafd6007b2bcf7f93052b28f6743'} from 'ACTIONS_MODULE7'\nexport {openShell as '4023892bae2788e9ea1965df2ee531894f11164216'} from 'ACTIONS_MODULE8'\nexport {openFolder as '40010cba5632be2424e4a32829e7456fb667e66df8'} from 'ACTIONS_MODULE9'\nexport {getDeploymentLogs as '40071075a81485557c8301dd1e29dbf3bf20d28fb6'} from 'ACTIONS_MODULE10'\nexport {isAgentSetupComplete as '001ab63ed63ebe18ed2a02b43e9da5c071532e1dc8'} from 'ACTIONS_MODULE11'\nexport {checkAgentAuth as '00899330109aad6789ce17f375887ce0d3b43e7dfd'} from 'ACTIONS_MODULE12'\nexport {getAllAgentModels as '00e0a4fb8a4912837de20d66d304c3bb8cae0c57d3'} from 'ACTIONS_MODULE13'\nexport {updateAgentAndModel as '6002de584c13818935416f4240136510fa33874179'} from 'ACTIONS_MODULE14'\nexport {deleteFeature as '78ee04f5fc932d0ac4b252e0d0243ecc1343495e19'} from 'ACTIONS_MODULE15'\nexport {resumeFeature as '40f3fc1e570708d9c4c0e5a039cf6576ae6a08b58a'} from 'ACTIONS_MODULE16'\nexport {startFeature as '404dfce5f5af065f4c00f4f15173763a0340bad94f'} from 'ACTIONS_MODULE17'\nexport {stopFeature as '40ac1f49d31b49d5b5c4deea3e8b0af692a928457d'} from 'ACTIONS_MODULE18'\nexport {addRepository as '40e6e6a2c63d2865cad728e5fbc533aec5f5d1a91d'} from 'ACTIONS_MODULE19'\nexport {deleteRepository as '40b2e9e0d96442353753cb0263386a6e438bd54293'} from 'ACTIONS_MODULE20'\nexport {getFeatureMetadata as '40d1174464ccb5d7b13f5a05c4b41c39ab1d4b3dff'} from 'ACTIONS_MODULE21'\n"],"names":[],"mappings":"sCAAA,IAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,MACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA"}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[73261,a=>{"use strict";var b=a.i(12513),c=a.i(73101),d=a.i(65324),e=a.i(33841),f=a.i(46646),g=a.i(68670),h=a.i(85321),i=a.i(84095),j=a.i(56799),k=a.i(80496),l=a.i(94691),m=a.i(41872),n=a.i(9959),o=a.i(23504),p=a.i(27900),q=a.i(50845),r=a.i(26604),s=a.i(54723),t=a.i(18942),u=a.i(49560),v=a.i(39353),w=a.i(29207);a.s([],37240),a.i(37240),a.s(["001989f77f6f1619ed39454930de7d9302a7cb73df",()=>b.pickFolder,"001ab63ed63ebe18ed2a02b43e9da5c071532e1dc8",()=>m.isAgentSetupComplete,"00899330109aad6789ce17f375887ce0d3b43e7dfd",()=>n.checkAgentAuth,"00e0a4fb8a4912837de20d66d304c3bb8cae0c57d3",()=>o.getAllAgentModels,"40010cba5632be2424e4a32829e7456fb667e66df8",()=>k.openFolder,"40071075a81485557c8301dd1e29dbf3bf20d28fb6",()=>l.getDeploymentLogs,"401158c59b59dadafd6007b2bcf7f93052b28f6743",()=>i.openIde,"4019719528b914aad8ec7781d767c3292a08c8cf14",()=>c.listGitHubRepositories,"4023892bae2788e9ea1965df2ee531894f11164216",()=>j.openShell,"402544627ed63a1ebfd1d3c04cb06b3648ea14d7be",()=>h.getDeploymentStatus,"402a83ca273e9c596679dccfd660ce97d38ba71d9c",()=>d.importGitHubRepository,"404dfce5f5af065f4c00f4f15173763a0340bad94f",()=>s.startFeature,"40613aa7fe9cd17cbd2f178547f9ea1b8d11e82975",()=>e.deployFeature,"40ac1f49d31b49d5b5c4deea3e8b0af692a928457d",()=>t.stopFeature,"40b2e9e0d96442353753cb0263386a6e438bd54293",()=>v.deleteRepository,"40d1174464ccb5d7b13f5a05c4b41c39ab1d4b3dff",()=>w.getFeatureMetadata,"40dc2ca0b380cff9f41824177c52efc14e49ab3039",()=>g.stopDeployment,"40e6e6a2c63d2865cad728e5fbc533aec5f5d1a91d",()=>u.addRepository,"40f3fc1e570708d9c4c0e5a039cf6576ae6a08b58a",()=>r.resumeFeature,"40fecf2571c49ed237ef2da51f33a86d81814a73b1",()=>f.deployRepository,"6002de584c13818935416f4240136510fa33874179",()=>p.updateAgentAndModel,"78ee04f5fc932d0ac4b252e0d0243ecc1343495e19",()=>q.deleteFeature],73261)}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=8ba4b_server_app_%28dashboard%29_repository_%5BrepositoryId%5D_page_actions_8b91e197.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../src/presentation/web/.next-internal/server/app/%28dashboard%29/repository/%5BrepositoryId%5D/page/actions.js%20%28server%20actions%20loader%29"],"sourcesContent":["export {pickFolder as '001989f77f6f1619ed39454930de7d9302a7cb73df'} from 'ACTIONS_MODULE0'\nexport {listGitHubRepositories as '4019719528b914aad8ec7781d767c3292a08c8cf14'} from 'ACTIONS_MODULE1'\nexport {importGitHubRepository as '402a83ca273e9c596679dccfd660ce97d38ba71d9c'} from 'ACTIONS_MODULE2'\nexport {deployFeature as '40613aa7fe9cd17cbd2f178547f9ea1b8d11e82975'} from 'ACTIONS_MODULE3'\nexport {deployRepository as '40fecf2571c49ed237ef2da51f33a86d81814a73b1'} from 'ACTIONS_MODULE4'\nexport {stopDeployment as '40dc2ca0b380cff9f41824177c52efc14e49ab3039'} from 'ACTIONS_MODULE5'\nexport {getDeploymentStatus as '402544627ed63a1ebfd1d3c04cb06b3648ea14d7be'} from 'ACTIONS_MODULE6'\nexport {openIde as '401158c59b59dadafd6007b2bcf7f93052b28f6743'} from 'ACTIONS_MODULE7'\nexport {openShell as '4023892bae2788e9ea1965df2ee531894f11164216'} from 'ACTIONS_MODULE8'\nexport {openFolder as '40010cba5632be2424e4a32829e7456fb667e66df8'} from 'ACTIONS_MODULE9'\nexport {getDeploymentLogs as '40071075a81485557c8301dd1e29dbf3bf20d28fb6'} from 'ACTIONS_MODULE10'\nexport {isAgentSetupComplete as '001ab63ed63ebe18ed2a02b43e9da5c071532e1dc8'} from 'ACTIONS_MODULE11'\nexport {checkAgentAuth as '00899330109aad6789ce17f375887ce0d3b43e7dfd'} from 'ACTIONS_MODULE12'\nexport {getAllAgentModels as '00e0a4fb8a4912837de20d66d304c3bb8cae0c57d3'} from 'ACTIONS_MODULE13'\nexport {updateAgentAndModel as '6002de584c13818935416f4240136510fa33874179'} from 'ACTIONS_MODULE14'\nexport {deleteFeature as '78ee04f5fc932d0ac4b252e0d0243ecc1343495e19'} from 'ACTIONS_MODULE15'\nexport {resumeFeature as '40f3fc1e570708d9c4c0e5a039cf6576ae6a08b58a'} from 'ACTIONS_MODULE16'\nexport {startFeature as '404dfce5f5af065f4c00f4f15173763a0340bad94f'} from 'ACTIONS_MODULE17'\nexport {stopFeature as '40ac1f49d31b49d5b5c4deea3e8b0af692a928457d'} from 'ACTIONS_MODULE18'\nexport {addRepository as '40e6e6a2c63d2865cad728e5fbc533aec5f5d1a91d'} from 'ACTIONS_MODULE19'\nexport {deleteRepository as '40b2e9e0d96442353753cb0263386a6e438bd54293'} from 'ACTIONS_MODULE20'\nexport {getFeatureMetadata as '40d1174464ccb5d7b13f5a05c4b41c39ab1d4b3dff'} from 'ACTIONS_MODULE21'\n"],"names":[],"mappings":"uCAAA,IAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,MACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA"}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[31747,a=>{"use strict";var b=a.i(81719),c=a.i(14703),d=a.i(79372);function e(a,e,f){let g=(e?.status===b.AgentRunStatus.running||e?.status===b.AgentRunStatus.pending)&&e?.pid?(0,d.isProcessAlive)(e.pid):void 0;return{name:a.name,description:a.description??a.slug,featureId:a.id,lifecycle:(0,c.deriveLifecycle)(a,e),repositoryPath:a.repositoryPath,branch:a.branch,specPath:a.specPath,state:(0,c.deriveNodeState)(a,e,void 0!==g?{isPidAlive:g}:void 0),progress:(0,c.deriveProgress)(a),summary:a.description,userQuery:a.userQuery,createdAt:a.createdAt instanceof Date?a.createdAt.getTime():a.createdAt,...a.fast&&{fastMode:!0},approvalGates:a.approvalGates,push:a.push,openPr:a.openPr,...f?.enableEvidence!=null&&{enableEvidence:f.enableEvidence},...f?.commitEvidence!=null&&{commitEvidence:f.commitEvidence},...f?.ciWatchEnabled!=null&&{ciWatchEnabled:f.ciWatchEnabled},...f?.repositoryName&&{repositoryName:f.repositoryName},...f?.baseBranch&&{baseBranch:f.baseBranch},...f?.oneLiner&&{oneLiner:f.oneLiner},...f?.remoteUrl&&{remoteUrl:f.remoteUrl},...e?.agentType&&{agentType:e.agentType},...e?.modelId&&{modelId:e.modelId},...e?.error&&{errorMessage:e.error},...null!=a.agentRunId&&{hasAgentRun:!0},...null!=a.plan&&{hasPlan:!0},...a.pr&&{pr:{url:a.pr.url,number:a.pr.number,status:a.pr.status,ciStatus:a.pr.ciStatus,commitHash:a.pr.commitHash,mergeable:a.pr.mergeable}}}}a.s(["buildFeatureNodeData",()=>e])},61402,76052,13008,74607,6542,740,12104,54433,a=>{"use strict";var b=a.i(92658),c=a.i(96380),d=a.i(12581);async function e(a,b){if(!a.trim())return{approved:!1,error:"Feature id is required"};try{let d=(0,c.resolve)("IFeatureRepository"),e=await d.findById(a);if(!e)return{approved:!1,error:"Feature not found"};if(!e.agentRunId)return{approved:!1,error:"Feature has no agent run"};let f=(0,c.resolve)("ApproveAgentRunUseCase"),g=await f.execute(e.agentRunId,b);if(!g.approved)return{approved:!1,error:g.reason};return{approved:!0}}catch(a){return{approved:!1,error:a instanceof Error?a.message:"Failed to approve feature"}}}async function f(a,b,d){if(!a.trim())return{rejected:!1,error:"Feature id is required"};if(!b.trim())return{rejected:!1,error:"Feedback is required"};try{let e=(0,c.resolve)("IFeatureRepository"),f=await e.findById(a);if(!f)return{rejected:!1,error:"Feature not found"};if(!f.agentRunId)return{rejected:!1,error:"Feature has no agent run"};let g=(0,c.resolve)("RejectAgentRunUseCase"),h=await g.execute(f.agentRunId,b,d);if(!h.rejected)return{rejected:!1,error:h.reason};return{rejected:!0,iteration:h.iteration,iterationWarning:h.iterationWarning}}catch(a){return{rejected:!1,error:a instanceof Error?a.message:"Failed to reject feature"}}}async function g(a){if(!a.trim())return{error:"Feature id is required"};try{let b=(0,c.resolve)("GetFeatureArtifactUseCase"),d=await b.execute(a),e={question:"Goal",context:d.oneLiner,questions:d.openQuestions.map((a,b)=>({id:`q-${b}`,question:a.question,type:"select",options:(a.options??[]).map((a,c)=>({id:`q-${b}-opt-${c}`,label:a.option,rationale:a.description,...a.selected?{recommended:!0}:{}}))})),finalAction:{id:"approve-reqs",label:"Approve Requirements",description:"Finalize and lock the requirements for implementation"}},f={question:"Goal",context:d.oneLiner,questions:d.openQuestions.filter(a=>a.resolved).map(a=>{let b=a.options?.find(a=>a.selected);return{question:a.question,selectedOption:b?.option??a.answer??"N/A",rationale:a.selectionRationale??b?.description??"",wasRecommended:!1}})};return{questionnaire:e,productDecisions:f,artifact:d}}catch(a){return{error:a instanceof Error?a.message:"Failed to load feature artifact"}}}async function h(a){if(!a.trim())return{error:"Feature id is required"};try{var b;let d=(0,c.resolve)("GetResearchArtifactUseCase");return{techDecisions:{name:(b=await d.execute(a)).name,summary:b.summary,decisions:b.decisions,technologies:b.technologies}}}catch(a){return{error:a instanceof Error?a.message:"Failed to load research artifact"}}}(0,d.ensureServerEntryExports)([e]),(0,b.registerServerReference)(e,"60f03d70f6d74cce6d6928b888583b774b36bce801",null),a.s(["approveFeature",()=>e],61402),(0,d.ensureServerEntryExports)([f]),(0,b.registerServerReference)(f,"70cac4136cdb55d5a4634da0329c4ecb336767fe4d",null),a.s(["rejectFeature",()=>f],76052),(0,d.ensureServerEntryExports)([g]),(0,b.registerServerReference)(g,"404579dc53453a7eb7b88f27c7eef65dbdae63347b",null),a.s(["getFeatureArtifact",()=>g],13008),(0,d.ensureServerEntryExports)([h]),(0,b.registerServerReference)(h,"40b22b59e2d3944c8f60aa46c9002283352df08cd8",null),a.s(["getResearchArtifact",()=>h],74607);var i=a.i(66680),j=a.i(2157),k=a.i(50227),l=a.i(29918),m=a.i(32278);async function n(a){if(!a.trim())return{error:"Feature id is required"};try{var b,d;let e,f,g=(0,c.resolve)("IFeatureRepository"),h=await g.findById(a);if(!h)return{error:"Feature not found"};let n=h.pr?{url:h.pr.url,number:h.pr.number,status:h.pr.status,commitHash:h.pr.commitHash,ciStatus:h.pr.ciStatus,mergeable:h.pr.mergeable}:void 0,o=h.branch?{source:h.branch,target:"main"}:void 0,p=h.worktreePath??(h.repositoryPath&&h.branch?(0,l.computeWorktreePath)(h.repositoryPath,h.branch):null),q=h.repositoryPath?(b=h.repositoryPath,f=(0,i.createHash)("sha256").update(b).digest("hex").slice(0,16),(0,k.join)((0,m.getShepHomeDir)(),"repos",f,"evidence",a).replace(/\\/g,"/")):p?(0,k.join)((0,k.dirname)((0,k.dirname)(p)),"evidence",a).replace(/\\/g,"/"):null;if(q)try{let a=(0,k.join)(q,"manifest.json");(0,j.existsSync)(a)&&(d=JSON.parse((0,j.readFileSync)(a,"utf-8")),e=d.map(a=>{if(a.relativePath.startsWith("/")){if((0,j.existsSync)(a.relativePath))return a;let b=(0,k.join)(q,(0,k.basename)(a.relativePath)).replace(/\\/g,"/");return(0,j.existsSync)(b)?{...a,relativePath:b}:a}let b=(0,k.join)(q,(0,k.basename)(a.relativePath)).replace(/\\/g,"/");return{...a,relativePath:b}}))}catch{}if(!p)return{pr:n,branch:o,evidence:e,warning:n?void 0:"No PR or diff data available"};try{let a=(0,c.resolve)("IGitPrService"),[b,d]=await Promise.all([a.getPrDiffSummary(p,"main"),a.getFileDiffs(p,"main").catch(()=>void 0)]);return{pr:n,branch:o,diffSummary:b,fileDiffs:d,evidence:e}}catch{return{pr:n,branch:o,evidence:e,warning:"Diff statistics unavailable"}}}catch(a){return{error:a instanceof Error?a.message:"Failed to load merge review data"}}}async function o(a){if(!a.trim())return{error:"Feature id is required"};try{let b=(0,c.resolve)("IPhaseTimingRepository"),d=(await b.findByFeatureId(a)).map(a=>({agentRunId:a.agentRunId,phase:a.phase,startedAt:a.startedAt,completedAt:a.completedAt,durationMs:null!=a.durationMs?Number(a.durationMs):void 0,waitingApprovalAt:a.waitingApprovalAt,approvalWaitMs:null!=a.approvalWaitMs?Number(a.approvalWaitMs):void 0,inputTokens:null!=a.inputTokens?Number(a.inputTokens):void 0,outputTokens:null!=a.outputTokens?Number(a.outputTokens):void 0,cacheCreationInputTokens:null!=a.cacheCreationInputTokens?Number(a.cacheCreationInputTokens):void 0,cacheReadInputTokens:null!=a.cacheReadInputTokens?Number(a.cacheReadInputTokens):void 0,costUsd:null!=a.costUsd?Number(a.costUsd):void 0,numTurns:a.numTurns??void 0,durationApiMs:null!=a.durationApiMs?Number(a.durationApiMs):void 0,exitCode:a.exitCode??void 0,errorMessage:a.errorMessage??void 0,prompt:a.prompt??void 0})),e=await p(a);return{timings:d,rejectionFeedback:e}}catch(a){return{error:a instanceof Error?a.message:"Failed to load phase timings"}}}async function p(b){try{let d=(0,c.resolve)("IFeatureRepository"),e=await d.findById(b);if(!e?.specPath)return[];let{readFileSync:f}=await a.A(6714),{join:g}=await a.A(11105),h=(await a.A(29718)).default,i=f(g(e.specPath,"spec.yaml"),"utf-8"),j=h.load(i);if(!Array.isArray(j?.rejectionFeedback))return[];return j.rejectionFeedback.map(a=>({iteration:Number(a.iteration??1),message:String(a.message??""),phase:a.phase?String(a.phase):void 0,timestamp:a.timestamp?String(a.timestamp):void 0,attachments:Array.isArray(a.attachments)?a.attachments.map(String):void 0}))}catch{return[]}}async function q(a){if(!a.trim())return{error:"Feature id is required"};try{let b=(0,c.resolve)("IFeatureRepository"),d=await b.findById(a);if(!d)return{error:"Feature not found"};if(!d.plan)return{plan:void 0};return{plan:{state:d.plan.state,overview:d.plan.overview,tasks:d.plan.tasks.map(a=>({title:a.title??"",description:a.description??"",state:a.state,actionItems:(a.actionItems??[]).map(a=>({name:a.name,description:a.description,acceptanceCriteria:(a.acceptanceCriteria??[]).map(a=>({description:a.description,verified:a.verified}))}))}))}}}catch(a){return{error:a instanceof Error?a.message:"Failed to load feature plan"}}}(0,d.ensureServerEntryExports)([n]),(0,b.registerServerReference)(n,"4088bc5ef82e88c5bcf09a6f6982589428770822a3",null),a.s(["getMergeReviewData",()=>n],6542),(0,d.ensureServerEntryExports)([o]),(0,b.registerServerReference)(o,"401e3357879b8ac06a65a227f46b2daea79a68e019",null),a.s(["getFeaturePhaseTimings",()=>o],740),(0,d.ensureServerEntryExports)([q]),(0,b.registerServerReference)(q,"4051b392015a39187e912e612a2258ef7f67f9cd37",null),a.s(["getFeaturePlan",()=>q],12104);var r=a.i(31747),s=a.i(33244);async function t(a){try{let b=(0,c.resolve)("IFeatureRepository"),d=(0,c.resolve)("IAgentRunRepository"),e=(0,c.resolve)("IRepositoryRepository"),f=(0,c.resolve)("IGitPrService"),g=(0,c.resolve)("GetFeatureArtifactUseCase"),h=await b.findById(a);if(!h)return null;let i=h.agentRunId?await d.findById(h.agentRunId):null,[j,k,l,m]=await Promise.all([e.findByPath(h.repositoryPath).catch(()=>null),f.getDefaultBranch(h.repositoryPath).catch(()=>"main"),g.execute(a).catch(()=>null),f.getRemoteUrl(h.repositoryPath).catch(()=>null)]),{workflow:n}=(0,s.getSettings)();return(0,r.buildFeatureNodeData)(h,i,{repositoryName:j?.name,baseBranch:k,oneLiner:l?.oneLiner,remoteUrl:m??void 0,enableEvidence:n.enableEvidence,commitEvidence:n.commitEvidence})}catch{return null}}(0,d.ensureServerEntryExports)([t]),(0,b.registerServerReference)(t,"404c6fe1bbf690286e1ab486da2c74857361c80461",null),a.s(["getFeatureDrawerData",()=>t],54433)},94383,a=>{"use strict";var b=a.i(12513),c=a.i(73101),d=a.i(65324),e=a.i(33841),f=a.i(46646),g=a.i(68670),h=a.i(85321),i=a.i(84095),j=a.i(56799),k=a.i(80496),l=a.i(94691),m=a.i(41872),n=a.i(9959),o=a.i(23504),p=a.i(27900),q=a.i(50845),r=a.i(26604),s=a.i(54723),t=a.i(18942),u=a.i(49560),v=a.i(39353),w=a.i(29207),x=a.i(61402),y=a.i(76052),z=a.i(13008),A=a.i(74607),B=a.i(6542),C=a.i(740),D=a.i(12104),E=a.i(54433);a.s([],97984),a.i(97984),a.s(["001989f77f6f1619ed39454930de7d9302a7cb73df",()=>b.pickFolder,"001ab63ed63ebe18ed2a02b43e9da5c071532e1dc8",()=>m.isAgentSetupComplete,"00899330109aad6789ce17f375887ce0d3b43e7dfd",()=>n.checkAgentAuth,"00e0a4fb8a4912837de20d66d304c3bb8cae0c57d3",()=>o.getAllAgentModels,"40010cba5632be2424e4a32829e7456fb667e66df8",()=>k.openFolder,"40071075a81485557c8301dd1e29dbf3bf20d28fb6",()=>l.getDeploymentLogs,"401158c59b59dadafd6007b2bcf7f93052b28f6743",()=>i.openIde,"4019719528b914aad8ec7781d767c3292a08c8cf14",()=>c.listGitHubRepositories,"401e3357879b8ac06a65a227f46b2daea79a68e019",()=>C.getFeaturePhaseTimings,"4023892bae2788e9ea1965df2ee531894f11164216",()=>j.openShell,"402544627ed63a1ebfd1d3c04cb06b3648ea14d7be",()=>h.getDeploymentStatus,"402a83ca273e9c596679dccfd660ce97d38ba71d9c",()=>d.importGitHubRepository,"404579dc53453a7eb7b88f27c7eef65dbdae63347b",()=>z.getFeatureArtifact,"404c6fe1bbf690286e1ab486da2c74857361c80461",()=>E.getFeatureDrawerData,"404dfce5f5af065f4c00f4f15173763a0340bad94f",()=>s.startFeature,"4051b392015a39187e912e612a2258ef7f67f9cd37",()=>D.getFeaturePlan,"40613aa7fe9cd17cbd2f178547f9ea1b8d11e82975",()=>e.deployFeature,"4088bc5ef82e88c5bcf09a6f6982589428770822a3",()=>B.getMergeReviewData,"40ac1f49d31b49d5b5c4deea3e8b0af692a928457d",()=>t.stopFeature,"40b22b59e2d3944c8f60aa46c9002283352df08cd8",()=>A.getResearchArtifact,"40b2e9e0d96442353753cb0263386a6e438bd54293",()=>v.deleteRepository,"40d1174464ccb5d7b13f5a05c4b41c39ab1d4b3dff",()=>w.getFeatureMetadata,"40dc2ca0b380cff9f41824177c52efc14e49ab3039",()=>g.stopDeployment,"40e6e6a2c63d2865cad728e5fbc533aec5f5d1a91d",()=>u.addRepository,"40f3fc1e570708d9c4c0e5a039cf6576ae6a08b58a",()=>r.resumeFeature,"40fecf2571c49ed237ef2da51f33a86d81814a73b1",()=>f.deployRepository,"6002de584c13818935416f4240136510fa33874179",()=>p.updateAgentAndModel,"60f03d70f6d74cce6d6928b888583b774b36bce801",()=>x.approveFeature,"70cac4136cdb55d5a4634da0329c4ecb336767fe4d",()=>y.rejectFeature,"78ee04f5fc932d0ac4b252e0d0243ecc1343495e19",()=>q.deleteFeature],94383)},6714,a=>{a.v(a=>Promise.resolve().then(()=>a(2157)))},11105,a=>{a.v(a=>Promise.resolve().then(()=>a(50227)))},29718,a=>{a.v(b=>Promise.all(["server/chunks/ssr/90b01_js-yaml_dist_js-yaml_mjs_c897fb57._.js"].map(b=>a.l(b))).then(()=>b(32996)))}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__755cfe02._.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../src/presentation/web/app/build-feature-node-data.ts","../../../../../../../src/presentation/web/app/actions/approve-feature.ts","../../../../../../../src/presentation/web/app/actions/reject-feature.ts","../../../../../../../src/presentation/web/app/actions/get-feature-artifact.ts","../../../../../../../src/presentation/web/app/actions/get-research-artifact.ts","../../../../../../../src/presentation/web/app/actions/get-merge-review-data.ts","../../../../../../../src/presentation/web/app/actions/get-feature-phase-timings.ts","../../../../../../../src/presentation/web/app/actions/get-feature-plan.ts","../../../../../../../src/presentation/web/app/actions/get-feature-drawer-data.ts","../../../../../../../src/presentation/web/.next-internal/server/app/%28dashboard%29/%40drawer/feature/%5BfeatureId%5D/%5Btab%5D/page/actions.js%20%28server%20actions%20loader%29"],"sourcesContent":["import type { Feature, AgentRun } from '@shepai/core/domain/generated/output';\nimport { AgentRunStatus } from '@shepai/core/domain/generated/output';\nimport {\n deriveNodeState,\n deriveProgress,\n deriveLifecycle,\n} from '@/components/common/feature-node/derive-feature-state';\nimport { isProcessAlive } from '@shepai/core/infrastructure/services/process/is-process-alive';\nimport type { FeatureNodeData } from '@/components/common/feature-node';\n\nexport interface BuildFeatureNodeDataOptions {\n baseBranch?: string;\n repositoryName?: string;\n /** AI-generated one-liner from FeatureArtifact */\n oneLiner?: string;\n /** Remote URL for the repository (HTTPS) */\n remoteUrl?: string;\n /** Whether evidence collection is enabled (global workflow setting) */\n enableEvidence?: boolean;\n /** Whether evidence is committed to the PR body (global workflow setting) */\n commitEvidence?: boolean;\n /** Whether CI watch/fix loop is enabled (global workflow setting) */\n ciWatchEnabled?: boolean;\n}\n\n/**\n * Builds a FeatureNodeData object from a Feature entity and optional AgentRun.\n * This is the single-feature version of the logic in `buildGraphNodes`.\n */\nexport function buildFeatureNodeData(\n feature: Feature,\n run: AgentRun | null,\n options?: BuildFeatureNodeDataOptions\n): FeatureNodeData {\n // Detect crashed agents: DB says running/pending but PID is dead\n const isActive = run?.status === AgentRunStatus.running || run?.status === AgentRunStatus.pending;\n const pidAlive = isActive && run?.pid ? isProcessAlive(run.pid) : undefined;\n\n return {\n name: feature.name,\n description: feature.description ?? feature.slug,\n featureId: feature.id,\n lifecycle: deriveLifecycle(feature, run),\n repositoryPath: feature.repositoryPath,\n branch: feature.branch,\n specPath: feature.specPath,\n state: deriveNodeState(\n feature,\n run,\n pidAlive !== undefined ? { isPidAlive: pidAlive } : undefined\n ),\n progress: deriveProgress(feature),\n summary: feature.description,\n userQuery: feature.userQuery,\n createdAt: feature.createdAt instanceof Date ? feature.createdAt.getTime() : feature.createdAt,\n ...(feature.fast && { fastMode: true }),\n approvalGates: feature.approvalGates,\n push: feature.push,\n openPr: feature.openPr,\n ...(options?.enableEvidence != null && { enableEvidence: options.enableEvidence }),\n ...(options?.commitEvidence != null && { commitEvidence: options.commitEvidence }),\n ...(options?.ciWatchEnabled != null && { ciWatchEnabled: options.ciWatchEnabled }),\n ...(options?.repositoryName && { repositoryName: options.repositoryName }),\n ...(options?.baseBranch && { baseBranch: options.baseBranch }),\n ...(options?.oneLiner && { oneLiner: options.oneLiner }),\n ...(options?.remoteUrl && { remoteUrl: options.remoteUrl }),\n ...(run?.agentType && { agentType: run.agentType as FeatureNodeData['agentType'] }),\n ...(run?.modelId && { modelId: run.modelId }),\n ...(run?.error && { errorMessage: run.error }),\n ...(feature.agentRunId != null && { hasAgentRun: true }),\n ...(feature.plan != null && { hasPlan: true }),\n ...(feature.pr && {\n pr: {\n url: feature.pr.url,\n number: feature.pr.number,\n status: feature.pr.status,\n ciStatus: feature.pr.ciStatus,\n commitHash: feature.pr.commitHash,\n mergeable: feature.pr.mergeable,\n },\n }),\n };\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { ApproveAgentRunUseCase } from '@shepai/core/application/use-cases/agents/approve-agent-run.use-case';\nimport type { IFeatureRepository } from '@shepai/core/application/ports/output/repositories/feature-repository.interface';\nimport type { PrdApprovalPayload } from '@shepai/core/domain/generated/output';\n\nexport async function approveFeature(\n featureId: string,\n payload?: PrdApprovalPayload\n): Promise<{ approved: boolean; error?: string }> {\n if (!featureId.trim()) {\n return { approved: false, error: 'Feature id is required' };\n }\n\n try {\n const featureRepo = resolve<IFeatureRepository>('IFeatureRepository');\n const feature = await featureRepo.findById(featureId);\n\n if (!feature) {\n return { approved: false, error: 'Feature not found' };\n }\n\n if (!feature.agentRunId) {\n return { approved: false, error: 'Feature has no agent run' };\n }\n\n // Always use ApproveAgentRunUseCase — it handles waitingApproval, failed,\n // and interrupted statuses. This ensures approval is propagated via\n // Command({update: {_approvalAction: 'approved'}}) so the graph node\n // receives it on resume.\n const approveUseCase = resolve<ApproveAgentRunUseCase>('ApproveAgentRunUseCase');\n const result = await approveUseCase.execute(feature.agentRunId, payload);\n\n if (!result.approved) {\n return { approved: false, error: result.reason };\n }\n\n return { approved: true };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to approve feature';\n return { approved: false, error: message };\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { RejectAgentRunUseCase } from '@shepai/core/application/use-cases/agents/reject-agent-run.use-case';\nimport type { IFeatureRepository } from '@shepai/core/application/ports/output/repositories/feature-repository.interface';\n\nexport async function rejectFeature(\n featureId: string,\n feedback: string,\n attachments?: string[]\n): Promise<{\n rejected: boolean;\n iteration?: number;\n iterationWarning?: boolean;\n error?: string;\n}> {\n if (!featureId.trim()) {\n return { rejected: false, error: 'Feature id is required' };\n }\n\n if (!feedback.trim()) {\n return { rejected: false, error: 'Feedback is required' };\n }\n\n try {\n const featureRepo = resolve<IFeatureRepository>('IFeatureRepository');\n const feature = await featureRepo.findById(featureId);\n\n if (!feature) {\n return { rejected: false, error: 'Feature not found' };\n }\n\n if (!feature.agentRunId) {\n return { rejected: false, error: 'Feature has no agent run' };\n }\n\n // Always use RejectAgentRunUseCase — it handles waitingApproval, failed,\n // and interrupted statuses. This ensures rejection feedback is propagated\n // via Command({update: {_approvalAction, _rejectionFeedback}}) so the\n // graph node receives the feedback on resume.\n const rejectUseCase = resolve<RejectAgentRunUseCase>('RejectAgentRunUseCase');\n const result = await rejectUseCase.execute(feature.agentRunId, feedback, attachments);\n\n if (!result.rejected) {\n return { rejected: false, error: result.reason };\n }\n\n return {\n rejected: true,\n iteration: result.iteration,\n iterationWarning: result.iterationWarning,\n };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to reject feature';\n return { rejected: false, error: message };\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { GetFeatureArtifactUseCase } from '@shepai/core/application/use-cases/features/get-feature-artifact.use-case';\nimport type { FeatureArtifact } from '@shepai/core/domain/generated/output';\nimport type { PrdQuestionnaireData } from '@shepai/core/domain/generated/output';\nimport type { ProductDecisionsSummaryData } from '@/components/common/product-decisions-summary';\n\ninterface GetFeatureArtifactResult {\n questionnaire?: PrdQuestionnaireData;\n productDecisions?: ProductDecisionsSummaryData;\n artifact?: FeatureArtifact;\n error?: string;\n}\n\n/**\n * Map FeatureArtifact openQuestions into the PrdQuestionnaireData shape\n * expected by the PrdQuestionnaireDrawer component.\n */\nfunction toQuestionnaireData(artifact: FeatureArtifact): PrdQuestionnaireData {\n return {\n question: 'Goal',\n context: artifact.oneLiner,\n questions: artifact.openQuestions.map((oq, idx) => ({\n id: `q-${idx}`,\n question: oq.question,\n type: 'select' as const,\n options: (oq.options ?? []).map((opt, optIdx) => ({\n id: `q-${idx}-opt-${optIdx}`,\n label: opt.option,\n rationale: opt.description,\n ...(opt.selected ? { recommended: true } : {}),\n })),\n })),\n finalAction: {\n id: 'approve-reqs',\n label: 'Approve Requirements',\n description: 'Finalize and lock the requirements for implementation',\n },\n };\n}\n\n/**\n * Map FeatureArtifact openQuestions into a read-only summary for the\n * Product Decisions tab in the tech review drawer.\n */\nfunction toProductDecisionsData(artifact: FeatureArtifact): ProductDecisionsSummaryData {\n return {\n question: 'Goal',\n context: artifact.oneLiner,\n questions: artifact.openQuestions\n .filter((oq) => oq.resolved)\n .map((oq) => {\n const selected = oq.options?.find((o) => o.selected);\n return {\n question: oq.question,\n selectedOption: selected?.option ?? oq.answer ?? 'N/A',\n rationale: oq.selectionRationale ?? selected?.description ?? '',\n wasRecommended: false,\n };\n }),\n };\n}\n\nexport async function getFeatureArtifact(featureId: string): Promise<GetFeatureArtifactResult> {\n if (!featureId.trim()) {\n return { error: 'Feature id is required' };\n }\n\n try {\n const useCase = resolve<GetFeatureArtifactUseCase>('GetFeatureArtifactUseCase');\n const artifact = await useCase.execute(featureId);\n const questionnaire = toQuestionnaireData(artifact);\n const productDecisions = toProductDecisionsData(artifact);\n return { questionnaire, productDecisions, artifact };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to load feature artifact';\n return { error: message };\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { GetResearchArtifactUseCase } from '@shepai/core/application/use-cases/features/get-research-artifact.use-case';\nimport type { ResearchArtifact, TechDecision } from '@shepai/core/domain/generated/output';\n\nexport interface TechDecisionsReviewData {\n name: string;\n summary: string;\n decisions: TechDecision[];\n technologies: string[];\n}\n\ninterface GetResearchArtifactResult {\n techDecisions?: TechDecisionsReviewData;\n error?: string;\n}\n\nfunction toTechDecisionsData(artifact: ResearchArtifact): TechDecisionsReviewData {\n return {\n name: artifact.name,\n summary: artifact.summary,\n decisions: artifact.decisions,\n technologies: artifact.technologies,\n };\n}\n\nexport async function getResearchArtifact(featureId: string): Promise<GetResearchArtifactResult> {\n if (!featureId.trim()) {\n return { error: 'Feature id is required' };\n }\n\n try {\n const useCase = resolve<GetResearchArtifactUseCase>('GetResearchArtifactUseCase');\n const artifact = await useCase.execute(featureId);\n const techDecisions = toTechDecisionsData(artifact);\n return { techDecisions };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to load research artifact';\n return { error: message };\n }\n}\n","'use server';\n\nimport { createHash } from 'node:crypto';\nimport { readFileSync, existsSync } from 'node:fs';\nimport { basename, join, dirname } from 'node:path';\nimport { resolve } from '@/lib/server-container';\nimport type { IFeatureRepository } from '@shepai/core/application/ports/output/repositories/feature-repository.interface';\nimport type { IGitPrService } from '@shepai/core/application/ports/output/services/git-pr-service.interface';\nimport type {\n MergeReviewData,\n MergeReviewEvidence,\n} from '@/components/common/merge-review/merge-review-config';\nimport { computeWorktreePath } from '@shepai/core/infrastructure/services/ide-launchers/compute-worktree-path';\nimport { getShepHomeDir } from '@shepai/core/infrastructure/services/filesystem/shep-directory.service';\n\ntype GetMergeReviewDataResult = MergeReviewData | { error: string };\n\n/**\n * Compute the shep evidence directory for a given repository and feature.\n * Path: ~/.shep/repos/<sha256-hash-prefix>/evidence/<featureId>/\n */\nfunction computeEvidenceDir(repositoryPath: string, featureId: string): string {\n const repoHash = createHash('sha256').update(repositoryPath).digest('hex').slice(0, 16);\n return join(getShepHomeDir(), 'repos', repoHash, 'evidence', featureId).replace(/\\\\/g, '/');\n}\n\n/**\n * Normalize evidence paths so they all point to the shep evidence directory.\n * When commitEvidence was enabled, the manifest may contain relative paths\n * (e.g. \"specs/066-feature/evidence/file.png\"). After merge the worktree is\n * deleted so those paths no longer resolve. The evidence files were also saved\n * to the shep evidence dir with the same filename, so we map relative paths\n * to absolute paths there.\n */\nfunction normalizeEvidencePaths(\n evidence: MergeReviewEvidence[],\n evidenceDir: string\n): MergeReviewEvidence[] {\n return evidence.map((e) => {\n if (e.relativePath.startsWith('/')) {\n // Already absolute — check if the file exists; if not, try the evidence dir\n if (existsSync(e.relativePath)) return e;\n const fallback = join(evidenceDir, basename(e.relativePath)).replace(/\\\\/g, '/');\n if (existsSync(fallback)) return { ...e, relativePath: fallback };\n return e;\n }\n // Relative path — resolve to evidence dir using the filename\n const absolutePath = join(evidenceDir, basename(e.relativePath)).replace(/\\\\/g, '/');\n return { ...e, relativePath: absolutePath };\n });\n}\n\nexport async function getMergeReviewData(featureId: string): Promise<GetMergeReviewDataResult> {\n if (!featureId.trim()) {\n return { error: 'Feature id is required' };\n }\n\n try {\n const featureRepo = resolve<IFeatureRepository>('IFeatureRepository');\n const feature = await featureRepo.findById(featureId);\n\n if (!feature) {\n return { error: 'Feature not found' };\n }\n\n const pr = feature.pr\n ? {\n url: feature.pr.url,\n number: feature.pr.number,\n status: feature.pr.status,\n commitHash: feature.pr.commitHash,\n ciStatus: feature.pr.ciStatus,\n mergeable: feature.pr.mergeable,\n }\n : undefined;\n\n const branch = feature.branch ? { source: feature.branch, target: 'main' } : undefined;\n\n const worktreePath =\n feature.worktreePath ??\n (feature.repositoryPath && feature.branch\n ? computeWorktreePath(feature.repositoryPath, feature.branch)\n : null);\n\n // Load evidence manifest (best-effort).\n // Evidence is stored independently of the worktree at:\n // ~/.shep/repos/<hash>/evidence/<featureId>/manifest.json\n // We compute this path from repositoryPath so evidence is accessible\n // even after the worktree has been deleted post-merge.\n let evidence: MergeReviewEvidence[] | undefined;\n const evidenceDir = feature.repositoryPath\n ? computeEvidenceDir(feature.repositoryPath, featureId)\n : worktreePath\n ? join(dirname(dirname(worktreePath)), 'evidence', featureId).replace(/\\\\/g, '/')\n : null;\n\n if (evidenceDir) {\n try {\n const manifestPath = join(evidenceDir, 'manifest.json');\n if (existsSync(manifestPath)) {\n const raw: MergeReviewEvidence[] = JSON.parse(readFileSync(manifestPath, 'utf-8'));\n evidence = normalizeEvidencePaths(raw, evidenceDir);\n }\n } catch {\n // Evidence unavailable — not critical\n }\n }\n\n if (!worktreePath) {\n return {\n pr,\n branch,\n evidence,\n warning: pr ? undefined : 'No PR or diff data available',\n };\n }\n\n try {\n const gitPrService = resolve<IGitPrService>('IGitPrService');\n const [diffSummary, fileDiffs] = await Promise.all([\n gitPrService.getPrDiffSummary(worktreePath, 'main'),\n gitPrService.getFileDiffs(worktreePath, 'main').catch(() => undefined),\n ]);\n return { pr, branch, diffSummary, fileDiffs, evidence };\n } catch {\n return {\n pr,\n branch,\n evidence,\n warning: 'Diff statistics unavailable',\n };\n }\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to load merge review data';\n return { error: message };\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { IPhaseTimingRepository } from '@shepai/core/application/ports/output/agents/phase-timing-repository.interface';\nimport type { IFeatureRepository } from '@shepai/core/application/ports/output/repositories/feature-repository.interface';\n\nexport interface PhaseTimingData {\n agentRunId: string;\n phase: string;\n startedAt: string;\n completedAt?: string;\n durationMs?: number;\n waitingApprovalAt?: string;\n approvalWaitMs?: number;\n inputTokens?: number;\n outputTokens?: number;\n cacheCreationInputTokens?: number;\n cacheReadInputTokens?: number;\n costUsd?: number;\n numTurns?: number;\n durationApiMs?: number;\n exitCode?: string;\n errorMessage?: string;\n prompt?: string;\n}\n\nexport interface RejectionFeedbackData {\n iteration: number;\n message: string;\n phase?: string;\n timestamp?: string;\n attachments?: string[];\n}\n\ntype GetPhaseTimingsResult =\n | { timings: PhaseTimingData[]; rejectionFeedback: RejectionFeedbackData[] }\n | { error: string };\n\nexport async function getFeaturePhaseTimings(featureId: string): Promise<GetPhaseTimingsResult> {\n if (!featureId.trim()) {\n return { error: 'Feature id is required' };\n }\n\n try {\n const repo = resolve<IPhaseTimingRepository>('IPhaseTimingRepository');\n const phaseTimings = await repo.findByFeatureId(featureId);\n\n const timings: PhaseTimingData[] = phaseTimings.map((t) => ({\n agentRunId: t.agentRunId,\n phase: t.phase,\n startedAt: t.startedAt,\n completedAt: t.completedAt,\n durationMs: t.durationMs != null ? Number(t.durationMs) : undefined,\n waitingApprovalAt: t.waitingApprovalAt,\n approvalWaitMs: t.approvalWaitMs != null ? Number(t.approvalWaitMs) : undefined,\n inputTokens: t.inputTokens != null ? Number(t.inputTokens) : undefined,\n outputTokens: t.outputTokens != null ? Number(t.outputTokens) : undefined,\n cacheCreationInputTokens:\n t.cacheCreationInputTokens != null ? Number(t.cacheCreationInputTokens) : undefined,\n cacheReadInputTokens:\n t.cacheReadInputTokens != null ? Number(t.cacheReadInputTokens) : undefined,\n costUsd: t.costUsd != null ? Number(t.costUsd) : undefined,\n numTurns: t.numTurns ?? undefined,\n durationApiMs: t.durationApiMs != null ? Number(t.durationApiMs) : undefined,\n exitCode: t.exitCode ?? undefined,\n errorMessage: t.errorMessage ?? undefined,\n prompt: t.prompt ?? undefined,\n }));\n\n // Read rejection feedback from spec.yaml\n const rejectionFeedback = await readRejectionFeedback(featureId);\n\n return { timings, rejectionFeedback };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to load phase timings';\n return { error: message };\n }\n}\n\nasync function readRejectionFeedback(featureId: string): Promise<RejectionFeedbackData[]> {\n try {\n const featureRepo = resolve<IFeatureRepository>('IFeatureRepository');\n const feature = await featureRepo.findById(featureId);\n if (!feature?.specPath) return [];\n\n const { readFileSync } = await import('node:fs');\n const { join } = await import('node:path');\n const yaml = (await import('js-yaml')).default;\n\n const specContent = readFileSync(join(feature.specPath, 'spec.yaml'), 'utf-8');\n const spec = yaml.load(specContent) as Record<string, unknown>;\n\n if (!Array.isArray(spec?.rejectionFeedback)) return [];\n\n return (spec.rejectionFeedback as Record<string, unknown>[]).map((entry) => ({\n iteration: Number(entry.iteration ?? 1),\n message: String(entry.message ?? ''),\n phase: entry.phase ? String(entry.phase) : undefined,\n timestamp: entry.timestamp ? String(entry.timestamp) : undefined,\n attachments: Array.isArray(entry.attachments)\n ? (entry.attachments as unknown[]).map(String)\n : undefined,\n }));\n } catch {\n return [];\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { IFeatureRepository } from '@shepai/core/application/ports/output/repositories/feature-repository.interface';\n\nexport interface AcceptanceCriterionData {\n description: string;\n verified: boolean;\n}\n\nexport interface ActionItemData {\n name: string;\n description: string;\n acceptanceCriteria: AcceptanceCriterionData[];\n}\n\nexport interface PlanTaskData {\n title: string;\n description: string;\n state: string;\n actionItems: ActionItemData[];\n}\n\nexport interface PlanData {\n state: string;\n overview: string;\n tasks: PlanTaskData[];\n}\n\ntype GetPlanResult = { plan: PlanData | undefined } | { error: string };\n\nexport async function getFeaturePlan(featureId: string): Promise<GetPlanResult> {\n if (!featureId.trim()) {\n return { error: 'Feature id is required' };\n }\n\n try {\n const repo = resolve<IFeatureRepository>('IFeatureRepository');\n const feature = await repo.findById(featureId);\n\n if (!feature) {\n return { error: 'Feature not found' };\n }\n\n if (!feature.plan) {\n return { plan: undefined };\n }\n\n const plan: PlanData = {\n state: feature.plan.state,\n overview: feature.plan.overview,\n tasks: feature.plan.tasks.map((t) => ({\n title: t.title ?? '',\n description: t.description ?? '',\n state: t.state,\n actionItems: (t.actionItems ?? []).map((ai) => ({\n name: ai.name,\n description: ai.description,\n acceptanceCriteria: (ai.acceptanceCriteria ?? []).map((ac) => ({\n description: ac.description,\n verified: ac.verified,\n })),\n })),\n })),\n };\n\n return { plan };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to load feature plan';\n return { error: message };\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { IFeatureRepository } from '@shepai/core/application/ports/output/repositories/feature-repository.interface';\nimport type { IAgentRunRepository } from '@shepai/core/application/ports/output/agents/agent-run-repository.interface';\nimport type { IRepositoryRepository } from '@shepai/core/application/ports/output/repositories/repository-repository.interface';\nimport type { IGitPrService } from '@shepai/core/application/ports/output/services/git-pr-service.interface';\nimport type { GetFeatureArtifactUseCase } from '@shepai/core/application/use-cases/features/get-feature-artifact.use-case';\nimport { buildFeatureNodeData } from '@/app/build-feature-node-data';\nimport { getSettings } from '@shepai/core/infrastructure/services/settings.service';\nimport type { FeatureNodeData } from '@/components/common/feature-node';\n\n/**\n * Fetches full FeatureNodeData for a given feature ID.\n * Used by the drawer for targeted data syncing without triggering\n * a full router.refresh() / server component re-render.\n *\n * CI status and mergeable status are read from the DB (already updated\n * by PrSyncWatcherService) instead of making duplicate GitHub API calls.\n */\nexport async function getFeatureDrawerData(featureId: string): Promise<FeatureNodeData | null> {\n try {\n const featureRepo = resolve<IFeatureRepository>('IFeatureRepository');\n const agentRunRepo = resolve<IAgentRunRepository>('IAgentRunRepository');\n const repoRepo = resolve<IRepositoryRepository>('IRepositoryRepository');\n const gitPrService = resolve<IGitPrService>('IGitPrService');\n const getArtifact = resolve<GetFeatureArtifactUseCase>('GetFeatureArtifactUseCase');\n\n const feature = await featureRepo.findById(featureId);\n if (!feature) return null;\n\n const run = feature.agentRunId ? await agentRunRepo.findById(feature.agentRunId) : null;\n\n // CI status and mergeable status are read from the feature record (updated by\n // PrSyncWatcherService every 30s) — no duplicate GitHub API calls needed.\n // Only getDefaultBranch and getRemoteUrl are kept as they are local git operations.\n const [repo, baseBranch, artifact, remoteUrl] = await Promise.all([\n repoRepo.findByPath(feature.repositoryPath).catch(() => null),\n gitPrService.getDefaultBranch(feature.repositoryPath).catch(() => 'main'),\n getArtifact.execute(featureId).catch(() => null),\n gitPrService.getRemoteUrl(feature.repositoryPath).catch(() => null),\n ]);\n\n const { workflow } = getSettings();\n\n return buildFeatureNodeData(feature, run, {\n repositoryName: repo?.name,\n baseBranch,\n oneLiner: artifact?.oneLiner,\n remoteUrl: remoteUrl ?? undefined,\n enableEvidence: workflow.enableEvidence,\n commitEvidence: workflow.commitEvidence,\n });\n } catch {\n return null;\n }\n}\n","export {pickFolder as '001989f77f6f1619ed39454930de7d9302a7cb73df'} from 'ACTIONS_MODULE0'\nexport {listGitHubRepositories as '4019719528b914aad8ec7781d767c3292a08c8cf14'} from 'ACTIONS_MODULE1'\nexport {importGitHubRepository as '402a83ca273e9c596679dccfd660ce97d38ba71d9c'} from 'ACTIONS_MODULE2'\nexport {deployFeature as '40613aa7fe9cd17cbd2f178547f9ea1b8d11e82975'} from 'ACTIONS_MODULE3'\nexport {deployRepository as '40fecf2571c49ed237ef2da51f33a86d81814a73b1'} from 'ACTIONS_MODULE4'\nexport {stopDeployment as '40dc2ca0b380cff9f41824177c52efc14e49ab3039'} from 'ACTIONS_MODULE5'\nexport {getDeploymentStatus as '402544627ed63a1ebfd1d3c04cb06b3648ea14d7be'} from 'ACTIONS_MODULE6'\nexport {openIde as '401158c59b59dadafd6007b2bcf7f93052b28f6743'} from 'ACTIONS_MODULE7'\nexport {openShell as '4023892bae2788e9ea1965df2ee531894f11164216'} from 'ACTIONS_MODULE8'\nexport {openFolder as '40010cba5632be2424e4a32829e7456fb667e66df8'} from 'ACTIONS_MODULE9'\nexport {getDeploymentLogs as '40071075a81485557c8301dd1e29dbf3bf20d28fb6'} from 'ACTIONS_MODULE10'\nexport {isAgentSetupComplete as '001ab63ed63ebe18ed2a02b43e9da5c071532e1dc8'} from 'ACTIONS_MODULE11'\nexport {checkAgentAuth as '00899330109aad6789ce17f375887ce0d3b43e7dfd'} from 'ACTIONS_MODULE12'\nexport {getAllAgentModels as '00e0a4fb8a4912837de20d66d304c3bb8cae0c57d3'} from 'ACTIONS_MODULE13'\nexport {updateAgentAndModel as '6002de584c13818935416f4240136510fa33874179'} from 'ACTIONS_MODULE14'\nexport {deleteFeature as '78ee04f5fc932d0ac4b252e0d0243ecc1343495e19'} from 'ACTIONS_MODULE15'\nexport {resumeFeature as '40f3fc1e570708d9c4c0e5a039cf6576ae6a08b58a'} from 'ACTIONS_MODULE16'\nexport {startFeature as '404dfce5f5af065f4c00f4f15173763a0340bad94f'} from 'ACTIONS_MODULE17'\nexport {stopFeature as '40ac1f49d31b49d5b5c4deea3e8b0af692a928457d'} from 'ACTIONS_MODULE18'\nexport {addRepository as '40e6e6a2c63d2865cad728e5fbc533aec5f5d1a91d'} from 'ACTIONS_MODULE19'\nexport {deleteRepository as '40b2e9e0d96442353753cb0263386a6e438bd54293'} from 'ACTIONS_MODULE20'\nexport {getFeatureMetadata as '40d1174464ccb5d7b13f5a05c4b41c39ab1d4b3dff'} from 'ACTIONS_MODULE21'\nexport {approveFeature as '60f03d70f6d74cce6d6928b888583b774b36bce801'} from 'ACTIONS_MODULE22'\nexport {rejectFeature as '70cac4136cdb55d5a4634da0329c4ecb336767fe4d'} from 'ACTIONS_MODULE23'\nexport {getFeatureArtifact as '404579dc53453a7eb7b88f27c7eef65dbdae63347b'} from 'ACTIONS_MODULE24'\nexport {getResearchArtifact as '40b22b59e2d3944c8f60aa46c9002283352df08cd8'} from 'ACTIONS_MODULE25'\nexport {getMergeReviewData as '4088bc5ef82e88c5bcf09a6f6982589428770822a3'} from 'ACTIONS_MODULE26'\nexport {getFeaturePhaseTimings as '401e3357879b8ac06a65a227f46b2daea79a68e019'} from 'ACTIONS_MODULE27'\nexport {getFeaturePlan as '4051b392015a39187e912e612a2258ef7f67f9cd37'} from 'ACTIONS_MODULE28'\nexport {getFeatureDrawerData as '404c6fe1bbf690286e1ab486da2c74857361c80461'} from 'ACTIONS_MODULE29'\n"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
module.exports=[92658,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(28478)},12581,(a,b,c)=>{"use strict";function d(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
|
|
2
|
-
Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},12513,73101,65324,a=>{"use strict";var b=a.i(92658),c=a.i(74533);let d={platform:process.platform,exec:(a,b)=>(0,c.execSync)(a,b)},e={darwin:"osascript -e 'POSIX path of (choose folder with prompt \"Select a repository folder\")'",linux:'zenity --file-selection --directory --title="Select a repository folder" 2>/dev/null',win32:"powershell -NoProfile -Command \"Add-Type -AssemblyName System.Windows.Forms; $f = New-Object System.Windows.Forms.FolderBrowserDialog; $f.Description = 'Select a repository folder'; if ($f.ShowDialog() -eq 'OK') { $f.SelectedPath } else { exit 1 }\""};class f{deps;constructor(a={}){this.deps={...d,...a}}getCommand(){return e[this.deps.platform]??null}pickFolder(){let a=this.getCommand();if(!a)throw Error(`Unsupported platform: ${this.deps.platform}`);try{let b=this.deps.exec(a,{encoding:"utf-8",timeout:6e4}).trim();return b.length>0?b:null}catch(a){var b;if("object"==typeof(b=a)&&null!==b&&"status"in b&&1===a.status)return null;throw a}}}var g=a.i(12581);async function h(){let a=new f;try{return{path:a.pickFolder()}}catch(a){return{path:null,error:a instanceof Error?a.message:"Failed to open folder dialog"}}}(0,g.ensureServerEntryExports)([h]),(0,b.registerServerReference)(h,"001989f77f6f1619ed39454930de7d9302a7cb73df",null),a.s(["pickFolder",()=>h],12513);var i=a.i(96380);class j extends Error{constructor(a,b){super(a),this.name="GitHubAuthError",Object.setPrototypeOf(this,new.target.prototype),b&&(this.cause=b)}}class k extends Error{constructor(a,b){super(a),this.name="GitHubCloneError",Object.setPrototypeOf(this,new.target.prototype),b&&(this.cause=b)}}class l extends Error{constructor(a,b){super(a),this.name="GitHubUrlParseError",Object.setPrototypeOf(this,new.target.prototype),b&&(this.cause=b)}}async function m(a){try{let b=(0,i.resolve)("ListGitHubRepositoriesUseCase");return{repos:await b.execute(a)}}catch(a){if(a instanceof j)return{error:"GitHub CLI is not authenticated. Run `gh auth login` to sign in."};return{error:a instanceof Error?a.message:"Failed to list repositories"}}}async function n(a){let{url:b,dest:c}=a;if(!b?.trim())return{error:"GitHub URL is required"};try{let a=(0,i.resolve)("ImportGitHubRepositoryUseCase");return{repository:await a.execute({url:b,dest:c})}}catch(a){if(a instanceof j)return{error:"GitHub CLI is not authenticated. Run `gh auth login` to sign in."};if(a instanceof l)return{error:`Invalid GitHub URL: ${a.message}`};if(a instanceof k)return{error:`Clone failed: ${a.message}`};return{error:a instanceof Error?a.message:"Failed to import repository"}}}(0,g.ensureServerEntryExports)([m]),(0,b.registerServerReference)(m,"4019719528b914aad8ec7781d767c3292a08c8cf14",null),a.s(["listGitHubRepositories",()=>m],73101),(0,g.ensureServerEntryExports)([n]),(0,b.registerServerReference)(n,"402a83ca273e9c596679dccfd660ce97d38ba71d9c",null),a.s(["importGitHubRepository",()=>n],65324)},33841,29918,46646,68670,85321,a=>{"use strict";var b=a.i(92658),c=a.i(2157),d=a.i(96380);let e=()=>void 0;function f(a){let b=!!process.env.DEBUG;return{info:b?(...b)=>console.info(a,...b):e,debug:b?(...b)=>console.debug(a,...b):e,warn:(...b)=>console.warn(a,...b),error:(...b)=>console.error(a,...b)}}var g=a.i(66680),h=a.i(50227),i=a.i(32278);function j(a,b){let c=a.replace(/\\/g,"/"),d=(0,g.createHash)("sha256").update(c).digest("hex").slice(0,16),e=b.replace(/\//g,"-");return(0,h.join)((0,i.getShepHomeDir)(),"repos",d,"wt",e).replace(/\\/g,"/")}a.s(["computeWorktreePath",()=>j],29918);var k=a.i(81719),l=a.i(12581);let m=f("[deployFeature]");async function n(a){if(m.info(`called — featureId="${a}"`),!a?.trim())return m.warn("rejected — featureId is empty"),{success:!1,error:"featureId is required"};try{let b=(0,d.resolve)("IFeatureRepository"),e=await b.findById(a);if(!e)return m.warn(`feature not found in repository: "${a}"`),{success:!1,error:`Feature not found: ${a}`};m.info(`feature found — repositoryPath="${e.repositoryPath}", branch="${e.branch}"`);let f=j(e.repositoryPath,e.branch);if(m.info(`computed worktreePath="${f}"`),!(0,c.existsSync)(f))return m.warn(`worktree path does not exist on disk: "${f}"`),{success:!1,error:`Worktree path does not exist: ${f}`};return m.info("worktree path exists, calling deploymentService.start()"),(0,d.resolve)("IDeploymentService").start(a,f,"feature"),m.info("start() returned successfully — state=Booting"),{success:!0,state:k.DeploymentState.Booting}}catch(b){let a=b instanceof Error?b.message:"Failed to deploy feature";return m.error(`error: ${a}`,b),{success:!1,error:a}}}(0,l.ensureServerEntryExports)([n]),(0,b.registerServerReference)(n,"40613aa7fe9cd17cbd2f178547f9ea1b8d11e82975",null),a.s(["deployFeature",()=>n],33841);let o=f("[deployRepository]");async function p(a){if(o.info(`called — repositoryPath="${a}"`),!a||!(0,h.isAbsolute)(a))return o.warn("rejected — not an absolute path"),{success:!1,error:"repositoryPath must be an absolute path"};try{if(!(0,c.existsSync)(a))return o.warn(`directory does not exist: "${a}"`),{success:!1,error:`Directory does not exist: ${a}`};return o.info("directory exists, calling deploymentService.start()"),(0,d.resolve)("IDeploymentService").start(a,a,"repository"),o.info("start() returned successfully — state=Booting"),{success:!0,state:k.DeploymentState.Booting}}catch(b){let a=b instanceof Error?b.message:"Failed to deploy repository";return o.error(`error: ${a}`,b),{success:!1,error:a}}}async function q(a){if(!a?.trim())return{success:!1,error:"targetId is required"};try{let b=(0,d.resolve)("IDeploymentService");return await b.stop(a),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to stop deployment"}}}async function r(a){return a?.trim()?(0,d.resolve)("IDeploymentService").getStatus(a):null}(0,l.ensureServerEntryExports)([p]),(0,b.registerServerReference)(p,"40fecf2571c49ed237ef2da51f33a86d81814a73b1",null),a.s(["deployRepository",()=>p],46646),(0,l.ensureServerEntryExports)([q]),(0,b.registerServerReference)(q,"40dc2ca0b380cff9f41824177c52efc14e49ab3039",null),a.s(["stopDeployment",()=>q],68670),(0,l.ensureServerEntryExports)([r]),(0,b.registerServerReference)(r,"402544627ed63a1ebfd1d3c04cb06b3648ea14d7be",null),a.s(["getDeploymentStatus",()=>r],85321)},94691,a=>{"use strict";var b=a.i(92658),c=a.i(96380);async function d(a){return a?.trim()?(0,c.resolve)("IDeploymentService").getLogs(a):null}(0,a.i(12581).ensureServerEntryExports)([d]),(0,b.registerServerReference)(d,"40071075a81485557c8301dd1e29dbf3bf20d28fb6",null),a.s(["getDeploymentLogs",()=>d])},57764,(a,b,c)=>{b.exports=a.x("node:url",()=>require("node:url"))},23504,27900,a=>{"use strict";var b=a.i(92658),c=a.i(96380);let d={"claude-opus-4-6":{displayName:"Opus 4.6",description:"Most capable, complex tasks"},"claude-sonnet-4-6":{displayName:"Sonnet 4.6",description:"Fast & balanced"},"claude-haiku-4-5":{displayName:"Haiku 4.5",description:"Lightweight & quick"},"gemini-3.1-pro":{displayName:"Gemini 3.1 Pro",description:"Advanced reasoning"},"gemini-3-flash":{displayName:"Gemini 3 Flash",description:"Ultra-fast responses"},"gemini-2.5-pro":{displayName:"Gemini 2.5 Pro",description:"Reliable workhorse"},"gemini-2.5-flash":{displayName:"Gemini 2.5 Flash",description:"Speed-optimized"},"gpt-5.4-high":{displayName:"GPT-5.4",description:"Latest reasoning model"},"gpt-5.2":{displayName:"GPT-5.2",description:"Flagship model"},"gpt-5.3-codex":{displayName:"GPT-5.3 Codex",description:"Code specialist"},"composer-1.5":{displayName:"Composer 1.5",description:"Multi-file editing"},"grok-code":{displayName:"Grok Code",description:"xAI code model"},"gpt-8":{displayName:"GPT-8",description:"Writes code before you think it"},"opus-7":{displayName:"Opus 7",description:"Achieved consciousness, ships on time"}},e={displayName:"",description:""};function f(a){let b=d[a];return b||{...e,displayName:a.replace(/^claude-/,"").replace(/^gemini-/,"Gemini ").replace(/^gpt-/,"GPT-").replace(/-/g," ").replace(/\b\w/g,a=>a.toUpperCase())}}var g=a.i(12581);let h={"claude-code":"Claude Code",cursor:"Cursor CLI","gemini-cli":"Gemini CLI",dev:"Demo"},i={"claude-code":0,cursor:1,"gemini-cli":2,dev:99};async function j(){try{let a=(0,c.resolve)("IAgentExecutorFactory");return a.getSupportedAgents().map(b=>({agentType:b,label:h[b]??b,models:a.getSupportedModels(b).map(a=>({id:a,...f(a)}))})).map(a=>"dev"===a.agentType&&0===a.models.length?{...a,models:[{id:"gpt-8",...f("gpt-8")},{id:"opus-7",...f("opus-7")}]}:a).filter(a=>a.models.length>0).sort((a,b)=>(i[a.agentType]??50)-(i[b.agentType]??50))}catch{return[]}}(0,g.ensureServerEntryExports)([j]),(0,b.registerServerReference)(j,"00e0a4fb8a4912837de20d66d304c3bb8cae0c57d3",null),a.s(["getAllAgentModels",()=>j],23504);var k=a.i(33244);async function l(a,b){if(!a.trim())return{ok:!1,error:"agent type is required"};try{let d=(0,c.resolve)("CompleteWebOnboardingUseCase"),e=await d.execute({agentType:a.trim(),model:b});return(0,k.resetSettings)(),(0,k.initializeSettings)(e),{ok:!0}}catch(a){return{ok:!1,error:a instanceof Error?a.message:"Failed to update agent and model"}}}(0,g.ensureServerEntryExports)([l]),(0,b.registerServerReference)(l,"6002de584c13818935416f4240136510fa33874179",null),a.s(["updateAgentAndModel",()=>l],27900)},84095,56799,80496,41872,9959,50845,26604,54723,18942,49560,39353,29207,a=>{"use strict";var b=a.i(92658),c=a.i(50227),d=a.i(33244),e=a.i(96380),f=a.i(12581);async function g(a){let{repositoryPath:b,branch:f}=a;if(!b||!(0,c.isAbsolute)(b))return{success:!1,error:"repositoryPath must be an absolute path"};let g=(0,d.getSettings)().environment.defaultEditor,h=(0,e.resolve)("LaunchIdeUseCase"),i=await h.execute({editorId:g,repositoryPath:b,branch:f,checkAvailability:!0});return i.ok?{success:!0,editor:i.editorName,path:i.worktreePath}:{success:!1,error:i.message}}(0,f.ensureServerEntryExports)([g]),(0,b.registerServerReference)(g,"401158c59b59dadafd6007b2bcf7f93052b28f6743",null),a.s(["openIde",()=>g],84095);var h=a.i(2157),i=a.i(60526),j=a.i(74533),k=a.i(29918),l=a.i(57764);let m={get url(){return`file://${a.P("packages/core/src/infrastructure/services/tool-installer/tool-metadata.ts")}`}},n=["name","summary","description","tags","binary","packageManager","commands","timeout","documentationUrl","verifyCommand"],o=function(){let a,b=(0,c.join)((0,l.fileURLToPath)(m.url),"..","tools"),d={};try{a=(0,h.readdirSync)(b).filter(a=>a.endsWith(".json"))}catch{return d}for(let e of a){let a=(0,c.basename)(e,".json");try{let f=(0,h.readFileSync)((0,c.join)(b,e),"utf-8"),g=JSON.parse(f);if(n.filter(a=>!(a in g)).length>0)continue;d[a]=g}catch{}}return d}(),p={darwin:{cmd:"open",args:a=>["-a","Terminal",a]},linux:{cmd:"x-terminal-emulator",args:a=>[`--working-directory=${a}`]},win32:{cmd:"cmd.exe",args:a=>["/c","start","powershell","-NoExit","-Command",`Set-Location "${a}"`]}};async function q(a){let{repositoryPath:b,branch:e}=a;if(!b||!(0,c.isAbsolute)(b))return{success:!1,error:"repositoryPath must be an absolute path"};try{let a=(0,d.getSettings)(),c=a.environment.shellPreference,g=a.environment.terminalPreference??"system",l=e?(0,k.computeWorktreePath)(b,e):b;if(!(0,h.existsSync)(l))return{success:!1,error:`Path does not exist: ${l}`};if("system"!==g){let a=Object.entries(o).filter(([,a])=>a.tags.includes("terminal")&&null!=a.openDirectory).find(([a])=>a===g);if(a){let[,b]=a;if(b.openDirectory){var f;let a=(f=b.openDirectory,"string"==typeof f?f:f[(0,i.platform)()]??Object.values(f)[0]);if(a.includes("{dir}")){let d=a.replace("{dir}",l);if(b.spawnOptions?.shell===!0){let a=(0,j.spawn)(d,[],{detached:!0,stdio:"ignore",shell:!0});a.on("error",()=>void 0),a.unref()}else{let[a,...b]=d.split(/\s+/),c=(0,j.spawn)(a,b,{detached:!0,stdio:"ignore"});c.on("error",()=>void 0),c.unref()}return{success:!0,path:l,shell:c}}}}}let m=p[(0,i.platform)()];if(!m)return{success:!1,error:`Unsupported platform: ${(0,i.platform)()}`};let n=(0,j.spawn)(m.cmd,m.args(l),{detached:!0,stdio:"ignore"});return n.on("error",()=>void 0),n.unref(),{success:!0,path:l,shell:c}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to open shell"}}}(0,f.ensureServerEntryExports)([q]),(0,b.registerServerReference)(q,"4023892bae2788e9ea1965df2ee531894f11164216",null),a.s(["openShell",()=>q],56799);let r={darwin:{cmd:"open",args:a=>[a]},linux:{cmd:"xdg-open",args:a=>[a]},win32:{cmd:"explorer",args:a=>[a]}};async function s(a){if(!a||!(0,c.isAbsolute)(a))return{success:!1,error:"repositoryPath must be an absolute path"};try{if(!(0,h.existsSync)(a))return{success:!1,error:"Directory not found"};let b=r[(0,i.platform)()];if(!b)return{success:!1,error:`Unsupported platform: ${(0,i.platform)()}`};let c=(0,j.spawn)(b.cmd,b.args(a),{detached:!0,stdio:"ignore"});return c.on("error",()=>void 0),c.unref(),{success:!0,path:a}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to open folder"}}}async function t(){try{return(0,d.getSettings)().onboardingComplete}catch{return!1}}(0,f.ensureServerEntryExports)([s]),(0,b.registerServerReference)(s,"40010cba5632be2424e4a32829e7456fb667e66df8",null),a.s(["openFolder",()=>s],80496),(0,f.ensureServerEntryExports)([t]),(0,b.registerServerReference)(t,"001ab63ed63ebe18ed2a02b43e9da5c071532e1dc8",null),a.s(["isAgentSetupComplete",()=>t],41872);var u=a.i(76437);let v={"claude-code":"Claude Code",cursor:"Cursor Agent","gemini-cli":"Gemini CLI",aider:"Aider",continue:"Continue",dev:"Demo"},w={"claude-code":"claude-code",cursor:"cursor-cli","gemini-cli":"gemini-cli"},x={"claude-code":"claude",cursor:"agent","gemini-cli":"gemini"};async function y(){var a;let b;try{b=(0,d.getSettings)().agent.type}catch{return{agentType:"unknown",installed:!1,authenticated:!1,label:"Unknown",binaryName:null,authCommand:null}}let f=v[b]??b,g=w[b]??null,k=x[b]??null;if(!g)return{agentType:b,installed:!0,authenticated:!0,label:f,binaryName:null,authCommand:null};let l=!1;try{let a=(0,e.resolve)("ListToolsUseCase"),b=(await a.execute()).find(a=>a.id===g);l=b?.status.status==="available"}catch{l=!1}if(!l)return{agentType:b,installed:!1,authenticated:!1,label:f,binaryName:k,authCommand:k?`Install ${f} first`:null};if(!function(a){let b=(0,i.homedir)();switch(a){case"claude-code":{if(process.env.ANTHROPIC_API_KEY||process.env.CLAUDE_CODE_USE_BEDROCK||process.env.CLAUDE_CODE_USE_VERTEX||process.env.CLAUDE_CODE_OAUTH_TOKEN)return!0;let a=(0,c.join)(b,".claude",".credentials.json");return(0,h.existsSync)(a)}case"cursor":{if(process.env.CURSOR_API_KEY)return!0;let a=(0,c.join)(b,".cursor");return(0,h.existsSync)(a)}case"gemini-cli":{if(process.env.GEMINI_API_KEY||process.env.GOOGLE_API_KEY||process.env.GOOGLE_APPLICATION_CREDENTIALS)return!0;let a=(0,c.join)(b,".gemini","google_accounts.json");return(0,h.existsSync)(a)}default:return!0}}(b))return{agentType:b,installed:!0,authenticated:!1,label:f,binaryName:k,authCommand:k};let m=!0;return k&&(m=await (a=b,new Promise(b=>{let c,d;switch(a){case"claude-code":c=k,d=["auth","status"];break;case"cursor":c=k,d=["status"];break;default:b(!0);return}try{let a=u.IS_WINDOWS?{timeout:5e3,windowsHide:!0}:{timeout:5e3};(0,j.execFile)(c,d,a,a=>{b(!a)})}catch{b(!1)}}))),{agentType:b,installed:!0,authenticated:m,label:f,binaryName:k,authCommand:m?null:k}}async function z(a,b,c,d){if(!a?.trim())return{error:"id is required"};try{let f=(0,e.resolve)("DeleteFeatureUseCase"),g={};return void 0!==b&&(g.cleanup=b),void 0!==c&&(g.cascadeDelete=c),void 0!==d&&(g.closePr=d),{feature:Object.keys(g).length>0?await f.execute(a,g):await f.execute(a)}}catch(a){return{error:a instanceof Error?a.message:"Failed to delete feature"}}}async function A(a){if(!a.trim())return{resumed:!1,error:"Feature id is required"};try{let b=(0,e.resolve)("ResumeFeatureUseCase");return await b.execute(a),{resumed:!0}}catch(a){return{resumed:!1,error:a instanceof Error?a.message:"Failed to resume feature"}}}async function B(a){if(!a.trim())return{started:!1,error:"Feature id is required"};try{let b=(0,e.resolve)("StartFeatureUseCase");return await b.execute(a),{started:!0}}catch(a){return{started:!1,error:a instanceof Error?a.message:"Failed to start feature"}}}async function C(a){if(!a.trim())return{stopped:!1,error:"Feature id is required"};try{let b=(0,e.resolve)("IAgentRunRepository"),c=(await b.list()).find(b=>b.featureId===a&&"completed"!==b.status&&"failed"!==b.status&&"interrupted"!==b.status&&"cancelled"!==b.status);if(!c)return{stopped:!1,error:"No active agent run found for this feature"};let d=(0,e.resolve)("StopAgentRunUseCase"),f=await d.execute(c.id);if(!f.stopped)return{stopped:!1,error:f.reason};return{stopped:!0}}catch(a){return{stopped:!1,error:a instanceof Error?a.message:"Failed to stop agent"}}}async function D(a){let{path:b,name:c}=a;if(!b?.trim())return{error:"path is required"};try{let a=(0,e.resolve)("AddRepositoryUseCase");return{repository:await a.execute({path:b,name:c})}}catch(a){return{error:a instanceof Error?a.message:"Failed to add repository"}}}async function E(a){if(!a?.trim())return{success:!1,error:"id is required"};try{let b=(0,e.resolve)("DeleteRepositoryUseCase");return await b.execute(a),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to delete repository"}}}async function F(a){let b=(0,e.resolve)("IFeatureRepository"),c=await b.findById(a);return c?{name:c.name,description:c.description}:null}(0,f.ensureServerEntryExports)([y]),(0,b.registerServerReference)(y,"00899330109aad6789ce17f375887ce0d3b43e7dfd",null),a.s(["checkAgentAuth",()=>y],9959),(0,f.ensureServerEntryExports)([z]),(0,b.registerServerReference)(z,"78ee04f5fc932d0ac4b252e0d0243ecc1343495e19",null),a.s(["deleteFeature",()=>z],50845),(0,f.ensureServerEntryExports)([A]),(0,b.registerServerReference)(A,"40f3fc1e570708d9c4c0e5a039cf6576ae6a08b58a",null),a.s(["resumeFeature",()=>A],26604),(0,f.ensureServerEntryExports)([B]),(0,b.registerServerReference)(B,"404dfce5f5af065f4c00f4f15173763a0340bad94f",null),a.s(["startFeature",()=>B],54723),(0,f.ensureServerEntryExports)([C]),(0,b.registerServerReference)(C,"40ac1f49d31b49d5b5c4deea3e8b0af692a928457d",null),a.s(["stopFeature",()=>C],18942),(0,f.ensureServerEntryExports)([D]),(0,b.registerServerReference)(D,"40e6e6a2c63d2865cad728e5fbc533aec5f5d1a91d",null),a.s(["addRepository",()=>D],49560),(0,f.ensureServerEntryExports)([E]),(0,b.registerServerReference)(E,"40b2e9e0d96442353753cb0263386a6e438bd54293",null),a.s(["deleteRepository",()=>E],39353),(0,f.ensureServerEntryExports)([F]),(0,b.registerServerReference)(F,"40d1174464ccb5d7b13f5a05c4b41c39ab1d4b3dff",null),a.s(["getFeatureMetadata",()=>F],29207)}];
|
|
3
|
-
|
|
4
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__99ab2519._.js.map
|