From 76a1f5218a7105ca830456902e00272357a5c013 Mon Sep 17 00:00:00 2001 From: Dannon Baker <dannon.baker@gmail.com> Date: Thu, 25 Jul 2024 15:58:09 -0400 Subject: [PATCH] Prefer relative imports for subpaths, alias for parents. --- client/src/api/configTemplates.ts | 2 +- client/src/api/datasetCollections.ts | 4 ++-- client/src/api/datasets.ts | 5 +++-- client/src/api/datatypes.ts | 2 +- client/src/api/dbKeys.ts | 2 +- client/src/api/fileSources.ts | 2 +- client/src/api/forms.ts | 2 +- client/src/api/groups.ts | 2 +- client/src/api/histories.archived.ts | 2 +- client/src/api/histories.export.ts | 3 ++- client/src/api/histories.ts | 2 +- client/src/api/index.ts | 2 +- client/src/api/jobs.ts | 2 +- client/src/api/notifications.broadcast.ts | 2 +- client/src/api/notifications.preferences.ts | 2 +- client/src/api/notifications.ts | 2 +- client/src/api/objectStores.ts | 4 ++-- client/src/api/pages.ts | 2 +- client/src/api/quotas.ts | 2 +- client/src/api/remoteFiles.ts | 4 ++-- client/src/api/roles.ts | 2 +- client/src/api/schema/__mocks__/fetcher.ts | 2 +- client/src/api/schema/mockFetcher.test.ts | 3 +-- client/src/api/tags.ts | 2 +- client/src/api/users.ts | 2 +- client/src/api/workflows.ts | 2 +- client/src/components/AboutGalaxy.vue | 8 ++++---- client/src/components/ActivityBar/ActivityBar.vue | 4 ++-- client/src/components/Citation/CitationsList.vue | 4 ++-- client/src/components/ClientError.vue | 2 +- .../Collections/ListCollectionCreator.vue | 4 ++-- .../ListDatasetCollectionElementView.vue | 2 +- .../Collections/PairCollectionCreator.vue | 2 +- .../components/Collections/PairedElementView.vue | 2 +- .../Collections/common/CollectionEditView.vue | 6 +++--- client/src/components/Common/ExportRDMForm.vue | 3 +-- .../src/components/Common/ExportRecordDetails.vue | 2 +- client/src/components/Common/FilterMenu.vue | 14 +++++++------- .../src/components/Common/FilterMenuDropdown.vue | 3 +-- .../PersistentTaskProgressMonitorAlert.test.ts | 2 +- client/src/components/Dataset/DatasetList.vue | 2 +- .../DatasetInformation/DatasetAttributes.vue | 5 +++-- .../DatasetInformation/DatasetDetails.vue | 2 +- .../DatasetInformation/DatasetError.vue | 2 +- .../DatasetInformation/DatasetHashes.vue | 2 +- .../DatasetInformation/DatasetInformation.vue | 4 ++-- .../DatasetInformation/DatasetSource.vue | 2 +- .../DatasetInformation/DatasetSources.vue | 2 +- client/src/components/DragGhost.vue | 2 +- .../FileSources/Instances/CreateInstance.vue | 2 +- client/src/components/FilesDialog/FilesDialog.vue | 2 +- client/src/components/FilesDialog/FilesInput.vue | 3 +-- client/src/components/FilesDialog/model.ts | 3 ++- client/src/components/FilesDialog/utilities.ts | 3 +-- .../Form/Elements/FormData/FormData.vue | 2 +- .../FormSelectMany/worker/__mocks__/selectMany.ts | 7 +++++-- client/src/components/Form/FormInputs.vue | 4 ++-- client/src/components/Grid/GridHistory.vue | 9 +++++---- client/src/components/Grid/GridInvocation.vue | 14 +++++++------- client/src/components/Grid/GridList.vue | 4 ++-- client/src/components/Grid/GridPage.vue | 7 ++++--- client/src/components/Grid/GridVisualization.vue | 7 ++++--- .../History/Archiving/HistoryArchive.vue | 2 +- .../History/Archiving/HistoryArchiveWizard.vue | 4 ++-- .../History/Content/Collection/JobStateSummary.js | 2 +- .../components/History/Content/ContentItem.vue | 2 +- .../History/Content/Dataset/DatasetActions.vue | 2 +- .../components/History/Content/SelectedItems.js | 2 +- .../HistoryOperations/HistoryOperations.vue | 2 +- .../CurrentHistory/SelectPreferredStore.test.ts | 3 +-- .../src/components/History/HistoryPublished.vue | 2 +- .../src/components/History/HistoryScrollList.vue | 2 +- client/src/components/History/Index.vue | 6 +++--- .../History/Multiple/MultipleViewList.vue | 2 +- .../InteractiveTools/InteractiveTools.vue | 3 ++- .../components/JobInformation/JobInformation.vue | 2 +- .../components/JobParameters/JobParameters.vue | 3 ++- .../LibraryFolderDataset/LibraryDataset.test.js | 3 ++- .../LibraryFolder/TopToolbar/FolderTopBar.vue | 5 +++-- .../import-to-history/import-collection.js | 2 +- .../import-to-history/import-dataset.js | 4 ++-- client/src/components/Login/LoginForm.vue | 2 +- client/src/components/Login/LoginIndex.vue | 4 ++-- .../Broadcasts/BroadcastsOverlay.vue | 2 +- .../Notifications/Categories/Categories.test.ts | 4 ++-- .../Notifications/NotificationActions.test.ts | 3 ++- .../Notifications/NotificationsList.vue | 2 +- .../ObjectStore/Instances/CreateForm.vue | 2 +- .../ObjectStore/Instances/UpgradeForm.vue | 2 +- .../ObjectStore/ObjectStoreSelectButton.vue | 2 +- .../ObjectStore/ShowSelectedObjectStore.test.js | 2 +- .../ObjectStore/ShowSelectedObjectStore.vue | 2 +- .../src/components/Panels/Common/ToolSearch.vue | 3 +-- client/src/components/Panels/InvocationsPanel.vue | 2 +- .../components/Panels/Menus/PanelViewMenuItem.vue | 2 +- client/src/components/Panels/MultiviewPanel.vue | 2 +- .../src/components/Panels/NotificationsPanel.vue | 2 +- client/src/components/Panels/SettingsPanel.vue | 2 +- client/src/components/Panels/ToolPanel.vue | 2 +- .../src/components/Panels/VisualizationPanel.vue | 2 +- .../SelectionDialog/BasicSelectionDialog.vue | 5 +++-- .../SelectionDialog/DatasetCollectionDialog.vue | 5 +++-- .../SelectionDialog/SelectionDialog.vue | 6 ++---- client/src/components/Sharing/UserSharing.vue | 2 +- .../components/Tool/Buttons/ToolOptionsButton.vue | 3 +-- client/src/components/Tool/ToolForm.vue | 2 +- client/src/components/Tool/ToolSuccess.vue | 4 ++-- .../ToolsView/ToolsSchemaJson/ToolsJson.test.js | 5 +++-- .../Toolshed/InstalledList/Details.test.js | 3 ++- .../components/Toolshed/InstalledList/Details.vue | 4 ++-- .../Toolshed/InstalledList/Index.test.js | 3 ++- .../components/Toolshed/InstalledList/Index.vue | 3 ++- .../Toolshed/InstalledList/Monitor.test.js | 3 ++- .../components/Toolshed/InstalledList/Monitor.vue | 4 ++-- .../Toolshed/RepositoryDetails/Index.test.js | 2 +- .../Toolshed/RepositoryDetails/Index.vue | 3 +-- .../Toolshed/SearchList/Categories.test.js | 3 ++- .../components/Toolshed/SearchList/Categories.vue | 2 +- .../Toolshed/SearchList/Repositories.test.js | 3 ++- .../Toolshed/SearchList/Repositories.vue | 4 ++-- .../User/DiskUsage/DiskUsageSummary.vue | 2 +- .../DiskUsage/Management/Cleanup/categories.ts | 6 +++--- .../User/UserPreferredObjectStore.test.js | 3 +-- .../Workflow/Editor/Actions/actions.test.ts | 2 +- .../Workflow/Editor/Actions/mockData.ts | 3 +-- .../Workflow/Editor/Actions/workflowActions.ts | 4 ++-- .../Workflow/Editor/Comments/FrameComment.vue | 2 +- .../Workflow/Editor/Comments/FreehandComment.vue | 2 +- .../Workflow/Editor/Comments/WorkflowComment.vue | 7 +++---- .../Workflow/Editor/Comments/useResizable.ts | 3 +-- .../Workflow/Editor/Forms/FormDefault.vue | 7 +++---- .../Workflow/Editor/Forms/FormOutput.vue | 3 ++- .../Workflow/Editor/Forms/FormSection.vue | 3 ++- .../components/Workflow/Editor/Forms/FormTool.vue | 5 ++--- client/src/components/Workflow/Editor/Index.vue | 8 ++++---- client/src/components/Workflow/Editor/Node.vue | 12 ++++++------ .../src/components/Workflow/Editor/NodeInput.vue | 12 ++++++------ .../src/components/Workflow/Editor/NodeOutput.vue | 2 +- .../Editor/Tools/useSelectionOperations.ts | 5 ++--- .../Workflow/Editor/Tools/useToolLogic.ts | 15 +++++++-------- .../components/Workflow/Editor/WorkflowGraph.vue | 8 ++++---- .../Workflow/Editor/composables/multiSelect.ts | 3 +-- .../Editor/composables/viewportBoundingBox.ts | 3 +-- .../components/Workflow/Editor/modules/linting.ts | 2 +- .../Workflow/Editor/modules/terminals.test.ts | 2 +- .../components/Workflow/HistoryInvocations.vue | 2 +- .../src/components/Workflow/Import/TrsImport.vue | 6 +++--- .../src/components/Workflow/Import/TrsSearch.vue | 4 ++-- .../Export/InvocationExportPluginCard.vue | 4 ++-- .../BioComputeObjectExportPlugin.ts | 2 +- .../Export/Plugins/DefaultFileExportPlugin.ts | 2 +- .../Export/Plugins/ROCrateExportPlugin.ts | 2 +- .../src/components/Workflow/List/WorkflowCard.vue | 8 ++++---- .../components/Workflow/List/WorkflowList.test.ts | 3 +-- .../src/components/Workflow/List/WorkflowList.vue | 7 ++++--- .../Workflow/Published/WorkflowPublished.vue | 2 +- .../src/components/Workflow/Run/WorkflowRun.vue | 6 +++--- .../Workflow/StoredWorkflowInvocations.vue | 4 ++-- client/src/components/Workflow/WorkflowCreate.vue | 3 ++- client/src/components/Workflow/WorkflowImport.vue | 6 +++--- .../WorkflowInvocationState/InvocationMessage.vue | 2 +- .../WorkflowInvocationOverview.test.js | 3 ++- .../WorkflowInvocationOverview.vue | 8 ++++---- .../WorkflowInvocationState.test.ts | 2 +- .../WorkflowInvocationState.vue | 6 +++--- client/src/components/admin/DataTables.vue | 2 +- client/src/components/admin/DataTypes.vue | 2 +- .../admin/Dependencies/ContainerIndex.vue | 3 ++- .../admin/Dependencies/ResolutionIndex.vue | 3 ++- .../components/admin/Dependencies/UnusedIndex.vue | 3 ++- .../Notifications/NotificationsManagement.vue | 2 +- client/src/components/admin/SanitizeAllow.vue | 2 +- .../src/components/providers/DatasetProvider.js | 2 +- client/src/components/providers/storeProviders.js | 2 +- client/src/composables/datasetPermissions.ts | 3 ++- client/src/composables/filter/filter.worker.js | 2 +- .../composables/persistentProgressMonitor.test.ts | 4 ++-- .../composables/shortTermStorageMonitor.test.ts | 3 ++- client/src/composables/taskMonitor.test.ts | 3 ++- client/src/onload/globalInits/index.js | 3 ++- client/src/stores/activitySetup.ts | 4 ++-- client/src/stores/activityStore.test.ts | 2 +- client/src/stores/collectionElementsStore.test.ts | 3 ++- client/src/stores/entryPointStore.test.js | 3 ++- client/src/stores/historyStore.ts | 7 ++++--- .../src/stores/objectStoreInstancesStore.test.ts | 2 +- .../src/stores/objectStoreTemplatesStore.test.ts | 2 +- client/src/stores/userStore.ts | 10 +++------- client/src/stores/workflowConnectionStore.test.ts | 4 ++-- client/src/stores/workflowConnectionStore.ts | 2 +- client/src/stores/workflowStepStore.test.ts | 3 +-- client/src/stores/workflowStepStore.ts | 2 +- client/src/stores/workflowStore.ts | 3 ++- client/src/utils/data.js | 4 ++-- client/src/utils/upload-queue.js | 4 ++-- client/src/utils/upload-queue.test.js | 3 +-- client/src/utils/url.ts | 4 ++-- client/src/utils/utils.ts | 3 ++- client/src/utils/webhooks.js | 2 +- 199 files changed, 351 insertions(+), 338 deletions(-) diff --git a/client/src/api/configTemplates.ts b/client/src/api/configTemplates.ts index b3060169b736..91592425c4c6 100644 --- a/client/src/api/configTemplates.ts +++ b/client/src/api/configTemplates.ts @@ -1,4 +1,4 @@ -import { type components } from "@/api/schema/schema"; +import { type components } from "./schema/schema"; export type Instance = | components["schemas"]["UserFileSourceModel"] diff --git a/client/src/api/datasetCollections.ts b/client/src/api/datasetCollections.ts index bc788a35f030..4af22c0705f9 100644 --- a/client/src/api/datasetCollections.ts +++ b/client/src/api/datasetCollections.ts @@ -1,5 +1,5 @@ -import { type CollectionEntry, type DCESummary, type HDCADetailed, type HDCASummary, isHDCA } from "@/api"; -import { fetcher } from "@/api/schema"; +import { type CollectionEntry, type DCESummary, type HDCADetailed, type HDCASummary, isHDCA } from "./"; +import { fetcher } from "./schema"; const DEFAULT_LIMIT = 50; diff --git a/client/src/api/datasets.ts b/client/src/api/datasets.ts index c6f4e8a9465a..79a723456128 100644 --- a/client/src/api/datasets.ts +++ b/client/src/api/datasets.ts @@ -1,10 +1,11 @@ import axios from "axios"; import { type FetchArgType } from "openapi-typescript-fetch"; -import { type HDADetailed } from "@/api"; -import { type components, fetcher } from "@/api/schema"; import { withPrefix } from "@/utils/redirect"; +import { type HDADetailed } from "./"; +import { type components, fetcher } from "./schema"; + export const datasetsFetcher = fetcher.path("/api/datasets").method("get").create(); type GetDatasetsApiOptions = FetchArgType<typeof datasetsFetcher>; diff --git a/client/src/api/datatypes.ts b/client/src/api/datatypes.ts index fde4da5b529b..16b0bc6f3014 100644 --- a/client/src/api/datatypes.ts +++ b/client/src/api/datatypes.ts @@ -1,4 +1,4 @@ -import { fetcher } from "@/api/schema"; +import { fetcher } from "./schema"; export const datatypesFetcher = fetcher.path("/api/datatypes").method("get").create(); diff --git a/client/src/api/dbKeys.ts b/client/src/api/dbKeys.ts index ec1525137883..89bfc7f3ecad 100644 --- a/client/src/api/dbKeys.ts +++ b/client/src/api/dbKeys.ts @@ -3,6 +3,6 @@ * but now it is used to get the list of more generic "dbkeys". */ -import { fetcher } from "@/api/schema"; +import { fetcher } from "./schema"; export const dbKeysFetcher = fetcher.path("/api/genomes").method("get").create(); diff --git a/client/src/api/fileSources.ts b/client/src/api/fileSources.ts index 68935db4573f..52dc791fa9ba 100644 --- a/client/src/api/fileSources.ts +++ b/client/src/api/fileSources.ts @@ -1,4 +1,4 @@ -import { type components } from "@/api/schema"; +import { type components } from "./schema"; export type FileSourceTemplateSummary = components["schemas"]["FileSourceTemplateSummary"]; export type FileSourceTemplateSummaries = FileSourceTemplateSummary[]; diff --git a/client/src/api/forms.ts b/client/src/api/forms.ts index 04f19169d5a1..3e836acbaf39 100644 --- a/client/src/api/forms.ts +++ b/client/src/api/forms.ts @@ -1,4 +1,4 @@ -import { fetcher } from "@/api/schema"; +import { fetcher } from "./schema"; export const deleteForm = fetcher.path("/api/forms/{id}").method("delete").create(); export const undeleteForm = fetcher.path("/api/forms/{id}/undelete").method("post").create(); diff --git a/client/src/api/groups.ts b/client/src/api/groups.ts index 6def92076885..9317c1119e79 100644 --- a/client/src/api/groups.ts +++ b/client/src/api/groups.ts @@ -1,6 +1,6 @@ import axios from "axios"; -import { type components, fetcher } from "@/api/schema"; +import { type components, fetcher } from "./schema"; type GroupModel = components["schemas"]["GroupModel"]; export async function getAllGroups(): Promise<GroupModel[]> { diff --git a/client/src/api/histories.archived.ts b/client/src/api/histories.archived.ts index 9109c2d97e95..7dd75ce2ccda 100644 --- a/client/src/api/histories.archived.ts +++ b/client/src/api/histories.archived.ts @@ -1,6 +1,6 @@ import { type FetchArgType } from "openapi-typescript-fetch"; -import { type components, fetcher } from "@/api/schema"; +import { type components, fetcher } from "./schema"; export type ArchivedHistorySummary = components["schemas"]["ArchivedHistorySummary"]; export type ArchivedHistoryDetailed = components["schemas"]["ArchivedHistoryDetailed"]; diff --git a/client/src/api/histories.export.ts b/client/src/api/histories.export.ts index 40d19f026077..e8a80beb996a 100644 --- a/client/src/api/histories.export.ts +++ b/client/src/api/histories.export.ts @@ -1,4 +1,3 @@ -import { type components, fetcher } from "@/api/schema"; import { type ExportRecord, ExportRecordModel, @@ -6,6 +5,8 @@ import { } from "@/components/Common/models/exportRecordModel"; import { DEFAULT_EXPORT_PARAMS } from "@/composables/shortTermStorage"; +import { type components, fetcher } from "./schema"; + type ModelStoreFormat = components["schemas"]["ModelStoreFormat"]; const _getExportRecords = fetcher.path("/api/histories/{history_id}/exports").method("get").create(); diff --git a/client/src/api/histories.ts b/client/src/api/histories.ts index ef0aeaa5df0b..a5f74fc21b81 100644 --- a/client/src/api/histories.ts +++ b/client/src/api/histories.ts @@ -1,4 +1,4 @@ -import { fetcher } from "@/api/schema"; +import { fetcher } from "./schema"; export const historiesFetcher = fetcher.path("/api/histories").method("get").create(); export const archivedHistoriesFetcher = fetcher.path("/api/histories/archived").method("get").create(); diff --git a/client/src/api/index.ts b/client/src/api/index.ts index b27d9746a0f3..07ed94efe262 100644 --- a/client/src/api/index.ts +++ b/client/src/api/index.ts @@ -1,6 +1,6 @@ /** Contains type alias and definitions related to Galaxy API models. */ -import { type components } from "@/api/schema"; +import { type components } from "./schema"; /** * Contains minimal information about a History. diff --git a/client/src/api/jobs.ts b/client/src/api/jobs.ts index ccc4023e9e66..a8acd03581f4 100644 --- a/client/src/api/jobs.ts +++ b/client/src/api/jobs.ts @@ -1,4 +1,4 @@ -import { type components, fetcher } from "@/api/schema"; +import { type components, fetcher } from "./schema"; export type JobDestinationParams = components["schemas"]["JobDestinationParams"]; diff --git a/client/src/api/notifications.broadcast.ts b/client/src/api/notifications.broadcast.ts index cbea28ada102..3c41df223ae9 100644 --- a/client/src/api/notifications.broadcast.ts +++ b/client/src/api/notifications.broadcast.ts @@ -1,4 +1,4 @@ -import { type components, fetcher } from "@/api/schema"; +import { type components, fetcher } from "./schema"; type BroadcastNotificationResponse = components["schemas"]["BroadcastNotificationResponse"]; diff --git a/client/src/api/notifications.preferences.ts b/client/src/api/notifications.preferences.ts index 8509d7cd2691..ee9cd508de63 100644 --- a/client/src/api/notifications.preferences.ts +++ b/client/src/api/notifications.preferences.ts @@ -1,4 +1,4 @@ -import { type components, fetcher } from "@/api/schema"; +import { type components, fetcher } from "./schema"; type UserNotificationPreferences = components["schemas"]["UserNotificationPreferences"]; diff --git a/client/src/api/notifications.ts b/client/src/api/notifications.ts index b5724618e3a5..f38439e4afed 100644 --- a/client/src/api/notifications.ts +++ b/client/src/api/notifications.ts @@ -1,4 +1,4 @@ -import { type components, fetcher } from "@/api/schema"; +import { type components, fetcher } from "./schema"; export type BaseUserNotification = components["schemas"]["UserNotificationResponse"]; diff --git a/client/src/api/objectStores.ts b/client/src/api/objectStores.ts index 8380b03e3086..15330874db54 100644 --- a/client/src/api/objectStores.ts +++ b/client/src/api/objectStores.ts @@ -1,5 +1,5 @@ -import { fetcher } from "@/api/schema"; -import { type components } from "@/api/schema/schema"; +import { fetcher } from "./schema"; +import { type components } from "./schema/schema"; export type UserConcreteObjectStore = components["schemas"]["UserConcreteObjectStoreModel"]; diff --git a/client/src/api/pages.ts b/client/src/api/pages.ts index 89e89d2e8940..285f3f763ddd 100644 --- a/client/src/api/pages.ts +++ b/client/src/api/pages.ts @@ -1,4 +1,4 @@ -import { fetcher } from "@/api/schema"; +import { fetcher } from "./schema"; /** Page request helper **/ const deletePageById = fetcher.path("/api/pages/{id}").method("delete").create(); diff --git a/client/src/api/quotas.ts b/client/src/api/quotas.ts index f164fcf80632..1e9abf1b9ff4 100644 --- a/client/src/api/quotas.ts +++ b/client/src/api/quotas.ts @@ -1,4 +1,4 @@ -import { fetcher } from "@/api/schema"; +import { fetcher } from "./schema"; export const deleteQuota = fetcher.path("/api/quotas/{id}").method("delete").create(); export const purgeQuota = fetcher.path("/api/quotas/{id}/purge").method("post").create(); diff --git a/client/src/api/remoteFiles.ts b/client/src/api/remoteFiles.ts index b9efeeb3eb6c..8ab8209c5483 100644 --- a/client/src/api/remoteFiles.ts +++ b/client/src/api/remoteFiles.ts @@ -1,5 +1,5 @@ -import { type components } from "@/api/schema"; -import { fetcher } from "@/api/schema/fetcher"; +import { type components } from "./schema"; +import { fetcher } from "./schema/fetcher"; /** The browsing mode: * - `file` - allows to select files or directories contained in a source (default) diff --git a/client/src/api/roles.ts b/client/src/api/roles.ts index 4667ca53a2b5..c06d665decd3 100644 --- a/client/src/api/roles.ts +++ b/client/src/api/roles.ts @@ -1,4 +1,4 @@ -import { fetcher } from "@/api/schema"; +import { fetcher } from "./schema"; const getRoles = fetcher.path("/api/roles").method("get").create(); export async function getAllRoles() { diff --git a/client/src/api/schema/__mocks__/fetcher.ts b/client/src/api/schema/__mocks__/fetcher.ts index ffb5b7e2fd1a..25e3e1052f6e 100644 --- a/client/src/api/schema/__mocks__/fetcher.ts +++ b/client/src/api/schema/__mocks__/fetcher.ts @@ -1,4 +1,4 @@ -import { type paths } from "@/api/schema"; +import { type paths } from "./.."; jest.mock("@/api/schema", () => ({ fetcher: mockFetcher, diff --git a/client/src/api/schema/mockFetcher.test.ts b/client/src/api/schema/mockFetcher.test.ts index e4eddd5a3f58..8c5358928910 100644 --- a/client/src/api/schema/mockFetcher.test.ts +++ b/client/src/api/schema/mockFetcher.test.ts @@ -1,5 +1,4 @@ -import { fetcher } from "@/api/schema"; - +import { fetcher } from "./"; import { mockFetcher } from "./__mocks__/fetcher"; jest.mock("@/api/schema"); diff --git a/client/src/api/tags.ts b/client/src/api/tags.ts index 34e9c70b8d36..453fd45d76d8 100644 --- a/client/src/api/tags.ts +++ b/client/src/api/tags.ts @@ -1,4 +1,4 @@ -import { type components, fetcher } from "@/api/schema"; +import { type components, fetcher } from "./schema"; type TaggableItemClass = components["schemas"]["TaggableItemClass"]; diff --git a/client/src/api/users.ts b/client/src/api/users.ts index 2b3fca5b279d..febc4fac7661 100644 --- a/client/src/api/users.ts +++ b/client/src/api/users.ts @@ -1,4 +1,4 @@ -import { fetcher } from "@/api/schema"; +import { fetcher } from "./schema"; export const createApiKey = fetcher.path("/api/users/{user_id}/api_key").method("post").create(); export const deleteUser = fetcher.path("/api/users/{user_id}").method("delete").create(); diff --git a/client/src/api/workflows.ts b/client/src/api/workflows.ts index 4d676cefcc94..38e0f4a0f500 100644 --- a/client/src/api/workflows.ts +++ b/client/src/api/workflows.ts @@ -1,4 +1,4 @@ -import { type components, fetcher } from "@/api/schema"; +import { type components, fetcher } from "./schema"; export type StoredWorkflowDetailed = components["schemas"]["StoredWorkflowDetailed"]; diff --git a/client/src/components/AboutGalaxy.vue b/client/src/components/AboutGalaxy.vue index 8dad39ed35b1..510c2fc4761d 100644 --- a/client/src/components/AboutGalaxy.vue +++ b/client/src/components/AboutGalaxy.vue @@ -8,10 +8,10 @@ import { RouterLink } from "vue-router"; import { useConfig } from "@/composables/config"; import { getAppRoot } from "@/onload/loadConfig"; -import Heading from "@/components/Common/Heading.vue"; -import ExternalLink from "@/components/ExternalLink.vue"; -import License from "@/components/License/License.vue"; -import UtcDate from "@/components/UtcDate.vue"; +import Heading from "./Common/Heading.vue"; +import ExternalLink from "./ExternalLink.vue"; +import License from "./License/License.vue"; +import UtcDate from "./UtcDate.vue"; const { config, isConfigLoaded } = useConfig(); diff --git a/client/src/components/ActivityBar/ActivityBar.vue b/client/src/components/ActivityBar/ActivityBar.vue index cde4d7b190ad..75f78589e1b4 100644 --- a/client/src/components/ActivityBar/ActivityBar.vue +++ b/client/src/components/ActivityBar/ActivityBar.vue @@ -11,18 +11,18 @@ import { type Activity, useActivityStore } from "@/stores/activityStore"; import { useEventStore } from "@/stores/eventStore"; import { useUserStore } from "@/stores/userStore"; -import InvocationsPanel from "../Panels/InvocationsPanel.vue"; -import VisualizationPanel from "../Panels/VisualizationPanel.vue"; import ActivityItem from "./ActivityItem.vue"; import InteractiveItem from "./Items/InteractiveItem.vue"; import NotificationItem from "./Items/NotificationItem.vue"; import UploadItem from "./Items/UploadItem.vue"; import AdminPanel from "@/components/admin/AdminPanel.vue"; import FlexPanel from "@/components/Panels/FlexPanel.vue"; +import InvocationsPanel from "@/components/Panels/InvocationsPanel.vue"; import MultiviewPanel from "@/components/Panels/MultiviewPanel.vue"; import NotificationsPanel from "@/components/Panels/NotificationsPanel.vue"; import SettingsPanel from "@/components/Panels/SettingsPanel.vue"; import ToolPanel from "@/components/Panels/ToolPanel.vue"; +import VisualizationPanel from "@/components/Panels/VisualizationPanel.vue"; // require user to long click before dragging const DRAG_DELAY = 50; diff --git a/client/src/components/Citation/CitationsList.vue b/client/src/components/Citation/CitationsList.vue index 7aa5b137ff97..c307785687a4 100644 --- a/client/src/components/Citation/CitationsList.vue +++ b/client/src/components/Citation/CitationsList.vue @@ -2,12 +2,12 @@ import { BButton, BCard, BCollapse, BNav, BNavItem } from "bootstrap-vue"; import { onMounted, onUpdated, ref } from "vue"; -import { getCitations } from "@/components/Citation/services"; import { useConfig } from "@/composables/config"; import { type Citation } from "."; +import { getCitations } from "./services"; -import CitationItem from "@/components/Citation/CitationItem.vue"; +import CitationItem from "./CitationItem.vue"; const outputFormats = Object.freeze({ CITATION: "bibliography", diff --git a/client/src/components/ClientError.vue b/client/src/components/ClientError.vue index b5404f0dbafc..993f4c62bf75 100644 --- a/client/src/components/ClientError.vue +++ b/client/src/components/ClientError.vue @@ -6,7 +6,7 @@ // (AdminRequired), but could be used for other client errors that need to be // presented to the user interrupting the normal flow and context of the app. -import Alert from "@/components/Alert.vue"; +import Alert from "./Alert.vue"; const props = defineProps<{ error: Error; diff --git a/client/src/components/Collections/ListCollectionCreator.vue b/client/src/components/Collections/ListCollectionCreator.vue index 5798187943f2..cf66ee3b4adb 100644 --- a/client/src/components/Collections/ListCollectionCreator.vue +++ b/client/src/components/Collections/ListCollectionCreator.vue @@ -12,8 +12,8 @@ import type { HDCADetailed, HistoryItemSummary } from "@/api"; import STATES from "@/mvc/dataset/states"; import localize from "@/utils/localization"; -import CollectionCreator from "@/components/Collections/common/CollectionCreator.vue"; -import DatasetCollectionElementView from "@/components/Collections/ListDatasetCollectionElementView.vue"; +import CollectionCreator from "./common/CollectionCreator.vue"; +import DatasetCollectionElementView from "./ListDatasetCollectionElementView.vue"; library.add(faSortAlphaDown, faUndo); diff --git a/client/src/components/Collections/ListDatasetCollectionElementView.vue b/client/src/components/Collections/ListDatasetCollectionElementView.vue index e7b41e4158de..d3b5598bd238 100644 --- a/client/src/components/Collections/ListDatasetCollectionElementView.vue +++ b/client/src/components/Collections/ListDatasetCollectionElementView.vue @@ -3,7 +3,7 @@ import { onMounted, ref, watch } from "vue"; import localize from "@/utils/localization"; -import ClickToEdit from "@/components/Collections/common/ClickToEdit.vue"; +import ClickToEdit from "./common/ClickToEdit.vue"; interface Props { element: any; diff --git a/client/src/components/Collections/PairCollectionCreator.vue b/client/src/components/Collections/PairCollectionCreator.vue index 2520a3a022f8..8b7fac3d3f99 100644 --- a/client/src/components/Collections/PairCollectionCreator.vue +++ b/client/src/components/Collections/PairCollectionCreator.vue @@ -6,7 +6,7 @@ import type { HDCADetailed, HistoryItemSummary } from "@/api"; import STATES from "@/mvc/dataset/states"; import localize from "@/utils/localization"; -import CollectionCreator from "@/components/Collections/common/CollectionCreator.vue"; +import CollectionCreator from "./common/CollectionCreator.vue"; interface Props { initialElements: Array<any>; diff --git a/client/src/components/Collections/PairedElementView.vue b/client/src/components/Collections/PairedElementView.vue index 364832a22db2..d2c5edd778ab 100644 --- a/client/src/components/Collections/PairedElementView.vue +++ b/client/src/components/Collections/PairedElementView.vue @@ -6,7 +6,7 @@ import { onMounted, ref, watch } from "vue"; import localize from "@/utils/localization"; -import ClickToEdit from "@/components/Collections/common/ClickToEdit.vue"; +import ClickToEdit from "./common/ClickToEdit.vue"; library.add(faUnlink); diff --git a/client/src/components/Collections/common/CollectionEditView.vue b/client/src/components/Collections/common/CollectionEditView.vue index 7ee33362431d..a2ca8a8ed070 100644 --- a/client/src/components/Collections/common/CollectionEditView.vue +++ b/client/src/components/Collections/common/CollectionEditView.vue @@ -20,9 +20,9 @@ import { errorMessageAsString } from "@/utils/simple-error"; import { type HistoryContentBulkOperationPayload, updateHistoryItemsBulk } from "./services"; -import ChangeDatatypeTab from "@/components/Collections/common/ChangeDatatypeTab.vue"; -import DatabaseEditTab from "@/components/Collections/common/DatabaseEditTab.vue"; -import SuitableConvertersTab from "@/components/Collections/common/SuitableConvertersTab.vue"; +import ChangeDatatypeTab from "./ChangeDatatypeTab.vue"; +import DatabaseEditTab from "./DatabaseEditTab.vue"; +import SuitableConvertersTab from "./SuitableConvertersTab.vue"; import Heading from "@/components/Common/Heading.vue"; import FormDisplay from "@/components/Form/FormDisplay.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; diff --git a/client/src/components/Common/ExportRDMForm.vue b/client/src/components/Common/ExportRDMForm.vue index 6fee693d46a1..2751d8697456 100644 --- a/client/src/components/Common/ExportRDMForm.vue +++ b/client/src/components/Common/ExportRDMForm.vue @@ -8,12 +8,11 @@ import { createRemoteEntry, type FilterFileSourcesOptions, } from "@/api/remoteFiles"; +import { fileSourcePluginToItem } from "@/components/FilesDialog/utilities"; import { useToast } from "@/composables/toast"; import localize from "@/utils/localization"; import { errorMessageAsString } from "@/utils/simple-error"; -import { fileSourcePluginToItem } from "../FilesDialog/utilities"; - import ExternalLink from "@/components/ExternalLink.vue"; import FilesInput from "@/components/FilesDialog/FilesInput.vue"; diff --git a/client/src/components/Common/ExportRecordDetails.vue b/client/src/components/Common/ExportRecordDetails.vue index 58ad35898ff2..3460f19f6af9 100644 --- a/client/src/components/Common/ExportRecordDetails.vue +++ b/client/src/components/Common/ExportRecordDetails.vue @@ -14,7 +14,7 @@ import { computed } from "vue"; import type { ColorVariant } from "."; import { type ExportRecord } from "./models/exportRecordModel"; -import Heading from "@/components/Common/Heading.vue"; +import Heading from "./Heading.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; library.add(faCheckCircle, faClock, faExclamationCircle, faExclamationTriangle, faLink); diff --git a/client/src/components/Common/FilterMenu.vue b/client/src/components/Common/FilterMenu.vue index 66a5e4c823f4..2d95f2b6b769 100644 --- a/client/src/components/Common/FilterMenu.vue +++ b/client/src/components/Common/FilterMenu.vue @@ -9,13 +9,13 @@ import { computed, ref, set } from "vue"; import type Filtering from "@/utils/filtering"; import { type Alias, type ErrorType, getOperatorForAlias, type ValidFilter } from "@/utils/filtering"; -import DelayedInput from "@/components/Common/DelayedInput.vue"; -import FilterMenuBoolean from "@/components/Common/FilterMenuBoolean.vue"; -import FilterMenuDropdown from "@/components/Common/FilterMenuDropdown.vue"; -import FilterMenuInput from "@/components/Common/FilterMenuInput.vue"; -import FilterMenuMultiTags from "@/components/Common/FilterMenuMultiTags.vue"; -import FilterMenuObjectStore from "@/components/Common/FilterMenuObjectStore.vue"; -import FilterMenuRanged from "@/components/Common/FilterMenuRanged.vue"; +import DelayedInput from "./DelayedInput.vue"; +import FilterMenuBoolean from "./FilterMenuBoolean.vue"; +import FilterMenuDropdown from "./FilterMenuDropdown.vue"; +import FilterMenuInput from "./FilterMenuInput.vue"; +import FilterMenuMultiTags from "./FilterMenuMultiTags.vue"; +import FilterMenuObjectStore from "./FilterMenuObjectStore.vue"; +import FilterMenuRanged from "./FilterMenuRanged.vue"; library.add(faAngleDoubleUp, faQuestion, faSearch); diff --git a/client/src/components/Common/FilterMenuDropdown.vue b/client/src/components/Common/FilterMenuDropdown.vue index a251f40281ad..794bb5eba3ef 100644 --- a/client/src/components/Common/FilterMenuDropdown.vue +++ b/client/src/components/Common/FilterMenuDropdown.vue @@ -7,11 +7,10 @@ import { capitalize } from "lodash"; import { computed, onMounted, ref, type UnwrapRef, watch } from "vue"; import { type QuotaUsage } from "@/components/User/DiskUsage/Quota/model"; +import { fetch } from "@/components/User/DiskUsage/Quota/services"; import { type FilterType, type ValidFilter } from "@/utils/filtering"; import { errorMessageAsString } from "@/utils/simple-error"; -import { fetch } from "../User/DiskUsage/Quota/services"; - import QuotaUsageBar from "@/components/User/DiskUsage/Quota/QuotaUsageBar.vue"; library.add(faQuestion); diff --git a/client/src/components/Common/PersistentTaskProgressMonitorAlert.test.ts b/client/src/components/Common/PersistentTaskProgressMonitorAlert.test.ts index 5a956d4888c2..2adbb79c0f7d 100644 --- a/client/src/components/Common/PersistentTaskProgressMonitorAlert.test.ts +++ b/client/src/components/Common/PersistentTaskProgressMonitorAlert.test.ts @@ -8,7 +8,7 @@ import { usePersistentProgressTaskMonitor, } from "@/composables/persistentProgressMonitor"; -import PersistentTaskProgressMonitorAlert from "@/components/Common/PersistentTaskProgressMonitorAlert.vue"; +import PersistentTaskProgressMonitorAlert from "./PersistentTaskProgressMonitorAlert.vue"; type ComponentUnderTestProps = Partial<PropType<typeof PersistentTaskProgressMonitorAlert>>; diff --git a/client/src/components/Dataset/DatasetList.vue b/client/src/components/Dataset/DatasetList.vue index 999b2cef6ff8..07416a2e0bff 100644 --- a/client/src/components/Dataset/DatasetList.vue +++ b/client/src/components/Dataset/DatasetList.vue @@ -8,8 +8,8 @@ import { copyDataset, getDatasets } from "@/api/datasets"; import { updateTags } from "@/api/tags"; import { useHistoryStore } from "@/stores/historyStore"; +import DatasetName from "./DatasetName.vue"; import DelayedInput from "@/components/Common/DelayedInput.vue"; -import DatasetName from "@/components/Dataset/DatasetName.vue"; import SwitchToHistoryLink from "@/components/History/SwitchToHistoryLink.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; import StatelessTags from "@/components/TagsMultiselect/StatelessTags.vue"; diff --git a/client/src/components/DatasetInformation/DatasetAttributes.vue b/client/src/components/DatasetInformation/DatasetAttributes.vue index a9fa7db9acd0..0688dee67c2e 100644 --- a/client/src/components/DatasetInformation/DatasetAttributes.vue +++ b/client/src/components/DatasetInformation/DatasetAttributes.vue @@ -7,11 +7,12 @@ import { BAlert, BButton, BTab, BTabs } from "bootstrap-vue"; import { onMounted, ref } from "vue"; import { fetchDatasetAttributes } from "@/api/datasets"; -import { setAttributes } from "@/components/DatasetInformation/services"; import { useHistoryStore } from "@/stores/historyStore"; import localize from "@/utils/localization"; -import Heading from "../Common/Heading.vue"; +import { setAttributes } from "./services"; + +import Heading from "@/components/Common/Heading.vue"; import FormDisplay from "@/components/Form/FormDisplay.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; diff --git a/client/src/components/DatasetInformation/DatasetDetails.vue b/client/src/components/DatasetInformation/DatasetDetails.vue index 4793da8d6982..656dd7c153b1 100644 --- a/client/src/components/DatasetInformation/DatasetDetails.vue +++ b/client/src/components/DatasetInformation/DatasetDetails.vue @@ -11,8 +11,8 @@ import { useConfig } from "@/composables/config"; import { useUserStore } from "@/stores/userStore"; import { stateIsTerminal } from "@/utils/utils"; +import DatasetInformation from "./DatasetInformation.vue"; import DatasetStorage from "@/components/Dataset/DatasetStorage/DatasetStorage.vue"; -import DatasetInformation from "@/components/DatasetInformation/DatasetInformation.vue"; import InheritanceChain from "@/components/InheritanceChain//InheritanceChain.vue"; import JobDependencies from "@/components/JobDependencies/JobDependencies.vue"; import JobDestinationParams from "@/components/JobDestinationParams/JobDestinationParams.vue"; diff --git a/client/src/components/DatasetInformation/DatasetError.vue b/client/src/components/DatasetInformation/DatasetError.vue index 0e60ad136de4..c434666d80c4 100644 --- a/client/src/components/DatasetInformation/DatasetError.vue +++ b/client/src/components/DatasetInformation/DatasetError.vue @@ -20,7 +20,7 @@ import { useMarkdown } from "@/composables/markdown"; import { useUserStore } from "@/stores/userStore"; import localize from "@/utils/localization"; -import DatasetErrorDetails from "@/components/DatasetInformation/DatasetErrorDetails.vue"; +import DatasetErrorDetails from "./DatasetErrorDetails.vue"; import FormElement from "@/components/Form/FormElement.vue"; library.add(faBug); diff --git a/client/src/components/DatasetInformation/DatasetHashes.vue b/client/src/components/DatasetInformation/DatasetHashes.vue index fe115a623de8..0013272e8840 100644 --- a/client/src/components/DatasetInformation/DatasetHashes.vue +++ b/client/src/components/DatasetInformation/DatasetHashes.vue @@ -1,7 +1,7 @@ <script setup lang="ts"> import { type DatasetHash as DatasetHashType } from "@/api"; -import DatasetHash from "@/components/DatasetInformation/DatasetHash.vue"; +import DatasetHash from "./DatasetHash.vue"; interface Props { hashes: DatasetHashType[]; diff --git a/client/src/components/DatasetInformation/DatasetInformation.vue b/client/src/components/DatasetInformation/DatasetInformation.vue index b311f6eda8ee..5f52e1c8ca80 100644 --- a/client/src/components/DatasetInformation/DatasetInformation.vue +++ b/client/src/components/DatasetInformation/DatasetInformation.vue @@ -3,8 +3,8 @@ import { type HDADetailed } from "@/api"; import { withPrefix } from "@/utils/redirect"; import { bytesToString } from "@/utils/utils"; -import DatasetHashes from "@/components/DatasetInformation/DatasetHashes.vue"; -import DatasetSources from "@/components/DatasetInformation/DatasetSources.vue"; +import DatasetHashes from "./DatasetHashes.vue"; +import DatasetSources from "./DatasetSources.vue"; import DecodedId from "@/components/DecodedId.vue"; import UtcDate from "@/components/UtcDate.vue"; diff --git a/client/src/components/DatasetInformation/DatasetSource.vue b/client/src/components/DatasetInformation/DatasetSource.vue index e45e822a2178..db2344edadf6 100644 --- a/client/src/components/DatasetInformation/DatasetSource.vue +++ b/client/src/components/DatasetInformation/DatasetSource.vue @@ -8,7 +8,7 @@ import { type DatasetTransform } from "@/api"; import { copy } from "@/utils/clipboard"; import localize from "@/utils/localization"; -import DatasetSourceTransform from "@/components/DatasetInformation/DatasetSourceTransform.vue"; +import DatasetSourceTransform from "./DatasetSourceTransform.vue"; library.add(faCopy, faExternalLinkAlt); diff --git a/client/src/components/DatasetInformation/DatasetSources.vue b/client/src/components/DatasetInformation/DatasetSources.vue index 59c41f2b4748..49ff512a06c3 100644 --- a/client/src/components/DatasetInformation/DatasetSources.vue +++ b/client/src/components/DatasetInformation/DatasetSources.vue @@ -1,7 +1,7 @@ <script setup lang="ts"> import { type DatasetTransform } from "@/api"; -import DatasetSource from "@/components/DatasetInformation/DatasetSource.vue"; +import DatasetSource from "./DatasetSource.vue"; interface Props { sources: { diff --git a/client/src/components/DragGhost.vue b/client/src/components/DragGhost.vue index bc15f7c46af9..a1d56a70a677 100644 --- a/client/src/components/DragGhost.vue +++ b/client/src/components/DragGhost.vue @@ -6,7 +6,7 @@ import { storeToRefs } from "pinia"; import { useEventStore } from "stores/eventStore"; import { computed } from "vue"; -import TextShort from "@/components/Common/TextShort.vue"; +import TextShort from "./Common/TextShort.vue"; library.add(faPaperPlane); diff --git a/client/src/components/FileSources/Instances/CreateInstance.vue b/client/src/components/FileSources/Instances/CreateInstance.vue index 9b93e2d7c269..453780598562 100644 --- a/client/src/components/FileSources/Instances/CreateInstance.vue +++ b/client/src/components/FileSources/Instances/CreateInstance.vue @@ -6,7 +6,7 @@ import { useFileSourceTemplatesStore } from "@/stores/fileSourceTemplatesStore"; import { useInstanceRouting } from "./routing"; -import CreateForm from "@/components/FileSources/Instances/CreateForm.vue"; +import CreateForm from "./CreateForm.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; interface Props { diff --git a/client/src/components/FilesDialog/FilesDialog.vue b/client/src/components/FilesDialog/FilesDialog.vue index f61c7c372c85..5b58a2adffdc 100644 --- a/client/src/components/FilesDialog/FilesDialog.vue +++ b/client/src/components/FilesDialog/FilesDialog.vue @@ -10,7 +10,6 @@ import { type RemoteEntry, } from "@/api/remoteFiles"; import { UrlTracker } from "@/components/DataDialog/utilities"; -import { fileSourcePluginToItem, isSubPath } from "@/components/FilesDialog/utilities"; import { type ItemsProvider, type ItemsProviderContext, @@ -22,6 +21,7 @@ import { useFileSources } from "@/composables/fileSources"; import { errorMessageAsString } from "@/utils/simple-error"; import { Model } from "./model"; +import { fileSourcePluginToItem, isSubPath } from "./utilities"; import SelectionDialog from "@/components/SelectionDialog/SelectionDialog.vue"; diff --git a/client/src/components/FilesDialog/FilesInput.vue b/client/src/components/FilesDialog/FilesInput.vue index 965eaab51f5a..d29807539855 100644 --- a/client/src/components/FilesDialog/FilesInput.vue +++ b/client/src/components/FilesDialog/FilesInput.vue @@ -3,10 +3,9 @@ import { BFormInput } from "bootstrap-vue"; import { computed } from "vue"; import { type FileSourceBrowsingMode, type FilterFileSourcesOptions } from "@/api/remoteFiles"; +import { type SelectionItem } from "@/components/SelectionDialog/selectionTypes"; import { filesDialog } from "@/utils/data"; -import { type SelectionItem } from "../SelectionDialog/selectionTypes"; - interface Props { value: string; mode?: FileSourceBrowsingMode; diff --git a/client/src/components/FilesDialog/model.ts b/client/src/components/FilesDialog/model.ts index ab01fbfec568..5c1a42e28c9d 100644 --- a/client/src/components/FilesDialog/model.ts +++ b/client/src/components/FilesDialog/model.ts @@ -1,9 +1,10 @@ /** * Model to track selected URI for FilesDialog - mirroring DataDialog's model. */ -import { isSubPath } from "@/components/FilesDialog/utilities"; import { type SelectionItem } from "@/components/SelectionDialog/selectionTypes"; +import { isSubPath } from "./utilities"; + interface ModelOptions { multiple?: boolean; } diff --git a/client/src/components/FilesDialog/utilities.ts b/client/src/components/FilesDialog/utilities.ts index f300d10349c6..fac50d04377a 100644 --- a/client/src/components/FilesDialog/utilities.ts +++ b/client/src/components/FilesDialog/utilities.ts @@ -1,6 +1,5 @@ import { type BrowsableFilesSourcePlugin } from "@/api/remoteFiles"; - -import { type SelectionItem } from "../SelectionDialog/selectionTypes"; +import { type SelectionItem } from "@/components/SelectionDialog/selectionTypes"; export const isSubPath = (originPath: string, destinationPath: string) => { return subPathCondition(ensureTrailingSlash(originPath), ensureTrailingSlash(destinationPath)); diff --git a/client/src/components/Form/Elements/FormData/FormData.vue b/client/src/components/Form/Elements/FormData/FormData.vue index b5f71c8cb2d1..ae5e2491ef7c 100644 --- a/client/src/components/Form/Elements/FormData/FormData.vue +++ b/client/src/components/Form/Elements/FormData/FormData.vue @@ -15,8 +15,8 @@ import { orList } from "@/utils/strings"; import type { DataOption } from "./types"; import { BATCH, SOURCE, VARIANTS } from "./variants"; -import FormSelection from "../FormSelection.vue"; import FormSelect from "@/components/Form/Elements/FormSelect.vue"; +import FormSelection from "@/components/Form/Elements/FormSelection.vue"; library.add(faCopy, faFile, faFolder, faCaretDown, faCaretUp, faExclamation, faLink, faUnlink); diff --git a/client/src/components/Form/Elements/FormSelectMany/worker/__mocks__/selectMany.ts b/client/src/components/Form/Elements/FormSelectMany/worker/__mocks__/selectMany.ts index a635e2bb63aa..b54c76bbc1a0 100644 --- a/client/src/components/Form/Elements/FormSelectMany/worker/__mocks__/selectMany.ts +++ b/client/src/components/Form/Elements/FormSelectMany/worker/__mocks__/selectMany.ts @@ -1,7 +1,10 @@ import { reactive, ref, watch } from "vue"; -import { type SelectOption, type useSelectMany as UseSelectMany } from "../selectMany"; -import { main } from "../selectManyMain"; +import { + type SelectOption, + type useSelectMany as UseSelectMany, +} from "@/components/Form/Elements/FormSelectMany/worker/selectMany"; +import { main } from "@/components/Form/Elements/FormSelectMany/worker/selectManyMain"; jest.mock("@/components/Form/Elements/FormSelectMany/worker/selectMany", () => ({ useSelectMany, diff --git a/client/src/components/Form/FormInputs.vue b/client/src/components/Form/FormInputs.vue index 1421a4b79ea3..370bf3fc004a 100644 --- a/client/src/components/Form/FormInputs.vue +++ b/client/src/components/Form/FormInputs.vue @@ -67,11 +67,11 @@ <script> import { set } from "vue"; -import { matchCase } from "@/components/Form/utilities"; +import { matchCase } from "./utilities"; import FormCard from "./FormCard.vue"; +import FormElement from "./FormElement.vue"; import FormRepeat from "./FormRepeat.vue"; -import FormElement from "@/components/Form/FormElement.vue"; export default { name: "FormNode", diff --git a/client/src/components/Grid/GridHistory.vue b/client/src/components/Grid/GridHistory.vue index 76229f380ea8..8f9a6bfe815c 100644 --- a/client/src/components/Grid/GridHistory.vue +++ b/client/src/components/Grid/GridHistory.vue @@ -3,14 +3,15 @@ import { library } from "@fortawesome/fontawesome-svg-core"; import { faPlus } from "@fortawesome/free-solid-svg-icons"; import { BNav, BNavItem } from "bootstrap-vue"; -import historiesGridConfig from "@/components/Grid/configs/histories"; -import historiesPublishedGridConfig from "@/components/Grid/configs/historiesPublished"; -import historiesSharedGridConfig from "@/components/Grid/configs/historiesShared"; import { useUserStore } from "@/stores/userStore"; +import historiesGridConfig from "./configs/histories"; +import historiesPublishedGridConfig from "./configs/historiesPublished"; +import historiesSharedGridConfig from "./configs/historiesShared"; + +import GridList from "./GridList.vue"; import Heading from "@/components/Common/Heading.vue"; import LoginRequired from "@/components/Common/LoginRequired.vue"; -import GridList from "@/components/Grid/GridList.vue"; import HistoryArchive from "@/components/History/Archiving/HistoryArchive.vue"; const userStore = useUserStore(); diff --git a/client/src/components/Grid/GridInvocation.vue b/client/src/components/Grid/GridInvocation.vue index d8997096096f..4deec8bdd469 100644 --- a/client/src/components/Grid/GridInvocation.vue +++ b/client/src/components/Grid/GridInvocation.vue @@ -2,17 +2,17 @@ import { storeToRefs } from "pinia"; import { computed } from "vue"; -import invocationsGridConfig from "@/components/Grid/configs/invocations"; -import invocationsHistoryGridConfig from "@/components/Grid/configs/invocationsHistory"; -import invocationsWorkflowGridConfig from "@/components/Grid/configs/invocationsWorkflow"; import { useUserStore } from "@/stores/userStore"; +import invocationsGridConfig from "./configs/invocations"; +import invocationsHistoryGridConfig from "./configs/invocationsHistory"; +import invocationsWorkflowGridConfig from "./configs/invocationsWorkflow"; import type { GridConfig } from "./configs/types"; -import Heading from "../Common/Heading.vue"; -import UtcDate from "../UtcDate.vue"; -import WorkflowInvocationState from "../WorkflowInvocationState/WorkflowInvocationState.vue"; -import GridList from "@/components/Grid/GridList.vue"; +import GridList from "./GridList.vue"; +import Heading from "@/components/Common/Heading.vue"; +import UtcDate from "@/components/UtcDate.vue"; +import WorkflowInvocationState from "@/components/WorkflowInvocationState/WorkflowInvocationState.vue"; interface Props { noInvocationsMessage?: string; diff --git a/client/src/components/Grid/GridList.vue b/client/src/components/Grid/GridList.vue index fb62592c7ec8..6f9f35547175 100644 --- a/client/src/components/Grid/GridList.vue +++ b/client/src/components/Grid/GridList.vue @@ -16,8 +16,6 @@ import { type RowData, } from "./configs/types"; -import HelpText from "../Help/HelpText.vue"; -import SwitchToHistoryLink from "../History/SwitchToHistoryLink.vue"; import GridBoolean from "./GridElements/GridBoolean.vue"; import GridDatasets from "./GridElements/GridDatasets.vue"; import GridExpand from "./GridElements/GridExpand.vue"; @@ -26,6 +24,8 @@ import GridOperations from "./GridElements/GridOperations.vue"; import GridText from "./GridElements/GridText.vue"; import FilterMenu from "@/components/Common/FilterMenu.vue"; import Heading from "@/components/Common/Heading.vue"; +import HelpText from "@/components/Help/HelpText.vue"; +import SwitchToHistoryLink from "@/components/History/SwitchToHistoryLink.vue"; import SharingIndicators from "@/components/Indices/SharingIndicators.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; import StatelessTags from "@/components/TagsMultiselect/StatelessTags.vue"; diff --git a/client/src/components/Grid/GridPage.vue b/client/src/components/Grid/GridPage.vue index 3508bba416ff..0426ee6b8290 100644 --- a/client/src/components/Grid/GridPage.vue +++ b/client/src/components/Grid/GridPage.vue @@ -3,13 +3,14 @@ import { library } from "@fortawesome/fontawesome-svg-core"; import { faPlus } from "@fortawesome/free-solid-svg-icons"; import { BNav, BNavItem } from "bootstrap-vue"; -import pagesGridConfig from "@/components/Grid/configs/pages"; -import pagesPublishedGridConfig from "@/components/Grid/configs/pagesPublished"; import { useUserStore } from "@/stores/userStore"; +import pagesGridConfig from "./configs/pages"; +import pagesPublishedGridConfig from "./configs/pagesPublished"; + +import GridList from "./GridList.vue"; import Heading from "@/components/Common/Heading.vue"; import LoginRequired from "@/components/Common/LoginRequired.vue"; -import GridList from "@/components/Grid/GridList.vue"; const userStore = useUserStore(); diff --git a/client/src/components/Grid/GridVisualization.vue b/client/src/components/Grid/GridVisualization.vue index 0ba424bd10ea..17a88c2da4a7 100644 --- a/client/src/components/Grid/GridVisualization.vue +++ b/client/src/components/Grid/GridVisualization.vue @@ -3,13 +3,14 @@ import { library } from "@fortawesome/fontawesome-svg-core"; import { faPlus } from "@fortawesome/free-solid-svg-icons"; import { BNav, BNavItem } from "bootstrap-vue"; -import visualizationsGridConfig from "@/components/Grid/configs/visualizations"; -import visualizationsPublishedGridConfig from "@/components/Grid/configs/visualizationsPublished"; import { useUserStore } from "@/stores/userStore"; +import visualizationsGridConfig from "./configs/visualizations"; +import visualizationsPublishedGridConfig from "./configs/visualizationsPublished"; + +import GridList from "./GridList.vue"; import Heading from "@/components/Common/Heading.vue"; import LoginRequired from "@/components/Common/LoginRequired.vue"; -import GridList from "@/components/Grid/GridList.vue"; const userStore = useUserStore(); diff --git a/client/src/components/History/Archiving/HistoryArchive.vue b/client/src/components/History/Archiving/HistoryArchive.vue index beef0282cb85..5de1a7d6ebf4 100644 --- a/client/src/components/History/Archiving/HistoryArchive.vue +++ b/client/src/components/History/Archiving/HistoryArchive.vue @@ -13,8 +13,8 @@ import { useToast } from "@/composables/toast"; import { useHistoryStore } from "@/stores/historyStore"; import localize from "@/utils/localization"; +import ArchivedHistoryCard from "./ArchivedHistoryCard.vue"; import DelayedInput from "@/components/Common/DelayedInput.vue"; -import ArchivedHistoryCard from "@/components/History/Archiving/ArchivedHistoryCard.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; const router = useRouter(); diff --git a/client/src/components/History/Archiving/HistoryArchiveWizard.vue b/client/src/components/History/Archiving/HistoryArchiveWizard.vue index 68b3e793a9ae..beb2388a90d7 100644 --- a/client/src/components/History/Archiving/HistoryArchiveWizard.vue +++ b/client/src/components/History/Archiving/HistoryArchiveWizard.vue @@ -12,8 +12,8 @@ import { useFileSources } from "@/composables/fileSources"; import { useToast } from "@/composables/toast"; import { useHistoryStore } from "@/stores/historyStore"; -import HistoryArchiveExportSelector from "@/components/History/Archiving/HistoryArchiveExportSelector.vue"; -import HistoryArchiveSimple from "@/components/History/Archiving/HistoryArchiveSimple.vue"; +import HistoryArchiveExportSelector from "./HistoryArchiveExportSelector.vue"; +import HistoryArchiveSimple from "./HistoryArchiveSimple.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; library.add(faArchive); diff --git a/client/src/components/History/Content/Collection/JobStateSummary.js b/client/src/components/History/Content/Collection/JobStateSummary.js index a95a04a93007..d9781353445a 100644 --- a/client/src/components/History/Content/Collection/JobStateSummary.js +++ b/client/src/components/History/Content/Collection/JobStateSummary.js @@ -4,7 +4,7 @@ * * Logic stolen from job-state-model.js and hdca-li.js */ -import { STATES } from "../model/states"; +import { STATES } from "@/components/History/Content/model/states"; const NON_TERMINAL_STATES = ["new", "waiting", "queued", "running", "resubmitted", "upload"]; const ERROR_STATES = ["error", "failed", "deleted"]; diff --git a/client/src/components/History/Content/ContentItem.vue b/client/src/components/History/Content/ContentItem.vue index cba8f0bdc4d3..ac2e4c229ea1 100644 --- a/client/src/components/History/Content/ContentItem.vue +++ b/client/src/components/History/Content/ContentItem.vue @@ -7,13 +7,13 @@ import { BBadge, BButton, BCollapse } from "bootstrap-vue"; import { computed, ref } from "vue"; import { useRoute, useRouter } from "vue-router/composables"; -import type { ItemUrls } from "@/components/History/Content/Dataset/index"; import { updateContentFields } from "@/components/History/model/queries"; import { useEntryPointStore } from "@/stores/entryPointStore"; import { useEventStore } from "@/stores/eventStore"; import { clearDrag } from "@/utils/setDrag"; import { JobStateSummary } from "./Collection/JobStateSummary"; +import type { ItemUrls } from "./Dataset"; import { HIERARCHICAL_COLLECTION_JOB_STATES, type StateMap, STATES } from "./model/states"; import CollectionDescription from "./Collection/CollectionDescription.vue"; diff --git a/client/src/components/History/Content/Dataset/DatasetActions.vue b/client/src/components/History/Content/Dataset/DatasetActions.vue index c16c88b70c2e..24bb1c4d41c5 100644 --- a/client/src/components/History/Content/Dataset/DatasetActions.vue +++ b/client/src/components/History/Content/Dataset/DatasetActions.vue @@ -13,7 +13,7 @@ import { absPath, prependPath } from "@/utils/redirect"; import { type ItemUrls } from "."; -import DatasetDownload from "@/components/History/Content/Dataset/DatasetDownload.vue"; +import DatasetDownload from "./DatasetDownload.vue"; library.add(faBug, faChartBar, faInfoCircle, faLink, faRedo, faSitemap); diff --git a/client/src/components/History/Content/SelectedItems.js b/client/src/components/History/Content/SelectedItems.js index a93fa5904784..84ecef23f7dd 100644 --- a/client/src/components/History/Content/SelectedItems.js +++ b/client/src/components/History/Content/SelectedItems.js @@ -3,7 +3,7 @@ * It allows to select individual items or perform a query selection. */ -import { HistoryFilters } from "../HistoryFilters"; +import { HistoryFilters } from "@/components/History/HistoryFilters"; export default { props: { diff --git a/client/src/components/History/CurrentHistory/HistoryOperations/HistoryOperations.vue b/client/src/components/History/CurrentHistory/HistoryOperations/HistoryOperations.vue index 4ae704e4b8fa..c49a8e305b38 100644 --- a/client/src/components/History/CurrentHistory/HistoryOperations/HistoryOperations.vue +++ b/client/src/components/History/CurrentHistory/HistoryOperations/HistoryOperations.vue @@ -5,7 +5,7 @@ import { FontAwesomeIcon } from "@fortawesome/vue-fontawesome"; import type { HistorySummaryExtended } from "@/api"; -import DefaultOperations from "@/components/History/CurrentHistory/HistoryOperations/DefaultOperations.vue"; +import DefaultOperations from "./DefaultOperations.vue"; library.add(faCheckSquare, faCompress); diff --git a/client/src/components/History/CurrentHistory/SelectPreferredStore.test.ts b/client/src/components/History/CurrentHistory/SelectPreferredStore.test.ts index 6bb0b9c67506..10a3e0624d73 100644 --- a/client/src/components/History/CurrentHistory/SelectPreferredStore.test.ts +++ b/client/src/components/History/CurrentHistory/SelectPreferredStore.test.ts @@ -4,10 +4,9 @@ import MockAdapter from "axios-mock-adapter"; import flushPromises from "flush-promises"; import { getLocalVue } from "tests/jest/helpers"; +import { setupSelectableMock } from "@/components/ObjectStore/mockServices"; import { ROOT_COMPONENT } from "@/utils/navigation/schema"; -import { setupSelectableMock } from "../../ObjectStore/mockServices"; - import SelectPreferredStore from "./SelectPreferredStore.vue"; setupSelectableMock(); diff --git a/client/src/components/History/HistoryPublished.vue b/client/src/components/History/HistoryPublished.vue index a9284130f103..2c68bbd54a47 100644 --- a/client/src/components/History/HistoryPublished.vue +++ b/client/src/components/History/HistoryPublished.vue @@ -3,8 +3,8 @@ import { onMounted, ref } from "vue"; import { historyFetcher } from "@/api/histories"; +import HistoryView from "./HistoryView.vue"; import PublishedItem from "@/components/Common/PublishedItem.vue"; -import HistoryView from "@/components/History/HistoryView.vue"; interface Props { id: string; diff --git a/client/src/components/History/HistoryScrollList.vue b/client/src/components/History/HistoryScrollList.vue index dad3c94eb05a..ef697e0c4c74 100644 --- a/client/src/components/History/HistoryScrollList.vue +++ b/client/src/components/History/HistoryScrollList.vue @@ -18,8 +18,8 @@ import localize from "@/utils/localization"; import { HistoriesFilters } from "./HistoriesFilters"; -import TextSummary from "../Common/TextSummary.vue"; import Heading from "@/components/Common/Heading.vue"; +import TextSummary from "@/components/Common/TextSummary.vue"; import StatelessTags from "@/components/TagsMultiselect/StatelessTags.vue"; import ScrollToTopButton from "@/components/ToolsList/ScrollToTopButton.vue"; import UtcDate from "@/components/UtcDate.vue"; diff --git a/client/src/components/History/Index.vue b/client/src/components/History/Index.vue index 5a192ef8bbb7..445438f0b3fb 100644 --- a/client/src/components/History/Index.vue +++ b/client/src/components/History/Index.vue @@ -6,9 +6,9 @@ import type { CollectionEntry } from "@/api"; import { useHistoryStore } from "@/stores/historyStore"; import { useUserStore } from "@/stores/userStore"; -import CurrentCollection from "@/components/History/CurrentCollection/CollectionPanel.vue"; -import HistoryNavigation from "@/components/History/CurrentHistory/HistoryNavigation.vue"; -import HistoryPanel from "@/components/History/CurrentHistory/HistoryPanel.vue"; +import CurrentCollection from "./CurrentCollection/CollectionPanel.vue"; +import HistoryNavigation from "./CurrentHistory/HistoryNavigation.vue"; +import HistoryPanel from "./CurrentHistory/HistoryPanel.vue"; const userStore = useUserStore(); const historyStore = useHistoryStore(); diff --git a/client/src/components/History/Multiple/MultipleViewList.vue b/client/src/components/History/Multiple/MultipleViewList.vue index 6f71c4a51e2b..e2df35993322 100644 --- a/client/src/components/History/Multiple/MultipleViewList.vue +++ b/client/src/components/History/Multiple/MultipleViewList.vue @@ -16,8 +16,8 @@ import { useHistoryStore } from "@/stores/historyStore"; import localize from "@/utils/localization"; import { errorMessageAsString } from "@/utils/simple-error"; -import HistoryDropZone from "../CurrentHistory/HistoryDropZone.vue"; import MultipleViewItem from "./MultipleViewItem.vue"; +import HistoryDropZone from "@/components/History/CurrentHistory/HistoryDropZone.vue"; library.add(faCheckSquare, faPlus); diff --git a/client/src/components/InteractiveTools/InteractiveTools.vue b/client/src/components/InteractiveTools/InteractiveTools.vue index 9cdf6d27c571..ccaf9206dd20 100644 --- a/client/src/components/InteractiveTools/InteractiveTools.vue +++ b/client/src/components/InteractiveTools/InteractiveTools.vue @@ -72,7 +72,8 @@ import UtcDate from "components/UtcDate"; import { getAppRoot } from "onload/loadConfig"; import { mapActions, mapState } from "pinia"; -import { useEntryPointStore } from "../../stores/entryPointStore"; +import { useEntryPointStore } from "@/stores/entryPointStore"; + import { Services } from "./services"; library.add(faExternalLinkAlt); diff --git a/client/src/components/JobInformation/JobInformation.vue b/client/src/components/JobInformation/JobInformation.vue index 085cf6fec0bb..6845367fbd1c 100644 --- a/client/src/components/JobInformation/JobInformation.vue +++ b/client/src/components/JobInformation/JobInformation.vue @@ -9,8 +9,8 @@ import { computed, ref } from "vue"; import { invocationForJob } from "@/api/invocations"; -import DecodedId from "../DecodedId.vue"; import CodeRow from "./CodeRow.vue"; +import DecodedId from "@/components/DecodedId.vue"; const job = ref(null); const invocationId = ref(null); diff --git a/client/src/components/JobParameters/JobParameters.vue b/client/src/components/JobParameters/JobParameters.vue index 34ec57c38f18..feaebe9fc11d 100644 --- a/client/src/components/JobParameters/JobParameters.vue +++ b/client/src/components/JobParameters/JobParameters.vue @@ -50,7 +50,8 @@ import BootstrapVue from "bootstrap-vue"; import { getAppRoot } from "onload/loadConfig"; import Vue from "vue"; -import JobOutputs from "../JobInformation/JobOutputs"; +import JobOutputs from "@/components/JobInformation/JobOutputs"; + import JobParametersArrayValue from "./JobParametersArrayValue"; Vue.use(BootstrapVue); diff --git a/client/src/components/Libraries/LibraryFolder/LibraryFolderDataset/LibraryDataset.test.js b/client/src/components/Libraries/LibraryFolder/LibraryFolderDataset/LibraryDataset.test.js index 48f4c85a6fcd..96e72db81077 100644 --- a/client/src/components/Libraries/LibraryFolder/LibraryFolderDataset/LibraryDataset.test.js +++ b/client/src/components/Libraries/LibraryFolder/LibraryFolderDataset/LibraryDataset.test.js @@ -5,7 +5,8 @@ import { createPinia } from "pinia"; import { useUserStore } from "stores/userStore"; import { getLocalVue } from "tests/jest/helpers"; -import { Services } from "../services"; +import { Services } from "@/components/Libraries/LibraryFolder/services"; + import LibraryDataset from "./LibraryDataset"; import cannotManageDatasetResponse from "./testData/cannotManageDataset.json"; import cannotModifyDatasetResponse from "./testData/cannotModifyDataset.json"; diff --git a/client/src/components/Libraries/LibraryFolder/TopToolbar/FolderTopBar.vue b/client/src/components/Libraries/LibraryFolder/TopToolbar/FolderTopBar.vue index de3b1c052e5b..16e0f3fed836 100644 --- a/client/src/components/Libraries/LibraryFolder/TopToolbar/FolderTopBar.vue +++ b/client/src/components/Libraries/LibraryFolder/TopToolbar/FolderTopBar.vue @@ -127,8 +127,9 @@ import { getAppRoot } from "onload/loadConfig"; import mod_utils from "utils/utils"; import Vue from "vue"; -import SearchField from "../SearchField"; -import { Services } from "../services"; +import SearchField from "@/components/Libraries/LibraryFolder/SearchField"; +import { Services } from "@/components/Libraries/LibraryFolder/services"; + import mod_add_datasets from "./add-datasets"; import { deleteSelectedItems } from "./delete-selected"; import download from "./download"; diff --git a/client/src/components/Libraries/LibraryFolder/TopToolbar/import-to-history/import-collection.js b/client/src/components/Libraries/LibraryFolder/TopToolbar/import-to-history/import-collection.js index 1642d31d89d3..ee81d5e3a9dd 100644 --- a/client/src/components/Libraries/LibraryFolder/TopToolbar/import-to-history/import-collection.js +++ b/client/src/components/Libraries/LibraryFolder/TopToolbar/import-to-history/import-collection.js @@ -5,7 +5,7 @@ import { Toast } from "composables/toast"; import { getAppRoot } from "onload/loadConfig"; import _ from "underscore"; -import mod_library_model from "../library-model"; +import mod_library_model from "@/components/Libraries/LibraryFolder/TopToolbar/library-model"; var ImportCollectionModal = Backbone.View.extend({ options: null, diff --git a/client/src/components/Libraries/LibraryFolder/TopToolbar/import-to-history/import-dataset.js b/client/src/components/Libraries/LibraryFolder/TopToolbar/import-to-history/import-dataset.js index 1af313f9ba2e..e1bd93167373 100644 --- a/client/src/components/Libraries/LibraryFolder/TopToolbar/import-to-history/import-dataset.js +++ b/client/src/components/Libraries/LibraryFolder/TopToolbar/import-to-history/import-dataset.js @@ -6,8 +6,8 @@ import { getAppRoot } from "onload/loadConfig"; import _ from "underscore"; import _l from "utils/localization"; -import { updateProgress } from "../delete-selected"; -import mod_library_model from "../library-model"; +import { updateProgress } from "@/components/Libraries/LibraryFolder/TopToolbar/delete-selected"; +import mod_library_model from "@/components/Libraries/LibraryFolder/TopToolbar/library-model"; var ImportDatasetModal = Backbone.View.extend({ options: null, diff --git a/client/src/components/Login/LoginForm.vue b/client/src/components/Login/LoginForm.vue index 4ad09ebb0d57..e00fb9d1e31a 100644 --- a/client/src/components/Login/LoginForm.vue +++ b/client/src/components/Login/LoginForm.vue @@ -20,7 +20,7 @@ import localize from "@/utils/localization"; import { withPrefix } from "@/utils/redirect"; import { errorMessageAsString } from "@/utils/simple-error"; -import NewUserConfirmation from "@/components/Login/NewUserConfirmation.vue"; +import NewUserConfirmation from "./NewUserConfirmation.vue"; import ExternalLogin from "@/components/User/ExternalIdentities/ExternalLogin.vue"; interface Props { diff --git a/client/src/components/Login/LoginIndex.vue b/client/src/components/Login/LoginIndex.vue index c74cc7a54fe9..c97806837dab 100644 --- a/client/src/components/Login/LoginIndex.vue +++ b/client/src/components/Login/LoginIndex.vue @@ -1,8 +1,8 @@ <script setup lang="ts"> import { ref } from "vue"; -import LoginForm from "@/components/Login/LoginForm.vue"; -import RegisterForm from "@/components/Login/RegisterForm.vue"; +import LoginForm from "./LoginForm.vue"; +import RegisterForm from "./RegisterForm.vue"; interface Props { sessionCsrfToken: string; diff --git a/client/src/components/Notifications/Broadcasts/BroadcastsOverlay.vue b/client/src/components/Notifications/Broadcasts/BroadcastsOverlay.vue index ecbf47311545..2ce0c5876eb4 100644 --- a/client/src/components/Notifications/Broadcasts/BroadcastsOverlay.vue +++ b/client/src/components/Notifications/Broadcasts/BroadcastsOverlay.vue @@ -3,7 +3,7 @@ import { storeToRefs } from "pinia"; import { useBroadcastsStore } from "@/stores/broadcastsStore"; -import BroadcastContainer from "@/components/Notifications/Broadcasts/BroadcastContainer.vue"; +import BroadcastContainer from "./BroadcastContainer.vue"; const { activeBroadcasts } = storeToRefs(useBroadcastsStore()); </script> diff --git a/client/src/components/Notifications/Categories/Categories.test.ts b/client/src/components/Notifications/Categories/Categories.test.ts index 1e3664fe8375..28c849ff75fd 100644 --- a/client/src/components/Notifications/Categories/Categories.test.ts +++ b/client/src/components/Notifications/Categories/Categories.test.ts @@ -6,8 +6,8 @@ import { setActivePinia } from "pinia"; import { generateMessageNotification, generateNewSharedItemNotification } from "@/components/Notifications/test-utils"; -import MessageNotification from "@/components/Notifications/Categories/MessageNotification.vue"; -import SharedItemNotification from "@/components/Notifications/Categories/SharedItemNotification.vue"; +import MessageNotification from "./MessageNotification.vue"; +import SharedItemNotification from "./SharedItemNotification.vue"; const localVue = getLocalVue(true); diff --git a/client/src/components/Notifications/NotificationActions.test.ts b/client/src/components/Notifications/NotificationActions.test.ts index ad06cb27a24a..e3638e8df7da 100644 --- a/client/src/components/Notifications/NotificationActions.test.ts +++ b/client/src/components/Notifications/NotificationActions.test.ts @@ -6,9 +6,10 @@ import { setActivePinia } from "pinia"; import type Vue from "vue"; import { type UserNotification } from "@/api/notifications"; -import { generateMessageNotification, generateNewSharedItemNotification } from "@/components/Notifications/test-utils"; import { useNotificationsStore } from "@/stores/notificationsStore"; +import { generateMessageNotification, generateNewSharedItemNotification } from "./test-utils"; + import NotificationActions from "./NotificationActions.vue"; const localVue = getLocalVue(true); diff --git a/client/src/components/Notifications/NotificationsList.vue b/client/src/components/Notifications/NotificationsList.vue index b9268e6c41f5..7c61b6f727ae 100644 --- a/client/src/components/Notifications/NotificationsList.vue +++ b/client/src/components/Notifications/NotificationsList.vue @@ -9,9 +9,9 @@ import { computed, ref } from "vue"; import type { UserNotification } from "@/api/notifications"; import { useNotificationsStore } from "@/stores/notificationsStore"; +import NotificationCard from "./NotificationCard.vue"; import Heading from "@/components/Common/Heading.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; -import NotificationCard from "@/components/Notifications/NotificationCard.vue"; import NotificationsPreferences from "@/components/User/Notifications/NotificationsPreferences.vue"; library.add(faCog, faHourglassHalf, faRetweet); diff --git a/client/src/components/ObjectStore/Instances/CreateForm.vue b/client/src/components/ObjectStore/Instances/CreateForm.vue index 6da11a92e3d9..0f1f6a0351b7 100644 --- a/client/src/components/ObjectStore/Instances/CreateForm.vue +++ b/client/src/components/ObjectStore/Instances/CreateForm.vue @@ -8,11 +8,11 @@ import { type FormEntry, pluginStatusToErrorMessage, } from "@/components/ConfigTemplates/formUtil"; -import type { UserConcreteObjectStore } from "@/components/ObjectStore/Instances/types"; import type { ObjectStoreTemplateSummary } from "@/components/ObjectStore/Templates/types"; import { errorMessageAsString } from "@/utils/simple-error"; import { create, test } from "./services"; +import type { UserConcreteObjectStore } from "./types"; import InstanceForm from "@/components/ConfigTemplates/InstanceForm.vue"; diff --git a/client/src/components/ObjectStore/Instances/UpgradeForm.vue b/client/src/components/ObjectStore/Instances/UpgradeForm.vue index 28aa658f3106..727465dbf944 100644 --- a/client/src/components/ObjectStore/Instances/UpgradeForm.vue +++ b/client/src/components/ObjectStore/Instances/UpgradeForm.vue @@ -3,9 +3,9 @@ import { BAlert } from "bootstrap-vue"; import { computed, ref } from "vue"; import { type FormEntry, upgradeForm, upgradeFormDataToPayload } from "@/components/ConfigTemplates/formUtil"; +import type { ObjectStoreTemplateSummary } from "@/components/ObjectStore/Templates/types"; import { errorMessageAsString } from "@/utils/simple-error"; -import type { ObjectStoreTemplateSummary } from "../Templates/types"; import { useInstanceRouting } from "./routing"; import { update } from "./services"; import type { UserConcreteObjectStore } from "./types"; diff --git a/client/src/components/ObjectStore/ObjectStoreSelectButton.vue b/client/src/components/ObjectStore/ObjectStoreSelectButton.vue index d86661b707e5..940040900038 100644 --- a/client/src/components/ObjectStore/ObjectStoreSelectButton.vue +++ b/client/src/components/ObjectStore/ObjectStoreSelectButton.vue @@ -3,7 +3,7 @@ import { BButton } from "bootstrap-vue"; import { type ConcreteObjectStoreModel } from "@/api"; -import ObjectStoreBadges from "@/components/ObjectStore/ObjectStoreBadges.vue"; +import ObjectStoreBadges from "./ObjectStoreBadges.vue"; import ProvidedQuotaSourceUsageBar from "@/components/User/DiskUsage/Quota/ProvidedQuotaSourceUsageBar.vue"; interface ObjectStoreSelectButtonProps { diff --git a/client/src/components/ObjectStore/ShowSelectedObjectStore.test.js b/client/src/components/ObjectStore/ShowSelectedObjectStore.test.js index 34135b89ab2a..52a49e37a154 100644 --- a/client/src/components/ObjectStore/ShowSelectedObjectStore.test.js +++ b/client/src/components/ObjectStore/ShowSelectedObjectStore.test.js @@ -6,8 +6,8 @@ import { mockFetcher } from "@/api/schema/__mocks__"; import ShowSelectedObjectStore from "./ShowSelectedObjectStore"; +import DescribeObjectStore from "./DescribeObjectStore.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; -import DescribeObjectStore from "@/components/ObjectStore/DescribeObjectStore.vue"; jest.mock("@/api/schema"); diff --git a/client/src/components/ObjectStore/ShowSelectedObjectStore.vue b/client/src/components/ObjectStore/ShowSelectedObjectStore.vue index 3b1c4cdfd087..b887783bb20d 100644 --- a/client/src/components/ObjectStore/ShowSelectedObjectStore.vue +++ b/client/src/components/ObjectStore/ShowSelectedObjectStore.vue @@ -6,8 +6,8 @@ import { errorMessageAsString } from "@/utils/simple-error"; import type { ConcreteObjectStoreModel } from "./types"; +import DescribeObjectStore from "./DescribeObjectStore.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; -import DescribeObjectStore from "@/components/ObjectStore/DescribeObjectStore.vue"; interface ShowSelectObjectStoreProps { forWhat: string; diff --git a/client/src/components/Panels/Common/ToolSearch.vue b/client/src/components/Panels/Common/ToolSearch.vue index 70b776fc7fc9..25d174172492 100644 --- a/client/src/components/Panels/Common/ToolSearch.vue +++ b/client/src/components/Panels/Common/ToolSearch.vue @@ -4,13 +4,12 @@ import { storeToRefs } from "pinia"; import { computed, type ComputedRef, onMounted, onUnmounted, type PropType, watch } from "vue"; import { useRouter } from "vue-router/composables"; +import { type ToolSearchKeys } from "@/components/Panels/utilities"; import { type Tool, type ToolSection, useToolStore } from "@/stores/toolStore"; import { useUserStore } from "@/stores/userStore"; import Filtering, { contains, type ValidFilter } from "@/utils/filtering"; import _l from "@/utils/localization"; -import { type ToolSearchKeys } from "../utilities"; - import DelayedInput from "@/components/Common/DelayedInput.vue"; import FilterMenu from "@/components/Common/FilterMenu.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; diff --git a/client/src/components/Panels/InvocationsPanel.vue b/client/src/components/Panels/InvocationsPanel.vue index cd329d1a2ae1..81535a02e3bc 100644 --- a/client/src/components/Panels/InvocationsPanel.vue +++ b/client/src/components/Panels/InvocationsPanel.vue @@ -4,8 +4,8 @@ import { storeToRefs } from "pinia"; import { useUserStore } from "@/stores/userStore"; -import InvocationScrollList from "../Workflow/Invocation/InvocationScrollList.vue"; import ActivityPanel from "./ActivityPanel.vue"; +import InvocationScrollList from "@/components/Workflow/Invocation/InvocationScrollList.vue"; const { currentUser, toggledSideBar } = storeToRefs(useUserStore()); </script> diff --git a/client/src/components/Panels/Menus/PanelViewMenuItem.vue b/client/src/components/Panels/Menus/PanelViewMenuItem.vue index 087f0d19f282..c7d019881be7 100644 --- a/client/src/components/Panels/Menus/PanelViewMenuItem.vue +++ b/client/src/components/Panels/Menus/PanelViewMenuItem.vue @@ -6,7 +6,7 @@ </template> <script> -import { types_to_icons } from "../utilities"; +import { types_to_icons } from "@/components/Panels/utilities"; export default { props: { diff --git a/client/src/components/Panels/MultiviewPanel.vue b/client/src/components/Panels/MultiviewPanel.vue index a71a31fda746..0ac820429016 100644 --- a/client/src/components/Panels/MultiviewPanel.vue +++ b/client/src/components/Panels/MultiviewPanel.vue @@ -15,9 +15,9 @@ import { localize } from "@/utils/localization"; import { withPrefix } from "@/utils/redirect"; import { errorMessageAsString } from "@/utils/simple-error"; +import ActivityPanel from "./ActivityPanel.vue"; import FilterMenu from "@/components/Common/FilterMenu.vue"; import HistoryList from "@/components/History/HistoryScrollList.vue"; -import ActivityPanel from "@/components/Panels/ActivityPanel.vue"; const route = useRoute(); const router = useRouter(); diff --git a/client/src/components/Panels/NotificationsPanel.vue b/client/src/components/Panels/NotificationsPanel.vue index 606e87459074..2a3673dd3e68 100644 --- a/client/src/components/Panels/NotificationsPanel.vue +++ b/client/src/components/Panels/NotificationsPanel.vue @@ -9,9 +9,9 @@ import { computed } from "vue"; import { useConfirmDialog } from "@/composables/confirmDialog"; import { useNotificationsStore } from "@/stores/notificationsStore"; +import ActivityPanel from "./ActivityPanel.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; import NotificationCard from "@/components/Notifications/NotificationCard.vue"; -import ActivityPanel from "@/components/Panels/ActivityPanel.vue"; library.add(faCheckDouble); diff --git a/client/src/components/Panels/SettingsPanel.vue b/client/src/components/Panels/SettingsPanel.vue index a30b7329b705..386ec690b5eb 100644 --- a/client/src/components/Panels/SettingsPanel.vue +++ b/client/src/components/Panels/SettingsPanel.vue @@ -6,9 +6,9 @@ import { ref } from "vue"; import { useActivityStore } from "@/stores/activityStore"; +import ActivityPanel from "./ActivityPanel.vue"; import ActivitySettings from "@/components/ActivityBar/ActivitySettings.vue"; import DelayedInput from "@/components/Common/DelayedInput.vue"; -import ActivityPanel from "@/components/Panels/ActivityPanel.vue"; const activityStore = useActivityStore(); diff --git a/client/src/components/Panels/ToolPanel.vue b/client/src/components/Panels/ToolPanel.vue index a478b08f7c7a..28dd7deee409 100644 --- a/client/src/components/Panels/ToolPanel.vue +++ b/client/src/components/Panels/ToolPanel.vue @@ -10,11 +10,11 @@ import localize from "@/utils/localization"; import { types_to_icons } from "./utilities"; -import LoadingSpan from "../LoadingSpan.vue"; import FavoritesButton from "./Buttons/FavoritesButton.vue"; import PanelViewMenu from "./Menus/PanelViewMenu.vue"; import ToolBox from "./ToolBox.vue"; import Heading from "@/components/Common/Heading.vue"; +import LoadingSpan from "@/components/LoadingSpan.vue"; library.add(faCaretDown); diff --git a/client/src/components/Panels/VisualizationPanel.vue b/client/src/components/Panels/VisualizationPanel.vue index d9fbf144aa2c..3b3c07c6d188 100644 --- a/client/src/components/Panels/VisualizationPanel.vue +++ b/client/src/components/Panels/VisualizationPanel.vue @@ -9,10 +9,10 @@ import { useHistoryStore } from "@/stores/historyStore"; import { absPath } from "@/utils/redirect"; import { urlData } from "@/utils/url"; +import ActivityPanel from "./ActivityPanel.vue"; import DelayedInput from "@/components/Common/DelayedInput.vue"; import DataDialog from "@/components/DataDialog/DataDialog.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; -import ActivityPanel from "@/components/Panels/ActivityPanel.vue"; interface Plugin { description: string; diff --git a/client/src/components/SelectionDialog/BasicSelectionDialog.vue b/client/src/components/SelectionDialog/BasicSelectionDialog.vue index 75a5fcf50e94..69f96e446858 100644 --- a/client/src/components/SelectionDialog/BasicSelectionDialog.vue +++ b/client/src/components/SelectionDialog/BasicSelectionDialog.vue @@ -2,10 +2,11 @@ import { computed, onMounted, type Ref, ref } from "vue"; import { type ApiResponse } from "@/api/schema"; -import { type SelectionItem } from "@/components/SelectionDialog/selectionTypes"; import { errorMessageAsString } from "@/utils/simple-error"; -import SelectionDialog from "@/components/SelectionDialog/SelectionDialog.vue"; +import { type SelectionItem } from "./selectionTypes"; + +import SelectionDialog from "./SelectionDialog.vue"; interface Props { detailsKey?: string; diff --git a/client/src/components/SelectionDialog/DatasetCollectionDialog.vue b/client/src/components/SelectionDialog/DatasetCollectionDialog.vue index a0e079c964a9..3b36c1411bd6 100644 --- a/client/src/components/SelectionDialog/DatasetCollectionDialog.vue +++ b/client/src/components/SelectionDialog/DatasetCollectionDialog.vue @@ -2,11 +2,12 @@ import axios from "axios"; import { onMounted, ref } from "vue"; -import { type SelectionItem } from "@/components/SelectionDialog/selectionTypes"; import { withPrefix } from "@/utils/redirect"; import { errorMessageAsString } from "@/utils/simple-error"; -import SelectionDialog from "@/components/SelectionDialog/SelectionDialog.vue"; +import { type SelectionItem } from "./selectionTypes"; + +import SelectionDialog from "./SelectionDialog.vue"; interface HistoryItem { id: string; diff --git a/client/src/components/SelectionDialog/SelectionDialog.vue b/client/src/components/SelectionDialog/SelectionDialog.vue index 7a9c08ebaa0d..51ddb22ff8e5 100644 --- a/client/src/components/SelectionDialog/SelectionDialog.vue +++ b/client/src/components/SelectionDialog/SelectionDialog.vue @@ -6,11 +6,9 @@ import { FontAwesomeIcon } from "@fortawesome/vue-fontawesome"; import { BAlert, BButton, BLink, BModal, BPagination, BSpinner, BTable } from "bootstrap-vue"; import { computed, ref, watch } from "vue"; -import { type ItemsProvider, SELECTION_STATES } from "@/components/SelectionDialog/selectionTypes"; +import { type FieldEntry, type ItemsProvider, SELECTION_STATES, type SelectionItem } from "./selectionTypes"; -import { type FieldEntry, type SelectionItem } from "./selectionTypes"; - -import DataDialogSearch from "@/components/SelectionDialog/DataDialogSearch.vue"; +import DataDialogSearch from "./DataDialogSearch.vue"; import StatelessTags from "@/components/TagsMultiselect/StatelessTags.vue"; library.add(faCaretLeft, faCheck, faCheckSquare, faFolder, faMinusSquare, faSpinner, faSquare, faTimes); diff --git a/client/src/components/Sharing/UserSharing.vue b/client/src/components/Sharing/UserSharing.vue index f85b5c223913..8729ad9f4393 100644 --- a/client/src/components/Sharing/UserSharing.vue +++ b/client/src/components/Sharing/UserSharing.vue @@ -22,7 +22,7 @@ import { assertArray } from "@/utils/assertions"; import type { Item, ShareOption } from "./item"; -import Heading from "../Common/Heading.vue"; +import Heading from "@/components/Common/Heading.vue"; const props = defineProps<{ item: Item; diff --git a/client/src/components/Tool/Buttons/ToolOptionsButton.vue b/client/src/components/Tool/Buttons/ToolOptionsButton.vue index 5e93551698d2..2d8a9820033b 100644 --- a/client/src/components/Tool/Buttons/ToolOptionsButton.vue +++ b/client/src/components/Tool/Buttons/ToolOptionsButton.vue @@ -8,10 +8,9 @@ import { storeToRefs } from "pinia"; import Webhooks from "utils/webhooks"; import { computed, ref } from "vue"; +import { copyId, copyLink, downloadTool, openLink } from "@/components/Tool/utilities"; import { useUserStore } from "@/stores/userStore"; -import { copyId, copyLink, downloadTool, openLink } from "../utilities"; - library.add(faCaretDown, faLink, faDownload, faExternalLinkAlt, faCopy); const { currentUser } = storeToRefs(useUserStore()); diff --git a/client/src/components/Tool/ToolForm.vue b/client/src/components/Tool/ToolForm.vue index 0268d65bad8e..44f00a6e1169 100644 --- a/client/src/components/Tool/ToolForm.vue +++ b/client/src/components/Tool/ToolForm.vue @@ -123,11 +123,11 @@ import { useJobStore } from "stores/jobStore"; import { refreshContentsWrapper } from "utils/data"; import { canMutateHistory } from "@/api"; +import ToolRecommendation from "@/components/ToolRecommendation"; import { useConfigStore } from "@/stores/configurationStore"; import { useHistoryStore } from "@/stores/historyStore"; import { useUserStore } from "@/stores/userStore"; -import ToolRecommendation from "../ToolRecommendation"; import { getToolFormData, submitJob, updateToolFormData } from "./services"; import ToolCard from "./ToolCard"; import { allowCachedJobs } from "./utilities"; diff --git a/client/src/components/Tool/ToolSuccess.vue b/client/src/components/Tool/ToolSuccess.vue index 8ac04d5c4c4d..4b801410fddd 100644 --- a/client/src/components/Tool/ToolSuccess.vue +++ b/client/src/components/Tool/ToolSuccess.vue @@ -6,11 +6,11 @@ import { useRouter } from "vue-router/composables"; import { useConfig } from "@/composables/config"; import { useJobStore } from "@/stores/jobStore"; -import LoadingSpan from "../LoadingSpan.vue"; -import ToolRecommendation from "../ToolRecommendation.vue"; import ToolSuccessMessage from "./ToolSuccessMessage.vue"; import Webhook from "@/components/Common/Webhook.vue"; +import LoadingSpan from "@/components/LoadingSpan.vue"; import ToolEntryPoints from "@/components/ToolEntryPoints/ToolEntryPoints.vue"; +import ToolRecommendation from "@/components/ToolRecommendation.vue"; const { config } = useConfig(true); const jobStore = useJobStore(); diff --git a/client/src/components/ToolsView/ToolsSchemaJson/ToolsJson.test.js b/client/src/components/ToolsView/ToolsSchemaJson/ToolsJson.test.js index f009126de465..2c9431ef4f3a 100644 --- a/client/src/components/ToolsView/ToolsSchemaJson/ToolsJson.test.js +++ b/client/src/components/ToolsView/ToolsSchemaJson/ToolsJson.test.js @@ -5,8 +5,9 @@ import MockAdapter from "axios-mock-adapter"; import flushPromises from "flush-promises"; import { getLocalVue } from "tests/jest/helpers"; -import testToolsListResponse from "../testData/toolsList"; -import testToolsListInPanelResponse from "../testData/toolsListInPanel"; +import testToolsListResponse from "@/components/ToolsView/testData/toolsList"; +import testToolsListInPanelResponse from "@/components/ToolsView/testData/toolsListInPanel"; + import ToolsJson from "./ToolsJson"; const localVue = getLocalVue(); diff --git a/client/src/components/Toolshed/InstalledList/Details.test.js b/client/src/components/Toolshed/InstalledList/Details.test.js index ade6e7612593..0ceaadd24f76 100644 --- a/client/src/components/Toolshed/InstalledList/Details.test.js +++ b/client/src/components/Toolshed/InstalledList/Details.test.js @@ -1,7 +1,8 @@ import { createLocalVue, shallowMount } from "@vue/test-utils"; import { getAppRoot } from "onload/loadConfig"; -import { Services } from "../services"; +import { Services } from "@/components/Toolshed/services"; + import Details from "./Details"; jest.mock("app"); diff --git a/client/src/components/Toolshed/InstalledList/Details.vue b/client/src/components/Toolshed/InstalledList/Details.vue index 1dc166b64756..4c1c7c8b6c48 100644 --- a/client/src/components/Toolshed/InstalledList/Details.vue +++ b/client/src/components/Toolshed/InstalledList/Details.vue @@ -17,9 +17,9 @@ import LoadingSpan from "components/LoadingSpan"; import { getAppRoot } from "onload/loadConfig"; -import { Services } from "../services"; +import { Services } from "@/components/Toolshed/services"; -import RepositoryDetails from "../RepositoryDetails/Index.vue"; +import RepositoryDetails from "@/components/Toolshed/RepositoryDetails/Index.vue"; export default { components: { diff --git a/client/src/components/Toolshed/InstalledList/Index.test.js b/client/src/components/Toolshed/InstalledList/Index.test.js index 6888cb6995b7..d6e5daf3b47a 100644 --- a/client/src/components/Toolshed/InstalledList/Index.test.js +++ b/client/src/components/Toolshed/InstalledList/Index.test.js @@ -2,7 +2,8 @@ import { mount } from "@vue/test-utils"; import { getAppRoot } from "onload/loadConfig"; import { getLocalVue } from "tests/jest/helpers"; -import { Services } from "../services"; +import { Services } from "@/components/Toolshed/services"; + import Index from "./Index"; jest.mock("app"); diff --git a/client/src/components/Toolshed/InstalledList/Index.vue b/client/src/components/Toolshed/InstalledList/Index.vue index 6e2568ba6414..f7e0b5ed214c 100644 --- a/client/src/components/Toolshed/InstalledList/Index.vue +++ b/client/src/components/Toolshed/InstalledList/Index.vue @@ -57,7 +57,8 @@ import LoadingSpan from "components/LoadingSpan"; import { getAppRoot } from "onload/loadConfig"; import Vue from "vue"; -import { Services } from "../services"; +import { Services } from "@/components/Toolshed/services"; + import RepositoryDetails from "./Details"; import Monitor from "./Monitor"; diff --git a/client/src/components/Toolshed/InstalledList/Monitor.test.js b/client/src/components/Toolshed/InstalledList/Monitor.test.js index f0d05b78be32..48aa32b8e458 100644 --- a/client/src/components/Toolshed/InstalledList/Monitor.test.js +++ b/client/src/components/Toolshed/InstalledList/Monitor.test.js @@ -2,7 +2,8 @@ import { mount } from "@vue/test-utils"; import { getAppRoot } from "onload/loadConfig"; import { getLocalVue } from "tests/jest/helpers"; -import { Services } from "../services"; +import { Services } from "@/components/Toolshed/services"; + import Monitor from "./Monitor"; jest.mock("app"); diff --git a/client/src/components/Toolshed/InstalledList/Monitor.vue b/client/src/components/Toolshed/InstalledList/Monitor.vue index 0a2792d5904e..1f58169e0f4f 100644 --- a/client/src/components/Toolshed/InstalledList/Monitor.vue +++ b/client/src/components/Toolshed/InstalledList/Monitor.vue @@ -32,8 +32,8 @@ import BootstrapVue from "bootstrap-vue"; import Vue from "vue"; -import InstallationActions from "../RepositoryDetails/InstallationActions"; -import { Services } from "../services"; +import InstallationActions from "@/components/Toolshed/RepositoryDetails/InstallationActions"; +import { Services } from "@/components/Toolshed/services"; Vue.use(BootstrapVue); diff --git a/client/src/components/Toolshed/RepositoryDetails/Index.test.js b/client/src/components/Toolshed/RepositoryDetails/Index.test.js index ba48a8ae6901..ed53fae07d7d 100644 --- a/client/src/components/Toolshed/RepositoryDetails/Index.test.js +++ b/client/src/components/Toolshed/RepositoryDetails/Index.test.js @@ -6,8 +6,8 @@ import { createPinia } from "pinia"; import { getLocalVue } from "tests/jest/helpers"; import { mockFetcher } from "@/api/schema/__mocks__"; +import { Services } from "@/components/Toolshed/services"; -import { Services } from "../services"; import Index from "./Index"; jest.mock("app"); diff --git a/client/src/components/Toolshed/RepositoryDetails/Index.vue b/client/src/components/Toolshed/RepositoryDetails/Index.vue index 7f99ae9d7ce1..a755bf386a69 100644 --- a/client/src/components/Toolshed/RepositoryDetails/Index.vue +++ b/client/src/components/Toolshed/RepositoryDetails/Index.vue @@ -65,10 +65,9 @@ import { mapActions, mapState } from "pinia"; import { useToolStore } from "stores/toolStore"; import Vue from "vue"; +import { Services } from "@/components/Toolshed/services"; import { useConfig } from "@/composables/config"; -import { Services } from "../services"; - import InstallationActions from "./InstallationActions.vue"; import InstallationSettings from "./InstallationSettings.vue"; import RepositoryTools from "./RepositoryTools.vue"; diff --git a/client/src/components/Toolshed/SearchList/Categories.test.js b/client/src/components/Toolshed/SearchList/Categories.test.js index 6a158c3eef0c..5f75f259a926 100644 --- a/client/src/components/Toolshed/SearchList/Categories.test.js +++ b/client/src/components/Toolshed/SearchList/Categories.test.js @@ -1,6 +1,7 @@ import { createLocalVue, mount } from "@vue/test-utils"; -import { Services } from "../services"; +import { Services } from "@/components/Toolshed/services"; + import Categories from "./Categories"; jest.mock("../services"); diff --git a/client/src/components/Toolshed/SearchList/Categories.vue b/client/src/components/Toolshed/SearchList/Categories.vue index b200c8c7ce53..1848051bd77e 100644 --- a/client/src/components/Toolshed/SearchList/Categories.vue +++ b/client/src/components/Toolshed/SearchList/Categories.vue @@ -19,7 +19,7 @@ import BootstrapVue from "bootstrap-vue"; import LoadingSpan from "components/LoadingSpan"; import Vue from "vue"; -import { Services } from "../services"; +import { Services } from "@/components/Toolshed/services"; Vue.use(BootstrapVue); diff --git a/client/src/components/Toolshed/SearchList/Repositories.test.js b/client/src/components/Toolshed/SearchList/Repositories.test.js index 6a2a2f0cbae7..4dcbbef33a87 100644 --- a/client/src/components/Toolshed/SearchList/Repositories.test.js +++ b/client/src/components/Toolshed/SearchList/Repositories.test.js @@ -1,6 +1,7 @@ import { createLocalVue, mount } from "@vue/test-utils"; -import { Services } from "../services"; +import { Services } from "@/components/Toolshed/services"; + import Repositories from "./Repositories"; jest.mock("app"); diff --git a/client/src/components/Toolshed/SearchList/Repositories.vue b/client/src/components/Toolshed/SearchList/Repositories.vue index fec8c8192b55..bb3016c35830 100644 --- a/client/src/components/Toolshed/SearchList/Repositories.vue +++ b/client/src/components/Toolshed/SearchList/Repositories.vue @@ -20,9 +20,9 @@ import BootstrapVue from "bootstrap-vue"; import LoadingSpan from "components/LoadingSpan"; import Vue from "vue"; -import { Services } from "../services"; +import { Services } from "@/components/Toolshed/services"; -import RepositoryDetails from "../RepositoryDetails/Index.vue"; +import RepositoryDetails from "@/components/Toolshed/RepositoryDetails/Index.vue"; Vue.use(BootstrapVue); diff --git a/client/src/components/User/DiskUsage/DiskUsageSummary.vue b/client/src/components/User/DiskUsage/DiskUsageSummary.vue index d82ebb4f501e..d200252ac93a 100644 --- a/client/src/components/User/DiskUsage/DiskUsageSummary.vue +++ b/client/src/components/User/DiskUsage/DiskUsageSummary.vue @@ -12,7 +12,7 @@ import { bytesToString } from "@/utils/utils"; import { type QuotaUsage } from "./Quota/model"; import { fetch } from "./Quota/services"; -import QuotaUsageSummary from "@/components/User/DiskUsage/Quota/QuotaUsageSummary.vue"; +import QuotaUsageSummary from "./Quota/QuotaUsageSummary.vue"; const { config, isConfigLoaded } = useConfig(true); const userStore = useUserStore(); diff --git a/client/src/components/User/DiskUsage/Management/Cleanup/categories.ts b/client/src/components/User/DiskUsage/Management/Cleanup/categories.ts index 823b74707b4e..63ff72e31d69 100644 --- a/client/src/components/User/DiskUsage/Management/Cleanup/categories.ts +++ b/client/src/components/User/DiskUsage/Management/Cleanup/categories.ts @@ -1,7 +1,5 @@ import { ref } from "vue"; -import localize from "@/utils/localization"; - import { cleanupDatasets, cleanupHistories, @@ -11,7 +9,9 @@ import { fetchDiscardedDatasetsSummary, fetchDiscardedHistories, fetchDiscardedHistoriesSummary, -} from "../services"; +} from "@/components/User/DiskUsage/Management/services"; +import localize from "@/utils/localization"; + import { type CleanupCategory } from "./model"; export function useCleanupCategories() { diff --git a/client/src/components/User/UserPreferredObjectStore.test.js b/client/src/components/User/UserPreferredObjectStore.test.js index a5c1ed74052f..f537dd8be5c6 100644 --- a/client/src/components/User/UserPreferredObjectStore.test.js +++ b/client/src/components/User/UserPreferredObjectStore.test.js @@ -4,10 +4,9 @@ import MockAdapter from "axios-mock-adapter"; import flushPromises from "flush-promises"; import { getLocalVue } from "tests/jest/helpers"; +import { setupSelectableMock } from "@/components/ObjectStore/mockServices"; import { ROOT_COMPONENT } from "@/utils/navigation"; -import { setupSelectableMock } from "../ObjectStore/mockServices"; - import UserPreferredObjectStore from "./UserPreferredObjectStore.vue"; setupSelectableMock(); diff --git a/client/src/components/Workflow/Editor/Actions/actions.test.ts b/client/src/components/Workflow/Editor/Actions/actions.test.ts index 78290cde330b..d995772370ae 100644 --- a/client/src/components/Workflow/Editor/Actions/actions.test.ts +++ b/client/src/components/Workflow/Editor/Actions/actions.test.ts @@ -1,12 +1,12 @@ import { createPinia, setActivePinia } from "pinia"; +import { fromSimple, type Workflow } from "@/components/Workflow/Editor/modules/model"; import { LazyUndoRedoAction, type UndoRedoAction, useUndoRedoStore } from "@/stores/undoRedoStore"; import { useConnectionStore } from "@/stores/workflowConnectionStore"; import { useWorkflowCommentStore } from "@/stores/workflowEditorCommentStore"; import { useWorkflowStateStore } from "@/stores/workflowEditorStateStore"; import { useWorkflowStepStore } from "@/stores/workflowStepStore"; -import { fromSimple, type Workflow } from "../modules/model"; import { AddCommentAction, ChangeColorAction, diff --git a/client/src/components/Workflow/Editor/Actions/mockData.ts b/client/src/components/Workflow/Editor/Actions/mockData.ts index 414b56f716f9..5b80857d015a 100644 --- a/client/src/components/Workflow/Editor/Actions/mockData.ts +++ b/client/src/components/Workflow/Editor/Actions/mockData.ts @@ -1,8 +1,7 @@ +import { type Workflow } from "@/components/Workflow/Editor/modules/model"; import { type FreehandWorkflowComment, type WorkflowComment } from "@/stores/workflowEditorCommentStore"; import { type Step } from "@/stores/workflowStepStore"; -import { type Workflow } from "../modules/model"; - export function mockToolStep(id: number): Step { return { id, diff --git a/client/src/components/Workflow/Editor/Actions/workflowActions.ts b/client/src/components/Workflow/Editor/Actions/workflowActions.ts index 4418e0a3c519..30cb99536427 100644 --- a/client/src/components/Workflow/Editor/Actions/workflowActions.ts +++ b/client/src/components/Workflow/Editor/Actions/workflowActions.ts @@ -1,3 +1,5 @@ +import { type defaultPosition } from "@/components/Workflow/Editor/composables/useDefaultStepPosition"; +import { fromSimple, type Workflow } from "@/components/Workflow/Editor/modules/model"; import { LazyUndoRedoAction, UndoRedoAction, type UndoRedoStore } from "@/stores/undoRedoStore"; import { useConnectionStore } from "@/stores/workflowConnectionStore"; import { @@ -9,8 +11,6 @@ import { useWorkflowStateStore, type WorkflowStateStore } from "@/stores/workflo import { type Step, useWorkflowStepStore, type WorkflowStepStore } from "@/stores/workflowStepStore"; import { ensureDefined } from "@/utils/assertions"; -import { type defaultPosition } from "../composables/useDefaultStepPosition"; -import { fromSimple, type Workflow } from "../modules/model"; import { cloneStepWithUniqueLabel, getLabelSet } from "./cloneStep"; export class LazySetValueAction<T> extends LazyUndoRedoAction { diff --git a/client/src/components/Workflow/Editor/Comments/FrameComment.vue b/client/src/components/Workflow/Editor/Comments/FrameComment.vue index e6a324625b4b..8ea30f73da89 100644 --- a/client/src/components/Workflow/Editor/Comments/FrameComment.vue +++ b/client/src/components/Workflow/Editor/Comments/FrameComment.vue @@ -8,12 +8,12 @@ import { BButton, BButtonGroup } from "bootstrap-vue"; import { sanitize } from "dompurify"; import { computed, onMounted, reactive, ref, watch } from "vue"; +import { LazyMoveMultipleAction } from "@/components/Workflow/Editor/Actions/workflowActions"; import { AxisAlignedBoundingBox, type Rectangle } from "@/components/Workflow/Editor/modules/geometry"; import { useWorkflowStores } from "@/composables/workflowStores"; import type { FrameWorkflowComment, WorkflowComment, WorkflowCommentColor } from "@/stores/workflowEditorCommentStore"; import type { Step } from "@/stores/workflowStepStore"; -import { LazyMoveMultipleAction } from "../Actions/workflowActions"; import { brighterColors, darkenedColors } from "./colors"; import { useResizable } from "./useResizable"; import { selectAllText } from "./utilities"; diff --git a/client/src/components/Workflow/Editor/Comments/FreehandComment.vue b/client/src/components/Workflow/Editor/Comments/FreehandComment.vue index 63a9aae99aa1..0aa5a93597dc 100644 --- a/client/src/components/Workflow/Editor/Comments/FreehandComment.vue +++ b/client/src/components/Workflow/Editor/Comments/FreehandComment.vue @@ -2,10 +2,10 @@ import { curveCatmullRom, curveLinear, line } from "d3"; import { computed } from "vue"; +import { vecSubtract } from "@/components/Workflow/Editor/modules/geometry"; import { useWorkflowStores } from "@/composables/workflowStores"; import type { FreehandWorkflowComment } from "@/stores/workflowEditorCommentStore"; -import { vecSubtract } from "../modules/geometry"; import { colors } from "./colors"; const props = defineProps<{ diff --git a/client/src/components/Workflow/Editor/Comments/WorkflowComment.vue b/client/src/components/Workflow/Editor/Comments/WorkflowComment.vue index 067238aceafa..5ac4960bb01e 100644 --- a/client/src/components/Workflow/Editor/Comments/WorkflowComment.vue +++ b/client/src/components/Workflow/Editor/Comments/WorkflowComment.vue @@ -2,9 +2,6 @@ import { type UseElementBoundingReturn } from "@vueuse/core"; import { computed } from "vue"; -import { useWorkflowStores } from "@/composables/workflowStores"; -import type { WorkflowComment, WorkflowCommentColor } from "@/stores/workflowEditorCommentStore"; - import { ChangeColorAction, DeleteCommentAction, @@ -12,7 +9,9 @@ import { LazyChangePositionAction, LazyChangeSizeAction, ToggleCommentSelectedAction, -} from "../Actions/commentActions"; +} from "@/components/Workflow/Editor/Actions/commentActions"; +import { useWorkflowStores } from "@/composables/workflowStores"; +import type { WorkflowComment, WorkflowCommentColor } from "@/stores/workflowEditorCommentStore"; import FrameComment from "./FrameComment.vue"; import FreehandComment from "./FreehandComment.vue"; diff --git a/client/src/components/Workflow/Editor/Comments/useResizable.ts b/client/src/components/Workflow/Editor/Comments/useResizable.ts index 58dab7a963a1..88b583e7a94c 100644 --- a/client/src/components/Workflow/Editor/Comments/useResizable.ts +++ b/client/src/components/Workflow/Editor/Comments/useResizable.ts @@ -1,10 +1,9 @@ import { useEventListener } from "@vueuse/core"; import { type Ref, watch } from "vue"; +import { vecSnap } from "@/components/Workflow/Editor/modules/geometry"; import { useWorkflowStores } from "@/composables/workflowStores"; -import { vecSnap } from "../modules/geometry"; - /** * Common functionality required for handling a user resizable element. * `resize: both` needs to be set on the elements style, this composable diff --git a/client/src/components/Workflow/Editor/Forms/FormDefault.vue b/client/src/components/Workflow/Editor/Forms/FormDefault.vue index 8ac56fd941da..2ef844cfc305 100644 --- a/client/src/components/Workflow/Editor/Forms/FormDefault.vue +++ b/client/src/components/Workflow/Editor/Forms/FormDefault.vue @@ -66,19 +66,18 @@ import { storeToRefs } from "pinia"; import { computed, ref, toRef, watch } from "vue"; import type { DatatypesMapperModel } from "@/components/Datatypes/model"; +import { useStepProps } from "@/components/Workflow/Editor/composables/useStepProps"; +import { useUniqueLabelError } from "@/components/Workflow/Editor/composables/useUniqueLabelError"; import WorkflowIcons from "@/components/Workflow/icons"; import { useWorkflowStores } from "@/composables/workflowStores"; import { useRefreshFromStore } from "@/stores/refreshFromStore"; import type { Step } from "@/stores/workflowStepStore"; -import { useStepProps } from "../composables/useStepProps"; -import { useUniqueLabelError } from "../composables/useUniqueLabelError"; - import FormConditional from "./FormConditional.vue"; +import FormOutputLabel from "./FormOutputLabel.vue"; import FormCard from "@/components/Form/FormCard.vue"; import FormDisplay from "@/components/Form/FormDisplay.vue"; import FormElement from "@/components/Form/FormElement.vue"; -import FormOutputLabel from "@/components/Workflow/Editor/Forms/FormOutputLabel.vue"; const props = defineProps<{ step: Step; diff --git a/client/src/components/Workflow/Editor/Forms/FormOutput.vue b/client/src/components/Workflow/Editor/Forms/FormOutput.vue index a0e41c37eb40..6cd6ef954fa9 100644 --- a/client/src/components/Workflow/Editor/Forms/FormOutput.vue +++ b/client/src/components/Workflow/Editor/Forms/FormOutput.vue @@ -79,7 +79,8 @@ <script> import FormCard from "@/components/Form/FormCard"; import FormElement from "@/components/Form/FormElement"; -import FormOutputLabel from "@/components/Workflow/Editor/Forms/FormOutputLabel"; + +import FormOutputLabel from "./FormOutputLabel"; const actions = [ "RenameDatasetAction__newname", diff --git a/client/src/components/Workflow/Editor/Forms/FormSection.vue b/client/src/components/Workflow/Editor/Forms/FormSection.vue index fad55abd8254..532a5ff7fd2c 100644 --- a/client/src/components/Workflow/Editor/Forms/FormSection.vue +++ b/client/src/components/Workflow/Editor/Forms/FormSection.vue @@ -29,7 +29,8 @@ <script> import FormElement from "@/components/Form/FormElement"; -import FormOutput from "@/components/Workflow/Editor/Forms/FormOutput"; + +import FormOutput from "./FormOutput"; export default { components: { diff --git a/client/src/components/Workflow/Editor/Forms/FormTool.vue b/client/src/components/Workflow/Editor/Forms/FormTool.vue index 67b5ae455c60..2e9adce2c7c0 100644 --- a/client/src/components/Workflow/Editor/Forms/FormTool.vue +++ b/client/src/components/Workflow/Editor/Forms/FormTool.vue @@ -59,12 +59,11 @@ import { storeToRefs } from "pinia"; import Utils from "utils/utils"; import { ref, toRef, watch } from "vue"; +import { useStepProps } from "@/components/Workflow/Editor/composables/useStepProps"; +import { useUniqueLabelError } from "@/components/Workflow/Editor/composables/useUniqueLabelError"; import { useWorkflowStores } from "@/composables/workflowStores"; import { useRefreshFromStore } from "@/stores/refreshFromStore"; -import { useStepProps } from "../composables/useStepProps"; -import { useUniqueLabelError } from "../composables/useUniqueLabelError"; - import FormConditional from "./FormConditional.vue"; import FormSection from "./FormSection.vue"; import Heading from "@/components/Common/Heading.vue"; diff --git a/client/src/components/Workflow/Editor/Index.vue b/client/src/components/Workflow/Editor/Index.vue index 71983b2421d0..b2c91ae3fcc0 100644 --- a/client/src/components/Workflow/Editor/Index.vue +++ b/client/src/components/Workflow/Editor/Index.vue @@ -186,7 +186,7 @@ import { Toast } from "composables/toast"; import { storeToRefs } from "pinia"; import Vue, { computed, nextTick, onUnmounted, ref, unref, watch } from "vue"; -import { getUntypedWorkflowParameters } from "@/components/Workflow/Editor/modules/parameters"; +import { Services } from "@/components/Workflow/services"; import { ConfirmDialog } from "@/composables/confirmDialog"; import { useDatatypesMapper } from "@/composables/datatypesMapper"; import { useUid } from "@/composables/utils/uid"; @@ -197,16 +197,18 @@ import { useScopePointerStore } from "@/stores/scopePointerStore"; import { LastQueue } from "@/utils/lastQueue"; import { errorMessageAsString } from "@/utils/simple-error"; -import { Services } from "../services"; import { InsertStepAction, useStepActions } from "./Actions/stepActions"; import { CopyIntoWorkflowAction, SetValueActionHandler } from "./Actions/workflowActions"; import { defaultPosition } from "./composables/useDefaultStepPosition"; import { fromSimple } from "./modules/model"; +import { getUntypedWorkflowParameters } from "./modules/parameters"; import { getModule, getVersions, loadWorkflow, saveWorkflow } from "./modules/services"; import { getStateUpgradeMessages } from "./modules/utilities"; import reportDefault from "./reportDefault"; import WorkflowAttributes from "./Attributes.vue"; +import FormDefault from "./Forms/FormDefault.vue"; +import FormTool from "./Forms/FormTool.vue"; import WorkflowLint from "./Lint.vue"; import MessagesModal from "./MessagesModal.vue"; import WorkflowOptions from "./Options.vue"; @@ -217,8 +219,6 @@ import WorkflowGraph from "./WorkflowGraph.vue"; import MarkdownEditor from "@/components/Markdown/MarkdownEditor.vue"; import FlexPanel from "@/components/Panels/FlexPanel.vue"; import ToolPanel from "@/components/Panels/ToolPanel.vue"; -import FormDefault from "@/components/Workflow/Editor/Forms/FormDefault.vue"; -import FormTool from "@/components/Workflow/Editor/Forms/FormTool.vue"; library.add(faArrowLeft, faArrowRight); diff --git a/client/src/components/Workflow/Editor/Node.vue b/client/src/components/Workflow/Editor/Node.vue index 4af194ad89a6..3e08073c300a 100644 --- a/client/src/components/Workflow/Editor/Node.vue +++ b/client/src/components/Workflow/Editor/Node.vue @@ -155,7 +155,6 @@ import Vue, { computed, reactive, ref } from "vue"; import { getGalaxyInstance } from "@/app"; import { DatatypesMapperModel } from "@/components/Datatypes/model"; -import { useNodePosition } from "@/components/Workflow/Editor/composables/useNodePosition"; import WorkflowIcons from "@/components/Workflow/icons"; import type { GraphStep } from "@/composables/useInvocationGraph"; import { useWorkflowStores } from "@/composables/workflowStores"; @@ -163,14 +162,15 @@ import type { TerminalPosition, XYPosition } from "@/stores/workflowEditorStateS import type { Step } from "@/stores/workflowStepStore"; import { ToggleStepSelectedAction } from "./Actions/stepActions"; +import { useNodePosition } from "./composables/useNodePosition"; import type { OutputTerminals } from "./modules/terminals"; +import DraggableWrapper from "./DraggablePan.vue"; +import NodeInput from "./NodeInput.vue"; +import NodeInvocationText from "./NodeInvocationText.vue"; +import NodeOutput from "./NodeOutput.vue"; +import Recommendations from "./Recommendations.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; -import DraggableWrapper from "@/components/Workflow/Editor/DraggablePan.vue"; -import NodeInput from "@/components/Workflow/Editor/NodeInput.vue"; -import NodeInvocationText from "@/components/Workflow/Editor/NodeInvocationText.vue"; -import NodeOutput from "@/components/Workflow/Editor/NodeOutput.vue"; -import Recommendations from "@/components/Workflow/Editor/Recommendations.vue"; Vue.use(BootstrapVue); diff --git a/client/src/components/Workflow/Editor/NodeInput.vue b/client/src/components/Workflow/Editor/NodeInput.vue index 19b45f24fe1b..592c25d6f606 100644 --- a/client/src/components/Workflow/Editor/NodeInput.vue +++ b/client/src/components/Workflow/Editor/NodeInput.vue @@ -18,18 +18,18 @@ import { } from "vue"; import { DatatypesMapperModel } from "@/components/Datatypes/model"; -import { - ConnectionAcceptable, - type InputTerminals, - type OutputCollectionTerminal, - terminalFactory, -} from "@/components/Workflow/Editor/modules/terminals"; import { useWorkflowStores } from "@/composables/workflowStores"; import { getConnectionId } from "@/stores/workflowConnectionStore"; import type { InputTerminalSource } from "@/stores/workflowStepStore"; import { useRelativePosition } from "./composables/relativePosition"; import { useTerminal } from "./composables/useTerminal"; +import { + ConnectionAcceptable, + type InputTerminals, + type OutputCollectionTerminal, + terminalFactory, +} from "./modules/terminals"; library.add(faChevronCircleRight, faMinusSquare); diff --git a/client/src/components/Workflow/Editor/NodeOutput.vue b/client/src/components/Workflow/Editor/NodeOutput.vue index 7f0e5c68ec06..a22c72f94baf 100644 --- a/client/src/components/Workflow/Editor/NodeOutput.vue +++ b/client/src/components/Workflow/Editor/NodeOutput.vue @@ -40,9 +40,9 @@ import { useTerminal } from "./composables/useTerminal"; import { type CollectionTypeDescriptor, NULL_COLLECTION_TYPE_DESCRIPTION } from "./modules/collectionTypeDescription"; import type { OutputTerminals } from "./modules/terminals"; +import ConnectionMenu from "./ConnectionMenu.vue"; import DraggableWrapper from "./DraggablePan.vue"; import StatelessTags from "@/components/TagsMultiselect/StatelessTags.vue"; -import ConnectionMenu from "@/components/Workflow/Editor/ConnectionMenu.vue"; type ElementBounding = UnwrapRef<UseElementBoundingReturn>; diff --git a/client/src/components/Workflow/Editor/Tools/useSelectionOperations.ts b/client/src/components/Workflow/Editor/Tools/useSelectionOperations.ts index 5ba0b4e1e312..a9da296f472a 100644 --- a/client/src/components/Workflow/Editor/Tools/useSelectionOperations.ts +++ b/client/src/components/Workflow/Editor/Tools/useSelectionOperations.ts @@ -1,10 +1,9 @@ import { computed, inject, type Ref, unref } from "vue"; +import { DeleteSelectionAction, DuplicateSelectionAction } from "@/components/Workflow/Editor/Actions/workflowActions"; +import { useMultiSelect } from "@/components/Workflow/Editor/composables/multiSelect"; import { useWorkflowStores } from "@/composables/workflowStores"; -import { DeleteSelectionAction, DuplicateSelectionAction } from "../Actions/workflowActions"; -import { useMultiSelect } from "../composables/multiSelect"; - export function useSelectionOperations() { const { undoRedoStore } = useWorkflowStores(); const { anySelected, selectedCommentsCount, selectedStepsCount, deselectAll } = useMultiSelect(); diff --git a/client/src/components/Workflow/Editor/Tools/useToolLogic.ts b/client/src/components/Workflow/Editor/Tools/useToolLogic.ts index c9215b530d00..0f6e50ca4c3b 100644 --- a/client/src/components/Workflow/Editor/Tools/useToolLogic.ts +++ b/client/src/components/Workflow/Editor/Tools/useToolLogic.ts @@ -1,13 +1,8 @@ import simplify from "simplify-js"; import { ref, watch } from "vue"; -import { useWorkflowStores } from "@/composables/workflowStores"; -import { type BaseWorkflowComment } from "@/stores/workflowEditorCommentStore"; -import { assertDefined } from "@/utils/assertions"; -import { match } from "@/utils/utils"; - -import { AddCommentAction } from "../Actions/commentActions"; -import { AddToSelectionAction, RemoveFromSelectionAction } from "../Actions/workflowActions"; +import { AddCommentAction } from "@/components/Workflow/Editor/Actions/commentActions"; +import { AddToSelectionAction, RemoveFromSelectionAction } from "@/components/Workflow/Editor/Actions/workflowActions"; import { AxisAlignedBoundingBox, vecMax, @@ -16,7 +11,11 @@ import { vecSnap, vecSubtract, type Vector, -} from "../modules/geometry"; +} from "@/components/Workflow/Editor/modules/geometry"; +import { useWorkflowStores } from "@/composables/workflowStores"; +import { type BaseWorkflowComment } from "@/stores/workflowEditorCommentStore"; +import { assertDefined } from "@/utils/assertions"; +import { match } from "@/utils/utils"; export function useToolLogic() { const comment = ref<BaseWorkflowComment | null>(null); diff --git a/client/src/components/Workflow/Editor/WorkflowGraph.vue b/client/src/components/Workflow/Editor/WorkflowGraph.vue index 917e3cb55ad4..ec2d009dbe80 100644 --- a/client/src/components/Workflow/Editor/WorkflowGraph.vue +++ b/client/src/components/Workflow/Editor/WorkflowGraph.vue @@ -84,13 +84,13 @@ import { maxZoom, minZoom } from "./modules/zoomLevels"; import AdaptiveGrid from "./AdaptiveGrid.vue"; import WorkflowComment from "./Comments/WorkflowComment.vue"; +import WorkflowNode from "./Node.vue"; import BoxSelectPreview from "./Tools/BoxSelectPreview.vue"; import InputCatcher from "./Tools/InputCatcher.vue"; import ToolBar from "./Tools/ToolBar.vue"; -import WorkflowNode from "@/components/Workflow/Editor/Node.vue"; -import WorkflowEdges from "@/components/Workflow/Editor/WorkflowEdges.vue"; -import WorkflowMinimap from "@/components/Workflow/Editor/WorkflowMinimap.vue"; -import ZoomControl from "@/components/Workflow/Editor/ZoomControl.vue"; +import WorkflowEdges from "./WorkflowEdges.vue"; +import WorkflowMinimap from "./WorkflowMinimap.vue"; +import ZoomControl from "./ZoomControl.vue"; const emit = defineEmits(["transform", "graph-offset", "onRemove", "scrollTo"]); const props = defineProps({ diff --git a/client/src/components/Workflow/Editor/composables/multiSelect.ts b/client/src/components/Workflow/Editor/composables/multiSelect.ts index 81a64152fea8..cbc057d1b52c 100644 --- a/client/src/components/Workflow/Editor/composables/multiSelect.ts +++ b/client/src/components/Workflow/Editor/composables/multiSelect.ts @@ -1,11 +1,10 @@ import { computed, type Ref } from "vue"; +import { ClearSelectionAction } from "@/components/Workflow/Editor/Actions/workflowActions"; import { useWorkflowStores } from "@/composables/workflowStores"; import { type Step } from "@/stores/workflowStepStore"; import { ensureDefined } from "@/utils/assertions"; -import { ClearSelectionAction } from "../Actions/workflowActions"; - export function useMultiSelect(workflowId?: Ref<string> | string) { const { commentStore, stateStore, stepStore, undoRedoStore } = useWorkflowStores(workflowId); diff --git a/client/src/components/Workflow/Editor/composables/viewportBoundingBox.ts b/client/src/components/Workflow/Editor/composables/viewportBoundingBox.ts index 79aa9f265210..2cb346021cf3 100644 --- a/client/src/components/Workflow/Editor/composables/viewportBoundingBox.ts +++ b/client/src/components/Workflow/Editor/composables/viewportBoundingBox.ts @@ -1,10 +1,9 @@ import { type UseElementBoundingReturn } from "@vueuse/core"; import { type Ref, ref, unref, watch } from "vue"; +import { AxisAlignedBoundingBox } from "@/components/Workflow/Editor/modules/geometry"; import { useAnimationFrameThrottle } from "@/composables/throttle"; -import { AxisAlignedBoundingBox } from "../modules/geometry"; - /** * Constructs a bounding box following the editors pan and zoom in * animation frame intervals. diff --git a/client/src/components/Workflow/Editor/modules/linting.ts b/client/src/components/Workflow/Editor/modules/linting.ts index 21d02cafff88..38e6545b0c3a 100644 --- a/client/src/components/Workflow/Editor/modules/linting.ts +++ b/client/src/components/Workflow/Editor/modules/linting.ts @@ -1,9 +1,9 @@ import { type DatatypesMapperModel } from "@/components/Datatypes/model"; -import { type UntypedParameters } from "@/components/Workflow/Editor/modules/parameters"; import { type useWorkflowStores } from "@/composables/workflowStores"; import { type Step, type Steps } from "@/stores/workflowStepStore"; import { assertDefined } from "@/utils/assertions"; +import { type UntypedParameters } from "./parameters"; import { terminalFactory } from "./terminals"; interface LintState { diff --git a/client/src/components/Workflow/Editor/modules/terminals.test.ts b/client/src/components/Workflow/Editor/modules/terminals.test.ts index 7b240e66c4c1..c1d01acae418 100644 --- a/client/src/components/Workflow/Editor/modules/terminals.test.ts +++ b/client/src/components/Workflow/Editor/modules/terminals.test.ts @@ -1,6 +1,7 @@ import { createPinia, setActivePinia } from "pinia"; import { testDatatypesMapper } from "@/components/Datatypes/test_fixtures"; +import { advancedSteps, simpleSteps } from "@/components/Workflow/Editor/test_fixtures"; import { useUndoRedoStore } from "@/stores/undoRedoStore"; import { useConnectionStore } from "@/stores/workflowConnectionStore"; import { useWorkflowCommentStore } from "@/stores/workflowEditorCommentStore"; @@ -14,7 +15,6 @@ import { useWorkflowStepStore, } from "@/stores/workflowStepStore"; -import { advancedSteps, simpleSteps } from "../test_fixtures"; import { ANY_COLLECTION_TYPE_DESCRIPTION, CollectionTypeDescription, diff --git a/client/src/components/Workflow/HistoryInvocations.vue b/client/src/components/Workflow/HistoryInvocations.vue index d6099bdeeeb6..c23ac6943da3 100644 --- a/client/src/components/Workflow/HistoryInvocations.vue +++ b/client/src/components/Workflow/HistoryInvocations.vue @@ -3,7 +3,7 @@ import { computed } from "vue"; import { useHistoryStore } from "@/stores/historyStore"; -import GridInvocation from "../Grid/GridInvocation.vue"; +import GridInvocation from "@/components/Grid/GridInvocation.vue"; interface HistoryInvocationProps { historyId: string; diff --git a/client/src/components/Workflow/Import/TrsImport.vue b/client/src/components/Workflow/Import/TrsImport.vue index 90f7948dbf8f..1a71e9842fc0 100644 --- a/client/src/components/Workflow/Import/TrsImport.vue +++ b/client/src/components/Workflow/Import/TrsImport.vue @@ -11,10 +11,10 @@ import { useUserStore } from "@/stores/userStore"; import type { TrsSelection, TrsTool as TrsToolInterface } from "./types"; +import TrsServerSelection from "./TrsServerSelection.vue"; +import TrsTool from "./TrsTool.vue"; +import TrsUrlImport from "./TrsUrlImport.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; -import TrsServerSelection from "@/components/Workflow/Import/TrsServerSelection.vue"; -import TrsTool from "@/components/Workflow/Import/TrsTool.vue"; -import TrsUrlImport from "@/components/Workflow/Import/TrsUrlImport.vue"; interface Props { isRun?: boolean; diff --git a/client/src/components/Workflow/Import/TrsSearch.vue b/client/src/components/Workflow/Import/TrsSearch.vue index 49fc6b0074e8..9cfcbfac620c 100644 --- a/client/src/components/Workflow/Import/TrsSearch.vue +++ b/client/src/components/Workflow/Import/TrsSearch.vue @@ -13,9 +13,9 @@ import { withPrefix } from "@/utils/redirect"; import type { TrsSelection } from "./types"; +import TrsServerSelection from "./TrsServerSelection.vue"; +import TrsTool from "./TrsTool.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; -import TrsServerSelection from "@/components/Workflow/Import/TrsServerSelection.vue"; -import TrsTool from "@/components/Workflow/Import/TrsTool.vue"; library.add(faQuestion, faTimes); diff --git a/client/src/components/Workflow/Invocation/Export/InvocationExportPluginCard.vue b/client/src/components/Workflow/Invocation/Export/InvocationExportPluginCard.vue index 2f2009350444..1cf1ec398e12 100644 --- a/client/src/components/Workflow/Invocation/Export/InvocationExportPluginCard.vue +++ b/client/src/components/Workflow/Invocation/Export/InvocationExportPluginCard.vue @@ -14,9 +14,9 @@ import { Toast } from "@/composables/toast"; import { type InvocationExportPlugin } from "./model"; import ActionButton from "./ActionButton.vue"; +import ExportButton from "./ExportButton.vue"; +import ExportToRemoteModal from "./ExportToRemoteModal.vue"; import PersistentTaskProgressMonitorAlert from "@/components/Common/PersistentTaskProgressMonitorAlert.vue"; -import ExportButton from "@/components/Workflow/Invocation/Export/ExportButton.vue"; -import ExportToRemoteModal from "@/components/Workflow/Invocation/Export/ExportToRemoteModal.vue"; library.add(faCloudUploadAlt, faDownload); diff --git a/client/src/components/Workflow/Invocation/Export/Plugins/BioComputeObject/BioComputeObjectExportPlugin.ts b/client/src/components/Workflow/Invocation/Export/Plugins/BioComputeObject/BioComputeObjectExportPlugin.ts index d95291d09920..805b3e601593 100644 --- a/client/src/components/Workflow/Invocation/Export/Plugins/BioComputeObject/BioComputeObjectExportPlugin.ts +++ b/client/src/components/Workflow/Invocation/Export/Plugins/BioComputeObject/BioComputeObjectExportPlugin.ts @@ -1,7 +1,7 @@ import { library } from "@fortawesome/fontawesome-svg-core"; import { faDatabase } from "@fortawesome/free-solid-svg-icons"; -import { type InvocationExportPlugin } from "../../model"; +import { type InvocationExportPlugin } from "@/components/Workflow/Invocation/Export/model"; import SendForm from "./SendForm.vue"; diff --git a/client/src/components/Workflow/Invocation/Export/Plugins/DefaultFileExportPlugin.ts b/client/src/components/Workflow/Invocation/Export/Plugins/DefaultFileExportPlugin.ts index a0fc9fd58598..667999b2c0b6 100644 --- a/client/src/components/Workflow/Invocation/Export/Plugins/DefaultFileExportPlugin.ts +++ b/client/src/components/Workflow/Invocation/Export/Plugins/DefaultFileExportPlugin.ts @@ -1,4 +1,4 @@ -import { type InvocationExportPlugin } from "../model"; +import { type InvocationExportPlugin } from "@/components/Workflow/Invocation/Export/model"; export const DEFAULT_FILE_EXPORT_PLUGIN: InvocationExportPlugin = { id: "default-file", diff --git a/client/src/components/Workflow/Invocation/Export/Plugins/ROCrateExportPlugin.ts b/client/src/components/Workflow/Invocation/Export/Plugins/ROCrateExportPlugin.ts index d71e52624048..8c9896844ce5 100644 --- a/client/src/components/Workflow/Invocation/Export/Plugins/ROCrateExportPlugin.ts +++ b/client/src/components/Workflow/Invocation/Export/Plugins/ROCrateExportPlugin.ts @@ -1,4 +1,4 @@ -import { type InvocationExportPlugin } from "../model"; +import { type InvocationExportPlugin } from "@/components/Workflow/Invocation/Export/model"; export const RO_CRATE_EXPORT_PLUGIN: InvocationExportPlugin = { id: "ro-crate", diff --git a/client/src/components/Workflow/List/WorkflowCard.vue b/client/src/components/Workflow/List/WorkflowCard.vue index 076ec2c271e6..0ef015055e32 100644 --- a/client/src/components/Workflow/List/WorkflowCard.vue +++ b/client/src/components/Workflow/List/WorkflowCard.vue @@ -10,13 +10,13 @@ import { copyWorkflow, updateWorkflow } from "@/components/Workflow/workflows.se import { Toast } from "@/composables/toast"; import { useUserStore } from "@/stores/userStore"; +import WorkflowActions from "./WorkflowActions.vue"; +import WorkflowActionsExtend from "./WorkflowActionsExtend.vue"; +import WorkflowIndicators from "./WorkflowIndicators.vue"; +import WorkflowRename from "./WorkflowRename.vue"; import AsyncButton from "@/components/Common/AsyncButton.vue"; import TextSummary from "@/components/Common/TextSummary.vue"; import StatelessTags from "@/components/TagsMultiselect/StatelessTags.vue"; -import WorkflowActions from "@/components/Workflow/List/WorkflowActions.vue"; -import WorkflowActionsExtend from "@/components/Workflow/List/WorkflowActionsExtend.vue"; -import WorkflowIndicators from "@/components/Workflow/List/WorkflowIndicators.vue"; -import WorkflowRename from "@/components/Workflow/List/WorkflowRename.vue"; import WorkflowPublished from "@/components/Workflow/Published/WorkflowPublished.vue"; import WorkflowInvocationsCount from "@/components/Workflow/WorkflowInvocationsCount.vue"; import WorkflowRunButton from "@/components/Workflow/WorkflowRunButton.vue"; diff --git a/client/src/components/Workflow/List/WorkflowList.test.ts b/client/src/components/Workflow/List/WorkflowList.test.ts index b4b71d02f185..f0069e1484ee 100644 --- a/client/src/components/Workflow/List/WorkflowList.test.ts +++ b/client/src/components/Workflow/List/WorkflowList.test.ts @@ -5,10 +5,9 @@ import flushPromises from "flush-promises"; import { setActivePinia } from "pinia"; import { mockFetcher } from "@/api/schema/__mocks__"; +import { generateRandomWorkflowList } from "@/components/Workflow/testUtils"; import { useUserStore } from "@/stores/userStore"; -import { generateRandomWorkflowList } from "../testUtils"; - import WorkflowList from "./WorkflowList.vue"; jest.mock("@/api/schema"); diff --git a/client/src/components/Workflow/List/WorkflowList.vue b/client/src/components/Workflow/List/WorkflowList.vue index b730a12f002c..50b5162ee0c8 100644 --- a/client/src/components/Workflow/List/WorkflowList.vue +++ b/client/src/components/Workflow/List/WorkflowList.vue @@ -7,18 +7,19 @@ import { filter } from "underscore"; import { computed, onMounted, ref, watch } from "vue"; import { useRouter } from "vue-router/composables"; -import { helpHtml, WorkflowFilters } from "@/components/Workflow/List/WorkflowFilters"; import { loadWorkflows } from "@/components/Workflow/workflows.services"; import { Toast } from "@/composables/toast"; import { useUserStore } from "@/stores/userStore"; +import { helpHtml, WorkflowFilters } from "./WorkflowFilters"; + +import WorkflowCard from "./WorkflowCard.vue"; +import WorkflowListActions from "./WorkflowListActions.vue"; import FilterMenu from "@/components/Common/FilterMenu.vue"; import Heading from "@/components/Common/Heading.vue"; import ListHeader from "@/components/Common/ListHeader.vue"; import LoginRequired from "@/components/Common/LoginRequired.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; -import WorkflowCard from "@/components/Workflow/List/WorkflowCard.vue"; -import WorkflowListActions from "@/components/Workflow/List/WorkflowListActions.vue"; library.add(faStar, faTrash); diff --git a/client/src/components/Workflow/Published/WorkflowPublished.vue b/client/src/components/Workflow/Published/WorkflowPublished.vue index d2c14b7d18b3..8c3064aabf2b 100644 --- a/client/src/components/Workflow/Published/WorkflowPublished.vue +++ b/client/src/components/Workflow/Published/WorkflowPublished.vue @@ -15,10 +15,10 @@ import type { Workflow } from "@/stores/workflowStore"; import { assertDefined } from "@/utils/assertions"; import { withPrefix } from "@/utils/redirect"; +import WorkflowInformation from "./WorkflowInformation.vue"; import ActivityBar from "@/components/ActivityBar/ActivityBar.vue"; import Heading from "@/components/Common/Heading.vue"; import WorkflowGraph from "@/components/Workflow/Editor/WorkflowGraph.vue"; -import WorkflowInformation from "@/components/Workflow/Published/WorkflowInformation.vue"; library.add(faBuilding, faDownload, faEdit, faPlay, faSpinner, faUser); diff --git a/client/src/components/Workflow/Run/WorkflowRun.vue b/client/src/components/Workflow/Run/WorkflowRun.vue index fbf47ec93a9d..89bf5e166097 100644 --- a/client/src/components/Workflow/Run/WorkflowRun.vue +++ b/client/src/components/Workflow/Run/WorkflowRun.vue @@ -15,10 +15,10 @@ import { errorMessageAsString } from "@/utils/simple-error"; import { WorkflowRunModel } from "./model"; import { getRunData } from "./services"; +import WorkflowRunForm from "./WorkflowRunForm.vue"; +import WorkflowRunFormSimple from "./WorkflowRunFormSimple.vue"; +import WorkflowRunSuccess from "./WorkflowRunSuccess.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; -import WorkflowRunForm from "@/components/Workflow/Run/WorkflowRunForm.vue"; -import WorkflowRunFormSimple from "@/components/Workflow/Run/WorkflowRunFormSimple.vue"; -import WorkflowRunSuccess from "@/components/Workflow/Run/WorkflowRunSuccess.vue"; const historyStore = useHistoryStore(); const historyItemsStore = useHistoryItemsStore(); diff --git a/client/src/components/Workflow/StoredWorkflowInvocations.vue b/client/src/components/Workflow/StoredWorkflowInvocations.vue index 6d8bab09616c..d18291bf23ea 100644 --- a/client/src/components/Workflow/StoredWorkflowInvocations.vue +++ b/client/src/components/Workflow/StoredWorkflowInvocations.vue @@ -4,8 +4,8 @@ import { onMounted, ref } from "vue"; import { type StoredWorkflowDetailed, workflowFetcher } from "@/api/workflows"; -import GridInvocation from "../Grid/GridInvocation.vue"; -import LoadingSpan from "../LoadingSpan.vue"; +import GridInvocation from "@/components/Grid/GridInvocation.vue"; +import LoadingSpan from "@/components/LoadingSpan.vue"; interface Props { storedWorkflowId: string; diff --git a/client/src/components/Workflow/WorkflowCreate.vue b/client/src/components/Workflow/WorkflowCreate.vue index f207e9617a49..e3c685562d81 100644 --- a/client/src/components/Workflow/WorkflowCreate.vue +++ b/client/src/components/Workflow/WorkflowCreate.vue @@ -6,9 +6,10 @@ import { BFormInput } from "bootstrap-vue"; import { ref } from "vue"; import { useRouter } from "vue-router/composables"; -import { createWorkflow } from "@/components/Workflow/workflows.services"; import { Toast } from "@/composables/toast"; +import { createWorkflow } from "./workflows.services"; + import AsyncButton from "@/components/Common/AsyncButton.vue"; import Heading from "@/components/Common/Heading.vue"; diff --git a/client/src/components/Workflow/WorkflowImport.vue b/client/src/components/Workflow/WorkflowImport.vue index b291ef8325b2..5fabf3196fbe 100644 --- a/client/src/components/Workflow/WorkflowImport.vue +++ b/client/src/components/Workflow/WorkflowImport.vue @@ -1,9 +1,9 @@ <script setup lang="ts"> import { BTab, BTabs } from "bootstrap-vue"; -import FromFileOrUrl from "@/components/Workflow/Import/FromFileOrUrl.vue"; -import TrsImport from "@/components/Workflow/Import/TrsImport.vue"; -import TrsSearch from "@/components/Workflow/Import/TrsSearch.vue"; +import FromFileOrUrl from "./Import/FromFileOrUrl.vue"; +import TrsImport from "./Import/TrsImport.vue"; +import TrsSearch from "./Import/TrsSearch.vue"; </script> <template> diff --git a/client/src/components/WorkflowInvocationState/InvocationMessage.vue b/client/src/components/WorkflowInvocationState/InvocationMessage.vue index 7c1561576f39..e7be15a3d517 100644 --- a/client/src/components/WorkflowInvocationState/InvocationMessage.vue +++ b/client/src/components/WorkflowInvocationState/InvocationMessage.vue @@ -5,9 +5,9 @@ import { useWorkflowInstance } from "@/composables/useWorkflowInstance"; import type { InvocationMessageResponseModel } from "./invocationMessageModel"; +import WorkflowInvocationStep from "./WorkflowInvocationStep.vue"; import GenericHistoryItem from "@/components/History/Content/GenericItem.vue"; import JobInformation from "@/components/JobInformation/JobInformation.vue"; -import WorkflowInvocationStep from "@/components/WorkflowInvocationState/WorkflowInvocationStep.vue"; type ReasonToLevel = { history_deleted: "cancel"; diff --git a/client/src/components/WorkflowInvocationState/WorkflowInvocationOverview.test.js b/client/src/components/WorkflowInvocationState/WorkflowInvocationOverview.test.js index f4e069fb3cc7..ec25c28c18f9 100644 --- a/client/src/components/WorkflowInvocationState/WorkflowInvocationOverview.test.js +++ b/client/src/components/WorkflowInvocationState/WorkflowInvocationOverview.test.js @@ -2,7 +2,8 @@ import { createTestingPinia } from "@pinia/testing"; import { shallowMount } from "@vue/test-utils"; import { getLocalVue } from "tests/jest/helpers"; -import invocationData from "../Workflow/test/json/invocation.json"; +import invocationData from "@/components/Workflow/test/json/invocation.json"; + import WorkflowInvocationOverview from "./WorkflowInvocationOverview"; const localVue = getLocalVue(); diff --git a/client/src/components/WorkflowInvocationState/WorkflowInvocationOverview.vue b/client/src/components/WorkflowInvocationState/WorkflowInvocationOverview.vue index e5f192867512..b786b53d4761 100644 --- a/client/src/components/WorkflowInvocationState/WorkflowInvocationOverview.vue +++ b/client/src/components/WorkflowInvocationState/WorkflowInvocationOverview.vue @@ -15,12 +15,12 @@ import { runningCount as jobStatesSummaryRunningCount, } from "./util"; -import ExternalLink from "../ExternalLink.vue"; -import HelpText from "../Help/HelpText.vue"; -import InvocationGraph from "../Workflow/Invocation/Graph/InvocationGraph.vue"; +import InvocationMessage from "./InvocationMessage.vue"; +import ExternalLink from "@/components/ExternalLink.vue"; +import HelpText from "@/components/Help/HelpText.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; import ProgressBar from "@/components/ProgressBar.vue"; -import InvocationMessage from "@/components/WorkflowInvocationState/InvocationMessage.vue"; +import InvocationGraph from "@/components/Workflow/Invocation/Graph/InvocationGraph.vue"; function getUrl(path: string): string { return getRootFromIndexLink() + path; diff --git a/client/src/components/WorkflowInvocationState/WorkflowInvocationState.test.ts b/client/src/components/WorkflowInvocationState/WorkflowInvocationState.test.ts index 3b1a1b4cb6ea..c0b654c30a8c 100644 --- a/client/src/components/WorkflowInvocationState/WorkflowInvocationState.test.ts +++ b/client/src/components/WorkflowInvocationState/WorkflowInvocationState.test.ts @@ -4,7 +4,7 @@ import flushPromises from "flush-promises"; import { PiniaVuePlugin, setActivePinia } from "pinia"; import { getLocalVue } from "tests/jest/helpers"; -import invocationData from "../Workflow/test/json/invocation.json"; +import invocationData from "@/components/Workflow/test/json/invocation.json"; import WorkflowInvocationState from "./WorkflowInvocationState.vue"; diff --git a/client/src/components/WorkflowInvocationState/WorkflowInvocationState.vue b/client/src/components/WorkflowInvocationState/WorkflowInvocationState.vue index 603c51236c34..31fa9d30fae5 100644 --- a/client/src/components/WorkflowInvocationState/WorkflowInvocationState.vue +++ b/client/src/components/WorkflowInvocationState/WorkflowInvocationState.vue @@ -15,13 +15,13 @@ import localize from "@/utils/localization"; import { cancelWorkflowScheduling } from "./services"; import { isTerminal, jobCount, runningCount } from "./util"; -import Heading from "../Common/Heading.vue"; -import SwitchToHistoryLink from "../History/SwitchToHistoryLink.vue"; -import UtcDate from "../UtcDate.vue"; import WorkflowInvocationExportOptions from "./WorkflowInvocationExportOptions.vue"; import WorkflowInvocationInputOutputTabs from "./WorkflowInvocationInputOutputTabs.vue"; import WorkflowInvocationOverview from "./WorkflowInvocationOverview.vue"; +import Heading from "@/components/Common/Heading.vue"; +import SwitchToHistoryLink from "@/components/History/SwitchToHistoryLink.vue"; import LoadingSpan from "@/components/LoadingSpan.vue"; +import UtcDate from "@/components/UtcDate.vue"; import InvocationReport from "@/components/Workflow/InvocationReport.vue"; import WorkflowInvocationsCount from "@/components/Workflow/WorkflowInvocationsCount.vue"; import WorkflowRunButton from "@/components/Workflow/WorkflowRunButton.vue"; diff --git a/client/src/components/admin/DataTables.vue b/client/src/components/admin/DataTables.vue index 060501ff2539..feefae358c6b 100644 --- a/client/src/components/admin/DataTables.vue +++ b/client/src/components/admin/DataTables.vue @@ -16,9 +16,9 @@ import axios from "axios"; import { getAppRoot } from "onload/loadConfig"; -import Message from "../Message.vue"; import DataManagerGrid from "./DataManagerGrid.vue"; import DataTablesGrid from "./DataTablesGrid.vue"; +import Message from "@/components/Message.vue"; export default { components: { diff --git a/client/src/components/admin/DataTypes.vue b/client/src/components/admin/DataTypes.vue index bda73d9a381a..bfd8398ca625 100644 --- a/client/src/components/admin/DataTypes.vue +++ b/client/src/components/admin/DataTypes.vue @@ -21,8 +21,8 @@ import axios from "axios"; import { getAppRoot } from "onload/loadConfig"; -import Message from "../Message.vue"; import BaseGrid from "./BaseGrid.vue"; +import Message from "@/components/Message.vue"; export default { components: { diff --git a/client/src/components/admin/Dependencies/ContainerIndex.vue b/client/src/components/admin/Dependencies/ContainerIndex.vue index 181b53d58b7d..75d34c0a5c71 100644 --- a/client/src/components/admin/Dependencies/ContainerIndex.vue +++ b/client/src/components/admin/Dependencies/ContainerIndex.vue @@ -95,7 +95,8 @@ import BootstrapVue from "bootstrap-vue"; import _ from "underscore"; import Vue from "vue"; -import { getContainerResolutionToolbox, resolveContainersWithInstall } from "../AdminServices"; +import { getContainerResolutionToolbox, resolveContainersWithInstall } from "@/components/admin/AdminServices"; + import ContainerResolutionDetails from "./ContainerResolutionDetails"; import { DESCRIPTION } from "./ContainerResolver"; import DependencyIndexMixin from "./DependencyIndexMixin"; diff --git a/client/src/components/admin/Dependencies/ResolutionIndex.vue b/client/src/components/admin/Dependencies/ResolutionIndex.vue index c930c67cc2b1..18d6851b49e8 100644 --- a/client/src/components/admin/Dependencies/ResolutionIndex.vue +++ b/client/src/components/admin/Dependencies/ResolutionIndex.vue @@ -86,7 +86,8 @@ import BootstrapVue from "bootstrap-vue"; import _ from "underscore"; import Vue from "vue"; -import { getToolboxDependencies, installDependencies, uninstallDependencies } from "../AdminServices"; +import { getToolboxDependencies, installDependencies, uninstallDependencies } from "@/components/admin/AdminServices"; + import DependencyIndexMixin from "./DependencyIndexMixin"; import ResolutionDetails from "./ResolutionDetails"; diff --git a/client/src/components/admin/Dependencies/UnusedIndex.vue b/client/src/components/admin/Dependencies/UnusedIndex.vue index 3e6fc808aad2..ab2a4137ecf6 100644 --- a/client/src/components/admin/Dependencies/UnusedIndex.vue +++ b/client/src/components/admin/Dependencies/UnusedIndex.vue @@ -18,7 +18,8 @@ </DependencyIndexWrapper> </template> <script> -import { deletedUnusedPaths, getDependencyUnusedPaths } from "../AdminServices"; +import { deletedUnusedPaths, getDependencyUnusedPaths } from "@/components/admin/AdminServices"; + import DependencyIndexWrapper from "./DependencyIndexWrapper"; export default { diff --git a/client/src/components/admin/Notifications/NotificationsManagement.vue b/client/src/components/admin/Notifications/NotificationsManagement.vue index ef06eba45f4d..879f2d4fe92c 100644 --- a/client/src/components/admin/Notifications/NotificationsManagement.vue +++ b/client/src/components/admin/Notifications/NotificationsManagement.vue @@ -5,7 +5,7 @@ import { useRouter } from "vue-router/composables"; import { useConfig } from "@/composables/config"; -import BroadcastsList from "@/components/admin/Notifications/BroadcastsList.vue"; +import BroadcastsList from "./BroadcastsList.vue"; import Heading from "@/components/Common/Heading.vue"; const router = useRouter(); diff --git a/client/src/components/admin/SanitizeAllow.vue b/client/src/components/admin/SanitizeAllow.vue index 94273472d656..1607d5933eda 100755 --- a/client/src/components/admin/SanitizeAllow.vue +++ b/client/src/components/admin/SanitizeAllow.vue @@ -108,8 +108,8 @@ import axios from "axios"; import { getAppRoot } from "onload/loadConfig"; -import Message from "../Message.vue"; import BaseGrid from "./BaseGrid.vue"; +import Message from "@/components/Message.vue"; export default { components: { diff --git a/client/src/components/providers/DatasetProvider.js b/client/src/components/providers/DatasetProvider.js index a22a4632617d..b050eb73c479 100644 --- a/client/src/components/providers/DatasetProvider.js +++ b/client/src/components/providers/DatasetProvider.js @@ -1,6 +1,6 @@ import { fetchDatasetDetails } from "@/api/datasets"; -import { SingleQueryProvider } from "@/components/providers/SingleQueryProvider"; +import { SingleQueryProvider } from "./SingleQueryProvider"; import { stateIsTerminal } from "./utils"; export default SingleQueryProvider(fetchDatasetDetails, stateIsTerminal); diff --git a/client/src/components/providers/storeProviders.js b/client/src/components/providers/storeProviders.js index de7b602d610d..edf08e526756 100644 --- a/client/src/components/providers/storeProviders.js +++ b/client/src/components/providers/storeProviders.js @@ -4,7 +4,7 @@ import { mapActions, mapState } from "pinia"; import { useDbKeyStore } from "stores/dbKeyStore"; import { prependPath } from "utils/redirect"; -import { useDatatypeStore } from "../../stores/datatypeStore"; +import { useDatatypeStore } from "@/stores/datatypeStore"; export const SimpleProviderMixin = { props: { diff --git a/client/src/composables/datasetPermissions.ts b/client/src/composables/datasetPermissions.ts index 738c5ac3452d..2defc917e2f0 100644 --- a/client/src/composables/datasetPermissions.ts +++ b/client/src/composables/datasetPermissions.ts @@ -1,9 +1,10 @@ import { type AxiosResponse } from "axios"; import { computed, type Ref, ref } from "vue"; -import { useToast } from "@/composables/toast"; import { errorMessageAsString } from "@/utils/simple-error"; +import { useToast } from "./toast"; + interface InputOption { roleName: string; roleValue: number; diff --git a/client/src/composables/filter/filter.worker.js b/client/src/composables/filter/filter.worker.js index 470bf897de5b..0e22210b0a2c 100644 --- a/client/src/composables/filter/filter.worker.js +++ b/client/src/composables/filter/filter.worker.js @@ -1,4 +1,4 @@ -import { runFilter } from "@/composables/filter/filterFunction"; +import { runFilter } from "./filterFunction"; let array = []; let filter = ""; diff --git a/client/src/composables/persistentProgressMonitor.test.ts b/client/src/composables/persistentProgressMonitor.test.ts index 2a5f9c547dd0..592a8d045402 100644 --- a/client/src/composables/persistentProgressMonitor.test.ts +++ b/client/src/composables/persistentProgressMonitor.test.ts @@ -1,11 +1,11 @@ import { ref } from "vue"; -import { type TaskMonitor } from "@/composables/genericTaskMonitor"; +import { type TaskMonitor } from "./genericTaskMonitor"; import { type MonitoringData, type MonitoringRequest, usePersistentProgressTaskMonitor, -} from "@/composables/persistentProgressMonitor"; +} from "./persistentProgressMonitor"; // Mocks for dependencies jest.mock("@vueuse/core", () => ({ diff --git a/client/src/composables/shortTermStorageMonitor.test.ts b/client/src/composables/shortTermStorageMonitor.test.ts index d2f3dfe66340..2165883c0b90 100644 --- a/client/src/composables/shortTermStorageMonitor.test.ts +++ b/client/src/composables/shortTermStorageMonitor.test.ts @@ -1,7 +1,8 @@ import flushPromises from "flush-promises"; import { mockFetcher } from "@/api/schema/__mocks__"; -import { useShortTermStorageMonitor } from "@/composables/shortTermStorageMonitor"; + +import { useShortTermStorageMonitor } from "./shortTermStorageMonitor"; jest.mock("@/api/schema"); diff --git a/client/src/composables/taskMonitor.test.ts b/client/src/composables/taskMonitor.test.ts index 86fc4eab868c..83bb3cb6e005 100644 --- a/client/src/composables/taskMonitor.test.ts +++ b/client/src/composables/taskMonitor.test.ts @@ -1,7 +1,8 @@ import flushPromises from "flush-promises"; import { mockFetcher } from "@/api/schema/__mocks__"; -import { useTaskMonitor } from "@/composables/taskMonitor"; + +import { useTaskMonitor } from "./taskMonitor"; jest.mock("@/api/schema"); diff --git a/client/src/onload/globalInits/index.js b/client/src/onload/globalInits/index.js index 763aed02ffbf..71bc57f9bec1 100644 --- a/client/src/onload/globalInits/index.js +++ b/client/src/onload/globalInits/index.js @@ -10,7 +10,8 @@ import { make_popup_menus } from "ui/popupmenu"; import { monitorInit } from "utils/installMonitor"; -import { prependInitialization } from "../initQueue"; +import { prependInitialization } from "@/onload/initQueue"; + // specific initialization functions import { addIframeClass, adjustIframeLinks } from "./iframesAreTerrible"; import { init_refresh_on_change } from "./init_refresh_on_change"; diff --git a/client/src/stores/activitySetup.ts b/client/src/stores/activitySetup.ts index 17551fc89e2b..85a944c2faa7 100644 --- a/client/src/stores/activitySetup.ts +++ b/client/src/stores/activitySetup.ts @@ -1,8 +1,8 @@ /** * List of built-in activities */ -import { type Activity } from "@/stores/activityStore"; -import { type EventData } from "@/stores/eventStore"; +import { type Activity } from "./activityStore"; +import { type EventData } from "./eventStore"; export const Activities = [ { diff --git a/client/src/stores/activityStore.test.ts b/client/src/stores/activityStore.test.ts index e5fee99c70ea..6138e43d3125 100644 --- a/client/src/stores/activityStore.test.ts +++ b/client/src/stores/activityStore.test.ts @@ -1,6 +1,6 @@ import { createPinia, setActivePinia } from "pinia"; -import { useActivityStore } from "@/stores/activityStore"; +import { useActivityStore } from "./activityStore"; // mock Galaxy object jest.mock("./activitySetup", () => ({ diff --git a/client/src/stores/collectionElementsStore.test.ts b/client/src/stores/collectionElementsStore.test.ts index a32f173e8733..fd6a00628dd3 100644 --- a/client/src/stores/collectionElementsStore.test.ts +++ b/client/src/stores/collectionElementsStore.test.ts @@ -3,7 +3,8 @@ import { createPinia, setActivePinia } from "pinia"; import { type DCESummary, type HDCASummary } from "@/api"; import { mockFetcher } from "@/api/schema/__mocks__"; -import { type DCEEntry, useCollectionElementsStore } from "@/stores/collectionElementsStore"; + +import { type DCEEntry, useCollectionElementsStore } from "./collectionElementsStore"; jest.mock("@/api/schema"); diff --git a/client/src/stores/entryPointStore.test.js b/client/src/stores/entryPointStore.test.js index 9c3aa5d2c08a..d5c2de6cb30c 100644 --- a/client/src/stores/entryPointStore.test.js +++ b/client/src/stores/entryPointStore.test.js @@ -3,7 +3,8 @@ import MockAdapter from "axios-mock-adapter"; import flushPromises from "flush-promises"; import { createPinia, setActivePinia } from "pinia"; -import testInteractiveToolsResponse from "../components/InteractiveTools/testData/testInteractiveToolsResponse"; +import testInteractiveToolsResponse from "@/components/InteractiveTools/testData/testInteractiveToolsResponse"; + import { useEntryPointStore } from "./entryPointStore"; describe("stores/EntryPointStore", () => { diff --git a/client/src/stores/historyStore.ts b/client/src/stores/historyStore.ts index c8a1e0d3cb9a..a44645f409ee 100644 --- a/client/src/stores/historyStore.ts +++ b/client/src/stores/historyStore.ts @@ -12,6 +12,9 @@ import { historyFetcher } from "@/api/histories"; import { archiveHistory, unarchiveHistory } from "@/api/histories.archived"; import { HistoryFilters } from "@/components/History/HistoryFilters"; import { useUserLocalStorage } from "@/composables/userLocalStorage"; +import { rethrowSimple } from "@/utils/simple-error"; +import { sortByObjectProp } from "@/utils/sorting"; + import { cloneHistory, createAndSelectNewHistory, @@ -23,9 +26,7 @@ import { secureHistoryOnServer, setCurrentHistoryOnServer, updateHistoryFields, -} from "@/stores/services/history.services"; -import { rethrowSimple } from "@/utils/simple-error"; -import { sortByObjectProp } from "@/utils/sorting"; +} from "./services/history.services"; const PAGINATION_LIMIT = 10; const isLoadingHistory = new Set(); diff --git a/client/src/stores/objectStoreInstancesStore.test.ts b/client/src/stores/objectStoreInstancesStore.test.ts index e087f7a1ee05..633b4b7e2ff4 100644 --- a/client/src/stores/objectStoreInstancesStore.test.ts +++ b/client/src/stores/objectStoreInstancesStore.test.ts @@ -1,6 +1,6 @@ import { type ObjectStoreTemplateType } from "@/api/objectStores"; -import { useObjectStoreInstancesStore } from "@/stores/objectStoreInstancesStore"; +import { useObjectStoreInstancesStore } from "./objectStoreInstancesStore"; import { setupTestPinia } from "./testUtils"; const type = "aws_s3" as ObjectStoreTemplateType; diff --git a/client/src/stores/objectStoreTemplatesStore.test.ts b/client/src/stores/objectStoreTemplatesStore.test.ts index 214e83fd6b7b..c105ab7afe8f 100644 --- a/client/src/stores/objectStoreTemplatesStore.test.ts +++ b/client/src/stores/objectStoreTemplatesStore.test.ts @@ -1,6 +1,6 @@ import { type ObjectStoreTemplateType } from "@/api/objectStores"; -import { useObjectStoreTemplatesStore } from "@/stores/objectStoreTemplatesStore"; +import { useObjectStoreTemplatesStore } from "./objectStoreTemplatesStore"; import { setupTestPinia } from "./testUtils"; const s3 = "aws_s3" as ObjectStoreTemplateType; diff --git a/client/src/stores/userStore.ts b/client/src/stores/userStore.ts index 9e53f5f111ac..137fa35a6162 100644 --- a/client/src/stores/userStore.ts +++ b/client/src/stores/userStore.ts @@ -3,13 +3,9 @@ import { computed, ref } from "vue"; import { type AnonymousUser, type User } from "@/api"; import { useUserLocalStorage } from "@/composables/userLocalStorage"; -import { useHistoryStore } from "@/stores/historyStore"; -import { - addFavoriteToolQuery, - getCurrentUser, - removeFavoriteToolQuery, - setCurrentThemeQuery, -} from "@/stores/users/queries"; + +import { useHistoryStore } from "./historyStore"; +import { addFavoriteToolQuery, getCurrentUser, removeFavoriteToolQuery, setCurrentThemeQuery } from "./users/queries"; interface Preferences { theme: string; diff --git a/client/src/stores/workflowConnectionStore.test.ts b/client/src/stores/workflowConnectionStore.test.ts index d2c40b72b4a2..6f2be4fc208c 100644 --- a/client/src/stores/workflowConnectionStore.test.ts +++ b/client/src/stores/workflowConnectionStore.test.ts @@ -6,8 +6,8 @@ import { type InputTerminal, type OutputTerminal, useConnectionStore, -} from "@/stores/workflowConnectionStore"; -import { type NewStep, useWorkflowStepStore } from "@/stores/workflowStepStore"; +} from "./workflowConnectionStore"; +import { type NewStep, useWorkflowStepStore } from "./workflowStepStore"; const workflowStepZero: NewStep = { input_connections: {}, diff --git a/client/src/stores/workflowConnectionStore.ts b/client/src/stores/workflowConnectionStore.ts index 675a53cc253a..cf43458cad0a 100644 --- a/client/src/stores/workflowConnectionStore.ts +++ b/client/src/stores/workflowConnectionStore.ts @@ -1,9 +1,9 @@ import { computed, del, ref, set } from "vue"; -import { useWorkflowStepStore } from "@/stores/workflowStepStore"; import { pushOrSet } from "@/utils/pushOrSet"; import { defineScopedStore } from "./scopedStore"; +import { useWorkflowStepStore } from "./workflowStepStore"; interface InvalidConnections { [index: ConnectionId]: string | undefined; diff --git a/client/src/stores/workflowStepStore.test.ts b/client/src/stores/workflowStepStore.test.ts index 7b270eb4e05a..08f5195f3f5d 100644 --- a/client/src/stores/workflowStepStore.test.ts +++ b/client/src/stores/workflowStepStore.test.ts @@ -1,8 +1,7 @@ import { createPinia, setActivePinia } from "pinia"; -import { type NewStep, type StepInputConnection, useWorkflowStepStore } from "@/stores/workflowStepStore"; - import { useConnectionStore } from "./workflowConnectionStore"; +import { type NewStep, type StepInputConnection, useWorkflowStepStore } from "./workflowStepStore"; const stepInputConnection: StepInputConnection = { "1": { diff --git a/client/src/stores/workflowStepStore.ts b/client/src/stores/workflowStepStore.ts index 30a5f80cba00..74a9250aa4c5 100644 --- a/client/src/stores/workflowStepStore.ts +++ b/client/src/stores/workflowStepStore.ts @@ -1,10 +1,10 @@ import { computed, del, ref, set } from "vue"; import { type CollectionTypeDescriptor } from "@/components/Workflow/Editor/modules/collectionTypeDescription"; -import { type Connection, getConnectionId, useConnectionStore } from "@/stores/workflowConnectionStore"; import { assertDefined } from "@/utils/assertions"; import { defineScopedStore } from "./scopedStore"; +import { type Connection, getConnectionId, useConnectionStore } from "./workflowConnectionStore"; import { useWorkflowStateStore } from "./workflowEditorStateStore"; interface StepPosition { diff --git a/client/src/stores/workflowStore.ts b/client/src/stores/workflowStore.ts index 686e8009c148..28d641ff671b 100644 --- a/client/src/stores/workflowStore.ts +++ b/client/src/stores/workflowStore.ts @@ -3,7 +3,8 @@ import { defineStore } from "pinia"; import { computed, ref, set } from "vue"; import { getAppRoot } from "@/onload/loadConfig"; -import { type Steps } from "@/stores/workflowStepStore"; + +import { type Steps } from "./workflowStepStore"; export interface Workflow { name: string; diff --git a/client/src/utils/data.js b/client/src/utils/data.js index 23e958193bae..a7b75f7b5326 100644 --- a/client/src/utils/data.js +++ b/client/src/utils/data.js @@ -7,8 +7,8 @@ import { getAppRoot } from "onload/loadConfig"; import { startWatchingHistory } from "store/historyStore/model/watchHistory"; import Vue from "vue"; -import { uploadPayload } from "@/utils/upload-payload.js"; -import { uploadSubmit } from "@/utils/upload-submit.js"; +import { uploadPayload } from "./upload-payload.js"; +import { uploadSubmit } from "./upload-submit.js"; import DataDialog from "components/DataDialog/DataDialog.vue"; import DatasetCollectionDialog from "components/SelectionDialog/DatasetCollectionDialog.vue"; diff --git a/client/src/utils/upload-queue.js b/client/src/utils/upload-queue.js index 854ae90de567..97593c5814b2 100644 --- a/client/src/utils/upload-queue.js +++ b/client/src/utils/upload-queue.js @@ -1,8 +1,8 @@ /* galaxy upload utilities - requires FormData and XMLHttpRequest */ -import { uploadPayload } from "@/utils/upload-payload.js"; -import { sendPayload, uploadSubmit } from "@/utils/upload-submit.js"; +import { uploadPayload } from "./upload-payload.js"; +import { sendPayload, uploadSubmit } from "./upload-submit.js"; export class UploadQueue { constructor(options) { diff --git a/client/src/utils/upload-queue.test.js b/client/src/utils/upload-queue.test.js index 473d578dd1da..7f08412aebd7 100644 --- a/client/src/utils/upload-queue.test.js +++ b/client/src/utils/upload-queue.test.js @@ -1,6 +1,5 @@ -import { sendPayload } from "@/utils/upload-submit.js"; - import { UploadQueue } from "./upload-queue.js"; +import { sendPayload } from "./upload-submit.js"; jest.mock("@/utils/upload-submit.js"); sendPayload.mockImplementation(() => jest.fn()); diff --git a/client/src/utils/url.ts b/client/src/utils/url.ts index bc537c30382b..f2dcff4fa2ac 100644 --- a/client/src/utils/url.ts +++ b/client/src/utils/url.ts @@ -1,7 +1,7 @@ import axios from "axios"; -import { withPrefix } from "@/utils/redirect"; -import { rethrowSimple } from "@/utils/simple-error"; +import { withPrefix } from "./redirect"; +import { rethrowSimple } from "./simple-error"; export interface UrlDataOptions { url: string; diff --git a/client/src/utils/utils.ts b/client/src/utils/utils.ts index ae6c8e68972d..e4223380c515 100644 --- a/client/src/utils/utils.ts +++ b/client/src/utils/utils.ts @@ -8,7 +8,8 @@ import axios, { type AxiosError, type AxiosResponse } from "axios"; import { getGalaxyInstance } from "@/app"; import { NON_TERMINAL_STATES } from "@/components/WorkflowInvocationState/util"; import { getAppRoot } from "@/onload/loadConfig"; -import _l from "@/utils/localization"; + +import _l from "./localization"; export function stateIsTerminal(result: Record<string, any>) { return !NON_TERMINAL_STATES.includes(result.state); diff --git a/client/src/utils/webhooks.js b/client/src/utils/webhooks.js index e9e8a59da7de..331bb4a27a7f 100644 --- a/client/src/utils/webhooks.js +++ b/client/src/utils/webhooks.js @@ -3,7 +3,7 @@ import Backbone from "backbone"; import { getAppRoot } from "onload/loadConfig"; import Utils from "utils/utils"; -import { rethrowSimple } from "@/utils/simple-error"; +import { rethrowSimple } from "./simple-error"; let webhookData = undefined;