@shepai/cli 1.77.2 → 1.78.0
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/AgentRun.yaml +3 -0
- package/apis/json-schema/ModelConfiguration.yaml +5 -20
- package/dist/packages/core/src/application/ports/output/agents/agent-executor-factory.interface.d.ts +8 -0
- package/dist/packages/core/src/application/ports/output/agents/agent-executor-factory.interface.d.ts.map +1 -1
- package/dist/packages/core/src/application/ports/output/agents/feature-agent-process.interface.d.ts +1 -0
- package/dist/packages/core/src/application/ports/output/agents/feature-agent-process.interface.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/agents/approve-agent-run.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/agents/approve-agent-run.use-case.js +1 -0
- package/dist/packages/core/src/application/use-cases/features/create/create-feature.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/features/create/create-feature.use-case.js +9 -2
- package/dist/packages/core/src/application/use-cases/features/create/types.d.ts +4 -0
- package/dist/packages/core/src/application/use-cases/features/create/types.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/features/resume-feature.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/features/resume-feature.use-case.js +2 -0
- package/dist/packages/core/src/domain/factories/settings-defaults.factory.d.ts +3 -3
- 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 +5 -8
- package/dist/packages/core/src/domain/generated/output.d.ts +7 -15
- package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/agent-run.mapper.d.ts +1 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/agent-run.mapper.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/agent-run.mapper.js +2 -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 +8 -10
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations.js +22 -3
- package/dist/packages/core/src/infrastructure/repositories/agent-run.repository.js +2 -2
- 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-executor-factory.service.d.ts +8 -0
- package/dist/packages/core/src/infrastructure/services/agents/common/agent-executor-factory.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/common/agent-executor-factory.service.js +37 -0
- package/dist/packages/core/src/infrastructure/services/agents/common/executors/claude-code-executor.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/common/executors/claude-code-executor.service.js +3 -2
- package/dist/packages/core/src/infrastructure/services/agents/common/executors/cursor-executor.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/common/executors/cursor-executor.service.js +3 -2
- package/dist/packages/core/src/infrastructure/services/agents/common/executors/gemini-cli-executor.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/common/executors/gemini-cli-executor.service.js +3 -2
- package/dist/packages/core/src/infrastructure/services/agents/common/executors/mock-executor-factory.service.d.ts +1 -0
- package/dist/packages/core/src/infrastructure/services/agents/common/executors/mock-executor-factory.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/common/executors/mock-executor-factory.service.js +3 -0
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/fast-feature-agent-graph.d.ts +5 -0
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/fast-feature-agent-graph.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-graph.d.ts +17 -0
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-graph.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-process.service.d.ts +1 -0
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-process.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-process.service.js +3 -0
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.d.ts +1 -0
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.js +35 -8
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/log-context.d.ts +25 -0
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/log-context.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/log-context.js +34 -0
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.d.ts +1 -0
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.js +6 -2
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.d.ts +1 -0
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.js +4 -0
- package/dist/packages/core/src/infrastructure/services/settings.service.d.ts +1 -1
- package/dist/packages/core/src/infrastructure/services/settings.service.js +1 -1
- package/dist/src/presentation/cli/commands/feat/new.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/feat/new.command.js +2 -0
- package/dist/src/presentation/cli/commands/feat/show.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/feat/show.command.js +13 -0
- package/dist/src/presentation/cli/commands/settings/index.d.ts +1 -0
- package/dist/src/presentation/cli/commands/settings/index.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/settings/index.js +4 -1
- package/dist/src/presentation/cli/commands/settings/model.command.d.ts +17 -0
- package/dist/src/presentation/cli/commands/settings/model.command.d.ts.map +1 -0
- package/dist/src/presentation/cli/commands/settings/model.command.js +62 -0
- package/dist/src/presentation/cli/ui/tables.d.ts.map +1 -1
- package/dist/src/presentation/cli/ui/tables.js +6 -23
- package/dist/src/presentation/web/app/(dashboard)/@drawer/create/page.d.ts.map +1 -1
- package/dist/src/presentation/web/app/(dashboard)/@drawer/create/page.js +3 -1
- package/dist/src/presentation/web/app/actions/create-feature.d.ts +4 -0
- package/dist/src/presentation/web/app/actions/create-feature.d.ts.map +1 -1
- package/dist/src/presentation/web/app/actions/create-feature.js +5 -1
- package/dist/src/presentation/web/app/actions/get-all-agent-models.d.ts +12 -0
- package/dist/src/presentation/web/app/actions/get-all-agent-models.d.ts.map +1 -0
- package/dist/src/presentation/web/app/actions/get-all-agent-models.js +49 -0
- package/dist/src/presentation/web/app/actions/get-supported-models.d.ts +11 -0
- package/dist/src/presentation/web/app/actions/get-supported-models.d.ts.map +1 -0
- package/dist/src/presentation/web/app/actions/get-supported-models.js +24 -0
- package/dist/src/presentation/web/app/actions/update-agent-and-model.d.ts +5 -0
- package/dist/src/presentation/web/app/actions/update-agent-and-model.d.ts.map +1 -0
- package/dist/src/presentation/web/app/actions/update-agent-and-model.js +28 -0
- package/dist/src/presentation/web/app/actions/update-model.d.ts +15 -0
- package/dist/src/presentation/web/app/actions/update-model.d.ts.map +1 -0
- package/dist/src/presentation/web/app/actions/update-model.js +35 -0
- package/dist/src/presentation/web/app/build-feature-node-data.d.ts.map +1 -1
- package/dist/src/presentation/web/app/build-feature-node-data.js +1 -0
- package/dist/src/presentation/web/app/build-graph-nodes.js +1 -0
- package/dist/src/presentation/web/components/common/control-center-drawer/create-drawer-client.d.ts +3 -1
- package/dist/src/presentation/web/components/common/control-center-drawer/create-drawer-client.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/control-center-drawer/create-drawer-client.js +2 -2
- package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts +9 -1
- package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.js +29 -4
- package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.stories.d.ts +5 -0
- package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.stories.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.stories.js +32 -3
- package/dist/src/presentation/web/components/common/feature-list-item/feature-list-item.d.ts +3 -1
- package/dist/src/presentation/web/components/common/feature-list-item/feature-list-item.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-list-item/feature-list-item.js +6 -2
- package/dist/src/presentation/web/components/common/feature-list-item/feature-list-item.stories.d.ts +1 -0
- package/dist/src/presentation/web/components/common/feature-list-item/feature-list-item.stories.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-list-item/feature-list-item.stories.js +15 -0
- package/dist/src/presentation/web/components/common/feature-node/agent-type-icons.d.ts +2 -0
- package/dist/src/presentation/web/components/common/feature-node/agent-type-icons.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-node/agent-type-icons.js +11 -2
- package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.d.ts +2 -0
- package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-node/feature-node.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-node/feature-node.js +9 -6
- package/dist/src/presentation/web/components/common/feature-node/feature-node.stories.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-node/feature-node.stories.js +19 -0
- package/dist/src/presentation/web/components/features/control-center/control-center-inner.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/control-center/control-center-inner.js +2 -0
- package/dist/src/presentation/web/components/features/settings/AgentModelPicker/AgentModelPicker.stories.d.ts +12 -0
- package/dist/src/presentation/web/components/features/settings/AgentModelPicker/AgentModelPicker.stories.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/settings/AgentModelPicker/AgentModelPicker.stories.js +59 -0
- package/dist/src/presentation/web/components/features/settings/AgentModelPicker/index.d.ts +11 -0
- package/dist/src/presentation/web/components/features/settings/AgentModelPicker/index.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/settings/AgentModelPicker/index.js +103 -0
- package/dist/src/presentation/web/components/features/settings/ModelPicker/ModelPicker.stories.d.ts +24 -0
- package/dist/src/presentation/web/components/features/settings/ModelPicker/ModelPicker.stories.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/settings/ModelPicker/ModelPicker.stories.js +53 -0
- package/dist/src/presentation/web/components/features/settings/ModelPicker/index.d.ts +18 -0
- package/dist/src/presentation/web/components/features/settings/ModelPicker/index.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/settings/ModelPicker/index.js +84 -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 +7 -21
- package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.d.ts +2 -0
- package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.d.ts.map +1 -1
- package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.js +1 -1
- 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 +28 -3
- package/dist/src/presentation/web/components/ui/checkbox-group-item.js +1 -1
- package/dist/src/presentation/web/components/ui/checkbox-group.js +1 -1
- package/dist/src/presentation/web/components/ui/command.d.ts +19 -0
- package/dist/src/presentation/web/components/ui/command.d.ts.map +1 -0
- package/dist/src/presentation/web/components/ui/command.js +26 -0
- package/dist/src/presentation/web/components/ui/switch.js +1 -1
- package/dist/src/presentation/web/hooks/sidebar-features-context.d.ts +2 -0
- package/dist/src/presentation/web/hooks/sidebar-features-context.d.ts.map +1 -1
- package/dist/src/presentation/web/lib/model-metadata.d.ts +6 -0
- package/dist/src/presentation/web/lib/model-metadata.d.ts.map +1 -0
- package/dist/src/presentation/web/lib/model-metadata.js +41 -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 +4 -4
- package/web/.next/cache/.previewinfo +1 -1
- package/web/.next/cache/.rscinfo +1 -1
- package/web/.next/cache/.tsbuildinfo +1 -1
- package/web/.next/cache/config.json +3 -3
- package/web/.next/fallback-build-manifest.json +2 -2
- package/web/.next/prerender-manifest.json +3 -3
- package/web/.next/required-server-files.js +1 -1
- package/web/.next/required-server-files.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/create/page/build-manifest.json +2 -2
- package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +62 -32
- package/web/.next/server/app/(dashboard)/@drawer/create/page.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/build-manifest.json +2 -2
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +19 -19
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/build-manifest.json +2 -2
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +14 -14
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/create/page/build-manifest.json +2 -2
- package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +62 -32
- package/web/.next/server/app/(dashboard)/create/page.js +1 -1
- package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page/build-manifest.json +2 -2
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +19 -19
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/page/build-manifest.json +2 -2
- package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +14 -14
- package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/build-manifest.json +2 -2
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +14 -14
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/_global-error/page/build-manifest.json +2 -2
- package/web/.next/server/app/_global-error.html +2 -2
- package/web/.next/server/app/_global-error.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/web/.next/server/app/_not-found/page/build-manifest.json +2 -2
- package/web/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
- package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/settings/page/build-manifest.json +2 -2
- package/web/.next/server/app/settings/page/server-reference-manifest.json +36 -6
- package/web/.next/server/app/settings/page.js +2 -2
- 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/build-manifest.json +2 -2
- package/web/.next/server/app/skills/page/server-reference-manifest.json +6 -6
- package/web/.next/server/app/skills/page.js.nft.json +1 -1
- package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/tools/page/build-manifest.json +2 -2
- package/web/.next/server/app/tools/page/server-reference-manifest.json +6 -6
- package/web/.next/server/app/tools/page.js.nft.json +1 -1
- package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/version/page/build-manifest.json +2 -2
- package/web/.next/server/app/version/page/server-reference-manifest.json +1 -1
- package/web/.next/server/app/version/page.js.nft.json +1 -1
- package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
- package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.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/7f428_lucide-react_dist_esm_icons_c7cfe351._.js +3 -0
- package/web/.next/server/chunks/ssr/7f428_lucide-react_dist_esm_icons_c7cfe351._.js.map +1 -0
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_da7eef33.js +1 -1
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_da7eef33.js.map +1 -1
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_0a9251aa.js +1 -1
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_0a9251aa.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__11033878._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__11033878._.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]__4be9a9bb._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__5d87af2e._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__5d87af2e._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__bff2deea._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__bff2deea._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c3c963c6._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c3c963c6._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c9777776._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c9777776._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__d076a90b._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__d076a90b._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__f0d8d054._.js +2 -2
- package/web/.next/server/chunks/ssr/[root-of-the-server]__f0d8d054._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__fdc75809._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__fdc75809._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_0bd0fafb._.js +9 -0
- package/web/.next/server/chunks/ssr/_0bd0fafb._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_0e9d6bf7._.js +1 -1
- package/web/.next/server/chunks/ssr/_0e9d6bf7._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_14fa79b2._.js +3 -0
- package/web/.next/server/chunks/ssr/_14fa79b2._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_61351ed3._.js +1 -1
- package/web/.next/server/chunks/ssr/_61351ed3._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_6e08ce21._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_8400c8bb._.js +1 -1
- package/web/.next/server/chunks/ssr/_8400c8bb._.js.map +1 -1
- package/web/.next/{standalone/src/presentation/web/.next/server/chunks/ssr/_6645f218._.js → server/chunks/ssr/_8dacd1e7._.js} +2 -2
- package/web/.next/server/chunks/ssr/{_6645f218._.js.map → _8dacd1e7._.js.map} +1 -1
- package/web/.next/{standalone/src/presentation/web/.next/server/chunks/ssr/_8a93b402._.js → server/chunks/ssr/_91588d08._.js} +2 -2
- package/web/.next/server/chunks/ssr/{_8a93b402._.js.map → _91588d08._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/_9ac70f88._.js +5 -0
- package/web/.next/server/chunks/ssr/_9ac70f88._.js.map +1 -0
- 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/{_88c4dab8._.js → _b5fc318a._.js} +2 -2
- package/web/.next/server/chunks/ssr/_b5fc318a._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_cbffd0e9._.js +3 -0
- package/web/.next/server/chunks/ssr/_cbffd0e9._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_d4b20e29._.js +1 -1
- package/web/.next/server/chunks/ssr/_d4b20e29._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_ed356507._.js +3 -0
- package/web/.next/server/chunks/ssr/{_5428b384._.js.map → _ed356507._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/_ef9046a1._.js +3 -0
- package/web/.next/server/chunks/ssr/_ef9046a1._.js.map +1 -0
- 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/node_modules__pnpm_1fcecd3a._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules__pnpm_1fcecd3a._.js.map +1 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_30d7eeda._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_30d7eeda._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_565a14f8._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_565a14f8._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_021a05f2.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_021a05f2.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1fa8042e.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1fa8042e.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_24684200.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_24684200.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_app_(dashboard)_get-graph-data_ts_b018483e._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_app_(dashboard)_get-graph-data_ts_b018483e._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_c4348b8a._.js +6 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_c4348b8a._.js.map +1 -0
- 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_e4510d10._.js +6 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_e4510d10._.js.map +1 -0
- package/web/.next/server/middleware-build-manifest.js +2 -2
- 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 +117 -59
- package/web/.next/standalone/src/presentation/web/.next/BUILD_ID +1 -1
- package/web/.next/standalone/src/presentation/web/.next/build-manifest.json +4 -4
- package/web/.next/standalone/src/presentation/web/.next/prerender-manifest.json +3 -3
- package/web/.next/standalone/src/presentation/web/.next/required-server-files.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/create/page/build-manifest.json +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +62 -32
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/create/page.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/build-manifest.json +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +19 -19
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/build-manifest.json +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +14 -14
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/create/page/build-manifest.json +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +62 -32
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/create/page.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/feature/[featureId]/page/build-manifest.json +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +19 -19
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/page/build-manifest.json +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +14 -14
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/build-manifest.json +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +14 -14
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error/page/build-manifest.json +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.html +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.rsc +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_not-found/page/build-manifest.json +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/settings/page/build-manifest.json +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/settings/page/server-reference-manifest.json +36 -6
- package/web/.next/standalone/src/presentation/web/.next/server/app/settings/page.js +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/settings/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/skills/page/build-manifest.json +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/skills/page/server-reference-manifest.json +6 -6
- package/web/.next/standalone/src/presentation/web/.next/server/app/skills/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/tools/page/build-manifest.json +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/tools/page/server-reference-manifest.json +6 -6
- package/web/.next/standalone/src/presentation/web/.next/server/app/tools/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/version/page/build-manifest.json +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/version/page/server-reference-manifest.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/version/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/7f428_lucide-react_dist_esm_icons_c7cfe351._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_da7eef33.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_0a9251aa.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__11033878._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__4be9a9bb._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__5d87af2e._.js +4 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__bff2deea._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__c3c963c6._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__c9777776._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__d076a90b._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__f0d8d054._.js +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__fdc75809._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_0bd0fafb._.js +9 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_0e9d6bf7._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_14fa79b2._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_61351ed3._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_8400c8bb._.js +1 -1
- package/web/.next/{server/chunks/ssr/_6645f218._.js → standalone/src/presentation/web/.next/server/chunks/ssr/_8dacd1e7._.js} +2 -2
- package/web/.next/{server/chunks/ssr/_8a93b402._.js → standalone/src/presentation/web/.next/server/chunks/ssr/_91588d08._.js} +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_9ac70f88._.js +5 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_a37f5f18._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/{_88c4dab8._.js → _b5fc318a._.js} +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_cbffd0e9._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_d4b20e29._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_ed356507._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_ef9046a1._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/node_modules__pnpm_1fcecd3a._.js +3 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_30d7eeda._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_565a14f8._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_021a05f2.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1fa8042e.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_24684200.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_app_(dashboard)_get-graph-data_ts_b018483e._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_c4348b8a._.js +6 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_e4510d10._.js +6 -0
- package/web/.next/standalone/src/presentation/web/.next/server/middleware-build-manifest.js +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/pages/500.html +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/server-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/server-reference-manifest.json +117 -59
- package/web/.next/standalone/src/presentation/web/app/(dashboard)/@drawer/create/page.tsx +4 -0
- package/web/.next/standalone/src/presentation/web/app/actions/create-feature.ts +20 -2
- package/web/.next/standalone/src/presentation/web/app/actions/get-all-agent-models.ts +65 -0
- package/web/.next/standalone/src/presentation/web/app/actions/get-supported-models.ts +26 -0
- package/web/.next/standalone/src/presentation/web/app/actions/update-agent-and-model.ts +41 -0
- package/web/.next/standalone/src/presentation/web/app/actions/update-model.ts +45 -0
- package/web/.next/standalone/src/presentation/web/app/build-feature-node-data.ts +1 -0
- package/web/.next/standalone/src/presentation/web/app/build-graph-nodes.ts +1 -0
- package/web/.next/standalone/src/presentation/web/components/common/control-center-drawer/create-drawer-client.tsx +6 -0
- package/web/.next/standalone/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.stories.tsx +56 -0
- package/web/.next/standalone/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.tsx +238 -118
- package/web/.next/standalone/src/presentation/web/components/common/feature-list-item/feature-list-item.stories.tsx +16 -0
- package/web/.next/standalone/src/presentation/web/components/common/feature-list-item/feature-list-item.tsx +33 -0
- package/web/.next/standalone/src/presentation/web/components/common/feature-node/agent-type-icons.tsx +54 -2
- package/web/.next/standalone/src/presentation/web/components/common/feature-node/feature-node-state-config.ts +2 -0
- package/web/.next/standalone/src/presentation/web/components/common/feature-node/feature-node.stories.tsx +19 -0
- package/web/.next/standalone/src/presentation/web/components/common/feature-node/feature-node.tsx +38 -16
- package/web/.next/standalone/src/presentation/web/components/features/control-center/control-center-inner.tsx +4 -0
- package/web/.next/standalone/src/presentation/web/components/features/settings/AgentModelPicker/AgentModelPicker.stories.tsx +72 -0
- package/web/.next/standalone/src/presentation/web/components/features/settings/AgentModelPicker/index.tsx +228 -0
- package/web/.next/standalone/src/presentation/web/components/features/settings/ModelPicker/ModelPicker.stories.tsx +64 -0
- package/web/.next/standalone/src/presentation/web/components/features/settings/ModelPicker/index.tsx +167 -0
- package/web/.next/standalone/src/presentation/web/components/features/settings/settings-page-client.tsx +25 -41
- package/web/.next/standalone/src/presentation/web/components/layouts/app-sidebar/app-sidebar.stories.tsx +28 -3
- package/web/.next/standalone/src/presentation/web/components/layouts/app-sidebar/app-sidebar.tsx +4 -0
- package/web/.next/standalone/src/presentation/web/components/ui/checkbox-group-item.tsx +1 -1
- package/web/.next/standalone/src/presentation/web/components/ui/checkbox-group.tsx +1 -1
- package/web/.next/standalone/src/presentation/web/components/ui/command.tsx +114 -0
- package/web/.next/standalone/src/presentation/web/components/ui/switch.tsx +1 -1
- package/web/.next/standalone/src/presentation/web/hooks/sidebar-features-context.tsx +2 -0
- package/web/.next/standalone/src/presentation/web/lib/model-metadata.ts +51 -0
- package/web/.next/standalone/src/presentation/web/server.js +1 -1
- package/web/.next/static/chunks/00bf58dc5071b119.js +1 -0
- package/web/.next/static/chunks/259d3d57e8cfa8a9.js +1 -0
- package/web/.next/static/chunks/{db3fc2ad5e82988a.js → 25db6b51953c2374.js} +1 -1
- package/web/.next/static/chunks/305c7a91027868ab.js +1 -0
- package/web/.next/static/chunks/{97908acfe33c0773.js → 32db703f00225a79.js} +1 -1
- package/web/.next/static/chunks/390b75b02f665809.js +1 -0
- package/web/.next/static/chunks/42bd17823c7f41a1.css +2 -0
- package/web/.next/static/chunks/4ea1b4276f27110b.js +1 -0
- package/web/.next/static/chunks/51454a23ce051ec9.js +1 -0
- package/web/.next/static/chunks/{98e3a7cf58fc912a.js → 672e3da3ad26005b.js} +1 -1
- package/web/.next/static/chunks/7acc79e599df9890.js +1 -0
- package/web/.next/static/chunks/{36d88ff9f7db4eb9.js → 876edf7bbd901942.js} +1 -1
- package/web/.next/static/chunks/8f122c3ac2102300.js +11 -0
- package/web/.next/static/chunks/{1e540786c8710d66.js → a06258d572f4492c.js} +1 -1
- package/web/.next/static/chunks/a1ddf1f9b1435434.js +3 -0
- package/web/.next/static/chunks/{ed9e614e536c06de.js → b9a0a65afea061c5.js} +1 -1
- package/web/.next/static/chunks/c8b2868ae430a586.js +1 -0
- package/web/.next/static/chunks/{b7f32185dc5f8480.js → d1818ddcad8d7b31.js} +2 -2
- package/web/.next/static/chunks/{89aac43287d73b02.js → ed3a602003bcb31b.js} +1 -1
- package/web/.next/static/chunks/f492adb2f80408c6.js +1 -0
- package/web/.next/static/chunks/{turbopack-080e470ea902d0ba.js → turbopack-426d9bc2450816ba.js} +1 -1
- package/web/.next/trace +1 -1
- package/web/.next/trace-build +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1c870feb._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1c870feb._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__aea328fd._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__aea328fd._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__fd36b8bf._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__fd36b8bf._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_4093a637._.js +0 -5
- package/web/.next/server/chunks/ssr/_4093a637._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_5428b384._.js +0 -3
- package/web/.next/server/chunks/ssr/_88c4dab8._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_956601a1._.js +0 -9
- package/web/.next/server/chunks/ssr/_956601a1._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_c26c679f._.js +0 -3
- package/web/.next/server/chunks/ssr/_c26c679f._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_caf6533c._.js +0 -3
- package/web/.next/server/chunks/ssr/_caf6533c._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_f7f6173c._.js +0 -3
- package/web/.next/server/chunks/ssr/_f7f6173c._.js.map +0 -1
- package/web/.next/server/chunks/ssr/f7870_sonner_dist_index_mjs_dbf63824._.js +0 -3
- package/web/.next/server/chunks/ssr/f7870_sonner_dist_index_mjs_dbf63824._.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_163038ba._.js +0 -6
- package/web/.next/server/chunks/ssr/src_presentation_web_163038ba._.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_459cb687._.js +0 -6
- package/web/.next/server/chunks/ssr/src_presentation_web_459cb687._.js.map +0 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__1c870feb._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__aea328fd._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__fd36b8bf._.js +0 -4
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_4093a637._.js +0 -5
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_5428b384._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_956601a1._.js +0 -9
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_c26c679f._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_caf6533c._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_f7f6173c._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/f7870_sonner_dist_index_mjs_dbf63824._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_163038ba._.js +0 -6
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_459cb687._.js +0 -6
- package/web/.next/static/chunks/3479d6ae297e5410.css +0 -2
- package/web/.next/static/chunks/562043dcb8748208.js +0 -1
- package/web/.next/static/chunks/700501f5ac2bb320.js +0 -1
- package/web/.next/static/chunks/730cb306a35d6396.js +0 -1
- package/web/.next/static/chunks/907556417091ee06.js +0 -11
- package/web/.next/static/chunks/aa6cc6df962a3fc0.js +0 -3
- package/web/.next/static/chunks/b551d91ffdbb7c9e.js +0 -1
- package/web/.next/static/chunks/bf8d066811cf0d38.js +0 -3
- package/web/.next/static/chunks/c63d1c145c5a07dc.js +0 -1
- package/web/.next/static/chunks/dcc5fcd1ca8d263d.js +0 -1
- package/web/.next/static/chunks/f57f86dba6d4baba.js +0 -1
- package/web/.next/static/chunks/fc00e1b83852da4e.js +0 -1
- /package/web/.next/static/{5kMkMkfx5JoIMSJH9xQVJ → nwZ6x4KL92z5QBu5a6cPN}/_buildManifest.js +0 -0
- /package/web/.next/static/{5kMkMkfx5JoIMSJH9xQVJ → nwZ6x4KL92z5QBu5a6cPN}/_clientMiddlewareManifest.json +0 -0
- /package/web/.next/static/{5kMkMkfx5JoIMSJH9xQVJ → nwZ6x4KL92z5QBu5a6cPN}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { Search } from 'lucide-react';
|
|
5
|
+
|
|
6
|
+
import { cn } from '@/lib/utils';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Command — minimal combobox primitives for model/item selection.
|
|
10
|
+
*
|
|
11
|
+
* Intentionally avoids the `cmdk` dependency and builds on native React +
|
|
12
|
+
* Tailwind instead. Filtering logic lives in the consumer component.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
const Command = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
|
|
16
|
+
({ className, ...props }, ref) => (
|
|
17
|
+
<div
|
|
18
|
+
ref={ref}
|
|
19
|
+
className={cn(
|
|
20
|
+
'bg-popover text-popover-foreground flex h-full w-full flex-col overflow-hidden rounded-md',
|
|
21
|
+
className
|
|
22
|
+
)}
|
|
23
|
+
{...props}
|
|
24
|
+
/>
|
|
25
|
+
)
|
|
26
|
+
);
|
|
27
|
+
Command.displayName = 'Command';
|
|
28
|
+
|
|
29
|
+
const CommandInput = React.forwardRef<
|
|
30
|
+
HTMLInputElement,
|
|
31
|
+
React.InputHTMLAttributes<HTMLInputElement>
|
|
32
|
+
>(({ className, ...props }, ref) => (
|
|
33
|
+
<div className="flex items-center border-b px-3">
|
|
34
|
+
<Search className="mr-2 h-4 w-4 shrink-0 opacity-50" />
|
|
35
|
+
<input
|
|
36
|
+
ref={ref}
|
|
37
|
+
className={cn(
|
|
38
|
+
'placeholder:text-muted-foreground flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none disabled:cursor-not-allowed disabled:opacity-50',
|
|
39
|
+
className
|
|
40
|
+
)}
|
|
41
|
+
{...props}
|
|
42
|
+
/>
|
|
43
|
+
</div>
|
|
44
|
+
));
|
|
45
|
+
CommandInput.displayName = 'CommandInput';
|
|
46
|
+
|
|
47
|
+
const CommandList = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
|
|
48
|
+
({ className, ...props }, ref) => (
|
|
49
|
+
<div
|
|
50
|
+
ref={ref}
|
|
51
|
+
className={cn('max-h-[300px] overflow-x-hidden overflow-y-auto', className)}
|
|
52
|
+
{...props}
|
|
53
|
+
/>
|
|
54
|
+
)
|
|
55
|
+
);
|
|
56
|
+
CommandList.displayName = 'CommandList';
|
|
57
|
+
|
|
58
|
+
const CommandEmpty = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
|
|
59
|
+
({ className, ...props }, ref) => (
|
|
60
|
+
<div
|
|
61
|
+
ref={ref}
|
|
62
|
+
className={cn('text-muted-foreground py-6 text-center text-sm', className)}
|
|
63
|
+
{...props}
|
|
64
|
+
/>
|
|
65
|
+
)
|
|
66
|
+
);
|
|
67
|
+
CommandEmpty.displayName = 'CommandEmpty';
|
|
68
|
+
|
|
69
|
+
const CommandGroup = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
|
|
70
|
+
({ className, ...props }, ref) => (
|
|
71
|
+
<div ref={ref} className={cn('text-foreground overflow-hidden p-1', className)} {...props} />
|
|
72
|
+
)
|
|
73
|
+
);
|
|
74
|
+
CommandGroup.displayName = 'CommandGroup';
|
|
75
|
+
|
|
76
|
+
interface CommandItemProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
77
|
+
selected?: boolean;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
const CommandItem = React.forwardRef<HTMLButtonElement, CommandItemProps>(
|
|
81
|
+
({ className, selected, ...props }, ref) => (
|
|
82
|
+
<button
|
|
83
|
+
ref={ref}
|
|
84
|
+
type="button"
|
|
85
|
+
data-selected={selected}
|
|
86
|
+
className={cn(
|
|
87
|
+
'relative flex w-full cursor-default items-center rounded-sm px-2 py-1.5 text-sm transition-colors outline-none select-none',
|
|
88
|
+
'hover:bg-accent hover:text-accent-foreground',
|
|
89
|
+
'data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground',
|
|
90
|
+
'disabled:pointer-events-none disabled:opacity-50',
|
|
91
|
+
className
|
|
92
|
+
)}
|
|
93
|
+
{...props}
|
|
94
|
+
/>
|
|
95
|
+
)
|
|
96
|
+
);
|
|
97
|
+
CommandItem.displayName = 'CommandItem';
|
|
98
|
+
|
|
99
|
+
const CommandSeparator = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
|
|
100
|
+
({ className, ...props }, ref) => (
|
|
101
|
+
<div ref={ref} className={cn('bg-border -mx-1 h-px', className)} {...props} />
|
|
102
|
+
)
|
|
103
|
+
);
|
|
104
|
+
CommandSeparator.displayName = 'CommandSeparator';
|
|
105
|
+
|
|
106
|
+
export {
|
|
107
|
+
Command,
|
|
108
|
+
CommandEmpty,
|
|
109
|
+
CommandGroup,
|
|
110
|
+
CommandInput,
|
|
111
|
+
CommandItem,
|
|
112
|
+
CommandList,
|
|
113
|
+
CommandSeparator,
|
|
114
|
+
};
|
|
@@ -17,7 +17,7 @@ function Switch({
|
|
|
17
17
|
data-slot="switch"
|
|
18
18
|
data-size={size}
|
|
19
19
|
className={cn(
|
|
20
|
-
'peer group/switch focus-visible:border-ring focus-visible:ring-ring/50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input dark:data-[state=unchecked]:bg-input/80 inline-flex shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-[1.15rem] data-[size=default]:w-8 data-[size=sm]:h-3.5 data-[size=sm]:w-6',
|
|
20
|
+
'peer group/switch focus-visible:border-ring focus-visible:ring-ring/50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input dark:data-[state=unchecked]:bg-input/80 inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-[1.15rem] data-[size=default]:w-8 data-[size=sm]:h-3.5 data-[size=sm]:w-6',
|
|
21
21
|
className
|
|
22
22
|
)}
|
|
23
23
|
{...props}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
export interface ModelMeta {
|
|
2
|
+
displayName: string;
|
|
3
|
+
description: string;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Presentation-layer metadata for known LLM model identifiers.
|
|
8
|
+
* Maps raw model IDs to human-friendly display names and short descriptions.
|
|
9
|
+
*/
|
|
10
|
+
const MODEL_METADATA: Record<string, ModelMeta> = {
|
|
11
|
+
// Claude models
|
|
12
|
+
'claude-opus-4-6': { displayName: 'Opus 4.6', description: 'Most capable, complex tasks' },
|
|
13
|
+
'claude-sonnet-4-6': { displayName: 'Sonnet 4.6', description: 'Fast & balanced' },
|
|
14
|
+
'claude-haiku-4-5': { displayName: 'Haiku 4.5', description: 'Lightweight & quick' },
|
|
15
|
+
|
|
16
|
+
// Gemini models
|
|
17
|
+
'gemini-3.1-pro': { displayName: 'Gemini 3.1 Pro', description: 'Advanced reasoning' },
|
|
18
|
+
'gemini-3-flash': { displayName: 'Gemini 3 Flash', description: 'Ultra-fast responses' },
|
|
19
|
+
'gemini-2.5-pro': { displayName: 'Gemini 2.5 Pro', description: 'Reliable workhorse' },
|
|
20
|
+
'gemini-2.5-flash': { displayName: 'Gemini 2.5 Flash', description: 'Speed-optimized' },
|
|
21
|
+
|
|
22
|
+
// OpenAI models
|
|
23
|
+
'gpt-5.4': { displayName: 'GPT-5.4', description: 'Latest reasoning model' },
|
|
24
|
+
'gpt-5': { displayName: 'GPT-5', description: 'Flagship model' },
|
|
25
|
+
'gpt-5.3-codex': { displayName: 'GPT-5.3 Codex', description: 'Code specialist' },
|
|
26
|
+
|
|
27
|
+
// Other
|
|
28
|
+
'composer-1.5': { displayName: 'Composer 1.5', description: 'Multi-file editing' },
|
|
29
|
+
'grok-code': { displayName: 'Grok Code', description: 'xAI code model' },
|
|
30
|
+
|
|
31
|
+
// Demo / fun models
|
|
32
|
+
'gpt-8': { displayName: 'GPT-8', description: 'Writes code before you think it' },
|
|
33
|
+
'opus-7': { displayName: 'Opus 7', description: 'Achieved consciousness, ships on time' },
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
const FALLBACK: ModelMeta = { displayName: '', description: '' };
|
|
37
|
+
|
|
38
|
+
export function getModelMeta(modelId: string): ModelMeta {
|
|
39
|
+
const meta = MODEL_METADATA[modelId];
|
|
40
|
+
if (meta) return meta;
|
|
41
|
+
// Fallback: prettify the raw ID
|
|
42
|
+
return {
|
|
43
|
+
...FALLBACK,
|
|
44
|
+
displayName: modelId
|
|
45
|
+
.replace(/^claude-/, '')
|
|
46
|
+
.replace(/^gemini-/, 'Gemini ')
|
|
47
|
+
.replace(/^gpt-/, 'GPT-')
|
|
48
|
+
.replace(/-/g, ' ')
|
|
49
|
+
.replace(/\b\w/g, (c) => c.toUpperCase()),
|
|
50
|
+
};
|
|
51
|
+
}
|
|
@@ -15,7 +15,7 @@ const currentPort = parseInt(process.env.PORT, 10) || 3000
|
|
|
15
15
|
const hostname = process.env.HOSTNAME || '0.0.0.0'
|
|
16
16
|
|
|
17
17
|
let keepAliveTimeout = parseInt(process.env.KEEP_ALIVE_TIMEOUT, 10)
|
|
18
|
-
const nextConfig = {"env":{"NEXT_PUBLIC_SHEP_VERSION":"1.77.
|
|
18
|
+
const nextConfig = {"env":{"NEXT_PUBLIC_SHEP_VERSION":"1.77.2","NEXT_PUBLIC_SHEP_PACKAGE_NAME":"@shepai/cli","NEXT_PUBLIC_SHEP_DESCRIPTION":"Autonomous AI Native SDLC Platform - Automate the development cycle from idea to deploy"},"webpack":null,"typescript":{"ignoreBuildErrors":false},"typedRoutes":true,"distDir":"./.next","cleanDistDir":true,"assetPrefix":"","cacheMaxMemorySize":52428800,"configOrigin":"next.config.ts","useFileSystemPublicRoutes":true,"generateEtags":true,"pageExtensions":["tsx","ts","jsx","js"],"poweredByHeader":true,"compress":true,"images":{"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":false,"minimumCacheTTL":14400,"formats":["image/webp"],"maximumRedirects":3,"maximumResponseBody":50000000,"dangerouslyAllowLocalIP":false,"dangerouslyAllowSVG":false,"contentSecurityPolicy":"script-src 'none'; frame-src 'none'; sandbox;","contentDispositionType":"attachment","localPatterns":[{"pathname":"**","search":""}],"remotePatterns":[],"qualities":[75],"unoptimized":false},"devIndicators":{"position":"bottom-left"},"onDemandEntries":{"maxInactiveAge":60000,"pagesBufferLength":5},"basePath":"","sassOptions":{},"trailingSlash":false,"i18n":null,"productionBrowserSourceMaps":false,"excludeDefaultMomentLocales":true,"reactProductionProfiling":false,"reactStrictMode":null,"reactMaxHeadersLength":6000,"httpAgentOptions":{"keepAlive":true},"logging":{},"compiler":{},"expireTime":31536000,"staticPageGenerationTimeout":60,"output":"standalone","modularizeImports":{"@mui/icons-material":{"transform":"@mui/icons-material/{{member}}"},"lodash":{"transform":"lodash/{{member}}"}},"outputFileTracingRoot":"/home/runner/work/cli/cli","cacheComponents":false,"cacheLife":{"default":{"stale":300,"revalidate":900,"expire":4294967294},"seconds":{"stale":30,"revalidate":1,"expire":60},"minutes":{"stale":300,"revalidate":60,"expire":3600},"hours":{"stale":300,"revalidate":3600,"expire":86400},"days":{"stale":300,"revalidate":86400,"expire":604800},"weeks":{"stale":300,"revalidate":604800,"expire":2592000},"max":{"stale":300,"revalidate":2592000,"expire":31536000}},"cacheHandlers":{},"experimental":{"useSkewCookie":false,"cssChunking":true,"multiZoneDraftMode":false,"appNavFailHandling":false,"prerenderEarlyExit":true,"serverMinification":true,"linkNoTouchStart":false,"caseSensitiveRoutes":false,"dynamicOnHover":false,"preloadEntriesOnStart":true,"clientRouterFilter":true,"clientRouterFilterRedirects":false,"fetchCacheKeyPrefix":"","proxyPrefetch":"flexible","optimisticClientCache":true,"manualClientBasePath":false,"cpus":3,"memoryBasedWorkersCount":false,"imgOptConcurrency":null,"imgOptTimeoutInSeconds":7,"imgOptMaxInputPixels":268402689,"imgOptSequentialRead":null,"imgOptSkipMetadata":null,"isrFlushToDisk":true,"workerThreads":false,"optimizeCss":false,"nextScriptWorkers":false,"scrollRestoration":false,"externalDir":false,"disableOptimizedLoading":false,"gzipSize":true,"craCompat":false,"esmExternals":true,"fullySpecified":false,"swcTraceProfiling":false,"forceSwcTransforms":false,"largePageDataBytes":128000,"typedEnv":false,"parallelServerCompiles":false,"parallelServerBuildTraces":false,"ppr":false,"authInterrupts":false,"webpackMemoryOptimizations":false,"optimizeServerReact":true,"viewTransition":false,"removeUncaughtErrorAndRejectionListeners":false,"validateRSCRequestHeaders":false,"staleTimes":{"dynamic":0,"static":300},"reactDebugChannel":false,"serverComponentsHmrCache":true,"staticGenerationMaxConcurrency":8,"staticGenerationMinPagesPerWorker":25,"transitionIndicator":false,"inlineCss":false,"useCache":false,"globalNotFound":false,"browserDebugInfoInTerminal":false,"lockDistDir":true,"isolatedDevBuild":true,"proxyClientMaxBodySize":10485760,"hideLogsAfterAbort":false,"mcpServer":true,"turbopackFileSystemCacheForDev":true,"turbopackFileSystemCacheForBuild":false,"turbopackInferModuleSideEffects":false,"optimizePackageImports":["lucide-react","date-fns","lodash-es","ramda","antd","react-bootstrap","ahooks","@ant-design/icons","@headlessui/react","@headlessui-float/react","@heroicons/react/20/solid","@heroicons/react/24/solid","@heroicons/react/24/outline","@visx/visx","@tremor/react","rxjs","@mui/material","@mui/icons-material","recharts","react-use","effect","@effect/schema","@effect/platform","@effect/platform-node","@effect/platform-browser","@effect/platform-bun","@effect/sql","@effect/sql-mssql","@effect/sql-mysql2","@effect/sql-pg","@effect/sql-sqlite-node","@effect/sql-sqlite-bun","@effect/sql-sqlite-wasm","@effect/sql-sqlite-react-native","@effect/rpc","@effect/rpc-http","@effect/typeclass","@effect/experimental","@effect/opentelemetry","@material-ui/core","@material-ui/icons","@tabler/icons-react","mui-core","react-icons/ai","react-icons/bi","react-icons/bs","react-icons/cg","react-icons/ci","react-icons/di","react-icons/fa","react-icons/fa6","react-icons/fc","react-icons/fi","react-icons/gi","react-icons/go","react-icons/gr","react-icons/hi","react-icons/hi2","react-icons/im","react-icons/io","react-icons/io5","react-icons/lia","react-icons/lib","react-icons/lu","react-icons/md","react-icons/pi","react-icons/ri","react-icons/rx","react-icons/si","react-icons/sl","react-icons/tb","react-icons/tfi","react-icons/ti","react-icons/vsc","react-icons/wi"],"trustHostHeader":false,"isExperimentalCompile":false},"htmlLimitedBots":"[\\w-]+-Google|Google-[\\w-]+|Chrome-Lighthouse|Slurp|DuckDuckBot|baiduspider|yandex|sogou|bitlybot|tumblr|vkShare|quora link preview|redditbot|ia_archiver|Bingbot|BingPreview|applebot|facebookexternalhit|facebookcatalog|Twitterbot|LinkedInBot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|Yeti|googleweblight","bundlePagesRouterDependencies":false,"configFileName":"next.config.ts","turbopack":{"root":"/home/runner/work/cli/cli"},"serverExternalPackages":["tsyringe","reflect-metadata","better-sqlite3","node:os","node:child_process","node:fs"],"distDirRoot":".next"}
|
|
19
19
|
|
|
20
20
|
process.env.__NEXT_PRIVATE_STANDALONE_CONFIG = JSON.stringify(nextConfig)
|
|
21
21
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,87342,e=>{"use strict";var t=e.i(79054),r=e.i(22528),s=e.i(5978),o=e.i(86874),n=e.i(20314);function i(e){let i=e+"CollectionProvider",[a,l]=(0,r.createContextScope)(i),[c,d]=a(i,{collectionRef:{current:null},itemMap:new Map}),u=e=>{let{scope:r,children:s}=e,o=t.default.useRef(null),i=t.default.useRef(new Map).current;return(0,n.jsx)(c,{scope:r,itemMap:i,collectionRef:o,children:s})};u.displayName=i;let p=e+"CollectionSlot",f=(0,o.createSlot)(p),h=t.default.forwardRef((e,t)=>{let{scope:r,children:o}=e,i=d(p,r),a=(0,s.useComposedRefs)(t,i.collectionRef);return(0,n.jsx)(f,{ref:a,children:o})});h.displayName=p;let m=e+"CollectionItemSlot",v="data-radix-collection-item",g=(0,o.createSlot)(m),x=t.default.forwardRef((e,r)=>{let{scope:o,children:i,...a}=e,l=t.default.useRef(null),c=(0,s.useComposedRefs)(r,l),u=d(m,o);return t.default.useEffect(()=>(u.itemMap.set(l,{ref:l,...a}),()=>void u.itemMap.delete(l))),(0,n.jsx)(g,{...{[v]:""},ref:c,children:i})});return x.displayName=m,[{Provider:u,Slot:h,ItemSlot:x},function(r){let s=d(e+"CollectionConsumer",r);return t.default.useCallback(()=>{let e=s.collectionRef.current;if(!e)return[];let t=Array.from(e.querySelectorAll(`[${v}]`));return Array.from(s.itemMap.values()).sort((e,r)=>t.indexOf(e.ref.current)-t.indexOf(r.ref.current))},[s.collectionRef,s.itemMap])},l]}var a=new WeakMap;function l(e,t){var r,s;let o,n,i;if("at"in Array.prototype)return Array.prototype.at.call(e,t);let a=(r=e,s=t,o=r.length,(i=(n=c(s))>=0?n:o+n)<0||i>=o?-1:i);return -1===a?void 0:e[a]}function c(e){return e!=e||0===e?0:Math.trunc(e)}(class e extends Map{#e;constructor(e){super(e),this.#e=[...super.keys()],a.set(this,!0)}set(e,t){return a.get(this)&&(this.has(e)?this.#e[this.#e.indexOf(e)]=e:this.#e.push(e)),super.set(e,t),this}insert(e,t,r){let s,o=this.has(t),n=this.#e.length,i=c(e),a=i>=0?i:n+i,l=a<0||a>=n?-1:a;if(l===this.size||o&&l===this.size-1||-1===l)return this.set(t,r),this;let d=this.size+ +!o;i<0&&a++;let u=[...this.#e],p=!1;for(let e=a;e<d;e++)if(a===e){let n=u[e];u[e]===t&&(n=u[e+1]),o&&this.delete(t),s=this.get(n),this.set(t,r)}else{p||u[e-1]!==t||(p=!0);let r=u[p?e:e-1],o=s;s=this.get(r),this.delete(r),this.set(r,o)}return this}with(t,r,s){let o=new e(this);return o.insert(t,r,s),o}before(e){let t=this.#e.indexOf(e)-1;if(!(t<0))return this.entryAt(t)}setBefore(e,t,r){let s=this.#e.indexOf(e);return -1===s?this:this.insert(s,t,r)}after(e){let t=this.#e.indexOf(e);if(-1!==(t=-1===t||t===this.size-1?-1:t+1))return this.entryAt(t)}setAfter(e,t,r){let s=this.#e.indexOf(e);return -1===s?this:this.insert(s+1,t,r)}first(){return this.entryAt(0)}last(){return this.entryAt(-1)}clear(){return this.#e=[],super.clear()}delete(e){let t=super.delete(e);return t&&this.#e.splice(this.#e.indexOf(e),1),t}deleteAt(e){let t=this.keyAt(e);return void 0!==t&&this.delete(t)}at(e){let t=l(this.#e,e);if(void 0!==t)return this.get(t)}entryAt(e){let t=l(this.#e,e);if(void 0!==t)return[t,this.get(t)]}indexOf(e){return this.#e.indexOf(e)}keyAt(e){return l(this.#e,e)}from(e,t){let r=this.indexOf(e);if(-1===r)return;let s=r+t;return s<0&&(s=0),s>=this.size&&(s=this.size-1),this.at(s)}keyFrom(e,t){let r=this.indexOf(e);if(-1===r)return;let s=r+t;return s<0&&(s=0),s>=this.size&&(s=this.size-1),this.keyAt(s)}find(e,t){let r=0;for(let s of this){if(Reflect.apply(e,t,[s,r,this]))return s;r++}}findIndex(e,t){let r=0;for(let s of this){if(Reflect.apply(e,t,[s,r,this]))return r;r++}return -1}filter(t,r){let s=[],o=0;for(let e of this)Reflect.apply(t,r,[e,o,this])&&s.push(e),o++;return new e(s)}map(t,r){let s=[],o=0;for(let e of this)s.push([e[0],Reflect.apply(t,r,[e,o,this])]),o++;return new e(s)}reduce(...e){let[t,r]=e,s=0,o=r??this.at(0);for(let r of this)o=0===s&&1===e.length?r:Reflect.apply(t,this,[o,r,s,this]),s++;return o}reduceRight(...e){let[t,r]=e,s=r??this.at(-1);for(let r=this.size-1;r>=0;r--){let o=this.at(r);s=r===this.size-1&&1===e.length?o:Reflect.apply(t,this,[s,o,r,this])}return s}toSorted(t){return new e([...this.entries()].sort(t))}toReversed(){let t=new e;for(let e=this.size-1;e>=0;e--){let r=this.keyAt(e),s=this.get(r);t.set(r,s)}return t}toSpliced(...t){let r=[...this.entries()];return r.splice(...t),new e(r)}slice(t,r){let s=new e,o=this.size-1;if(void 0===t)return s;t<0&&(t+=this.size),void 0!==r&&r>0&&(o=r-1);for(let e=t;e<=o;e++){let t=this.keyAt(e),r=this.get(t);s.set(t,r)}return s}every(e,t){let r=0;for(let s of this){if(!Reflect.apply(e,t,[s,r,this]))return!1;r++}return!0}some(e,t){let r=0;for(let s of this){if(Reflect.apply(e,t,[s,r,this]))return!0;r++}return!1}}),e.s(["createCollection",()=>i])},83902,e=>{"use strict";let t=(0,e.i(3645).default)("rocket",[["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z",key:"m3kijz"}],["path",{d:"m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z",key:"1fmvmk"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0",key:"1f8sc4"}],["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}]]);e.s(["Rocket",()=>t],83902)},23925,1012,e=>{"use strict";let t=(0,e.i(3645).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);e.s(["default",()=>t],1012),e.s(["Check",()=>t],23925)},11345,e=>{"use strict";let t=(0,e.i(3645).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);e.s(["ChevronLeft",()=>t],11345)},76016,e=>{"use strict";let t=(0,e.i(3645).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["ChevronRight",()=>t],76016)},99105,e=>{"use strict";let t=(0,e.i(3645).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["ChevronDown",()=>t],99105)},41957,e=>{"use strict";var t=e.i(20314),r=e.i(79054),s=e.i(87620),o=r.forwardRef((e,r)=>(0,t.jsx)(s.Primitive.label,{...e,ref:r,onMouseDown:t=>{t.target.closest("button, input, select, textarea")||(e.onMouseDown?.(t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));o.displayName="Label",e.s(["Label",()=>o,"Root",()=>o],27572);var n=e.i(27572),n=n,i=e.i(94237),a=e.i(31777);let l=(0,i.cva)("text-sm leading-none font-medium peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),c=r.forwardRef(({className:e,...r},s)=>(0,t.jsx)(n.Root,{ref:s,className:(0,a.cn)(l(),e),...r}));c.displayName=n.Root.displayName,e.s(["Label",()=>c],41957)},51911,23405,e=>{"use strict";var t=e.i(20314),r=e.i(79054),s=e.i(91967),o=e.i(5978),n=e.i(22528),i=e.i(36589);function a(e){let t=r.useRef({value:e,previous:e});return r.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}e.s(["usePrevious",()=>a],23405);var l=e.i(77624),c=e.i(87620),d="Switch",[u,p]=(0,n.createContextScope)(d),[f,h]=u(d),m=r.forwardRef((e,n)=>{let{__scopeSwitch:a,name:l,checked:u,defaultChecked:p,required:h,disabled:m,value:v="on",onCheckedChange:g,form:b,...k}=e,[w,R]=r.useState(null),C=(0,o.useComposedRefs)(n,e=>R(e)),j=r.useRef(!1),P=!w||b||!!w.closest("form"),[A,S]=(0,i.useControllableState)({prop:u,defaultProp:p??!1,onChange:g,caller:d});return(0,t.jsxs)(f,{scope:a,checked:A,disabled:m,children:[(0,t.jsx)(c.Primitive.button,{type:"button",role:"switch","aria-checked":A,"aria-required":h,"data-state":y(A),"data-disabled":m?"":void 0,disabled:m,value:v,...k,ref:C,onClick:(0,s.composeEventHandlers)(e.onClick,e=>{S(e=>!e),P&&(j.current=e.isPropagationStopped(),j.current||e.stopPropagation())})}),P&&(0,t.jsx)(x,{control:w,bubbles:!j.current,name:l,value:v,checked:A,required:h,disabled:m,form:b,style:{transform:"translateX(-100%)"}})]})});m.displayName=d;var v="SwitchThumb",g=r.forwardRef((e,r)=>{let{__scopeSwitch:s,...o}=e,n=h(v,s);return(0,t.jsx)(c.Primitive.span,{"data-state":y(n.checked),"data-disabled":n.disabled?"":void 0,...o,ref:r})});g.displayName=v;var x=r.forwardRef(({__scopeSwitch:e,control:s,checked:n,bubbles:i=!0,...c},d)=>{let u=r.useRef(null),p=(0,o.useComposedRefs)(u,d),f=a(n),h=(0,l.useSize)(s);return r.useEffect(()=>{let e=u.current;if(!e)return;let t=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set;if(f!==n&&t){let r=new Event("click",{bubbles:i});t.call(e,n),e.dispatchEvent(r)}},[f,n,i]),(0,t.jsx)("input",{type:"checkbox","aria-hidden":!0,defaultChecked:n,...c,tabIndex:-1,ref:p,style:{...c.style,...h,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});function y(e){return e?"checked":"unchecked"}x.displayName="SwitchBubbleInput",e.s(["Root",()=>m,"Switch",()=>m,"SwitchThumb",()=>g,"Thumb",()=>g,"createSwitchScope",()=>p],95291);var b=e.i(95291),b=b,k=e.i(31777);function w({className:e,size:r="default",...s}){return(0,t.jsx)(b.Root,{"data-slot":"switch","data-size":r,className:(0,k.cn)("peer group/switch focus-visible:border-ring focus-visible:ring-ring/50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input dark:data-[state=unchecked]:bg-input/80 inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-[1.15rem] data-[size=default]:w-8 data-[size=sm]:h-3.5 data-[size=sm]:w-6",e),...s,children:(0,t.jsx)(b.Thumb,{"data-slot":"switch-thumb",className:(0,k.cn)("bg-background dark:data-[state=checked]:bg-primary-foreground dark:data-[state=unchecked]:bg-foreground pointer-events-none block rounded-full ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0")})})}e.s(["Switch",()=>w],51911)},93752,e=>{"use strict";let t=(0,e.i(3645).default)("code",[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]]);e.s(["default",()=>t])},76789,79450,e=>{"use strict";var t=e.i(21023);let r=(0,t.createServerReference)("005118c460ae25207f5bc2df3312cebc59324da5c9",t.callServer,void 0,t.findSourceMapURL,"getAllAgentModels");e.s(["getAllAgentModels",()=>r],76789);let s=(0,t.createServerReference)("606973a0efd1318a7929a7a8be555ffdbb382b6559",t.callServer,void 0,t.findSourceMapURL,"updateAgentAndModel");e.s(["updateAgentAndModel",()=>s],79450)},90382,e=>{"use strict";var t=e.i(20314),r=e.i(79054),s=e.i(91967),o=e.i(5978),n=e.i(22528),i=e.i(53532),a=e.i(41687),l=e.i(56720),c=e.i(13123),d=e.i(52740),u=e.i(39979),p=e.i(85995),f=e.i(87620),h=e.i(86874),m=e.i(36589),v=e.i(73772),g=e.i(13044),x="Popover",[y,b]=(0,n.createContextScope)(x,[d.createPopperScope]),k=(0,d.createPopperScope)(),[w,R]=y(x),C=e=>{let{__scopePopover:s,children:o,open:n,defaultOpen:i,onOpenChange:a,modal:l=!1}=e,u=k(s),p=r.useRef(null),[f,h]=r.useState(!1),[v,g]=(0,m.useControllableState)({prop:n,defaultProp:i??!1,onChange:a,caller:x});return(0,t.jsx)(d.Root,{...u,children:(0,t.jsx)(w,{scope:s,contentId:(0,c.useId)(),triggerRef:p,open:v,onOpenChange:g,onOpenToggle:r.useCallback(()=>g(e=>!e),[g]),hasCustomAnchor:f,onCustomAnchorAdd:r.useCallback(()=>h(!0),[]),onCustomAnchorRemove:r.useCallback(()=>h(!1),[]),modal:l,children:o})})};C.displayName=x;var j="PopoverAnchor",P=r.forwardRef((e,s)=>{let{__scopePopover:o,...n}=e,i=R(j,o),a=k(o),{onCustomAnchorAdd:l,onCustomAnchorRemove:c}=i;return r.useEffect(()=>(l(),()=>c()),[l,c]),(0,t.jsx)(d.Anchor,{...a,...n,ref:s})});P.displayName=j;var A="PopoverTrigger",S=r.forwardRef((e,r)=>{let{__scopePopover:n,...i}=e,a=R(A,n),l=k(n),c=(0,o.useComposedRefs)(r,a.triggerRef),u=(0,t.jsx)(f.Primitive.button,{type:"button","aria-haspopup":"dialog","aria-expanded":a.open,"aria-controls":a.contentId,"data-state":B(a.open),...i,ref:c,onClick:(0,s.composeEventHandlers)(e.onClick,a.onOpenToggle)});return a.hasCustomAnchor?u:(0,t.jsx)(d.Anchor,{asChild:!0,...l,children:u})});S.displayName=A;var N="PopoverPortal",[M,O]=y(N,{forceMount:void 0}),T=e=>{let{__scopePopover:r,forceMount:s,children:o,container:n}=e,i=R(N,r);return(0,t.jsx)(M,{scope:r,forceMount:s,children:(0,t.jsx)(p.Presence,{present:s||i.open,children:(0,t.jsx)(u.Portal,{asChild:!0,container:n,children:o})})})};T.displayName=N;var z="PopoverContent",E=r.forwardRef((e,r)=>{let s=O(z,e.__scopePopover),{forceMount:o=s.forceMount,...n}=e,i=R(z,e.__scopePopover);return(0,t.jsx)(p.Presence,{present:o||i.open,children:i.modal?(0,t.jsx)(D,{...n,ref:r}):(0,t.jsx)(I,{...n,ref:r})})});E.displayName=z;var F=(0,h.createSlot)("PopoverContent.RemoveScroll"),D=r.forwardRef((e,n)=>{let i=R(z,e.__scopePopover),a=r.useRef(null),l=(0,o.useComposedRefs)(n,a),c=r.useRef(!1);return r.useEffect(()=>{let e=a.current;if(e)return(0,v.hideOthers)(e)},[]),(0,t.jsx)(g.RemoveScroll,{as:F,allowPinchZoom:!0,children:(0,t.jsx)(L,{...e,ref:l,trapFocus:i.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:(0,s.composeEventHandlers)(e.onCloseAutoFocus,e=>{e.preventDefault(),c.current||i.triggerRef.current?.focus()}),onPointerDownOutside:(0,s.composeEventHandlers)(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,r=0===t.button&&!0===t.ctrlKey;c.current=2===t.button||r},{checkForDefaultPrevented:!1}),onFocusOutside:(0,s.composeEventHandlers)(e.onFocusOutside,e=>e.preventDefault(),{checkForDefaultPrevented:!1})})})}),I=r.forwardRef((e,s)=>{let o=R(z,e.__scopePopover),n=r.useRef(!1),i=r.useRef(!1);return(0,t.jsx)(L,{...e,ref:s,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(n.current||o.triggerRef.current?.focus(),t.preventDefault()),n.current=!1,i.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(n.current=!0,"pointerdown"===t.detail.originalEvent.type&&(i.current=!0));let r=t.target;o.triggerRef.current?.contains(r)&&t.preventDefault(),"focusin"===t.detail.originalEvent.type&&i.current&&t.preventDefault()}})}),L=r.forwardRef((e,r)=>{let{__scopePopover:s,trapFocus:o,onOpenAutoFocus:n,onCloseAutoFocus:c,disableOutsidePointerEvents:u,onEscapeKeyDown:p,onPointerDownOutside:f,onFocusOutside:h,onInteractOutside:m,...v}=e,g=R(z,s),x=k(s);return(0,a.useFocusGuards)(),(0,t.jsx)(l.FocusScope,{asChild:!0,loop:!0,trapped:o,onMountAutoFocus:n,onUnmountAutoFocus:c,children:(0,t.jsx)(i.DismissableLayer,{asChild:!0,disableOutsidePointerEvents:u,onInteractOutside:m,onEscapeKeyDown:p,onPointerDownOutside:f,onFocusOutside:h,onDismiss:()=>g.onOpenChange(!1),children:(0,t.jsx)(d.Content,{"data-state":B(g.open),role:"dialog",id:g.contentId,...x,...v,ref:r,style:{...v.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),H="PopoverClose",_=r.forwardRef((e,r)=>{let{__scopePopover:o,...n}=e,i=R(H,o);return(0,t.jsx)(f.Primitive.button,{type:"button",...n,ref:r,onClick:(0,s.composeEventHandlers)(e.onClick,()=>i.onOpenChange(!1))})});_.displayName=H;var q=r.forwardRef((e,r)=>{let{__scopePopover:s,...o}=e,n=k(s);return(0,t.jsx)(d.Arrow,{...n,...o,ref:r})});function B(e){return e?"open":"closed"}q.displayName="PopoverArrow",e.s(["Anchor",()=>P,"Arrow",()=>q,"Close",()=>_,"Content",()=>E,"Popover",()=>C,"PopoverAnchor",()=>P,"PopoverArrow",()=>q,"PopoverClose",()=>_,"PopoverContent",()=>E,"PopoverPortal",()=>T,"PopoverTrigger",()=>S,"Portal",()=>T,"Root",()=>C,"Trigger",()=>S,"createPopoverScope",()=>b],89920);var U=e.i(89920),U=U,K=e.i(31777);let X=U.Root,$=U.Trigger;U.Anchor;let G=r.forwardRef(({className:e,align:r="center",sideOffset:s=4,...o},n)=>(0,t.jsx)(U.Portal,{children:(0,t.jsx)(U.Content,{ref:n,align:r,sideOffset:s,className:(0,K.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-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-72 rounded-md border p-4 shadow-md outline-none",e),...o})}));G.displayName=U.Content.displayName,e.s(["Popover",()=>X,"PopoverContent",()=>G,"PopoverTrigger",()=>$],90382)},41413,e=>{"use strict";var t=e.i(20314),r=e.i(79054),s=e.i(23925),o=e.i(11345),n=e.i(76016),i=e.i(76789),a=e.i(79450),l=e.i(86782),c=e.i(29847),d=e.i(35364),u=e.i(90382),p=e.i(31777);function f({initialAgentType:e,initialModel:f,onAgentModelChange:h,disabled:m,className:v,mode:g}){let[x,y]=r.useState(!1),[b,k]=r.useState([]),[w,R]=r.useState(!0),[C,j]=r.useState(e),[P,A]=r.useState(f),[S,N]=r.useState(null),[M,O]=r.useState(0),[T,z]=r.useState(null);r.useEffect(()=>{(0,i.getAllAgentModels)().then(k).finally(()=>R(!1))},[]),r.useEffect(()=>{if(!x){let e=setTimeout(()=>{O(0),z(null)},150);return()=>clearTimeout(e)}},[x]);let E=async(e,t)=>{if(y(!1),e!==C||t!==P){if("override"===g){j(e),A(t),h?.(e,t);return}j(e),A(t),h?.(e,t),N(null);try{let r=await (0,a.updateAgentAndModel)(e,t||null);r.ok||(j(C),A(P),h?.(C,P),N(r.error??"Failed to save"))}catch{j(C),A(P),h?.(C,P),N("Failed to save")}}},F=(0,l.getAgentTypeIcon)(C),D=b.find(e=>e.agentType===C)?.label??C,I=P?(0,c.getModelMeta)(P).displayName||P:D,L=T?b.find(e=>e.agentType===T):null;return(0,t.jsxs)("div",{className:(0,p.cn)("flex flex-col gap-1",v),children:[(0,t.jsxs)(u.Popover,{open:x,onOpenChange:y,children:[(0,t.jsx)(u.PopoverTrigger,{asChild:!0,children:(0,t.jsx)(d.Button,{variant:"outline",role:"combobox","aria-expanded":x,disabled:(m??!1)||w,className:"w-auto cursor-pointer font-normal",children:(0,t.jsxs)("span",{className:"flex items-center gap-2 truncate",children:[(0,t.jsx)(F,{className:"h-4 w-4 shrink-0"}),w?"Loading…":I]})})}),(0,t.jsx)(u.PopoverContent,{className:"w-64 overflow-hidden p-0",align:"start",children:(0,t.jsxs)("div",{className:"flex transition-transform duration-200 ease-in-out",style:{transform:`translateX(${1===M?"-50%":"0%"})`,width:"200%"},children:[(0,t.jsxs)("div",{className:"w-1/2 shrink-0",children:[(0,t.jsx)("div",{className:"text-muted-foreground border-b px-3 py-2 text-xs font-medium",children:"Select agent"}),b.map(e=>{let r=(0,l.getAgentTypeIcon)(e.agentType),o=C===e.agentType,i=e.models.length>0;return(0,t.jsxs)("button",{type:"button",className:(0,p.cn)("flex w-full cursor-pointer items-center gap-2.5 px-3 py-2 text-sm transition-colors","hover:bg-accent hover:text-accent-foreground",o&&"bg-accent/50"),onClick:()=>{i?(z(e.agentType),requestAnimationFrame(()=>{requestAnimationFrame(()=>O(1))})):E(e.agentType,"")},children:[(0,t.jsx)(r,{className:"h-4 w-4 shrink-0"}),(0,t.jsx)("span",{className:"flex-1 text-left",children:e.label}),o&&!i?(0,t.jsx)(s.Check,{className:"text-primary h-3.5 w-3.5 shrink-0"}):null,i?(0,t.jsx)(n.ChevronRight,{className:"text-muted-foreground h-3.5 w-3.5 shrink-0"}):null]},e.agentType)})]}),(0,t.jsx)("div",{className:"w-1/2 shrink-0",children:L?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("button",{type:"button",className:"text-muted-foreground hover:text-foreground flex w-full cursor-pointer items-center gap-1.5 border-b px-3 py-2 text-xs font-medium transition-colors",onClick:()=>{O(0),setTimeout(()=>z(null),220)},children:[(0,t.jsx)(o.ChevronLeft,{className:"h-3.5 w-3.5"}),L.label]}),L.models.map(e=>{let r=C===L.agentType&&P===e.id;return(0,t.jsxs)("button",{type:"button",className:(0,p.cn)("flex w-full cursor-pointer items-center gap-3 px-3 py-2 text-left transition-colors","hover:bg-accent hover:text-accent-foreground",r&&"bg-accent/50"),onClick:()=>E(L.agentType,e.id),children:[(0,t.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col",children:[(0,t.jsx)("span",{className:"text-sm font-medium",children:e.displayName}),(0,t.jsx)("span",{className:"text-muted-foreground text-xs",children:e.description})]}),r?(0,t.jsx)(s.Check,{className:"text-primary h-3.5 w-3.5 shrink-0"}):null]},e.id)})]}):null})]})})]}),!!S&&(0,t.jsx)("p",{className:"text-destructive text-sm",children:S})]})}e.s(["AgentModelPicker",()=>f])}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,41952,e=>{"use strict";var t=e.i(20314),n=e.i(79054),a=e.i(3645);let r=(0,a.default)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]),l=(0,a.default)("eye-off",[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]);var o=e.i(23925),s=e.i(60112),i=e.i(41957),d=e.i(98127),c=e.i(35364),u=e.i(51911),p=e.i(26036),h=e.i(27069),m=e.i(91967),f=e.i(87342),g=e.i(5978),v=e.i(22528),x=e.i(66033),w=e.i(53532),b=e.i(41687),y=e.i(56720),S=e.i(13123),C=e.i(52740),j=e.i(39979),k=e.i(87620),N=e.i(86874),I=e.i(29297),P=e.i(36589),M=e.i(5192),T=e.i(23405),E=e.i(1693),R=e.i(73772),A=e.i(13044),D=[" ","Enter","ArrowUp","ArrowDown"],L=[" ","Enter"],F="Select",[H,B,V]=(0,f.createCollection)(F),[O,W]=(0,v.createContextScope)(F,[V,C.createPopperScope]),_=(0,C.createPopperScope)(),[z,U]=O(F),[K,G]=O(F),Z=e=>{let{__scopeSelect:a,children:r,open:l,defaultOpen:o,onOpenChange:s,value:i,defaultValue:d,onValueChange:c,dir:u,name:p,autoComplete:h,disabled:m,required:f,form:g}=e,v=_(a),[w,b]=n.useState(null),[y,j]=n.useState(null),[k,N]=n.useState(!1),I=(0,x.useDirection)(u),[M,T]=(0,P.useControllableState)({prop:l,defaultProp:o??!1,onChange:s,caller:F}),[E,R]=(0,P.useControllableState)({prop:i,defaultProp:d,onChange:c,caller:F}),A=n.useRef(null),D=!w||g||!!w.closest("form"),[L,B]=n.useState(new Set),V=Array.from(L).map(e=>e.props.value).join(";");return(0,t.jsx)(C.Root,{...v,children:(0,t.jsxs)(z,{required:f,scope:a,trigger:w,onTriggerChange:b,valueNode:y,onValueNodeChange:j,valueNodeHasChildren:k,onValueNodeHasChildrenChange:N,contentId:(0,S.useId)(),value:E,onValueChange:R,open:M,onOpenChange:T,dir:I,triggerPointerDownPosRef:A,disabled:m,children:[(0,t.jsx)(H.Provider,{scope:a,children:(0,t.jsx)(K,{scope:e.__scopeSelect,onNativeOptionAdd:n.useCallback(e=>{B(t=>new Set(t).add(e))},[]),onNativeOptionRemove:n.useCallback(e=>{B(t=>{let n=new Set(t);return n.delete(e),n})},[]),children:r})}),D?(0,t.jsxs)(eD,{"aria-hidden":!0,required:f,tabIndex:-1,name:p,autoComplete:h,value:E,onChange:e=>R(e.target.value),disabled:m,form:g,children:[void 0===E?(0,t.jsx)("option",{value:""}):null,Array.from(L)]},V):null]})})};Z.displayName=F;var Y="SelectTrigger",q=n.forwardRef((e,a)=>{let{__scopeSelect:r,disabled:l=!1,...o}=e,s=_(r),i=U(Y,r),d=i.disabled||l,c=(0,g.useComposedRefs)(a,i.onTriggerChange),u=B(r),p=n.useRef("touch"),[h,f,v]=eF(e=>{let t=u().filter(e=>!e.disabled),n=t.find(e=>e.value===i.value),a=eH(t,e,n);void 0!==a&&i.onValueChange(a.value)}),x=e=>{d||(i.onOpenChange(!0),v()),e&&(i.triggerPointerDownPosRef.current={x:Math.round(e.pageX),y:Math.round(e.pageY)})};return(0,t.jsx)(C.Anchor,{asChild:!0,...s,children:(0,t.jsx)(k.Primitive.button,{type:"button",role:"combobox","aria-controls":i.contentId,"aria-expanded":i.open,"aria-required":i.required,"aria-autocomplete":"none",dir:i.dir,"data-state":i.open?"open":"closed",disabled:d,"data-disabled":d?"":void 0,"data-placeholder":eL(i.value)?"":void 0,...o,ref:c,onClick:(0,m.composeEventHandlers)(o.onClick,e=>{e.currentTarget.focus(),"mouse"!==p.current&&x(e)}),onPointerDown:(0,m.composeEventHandlers)(o.onPointerDown,e=>{p.current=e.pointerType;let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),0===e.button&&!1===e.ctrlKey&&"mouse"===e.pointerType&&(x(e),e.preventDefault())}),onKeyDown:(0,m.composeEventHandlers)(o.onKeyDown,e=>{let t=""!==h.current;e.ctrlKey||e.altKey||e.metaKey||1!==e.key.length||f(e.key),(!t||" "!==e.key)&&D.includes(e.key)&&(x(),e.preventDefault())})})})});q.displayName=Y;var X="SelectValue",J=n.forwardRef((e,n)=>{let{__scopeSelect:a,className:r,style:l,children:o,placeholder:s="",...i}=e,d=U(X,a),{onValueNodeHasChildrenChange:c}=d,u=void 0!==o,p=(0,g.useComposedRefs)(n,d.onValueNodeChange);return(0,M.useLayoutEffect)(()=>{c(u)},[c,u]),(0,t.jsx)(k.Primitive.span,{...i,ref:p,style:{pointerEvents:"none"},children:eL(d.value)?(0,t.jsx)(t.Fragment,{children:s}):o})});J.displayName=X;var Q=n.forwardRef((e,n)=>{let{__scopeSelect:a,children:r,...l}=e;return(0,t.jsx)(k.Primitive.span,{"aria-hidden":!0,...l,ref:n,children:r||"▼"})});Q.displayName="SelectIcon";var $=e=>(0,t.jsx)(j.Portal,{asChild:!0,...e});$.displayName="SelectPortal";var ee="SelectContent",et=n.forwardRef((e,a)=>{let r=U(ee,e.__scopeSelect),[l,o]=n.useState();return((0,M.useLayoutEffect)(()=>{o(new DocumentFragment)},[]),r.open)?(0,t.jsx)(el,{...e,ref:a}):l?p.createPortal((0,t.jsx)(en,{scope:e.__scopeSelect,children:(0,t.jsx)(H.Slot,{scope:e.__scopeSelect,children:(0,t.jsx)("div",{children:e.children})})}),l):null});et.displayName=ee;var[en,ea]=O(ee),er=(0,N.createSlot)("SelectContent.RemoveScroll"),el=n.forwardRef((e,a)=>{let{__scopeSelect:r,position:l="item-aligned",onCloseAutoFocus:o,onEscapeKeyDown:s,onPointerDownOutside:i,side:d,sideOffset:c,align:u,alignOffset:p,arrowPadding:h,collisionBoundary:f,collisionPadding:v,sticky:x,hideWhenDetached:S,avoidCollisions:C,...j}=e,k=U(ee,r),[N,I]=n.useState(null),[P,M]=n.useState(null),T=(0,g.useComposedRefs)(a,e=>I(e)),[E,D]=n.useState(null),[L,F]=n.useState(null),H=B(r),[V,O]=n.useState(!1),W=n.useRef(!1);n.useEffect(()=>{if(N)return(0,R.hideOthers)(N)},[N]),(0,b.useFocusGuards)();let _=n.useCallback(e=>{let[t,...n]=H().map(e=>e.ref.current),[a]=n.slice(-1),r=document.activeElement;for(let n of e)if(n===r||(n?.scrollIntoView({block:"nearest"}),n===t&&P&&(P.scrollTop=0),n===a&&P&&(P.scrollTop=P.scrollHeight),n?.focus(),document.activeElement!==r))return},[H,P]),z=n.useCallback(()=>_([E,N]),[_,E,N]);n.useEffect(()=>{V&&z()},[V,z]);let{onOpenChange:K,triggerPointerDownPosRef:G}=k;n.useEffect(()=>{if(N){let e={x:0,y:0},t=t=>{e={x:Math.abs(Math.round(t.pageX)-(G.current?.x??0)),y:Math.abs(Math.round(t.pageY)-(G.current?.y??0))}},n=n=>{e.x<=10&&e.y<=10?n.preventDefault():N.contains(n.target)||K(!1),document.removeEventListener("pointermove",t),G.current=null};return null!==G.current&&(document.addEventListener("pointermove",t),document.addEventListener("pointerup",n,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",t),document.removeEventListener("pointerup",n,{capture:!0})}}},[N,K,G]),n.useEffect(()=>{let e=()=>K(!1);return window.addEventListener("blur",e),window.addEventListener("resize",e),()=>{window.removeEventListener("blur",e),window.removeEventListener("resize",e)}},[K]);let[Z,Y]=eF(e=>{let t=H().filter(e=>!e.disabled),n=t.find(e=>e.ref.current===document.activeElement),a=eH(t,e,n);a&&setTimeout(()=>a.ref.current.focus())}),q=n.useCallback((e,t,n)=>{let a=!W.current&&!n;(void 0!==k.value&&k.value===t||a)&&(D(e),a&&(W.current=!0))},[k.value]),X=n.useCallback(()=>N?.focus(),[N]),J=n.useCallback((e,t,n)=>{let a=!W.current&&!n;(void 0!==k.value&&k.value===t||a)&&F(e)},[k.value]),Q="popper"===l?es:eo,$=Q===es?{side:d,sideOffset:c,align:u,alignOffset:p,arrowPadding:h,collisionBoundary:f,collisionPadding:v,sticky:x,hideWhenDetached:S,avoidCollisions:C}:{};return(0,t.jsx)(en,{scope:r,content:N,viewport:P,onViewportChange:M,itemRefCallback:q,selectedItem:E,onItemLeave:X,itemTextRefCallback:J,focusSelectedItem:z,selectedItemText:L,position:l,isPositioned:V,searchRef:Z,children:(0,t.jsx)(A.RemoveScroll,{as:er,allowPinchZoom:!0,children:(0,t.jsx)(y.FocusScope,{asChild:!0,trapped:k.open,onMountAutoFocus:e=>{e.preventDefault()},onUnmountAutoFocus:(0,m.composeEventHandlers)(o,e=>{k.trigger?.focus({preventScroll:!0}),e.preventDefault()}),children:(0,t.jsx)(w.DismissableLayer,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:s,onPointerDownOutside:i,onFocusOutside:e=>e.preventDefault(),onDismiss:()=>k.onOpenChange(!1),children:(0,t.jsx)(Q,{role:"listbox",id:k.contentId,"data-state":k.open?"open":"closed",dir:k.dir,onContextMenu:e=>e.preventDefault(),...j,...$,onPlaced:()=>O(!0),ref:T,style:{display:"flex",flexDirection:"column",outline:"none",...j.style},onKeyDown:(0,m.composeEventHandlers)(j.onKeyDown,e=>{let t=e.ctrlKey||e.altKey||e.metaKey;if("Tab"===e.key&&e.preventDefault(),t||1!==e.key.length||Y(e.key),["ArrowUp","ArrowDown","Home","End"].includes(e.key)){let t=H().filter(e=>!e.disabled).map(e=>e.ref.current);if(["ArrowUp","End"].includes(e.key)&&(t=t.slice().reverse()),["ArrowUp","ArrowDown"].includes(e.key)){let n=e.target,a=t.indexOf(n);t=t.slice(a+1)}setTimeout(()=>_(t)),e.preventDefault()}})})})})})})});el.displayName="SelectContentImpl";var eo=n.forwardRef((e,a)=>{let{__scopeSelect:r,onPlaced:l,...o}=e,s=U(ee,r),i=ea(ee,r),[d,c]=n.useState(null),[u,p]=n.useState(null),m=(0,g.useComposedRefs)(a,e=>p(e)),f=B(r),v=n.useRef(!1),x=n.useRef(!0),{viewport:w,selectedItem:b,selectedItemText:y,focusSelectedItem:S}=i,C=n.useCallback(()=>{if(s.trigger&&s.valueNode&&d&&u&&w&&b&&y){let e=s.trigger.getBoundingClientRect(),t=u.getBoundingClientRect(),n=s.valueNode.getBoundingClientRect(),a=y.getBoundingClientRect();if("rtl"!==s.dir){let r=a.left-t.left,l=n.left-r,o=e.left-l,s=e.width+o,i=Math.max(s,t.width),c=window.innerWidth-10,u=(0,h.clamp)(l,[10,Math.max(10,c-i)]);d.style.minWidth=s+"px",d.style.left=u+"px"}else{let r=t.right-a.right,l=window.innerWidth-n.right-r,o=window.innerWidth-e.right-l,s=e.width+o,i=Math.max(s,t.width),c=window.innerWidth-10,u=(0,h.clamp)(l,[10,Math.max(10,c-i)]);d.style.minWidth=s+"px",d.style.right=u+"px"}let r=f(),o=window.innerHeight-20,i=w.scrollHeight,c=window.getComputedStyle(u),p=parseInt(c.borderTopWidth,10),m=parseInt(c.paddingTop,10),g=parseInt(c.borderBottomWidth,10),x=p+m+i+parseInt(c.paddingBottom,10)+g,S=Math.min(5*b.offsetHeight,x),C=window.getComputedStyle(w),j=parseInt(C.paddingTop,10),k=parseInt(C.paddingBottom,10),N=e.top+e.height/2-10,I=b.offsetHeight/2,P=p+m+(b.offsetTop+I);if(P<=N){let e=r.length>0&&b===r[r.length-1].ref.current;d.style.bottom="0px";let t=Math.max(o-N,I+(e?k:0)+(u.clientHeight-w.offsetTop-w.offsetHeight)+g);d.style.height=P+t+"px"}else{let e=r.length>0&&b===r[0].ref.current;d.style.top="0px";let t=Math.max(N,p+w.offsetTop+(e?j:0)+I);d.style.height=t+(x-P)+"px",w.scrollTop=P-N+w.offsetTop}d.style.margin="10px 0",d.style.minHeight=S+"px",d.style.maxHeight=o+"px",l?.(),requestAnimationFrame(()=>v.current=!0)}},[f,s.trigger,s.valueNode,d,u,w,b,y,s.dir,l]);(0,M.useLayoutEffect)(()=>C(),[C]);let[j,N]=n.useState();(0,M.useLayoutEffect)(()=>{u&&N(window.getComputedStyle(u).zIndex)},[u]);let I=n.useCallback(e=>{e&&!0===x.current&&(C(),S?.(),x.current=!1)},[C,S]);return(0,t.jsx)(ei,{scope:r,contentWrapper:d,shouldExpandOnScrollRef:v,onScrollButtonChange:I,children:(0,t.jsx)("div",{ref:c,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:j},children:(0,t.jsx)(k.Primitive.div,{...o,ref:m,style:{boxSizing:"border-box",maxHeight:"100%",...o.style}})})})});eo.displayName="SelectItemAlignedPosition";var es=n.forwardRef((e,n)=>{let{__scopeSelect:a,align:r="start",collisionPadding:l=10,...o}=e,s=_(a);return(0,t.jsx)(C.Content,{...s,...o,ref:n,align:r,collisionPadding:l,style:{boxSizing:"border-box",...o.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});es.displayName="SelectPopperPosition";var[ei,ed]=O(ee,{}),ec="SelectViewport",eu=n.forwardRef((e,a)=>{let{__scopeSelect:r,nonce:l,...o}=e,s=ea(ec,r),i=ed(ec,r),d=(0,g.useComposedRefs)(a,s.onViewportChange),c=n.useRef(0);return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:l}),(0,t.jsx)(H.Slot,{scope:r,children:(0,t.jsx)(k.Primitive.div,{"data-radix-select-viewport":"",role:"presentation",...o,ref:d,style:{position:"relative",flex:1,overflow:"hidden auto",...o.style},onScroll:(0,m.composeEventHandlers)(o.onScroll,e=>{let t=e.currentTarget,{contentWrapper:n,shouldExpandOnScrollRef:a}=i;if(a?.current&&n){let e=Math.abs(c.current-t.scrollTop);if(e>0){let a=window.innerHeight-20,r=Math.max(parseFloat(n.style.minHeight),parseFloat(n.style.height));if(r<a){let l=r+e,o=Math.min(a,l),s=l-o;n.style.height=o+"px","0px"===n.style.bottom&&(t.scrollTop=s>0?s:0,n.style.justifyContent="flex-end")}}}c.current=t.scrollTop})})})]})});eu.displayName=ec;var ep="SelectGroup",[eh,em]=O(ep),ef=n.forwardRef((e,n)=>{let{__scopeSelect:a,...r}=e,l=(0,S.useId)();return(0,t.jsx)(eh,{scope:a,id:l,children:(0,t.jsx)(k.Primitive.div,{role:"group","aria-labelledby":l,...r,ref:n})})});ef.displayName=ep;var eg="SelectLabel",ev=n.forwardRef((e,n)=>{let{__scopeSelect:a,...r}=e,l=em(eg,a);return(0,t.jsx)(k.Primitive.div,{id:l.id,...r,ref:n})});ev.displayName=eg;var ex="SelectItem",[ew,eb]=O(ex),ey=n.forwardRef((e,a)=>{let{__scopeSelect:r,value:l,disabled:o=!1,textValue:s,...i}=e,d=U(ex,r),c=ea(ex,r),u=d.value===l,[p,h]=n.useState(s??""),[f,v]=n.useState(!1),x=(0,g.useComposedRefs)(a,e=>c.itemRefCallback?.(e,l,o)),w=(0,S.useId)(),b=n.useRef("touch"),y=()=>{o||(d.onValueChange(l),d.onOpenChange(!1))};if(""===l)throw Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return(0,t.jsx)(ew,{scope:r,value:l,disabled:o,textId:w,isSelected:u,onItemTextChange:n.useCallback(e=>{h(t=>t||(e?.textContent??"").trim())},[]),children:(0,t.jsx)(H.ItemSlot,{scope:r,value:l,disabled:o,textValue:p,children:(0,t.jsx)(k.Primitive.div,{role:"option","aria-labelledby":w,"data-highlighted":f?"":void 0,"aria-selected":u&&f,"data-state":u?"checked":"unchecked","aria-disabled":o||void 0,"data-disabled":o?"":void 0,tabIndex:o?void 0:-1,...i,ref:x,onFocus:(0,m.composeEventHandlers)(i.onFocus,()=>v(!0)),onBlur:(0,m.composeEventHandlers)(i.onBlur,()=>v(!1)),onClick:(0,m.composeEventHandlers)(i.onClick,()=>{"mouse"!==b.current&&y()}),onPointerUp:(0,m.composeEventHandlers)(i.onPointerUp,()=>{"mouse"===b.current&&y()}),onPointerDown:(0,m.composeEventHandlers)(i.onPointerDown,e=>{b.current=e.pointerType}),onPointerMove:(0,m.composeEventHandlers)(i.onPointerMove,e=>{b.current=e.pointerType,o?c.onItemLeave?.():"mouse"===b.current&&e.currentTarget.focus({preventScroll:!0})}),onPointerLeave:(0,m.composeEventHandlers)(i.onPointerLeave,e=>{e.currentTarget===document.activeElement&&c.onItemLeave?.()}),onKeyDown:(0,m.composeEventHandlers)(i.onKeyDown,e=>{(c.searchRef?.current===""||" "!==e.key)&&(L.includes(e.key)&&y()," "===e.key&&e.preventDefault())})})})})});ey.displayName=ex;var eS="SelectItemText",eC=n.forwardRef((e,a)=>{let{__scopeSelect:r,className:l,style:o,...s}=e,i=U(eS,r),d=ea(eS,r),c=eb(eS,r),u=G(eS,r),[h,m]=n.useState(null),f=(0,g.useComposedRefs)(a,e=>m(e),c.onItemTextChange,e=>d.itemTextRefCallback?.(e,c.value,c.disabled)),v=h?.textContent,x=n.useMemo(()=>(0,t.jsx)("option",{value:c.value,disabled:c.disabled,children:v},c.value),[c.disabled,c.value,v]),{onNativeOptionAdd:w,onNativeOptionRemove:b}=u;return(0,M.useLayoutEffect)(()=>(w(x),()=>b(x)),[w,b,x]),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(k.Primitive.span,{id:c.textId,...s,ref:f}),c.isSelected&&i.valueNode&&!i.valueNodeHasChildren?p.createPortal(s.children,i.valueNode):null]})});eC.displayName=eS;var ej="SelectItemIndicator",ek=n.forwardRef((e,n)=>{let{__scopeSelect:a,...r}=e;return eb(ej,a).isSelected?(0,t.jsx)(k.Primitive.span,{"aria-hidden":!0,...r,ref:n}):null});ek.displayName=ej;var eN="SelectScrollUpButton",eI=n.forwardRef((e,a)=>{let r=ea(eN,e.__scopeSelect),l=ed(eN,e.__scopeSelect),[o,s]=n.useState(!1),i=(0,g.useComposedRefs)(a,l.onScrollButtonChange);return(0,M.useLayoutEffect)(()=>{if(r.viewport&&r.isPositioned){let e=function(){s(t.scrollTop>0)},t=r.viewport;return e(),t.addEventListener("scroll",e),()=>t.removeEventListener("scroll",e)}},[r.viewport,r.isPositioned]),o?(0,t.jsx)(eT,{...e,ref:i,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=r;e&&t&&(e.scrollTop=e.scrollTop-t.offsetHeight)}}):null});eI.displayName=eN;var eP="SelectScrollDownButton",eM=n.forwardRef((e,a)=>{let r=ea(eP,e.__scopeSelect),l=ed(eP,e.__scopeSelect),[o,s]=n.useState(!1),i=(0,g.useComposedRefs)(a,l.onScrollButtonChange);return(0,M.useLayoutEffect)(()=>{if(r.viewport&&r.isPositioned){let e=function(){let e=t.scrollHeight-t.clientHeight;s(Math.ceil(t.scrollTop)<e)},t=r.viewport;return e(),t.addEventListener("scroll",e),()=>t.removeEventListener("scroll",e)}},[r.viewport,r.isPositioned]),o?(0,t.jsx)(eT,{...e,ref:i,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=r;e&&t&&(e.scrollTop=e.scrollTop+t.offsetHeight)}}):null});eM.displayName=eP;var eT=n.forwardRef((e,a)=>{let{__scopeSelect:r,onAutoScroll:l,...o}=e,s=ea("SelectScrollButton",r),i=n.useRef(null),d=B(r),c=n.useCallback(()=>{null!==i.current&&(window.clearInterval(i.current),i.current=null)},[]);return n.useEffect(()=>()=>c(),[c]),(0,M.useLayoutEffect)(()=>{let e=d().find(e=>e.ref.current===document.activeElement);e?.ref.current?.scrollIntoView({block:"nearest"})},[d]),(0,t.jsx)(k.Primitive.div,{"aria-hidden":!0,...o,ref:a,style:{flexShrink:0,...o.style},onPointerDown:(0,m.composeEventHandlers)(o.onPointerDown,()=>{null===i.current&&(i.current=window.setInterval(l,50))}),onPointerMove:(0,m.composeEventHandlers)(o.onPointerMove,()=>{s.onItemLeave?.(),null===i.current&&(i.current=window.setInterval(l,50))}),onPointerLeave:(0,m.composeEventHandlers)(o.onPointerLeave,()=>{c()})})}),eE=n.forwardRef((e,n)=>{let{__scopeSelect:a,...r}=e;return(0,t.jsx)(k.Primitive.div,{"aria-hidden":!0,...r,ref:n})});eE.displayName="SelectSeparator";var eR="SelectArrow",eA=n.forwardRef((e,n)=>{let{__scopeSelect:a,...r}=e,l=_(a),o=U(eR,a),s=ea(eR,a);return o.open&&"popper"===s.position?(0,t.jsx)(C.Arrow,{...l,...r,ref:n}):null});eA.displayName=eR;var eD=n.forwardRef(({__scopeSelect:e,value:a,...r},l)=>{let o=n.useRef(null),s=(0,g.useComposedRefs)(l,o),i=(0,T.usePrevious)(a);return n.useEffect(()=>{let e=o.current;if(!e)return;let t=Object.getOwnPropertyDescriptor(window.HTMLSelectElement.prototype,"value").set;if(i!==a&&t){let n=new Event("change",{bubbles:!0});t.call(e,a),e.dispatchEvent(n)}},[i,a]),(0,t.jsx)(k.Primitive.select,{...r,style:{...E.VISUALLY_HIDDEN_STYLES,...r.style},ref:s,defaultValue:a})});function eL(e){return""===e||void 0===e}function eF(e){let t=(0,I.useCallbackRef)(e),a=n.useRef(""),r=n.useRef(0),l=n.useCallback(e=>{let n=a.current+e;t(n),function e(t){a.current=t,window.clearTimeout(r.current),""!==t&&(r.current=window.setTimeout(()=>e(""),1e3))}(n)},[t]),o=n.useCallback(()=>{a.current="",window.clearTimeout(r.current)},[]);return n.useEffect(()=>()=>window.clearTimeout(r.current),[]),[a,l,o]}function eH(e,t,n){var a,r;let l=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,o=n?e.indexOf(n):-1,s=(a=e,r=Math.max(o,0),a.map((e,t)=>a[(r+t)%a.length]));1===l.length&&(s=s.filter(e=>e!==n));let i=s.find(e=>e.textValue.toLowerCase().startsWith(l.toLowerCase()));return i!==n?i:void 0}eD.displayName="SelectBubbleInput",e.s(["Arrow",()=>eA,"Content",()=>et,"Group",()=>ef,"Icon",()=>Q,"Item",()=>ey,"ItemIndicator",()=>ek,"ItemText",()=>eC,"Label",()=>ev,"Portal",()=>$,"Root",()=>Z,"ScrollDownButton",()=>eM,"ScrollUpButton",()=>eI,"Select",()=>Z,"SelectArrow",()=>eA,"SelectContent",()=>et,"SelectGroup",()=>ef,"SelectIcon",()=>Q,"SelectItem",()=>ey,"SelectItemIndicator",()=>ek,"SelectItemText",()=>eC,"SelectLabel",()=>ev,"SelectPortal",()=>$,"SelectScrollDownButton",()=>eM,"SelectScrollUpButton",()=>eI,"SelectSeparator",()=>eE,"SelectTrigger",()=>q,"SelectValue",()=>J,"SelectViewport",()=>eu,"Separator",()=>eE,"Trigger",()=>q,"Value",()=>J,"Viewport",()=>eu,"createSelectScope",()=>W],83830);var eB=e.i(83830),eB=eB,eV=e.i(99105);let eO=(0,a.default)("chevron-up",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]);var eW=e.i(31777);let e_=eB.Root;eB.Group;let ez=eB.Value,eU=n.forwardRef(({className:e,children:n,...a},r)=>(0,t.jsxs)(eB.Trigger,{ref:r,className:(0,eW.cn)("border-input ring-offset-background placeholder:text-muted-foreground focus:ring-ring flex h-9 w-full items-center justify-between rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-sm focus:ring-1 focus:outline-none disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",e),...a,children:[n,(0,t.jsx)(eB.Icon,{asChild:!0,children:(0,t.jsx)(eV.ChevronDown,{className:"h-4 w-4 opacity-50"})})]}));eU.displayName=eB.Trigger.displayName;let eK=n.forwardRef(({className:e,...n},a)=>(0,t.jsx)(eB.ScrollUpButton,{ref:a,className:(0,eW.cn)("flex cursor-default items-center justify-center py-1",e),...n,children:(0,t.jsx)(eO,{className:"h-4 w-4"})}));eK.displayName=eB.ScrollUpButton.displayName;let eG=n.forwardRef(({className:e,...n},a)=>(0,t.jsx)(eB.ScrollDownButton,{ref:a,className:(0,eW.cn)("flex cursor-default items-center justify-center py-1",e),...n,children:(0,t.jsx)(eV.ChevronDown,{className:"h-4 w-4"})}));eG.displayName=eB.ScrollDownButton.displayName;let eZ=n.forwardRef(({className:e,children:n,position:a="popper",...r},l)=>(0,t.jsx)(eB.Portal,{children:(0,t.jsxs)(eB.Content,{ref:l,className:(0,eW.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-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 relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border shadow-md","popper"===a&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:a,...r,children:[(0,t.jsx)(eK,{}),(0,t.jsx)(eB.Viewport,{className:(0,eW.cn)("p-1","popper"===a&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:n}),(0,t.jsx)(eG,{})]})}));eZ.displayName=eB.Content.displayName,n.forwardRef(({className:e,...n},a)=>(0,t.jsx)(eB.Label,{ref:a,className:(0,eW.cn)("px-2 py-1.5 text-sm font-semibold",e),...n})).displayName=eB.Label.displayName;let eY=n.forwardRef(({className:e,children:n,...a},r)=>(0,t.jsxs)(eB.Item,{ref:r,className:(0,eW.cn)("focus:bg-accent focus:text-accent-foreground relative flex w-full cursor-default items-center rounded-sm py-1.5 pr-8 pl-2 text-sm outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...a,children:[(0,t.jsx)("span",{className:"absolute right-2 flex h-3.5 w-3.5 items-center justify-center",children:(0,t.jsx)(eB.ItemIndicator,{children:(0,t.jsx)(o.Check,{className:"h-4 w-4"})})}),(0,t.jsx)(eB.ItemText,{children:n})]}));eY.displayName=eB.Item.displayName,n.forwardRef(({className:e,...n},a)=>(0,t.jsx)(eB.Separator,{ref:a,className:(0,eW.cn)("bg-muted -mx-1 my-1 h-px",e),...n})).displayName=eB.Separator.displayName;var eq=e.i(21023);let eX=(0,eq.createServerReference)("40c758061728f0c57ed3342fae931f690491f58919",eq.callServer,void 0,eq.findSourceMapURL,"updateSettingsAction");var eJ=e.i(17406),eQ=e.i(98804),e$=e.i(93752),e$=e$,e0=e.i(83902);function e1(e){return(0,t.jsx)(e$.default,{className:(0,eW.cn)("h-4 w-4",e.className),...e})}function e2({className:e}){return(0,t.jsx)(eQ.default,{src:"/icons/editors/vscode.svg",alt:"VS Code",width:24,height:24,className:(0,eW.cn)("rounded-sm object-contain",e)})}function e4({className:e}){return(0,t.jsx)(eQ.default,{src:"/icons/agents/cursor.jpeg",alt:"Cursor",width:24,height:24,className:(0,eW.cn)("rounded-sm object-contain",e)})}function e5({className:e}){return(0,t.jsx)(eQ.default,{src:"/icons/editors/windsurf.svg",alt:"Windsurf",width:24,height:24,className:(0,eW.cn)("rounded-sm object-contain",e)})}function e3({className:e}){return(0,t.jsx)(eQ.default,{src:"/icons/editors/zed.svg",alt:"Zed",width:24,height:24,className:(0,eW.cn)("rounded-sm object-contain",e)})}function e7({className:e,...n}){return(0,t.jsx)(e0.Rocket,{className:(0,eW.cn)("h-4 w-4",e),...n})}e2.displayName="VsCodeIcon",e4.displayName="CursorEditorIcon",e5.displayName="WindsurfIcon",e3.displayName="ZedIcon",e7.displayName="AntigravityIcon";let e9={vscode:e2,cursor:e4,windsurf:e5,zed:e3,antigravity:e7};var e6=e.i(41413);let e8=[{value:eJ.AgentAuthMethod.Session,label:"Session"},{value:eJ.AgentAuthMethod.Token,label:"Token"}],te=[{value:eJ.EditorType.VsCode,label:"VS Code"},{value:eJ.EditorType.Cursor,label:"Cursor"},{value:eJ.EditorType.Windsurf,label:"Windsurf"},{value:eJ.EditorType.Zed,label:"Zed"},{value:eJ.EditorType.Antigravity,label:"Antigravity"}];function tt({label:e,htmlFor:n,children:a}){return(0,t.jsxs)("div",{className:"flex items-center justify-between gap-4 border-b py-3 last:border-b-0",children:[(0,t.jsx)(i.Label,{htmlFor:n,className:"cursor-pointer text-sm font-normal whitespace-nowrap",children:e}),(0,t.jsx)("div",{className:"flex items-center gap-2",children:a})]})}function tn({label:e,id:n,testId:a,value:r,options:l,onChange:o}){return(0,t.jsx)(tt,{label:e,htmlFor:n,children:(0,t.jsxs)(e_,{value:r,onValueChange:o,children:[(0,t.jsx)(eU,{id:n,"data-testid":a,className:"w-45 cursor-pointer",children:(0,t.jsx)(ez,{})}),(0,t.jsx)(eZ,{children:l.map(e=>(0,t.jsx)(eY,{value:e.value,children:e.label},e.value))})]})})}function ta({label:e,id:n,testId:a,checked:r,onChange:l}){return(0,t.jsx)(tt,{label:e,htmlFor:n,children:(0,t.jsx)(u.Switch,{id:n,"data-testid":a,checked:r,onCheckedChange:l,className:"cursor-pointer"})})}function tr({settings:e,shepHome:a,dbFileSize:i}){let{isPending:u,showSaved:p,save:h}=function(){let[e,t]=(0,n.useTransition)(),[a,r]=(0,n.useState)(!1),l=(0,n.useRef)(!1);return(0,n.useEffect)(()=>{if(l.current&&!e){r(!0);let e=setTimeout(()=>r(!1),2e3);return()=>clearTimeout(e)}l.current=e},[e]),{isPending:e,showSaved:a,save:(0,n.useCallback)(e=>{t(async()=>{let t=await eX(e);t.success||s.toast.error(t.error??"Failed to save settings")})},[t])}}(),m=e.featureFlags??{skills:!1,envDeploy:!1,debug:!1},[f,g]=(0,n.useState)(e.agent.type),[v,x]=(0,n.useState)(e.agent.authMethod),[w,b]=(0,n.useState)(e.agent.token??""),[y,S]=(0,n.useState)(!1),[C,j]=(0,n.useState)(e.environment.defaultEditor),k=e.environment.shellPreference,[N,I]=(0,n.useState)(e.workflow.openPrOnImplementationComplete),[P,M]=(0,n.useState)(e.workflow.approvalGateDefaults.pushOnImplementationComplete),[T,E]=(0,n.useState)(e.workflow.approvalGateDefaults.allowPrd),[R,A]=(0,n.useState)(e.workflow.approvalGateDefaults.allowPlan),[D,L]=(0,n.useState)(e.workflow.approvalGateDefaults.allowMerge),[F,H]=(0,n.useState)(null!=e.workflow.ciMaxFixAttempts?String(e.workflow.ciMaxFixAttempts):""),[B,V]=(0,n.useState)(null!=e.workflow.ciWatchTimeoutMs?String(Math.round(e.workflow.ciWatchTimeoutMs/1e3)):""),[O,W]=(0,n.useState)(null!=e.workflow.ciLogMaxChars?String(e.workflow.ciLogMaxChars):""),[_,z]=(0,n.useState)(e.notifications.inApp.enabled),[U,K]=(0,n.useState)(e.notifications.browser.enabled),[G,Z]=(0,n.useState)(e.notifications.desktop.enabled),[Y,q]=(0,n.useState)({...e.notifications.events}),[X,J]=(0,n.useState)({...m}),Q=null!=e.workflow.ciMaxFixAttempts?String(e.workflow.ciMaxFixAttempts):"",$=null!=e.workflow.ciWatchTimeoutMs?String(Math.round(e.workflow.ciWatchTimeoutMs/1e3)):"",ee=null!=e.workflow.ciLogMaxChars?String(e.workflow.ciLogMaxChars):"";function et(e){if(""===e)return;let t=parseInt(e,10);return Number.isNaN(t)||t<=0?void 0:t}function en(e={}){let t={type:f,authMethod:v,...e},n={type:t.type,authMethod:t.authMethod};return t.authMethod===eJ.AgentAuthMethod.Token&&(n.token=e.token??w),{agent:n}}function ea(e={}){let t=et(e.ciTimeout??B);return{workflow:{openPrOnImplementationComplete:e.openPr??N,approvalGateDefaults:{pushOnImplementationComplete:e.pushOnComplete??P,allowPrd:e.allowPrd??T,allowPlan:e.allowPlan??R,allowMerge:e.allowMerge??D},ciMaxFixAttempts:et(e.ciMaxFix??F),ciWatchTimeoutMs:null!=t?1e3*t:void 0,ciLogMaxChars:et(e.ciLogMax??O)}}}function er(e={}){return{notifications:{inApp:{enabled:e.inApp??_},browser:{enabled:e.browser??U},desktop:{enabled:e.desktop??G},events:e.events??Y}}}return(0,t.jsxs)("div",{"data-testid":"settings-page-client",className:"max-w-lg",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between border-b pb-3",children:[(0,t.jsx)("h1",{className:"text-sm font-bold tracking-tight",children:"Settings"}),u?(0,t.jsx)("span",{className:"text-muted-foreground text-xs",children:"Saving..."}):null,p&&!u?(0,t.jsxs)("span",{className:"flex items-center gap-1 text-xs text-green-600",children:[(0,t.jsx)(o.Check,{className:"h-3 w-3"}),"Saved"]}):null]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-muted-foreground mt-6 mb-1 text-xs font-medium tracking-wide uppercase","data-testid":"agent-settings-section",children:"Agent"}),(0,t.jsx)(tt,{label:"Agent & Model",htmlFor:"agent-model-picker",children:(0,t.jsx)(e6.AgentModelPicker,{initialAgentType:f,initialModel:e.models.default,mode:"settings",onAgentModelChange:e=>g(e),className:"w-45"})}),(0,t.jsx)(tn,{label:"Authentication",id:"auth-method",testId:"auth-method-select",value:v,options:e8,onChange:e=>{x(e),h(en({authMethod:e}))}}),v===eJ.AgentAuthMethod.Token&&(0,t.jsx)(tt,{label:"API Token",htmlFor:"agent-token",children:(0,t.jsxs)("div",{className:"relative w-45",children:[(0,t.jsx)(d.Input,{id:"agent-token","data-testid":"agent-token-input",type:y?"text":"password",value:w,onChange:e=>b(e.target.value),onBlur:()=>{w!==(e.agent.token??"")&&h(en({token:w}))},placeholder:"Enter token",className:"pr-8"}),(0,t.jsx)(c.Button,{type:"button",variant:"ghost",size:"sm",className:"absolute top-0 right-0 h-full px-2 hover:bg-transparent",onClick:()=>S(!y),"data-testid":"toggle-token-visibility","aria-label":y?"Hide token":"Show token",children:y?(0,t.jsx)(l,{className:"h-3 w-3"}):(0,t.jsx)(r,{className:"h-3 w-3"})})]})}),(0,t.jsx)("h2",{className:"text-muted-foreground mt-6 mb-1 text-xs font-medium tracking-wide uppercase","data-testid":"environment-settings-section",children:"Environment"}),(0,t.jsx)(tt,{label:"Editor",htmlFor:"default-editor",children:(0,t.jsxs)(e_,{value:C,onValueChange:e=>{j(e),h({environment:{defaultEditor:e,shellPreference:k}})},children:[(0,t.jsx)(eU,{id:"default-editor","data-testid":"editor-select",className:"w-45 cursor-pointer",children:(0,t.jsx)(ez,{})}),(0,t.jsx)(eZ,{children:te.map(e=>{var n;let a=(n=e.value)&&n in e9?e9[n]:e1;return(0,t.jsx)(eY,{value:e.value,children:(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[(0,t.jsx)(a,{className:"h-4 w-4 shrink-0"}),e.label]})},e.value)})})]})}),(0,t.jsx)("h2",{className:"text-muted-foreground mt-6 mb-1 text-xs font-medium tracking-wide uppercase","data-testid":"workflow-settings-section",children:"Workflow"}),(0,t.jsx)(ta,{label:"Open PR on complete",id:"open-pr",testId:"switch-open-pr",checked:N,onChange:e=>{I(e),h(ea({openPr:e}))}}),(0,t.jsx)(ta,{label:"Push on complete",id:"push-on-complete",testId:"switch-push-on-complete",checked:P,onChange:e=>{M(e),h(ea({pushOnComplete:e}))}}),(0,t.jsx)(ta,{label:"Auto-approve PRD",id:"allow-prd",testId:"switch-allow-prd",checked:T,onChange:e=>{E(e),h(ea({allowPrd:e}))}}),(0,t.jsx)(ta,{label:"Auto-approve Plan",id:"allow-plan",testId:"switch-allow-plan",checked:R,onChange:e=>{A(e),h(ea({allowPlan:e}))}}),(0,t.jsx)(ta,{label:"Auto-approve Merge",id:"allow-merge",testId:"switch-allow-merge",checked:D,onChange:e=>{L(e),h(ea({allowMerge:e}))}}),(0,t.jsx)("h2",{className:"text-muted-foreground mt-6 mb-1 text-xs font-medium tracking-wide uppercase","data-testid":"ci-settings-section",children:"CI"}),(0,t.jsx)(tt,{label:"Max fix attempts",htmlFor:"ci-max-fix",children:(0,t.jsx)(d.Input,{id:"ci-max-fix","data-testid":"ci-max-fix-input",type:"text",inputMode:"numeric",pattern:"[0-9]*",placeholder:"3",value:F,onChange:e=>H(e.target.value),onBlur:()=>{F!==Q&&h(ea({ciMaxFix:F}))},className:"w-20"})}),(0,t.jsx)(tt,{label:"Watch timeout (s)",htmlFor:"ci-timeout",children:(0,t.jsx)(d.Input,{id:"ci-timeout","data-testid":"ci-timeout-input",type:"text",inputMode:"numeric",pattern:"[0-9]*",placeholder:"300",value:B,onChange:e=>V(e.target.value),onBlur:()=>{B!==$&&h(ea({ciTimeout:B}))},className:"w-20"})}),(0,t.jsx)(tt,{label:"Max log chars",htmlFor:"ci-log-max",children:(0,t.jsx)(d.Input,{id:"ci-log-max","data-testid":"ci-log-max-input",type:"text",inputMode:"numeric",pattern:"[0-9]*",placeholder:"50000",value:O,onChange:e=>W(e.target.value),onBlur:()=>{O!==ee&&h(ea({ciLogMax:O}))},className:"w-20"})}),(0,t.jsx)("h2",{className:"text-muted-foreground mt-6 mb-1 text-xs font-medium tracking-wide uppercase","data-testid":"notification-settings-section",children:"Notifications"}),(0,t.jsx)(ta,{label:"In-app",id:"notif-in-app",testId:"switch-in-app",checked:_,onChange:e=>{z(e),h(er({inApp:e}))}}),(0,t.jsx)(ta,{label:"Browser",id:"notif-browser",testId:"switch-browser",checked:U,onChange:e=>{K(e),h(er({browser:e}))}}),(0,t.jsx)(ta,{label:"Desktop",id:"notif-desktop",testId:"switch-desktop",checked:G,onChange:e=>{Z(e),h(er({desktop:e}))}}),(0,t.jsx)(ta,{label:"Agent started",id:"notif-event-agentStarted",testId:"switch-event-agentStarted",checked:Y.agentStarted,onChange:e=>{let t={...Y,agentStarted:e};q(t),h(er({events:t}))}}),(0,t.jsx)(ta,{label:"Phase completed",id:"notif-event-phaseCompleted",testId:"switch-event-phaseCompleted",checked:Y.phaseCompleted,onChange:e=>{let t={...Y,phaseCompleted:e};q(t),h(er({events:t}))}}),(0,t.jsx)(ta,{label:"Waiting approval",id:"notif-event-waitingApproval",testId:"switch-event-waitingApproval",checked:Y.waitingApproval,onChange:e=>{let t={...Y,waitingApproval:e};q(t),h(er({events:t}))}}),(0,t.jsx)(ta,{label:"Agent completed",id:"notif-event-agentCompleted",testId:"switch-event-agentCompleted",checked:Y.agentCompleted,onChange:e=>{let t={...Y,agentCompleted:e};q(t),h(er({events:t}))}}),(0,t.jsx)(ta,{label:"Agent failed",id:"notif-event-agentFailed",testId:"switch-event-agentFailed",checked:Y.agentFailed,onChange:e=>{let t={...Y,agentFailed:e};q(t),h(er({events:t}))}}),(0,t.jsx)(ta,{label:"PR merged",id:"notif-event-prMerged",testId:"switch-event-prMerged",checked:Y.prMerged,onChange:e=>{let t={...Y,prMerged:e};q(t),h(er({events:t}))}}),(0,t.jsx)(ta,{label:"PR closed",id:"notif-event-prClosed",testId:"switch-event-prClosed",checked:Y.prClosed,onChange:e=>{let t={...Y,prClosed:e};q(t),h(er({events:t}))}}),(0,t.jsx)(ta,{label:"PR checks passed",id:"notif-event-prChecksPassed",testId:"switch-event-prChecksPassed",checked:Y.prChecksPassed,onChange:e=>{let t={...Y,prChecksPassed:e};q(t),h(er({events:t}))}}),(0,t.jsx)(ta,{label:"PR checks failed",id:"notif-event-prChecksFailed",testId:"switch-event-prChecksFailed",checked:Y.prChecksFailed,onChange:e=>{let t={...Y,prChecksFailed:e};q(t),h(er({events:t}))}}),(0,t.jsx)("h2",{className:"text-muted-foreground mt-6 mb-1 text-xs font-medium tracking-wide uppercase","data-testid":"feature-flags-settings-section",children:"Feature Flags"}),(0,t.jsx)(ta,{label:"Skills",id:"flag-skills",testId:"switch-flag-skills",checked:X.skills,onChange:e=>{let t={...X,skills:e};J(t),h({featureFlags:t})}}),(0,t.jsx)(ta,{label:"Deployments",id:"flag-envDeploy",testId:"switch-flag-envDeploy",checked:X.envDeploy,onChange:e=>{let t={...X,envDeploy:e};J(t),h({featureFlags:t})}}),(0,t.jsx)(ta,{label:"Debug",id:"flag-debug",testId:"switch-flag-debug",checked:X.debug,onChange:e=>{let t={...X,debug:e};J(t),h({featureFlags:t})}}),(0,t.jsx)("h2",{className:"text-muted-foreground mt-6 mb-1 text-xs font-medium tracking-wide uppercase","data-testid":"database-settings-section",children:"Database"}),(0,t.jsx)(tt,{label:"Location",children:(0,t.jsx)("span",{className:"text-muted-foreground max-w-50 truncate font-mono text-xs","data-testid":"shep-home-path",children:a})}),(0,t.jsx)(tt,{label:"Size",children:(0,t.jsx)("span",{className:"text-muted-foreground text-xs","data-testid":"db-file-size",children:i})})]})]})}e.s(["SettingsPageClient",()=>tr],41952)}]);
|