@shepai/cli 1.122.2-pr390.b1ef40f → 1.122.2-pr394.a603264
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/packages/core/src/application/ports/output/repositories/feature-repository.interface.d.ts +11 -0
- package/dist/packages/core/src/application/ports/output/repositories/feature-repository.interface.d.ts.map +1 -1
- package/dist/packages/core/src/application/ports/output/services/worktree-service.interface.d.ts +15 -0
- package/dist/packages/core/src/application/ports/output/services/worktree-service.interface.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/features/adopt-branch.use-case.d.ts +40 -0
- package/dist/packages/core/src/application/use-cases/features/adopt-branch.use-case.d.ts.map +1 -0
- package/dist/packages/core/src/application/use-cases/features/adopt-branch.use-case.js +146 -0
- package/dist/packages/core/src/application/use-cases/features/branch-name-utils.d.ts +33 -0
- package/dist/packages/core/src/application/use-cases/features/branch-name-utils.d.ts.map +1 -0
- package/dist/packages/core/src/application/use-cases/features/branch-name-utils.js +77 -0
- package/dist/packages/core/src/infrastructure/di/container.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/di/container.js +5 -0
- package/dist/packages/core/src/infrastructure/repositories/sqlite-feature.repository.d.ts +1 -0
- package/dist/packages/core/src/infrastructure/repositories/sqlite-feature.repository.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/repositories/sqlite-feature.repository.js +8 -0
- package/dist/packages/core/src/infrastructure/services/git/worktree.service.d.ts +1 -0
- package/dist/packages/core/src/infrastructure/services/git/worktree.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/git/worktree.service.js +15 -0
- package/dist/src/presentation/cli/commands/feat/adopt.command.d.ts +14 -0
- package/dist/src/presentation/cli/commands/feat/adopt.command.d.ts.map +1 -0
- package/dist/src/presentation/cli/commands/feat/adopt.command.js +43 -0
- package/dist/src/presentation/cli/commands/feat/index.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/feat/index.js +3 -1
- package/dist/src/presentation/web/app/(dashboard)/@drawer/adopt/page.d.ts +10 -0
- package/dist/src/presentation/web/app/(dashboard)/@drawer/adopt/page.d.ts.map +1 -0
- package/dist/src/presentation/web/app/(dashboard)/@drawer/adopt/page.js +22 -0
- package/dist/src/presentation/web/app/(dashboard)/get-graph-data.d.ts +0 -6
- package/dist/src/presentation/web/app/(dashboard)/get-graph-data.d.ts.map +1 -1
- package/dist/src/presentation/web/app/(dashboard)/get-graph-data.js +0 -60
- package/dist/src/presentation/web/app/actions/adopt-branch.d.ts +11 -0
- package/dist/src/presentation/web/app/actions/adopt-branch.d.ts.map +1 -0
- package/dist/src/presentation/web/app/actions/adopt-branch.js +20 -0
- package/dist/src/presentation/web/app/build-graph-nodes.d.ts +0 -7
- package/dist/src/presentation/web/app/build-graph-nodes.d.ts.map +1 -1
- package/dist/src/presentation/web/app/build-graph-nodes.js +0 -7
- package/dist/src/presentation/web/components/common/control-center-drawer/adopt-branch-drawer.d.ts +9 -0
- package/dist/src/presentation/web/components/common/control-center-drawer/adopt-branch-drawer.d.ts.map +1 -0
- package/dist/src/presentation/web/components/common/control-center-drawer/adopt-branch-drawer.js +27 -0
- package/dist/src/presentation/web/components/common/control-center-drawer/adopt-branch-drawer.stories.d.ts +32 -0
- package/dist/src/presentation/web/components/common/control-center-drawer/adopt-branch-drawer.stories.d.ts.map +1 -0
- package/dist/src/presentation/web/components/common/control-center-drawer/adopt-branch-drawer.stories.js +115 -0
- package/dist/src/presentation/web/components/common/control-center-drawer/adopt-drawer-client.d.ts +5 -0
- package/dist/src/presentation/web/components/common/control-center-drawer/adopt-drawer-client.d.ts.map +1 -0
- package/dist/src/presentation/web/components/common/control-center-drawer/adopt-drawer-client.js +56 -0
- package/dist/src/presentation/web/components/common/repository-node/repository-node-config.d.ts +0 -8
- package/dist/src/presentation/web/components/common/repository-node/repository-node-config.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/repository-node/repository-node.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/repository-node/repository-node.js +6 -6
- package/dist/src/presentation/web/components/common/repository-node/repository-node.stories.d.ts +0 -2
- package/dist/src/presentation/web/components/common/repository-node/repository-node.stories.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/repository-node/repository-node.stories.js +17 -107
- package/dist/src/presentation/web/components/layouts/app-shell/app-shell.d.ts.map +1 -1
- package/dist/src/presentation/web/components/layouts/app-shell/app-shell.js +12 -3
- package/dist/src/presentation/web/lib/layout-with-dagre.js +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/web/.next/BUILD_ID +1 -1
- package/web/.next/app-path-routes-manifest.json +1 -0
- package/web/.next/build-manifest.json +4 -4
- package/web/.next/fallback-build-manifest.json +2 -2
- package/web/.next/prerender-manifest.json +3 -3
- package/web/.next/required-server-files.js +1 -1
- package/web/.next/required-server-files.json +1 -1
- package/web/.next/routes-manifest.json +6 -0
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page/build-manifest.json +18 -0
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page/next-font-manifest.json +6 -0
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page/react-loadable-manifest.json +1 -0
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +320 -0
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js +20 -0
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.map +5 -0
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -0
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +2 -0
- 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 +22 -22
- package/web/.next/server/app/(dashboard)/@drawer/create/page.js +2 -2
- package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/build-manifest.json +2 -2
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +28 -28
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js +3 -3
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/build-manifest.json +2 -2
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +28 -28
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +3 -3
- 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 +20 -20
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js +2 -2
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/create/page/build-manifest.json +2 -2
- package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +22 -22
- package/web/.next/server/app/(dashboard)/create/page.js +2 -2
- package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/build-manifest.json +2 -2
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +28 -28
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js +3 -3
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page/build-manifest.json +2 -2
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +28 -28
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +3 -3
- 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 +20 -20
- package/web/.next/server/app/(dashboard)/page.js +2 -2
- package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/build-manifest.json +2 -2
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +20 -20
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js +2 -2
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/_global-error/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/api/attachments/preview/route.js.nft.json +1 -1
- package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
- package/web/.next/server/app/api/graph-data/route.js +1 -1
- package/web/.next/server/app/api/graph-data/route.js.nft.json +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 +6 -6
- 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 +4 -4
- 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/app-paths-manifest.json +1 -0
- package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js +1 -1
- package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js.map +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__42b7ab55._.js +3 -0
- package/web/.next/server/chunks/{[root-of-the-server]__dcd4f847._.js.map → [root-of-the-server]__42b7ab55._.js.map} +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js +1 -1
- package/web/.next/server/chunks/ssr/403f9_next_dist_31ea46d3._.js +1 -1
- package/web/.next/server/chunks/ssr/403f9_next_dist_c9d9b4d7._.js +1 -1
- package/web/.next/server/chunks/ssr/403f9_next_dist_client_components_94d75bc3._.js +3 -0
- package/web/.next/server/chunks/ssr/403f9_next_dist_client_components_94d75bc3._.js.map +1 -0
- package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_0b3f4f0d.js +3 -0
- package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_0b3f4f0d.js.map +1 -0
- package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_adopt-drawer-client_tsx_6c5e4bbb._.js +3 -0
- package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_adopt-drawer-client_tsx_6c5e4bbb._.js.map +1 -0
- package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
- package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_f30d0343.js +1 -1
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_f30d0343.js.map +1 -1
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_9f1775bb.js +1 -1
- package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_9f1775bb.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__06fef644._.js +1 -1
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__9e8b25ad._.js → [root-of-the-server]__2698e9f4._.js} +2 -2
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__9e8b25ad._.js.map → [root-of-the-server]__2698e9f4._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6b17a22d._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6b17a22d._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6bb00d90._.js +2 -2
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6bb00d90._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__804c006d._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__804c006d._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__8c553503._.js +2 -2
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__7cbda1ea._.js → [root-of-the-server]__8e3bf5d7._.js} +2 -2
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__7cbda1ea._.js.map → [root-of-the-server]__8e3bf5d7._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__14664e9b._.js → [root-of-the-server]__a022445f._.js} +3 -3
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__14664e9b._.js.map → [root-of-the-server]__a022445f._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__a7de2711._.js +2 -2
- package/web/.next/server/chunks/ssr/[root-of-the-server]__b724df9e._.js +3 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__6677a82c._.js.map → [root-of-the-server]__b724df9e._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__aed1d6f8._.js → [root-of-the-server]__c07f9f79._.js} +2 -2
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__aed1d6f8._.js.map → [root-of-the-server]__c07f9f79._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__ce6057f6._.js → [root-of-the-server]__c605a375._.js} +2 -2
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__ce6057f6._.js.map → [root-of-the-server]__c605a375._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__e2227c0f._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__e2227c0f._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__ec26e818._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__ec26e818._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__f0589cc3._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__f0589cc3._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_135edb9c._.js +1 -1
- package/web/.next/server/chunks/ssr/_135edb9c._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_14f96702._.js +3 -0
- package/web/.next/server/chunks/ssr/_14f96702._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_19a2fb35._.js +3 -0
- package/web/.next/server/chunks/ssr/_19a2fb35._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_2f6f48b8._.js +1 -1
- package/web/.next/server/chunks/ssr/_2f6f48b8._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_4093a637._.js +5 -0
- package/web/.next/server/chunks/ssr/_4093a637._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{_15fe9326._.js → _6847e12c._.js} +2 -2
- package/web/.next/server/chunks/ssr/_6847e12c._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_cc77a143._.js +1 -1
- package/web/.next/server/chunks/ssr/_cc77a143._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_d5206f22._.js +4 -0
- package/web/.next/server/chunks/ssr/_d5206f22._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_f7eda65f._.js +3 -0
- package/web/.next/server/chunks/ssr/_f7eda65f._.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/f7870_sonner_dist_index_mjs_dbf63824._.js +3 -0
- package/web/.next/server/chunks/ssr/f7870_sonner_dist_index_mjs_dbf63824._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules__pnpm_026172d1._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules__pnpm_026172d1._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules__pnpm_b59e4b16._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules__pnpm_b59e4b16._.js.map +1 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_5f039db1._.js +2 -2
- package/web/.next/server/chunks/ssr/src_presentation_web_5f039db1._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_2a52b697.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_2a52b697.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_c4337169._.js +2 -2
- package/web/.next/server/chunks/ssr/src_presentation_web_c4337169._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_bf50c527._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_de814675._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
- package/web/.next/server/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 +189 -34
- package/web/.next/static/chunks/0d2af96e64960ef5.css +1 -0
- package/web/.next/static/chunks/17029c5f1d00fc93.js +1 -0
- package/web/.next/static/chunks/{24a0b215d72d8f26.js → 2745f3ad9063085f.js} +1 -1
- package/web/.next/static/chunks/372ca551d638fa0f.js +1 -0
- package/web/.next/static/chunks/{2c0cf874cda01236.js → 493c993ee3ade96f.js} +1 -1
- package/web/.next/static/chunks/{cd2bb43fe9138791.js → 5750e62c32b225d4.js} +1 -1
- package/web/.next/static/chunks/5905a4f9588b11f7.js +1 -0
- package/web/.next/static/chunks/767cf20dbde41522.js +1 -0
- package/web/.next/static/chunks/78e2f79d08767e8d.js +9 -0
- package/web/.next/static/chunks/{9fba6bb38ff0cb38.js → 7a2e1c2cd9250da4.js} +2 -2
- package/web/.next/static/chunks/{ed3a602003bcb31b.js → 89aac43287d73b02.js} +1 -1
- package/web/.next/static/chunks/994703c532508731.js +2 -0
- package/web/.next/static/chunks/9f42f58eb93e94fa.js +1 -0
- package/web/.next/static/chunks/a8d65187623d628b.js +5 -0
- package/web/.next/static/chunks/ba4855da62a1199d.js +1 -0
- package/web/.next/static/chunks/bf108ed551e585e6.js +1 -0
- package/web/.next/static/chunks/ef92b64dbf5813d5.js +1 -0
- package/web/.next/static/chunks/{turbopack-426d9bc2450816ba.js → turbopack-080e470ea902d0ba.js} +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__dcd4f847._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__52485955._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__52485955._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__545792ab._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__545792ab._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6677a82c._.js +0 -3
- package/web/.next/server/chunks/ssr/_15fe9326._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_3a4c94e3._.js +0 -3
- package/web/.next/server/chunks/ssr/_3a4c94e3._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_90a34ae9._.js +0 -3
- package/web/.next/server/chunks/ssr/_90a34ae9._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_9ac70f88._.js +0 -5
- package/web/.next/server/chunks/ssr/_9ac70f88._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_e9703421._.js +0 -3
- package/web/.next/server/chunks/ssr/_e9703421._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_f096ab6a._.js +0 -3
- package/web/.next/server/chunks/ssr/_f096ab6a._.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules__pnpm_bc66dcc6._.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules__pnpm_bc66dcc6._.js.map +0 -1
- package/web/.next/static/chunks/4232eb19944a519e.js +0 -1
- package/web/.next/static/chunks/4443ee9c7733399b.js +0 -1
- package/web/.next/static/chunks/52b56677c842e45f.js +0 -3
- package/web/.next/static/chunks/6b8c3e3d8d4ee08e.js +0 -1
- package/web/.next/static/chunks/96eeeb28e06de78c.js +0 -1
- package/web/.next/static/chunks/a58429fc5be52aad.js +0 -1
- package/web/.next/static/chunks/b200a40ffcc15eb7.css +0 -1
- package/web/.next/static/chunks/b67d183d3c074a4c.js +0 -2
- package/web/.next/static/chunks/d2bfdee31e1a7d8d.js +0 -1
- package/web/.next/static/chunks/fadc79bbbae100a7.js +0 -11
- /package/web/.next/static/{Fr059mDxLxW71ARoHnB8W → 1R6ULRWeIsY2xDw1tiEVQ}/_buildManifest.js +0 -0
- /package/web/.next/static/{Fr059mDxLxW71ARoHnB8W → 1R6ULRWeIsY2xDw1tiEVQ}/_clientMiddlewareManifest.json +0 -0
- /package/web/.next/static/{Fr059mDxLxW71ARoHnB8W → 1R6ULRWeIsY2xDw1tiEVQ}/_ssgManifest.js +0 -0
|
@@ -1,71 +1,12 @@
|
|
|
1
|
-
import { execFile as execFileCb } from 'node:child_process';
|
|
2
|
-
import { promisify } from 'node:util';
|
|
3
1
|
import { resolve } from '../../lib/server-container.js';
|
|
4
2
|
import { getSettings } from '../../../../../packages/core/src/infrastructure/services/settings.service.js';
|
|
5
3
|
import { layoutWithDagre, CANVAS_LAYOUT_DEFAULTS } from '../../lib/layout-with-dagre.js';
|
|
6
4
|
import { buildGraphNodes } from '../build-graph-nodes.js';
|
|
7
|
-
const execFileAsync = promisify(execFileCb);
|
|
8
|
-
async function gitCommand(cwd, args) {
|
|
9
|
-
try {
|
|
10
|
-
const { stdout } = await execFileAsync('git', args, { cwd });
|
|
11
|
-
return stdout.trim();
|
|
12
|
-
}
|
|
13
|
-
catch {
|
|
14
|
-
return null;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
async function fetchRepoGitInfo(repo) {
|
|
18
|
-
try {
|
|
19
|
-
const [currentBranch, commitMessage, committer] = await Promise.all([
|
|
20
|
-
gitCommand(repo.path, ['symbolic-ref', '--short', 'HEAD']),
|
|
21
|
-
gitCommand(repo.path, ['log', '-1', '--format=%s']),
|
|
22
|
-
gitCommand(repo.path, ['log', '-1', '--format=%an']),
|
|
23
|
-
]);
|
|
24
|
-
if (!currentBranch)
|
|
25
|
-
return null;
|
|
26
|
-
// Try to determine the default branch to compute behind count
|
|
27
|
-
let behindCount = null;
|
|
28
|
-
const defaultBranch = await gitCommand(repo.path, [
|
|
29
|
-
'symbolic-ref',
|
|
30
|
-
'--short',
|
|
31
|
-
'refs/remotes/origin/HEAD',
|
|
32
|
-
]).then((ref) => ref?.replace('origin/', '') ?? null);
|
|
33
|
-
if (defaultBranch && currentBranch !== defaultBranch) {
|
|
34
|
-
const behind = await gitCommand(repo.path, [
|
|
35
|
-
'rev-list',
|
|
36
|
-
'--count',
|
|
37
|
-
`${currentBranch}..origin/${defaultBranch}`,
|
|
38
|
-
]);
|
|
39
|
-
behindCount = behind !== null ? parseInt(behind, 10) : null;
|
|
40
|
-
if (isNaN(behindCount))
|
|
41
|
-
behindCount = null;
|
|
42
|
-
}
|
|
43
|
-
else if (!defaultBranch || currentBranch === defaultBranch) {
|
|
44
|
-
behindCount = 0;
|
|
45
|
-
}
|
|
46
|
-
return {
|
|
47
|
-
branch: currentBranch,
|
|
48
|
-
commitMessage: commitMessage ?? 'unknown',
|
|
49
|
-
committer: committer ?? 'unknown',
|
|
50
|
-
behindCount,
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
catch {
|
|
54
|
-
return null;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
5
|
export async function getGraphData() {
|
|
58
6
|
const listFeatures = resolve('ListFeaturesUseCase');
|
|
59
7
|
const listRepos = resolve('ListRepositoriesUseCase');
|
|
60
8
|
const agentRunRepo = resolve('IAgentRunRepository');
|
|
61
9
|
const [features, repositories] = await Promise.all([listFeatures.execute(), listRepos.execute()]);
|
|
62
|
-
// Fetch git info (branch, commit, behind count) for each repository
|
|
63
|
-
const repoGitInfoMap = new Map();
|
|
64
|
-
await Promise.all(repositories.map(async (repo) => {
|
|
65
|
-
const info = await fetchRepoGitInfo(repo);
|
|
66
|
-
if (info)
|
|
67
|
-
repoGitInfoMap.set(repo.path, info);
|
|
68
|
-
}));
|
|
69
10
|
// PR/CI status is kept fresh by PrSyncWatcher (30s background poll).
|
|
70
11
|
// No live GitHub calls here — use cached DB values for fast response.
|
|
71
12
|
const featuresWithRuns = await Promise.all(features.map(async (feature) => {
|
|
@@ -77,7 +18,6 @@ export async function getGraphData() {
|
|
|
77
18
|
enableEvidence: workflow.enableEvidence,
|
|
78
19
|
commitEvidence: workflow.commitEvidence,
|
|
79
20
|
ciWatchEnabled: workflow.ciWatchEnabled,
|
|
80
|
-
repoGitInfo: repoGitInfoMap,
|
|
81
21
|
});
|
|
82
22
|
// Enrich feature nodes with deployment status
|
|
83
23
|
let deploymentService = null;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Feature } from '../../../../../packages/core/src/domain/generated/output.js';
|
|
2
|
+
interface AdoptBranchInput {
|
|
3
|
+
branchName: string;
|
|
4
|
+
repositoryPath: string;
|
|
5
|
+
}
|
|
6
|
+
export declare function adoptBranch(input: AdoptBranchInput): Promise<{
|
|
7
|
+
feature?: Feature;
|
|
8
|
+
error?: string;
|
|
9
|
+
}>;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=adopt-branch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adopt-branch.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/web/app/actions/adopt-branch.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AAEpE,UAAU,gBAAgB;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,wBAAsB,WAAW,CAC/B,KAAK,EAAE,gBAAgB,GACtB,OAAO,CAAC;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAkBhD"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
'use server';
|
|
2
|
+
import { resolve } from '../../lib/server-container.js';
|
|
3
|
+
export async function adoptBranch(input) {
|
|
4
|
+
const { branchName, repositoryPath } = input;
|
|
5
|
+
if (!branchName?.trim()) {
|
|
6
|
+
return { error: 'Branch name is required' };
|
|
7
|
+
}
|
|
8
|
+
if (!repositoryPath?.trim()) {
|
|
9
|
+
return { error: 'Repository path is required' };
|
|
10
|
+
}
|
|
11
|
+
try {
|
|
12
|
+
const useCase = resolve('AdoptBranchUseCase');
|
|
13
|
+
const result = await useCase.execute({ branchName, repositoryPath });
|
|
14
|
+
return { feature: result.feature };
|
|
15
|
+
}
|
|
16
|
+
catch (error) {
|
|
17
|
+
const message = error instanceof Error ? error.message : 'Failed to adopt branch';
|
|
18
|
+
return { error: message };
|
|
19
|
+
}
|
|
20
|
+
}
|
|
@@ -20,13 +20,6 @@ export interface BuildGraphNodesOptions {
|
|
|
20
20
|
commitEvidence?: boolean;
|
|
21
21
|
/** Whether CI watch/fix loop is enabled (global workflow setting) */
|
|
22
22
|
ciWatchEnabled?: boolean;
|
|
23
|
-
/** Git info (branch, commit message, committer, behind count) keyed by repository path */
|
|
24
|
-
repoGitInfo?: Map<string, {
|
|
25
|
-
branch: string;
|
|
26
|
-
commitMessage: string;
|
|
27
|
-
committer: string;
|
|
28
|
-
behindCount: number | null;
|
|
29
|
-
}>;
|
|
30
23
|
}
|
|
31
24
|
export declare function buildGraphNodes(repositories: Repository[], featuresWithRuns: FeatureWithRun[], options?: BuildGraphNodesOptions): {
|
|
32
25
|
nodes: CanvasNodeType[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-graph-nodes.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/web/app/build-graph-nodes.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAS1F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAU1C,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,QAAQ,GAAG,IAAI,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,sBAAsB;IACrC,uEAAuE;IACvE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,6EAA6E;IAC7E,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,qEAAqE;IACrE,cAAc,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"build-graph-nodes.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/web/app/build-graph-nodes.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAS1F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAU1C,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,QAAQ,GAAG,IAAI,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,sBAAsB;IACrC,uEAAuE;IACvE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,6EAA6E;IAC7E,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,qEAAqE;IACrE,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,eAAe,CAC7B,YAAY,EAAE,UAAU,EAAE,EAC1B,gBAAgB,EAAE,cAAc,EAAE,EAClC,OAAO,CAAC,EAAE,sBAAsB,GAC/B;IAAE,KAAK,EAAE,cAAc,EAAE,CAAC;IAAC,KAAK,EAAE,IAAI,EAAE,CAAA;CAAE,CA2F5C"}
|
|
@@ -31,7 +31,6 @@ export function buildGraphNodes(repositories, featuresWithRuns, options) {
|
|
|
31
31
|
const normalizedRepoPath = normalizePath(repo.path);
|
|
32
32
|
coveredPaths.add(normalizedRepoPath);
|
|
33
33
|
const repoNodeId = `repo-${repo.id}`;
|
|
34
|
-
const gitInfo = options?.repoGitInfo?.get(repo.path);
|
|
35
34
|
nodes.push({
|
|
36
35
|
id: repoNodeId,
|
|
37
36
|
type: 'repositoryNode',
|
|
@@ -41,12 +40,6 @@ export function buildGraphNodes(repositories, featuresWithRuns, options) {
|
|
|
41
40
|
repositoryPath: normalizedRepoPath,
|
|
42
41
|
id: repo.id,
|
|
43
42
|
createdAt: repo.createdAt instanceof Date ? repo.createdAt.getTime() : Number(repo.createdAt),
|
|
44
|
-
...(gitInfo && {
|
|
45
|
-
branch: gitInfo.branch,
|
|
46
|
-
commitMessage: gitInfo.commitMessage,
|
|
47
|
-
committer: gitInfo.committer,
|
|
48
|
-
behindCount: gitInfo.behindCount,
|
|
49
|
-
}),
|
|
50
43
|
},
|
|
51
44
|
});
|
|
52
45
|
const repoFeatures = featuresByRepo[normalizedRepoPath] ?? [];
|
package/dist/src/presentation/web/components/common/control-center-drawer/adopt-branch-drawer.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export interface AdoptBranchDrawerProps {
|
|
2
|
+
open: boolean;
|
|
3
|
+
onClose: () => void;
|
|
4
|
+
onSubmit: (branchName: string) => void;
|
|
5
|
+
isSubmitting?: boolean;
|
|
6
|
+
error?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function AdoptBranchDrawer({ open, onClose, onSubmit, isSubmitting, error, }: AdoptBranchDrawerProps): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
//# sourceMappingURL=adopt-branch-drawer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adopt-branch-drawer.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/common/control-center-drawer/adopt-branch-drawer.tsx"],"names":[],"mappings":"AAUA,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,iBAAiB,CAAC,EAChC,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,YAAoB,EACpB,KAAK,GACN,EAAE,sBAAsB,2CAoGxB"}
|
package/dist/src/presentation/web/components/common/control-center-drawer/adopt-branch-drawer.js
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
+
import { useState, useCallback } from 'react';
|
|
4
|
+
import { GitBranch, Loader2 } from 'lucide-react';
|
|
5
|
+
import { BaseDrawer } from '../../common/base-drawer/index.js';
|
|
6
|
+
import { DrawerTitle, DrawerDescription } from '../../ui/drawer.js';
|
|
7
|
+
import { Button } from '../../ui/button.js';
|
|
8
|
+
import { Input } from '../../ui/input.js';
|
|
9
|
+
import { Label } from '../../ui/label.js';
|
|
10
|
+
export function AdoptBranchDrawer({ open, onClose, onSubmit, isSubmitting = false, error, }) {
|
|
11
|
+
const [branchName, setBranchName] = useState('');
|
|
12
|
+
const handleSubmit = useCallback((e) => {
|
|
13
|
+
e.preventDefault();
|
|
14
|
+
const trimmed = branchName.trim();
|
|
15
|
+
if (!trimmed || isSubmitting)
|
|
16
|
+
return;
|
|
17
|
+
onSubmit(trimmed);
|
|
18
|
+
}, [branchName, isSubmitting, onSubmit]);
|
|
19
|
+
const handleClose = useCallback(() => {
|
|
20
|
+
setBranchName('');
|
|
21
|
+
onClose();
|
|
22
|
+
}, [onClose]);
|
|
23
|
+
// Reset form when drawer closes
|
|
24
|
+
const isDisabled = !branchName.trim() || isSubmitting;
|
|
25
|
+
const header = (_jsxs("div", { children: [_jsxs(DrawerTitle, { className: "flex items-center gap-2", children: [_jsx(GitBranch, { className: "h-4 w-4" }), "Adopt Branch"] }), _jsx(DrawerDescription, { className: "text-muted-foreground text-sm", children: "Import an existing git branch into Shep's feature tracking" })] }));
|
|
26
|
+
return (_jsx(BaseDrawer, { open: open, onClose: handleClose, size: "sm", modal: false, header: header, "data-testid": "adopt-branch-drawer", children: _jsxs("form", { onSubmit: handleSubmit, className: "flex flex-1 flex-col", children: [_jsx("div", { className: "flex-1 overflow-y-auto p-4", children: _jsxs("div", { className: "flex flex-col gap-4", children: [_jsxs("div", { className: "flex flex-col gap-2", children: [_jsx(Label, { htmlFor: "branch-name", children: "Branch name" }), _jsx(Input, { id: "branch-name", placeholder: "e.g. fix/login-bug or feat/user-auth", value: branchName, onChange: (e) => setBranchName(e.target.value), disabled: isSubmitting, autoFocus: true, "data-testid": "adopt-branch-input" }), _jsx("p", { className: "text-muted-foreground text-xs", children: "Enter the name of a local or remote branch to adopt as a tracked feature." })] }), error ? (_jsx("p", { className: "text-destructive text-sm", "data-testid": "adopt-branch-error", children: error })) : null] }) }), _jsx("div", { className: "border-t p-4", children: _jsxs("div", { className: "flex gap-2", children: [_jsx(Button, { type: "button", variant: "outline", onClick: handleClose, disabled: isSubmitting, className: "flex-1", children: "Cancel" }), _jsx(Button, { type: "submit", disabled: isDisabled, className: "flex-1", "data-testid": "adopt-branch-submit", children: isSubmitting ? (_jsxs(_Fragment, { children: [_jsx(Loader2, { className: "mr-2 h-4 w-4 animate-spin" }), "Adopting..."] })) : ('Adopt Branch') })] }) })] }) }));
|
|
27
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/react';
|
|
2
|
+
import { AdoptBranchDrawer } from './adopt-branch-drawer.js';
|
|
3
|
+
/**
|
|
4
|
+
* **AdoptBranchDrawer** is a right-side sliding drawer for importing an
|
|
5
|
+
* existing git branch into Shep's feature tracking system.
|
|
6
|
+
*
|
|
7
|
+
* ### Form
|
|
8
|
+
* - **Branch name** (required) — text input for the branch name
|
|
9
|
+
* - **Adopt Branch** button — disabled when input is empty or submitting
|
|
10
|
+
* - **Cancel** button — closes the drawer
|
|
11
|
+
*
|
|
12
|
+
* ### States
|
|
13
|
+
* - Default: empty input, submit disabled
|
|
14
|
+
* - Loading: input disabled, button shows spinner
|
|
15
|
+
* - Error: error message shown below input
|
|
16
|
+
*/
|
|
17
|
+
declare const meta: Meta<typeof AdoptBranchDrawer>;
|
|
18
|
+
export default meta;
|
|
19
|
+
type Story = StoryObj<typeof AdoptBranchDrawer>;
|
|
20
|
+
/** Default empty form — click the trigger button to open the adopt branch drawer. */
|
|
21
|
+
export declare const Default: Story;
|
|
22
|
+
/** Pre-opened drawer for quick visual inspection. */
|
|
23
|
+
export declare const PreOpened: Story;
|
|
24
|
+
/** Drawer with branch name typed in — ready to submit. */
|
|
25
|
+
export declare const WithBranchName: Story;
|
|
26
|
+
/** Loading state — input disabled, button shows spinner. */
|
|
27
|
+
export declare const Loading: Story;
|
|
28
|
+
/** Error state — error message visible below input. */
|
|
29
|
+
export declare const WithError: Story;
|
|
30
|
+
/** Adopt branch drawer rendered inside a full-page context — starts open. */
|
|
31
|
+
export declare const InDrawer: Story;
|
|
32
|
+
//# sourceMappingURL=adopt-branch-drawer.stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adopt-branch-drawer.stories.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/common/control-center-drawer/adopt-branch-drawer.stories.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAO1D;;;;;;;;;;;;;GAaG;AACH,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,iBAAiB,CAcxC,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAkDhD,qFAAqF;AACrF,eAAO,MAAM,OAAO,EAAE,KAErB,CAAC;AAEF,qDAAqD;AACrD,eAAO,MAAM,SAAS,EAAE,KAMvB,CAAC;AAEF,0DAA0D;AAC1D,eAAO,MAAM,cAAc,EAAE,KAU5B,CAAC;AAEF,4DAA4D;AAC5D,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAC;AAEF,uDAAuD;AACvD,eAAO,MAAM,SAAS,EAAE,KAWvB,CAAC;AAiCF,6EAA6E;AAC7E,eAAO,MAAM,QAAQ,EAAE,KAEtB,CAAC"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { within, userEvent, fn } from '@storybook/test';
|
|
4
|
+
import { AdoptBranchDrawer } from './adopt-branch-drawer.js';
|
|
5
|
+
import { Button } from '../../ui/button.js';
|
|
6
|
+
/* ---------------------------------------------------------------------------
|
|
7
|
+
* Meta
|
|
8
|
+
* ------------------------------------------------------------------------- */
|
|
9
|
+
/**
|
|
10
|
+
* **AdoptBranchDrawer** is a right-side sliding drawer for importing an
|
|
11
|
+
* existing git branch into Shep's feature tracking system.
|
|
12
|
+
*
|
|
13
|
+
* ### Form
|
|
14
|
+
* - **Branch name** (required) — text input for the branch name
|
|
15
|
+
* - **Adopt Branch** button — disabled when input is empty or submitting
|
|
16
|
+
* - **Cancel** button — closes the drawer
|
|
17
|
+
*
|
|
18
|
+
* ### States
|
|
19
|
+
* - Default: empty input, submit disabled
|
|
20
|
+
* - Loading: input disabled, button shows spinner
|
|
21
|
+
* - Error: error message shown below input
|
|
22
|
+
*/
|
|
23
|
+
const meta = {
|
|
24
|
+
title: 'Drawers/Feature/AdoptBranchDrawer',
|
|
25
|
+
component: AdoptBranchDrawer,
|
|
26
|
+
tags: ['autodocs'],
|
|
27
|
+
parameters: {
|
|
28
|
+
layout: 'fullscreen',
|
|
29
|
+
},
|
|
30
|
+
argTypes: {
|
|
31
|
+
open: { control: 'boolean', description: 'Controls drawer visibility' },
|
|
32
|
+
onClose: { description: 'Called when the drawer is dismissed' },
|
|
33
|
+
onSubmit: { description: 'Called with the branch name when the form is submitted' },
|
|
34
|
+
isSubmitting: { control: 'boolean', description: 'Shows loading state' },
|
|
35
|
+
error: { control: 'text', description: 'Error message to display' },
|
|
36
|
+
},
|
|
37
|
+
};
|
|
38
|
+
export default meta;
|
|
39
|
+
/* ---------------------------------------------------------------------------
|
|
40
|
+
* Shared action loggers
|
|
41
|
+
* ------------------------------------------------------------------------- */
|
|
42
|
+
const logSubmit = fn().mockName('onSubmit');
|
|
43
|
+
const logClose = fn().mockName('onClose');
|
|
44
|
+
/* ---------------------------------------------------------------------------
|
|
45
|
+
* Trigger wrapper
|
|
46
|
+
* ------------------------------------------------------------------------- */
|
|
47
|
+
function AdoptDrawerTrigger({ label = 'Open Adopt Branch', isSubmitting = false, error, }) {
|
|
48
|
+
const [open, setOpen] = useState(false);
|
|
49
|
+
return (_jsxs("div", { className: "flex h-screen items-start p-4", children: [_jsx(Button, { variant: "outline", onClick: () => setOpen(true), children: label }), _jsx(AdoptBranchDrawer, { open: open, onClose: () => {
|
|
50
|
+
setOpen(false);
|
|
51
|
+
logClose();
|
|
52
|
+
}, onSubmit: (branchName) => {
|
|
53
|
+
logSubmit(branchName);
|
|
54
|
+
setOpen(false);
|
|
55
|
+
}, isSubmitting: isSubmitting, error: error })] }));
|
|
56
|
+
}
|
|
57
|
+
/* ---------------------------------------------------------------------------
|
|
58
|
+
* Stories
|
|
59
|
+
* ------------------------------------------------------------------------- */
|
|
60
|
+
/** Default empty form — click the trigger button to open the adopt branch drawer. */
|
|
61
|
+
export const Default = {
|
|
62
|
+
render: () => _jsx(AdoptDrawerTrigger, {}),
|
|
63
|
+
};
|
|
64
|
+
/** Pre-opened drawer for quick visual inspection. */
|
|
65
|
+
export const PreOpened = {
|
|
66
|
+
render: () => _jsx(AdoptDrawerTrigger, { label: "Open Drawer" }),
|
|
67
|
+
play: async ({ canvasElement }) => {
|
|
68
|
+
const canvas = within(canvasElement);
|
|
69
|
+
await userEvent.click(canvas.getByRole('button', { name: 'Open Drawer' }));
|
|
70
|
+
},
|
|
71
|
+
};
|
|
72
|
+
/** Drawer with branch name typed in — ready to submit. */
|
|
73
|
+
export const WithBranchName = {
|
|
74
|
+
render: () => _jsx(AdoptDrawerTrigger, { label: "Open (With Branch)" }),
|
|
75
|
+
play: async ({ canvasElement }) => {
|
|
76
|
+
const canvas = within(canvasElement);
|
|
77
|
+
await userEvent.click(canvas.getByRole('button', { name: 'Open (With Branch)' }));
|
|
78
|
+
const body = within(canvasElement.ownerDocument.body);
|
|
79
|
+
const input = await body.findByPlaceholderText('e.g. fix/login-bug or feat/user-auth');
|
|
80
|
+
await userEvent.type(input, 'fix/login-bug');
|
|
81
|
+
},
|
|
82
|
+
};
|
|
83
|
+
/** Loading state — input disabled, button shows spinner. */
|
|
84
|
+
export const Loading = {
|
|
85
|
+
render: () => _jsx(AdoptDrawerTrigger, { label: "Open (Loading)", isSubmitting: true }),
|
|
86
|
+
play: async ({ canvasElement }) => {
|
|
87
|
+
const canvas = within(canvasElement);
|
|
88
|
+
await userEvent.click(canvas.getByRole('button', { name: 'Open (Loading)' }));
|
|
89
|
+
},
|
|
90
|
+
};
|
|
91
|
+
/** Error state — error message visible below input. */
|
|
92
|
+
export const WithError = {
|
|
93
|
+
render: () => (_jsx(AdoptDrawerTrigger, { label: "Open (Error)", error: 'Branch "main" cannot be adopted. The main branch should not be tracked as a feature.' })),
|
|
94
|
+
play: async ({ canvasElement }) => {
|
|
95
|
+
const canvas = within(canvasElement);
|
|
96
|
+
await userEvent.click(canvas.getByRole('button', { name: 'Open (Error)' }));
|
|
97
|
+
},
|
|
98
|
+
};
|
|
99
|
+
/* ---------------------------------------------------------------------------
|
|
100
|
+
* Shell template — starts open in full-page context
|
|
101
|
+
* ------------------------------------------------------------------------- */
|
|
102
|
+
function AdoptDrawerShellTemplate() {
|
|
103
|
+
const [open, setOpen] = useState(true);
|
|
104
|
+
return (_jsxs("div", { style: { height: '100vh', background: '#f8fafc', padding: '2rem' }, children: [_jsx("button", { type: "button", onClick: () => setOpen(true), style: { padding: '8px 16px', border: '1px solid #ccc', borderRadius: '6px' }, children: "Open Drawer" }), _jsx(AdoptBranchDrawer, { open: open, onClose: () => {
|
|
105
|
+
setOpen(false);
|
|
106
|
+
logClose();
|
|
107
|
+
}, onSubmit: (branchName) => {
|
|
108
|
+
logSubmit(branchName);
|
|
109
|
+
setOpen(false);
|
|
110
|
+
} })] }));
|
|
111
|
+
}
|
|
112
|
+
/** Adopt branch drawer rendered inside a full-page context — starts open. */
|
|
113
|
+
export const InDrawer = {
|
|
114
|
+
render: () => _jsx(AdoptDrawerShellTemplate, {}),
|
|
115
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adopt-drawer-client.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/common/control-center-drawer/adopt-drawer-client.tsx"],"names":[],"mappings":"AAQA,MAAM,WAAW,sBAAsB;IACrC,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,iBAAiB,CAAC,EAAE,cAAc,EAAE,EAAE,sBAAsB,2CAoE3E"}
|
package/dist/src/presentation/web/components/common/control-center-drawer/adopt-drawer-client.js
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { useState, useCallback, useEffect } from 'react';
|
|
4
|
+
import { useRouter, usePathname } from 'next/navigation';
|
|
5
|
+
import { toast } from 'sonner';
|
|
6
|
+
import { adoptBranch } from '../../../app/actions/adopt-branch.js';
|
|
7
|
+
import { AdoptBranchDrawer } from './adopt-branch-drawer.js';
|
|
8
|
+
export function AdoptDrawerClient({ repositoryPath }) {
|
|
9
|
+
const router = useRouter();
|
|
10
|
+
const pathname = usePathname();
|
|
11
|
+
const [isSubmitting, setIsSubmitting] = useState(false);
|
|
12
|
+
const [error, setError] = useState();
|
|
13
|
+
const isOnAdoptRoute = pathname.startsWith('/adopt');
|
|
14
|
+
const isOpen = !isSubmitting && isOnAdoptRoute;
|
|
15
|
+
// Reset isSubmitting once the route has actually changed away from /adopt
|
|
16
|
+
useEffect(() => {
|
|
17
|
+
if (!isOnAdoptRoute && isSubmitting) {
|
|
18
|
+
setIsSubmitting(false);
|
|
19
|
+
}
|
|
20
|
+
}, [isOnAdoptRoute, isSubmitting]);
|
|
21
|
+
// Clear error when drawer reopens
|
|
22
|
+
useEffect(() => {
|
|
23
|
+
if (isOnAdoptRoute) {
|
|
24
|
+
setError(undefined);
|
|
25
|
+
}
|
|
26
|
+
}, [isOnAdoptRoute]);
|
|
27
|
+
const onClose = useCallback(() => {
|
|
28
|
+
router.push('/');
|
|
29
|
+
}, [router]);
|
|
30
|
+
const onSubmit = useCallback((branchName) => {
|
|
31
|
+
setError(undefined);
|
|
32
|
+
setIsSubmitting(true);
|
|
33
|
+
router.push('/');
|
|
34
|
+
adoptBranch({ branchName, repositoryPath })
|
|
35
|
+
.then((result) => {
|
|
36
|
+
if (result.error) {
|
|
37
|
+
toast.error(result.error);
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
window.dispatchEvent(new CustomEvent('shep:feature-created', {
|
|
41
|
+
detail: {
|
|
42
|
+
featureId: result.feature.id,
|
|
43
|
+
name: result.feature.name,
|
|
44
|
+
description: result.feature.description,
|
|
45
|
+
repositoryPath: result.feature.repositoryPath,
|
|
46
|
+
},
|
|
47
|
+
}));
|
|
48
|
+
toast.success(`Branch adopted as "${result.feature.name}"`);
|
|
49
|
+
})
|
|
50
|
+
.catch(() => {
|
|
51
|
+
toast.error('Failed to adopt branch');
|
|
52
|
+
setIsSubmitting(false);
|
|
53
|
+
});
|
|
54
|
+
}, [router, repositoryPath]);
|
|
55
|
+
return (_jsx(AdoptBranchDrawer, { open: isOpen, onClose: onClose, onSubmit: onSubmit, isSubmitting: isSubmitting, error: error }));
|
|
56
|
+
}
|
package/dist/src/presentation/web/components/common/repository-node/repository-node-config.d.ts
CHANGED
|
@@ -9,14 +9,6 @@ export interface RepositoryNodeData {
|
|
|
9
9
|
repositoryPath?: string;
|
|
10
10
|
/** Creation timestamp (epoch ms) — used for stable vertical ordering. */
|
|
11
11
|
createdAt?: number;
|
|
12
|
-
/** Current git branch name (e.g. "main", "feat/my-feature") */
|
|
13
|
-
branch?: string;
|
|
14
|
-
/** Commit message of the branch HEAD (first line only) */
|
|
15
|
-
commitMessage?: string;
|
|
16
|
-
/** Name of the person who made the latest commit */
|
|
17
|
-
committer?: string;
|
|
18
|
-
/** Number of commits the current branch is behind the default branch. null if on default branch or unknown. */
|
|
19
|
-
behindCount?: number | null;
|
|
20
12
|
onClick?: () => void;
|
|
21
13
|
onAdd?: () => void;
|
|
22
14
|
onDelete?: (repositoryId: string) => void;
|
package/dist/src/presentation/web/components/common/repository-node/repository-node-config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repository-node-config.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/common/repository-node/repository-node-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAE1C,MAAM,WAAW,kBAAkB;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,qEAAqE;IACrE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB
|
|
1
|
+
{"version":3,"file":"repository-node-config.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/common/repository-node/repository-node-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAE1C,MAAM,WAAW,kBAAkB;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,qEAAqE;IACrE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,CAAC"}
|
package/dist/src/presentation/web/components/common/repository-node/repository-node.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repository-node.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/common/repository-node/repository-node.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"repository-node.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/common/repository-node/repository-node.tsx"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAOnE,wBAAgB,cAAc,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,2CAyR5F"}
|
|
@@ -3,7 +3,7 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
|
|
|
3
3
|
import { useState, useCallback } from 'react';
|
|
4
4
|
import { Handle, Position } from '@xyflow/react';
|
|
5
5
|
import { useRouter } from 'next/navigation';
|
|
6
|
-
import { Github, Plus, Code2, Terminal, FolderOpen, Trash2, Play, Square
|
|
6
|
+
import { Github, Plus, Code2, Terminal, FolderOpen, Trash2, Play, Square } from 'lucide-react';
|
|
7
7
|
import { cn } from '../../../lib/utils.js';
|
|
8
8
|
import { ActionButton } from '../../common/action-button/index.js';
|
|
9
9
|
import { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, } from '../../ui/dialog.js';
|
|
@@ -72,9 +72,9 @@ export function RepositoryNode({ data }) {
|
|
|
72
72
|
e.stopPropagation();
|
|
73
73
|
data.onClick?.();
|
|
74
74
|
}
|
|
75
|
-
}, className: "nodrag bg-card flex w-[
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
75
|
+
}, className: "nodrag bg-card flex min-w-[18rem] cursor-pointer items-center gap-3 rounded-full border px-4 py-3 shadow-sm", children: [_jsx(Github, { className: "text-muted-foreground h-5 w-5 shrink-0" }), _jsx("span", { "data-testid": "repository-node-name", className: "min-w-0 truncate text-sm font-medium", children: data.name }), _jsxs("div", { className: cn('flex shrink-0 items-center gap-2', (data.repositoryPath ?? data.onAdd) && 'ml-auto'), onClick: (e) => e.stopPropagation(), children: [data.repositoryPath ? (_jsxs(_Fragment, { children: [_jsx(TooltipProvider, { children: _jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("span", { className: "flex items-center", children: _jsx(ActionButton, { label: "Open in IDE", onClick: actions.openInIde, loading: actions.ideLoading, error: !!actions.ideError, icon: Code2, iconOnly: true, variant: "ghost", size: "icon-xs" }) }) }), _jsx(TooltipContent, { children: "Open in IDE" })] }) }), _jsx(TooltipProvider, { children: _jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("span", { className: "flex items-center", children: _jsx(ActionButton, { label: "Open in Shell", onClick: actions.openInShell, loading: actions.shellLoading, error: !!actions.shellError, icon: Terminal, iconOnly: true, variant: "ghost", size: "icon-xs" }) }) }), _jsx(TooltipContent, { children: "Open in Shell" })] }) }), _jsx(TooltipProvider, { children: _jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("span", { className: "flex items-center", children: _jsx(ActionButton, { label: "Open Folder", onClick: actions.openFolder, loading: actions.folderLoading, error: !!actions.folderError, icon: FolderOpen, iconOnly: true, variant: "ghost", size: "icon-xs" }) }) }), _jsx(TooltipContent, { children: "Open Folder" })] }) }), _jsx(FeatureSessionsDropdown, { repositoryPath: data.repositoryPath, onCreateFromSession: handleCreateFromSession }), featureFlags.envDeploy ? (_jsxs(_Fragment, { children: [_jsx(TooltipProvider, { children: _jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("span", { className: "flex items-center", children: _jsx(ActionButton, { label: isDeploymentActive ? 'Stop Dev Server' : 'Start Dev Server', onClick: isDeploymentActive ? deployAction.stop : deployAction.deploy, loading: deployAction.deployLoading || deployAction.stopLoading, error: !!deployAction.deployError, icon: isDeploymentActive ? Square : Play, iconOnly: true, variant: "ghost", size: "icon-xs" }) }) }), _jsx(TooltipContent, { children: isDeploymentActive ? 'Stop Dev Server' : 'Start Dev Server' })] }) }), isDeploymentActive ? (_jsx(DeploymentStatusBadge, { status: deployAction.status, url: deployAction.url, targetId: data.repositoryPath })) : null] })) : null] })) : null, data.onAdd ? (_jsx(TooltipProvider, { children: _jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("button", { "aria-label": "Add feature", "data-testid": "repository-node-add-button", onClick: (e) => {
|
|
76
|
+
e.stopPropagation();
|
|
77
|
+
data.onAdd?.();
|
|
78
|
+
}, className: cn('text-muted-foreground hover:bg-accent dark:hover:bg-accent/50 flex h-6 w-6 shrink-0 cursor-pointer items-center justify-center rounded-full transition-colors hover:text-blue-500', data.pulseAdd &&
|
|
79
|
+
'animate-pulse-cta bg-blue-100 text-blue-500 dark:bg-blue-900/40'), children: _jsx(Plus, { className: "h-3.5 w-3.5" }) }) }), _jsx(TooltipContent, { children: "Add feature" })] }) })) : null] })] }), data.onAdd || data.showHandles ? (_jsx(Handle, { type: "source", position: Position.Right, isConnectable: !data.showHandles, className: "opacity-0!" })) : null] }));
|
|
80
80
|
}
|
package/dist/src/presentation/web/components/common/repository-node/repository-node.stories.d.ts
CHANGED
|
@@ -14,6 +14,4 @@ export declare const WithActions: Story;
|
|
|
14
14
|
export declare const WithActionsAndAddButton: Story;
|
|
15
15
|
export declare const WithDeleteButton: Story;
|
|
16
16
|
export declare const MultipleWithActions: Story;
|
|
17
|
-
export declare const WithGitInfo: Story;
|
|
18
|
-
export declare const WithGitInfoBehind: Story;
|
|
19
17
|
//# sourceMappingURL=repository-node.stories.d.ts.map
|
package/dist/src/presentation/web/components/common/repository-node/repository-node.stories.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repository-node.stories.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/common/repository-node/repository-node.stories.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAGvD,OAAO,KAAK,EAAE,kBAAkB,EAAsB,MAAM,0BAA0B,CAAC;AAgCvF,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,kBAAkB,
|
|
1
|
+
{"version":3,"file":"repository-node.stories.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/common/repository-node/repository-node.stories.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAGvD,OAAO,KAAK,EAAE,kBAAkB,EAAsB,MAAM,0BAA0B,CAAC;AAgCvF,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,kBAAkB,CASlC,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAAC;AAE1C,eAAO,MAAM,OAAO,EAAE,KAErB,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,KAK3B,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,KAKzB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAKtB,CAAC;AAWF,eAAO,MAAM,QAAQ,EAAE,KAwBtB,CAAC;AASF,eAAO,MAAM,kBAAkB,EAAE,KAwBhC,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAS1B,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,KAKzB,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,KAQrC,CAAC;AAIF,eAAO,MAAM,gBAAgB,EAAE,KAS9B,CAAC;AA2BF,eAAO,MAAM,mBAAmB,EAAE,KAwBjC,CAAC"}
|