From 003e72406d483cb2cf5964f484fb8c605667bedd Mon Sep 17 00:00:00 2001 From: Benjamin Lu Date: Thu, 8 Jan 2026 20:00:49 -0800 Subject: [PATCH] refactor: move queue files under domain --- browser_tests/helpers/actionbar.ts | 2 +- src/components/TopMenuSection.vue | 4 ++-- src/components/actionbar/BatchCountEdit.vue | 2 +- .../ComfyRunButton/ComfyQueueButton.vue | 2 +- .../tabs/AssetsSidebarListView.stories.ts | 6 +++--- .../sidebar/tabs/AssetsSidebarListView.vue | 12 +++++------ .../sidebar/tabs/AssetsSidebarTab.vue | 2 +- .../sidebar/tabs/queue/ResultAudio.vue | 2 +- .../sidebar/tabs/queue/ResultGallery.test.ts | 2 +- .../sidebar/tabs/queue/ResultGallery.vue | 2 +- .../sidebar/tabs/queue/ResultVideo.vue | 2 +- src/composables/useCoreCommands.ts | 2 +- .../components/AssetsListCard.stories.ts | 2 +- .../assets/composables/media/assetMappers.ts | 2 +- .../useMediaAssetGalleryStore.test.ts | 4 ++-- .../composables/useMediaAssetGalleryStore.ts | 2 +- .../assets/schemas/assetMetadataSchema.ts | 2 +- .../CompletionSummaryBanner.stories.ts | 0 .../CompletionSummaryBanner.test.ts | 0 .../components}/CompletionSummaryBanner.vue | 2 +- .../components}/QueueOverlayActive.test.ts | 0 .../components}/QueueOverlayActive.vue | 0 .../components}/QueueOverlayEmpty.test.ts | 2 +- .../components}/QueueOverlayEmpty.vue | 4 ++-- .../components}/QueueOverlayExpanded.vue | 6 +++--- .../components}/QueueOverlayHeader.test.ts | 0 .../components}/QueueOverlayHeader.vue | 0 .../components}/QueueProgressOverlay.vue | 20 +++++++++---------- .../dialogs/QueueClearHistoryDialog.vue | 2 +- .../components}/job/JobContextMenu.vue | 2 +- .../job/JobDetailsPopover.stories.ts | 2 +- .../components}/job/JobDetailsPopover.vue | 6 +++--- .../components}/job/JobFiltersBar.vue | 4 ++-- .../components}/job/JobGroupsList.vue | 4 ++-- .../components}/job/QueueAssetPreview.vue | 0 .../components}/job/QueueJobItem.stories.ts | 0 .../components}/job/QueueJobItem.vue | 8 ++++---- .../components}/job/useJobErrorReporting.ts | 2 +- .../components}/job/useQueueEstimates.test.ts | 4 ++-- .../components}/job/useQueueEstimates.ts | 4 ++-- .../composables}/useCompletionSummary.ts | 4 ++-- .../composables}/useJobActions.ts | 6 +++--- .../queue => queue/composables}/useJobList.ts | 12 +++++------ .../queue => queue/composables}/useJobMenu.ts | 6 +++--- .../composables}/useQueueProgress.ts | 0 .../composables}/useResultGallery.ts | 4 ++-- src/{ => queue}/services/autoQueueService.ts | 2 +- src/{ => queue}/stores/queueStore.ts | 0 src/{ => queue}/types/queue.ts | 0 src/{ => queue}/utils/queueDisplay.ts | 4 ++-- src/{ => queue}/utils/queueUtil.ts | 4 ++-- .../components/WidgetSelectDropdown.vue | 2 +- src/stores/README.md | 7 +++---- src/stores/assetsStore.ts | 2 +- src/stores/workspaceStore.ts | 2 +- src/storybook/mocks/useJobActions.ts | 4 ++-- src/storybook/mocks/useJobList.ts | 4 ++-- src/views/GraphView.vue | 4 ++-- src/views/LinearView.vue | 2 +- .../components/queue/JobGroupsList.test.ts | 5 ++--- .../queue/useJobErrorReporting.test.ts | 6 +++--- .../composables/useCompletionSummary.test.ts | 6 +++--- tests-ui/tests/composables/useJobList.test.ts | 18 ++++++++--------- tests-ui/tests/composables/useJobMenu.test.ts | 8 ++++---- .../composables/useQueueProgress.test.ts | 2 +- .../composables/useResultGallery.test.ts | 4 ++-- .../composables/useWidgetRenderer.test.ts | 2 +- tests-ui/tests/store/assetsStore.test.ts | 2 +- tests-ui/tests/store/queueStore.test.ts | 2 +- .../stores/queueStore.loadWorkflow.test.ts | 2 +- 70 files changed, 124 insertions(+), 126 deletions(-) rename src/{components/queue => queue/components}/CompletionSummaryBanner.stories.ts (100%) rename src/{components/queue => queue/components}/CompletionSummaryBanner.test.ts (100%) rename src/{components/queue => queue/components}/CompletionSummaryBanner.vue (98%) rename src/{components/queue => queue/components}/QueueOverlayActive.test.ts (100%) rename src/{components/queue => queue/components}/QueueOverlayActive.vue (100%) rename src/{components/queue => queue/components}/QueueOverlayEmpty.test.ts (96%) rename src/{components/queue => queue/components}/QueueOverlayEmpty.vue (82%) rename src/{components/queue => queue/components}/QueueOverlayExpanded.vue (96%) rename src/{components/queue => queue/components}/QueueOverlayHeader.test.ts (100%) rename src/{components/queue => queue/components}/QueueOverlayHeader.vue (100%) rename src/{components/queue => queue/components}/QueueProgressOverlay.vue (93%) rename src/{components/queue => queue/components}/dialogs/QueueClearHistoryDialog.vue (97%) rename src/{components/queue => queue/components}/job/JobContextMenu.vue (96%) rename src/{components/queue => queue/components}/job/JobDetailsPopover.stories.ts (99%) rename src/{components/queue => queue/components}/job/JobDetailsPopover.vue (98%) rename src/{components/queue => queue/components}/job/JobFiltersBar.vue (98%) rename src/{components/queue => queue/components}/job/JobGroupsList.vue (95%) rename src/{components/queue => queue/components}/job/QueueAssetPreview.vue (100%) rename src/{components/queue => queue/components}/job/QueueJobItem.stories.ts (100%) rename src/{components/queue => queue/components}/job/QueueJobItem.vue (97%) rename src/{components/queue => queue/components}/job/useJobErrorReporting.ts (97%) rename src/{components/queue => queue/components}/job/useQueueEstimates.test.ts (98%) rename src/{components/queue => queue/components}/job/useQueueEstimates.ts (97%) rename src/{composables/queue => queue/composables}/useCompletionSummary.ts (96%) rename src/{composables/queue => queue/composables}/useJobActions.ts (88%) rename src/{composables/queue => queue/composables}/useJobList.ts (96%) rename src/{composables/queue => queue/composables}/useJobMenu.ts (98%) rename src/{composables/queue => queue/composables}/useQueueProgress.ts (100%) rename src/{composables/queue => queue/composables}/useResultGallery.ts (86%) rename src/{ => queue}/services/autoQueueService.ts (97%) rename src/{ => queue}/stores/queueStore.ts (100%) rename src/{ => queue}/types/queue.ts (100%) rename src/{ => queue}/utils/queueDisplay.ts (97%) rename src/{ => queue}/utils/queueUtil.ts (84%) diff --git a/browser_tests/helpers/actionbar.ts b/browser_tests/helpers/actionbar.ts index 6c368c4d6..502b5184f 100644 --- a/browser_tests/helpers/actionbar.ts +++ b/browser_tests/helpers/actionbar.ts @@ -1,6 +1,6 @@ import type { Locator, Page } from '@playwright/test' -import type { AutoQueueMode } from '../../src/stores/queueStore' +import type { AutoQueueMode } from '../../src/queue/stores/queueStore' export class ComfyActionbar { public readonly root: Locator diff --git a/src/components/TopMenuSection.vue b/src/components/TopMenuSection.vue index 0e0ffe627..0328c5f27 100644 --- a/src/components/TopMenuSection.vue +++ b/src/components/TopMenuSection.vue @@ -83,7 +83,7 @@ import { useI18n } from 'vue-i18n' import ComfyActionbar from '@/components/actionbar/ComfyActionbar.vue' import SubgraphBreadcrumb from '@/components/breadcrumb/SubgraphBreadcrumb.vue' -import QueueProgressOverlay from '@/components/queue/QueueProgressOverlay.vue' +import QueueProgressOverlay from '@/queue/components/QueueProgressOverlay.vue' import ActionBarButtons from '@/components/topbar/ActionBarButtons.vue' import CurrentUserButton from '@/components/topbar/CurrentUserButton.vue' import LoginButton from '@/components/topbar/LoginButton.vue' @@ -92,7 +92,7 @@ import { useCurrentUser } from '@/composables/auth/useCurrentUser' import { useErrorHandling } from '@/composables/useErrorHandling' import { buildTooltipConfig } from '@/composables/useTooltipConfig' import { app } from '@/scripts/app' -import { useQueueStore } from '@/stores/queueStore' +import { useQueueStore } from '@/queue/stores/queueStore' import { useRightSidePanelStore } from '@/stores/workspace/rightSidePanelStore' import { useWorkspaceStore } from '@/stores/workspaceStore' import { isElectron } from '@/utils/envUtil' diff --git a/src/components/actionbar/BatchCountEdit.vue b/src/components/actionbar/BatchCountEdit.vue index 603ca6067..03be0e90c 100644 --- a/src/components/actionbar/BatchCountEdit.vue +++ b/src/components/actionbar/BatchCountEdit.vue @@ -38,7 +38,7 @@ import InputNumber from 'primevue/inputnumber' import { computed } from 'vue' import { useSettingStore } from '@/platform/settings/settingStore' -import { useQueueSettingsStore } from '@/stores/queueStore' +import { useQueueSettingsStore } from '@/queue/stores/queueStore' const queueSettingsStore = useQueueSettingsStore() const { batchCount } = storeToRefs(queueSettingsStore) diff --git a/src/components/actionbar/ComfyRunButton/ComfyQueueButton.vue b/src/components/actionbar/ComfyRunButton/ComfyQueueButton.vue index 4c0ea84e4..fd7ea05c5 100644 --- a/src/components/actionbar/ComfyRunButton/ComfyQueueButton.vue +++ b/src/components/actionbar/ComfyRunButton/ComfyQueueButton.vue @@ -48,7 +48,7 @@ import { useTelemetry } from '@/platform/telemetry' import { app } from '@/scripts/app' import { useCommandStore } from '@/stores/commandStore' import { useNodeDefStore } from '@/stores/nodeDefStore' -import { useQueueSettingsStore } from '@/stores/queueStore' +import { useQueueSettingsStore } from '@/queue/stores/queueStore' import { useWorkspaceStore } from '@/stores/workspaceStore' import { graphHasMissingNodes } from '@/workbench/extensions/manager/utils/graphHasMissingNodes' diff --git a/src/components/sidebar/tabs/AssetsSidebarListView.stories.ts b/src/components/sidebar/tabs/AssetsSidebarListView.stories.ts index fcbdf655d..98db019ec 100644 --- a/src/components/sidebar/tabs/AssetsSidebarListView.stories.ts +++ b/src/components/sidebar/tabs/AssetsSidebarListView.stories.ts @@ -1,11 +1,11 @@ import type { Meta, StoryObj } from '@storybook/vue3-vite' -import type { JobAction } from '@/composables/queue/useJobActions' -import type { JobListItem } from '@/composables/queue/useJobList' +import type { JobAction } from '@/queue/composables/useJobActions' +import type { JobListItem } from '@/queue/composables/useJobList' import type { AssetItem } from '@/platform/assets/schemas/assetSchema' import { setMockJobActions } from '@/storybook/mocks/useJobActions' import { setMockJobItems } from '@/storybook/mocks/useJobList' -import { iconForJobState } from '@/utils/queueDisplay' +import { iconForJobState } from '@/queue/utils/queueDisplay' import AssetsSidebarListView from './AssetsSidebarListView.vue' diff --git a/src/components/sidebar/tabs/AssetsSidebarListView.vue b/src/components/sidebar/tabs/AssetsSidebarListView.vue index c746627cb..20c7c4d20 100644 --- a/src/components/sidebar/tabs/AssetsSidebarListView.vue +++ b/src/components/sidebar/tabs/AssetsSidebarListView.vue @@ -95,21 +95,21 @@ import { useI18n } from 'vue-i18n' import VirtualGrid from '@/components/common/VirtualGrid.vue' import Button from '@/components/ui/button/Button.vue' -import type { JobAction } from '@/composables/queue/useJobActions' -import { useJobActions } from '@/composables/queue/useJobActions' -import type { JobListItem } from '@/composables/queue/useJobList' -import { useJobList } from '@/composables/queue/useJobList' +import type { JobAction } from '@/queue/composables/useJobActions' +import { useJobActions } from '@/queue/composables/useJobActions' +import type { JobListItem } from '@/queue/composables/useJobList' +import { useJobList } from '@/queue/composables/useJobList' import AssetsListCard from '@/platform/assets/components/AssetsListCard.vue' import { getOutputAssetMetadata } from '@/platform/assets/schemas/assetMetadataSchema' import type { AssetItem } from '@/platform/assets/schemas/assetSchema' -import type { JobState } from '@/types/queue' +import type { JobState } from '@/queue/types/queue' import { formatDuration, formatSize, getMediaTypeFromFilename, truncateFilename } from '@/utils/formatUtil' -import { iconForJobState } from '@/utils/queueDisplay' +import { iconForJobState } from '@/queue/utils/queueDisplay' import { cn } from '@/utils/tailwindUtil' const { assets, isSelected } = defineProps<{ diff --git a/src/components/sidebar/tabs/AssetsSidebarTab.vue b/src/components/sidebar/tabs/AssetsSidebarTab.vue index 7b8ed9ec3..bf6885a4e 100644 --- a/src/components/sidebar/tabs/AssetsSidebarTab.vue +++ b/src/components/sidebar/tabs/AssetsSidebarTab.vue @@ -234,7 +234,7 @@ import { isCloud } from '@/platform/distribution/types' import { useSettingStore } from '@/platform/settings/settingStore' import { useCommandStore } from '@/stores/commandStore' import { useDialogStore } from '@/stores/dialogStore' -import { ResultItemImpl, useQueueStore } from '@/stores/queueStore' +import { ResultItemImpl, useQueueStore } from '@/queue/stores/queueStore' import { formatDuration, getMediaTypeFromFilename } from '@/utils/formatUtil' import { cn } from '@/utils/tailwindUtil' diff --git a/src/components/sidebar/tabs/queue/ResultAudio.vue b/src/components/sidebar/tabs/queue/ResultAudio.vue index 7a55fb854..7af2be80d 100644 --- a/src/components/sidebar/tabs/queue/ResultAudio.vue +++ b/src/components/sidebar/tabs/queue/ResultAudio.vue @@ -8,7 +8,7 @@