diff --git a/.gitattributes b/.gitattributes index de05efbf4..bd0518cde 100644 --- a/.gitattributes +++ b/.gitattributes @@ -13,4 +13,4 @@ # Generated files src/types/comfyRegistryTypes.ts linguist-generated=true -src/types/generatedManagerTypes.ts linguist-generated=true +src/workbench/extensions/manager/types/generatedManagerTypes.ts linguist-generated=true diff --git a/knip.config.ts b/knip.config.ts index 81911a736..0dcbf7d50 100644 --- a/knip.config.ts +++ b/knip.config.ts @@ -22,7 +22,7 @@ const config: KnipConfig = { ], ignore: [ // Auto generated manager types - 'src/types/generatedManagerTypes.ts', + 'src/workbench/extensions/manager/types/generatedManagerTypes.ts', 'src/types/comfyRegistryTypes.ts', // Used by a custom node (that should move off of this) 'src/scripts/ui/components/splitButton.ts', diff --git a/src/components/dialog/content/LoadWorkflowWarning.vue b/src/components/dialog/content/LoadWorkflowWarning.vue index 1adcc2fe9..a89c94981 100644 --- a/src/components/dialog/content/LoadWorkflowWarning.vue +++ b/src/components/dialog/content/LoadWorkflowWarning.vue @@ -59,14 +59,13 @@ import { useI18n } from 'vue-i18n' import NoResultsPlaceholder from '@/components/common/NoResultsPlaceholder.vue' import MissingCoreNodesMessage from '@/components/dialog/content/MissingCoreNodesMessage.vue' import { useMissingNodes } from '@/composables/nodePack/useMissingNodes' -import { useManagerState } from '@/composables/useManagerState' import { useToastStore } from '@/platform/updates/common/toastStore' -import { useComfyManagerStore } from '@/stores/comfyManagerStore' import { useDialogStore } from '@/stores/dialogStore' import type { MissingNodeType } from '@/types/comfy' -import { ManagerTab } from '@/types/comfyManagerTypes' - -import PackInstallButton from './manager/button/PackInstallButton.vue' +import PackInstallButton from '@/workbench/extensions/manager/components/manager/button/PackInstallButton.vue' +import { useManagerState } from '@/workbench/extensions/manager/composables/useManagerState' +import { useComfyManagerStore } from '@/workbench/extensions/manager/stores/comfyManagerStore' +import { ManagerTab } from '@/workbench/extensions/manager/types/comfyManagerTypes' const props = defineProps<{ missingNodeTypes: MissingNodeType[] diff --git a/src/components/helpcenter/HelpCenterMenuContent.vue b/src/components/helpcenter/HelpCenterMenuContent.vue index 5885d56d1..aef8ff751 100644 --- a/src/components/helpcenter/HelpCenterMenuContent.vue +++ b/src/components/helpcenter/HelpCenterMenuContent.vue @@ -142,14 +142,14 @@ import { useI18n } from 'vue-i18n' import PuzzleIcon from '@/components/icons/PuzzleIcon.vue' import { useConflictAcknowledgment } from '@/composables/useConflictAcknowledgment' -import { useManagerState } from '@/composables/useManagerState' import { useSettingStore } from '@/platform/settings/settingStore' import type { ReleaseNote } from '@/platform/updates/common/releaseService' import { useReleaseStore } from '@/platform/updates/common/releaseStore' import { useCommandStore } from '@/stores/commandStore' -import { ManagerTab } from '@/types/comfyManagerTypes' import { electronAPI, isElectron } from '@/utils/envUtil' import { formatVersionAnchor } from '@/utils/formatUtil' +import { useManagerState } from '@/workbench/extensions/manager/composables/useManagerState' +import { ManagerTab } from '@/workbench/extensions/manager/types/comfyManagerTypes' // Types interface MenuItem { diff --git a/src/components/topbar/CommandMenubar.vue b/src/components/topbar/CommandMenubar.vue index 9ab70f3a0..e9f33f812 100644 --- a/src/components/topbar/CommandMenubar.vue +++ b/src/components/topbar/CommandMenubar.vue @@ -82,7 +82,6 @@ import { useI18n } from 'vue-i18n' import SubgraphBreadcrumb from '@/components/breadcrumb/SubgraphBreadcrumb.vue' import SettingDialogHeader from '@/components/dialog/header/SettingDialogHeader.vue' -import { useManagerState } from '@/composables/useManagerState' import SettingDialogContent from '@/platform/settings/components/SettingDialogContent.vue' import { useSettingStore } from '@/platform/settings/settingStore' import { useColorPaletteService } from '@/services/colorPaletteService' @@ -90,10 +89,11 @@ import { useCommandStore } from '@/stores/commandStore' import { useDialogStore } from '@/stores/dialogStore' import { useMenuItemStore } from '@/stores/menuItemStore' import { useColorPaletteStore } from '@/stores/workspace/colorPaletteStore' -import { ManagerTab } from '@/types/comfyManagerTypes' import { showNativeSystemMenu } from '@/utils/envUtil' import { normalizeI18nKey } from '@/utils/formatUtil' import { whileMouseDown } from '@/utils/mouseDownUtil' +import { useManagerState } from '@/workbench/extensions/manager/composables/useManagerState' +import { ManagerTab } from '@/workbench/extensions/manager/types/comfyManagerTypes' const colorPaletteStore = useColorPaletteStore() const colorPaletteService = useColorPaletteService() diff --git a/src/composables/nodePack/useInstalledPacks.ts b/src/composables/nodePack/useInstalledPacks.ts index 147c5ca70..5d2f5b88d 100644 --- a/src/composables/nodePack/useInstalledPacks.ts +++ b/src/composables/nodePack/useInstalledPacks.ts @@ -2,9 +2,9 @@ import { whenever } from '@vueuse/core' import { computed, onUnmounted, ref } from 'vue' import { useNodePacks } from '@/composables/nodePack/useNodePacks' -import { useComfyManagerStore } from '@/stores/comfyManagerStore' -import type { UseNodePacksOptions } from '@/types/comfyManagerTypes' import type { components } from '@/types/comfyRegistryTypes' +import { useComfyManagerStore } from '@/workbench/extensions/manager/stores/comfyManagerStore' +import type { UseNodePacksOptions } from '@/workbench/extensions/manager/types/comfyManagerTypes' export const useInstalledPacks = (options: UseNodePacksOptions = {}) => { const comfyManagerStore = useComfyManagerStore() diff --git a/src/composables/nodePack/useMissingNodes.ts b/src/composables/nodePack/useMissingNodes.ts index cd2c25abf..4a17a5e42 100644 --- a/src/composables/nodePack/useMissingNodes.ts +++ b/src/composables/nodePack/useMissingNodes.ts @@ -5,10 +5,10 @@ import { useWorkflowPacks } from '@/composables/nodePack/useWorkflowPacks' import type { NodeProperty } from '@/lib/litegraph/src/LGraphNode' import type { LGraphNode } from '@/lib/litegraph/src/litegraph' import { app } from '@/scripts/app' -import { useComfyManagerStore } from '@/stores/comfyManagerStore' import { useNodeDefStore } from '@/stores/nodeDefStore' import type { components } from '@/types/comfyRegistryTypes' import { collectAllNodes } from '@/utils/graphTraversalUtil' +import { useComfyManagerStore } from '@/workbench/extensions/manager/stores/comfyManagerStore' /** * Composable to find missing NodePacks from workflow diff --git a/src/composables/nodePack/useNodePacks.ts b/src/composables/nodePack/useNodePacks.ts index a9616d8c8..2a8852ca2 100644 --- a/src/composables/nodePack/useNodePacks.ts +++ b/src/composables/nodePack/useNodePacks.ts @@ -2,7 +2,7 @@ import { get, useAsyncState } from '@vueuse/core' import type { Ref } from 'vue' import { useComfyRegistryStore } from '@/stores/comfyRegistryStore' -import type { UseNodePacksOptions } from '@/types/comfyManagerTypes' +import type { UseNodePacksOptions } from '@/workbench/extensions/manager/types/comfyManagerTypes' /** * Handles fetching node packs from the registry given a list of node pack IDs diff --git a/src/composables/nodePack/usePackUpdateStatus.ts b/src/composables/nodePack/usePackUpdateStatus.ts index f8344cd2b..4de9d952d 100644 --- a/src/composables/nodePack/usePackUpdateStatus.ts +++ b/src/composables/nodePack/usePackUpdateStatus.ts @@ -1,8 +1,8 @@ import { computed } from 'vue' -import { useComfyManagerStore } from '@/stores/comfyManagerStore' import type { components } from '@/types/comfyRegistryTypes' import { compareVersions, isSemVer } from '@/utils/formatUtil' +import { useComfyManagerStore } from '@/workbench/extensions/manager/stores/comfyManagerStore' export const usePackUpdateStatus = ( nodePack: components['schemas']['Node'] diff --git a/src/composables/nodePack/usePacksSelection.ts b/src/composables/nodePack/usePacksSelection.ts index 7bfbaa4c3..a5d382767 100644 --- a/src/composables/nodePack/usePacksSelection.ts +++ b/src/composables/nodePack/usePacksSelection.ts @@ -1,7 +1,7 @@ import { type Ref, computed } from 'vue' -import { useComfyManagerStore } from '@/stores/comfyManagerStore' import type { components } from '@/types/comfyRegistryTypes' +import { useComfyManagerStore } from '@/workbench/extensions/manager/stores/comfyManagerStore' type NodePack = components['schemas']['Node'] diff --git a/src/composables/nodePack/useUpdateAvailableNodes.ts b/src/composables/nodePack/useUpdateAvailableNodes.ts index 593c867d5..675a97d16 100644 --- a/src/composables/nodePack/useUpdateAvailableNodes.ts +++ b/src/composables/nodePack/useUpdateAvailableNodes.ts @@ -1,9 +1,9 @@ import { computed, onMounted } from 'vue' import { useInstalledPacks } from '@/composables/nodePack/useInstalledPacks' -import { useComfyManagerStore } from '@/stores/comfyManagerStore' import type { components } from '@/types/comfyRegistryTypes' import { compareVersions, isSemVer } from '@/utils/formatUtil' +import { useComfyManagerStore } from '@/workbench/extensions/manager/stores/comfyManagerStore' /** * Composable to find NodePacks that have updates available diff --git a/src/composables/nodePack/useWorkflowPacks.ts b/src/composables/nodePack/useWorkflowPacks.ts index 7284f178b..532a15edc 100644 --- a/src/composables/nodePack/useWorkflowPacks.ts +++ b/src/composables/nodePack/useWorkflowPacks.ts @@ -7,9 +7,9 @@ import { app } from '@/scripts/app' import { useComfyRegistryStore } from '@/stores/comfyRegistryStore' import { useNodeDefStore } from '@/stores/nodeDefStore' import { useSystemStatsStore } from '@/stores/systemStatsStore' -import type { UseNodePacksOptions } from '@/types/comfyManagerTypes' import type { components } from '@/types/comfyRegistryTypes' import { collectAllNodes } from '@/utils/graphTraversalUtil' +import type { UseNodePacksOptions } from '@/workbench/extensions/manager/types/comfyManagerTypes' type WorkflowPack = { id: diff --git a/src/composables/useConflictDetection.ts b/src/composables/useConflictDetection.ts index abf4d9498..2a30a4045 100644 --- a/src/composables/useConflictDetection.ts +++ b/src/composables/useConflictDetection.ts @@ -5,9 +5,7 @@ import { computed, getCurrentInstance, onUnmounted, readonly, ref } from 'vue' import { useInstalledPacks } from '@/composables/nodePack/useInstalledPacks' import { useConflictAcknowledgment } from '@/composables/useConflictAcknowledgment' import config from '@/config' -import { useComfyManagerService } from '@/services/comfyManagerService' import { useComfyRegistryService } from '@/services/comfyRegistryService' -import { useComfyManagerStore } from '@/stores/comfyManagerStore' import { useConflictDetectionStore } from '@/stores/conflictDetectionStore' import { useSystemStatsStore } from '@/stores/systemStatsStore' import type { SystemStats } from '@/types' @@ -28,6 +26,8 @@ import { satisfiesVersion, utilCheckVersionCompatibility } from '@/utils/versionUtil' +import { useComfyManagerService } from '@/workbench/extensions/manager/services/comfyManagerService' +import { useComfyManagerStore } from '@/workbench/extensions/manager/stores/comfyManagerStore' /** * Composable for conflict detection system. @@ -641,7 +641,9 @@ export function useConflictDetection() { async function initializeConflictDetection(): Promise { try { // Check if manager is new Manager before proceeding - const { useManagerState } = await import('@/composables/useManagerState') + const { useManagerState } = await import( + '@/workbench/extensions/manager/composables/useManagerState' + ) const managerState = useManagerState() if (!managerState.isNewManagerUI.value) { diff --git a/src/composables/useCoreCommands.ts b/src/composables/useCoreCommands.ts index c7488a36e..6f01d9a29 100644 --- a/src/composables/useCoreCommands.ts +++ b/src/composables/useCoreCommands.ts @@ -1,6 +1,5 @@ import { useFirebaseAuthActions } from '@/composables/auth/useFirebaseAuthActions' import { useSelectedLiteGraphItems } from '@/composables/canvas/useSelectedLiteGraphItems' -import { ManagerUIState, useManagerState } from '@/composables/useManagerState' import { useModelSelectorDialog } from '@/composables/useModelSelectorDialog' import { DEFAULT_DARK_COLOR_PALETTE, @@ -41,12 +40,16 @@ import { useBottomPanelStore } from '@/stores/workspace/bottomPanelStore' import { useColorPaletteStore } from '@/stores/workspace/colorPaletteStore' import { useSearchBoxStore } from '@/stores/workspace/searchBoxStore' import { useWorkspaceStore } from '@/stores/workspaceStore' -import { ManagerTab } from '@/types/comfyManagerTypes' import { getAllNonIoNodesInSubgraph, getExecutionIdsForSelectedNodes } from '@/utils/graphTraversalUtil' import { filterOutputNodes } from '@/utils/nodeFilterUtil' +import { + ManagerUIState, + useManagerState +} from '@/workbench/extensions/manager/composables/useManagerState' +import { ManagerTab } from '@/workbench/extensions/manager/types/comfyManagerTypes' const moveSelectedNodesVersionAdded = '1.22.2' diff --git a/src/composables/useImportFailedDetection.ts b/src/composables/useImportFailedDetection.ts index b6cd8c791..7d77841e6 100644 --- a/src/composables/useImportFailedDetection.ts +++ b/src/composables/useImportFailedDetection.ts @@ -2,9 +2,9 @@ import { type ComputedRef, computed, unref } from 'vue' import { useI18n } from 'vue-i18n' import { useDialogService } from '@/services/dialogService' -import { useComfyManagerStore } from '@/stores/comfyManagerStore' import { useConflictDetectionStore } from '@/stores/conflictDetectionStore' import type { ConflictDetail } from '@/types/conflictDetectionTypes' +import { useComfyManagerStore } from '@/workbench/extensions/manager/stores/comfyManagerStore' /** * Extracting import failed conflicts from conflict list diff --git a/src/composables/useRegistrySearch.ts b/src/composables/useRegistrySearch.ts index 0a42e7b9a..c6dc9e90e 100644 --- a/src/composables/useRegistrySearch.ts +++ b/src/composables/useRegistrySearch.ts @@ -5,9 +5,9 @@ import { computed, ref, watch } from 'vue' import { DEFAULT_PAGE_SIZE } from '@/constants/searchConstants' import { useRegistrySearchGateway } from '@/services/gateway/registrySearchGateway' import type { SearchAttribute } from '@/types/algoliaTypes' -import { SortableAlgoliaField } from '@/types/comfyManagerTypes' import type { components } from '@/types/comfyRegistryTypes' import type { QuerySuggestion, SearchMode } from '@/types/searchServiceTypes' +import { SortableAlgoliaField } from '@/workbench/extensions/manager/types/comfyManagerTypes' type RegistryNodePack = components['schemas']['Node'] diff --git a/src/composables/useServerLogs.ts b/src/composables/useServerLogs.ts index 1fc67cf61..8398f5542 100644 --- a/src/composables/useServerLogs.ts +++ b/src/composables/useServerLogs.ts @@ -3,7 +3,7 @@ import { onUnmounted, ref } from 'vue' import type { LogsWsMessage } from '@/schemas/apiSchema' import { api } from '@/scripts/api' -import type { components } from '@/types/generatedManagerTypes' +import type { components } from '@/workbench/extensions/manager/types/generatedManagerTypes' const LOGS_MESSAGE_TYPE = 'logs' const MANAGER_WS_TASK_DONE_NAME = 'cm-task-completed' diff --git a/src/services/dialogService.ts b/src/services/dialogService.ts index 6023b6284..d6790aa90 100644 --- a/src/services/dialogService.ts +++ b/src/services/dialogService.ts @@ -5,20 +5,12 @@ import ApiNodesSignInContent from '@/components/dialog/content/ApiNodesSignInCon import ConfirmationDialogContent from '@/components/dialog/content/ConfirmationDialogContent.vue' import ErrorDialogContent from '@/components/dialog/content/ErrorDialogContent.vue' import LoadWorkflowWarning from '@/components/dialog/content/LoadWorkflowWarning.vue' -import ManagerProgressDialogContent from '@/components/dialog/content/ManagerProgressDialogContent.vue' import MissingModelsWarning from '@/components/dialog/content/MissingModelsWarning.vue' import PromptDialogContent from '@/components/dialog/content/PromptDialogContent.vue' import SignInContent from '@/components/dialog/content/SignInContent.vue' import TopUpCreditsDialogContent from '@/components/dialog/content/TopUpCreditsDialogContent.vue' import UpdatePasswordContent from '@/components/dialog/content/UpdatePasswordContent.vue' -import ManagerDialogContent from '@/components/dialog/content/manager/ManagerDialogContent.vue' -import ManagerHeader from '@/components/dialog/content/manager/ManagerHeader.vue' -import NodeConflictDialogContent from '@/components/dialog/content/manager/NodeConflictDialogContent.vue' -import NodeConflictFooter from '@/components/dialog/content/manager/NodeConflictFooter.vue' -import NodeConflictHeader from '@/components/dialog/content/manager/NodeConflictHeader.vue' -import ManagerProgressFooter from '@/components/dialog/footer/ManagerProgressFooter.vue' import ComfyOrgHeader from '@/components/dialog/header/ComfyOrgHeader.vue' -import ManagerProgressHeader from '@/components/dialog/header/ManagerProgressHeader.vue' import SettingDialogHeader from '@/components/dialog/header/SettingDialogHeader.vue' import TemplateWorkflowsContent from '@/components/templates/TemplateWorkflowsContent.vue' import TemplateWorkflowsDialogHeader from '@/components/templates/TemplateWorkflowsDialogHeader.vue' @@ -31,6 +23,14 @@ import { useDialogStore } from '@/stores/dialogStore' import type { ConflictDetectionResult } from '@/types/conflictDetectionTypes' +import ManagerProgressDialogContent from '@/workbench/extensions/manager/components/ManagerProgressDialogContent.vue' +import ManagerProgressFooter from '@/workbench/extensions/manager/components/ManagerProgressFooter.vue' +import ManagerProgressHeader from '@/workbench/extensions/manager/components/ManagerProgressHeader.vue' +import ManagerDialogContent from '@/workbench/extensions/manager/components/manager/ManagerDialogContent.vue' +import ManagerHeader from '@/workbench/extensions/manager/components/manager/ManagerHeader.vue' +import NodeConflictDialogContent from '@/workbench/extensions/manager/components/manager/NodeConflictDialogContent.vue' +import NodeConflictFooter from '@/workbench/extensions/manager/components/manager/NodeConflictFooter.vue' +import NodeConflictHeader from '@/workbench/extensions/manager/components/manager/NodeConflictHeader.vue' export type ConfirmationDialogType = | 'default' diff --git a/src/services/providers/algoliaSearchProvider.ts b/src/services/providers/algoliaSearchProvider.ts index ee22ceb48..7edf98580 100644 --- a/src/services/providers/algoliaSearchProvider.ts +++ b/src/services/providers/algoliaSearchProvider.ts @@ -16,7 +16,6 @@ import type { SearchAttribute, SearchNodePacksParams } from '@/types/algoliaTypes' -import { SortableAlgoliaField } from '@/types/comfyManagerTypes' import type { components } from '@/types/comfyRegistryTypes' import type { NodePackSearchProvider, @@ -24,6 +23,7 @@ import type { SortableField } from '@/types/searchServiceTypes' import { paramsToCacheKey } from '@/utils/formatUtil' +import { SortableAlgoliaField } from '@/workbench/extensions/manager/types/comfyManagerTypes' type RegistryNodePack = components['schemas']['Node'] diff --git a/src/components/dialog/content/ManagerProgressDialogContent.test.ts b/src/workbench/extensions/manager/components/ManagerProgressDialogContent.test.ts similarity index 98% rename from src/components/dialog/content/ManagerProgressDialogContent.test.ts rename to src/workbench/extensions/manager/components/ManagerProgressDialogContent.test.ts index ba6b58bcf..5b31975a3 100644 --- a/src/components/dialog/content/ManagerProgressDialogContent.test.ts +++ b/src/workbench/extensions/manager/components/ManagerProgressDialogContent.test.ts @@ -29,7 +29,7 @@ const defaultMockTaskLogs = [ { taskName: 'Task 2', logs: ['Log 3', 'Log 4'] } ] -vi.mock('@/stores/comfyManagerStore', () => ({ +vi.mock('@/workbench/extensions/manager/stores/comfyManagerStore', () => ({ useComfyManagerStore: vi.fn(() => ({ taskLogs: [...defaultMockTaskLogs], succeededTasksLogs: [...defaultMockTaskLogs], diff --git a/src/components/dialog/content/ManagerProgressDialogContent.vue b/src/workbench/extensions/manager/components/ManagerProgressDialogContent.vue similarity index 98% rename from src/components/dialog/content/ManagerProgressDialogContent.vue rename to src/workbench/extensions/manager/components/ManagerProgressDialogContent.vue index 6aad68a91..613d1e2a7 100644 --- a/src/components/dialog/content/ManagerProgressDialogContent.vue +++ b/src/workbench/extensions/manager/components/ManagerProgressDialogContent.vue @@ -88,7 +88,7 @@ import { computed, onBeforeUnmount, onMounted, ref } from 'vue' import { useComfyManagerStore, useManagerProgressDialogStore -} from '@/stores/comfyManagerStore' +} from '@/workbench/extensions/manager/stores/comfyManagerStore' const comfyManagerStore = useComfyManagerStore() const progressDialogContent = useManagerProgressDialogStore() diff --git a/src/components/dialog/footer/ManagerProgressFooter.vue b/src/workbench/extensions/manager/components/ManagerProgressFooter.vue similarity index 97% rename from src/components/dialog/footer/ManagerProgressFooter.vue rename to src/workbench/extensions/manager/components/ManagerProgressFooter.vue index 57edcec24..392310721 100644 --- a/src/components/dialog/footer/ManagerProgressFooter.vue +++ b/src/workbench/extensions/manager/components/ManagerProgressFooter.vue @@ -78,13 +78,13 @@ import { useConflictDetection } from '@/composables/useConflictDetection' import { useSettingStore } from '@/platform/settings/settingStore' import { useWorkflowService } from '@/platform/workflow/core/services/workflowService' import { api } from '@/scripts/api' -import { useComfyManagerService } from '@/services/comfyManagerService' +import { useCommandStore } from '@/stores/commandStore' +import { useDialogStore } from '@/stores/dialogStore' +import { useComfyManagerService } from '@/workbench/extensions/manager/services/comfyManagerService' import { useComfyManagerStore, useManagerProgressDialogStore -} from '@/stores/comfyManagerStore' -import { useCommandStore } from '@/stores/commandStore' -import { useDialogStore } from '@/stores/dialogStore' +} from '@/workbench/extensions/manager/stores/comfyManagerStore' const { t } = useI18n() const dialogStore = useDialogStore() diff --git a/src/components/dialog/header/ManagerProgressHeader.vue b/src/workbench/extensions/manager/components/ManagerProgressHeader.vue similarity index 94% rename from src/components/dialog/header/ManagerProgressHeader.vue rename to src/workbench/extensions/manager/components/ManagerProgressHeader.vue index be61295a8..841119cd0 100644 --- a/src/components/dialog/header/ManagerProgressHeader.vue +++ b/src/workbench/extensions/manager/components/ManagerProgressHeader.vue @@ -24,7 +24,7 @@ import { useI18n } from 'vue-i18n' import { useComfyManagerStore, useManagerProgressDialogStore -} from '@/stores/comfyManagerStore' +} from '@/workbench/extensions/manager/stores/comfyManagerStore' const progressDialogContent = useManagerProgressDialogStore() const comfyManagerStore = useComfyManagerStore() diff --git a/src/components/dialog/content/manager/ManagerDialogContent.vue b/src/workbench/extensions/manager/components/manager/ManagerDialogContent.vue similarity index 94% rename from src/components/dialog/content/manager/ManagerDialogContent.vue rename to src/workbench/extensions/manager/components/manager/ManagerDialogContent.vue index ed6d93b5f..f6c290d30 100644 --- a/src/components/dialog/content/manager/ManagerDialogContent.vue +++ b/src/workbench/extensions/manager/components/manager/ManagerDialogContent.vue @@ -143,24 +143,24 @@ import IconButton from '@/components/button/IconButton.vue' import ContentDivider from '@/components/common/ContentDivider.vue' import NoResultsPlaceholder from '@/components/common/NoResultsPlaceholder.vue' import VirtualGrid from '@/components/common/VirtualGrid.vue' -import ManagerNavSidebar from '@/components/dialog/content/manager/ManagerNavSidebar.vue' -import InfoPanel from '@/components/dialog/content/manager/infoPanel/InfoPanel.vue' -import InfoPanelMultiItem from '@/components/dialog/content/manager/infoPanel/InfoPanelMultiItem.vue' -import PackCard from '@/components/dialog/content/manager/packCard/PackCard.vue' -import RegistrySearchBar from '@/components/dialog/content/manager/registrySearchBar/RegistrySearchBar.vue' -import GridSkeleton from '@/components/dialog/content/manager/skeleton/GridSkeleton.vue' import { useResponsiveCollapse } from '@/composables/element/useResponsiveCollapse' -import { useManagerStatePersistence } from '@/composables/manager/useManagerStatePersistence' import { useInstalledPacks } from '@/composables/nodePack/useInstalledPacks' import { usePackUpdateStatus } from '@/composables/nodePack/usePackUpdateStatus' import { useWorkflowPacks } from '@/composables/nodePack/useWorkflowPacks' import { useConflictAcknowledgment } from '@/composables/useConflictAcknowledgment' import { useRegistrySearch } from '@/composables/useRegistrySearch' -import { useComfyManagerStore } from '@/stores/comfyManagerStore' import { useComfyRegistryStore } from '@/stores/comfyRegistryStore' -import type { TabItem } from '@/types/comfyManagerTypes' -import { ManagerTab } from '@/types/comfyManagerTypes' import type { components } from '@/types/comfyRegistryTypes' +import ManagerNavSidebar from '@/workbench/extensions/manager/components/manager/ManagerNavSidebar.vue' +import InfoPanel from '@/workbench/extensions/manager/components/manager/infoPanel/InfoPanel.vue' +import InfoPanelMultiItem from '@/workbench/extensions/manager/components/manager/infoPanel/InfoPanelMultiItem.vue' +import PackCard from '@/workbench/extensions/manager/components/manager/packCard/PackCard.vue' +import RegistrySearchBar from '@/workbench/extensions/manager/components/manager/registrySearchBar/RegistrySearchBar.vue' +import GridSkeleton from '@/workbench/extensions/manager/components/manager/skeleton/GridSkeleton.vue' +import { useManagerStatePersistence } from '@/workbench/extensions/manager/composables/useManagerStatePersistence' +import { useComfyManagerStore } from '@/workbench/extensions/manager/stores/comfyManagerStore' +import type { TabItem } from '@/workbench/extensions/manager/types/comfyManagerTypes' +import { ManagerTab } from '@/workbench/extensions/manager/types/comfyManagerTypes' const { initialTab } = defineProps<{ initialTab?: ManagerTab diff --git a/src/components/dialog/content/manager/ManagerHeader.test.ts b/src/workbench/extensions/manager/components/manager/ManagerHeader.test.ts similarity index 100% rename from src/components/dialog/content/manager/ManagerHeader.test.ts rename to src/workbench/extensions/manager/components/manager/ManagerHeader.test.ts diff --git a/src/components/dialog/content/manager/ManagerHeader.vue b/src/workbench/extensions/manager/components/manager/ManagerHeader.vue similarity index 100% rename from src/components/dialog/content/manager/ManagerHeader.vue rename to src/workbench/extensions/manager/components/manager/ManagerHeader.vue diff --git a/src/components/dialog/content/manager/ManagerNavSidebar.vue b/src/workbench/extensions/manager/components/manager/ManagerNavSidebar.vue similarity index 93% rename from src/components/dialog/content/manager/ManagerNavSidebar.vue rename to src/workbench/extensions/manager/components/manager/ManagerNavSidebar.vue index c84734a30..0e643b445 100644 --- a/src/components/dialog/content/manager/ManagerNavSidebar.vue +++ b/src/workbench/extensions/manager/components/manager/ManagerNavSidebar.vue @@ -32,7 +32,7 @@ import Listbox from 'primevue/listbox' import ScrollPanel from 'primevue/scrollpanel' import ContentDivider from '@/components/common/ContentDivider.vue' -import type { TabItem } from '@/types/comfyManagerTypes' +import type { TabItem } from '@/workbench/extensions/manager/types/comfyManagerTypes' defineProps<{ tabs: TabItem[] diff --git a/src/components/dialog/content/manager/NodeConflictDialogContent.vue b/src/workbench/extensions/manager/components/manager/NodeConflictDialogContent.vue similarity index 100% rename from src/components/dialog/content/manager/NodeConflictDialogContent.vue rename to src/workbench/extensions/manager/components/manager/NodeConflictDialogContent.vue diff --git a/src/components/dialog/content/manager/NodeConflictFooter.vue b/src/workbench/extensions/manager/components/manager/NodeConflictFooter.vue similarity index 100% rename from src/components/dialog/content/manager/NodeConflictFooter.vue rename to src/workbench/extensions/manager/components/manager/NodeConflictFooter.vue diff --git a/src/components/dialog/content/manager/NodeConflictHeader.vue b/src/workbench/extensions/manager/components/manager/NodeConflictHeader.vue similarity index 100% rename from src/components/dialog/content/manager/NodeConflictHeader.vue rename to src/workbench/extensions/manager/components/manager/NodeConflictHeader.vue diff --git a/src/components/dialog/content/manager/PackStatusMessage.vue b/src/workbench/extensions/manager/components/manager/PackStatusMessage.vue similarity index 100% rename from src/components/dialog/content/manager/PackStatusMessage.vue rename to src/workbench/extensions/manager/components/manager/PackStatusMessage.vue diff --git a/src/components/dialog/content/manager/PackVersionBadge.test.ts b/src/workbench/extensions/manager/components/manager/PackVersionBadge.test.ts similarity index 99% rename from src/components/dialog/content/manager/PackVersionBadge.test.ts rename to src/workbench/extensions/manager/components/manager/PackVersionBadge.test.ts index cf3427fd8..e4eca3016 100644 --- a/src/components/dialog/content/manager/PackVersionBadge.test.ts +++ b/src/workbench/extensions/manager/components/manager/PackVersionBadge.test.ts @@ -35,7 +35,7 @@ const mockInstalledPacks = { const mockIsPackEnabled = vi.fn(() => true) -vi.mock('@/stores/comfyManagerStore', () => ({ +vi.mock('@/workbench/extensions/manager/stores/comfyManagerStore', () => ({ useComfyManagerStore: vi.fn(() => ({ installedPacks: mockInstalledPacks, isPackInstalled: (id: string) => diff --git a/src/components/dialog/content/manager/PackVersionBadge.vue b/src/workbench/extensions/manager/components/manager/PackVersionBadge.vue similarity index 92% rename from src/components/dialog/content/manager/PackVersionBadge.vue rename to src/workbench/extensions/manager/components/manager/PackVersionBadge.vue index e0fc111ca..baf724a20 100644 --- a/src/components/dialog/content/manager/PackVersionBadge.vue +++ b/src/workbench/extensions/manager/components/manager/PackVersionBadge.vue @@ -45,11 +45,11 @@ import Popover from 'primevue/popover' import { computed, ref, watch } from 'vue' -import PackVersionSelectorPopover from '@/components/dialog/content/manager/PackVersionSelectorPopover.vue' import { usePackUpdateStatus } from '@/composables/nodePack/usePackUpdateStatus' -import { useComfyManagerStore } from '@/stores/comfyManagerStore' import type { components } from '@/types/comfyRegistryTypes' import { isSemVer } from '@/utils/formatUtil' +import PackVersionSelectorPopover from '@/workbench/extensions/manager/components/manager/PackVersionSelectorPopover.vue' +import { useComfyManagerStore } from '@/workbench/extensions/manager/stores/comfyManagerStore' const TRUNCATED_HASH_LENGTH = 7 diff --git a/src/components/dialog/content/manager/PackVersionSelectorPopover.test.ts b/src/workbench/extensions/manager/components/manager/PackVersionSelectorPopover.test.ts similarity index 99% rename from src/components/dialog/content/manager/PackVersionSelectorPopover.test.ts rename to src/workbench/extensions/manager/components/manager/PackVersionSelectorPopover.test.ts index 328c99935..eaed449b9 100644 --- a/src/components/dialog/content/manager/PackVersionSelectorPopover.test.ts +++ b/src/workbench/extensions/manager/components/manager/PackVersionSelectorPopover.test.ts @@ -64,7 +64,7 @@ vi.mock('@/services/comfyRegistryService', () => ({ })) // Mock the manager store -vi.mock('@/stores/comfyManagerStore', () => ({ +vi.mock('@/workbench/extensions/manager/stores/comfyManagerStore', () => ({ useComfyManagerStore: vi.fn(() => ({ installPack: { call: mockInstallPack, diff --git a/src/components/dialog/content/manager/PackVersionSelectorPopover.vue b/src/workbench/extensions/manager/components/manager/PackVersionSelectorPopover.vue similarity index 97% rename from src/components/dialog/content/manager/PackVersionSelectorPopover.vue rename to src/workbench/extensions/manager/components/manager/PackVersionSelectorPopover.vue index acf00916e..4d38fef56 100644 --- a/src/components/dialog/content/manager/PackVersionSelectorPopover.vue +++ b/src/workbench/extensions/manager/components/manager/PackVersionSelectorPopover.vue @@ -92,11 +92,11 @@ import NoResultsPlaceholder from '@/components/common/NoResultsPlaceholder.vue' import VerifiedIcon from '@/components/icons/VerifiedIcon.vue' import { useConflictDetection } from '@/composables/useConflictDetection' import { useComfyRegistryService } from '@/services/comfyRegistryService' -import { useComfyManagerStore } from '@/stores/comfyManagerStore' import type { components } from '@/types/comfyRegistryTypes' -import type { components as ManagerComponents } from '@/types/generatedManagerTypes' import { getJoinedConflictMessages } from '@/utils/conflictMessageUtil' import { isSemVer } from '@/utils/formatUtil' +import { useComfyManagerStore } from '@/workbench/extensions/manager/stores/comfyManagerStore' +import type { components as ManagerComponents } from '@/workbench/extensions/manager/types/generatedManagerTypes' type ManagerChannel = ManagerComponents['schemas']['ManagerChannel'] type ManagerDatabaseSource = diff --git a/src/components/dialog/content/manager/button/PackEnableToggle.test.ts b/src/workbench/extensions/manager/components/manager/button/PackEnableToggle.test.ts similarity index 96% rename from src/components/dialog/content/manager/button/PackEnableToggle.test.ts rename to src/workbench/extensions/manager/components/manager/button/PackEnableToggle.test.ts index 3fc8c5ae3..6df2e7142 100644 --- a/src/components/dialog/content/manager/button/PackEnableToggle.test.ts +++ b/src/workbench/extensions/manager/components/manager/button/PackEnableToggle.test.ts @@ -8,7 +8,7 @@ import { nextTick } from 'vue' import { createI18n } from 'vue-i18n' import enMessages from '@/locales/en/main.json' with { type: 'json' } -import { useComfyManagerStore } from '@/stores/comfyManagerStore' +import { useComfyManagerStore } from '@/workbench/extensions/manager/stores/comfyManagerStore' import PackEnableToggle from './PackEnableToggle.vue' @@ -33,7 +33,7 @@ const mockNodePack = { const mockIsPackEnabled = vi.fn() const mockEnablePack = { call: vi.fn().mockResolvedValue(undefined) } const mockDisablePack = vi.fn().mockResolvedValue(undefined) -vi.mock('@/stores/comfyManagerStore', () => ({ +vi.mock('@/workbench/extensions/manager/stores/comfyManagerStore', () => ({ useComfyManagerStore: vi.fn(() => ({ isPackEnabled: mockIsPackEnabled, enablePack: mockEnablePack, diff --git a/src/components/dialog/content/manager/button/PackEnableToggle.vue b/src/workbench/extensions/manager/components/manager/button/PackEnableToggle.vue similarity index 95% rename from src/components/dialog/content/manager/button/PackEnableToggle.vue rename to src/workbench/extensions/manager/components/manager/button/PackEnableToggle.vue index 9aaaf5229..18786757d 100644 --- a/src/components/dialog/content/manager/button/PackEnableToggle.vue +++ b/src/workbench/extensions/manager/components/manager/button/PackEnableToggle.vue @@ -36,10 +36,10 @@ import { useI18n } from 'vue-i18n' import { useConflictAcknowledgment } from '@/composables/useConflictAcknowledgment' import { useDialogService } from '@/services/dialogService' -import { useComfyManagerStore } from '@/stores/comfyManagerStore' import { useConflictDetectionStore } from '@/stores/conflictDetectionStore' import type { components } from '@/types/comfyRegistryTypes' -import type { components as ManagerComponents } from '@/types/generatedManagerTypes' +import { useComfyManagerStore } from '@/workbench/extensions/manager/stores/comfyManagerStore' +import type { components as ManagerComponents } from '@/workbench/extensions/manager/types/generatedManagerTypes' const TOGGLE_DEBOUNCE_MS = 256 diff --git a/src/components/dialog/content/manager/button/PackInstallButton.vue b/src/workbench/extensions/manager/components/manager/button/PackInstallButton.vue similarity index 95% rename from src/components/dialog/content/manager/button/PackInstallButton.vue rename to src/workbench/extensions/manager/components/manager/button/PackInstallButton.vue index c81ae53fb..939bd34da 100644 --- a/src/components/dialog/content/manager/button/PackInstallButton.vue +++ b/src/workbench/extensions/manager/components/manager/button/PackInstallButton.vue @@ -30,12 +30,12 @@ import DotSpinner from '@/components/common/DotSpinner.vue' import { useConflictDetection } from '@/composables/useConflictDetection' import { t } from '@/i18n' import { useDialogService } from '@/services/dialogService' -import { useComfyManagerStore } from '@/stores/comfyManagerStore' import type { ButtonSize } from '@/types/buttonTypes' import type { components } from '@/types/comfyRegistryTypes' import type { ConflictDetectionResult } from '@/types/conflictDetectionTypes' import type { ConflictDetail } from '@/types/conflictDetectionTypes' -import type { components as ManagerComponents } from '@/types/generatedManagerTypes' +import { useComfyManagerStore } from '@/workbench/extensions/manager/stores/comfyManagerStore' +import type { components as ManagerComponents } from '@/workbench/extensions/manager/types/generatedManagerTypes' type NodePack = components['schemas']['Node'] diff --git a/src/components/dialog/content/manager/button/PackUninstallButton.vue b/src/workbench/extensions/manager/components/manager/button/PackUninstallButton.vue similarity index 85% rename from src/components/dialog/content/manager/button/PackUninstallButton.vue rename to src/workbench/extensions/manager/components/manager/button/PackUninstallButton.vue index b47b13e28..1f8bce0ee 100644 --- a/src/components/dialog/content/manager/button/PackUninstallButton.vue +++ b/src/workbench/extensions/manager/components/manager/button/PackUninstallButton.vue @@ -16,10 +16,10 @@