refactor(task-page): colocate repository selection modules (#32909)

This commit is contained in:
Neil
2026-10-23 12:58:08 -07:00
committed by GitHub
parent 2670e732f1
commit 47c8e2d2ca
11 changed files with 17 additions and 17 deletions
+2 -2
View File
@@ -8720,7 +8720,7 @@
"src/renderer/src/components/tab-group/workspace-tab-close-commands.floating-reclaim.test.ts": 1405,
"src/renderer/src/components/task-page-cache-selectors.test.ts": 69,
"src/renderer/src/components/task-page-checks-pill.test.ts": 39,
"src/renderer/src/components/task-page-default-repo-selection.test.ts": 54,
"src/renderer/src/components/task-page/task-page-default-repo-selection.test.ts": 54,
"src/renderer/src/components/task-page-empty-state.test.ts": 62,
"src/renderer/src/components/task-page-github-dialog-state-authority.test.ts": 67,
"src/renderer/src/components/task-page-github-list-scroll-restore.test.ts": 163,
@@ -8735,7 +8735,7 @@
"src/renderer/src/components/task-page-github-work-item-mutations.test.ts": 159,
"src/renderer/src/components/task-page-github-work-item-status.test.ts": 37,
"src/renderer/src/components/task-page-gitlab-task-filters.test.ts": 1370,
"src/renderer/src/components/task-page-initial-selection-scaling.test.tsx": 1587,
"src/renderer/src/components/task-page/task-page-initial-selection-scaling.test.tsx": 1587,
"src/renderer/src/components/task-page-jira-board-detail-integration.test.tsx": 2017,
"src/renderer/src/components/task-page-jira-board-sections.test.ts": 1498,
"src/renderer/src/components/task-page-jira-board-transitions.test.ts": 49,
@@ -19,7 +19,7 @@ import { normalizeVisibleTaskProviders, type TaskProvider } from '../../../../sh
import type { Repo } from '../../../../shared/repo-types'
import type { GlobalSettings } from '../../../../shared/global-settings-types'
import type { PaletteFilterState } from './palette-filter'
import { getTaskEligibleRepos } from '../task-page-default-repo-selection'
import { getTaskEligibleRepos } from '../task-page/task-page-default-repo-selection'
import { getRepoBackedProviderAvailability } from '../task-source-provider-availability'
import { getTaskPageRepoSourceContext } from '../task-page-source-context'
import { searchJiraIssuesByKeyOrText } from '../jira-key-or-text-search'
@@ -1,7 +1,7 @@
import type { TaskPageComposerActionsModel } from '../../use-task-page-composer-actions'
import { cn } from '@/lib/utils'
import TaskProjectSourceCombobox from '@/components/task-project-source-combobox'
import { normalizeTaskRepoSelection } from '@/components/task-page-default-repo-selection'
import { normalizeTaskRepoSelection } from '@/components/task-page/task-page-default-repo-selection'
import { toast } from 'sonner'
import { translate } from '@/i18n/i18n'
import { Tooltip, TooltipTrigger, TooltipContent } from '@/components/ui/tooltip'
@@ -1,7 +1,7 @@
import type { TaskPageComposerActionsModel } from '../../use-task-page-composer-actions'
import { cn } from '@/lib/utils'
import TaskProjectSourceCombobox from '@/components/task-project-source-combobox'
import { normalizeTaskRepoSelection } from '@/components/task-page-default-repo-selection'
import { normalizeTaskRepoSelection } from '@/components/task-page/task-page-default-repo-selection'
import { toast } from 'sonner'
import { translate } from '@/i18n/i18n'
import { Tooltip, TooltipTrigger, TooltipContent } from '@/components/ui/tooltip'
@@ -1,5 +1,5 @@
import { describe, expect, it } from 'vitest'
import type { Repo } from '../../../shared/repo-types'
import type { Repo } from '../../../../shared/repo-types'
import {
getDefaultTaskRepoSelection,
getTaskEligibleRepos,
@@ -1,11 +1,11 @@
import { getRepoExecutionHostId, LOCAL_EXECUTION_HOST_ID } from '../../../shared/execution-host'
import { getRepoExecutionHostId, LOCAL_EXECUTION_HOST_ID } from '../../../../shared/execution-host'
import {
getProjectIdentityKey,
hasProjectRemoteIdentity,
isProjectRemoteIdentityPending
} from '../../../shared/project-host-setup-projection'
import { isGitRepoKind } from '../../../shared/repo-kind'
import type { Repo } from '../../../shared/repo-types'
} from '../../../../shared/project-host-setup-projection'
import { isGitRepoKind } from '../../../../shared/repo-kind'
import type { Repo } from '../../../../shared/repo-types'
export type TaskProjectPickerGroup = {
projectKey: string
@@ -1,8 +1,8 @@
import { describe, expect, it } from 'vitest'
import { renderToString } from 'react-dom/server'
import type { Repo } from '../../../shared/repo-types'
import type { TaskPageStoreBindingsModel } from './use-task-page-store-bindings'
import { useTaskPageRepoSelection } from './use-task-page-repo-selection'
import type { Repo } from '../../../../shared/repo-types'
import type { TaskPageStoreBindingsModel } from '../use-task-page-store-bindings'
import { useTaskPageRepoSelection } from '../use-task-page-repo-selection'
function resolveSelection(repos: Repo[], persisted: string[], preferred?: string) {
let selected: readonly string[] = []
@@ -1,6 +1,6 @@
import { getRepoExecutionHostId } from '../../../shared/execution-host'
import type { Repo } from '../../../shared/repo-types'
import type { TaskProjectPickerGroup } from './task-page-default-repo-selection'
import type { TaskProjectPickerGroup } from './task-page/task-page-default-repo-selection'
export function selectedTaskProjectGroups(
groups: readonly TaskProjectPickerGroup[],
@@ -8,7 +8,7 @@ import { isRepoSearchQueryTooLarge, searchRepos } from '@/lib/repo-search'
import { cn } from '@/lib/utils'
import { translate } from '@/i18n/i18n'
import type { Repo } from '../../../shared/repo-types'
import type { TaskProjectPickerGroup } from './task-page-default-repo-selection'
import type { TaskProjectPickerGroup } from './task-page/task-page-default-repo-selection'
import {
getSelectedTaskProjectSource,
hasMultipleTaskProjectHosts,
@@ -5,8 +5,8 @@ import {
normalizeTaskRepoSelection,
getDefaultTaskRepoSelection,
getTaskProjectPickerGroups
} from '@/components/task-page-default-repo-selection'
import { areStringSetsEqual } from '@/components/task-page-string-set-equality'
} from '@/components/task-page/task-page-default-repo-selection'
import { areStringSetsEqual } from '@/components/task-page/task-page-string-set-equality'
import { buildSelectedReposKey } from '@/components/task-page-work-item-pagination'
import {
normalizeVisibleTaskProviders,